线性回归损失函数求解
引言
上一篇笔记中已经记录了,如何对一个无解的线性方程组\(Ax=b\)求近似解。在这里,我们先来回顾两个知识点:
- 如何判断一个线性方程组无解:如果拿上面那个方程组\(Ax=b\)举例,那就是向量\(b\)不在矩阵A对应的列空间中,至于列空间的概念,可以参考
四个基本子空间
那篇笔记 - 如何对无解的方程组求近似解:根据上一篇笔记
如何寻找一个投影矩阵
可以有这么一个思路,将向量\(b\)往矩阵\(A\)所在的列空间投影得到向量\(f\),得到新的方程组\(A\hat{x}=f\),这个\(\hat{x}\)便为近似解了。如果仅仅为了求近似解可以直接在\(Ax=b\)等式左右两侧同时左乘\(A^{\mathrm{T}}\),即\(A^{\mathrm{T}}Ax=A^{\mathrm{T}}b\)。这个和上面先求投影向量再求解是一样的。
这篇笔记将会探究在机器学习的线性回归如何求解损失函数。
\(Ax=b\)无解时求近似解
今天我们需要求一个线性方程组,长成这样$$
\begin{equation}
\left {
\begin{array}{lr}
2 * w_1 + 2 * w_2 + b = 14 \
4 * w_1 - 1 * w_2 + b = 5 \
4 * w_1 + 0 * w_2 + b = 4 \
4 * w_1 - 2 * w_2 + b = 3 \
0 * w_1 - 3 * w_2 + b = -20
\end{array}
\right.
\end{equation}
\begin{equation}
\left [
\begin{matrix}
2 & 2 & 1 \
4 & -1 & 1 \
4 & 0 & 1 \
4 & -2 & 1 \
0 & -3 & 1
\end{matrix}
\right]
\left [
\begin{matrix}
w_1 \
w_2 \
b
\end{matrix}
\right]=
\left [
\begin{matrix}
14 \
5 \
4 \
3 \
-20
\end{matrix}
\right]
\end{equation}
\begin{equation}
\left [
\begin{matrix}
2 & 4 & 4 & 4 & 0 \
2 & -1 & 0 & -2 & -3\
1 & 1 & 1 & 1 & 1
\end{matrix}
\right]
\left [
\begin{matrix}
2 & 2 & 1 \
4 & -1 & 1 \
4 & 0 & 1 \
4 & -2 & 1 \
0 & -3 & 1
\end{matrix}
\right]
\left [
\begin{matrix}
\hat{w_1} \
\hat{w_2} \
\hat{b}
\end{matrix}
\right]=
\left [
\begin{matrix}
2 & 4 & 4 & 4 & 0 \
2 & -1 & 0 & -2 & -3\
1 & 1 & 1 & 1 & 1
\end{matrix}
\right]
\left [
\begin{matrix}
14 \
5 \
4 \
3 \
-20
\end{matrix}
\right]
\end{equation}
\begin{equation}
\left [
\begin{matrix}
52 & -8 & 14 \
-8 & 18 & -4 \
14 & -4 & 5
\end{matrix}
\right]
\left [
\begin{matrix}
\hat{w_1} \
\hat{w_2} \
\hat{b}
\end{matrix}
\right]=
\left [
\begin{matrix}
72 \
73 \
6
\end{matrix}
\right]
\end{equation}
\begin{equation}
price = w_1 * x_1 + w_2 * x_2 + b
\end{equation}
\begin{equation}
J(w_1, w_2, b) = \sum_{i=1}{n}(price_i-y_i)2
\end{equation}
\begin{equation}
J(w_1, w_2, b) = (price-y)^{\mathrm{T}}(price-y)
\end{equation}
\begin{equation}
J(w) = (Xw-y)^{\mathrm{T}}(Xw-y)
\end{equation}
X=\left[
\begin{matrix}
第一笔数据的 \ x1 & x2 & 1 \
第二笔数据的 \ x1 & x2 & 1 \
. \
. \
. \
第n笔数据的 \ x1 & x2 & 1 \
\end{matrix}
\right]
\ \ \ \ \ \ \ \
w =\left[
\begin{matrix}
w_1\
w_2\
b
\end{matrix}
\right]
\begin{equation}
J(w) = (w{\mathrm{T}}X{\mathrm{T}}-y^{\mathrm{T}})(Xw-y)
\end{equation}
\begin{equation}
J(w) = w{\mathrm{T}}X{\mathrm{T}}Xw-y{\mathrm{T}}Xw-w{\mathrm{T}}X{\mathrm{T}}y+y{\mathrm{T}}y
\end{equation}
\begin{equation}
J(w) = w{\mathrm{T}}X{\mathrm{T}}Xw-2w{\mathrm{T}}X{\mathrm{T}}y+y^{\mathrm{T}}y
\end{equation}
\begin{equation}
J(x) = w^{\mathrm{T}}Aw - 2w^{\mathrm{T}}b + c \ subject \ to \ A = X^{\mathrm{T}}X \
\ \ \ \ \ \ \ \ \ \ \ \ b=X^{\mathrm{T}}y\
\ \ \ \ \ \ \ \ \ \ \ \ c=y^{\mathrm{T}}y
\end{equation}
\begin{equation}
2X^{\mathrm{T}}Xw - 2X^{\mathrm{T}}y = 0
\end{equation}
\begin{equation}
w = (X{\mathrm{T}}X)X^{\mathrm{T}}y
\end{equation}
\left[
\begin{matrix}
第一笔数据的 \ x1 & x2 & 1 \
第二笔数据的 \ x1 & x2 & 1 \
. \
. \
. \
第n笔数据的 \ x1 & x2 & 1 \
\end{matrix}
\right]
\left[
\begin{matrix}
w_1\
w_2\
b
\end{matrix}
\right]=\left[
\begin{matrix}
第一笔数据的 \ price \
第二笔数据的 \ price \
. \
. \
. \
第n笔数据的 \ price \
\end{matrix}
\right]