您的位置:首页 > 其它

线性回归-3-最小二乘法

2016-04-02 12:20 781 查看

矩阵求导

假设存在一个从矩阵到实数的映射:f:Rm×n↦Rf: \mathbb R^{m \times n} \mapsto \mathbb R。对于矩阵A我们定义f(A)f(A)的导数如下(它是输入矩阵的梯度):



因此∇Af(A)\nabla_A f(A)也是一个m×nm\times n的矩阵。

假如

,A到实数的映射f:R2×2↦R为:f(A)=32A11+5A212+A21A22f: \mathbb R^{2 \times 2} \mapsto \mathbb R为:f(A)=\frac{3}{2}A_{11}+5A^2_{12}+A_{21}A_{22}

因此可得:



引入“迹(trace)”,矩阵A的迹是它的主对角元素的和即:trA=∑ni=1AiitrA=\sum^n_{i=1}A_{ii}

下面给出一些已经证明的事实:

trAB=trBAtrABC=trCBA=trBCAtrA=trATtr(A+B)=trA+trBtraA=atrA∇AtrAB=BT∇AtrABAAC=CAB+CTABTtra=atrAB=trBA \\
trABC=trCBA=trBCA\\
trA=trA^T\\
tr(A+B)=trA+trB\\
traA=atrA\\
\nabla_A trAB=B^T\\
\nabla_AtrABA^AC=CAB+C^TAB^T\\
tra = a

进入主题

假设矩阵XX是一个m×nm\times n的样本(如果算上偏置项,X其实应该是一个m\times (n+1)的矩阵),其中m代表样本数,n代表每个样本中的属性数。



令y⃗ \vec y表示一个m×1m\times 1的向量,用以标记每个X中每个X中每个样本的实际值(即hθ(x(i))h_\theta(x^{(i)}))。



由hθ(x(i))=(x(i))Tθh_\theta(x^{(i)})=(x^(i))^T\theta,我们可得:



我们知道,对于向量z,有zTz=∑iz2i我们知道,对于向量z,有z^Tz=\sum_iz_i^2,进而可得:



这就是我们的代价函数。

为了能使J最小化,我们对它求关于θ偏导数:J最小化,我们对它求关于\theta偏导数:



令上面的导数为0最终得到等式:

XTXθ=XTy⃗ X^TX\theta = X^T\vec y

因此得到使得代价函数最小化的θ因此得到使得代价函数最小化的\theta

θ=(XTX)−1XTy⃗ \theta=(X^T X)^{-1}X^T\vec y
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: