李宏毅2021/2022春机器学习课程(机器学习基本概念简介)

(强推)李宏毅2021/2022春机器学习课程_哔哩哔哩_bilibili

目录

1.机器学习是什么?

2.机器学习任务

2.1 regression回归问题

2.2 classification分类问题

2.3 structured learning结构学习

3.机器学习步骤

3.1 Function with unknown parameters

3.2 Define loss fun from training data(定义loss函数)

3.3 Optimization(优化的方法为Gradient decent)

1.机器学习是什么?

        机器学习,就是让机器帮人类找出一个人类写不出来的复杂函数。

2.机器学习任务

        机器学习的三个任务,regression回归问题、classification分类问题、structured learning结构学习。

2.1 regression回归问题

        resgression,输出是一个数值(scalar)。例如,让机器做的事预测未来某一天的PM2.5的值,机器的输入是今天PM2.5的值,温度和臭氧的浓度,中间的是要找的函数,输出的是明天的PM2.5的值,找中间函数的任务就是resgression。

2.2 classification分类问题

        classification,输出为离散数值。先准好一些选项(类别),要找的函数的输出就是在设定好的这些类别中选择一个输出。例如,让函数判断传来的邮件是不是垃圾邮件,函数的输入是一封邮件,函数要先准好选项,是或者不是,这封邮件经过函数的判断,输出是或者不是。

        但classification不只是只有两个选项,也可以有多个选项。比如,阿尔法go,让机器下围棋,机器的输入就是19×19的选项(就是棋盘上棋盘格的个数),输出就是让函式找到正确的落子位置。

2.3 structured learning结构学习

        structured learning,输出为一个有结构的内容,如一张图画、一段文字。

3.机器学习步骤

3.1 Function with unknown parameters

        Function with unknown parameters(写出一个带有未知参数的函数),例如,Linear Model y=wx+b,这里y即是一个model,w、b为待训练的参数。定义函数类型。

        目前有 GPT-3、GPT-2、T5、BERT、ELMo等大模型。

3.2 Define loss fun from training data(定义loss函数)

        定义一个loss,这个函数的输入就是model的未知参数。函数输出的值代表,将未知函数值设定为一组固定的数值时,来判断这组数值的好坏。计算差值e的方法有两种,根据自己的需求来选择合适的方法计算e。cross-entropy交叉熵。

        不同的w跟b的组合,都去计算它的Loss,然后就可以画出以下这一个等高线图。在这个等高线图上面,越偏红色系,代表计算出来的Loss越大,就代表这一组w跟b越差,如果越偏蓝色系,就代表Loss越小,就代表这一组w跟b越好。通常一个模型的修改来自你对这个问题的理解,即Domain Knowledge。

3.3 Optimization(优化的方法为Gradient decent)

        解最优化问题,找一个w和b使L最小,使用到的方法,Gradient Descent。

        (1)假设只有一个参数w

        当w取不同的数的时候就会得到一个L曲线,这个曲线叫做 error surface。

        和前面的系数相关,叫做学习速率。学习速率是自己设定的,如果设置的学习速率的值大一点,那么参数的更新就会快一点,如果设置的值小一点的话,参数的更新就会慢一点。

        但是这种反复操作的程序不会一直进行下去,也会有在某一个地方停止的时候,那什么时候停下来呢?会有两种状况:

       一种是设置最大迭代次数,另一种就是计算到某一个wT时正好在这一点的微分是0,此时 参数的未知就不会在发生变化。但是,应用Dradient Descent 这种方法通常找不到最好的w解使得L 的值时最小的。会遇到局部最优情况。

  (2)两个参数w,b情况

步骤:

1)现在有两个参数,给他随即的数值w0和b0;

2)接下来分别计算w0和b0对loss的微分(微分的值是根据程式自动算出来的);

3)计算完上述的微分之后就去更新w和b(和只有一个参数的做法是一样的);

4)反复进行同样的步骤,更新w和b的值;

5)最后就得到最好的w和b。

举例说明:

1.选择一个初始值(任意的),计算在该点的微分;

2.更新w和b,更新的方向就是;

 3.在更新之后的点处再对该点计算微分;

4.反复进行上面的操作,最后找到合适的w和b,计算出L。

 函数的价值在于做预测。

猜你喜欢

转载自blog.csdn.net/qq_22749225/article/details/125702148