李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

Regression (Case Study) ML01

regression 输出是数值

如:股票预测,自动驾驶(输入是各种sensor,输出方向盘角度),推荐系统

example 预测宝可梦的CP值。

source : http://www.openintro.org/stat/data/?data=pokenman

哈,真的,听课很开心~~)

input(x):某一只宝可梦 (xs,xhp,xw,xh,xcp)

output(xcp):进化之后的CP值

  • Step1: Model 成千上万的function组成的function set。

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

  • Step2: Goodness of Function

    通过定义loss function(input:function;output:function的效果)来评估模型好坏。

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Studyhttps://img-blog.csdn.net/20180802210445490?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpbmF0XzE5NjI4MTQ1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70” alt=”1533195175604” title=”” />)

loss function的画图:

  • 每一个点代表一组w,b,也就是一个函数
  • 越红色 Loss越大。越蓝色,Loss越低,function越好。

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

  • Step3:Best Function

从function set中挑选最好的function

​ * Gradient Descent

假设一个简单的task

  1. L(w) 有一个参数的简单Loss Function(可微分),找到一个w,使得L(w)最小

    1 . 1 随机选择初始点。(存在方法更好的选择初始点)

    1 . 2 计算w对Loss的微分(负值增加w,正值减少w)逐步更新w

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study
李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

(linear regression 没有局部最优。)

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study
2. w,b两个参数的情况

2.1随机选取两个初始值

2.2在w=w0,b=b0的偏微分,并反复更新w,b

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

可视化2这个过程:(越蓝,loss越小。)

  • 随机选取初始值(左下角的红色)

  • 计算偏微分,并计算乘上η之后的偏微分,进行更新

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

在linear regression(右图)中Loss Function L 是convex的,是没有局部最优的。因为就是如图只有等高线。

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

Model Selection

用model 在training data上进行训练,testing data来计算 Average Error

model:1次->2次->3次->4次

model 越复杂,包含越多的function(training data中下图,右侧圆圈的颜色是左侧的式子,橙色的圆包含绿色),可以找到function使得loss在training data上 越低

过拟合

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study
李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

收集更多的数据之后:

观察,跟物种xs有关,只考虑cp不对,重新设计

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

将不同物种的上式if改写成Linear regression:

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

Average Error :14.6

考虑CP数值是不是和其他的属性有关系。

不是大木博士怎么办:把所有属性都放进去。

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

没用的特征太多,很容易overfitting。做regularization

Regularization

Regularization 重新定义Loss Function ,放入knowledge让我们可以找到比较好的Function

  • 在原来的loss基础上加上额外的式子。

  • 加上之后=>要找到的function的参数越小越好。也就是参数值比较接近0,是比较平滑。即当input有变化时,output的变化是不明显的。

    xi=xi+δxi,变化是wi(xi+δxi),wi越小,变化越小,输出对于输入就不会更加敏感。

    wi越小,预测值越接近y

  • 红框中没有b,因为不需要调整bias,bias只会上下移动,wi会影响平滑

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study

一个比较平滑的Function会受到比较好的影响。对noise不会特别敏感

但是太平滑会产生不好的影响。=>需要调整λ

Conclusion

  • 宝可梦:进化后的CP和进化前的CP、物种有关,同时还可能和其他属性有关
  • Gradient descent 做法。
  • overfitting还让regularization

李宏毅机器学习(2017full)-Lecture 1: Regression - Case Study