机器学习-李宏毅-Lecture1-Regression-Case Study课程笔记

链接

pdf

Regression

  • 股价预测 输入是历史 输出是明日股价
  • 自动驾驶 输入是路况 输出是方向盘角度
  • 推荐系统 输入是使用者和商品 输出是推荐的商品

example

预测神奇宝贝进化后的CP值,用来判断是否进化。在这里插入图片描述

第一步 model

寻找一个function set,比如: y = b + w ∗ x c p y=b+w*x_{cp} y=b+wxcp
w和b可以是无穷的。
表示成线性形式: y = b + ∑ w i x i y=b+\sum w_ix_i y=b+wixi,
其中 w i w_i wi是权重weight, b b b是bias, x i x_i xi是各种feature

第二步 goodness of function

  1. 准备包含输入数据、输出数据的训练集Training data。
  2. 定义一个Loss function:是function的function。输入是function(w,b ),输出的function的好坏
    L ( f ) = L ( w , b ) = ∑ n = 1 10 ( y ^ n − ( b + w ∗ x c p n ) ) 2 L(f)=L(w,b)=\sum_{n=1}^{10}(\widehat{y}^n-(b+w*x_{cp}^n))^2 L(f)=L(w,b)=n=110(y n(b+wxcpn))2
    均方差

第三步 Best function

找到一个function,使得Loss(function)最小。这个使得L(f)最小的function称为best function。
f ∗ = a r g   m i n f L ( f ) f^*=\mathop{arg \ min}_{f} L(f) f=arg minfL(f)
也就是
w ∗ , b ∗ = a r g   m i n w , b L ( w , b ) w^*,b^*=arg \ min_{w,b}L(w,b) w,b=arg minw,bL(w,b)
使用gradient descent来求解上面的式子。

gradient descent

在只有一个参数情况下计算loss function

  • 随机选取初始点
  • 计算梯度
  • 如果梯度是正 减少w
  • 如果梯度是负 增加w
    在这里插入图片描述
    w 1 = w 0 − η d L d w ∣ w = w 0 w^1 = w^0 - \eta\frac{dL}{dw}|_{w=w^0} w1=w0ηdwdLw=w0
    这里的 η \eta η指的是学习速率learning rate,表示参数更新的速度。
    这里的减号正好与微分值的正负相反。
    接下来重新计算 w 1 w^1 w1的微分
    w 2 = w 1 − η d L d w ∣ w = w 1 w^2 = w^1 - \eta\frac{dL}{dw}|_{w=w^1} w2=w1ηdwdLw=w1
    重复迭代计算,到达Local optimal(局部最优点)。微分为0,无法继续更新。
    在两个参数的情况下计算梯度。
  • 随机选取初始点 w 0 , b 0 w^0,b^0 w0,b0
  • 对w,b计算梯度
  • ∂ L ∂ w ∣ w = w 0 , b = b 0 ∂ L ∂ b ∣ w = w 0 , b = b 0 \frac{\partial L}{\partial w}|_{w=w^0,b=b^0} \frac{\partial L}{\partial b}|_{w=w^0,b=b^0} wLw=w0,b=b0bLw=w0,b=b0
  • 如果梯度是正 减少w
  • 如果梯度是负 增加w
  • 更新参数
  • w 1 = w 0 − η ∂ L ∂ w ∣ w = w 0 , b = b 0 w^1 = w^0 - \eta\frac{\partial L}{\partial w}|_{w=w^0,b=b^0} w1=w0ηwLw=w0,b=b0
  • b 1 = b 0 − η ∂ L ∂ b ∣ w = w 0 , b = b 0 b^1 = b^0 - \eta\frac{\partial L}{\partial b}|_{w=w^0,b=b^0} b1=b0ηbLw=w0,b=b0
  • 重复计算梯度 更新梯度
    问题:梯度更新方向与初始值相关,不同初始值可能会得到不同的Local optimal。但是在Linear Regression中,不存在,因为Loss function是凸函数。(凸函数没有Local optimal,只有全局最优解)

Result

我们真正关心的是在训练集上的误差。
提高结果的方法可以有用二项式或多项式model。越复杂的model对training data的拟合程度越好,但是有可能在test data上表现不是很好,这就是出现了过拟合的情况。所以不一定选取最复杂的函数,要选择最合适的。
更复杂的函数的function set会包含简单的函数的function set。
进一步地,对于不同种类的神奇宝贝,采用不同的参数。

Regularization

在损失函数中添加一项来限制过拟合。在这里插入图片描述
倾向于选择较小的w。越小的w越平滑,数据的波动更小。选择一个合适的 λ \lambda λ
正则化时候不考虑bias。平滑与否与常数项无关。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值