线性回归模型
创建一些带标签的数据集𝐷 = {(𝒙1, 𝑦1) , (𝒙2, 𝑦2 ), ... , (𝒙𝑚, 𝑦𝑚) }
x为特征,映射到对应的标签y,再引入偏置b
线性回归模型的函数表达式可以用下面的式子
来表达:
𝑓(𝑥) = 𝑤1𝑥1 + 𝑤2𝑥2 + ⋯ + 𝑤𝑛𝑥𝑛 + 𝑏
对比函数(误差函数)
即将参数模型预测出的y与真实的y做对比,来调节参数和权重,以及偏置使得误差最小
即找到一些w使得J(x)最小甚至等于0
Loss值计算公式:
f(x)就是线性模型预测值,y为真实值,这里把b省略掉了便于计算。
最小二乘法
这里loss值(即损失值)的函数为开口向上的二次函数,那一定有个最小值
就是对w求导,导数为0时取得极小值,w=y/x时loss值最小
最小二乘法向量形式
将参数𝑏纳入到矩阵𝒘中,此时数据特征矩阵𝒙则为:
矩阵𝒘为:
得到线性回归模型的向量表达式如下式所示𝑓(𝑿) = 𝑿w
求解使得loss最小
还是仿造刚刚简易的最小二乘法求这个较复杂带矩阵表达式的最小loss值
很显然𝒙和𝒘都是一个矩阵,利用最小二乘法对这个矩阵求最优的𝒘矩阵参数。
计算的步骤如下所示
J ( ω ) = 1 2 ( f ( x ) − Y ) 2 J(\omega)=\frac{1}{2}(f(x)-Y)^2 J(ω)=21(f(x)−Y)2
这个 1 2 \frac{1}{2} 21只是方便之后计算,注意这里Xw是两个矩阵
J ( ω ) = 1 2 ( X w − Y ) 2 J(\omega)=\frac{1}{2}(Xw-Y)^2 J(ω)=21(Xw−Y)2
在线性代数里可写为它的转置乘以它本身 J ( ω ) = 1 2 ( X w − Y ) T ( X w − Y ) J(\omega)=\frac{1}{2}(Xw-Y)^T(Xw-Y) J(ω)=21(Xw−Y)T(Xw−Y)
转置拿进去
J ( ω ) = 1 2 ( X T w T − Y T ) ( X w − Y ) J(\omega)=\frac{1}{2}(X^Tw^T-Y^T)(Xw-Y) J(ω)=21(XTwT−YT)(Xw−Y)
= 1 2 ( X T w T X w − Y T X w − X T w T Y + Y Y T ) =\frac{1}{2}(X^Tw^TXw-Y^TXw-X^Tw^TY+YY^T) =21(XTwTXw−YTXw−XTwTY+YYT)
我们求 J ( ω ) J(\omega) J(ω)的导数为0时有loss的极小值
好,来求一下w的偏导数
∂ J ( ω ) ∂ w = 1 2 ( X T w T X w ∂ w − Y T X w ∂ w − X T w T Y ∂ w ) \frac{\partial J(\omega)}{\partial w}=\frac{1}{2}(\frac{X^Tw^TXw}{\partial w}-\frac{Y^TXw}{\partial w}-\frac{X^Tw^TY}{\partial w}) ∂w∂J(ω)=21(∂wXTwTXw−∂wYTXw−∂wXTwTY)
常数项 Y Y T YY^T YYT为0,看看对矩阵求导的公式知识点吧,如
套公式则
∂ J ( ω ) ∂ w = 1 2 ( 2 X X T w − X T Y − X T Y ) \frac{\partial J(\omega)}{\partial w}=\frac{1}{2}(2XX^Tw-X^TY-X^TY) ∂w∂J(ω)=21(2XXTw−XTY−XTY)
∂ J ( ω ) ∂ w = X X T w − X T Y ) \frac{\partial J(\omega)}{\partial w}=XX^Tw-X^TY) ∂w∂J(ω)=XXTw−XTY)
令 ∂ J ( ω ) ∂ w = 0 \frac{\partial J(\omega)}{\partial w}=0 ∂w∂J(ω)=0则 X X T w − X T Y = 0 XX^Tw-X^TY=0 XXTw−XTY=0
w = ( X X T ) − 1 X T Y w=(XX^T)^{-1}X^TY w=(XXT)−1XTY
但是 ( X X T ) − 1 (XX^T)^{-1} (XXT)−1大多数时候是无解的,所以最小二乘法多数情况下不能来求导得出loss最小值
于是梯度下降法就上线了