0. 概念和公式
请参考:一、机器学习之线性回归(一)
1. 涉及公式
1.1 简单线性回归
y
=
w
x
+
b
y = wx + b
y=wx+b
1.2 多元线性回归
y ^ = w 1 X 1 + w 2 X 2 . . . w n X n + w 0 \hat y = w_1X_1 + w_2X_2 ... w_nX_n + w_0 y^=w1X1+w2X2...wnXn+w0
向量表示:
y
^
=
W
T
X
\hat y = W^TX
y^=WTX
1.3 高斯密度函数
f
(
x
;
μ
,
σ
2
)
=
1
2
π
σ
exp
(
−
(
x
−
μ
)
2
2
σ
2
)
\ f(x; \mu, \sigma^2) = \frac{1}{\sqrt{2\pi}\sigma} \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)
f(x;μ,σ2)=2πσ1exp(−2σ2(x−μ)2)
1.4 最大似然估计
连乘:
L
(
θ
∣
data
)
=
∏
i
=
1
n
P
(
X
i
;
θ
)
\ L(\theta | \text{data}) = \prod_{i=1}^{n} P(X_i; \theta)
L(θ∣data)=∏i=1nP(Xi;θ)
对数:
ℓ
(
θ
∣
data
)
=
∑
i
=
1
n
log
P
(
X
i
;
θ
)
\ \ell(\theta | \text{data}) = \sum_{i=1}^{n} \log P(X_i; \theta)
ℓ(θ∣data)=∑i=1nlogP(Xi;θ)
1.5 最小二乘法
J
(
θ
)
=
1
2
∑
i
=
1
n
(
h
θ
(
x
i
)
−
y
i
)
2
J(\theta) = \frac{1}{2} \sum_{i=1}^{n} (h_\theta(x_i) - y_i)^2
J(θ)=21∑i=1n(hθ(xi)−yi)2
1.6 正规方程
θ
=
(
X
T
X
)
−
1
X
T
y
\theta = (X^T X)^{-1} X^T y
θ=(XTX)−1XTy
1.7 均方误差
MSE
=
1
n
∑
i
=
1
n
(
h
θ
(
x
i
)
−
y
i
)
2
\text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (h_\theta(x_i) - y_i)^2
MSE=n1∑i=1n(hθ(xi)−yi)2
2. 公式推导(不考虑多项式)
2.1 解决问题
-
建模问题:
目标: 描述变量之间的线性关系。
问题描述: 给定一组观测数据 ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x n , y n ) (x_1, y_1), (x_2, y_2), ..., (x_n, y_n) (x1,y1),(x2,y2),...,(xn,yn),其中 (x) 是自变量,(y) 是因变量,线性回归的目标是找到一条直线 y = θ 0 + θ 1 x y = \theta_0 + \theta_1 x y=θ0+θ1x,使得这条直线最好地拟合给定的数据点。其中, θ 0 \theta_0 θ0 是截距, θ 1 \theta_1 θ1 是斜率。
解法: 通过最小化均方误差(MSE)来找到最优的参数 θ \theta θ。这等价于解一个线性方程系统,其中涉及到对参数的偏导数等于零,或者使用正规方程(Normal Equations)。
∂ J ( θ ) ∂ θ 0 = 0 \frac{\partial J(\theta)}{\partial \theta_0} = 0 ∂θ0∂J(θ)=0
∂ J ( θ ) ∂ θ 1 = 0 \frac{\partial J(\theta)}{\partial \theta_1} = 0 ∂θ1∂J(θ)=0 -
预测问题:
目标: 使用模型进行未知变量的预测。
问题描述: 在建立了线性回归模型后,我们希望利用这个模型对未知数据进行预测。例如,给定新的 x x x 值,我们希望预测对应的 y y y 值。
解法: 使用建立好的线性回归模型,将未知 x x x 值代入模型,得到预测的 y y y 值。
y ^ = θ 0 + θ 1 x \hat{y} = \theta_0 + \theta_1 x y^=θ0+θ1x
2.2 误差分析
误差计算:
ε
i
=
∣
y
i
−
y
^
∣
\varepsilon_i = |y_i - \hat y |
εi=∣yi−y^∣
向量写法:
ε
i
=
∣
y
i
−
W
T
x
i
∣
\varepsilon_i = |y_i - W^T x_i |
εi=∣yi−WTxi∣
ε
i
\varepsilon_i
εi为误差
y
i
y_i
yi为样本实际值
y
^
\hat y
y^为预测值
假定所有的样本的误差都是独立的,上下的震荡,叠加之后形成的分布,它服从正态分布(高斯分布),服从均值为 0,方差为某定值的高斯分布。
2.3 误差分析 到 高斯密度函数
高斯密度函数(正态分布)公式:
f
(
x
;
μ
,
σ
2
)
=
1
2
π
σ
exp
(
−
(
x
−
μ
)
2
2
σ
2
)
\ f(x; \mu, \sigma^2) = \frac{1}{\sqrt{2\pi}\sigma} \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)
f(x;μ,σ2)=2πσ1exp(−2σ2(x−μ)2)
μ
\mu
μ :均值,为0
σ
2
\sigma^2
σ2 :方差
x
x
x:误差变量
ε
i
\varepsilon_i
εi
公式简化:
f
(
ε
i
∣
μ
=
0
,
σ
2
)
=
1
2
π
σ
exp
(
−
(
ε
i
−
0
)
2
2
σ
2
)
\ f(\varepsilon_i|\mu=0, \sigma^2) = \frac{1}{\sqrt{2\pi}\sigma} \exp\left(-\frac{(\varepsilon_i-0)^2}{2\sigma^2}\right)
f(εi∣μ=0,σ2)=2πσ1exp(−2σ2(εi−0)2)
f
(
ε
i
∣
0
,
σ
2
)
=
1
2
π
σ
exp
(
−
ε
i
2
2
σ
2
)
\ f(\varepsilon_i|0, \sigma^2) = \frac{1}{\sqrt{2\pi}\sigma} \exp\left(-\frac{\varepsilon_i^2}{2\sigma^2}\right)
f(εi∣0,σ2)=2πσ1exp(−2σ2εi2)
2.4 高斯密度函数 到 最大似然估计
有: f ( ε i ∣ 0 , σ 2 ) = 1 2 π σ exp ( − ε i 2 2 σ 2 ) \ f(\varepsilon_i|0, \sigma^2) = \frac{1}{\sqrt{2\pi}\sigma} \exp\left(-\frac{\varepsilon_i^2}{2\sigma^2}\right) f(εi∣0,σ2)=2πσ1exp(−2σ2εi2)
P = ∏ i = 1 n f ( ε i ∣ 0 , σ 2 ) = ∏ i = 1 n 1 2 π σ exp ( − ε i 2 2 σ 2 ) P= \prod_{i=1}^{n}f(\varepsilon_i|0, \sigma^2)=\prod_{i=1}^{n}\frac{1}{\sqrt{2\pi}\sigma} \exp\left(-\frac{\varepsilon_i^2}{2\sigma^2}\right) P=∏i=1nf(εi∣0,σ2)=∏i=1n2πσ1exp(−2σ2εi2)
有: ε i = ∣ y i − W T x i ∣ \varepsilon_i = |y_i - W^T x_i | εi=∣yi−WTxi∣
最大似然估计:
P
=
∏
i
=
1
n
1
2
π
σ
exp
(
−
(
y
i
−
W
T
x
i
)
2
2
σ
2
)
P= \prod_{i=1}^{n}\frac{1}{\sqrt{2\pi}\sigma} \exp\left(-\frac{(y_i - W^T x_i )^2}{2\sigma^2}\right)
P=∏i=1n2πσ1exp(−2σ2(yi−WTxi)2)
2.5 最大似然估计 到 最小二乘法
有:
P
=
∏
i
=
1
n
1
2
π
σ
exp
(
−
(
y
i
−
W
T
x
i
)
2
2
σ
2
)
P= \prod_{i=1}^{n}\frac{1}{\sqrt{2\pi}\sigma} \exp\left(-\frac{(y_i - W^T x_i )^2}{2\sigma^2}\right)
P=∏i=1n2πσ1exp(−2σ2(yi−WTxi)2)
对数运算:
l
o
g
e
(
P
)
=
l
o
g
e
[
∏
i
=
1
n
1
2
π
σ
exp
(
−
(
y
i
−
W
T
x
i
)
2
2
σ
2
)
]
log_e(P)= log_e\left[\prod_{i=1}^{n}\frac{1}{\sqrt{2\pi}\sigma} \exp\left(-\frac{(y_i - W^T x_i )^2}{2\sigma^2}\right)\right]
loge(P)=loge[∏i=1n2πσ1exp(−2σ2(yi−WTxi)2)]
累乘变成累加:
l
o
g
e
(
P
)
=
l
o
g
e
[
∏
i
=
1
n
1
2
π
σ
exp
(
−
(
y
i
−
W
T
x
i
)
2
2
σ
2
)
]
log_e(P)= log_e\left[\prod_{i=1}^{n}\frac{1}{\sqrt{2\pi}\sigma} \exp\left(-\frac{(y_i - W^T x_i )^2}{2\sigma^2}\right)\right]
loge(P)=loge[∏i=1n2πσ1exp(−2σ2(yi−WTxi)2)]
= ∑ i = 1 n l o g e [ 1 2 π σ exp ( − ( y i − W T x i ) 2 2 σ 2 ) ] = \sum_{i=1}^{n}log_e\left[\frac{1}{\sqrt{2\pi}\sigma} \exp\left(-\frac{(y_i - W^T x_i )^2}{2\sigma^2}\right)\right] =∑i=1nloge[2πσ1exp(−2σ2(yi−WTxi)2)]
= ∑ i = 1 n [ l o g e 1 2 π σ − ( y i − W T x i ) 2 2 σ 2 ] = \sum_{i=1}^{n}\left[log_e\frac{1}{\sqrt{2\pi}\sigma} -\frac{(y_i - W^T x_i )^2}{2\sigma^2}\right] =∑i=1n[loge2πσ1−2σ2(yi−WTxi)2]
= ∑ i = 1 n [ l o g e 1 2 π σ − 1 2 . 1 σ 2 . ( y i − W T x i ) 2 ] = \sum_{i=1}^{n}\left[log_e\frac{1}{\sqrt{2\pi}\sigma} -\frac{1}{2}. \frac{1}{\sigma^2}.(y_i - W^T x_i)^2\right] =∑i=1n[loge2πσ1−21.σ21.(yi−WTxi)2]
最大似然求对数后, π 、 σ \pi 、\sigma π、σ都是常量,可忽略, ( y i − W T x i ) 2 (y_i - W^T x_i)^2 (yi−WTxi)2肯定大于零。求最大值问题,转变为求最小值问题(求减式后边的值):
L ( θ ∣ data ) = 1 2 . ∑ i = 1 n ( y i − W T x i ) 2 \ L(\theta | \text{data}) = \frac{1}{2}.\sum_{i=1}^{n} (y_i - W^T x_i)^2 L(θ∣data)=21.∑i=1n(yi−WTxi)2
可写成最小二乘法:
h θ ( x i ) = W T x i h_\theta(x_i) = W^T x_i hθ(xi)=WTxi
J
(
θ
)
=
1
2
∑
i
=
1
n
(
h
θ
(
x
i
)
−
y
i
)
2
J(\theta) = \frac{1}{2} \sum_{i=1}^{n} (h_\theta(x_i) - y_i )^2
J(θ)=21∑i=1n(hθ(xi)−yi)2
2.6 最小二乘法 到 正规方程
有: J ( θ ) = 1 2 ∑ i = 1 n ( h θ ( x i ) − y i ) 2 J(\theta) = \frac{1}{2} \sum_{i=1}^{n} (h_\theta(x_i) - y_i )^2 J(θ)=21∑i=1n(hθ(xi)−yi)2
可写成:
J
(
θ
)
=
1
2
(
X
θ
−
y
i
)
T
(
X
θ
−
y
i
)
J(\theta) = \frac{1}{2}(X\theta - y_i)^T(X\theta - y_i)
J(θ)=21(Xθ−yi)T(Xθ−yi)
J ( θ ) = 1 2 ( θ T X T − y i T ) ( X θ − y i ) J(\theta) = \frac{1}{2}(\theta^TX^T - y_i^T)(X\theta - y_i) J(θ)=21(θTXT−yiT)(Xθ−yi)
J ( θ ) = 1 2 ( θ T X T X θ − θ T X T y i − y i T X θ + y T y i ) J(\theta) = \frac{1}{2}(\theta^TX^TX\theta -\theta^TX^Ty_i - y_i^TX\theta + y^Ty_i) J(θ)=21(θTXTXθ−θTXTyi−yiTXθ+yTyi)
进行求导(注意X、y是已知量,
θ
\theta
θ是未知数)
J
′
(
θ
)
=
1
2
(
θ
T
X
T
X
θ
−
θ
T
X
T
y
i
−
y
i
T
X
θ
+
y
T
y
i
)
′
J'(\theta) = \frac{1}{2}(\theta^TX^TX\theta -\theta^TX^Ty_i - y_i^TX\theta + y^Ty_i)'
J′(θ)=21(θTXTXθ−θTXTyi−yiTXθ+yTyi)′
J ′ ( θ ) = X T ( X θ − y ) J'(\theta) = X^T(X\theta - y) J′(θ)=XT(Xθ−y)
令导数为0:
0 = X T ( X θ − y ) 0 = X^T(X\theta - y) 0=XT(Xθ−y)
X T X θ = X T y X^TX\theta = X^Ty XTXθ=XTy
两边乘逆矩阵 ( X T X ) − 1 (X^TX)^{-1} (XTX)−1进行转化, I I I 单位矩阵为1:
( X T X ) − 1 X T X θ = ( X T X ) − 1 X T y (X^TX)^{-1}X^TX\theta = (X^TX)^{-1}X^Ty (XTX)−1XTXθ=(XTX)−1XTy
I θ = ( X T X ) − 1 X T y I\theta = (X^TX)^{-1}X^Ty Iθ=(XTX)−1XTy
最小二乘法:
θ
=
(
X
T
X
)
−
1
X
T
y
\theta = (X^TX)^{-1}X^Ty
θ=(XTX)−1XTy
2.7 最小二乘法 和 均方误差
J ( θ ) = 1 2 ∑ i = 1 n ( h θ ( x i ) − y i ) 2 J(\theta) = \frac{1}{2} \sum_{i=1}^{n} (h_\theta(x_i) - y_i)^2 J(θ)=21∑i=1n(hθ(xi)−yi)2
MSE = 1 n ∑ i = 1 n ( h θ ( x i ) − y i ) 2 \text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (h_\theta(x_i) - y_i)^2 MSE=n1∑i=1n(hθ(xi)−yi)2
相似但用处不同:
J
(
θ
)
J(θ)
J(θ) : 模型训练的损失函数,通过梯度下降等优化算法最小化代价函数
MSE
\text{MSE}
MSE: 评估模型的性能,衡量模型的预测值与真实值之间的平均平方误差