【李宏毅】机器学习 笔记01(Regression)

Regression(回归):

一、定义:

Regression 就是找到一个函数 function,通过输入特征 x ,输出一个数值Scalar 。(scalar:数值,标量)

注:机器学习中有两件事:数值预测和分类,而这里的regression就可用于数值预测。

例如:

【李宏毅】机器学习 笔记01(Regression)

二、实现步骤:

1、model(确定一个模型)--linear(线性的)

定义一个函式y来通过特征值(b,w)预测数值。

找到一个function set(多个函式的集合:包括f1,f2,。。。),作为model。

【李宏毅】机器学习 笔记01(Regression)
2、Goodness of function:评价函式好坏

training data:将代表宝可梦的点作图表示

【李宏毅】机器学习 笔记01(Regression)

define loss function:描述函式有多坏

【李宏毅】机器学习 笔记01(Regression)
3、best function(找出最好的函式)---用梯度下降算法(gradient descent)

所谓最好的函式就是loss function最小的:

【李宏毅】机器学习 笔记01(Regression)

注:只要loss function是可微分的,就可以用gradient descent来找出loss function的min值,从而确定出best function。
       梯度:在单变量的函数中,梯度其实就是函数的微分,代表着函数在某个给定点的切线的斜率


梯度下降算法:

【李宏毅】机器学习 笔记01(Regression)
1、先随机选取一个点,这里是w0
2、计算当前自变量w对函数值的微分(L在w处的导数),即:斜率
3、移动:根据斜率k的正负,判断下一步向左/右移动:k>0:向左移动,否则向右移动(原则:向切线下降的哪一端移动,移动的步长即为学习率*斜率(自变量对函数值的微分(导数));用equation表达即为:自变量-学习率*斜率(自变量对函数值的微分(导数)),即:

【李宏毅】机器学习 笔记01(Regression)

因为移动方向和微分结果的正负正好相反,所以用减;
重复步骤2和3,直到找到最低点。

注:推广(两个参数的情况):取偏微分即可

【李宏毅】机器学习 笔记01(Regression)

overfiting(过度拟合):越复杂的model在training data能够得到越好的结果,但在testing data上不一定得到越好的结果。

如果我们发现了过拟合问题,应该如何处理?

【李宏毅】机器学习 笔记01(Regression)

正则化(Regularization):

【李宏毅】机器学习 笔记01(Regression)

其中【李宏毅】机器学习 笔记01(Regression)【李宏毅】机器学习 笔记01(Regression)又称为正则化参数(Regularization Parameter)