构建模型步骤:
- Step1:选择模型
- Step2:样本
- Step3:迭代(梯度下降)
技巧: - 多类的回归
- overfitting
- Regularization正则化
(1)lambda的选择
Step1:选择模型
线性y=wx或者其他
Step2:样本
(1)样本带入模型:
(2)Loss Function:
真实值和预测值的误差:
(3)选择最好的参数:
Step3:迭代
梯度下降
一开始随机选择参数,此时预测值和误差值的很大的,将每一个位置的参数值画出以下曲线图:
梯度下降:对初始随机参数w0的模型y=b+w0*x求导即斜率值
- 当斜率为负值时,增加w,可使误差向减小的方向前进
- 当斜率为正值时,减小w,可使误差向减小的方向前进
更新参数:w1=初始化参数w0 - 求导的值乘以学习率
更新参数可以使模型不断优化
如果是多参数的,求偏导即可。
1、overfitting
第一个图为对训练集的拟合
第二个图为对测试集的拟合
不同阶数的模型所得到的误差:
模型的复杂度并不是越大越更好,会出现过拟合,从而导致在train集上的error很小,但在test集上的error很大。
2、多类的回归
当出现以下的数据集时如何拟合呢?
将数据分成不同种类,重新设计模型
添加更多的特征:
3、Regularization正则化
对Loss Function增加参数惩罚项,训练得到的参数w会是一个接近0且较平滑的数。
参数w越接近0,遇到新的样本时,得到新的结果y1即为原来样本的y+wi*∆x,w越小,则y1越小,所以噪声点对于模型的影响较小
(1)lambda的选择:
- lambda越大,w参数的分布会越平滑,但lambda太大,会导致梯度下降时,忽视了w对模型对样本的拟合,过多的重视w的平滑(因为w惩罚项远大于对样本的拟合的误差)
- lambda越小,w参数分布不均衡,容易过于重视异常点,对模型稳定性影响较大