机器学习总结-线性回归
线性回归
当数据为一维时:
根据训练数据(\(x_{i},y_{i}\)),想要学得线性方程:\(y=wx+b\),对新输入的\(x_{j}\),能够输出\(y_{j}\)的预测值。
目标函数(均方误差最小化):$$(w*,b*)=\underset{(w,b)}{\arg min}l(w,b)=\underset{(w,b)}{\arg min}\sum_{i=1}{m}(y_{i}-wx_{i}-b)2$$。
解法:由于\(l(w,b)\)是凸函数,因此导数为0时,得到最优解。
令
\[\frac{\partial l(w,b))}{\partial w}=2(w\sum_{i=1}^{m}x_{i}^2-\sum_{i=1}^{m}(y_{i}-b)x_{i}),\frac{\partial l(w,b)}{\partial b}=2(mb-\sum_{i=1}^{m}(y_{i}-wx_{i}))
\]
为0,得:
\[w=\frac{\sum_{i=1}^{m}y_{i}(x_{i}-\overline{x})}{\sum_{i=1}^{m}x_{i}^2-\frac{1}{m}(\sum_{i=1}^{m}x_{i})},b=\frac{1}{m}\sum_{i=1}^{m}y_{i}-wx_{i}
\]
当数据为多维时:
目标方程:\(\mathbf{y}=w^{T}x+b\)
需要写成矩阵形式:\(\mathbf{y}=X\widehat{w}\),其中\(X=\begin{bmatrix}
x_{1}^{T} & 1\\
x_{2}^{T} & 1\\
:& :\\
x_{m}^{T} & 1\\
\end{bmatrix}\),\(\widehat{w}=(w;b)\) 。
目标函数:$$\widehat{w}^{*}=\underset{\widehat{w}}{\arg min}(\mathbf{y}-X\widehat{w})^{T}(\mathbf{y}-X\widehat{w})$$
当\(X^{T}X\)满秩或正定时,解得$$\widehat{w}{*}=(XX){-1}X\mathbf{y}$$
学得的线性回归模型为:$$f(\widehat{x}{i})=\widehat{x}{T}(XX){-1}X\mathbf{y},其中\widehat{x}{i}=(x;1)$$