机器学习-最小二乘法

概况

最小二乘法其实就是为数据(二维)拟合出一条直线,为(三维)数据拟合出一个面。来最大程度的是我们的样本点落在该直线上。
使得我们找到一条直线使所以的样本点尽可能靠近该直线,即每个样本点到直线的距离最短。

Y=WX+B,W是权重,B是偏移量。
损失函数
L ( w ) = ∑ i = 1 m ∣ ∣ w T x i − y i ∣ ∣ 2 L(w)=\sum_{i=1}^m||w^Tx_i-y_i||^2 L(w)=i=1m∣∣wTxiyi2
= ∑ i = 1 m ( w T x i − y i ) 2 =\sum_{i=1}^m(w^Tx_i-y_i)^2 =i=1m(wTxiyi)2
= [ W T X T − Y t ] [ X W − Y ] =[W^TX^T-Y^t][XW-Y] =[WTXTYt][XWY]
= W T X T X W − Y T X W − W T X T Y + Y T Y =W^TX^TXW-Y^TXW-W^TX^TY+Y^TY =WTXTXWYTXWWTXTY+YTY
= W T X T X W − 2 W T X T Y + Y T Y =W^TX^TXW-2W^TX^TY+Y^TY =WTXTXW2WTXTY+YTY
为什么 Y T X W Y^TXW YTXW W T X T Y W^TX^TY WTXTY是相等的,因为 Y T Y^T YT的维度是(1,n), X X X的维度是(n,n), W W W的维度是(n,1),所以 Y T X W Y^TXW YTXW的维度是(1,1)也就是一个常数值。而 W T W^T WT的维度为(1,n), X T X^T XT的维度为(n,n), Y Y Y的维度为(n,1)。 W T X T Y W^TX^TY WTXTY的维度为(1,1)所以都是常数,所以转置不转置不影响数值的值。所以是相等的。


因为我们采用的是最小二乘估计,所以这里希望损失函数最小,所以求取函数导数为0的点,就是我们的最优解,因为这里是二次函数,所以导数为0的点就是最值点。
最优解为 w ∗ w^* w
w ∗ = a r g m i n w L ( w ) w^*=argmin_wL(w) w=argminwL(w)
对其求导,并令其导数为0.
导数 = 2 X T X W − 2 X T Y = 0 导数=2X^TXW-2X^TY=0 导数=2XTXW2XTY=0
具体过程是:
d L ( w ) = d ( W T X T X W − 2 W T X T Y + Y T Y ) dL(w)=d(W^TX^TXW-2W^TX^TY+Y^TY) dL(w)=d(WTXTXW2WTXTY+YTY)
= d ( W T ) X T X W − 2 d ( W T ) X T Y + W T X T X d ( W ) =d(W^T)X^TXW-2d(W^T)X^TY+W^TX^TXd(W) =d(WT)XTXW2d(WT)XTY+WTXTXd(W)
= X T X W d ( W ) − 2 X T Y d ( W ) + W T X T X d ( W ) =X^TXWd(W)-2X^TYd(W)+W^TX^TXd(W) =XTXWd(W)2XTYd(W)+WTXTXd(W)
2 X T X W − 2 X T Y = 0 2X^TXW-2X^TY=0 2XTXW2XTY=0
w ∗ = ( X T X ) − 1 X T Y w^*=(X^TX)^{-1}X^TY w=(XTX)1XTY
然后我们可以构造决策函数:
f ( x ) = ( w ∗ ) T x f(x)=(w^*)^Tx f(x)=(w)Tx

你可能感兴趣的:(深度学习,机器学习,最小二乘法,人工智能)