1. Regression:(回归)
概念:
回归(regression)模型的输出值是一个数。例如:股票预测,股票预测,PM2.5预测,自动驾驶中方向盘角度的预测,可能购买商品,宝可梦进化后的CP值预测。
特性:
在一定范围内,增加模型复杂度,可以提升模型性能,但是超出该范围就会出现过拟合。用正则化的方式,可以 降低过拟合出现的可能。
2.实例化讲解回归:
目的:
找到一个function
输入:
宝可梦进化前的一些属性值:种类,体重、CP值等
输出:
进化后的 CP值
Step1:Model:先设个模型
2.1 Liner model(线性模型 )
线性模型,即函数是线性的,长这样:
x:输入,也就是其特征(features)
w:权值(weights)
b:偏置(bias)
不同的w和b对用不同的模型
Step2:Goodness of Function:衡量模型
有了Traing data 之后就可以知道一个Function的好坏。
实验给了十组数据
2.2 Loss function(损失函数)
损失函数是函数的函数,用于衡量参数的好坏,长这样:
input:a function
output:how bad it is :Estimate error:越大越不好哦
本质:预测输出与正确答案差值的平方和
0.5:抵消求导后出现的2
Step 3 :Best Function:挑选最好的modle
目标:得到最小化Loss Function,知道哪一个W 让Lose最小
方法:梯度下降Gradient Descent
条件:Loss可微分
随机选取W,计算W对L的微分(切线斜率),如果在w0处的梯度(一维的时候也是切线斜率)为负,则表示增大w可以降低Loss,如果梯度为正,则表示减小w可以降低Loss,
红色的n是学习率:learning rate
local minimal(局部最小值)
在用梯度下降最小化损失函数的时候,就有可能会落入局部最小值点,由于那里梯度为零,参数会卡在那里,需要用一些特殊方法才能跳出。不过,线性回归的损失函数不存在局部最小值,因此用梯度下降找到的就是全局最小值。
设计了五种复杂程度的model,发现,虽然Training data 的loss越来越低,Test的由低到高,直至爆炸,这就叫 Overfitting
3. over fiting(过拟合)
可能原因:参数过多或者是数据过少,模型太过复杂,训练集太小
专业术语就是泛化(generalization)能力不行
解决办法:正则化(regularization),失活(dropout)
3.1 L2 regularization(正则化):bias不参与正则化,因为它不影响函数的平滑度
目标:惩罚w,
方法:在Loss function 里加入正则项
考虑误差也考虑w,在减少误差的同时也让w减到很小。有较小的w的函数是比较平滑的,对于输入的变化不那么敏感。选择合适的λ,可以提升模型的泛化能力。