Datawhale十月组队学习:《李宏毅机器学习》
往期指路
文章目录
前言
提示:本节视频指路
本篇主要对《李宏毅机器学习》中关于【回归】部分的知识记录。
一、回归(Regression)
Regression 就是找到一个函数 function,通过输入特征 x,输出一个数值 Scalar。
应用举例:
- 股市预测
- 自动驾驶
- 商品推荐
- Pokenmon精灵攻击力预测【视频中的案例】
二、模型步骤
- step1:模型假设,选择模型框架(线性模型)
- step2:模型评估,如何判断众多模型的好坏(损失函数)
- step3:模型优化,如何筛选最优的模型(梯度下降)
Step 1:模型假设 - 线性模型
一元线性模型:
使用单个特征,去寻找函数
多元线性模型:
在实际应用中,输入特征肯定不止
x
c
p
{x_{cp}}
xcp这一个。例如,进化前的CP值、物种(Bulbasaur)、血量(HP)、重量(Weight)、高度(Height)等,特征会有很多。
Step 2:模型评估 - 损失函数
如何判断模型的好坏?:从数学的角度来讲,我们使用距离。求【进化后的CP值】与【模型预测的CP值】差,来判定模型的好坏。也就是使用损失函数(Loss function) 来衡量模型的好坏。
Step 3:最佳模型 - 梯度下降
提示:此部分建议参考原视频
如何筛选最优的模型(参数w,b)?:主要是找到一个可以令损失函数值最小的
f
∗
{f^*}
f∗在实际的场景中,我们遇到的参数肯定不止 (w, b)。这里引出了学习率的概念:
首先在这里引入一个概念 学习率 :移动的步长,如图7中
η
{\eta}
η
- 步骤1:随机选取一个 w 0 {w^0} w0
- 步骤2:计算微分,也就是当前的斜率,根据斜率来判定移动的方向
大于0向右移动(增加w)
小于0向左移动(减少w) - 步骤3:根据学习率移动
重复步骤2和步骤3,直到找到最低点
三、问题汇总
- 不是模型越复杂越好;
- 还需要考虑数据集的大小;
- 只考虑CP值是不对的,还要考虑其他因素,需要重新设置function set;
- 过拟合:Regularization 的方法。【为什么会期待一个参数值接近于零的方向,是因为它比较平滑。function平滑好一点。】
总结
以上就是今天全部的内容了,后续继续努力。