首页 > 其他 > 详细

Regression

时间:2021-07-10 22:04:31      阅读:22      评论:0      收藏:0      [点我收藏+]

机器学习的步骤主要分为三步:找模型——评估模型——找到最好的模型

找模型

假设采用线性模型\(y=b+\sum w_{i} x_{i}\)\(x_i\)是输入的各种attribute被称为feature

评估模型

知道模型是否好坏需要定义Loss function,来衡量一组参数的好坏

\[\mathrm{L}(w, b)=\sum_{n=1}^{10}\left(\hat{y}^{n}-\left(b+w \cdot x_{c p}^{n}\right)\right)^{2} \]

找到最好的模型

\[\begin{aligned} &f^{*}=\arg \min _{f} L(f) \&w^{*}, b^{*}=\arg \min _{w, b} L(w, b) \&\quad=\arg \min _{w, b} \sum_{n=1}^{10}\left(\hat{y}^{n}-\left(b+w \cdot x_{c p}^{n}\right)\right)^{2} \end{aligned} \]

其中arg表示取自变量(输入)

Gradient Descent的适用前提是函数可微分,Gradient Descent的解决步骤:

  • 随机选取一个初始值\(W^0\)
  • 计算函数在\(W^0\)处的微分值(函数为凸函数),\(w^{1} \leftarrow w^{0}-\left.\eta \frac{d L}{d w}\right|_{w=w^{0}}\)\(\eta\)是学习率,learning rate)
    • 微分值为负,需要增加自变量的取值
    • 微分值为正,需要减小自变量的取值
  • 计算函数在\(W^1\)处的微分值,重复上述步骤直到微分值为0

复杂的model在train data上可以得到更好的结果,但不一定在testing data上得到更好的效果,这种现象就是Overfitting

Regularization

解决过拟合问题,修改Loss function为\(L=\sum_{n}\left(\hat{y}^{n}-\left(b+\sum w_{i} x_{i}\right)\right)^{2} {+\lambda \sum\left(w_{i}\right)^{2}}\)

期望输出的参数越接近0,输出对输入改变越不灵敏,Loss function越平滑

Regression

原文:https://www.cnblogs.com/xuzhang/p/14994823.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!