一、回归的定义
有特征输入input ,通过function,得到一个输出数值。
如:自动驾驶:输入各个特征:车上sensor的数据、车况、车距等
输出方向盘的角度
二、创建模型
模型步骤:
step1:模型假设,选择模型框架(线性模型)
step2:模型评估,如何判断众多模型的好坏(损失函数)
step3:模型优化,如何筛选最优的模型(梯度下降)
在坐标轴上:
如图:红色区域代表loss 较大,蓝色区域代表loss较小。
-----步骤优化:如果需要考虑更多的因素,那么就需要加入更多的特征,则损耗函数也响应的加入多特征的损耗,在这种情况下,虽然数据量没有变的更加复杂,但是更多的input也会导致系统出现过拟合。
3.最佳模型----梯度下降
筛选最优模型
如图,定义了损耗函数,之后我们通过梯度的运算,计算和对于函数的偏导,如下
根据梯度下降,调整步长,知道找到损耗函数的最低点:
图中的圈圈代表等等高线,蓝色越深,损耗函数越小 ,我们不断调整步长,就是一个不断向内圈靠近的过程,偏导函数的坐标就是等高线的法线方向。
4.梯度下降算法的局限
梯度下降算法目前面临的挑战是:
1>.仅为当前最优
2>.梯度等于0时
3>.梯度趋近于0
在更为复杂的模型里,梯度下降算法会遇见问题2和3。之后我们应该如何优化模型,避免这样的问题呢?
-----步骤优化:加入正则化
w越小,表示function越平滑,误差相应就会越小
b对曲线的平滑度使没有影响的。
我们要想避免过拟合的问题,就要使曲线尽可能的光滑,即使高次项多曲线的影响尽可能的小,所以,我们将高次项加权放入loss function 中,这样训练出来的model既满足预测值和真实值之间误差小,又能使曲线形状比较平滑稳定。
三、如何验证模型的好坏
使用训练集和测试集来验证模型的好坏:
假设我们用10组原始数据,训练集求得平均误差
再给出10组数据,在测试集中验证function,再求得
对比我们得到的两组误差值。
四、一元N次模线性模型
即假设我们选的方程为一元二次方程时:
实则也可看做线性模型。
随着方程越来越复杂,次项越来越高,会出现过拟合现象。过拟合现象实际上也就是function的space过大,虽然包含真实的函数,但是因为距离大出现的现象,这就要求我们在选择合适的函数模型。过拟合与欠拟合都是不合适的。