台湾李弘毅教授的Deep Learning教程,第一讲1Regression相关的,教程以Pokemon游戏的cp值为样本库进行训练,分析,一步步的改进模型,讲解的很细致,可以给初学者训练AI提供一个思路,且讲解的很清晰透彻,个人觉得他的台湾腔听起来有点像看偶像剧的感觉,不容易分神。
梯度下降法
梯度下降法 使损失函数最小化求解权重w
对于含有两个超参数w和b的,梯度下降法 的求解思路。
对于线性回归,损失函数是凸函数,所以不用担心梯度下降求解的过程中会出现局部最优的问题
梯度下降微积分计算步骤:
一次方模型
y = w * x + b, 一次方模型,针对训练集10个样本的表现结果如下:
训练集误差31.9
测试集误差35
二次方模型
选择二次方模型实验
y = w2 * x^2 + w1 * x + b,
针对训练集10个样本的表现结果如下:
训练集误差15.4
测试集误差18.4
三次方模型
选择三次方模型实验
y = w3 * x^3 + w2 * x^2 + w1 * x + b,
针对训练集10个样本的表现结果如下:
训练集误差15.3
测试集误差18.1
四次方模型
选择四次方模型实验
y = w4 * x^4 + w3 * x^3 + w2 * x^2 + w1 * x + b,
针对训练集10个样本的表现结果如下:
训练集误差14.9
测试集误差28.8
五次方模型
选择五次方模型实验
y = w5 * x^5 +w4 * x^4 + w3 * x^3 + w2 * x^2 + w1 * x + b,
针对训练集10个样本的表现结果如下:
训练集误差12.8
测试集误差232.1
过拟合
从下图五个模型的对比可以看出,并不是说模型越复杂,检测的效果越好,效果最好的是三次方的模型,复杂度超过三次方的模型在测试集的误差率反而会过高,这是由于造成了过拟合。
扩充训练集
扩充训练集,将训练集样本说扩充到60个,来看一下还有什么因素会影响进化后的CP值,根据下图可以分析出 不同的物种可能会导致不同的进化值。为了验证此猜想,我们可以将物种属性加入到模型选择中。
重新设计加入物种信息的模型
重新设计模型,新的模型加入了物种信息。
重新设计加入物种信息的复杂模型
重新设计加入物种信息的复杂模型,公式采用了二次方,且加入了物体的重量和高度信息。
在训练集的误差达到了3.8
测试集的误差为14.3
加入正则化
加入正则化后,在lambda =100时,效果最好
此时训练集误差为4.1,测试集误差为11.1