课程基于李宏毅老师《机器学习》
同时感谢DatawhaleLeeML-Notes的组队学习——五月班级
目录
模型设计步骤
1.模型假设,主要选择模型框架(线性、非线性等)
2.模型评估,判断模型好坏(损失函数LOSS)
3.模型优化,筛选最优的模型(梯度下降)
1.模型假设
通过特征值(单个特征或多个特征)来选择合适的数学模型(一元或多元、线性或非线性)
2.模型评估
Loss function 通过分析数据模型与真实数据之间的差距,用来判断模型好坏。
损失函数:
3.模型优化
用梯度下降进行筛选最优的模型,找到最合适的w和b。
引入学习率 η 做为调整,根据斜率来判断移动方向。
- 步骤1:随机选取一个 w^0w0
- 步骤2:计算微分,也就是当前的斜率,根据斜率来判定移动的方向
- 大于0向右移动(增加ww)
- 小于0向左移动(减少ww)
- 步骤3:根据学习率移动
- 重复步骤2和步骤3,直到找到最低点
注:梯度下降算法是不断更新损失函数的结果,但梯度下降时会出现很多问题
1.当前最优化
2.等于0
3.趋近于0
当然,也可能出现过拟合问题。
可以对单个步骤进行优化
1.将多线性模型合并到一个线性模型中
2.可以通过更多维度输入来更准确的进行模拟
3.可以加入正则化,为了避免由于某一个权值太高照成的overfitting
- w 越小,表示 functionfunction 较平滑的, functionfunction输出值与输入值相差不大
- 在很多应用场景中,并不是 ww 越小模型越平滑越好,但是经验值告诉我们 ww 越小大部分情况下都是好的。
- b 的值接近于0 ,对曲线平滑是没有影响
总结
- Pokemon:原始的CP值极大程度的决定了进化后的CP值,但可能还有其他的一些因素。
- Gradient descent:梯度下降的做法;后面会讲到它的理论依据和要点。
- Overfitting和Regularization:过拟合和正则化,主要介绍了表象;后面会讲到更多这方面的理论