线性回归
1.线性回归函数
y
i
^
=
θ
0
+
θ
1
x
1
(
i
)
+
θ
2
x
2
(
i
)
+
.
.
.
+
θ
m
x
m
(
i
)
\hat{y_i}=\theta_0+\theta_1 x_1^{(i)}+\theta_2 x_2^{(i)}+...+\theta_m x_m^{(i)}
yi^=θ0+θ1x1(i)+θ2x2(i)+...+θmxm(i)
i
−
第
i
个
样
本
、
m
−
特
征
个
数
i-第i个样本、m-特征个数
i−第i个样本、m−特征个数
令
x
⃗
(
i
)
=
[
1
x
1
(
i
)
x
2
(
i
)
.
.
.
x
m
(
i
)
]
、
θ
⃗
=
[
θ
0
θ
1
θ
2
.
.
.
θ
m
]
、
X
=
[
x
⃗
(
1
)
x
⃗
(
2
)
.
.
.
x
⃗
(
n
)
]
令\vec{x}_{(i)}=\begin{bmatrix} 1\\ x_1^{(i)}\\ x_2^{(i)}\\ ...\\ x_m^{(i)}\\ \end{bmatrix}、 \vec{\theta}=\begin{bmatrix} \theta_0\\ \theta_1\\ \theta_2\\ ...\\ \theta_m\\ \end{bmatrix}、X=\left [ \vec{x}_{(1)} \ \vec{x}_{(2)} \ ... \ \vec{x}_{(n)} \right ]
令x(i)=⎣⎢⎢⎢⎢⎢⎡1x1(i)x2(i)...xm(i)⎦⎥⎥⎥⎥⎥⎤、θ=⎣⎢⎢⎢⎢⎡θ0θ1θ2...θm⎦⎥⎥⎥⎥⎤、X=[x(1) x(2) ... x(n)]
矩
阵
形
式
:
Y
=
θ
⃗
T
X
矩阵形式:Y=\vec{\theta}^TX
矩阵形式:Y=θTX
2.普通线性回归
损失函数:最小二乘法
L
(
θ
⃗
)
=
1
2
n
∑
i
=
1
n
(
y
i
^
−
y
i
)
2
L(\vec{\theta})=\frac{1}{2n}\sum_{i=1}^{n}(\hat{y_i}-y_i)^2
L(θ)=2n1i=1∑n(yi^−yi)2
y
i
^
−
第
i
个
样
本
的
预
测
值
、
y
i
−
第
i
个
样
本
的
真
实
值
\hat{y_i}-第i个样本的预测值、y_i-第i个样本的真实值
yi^−第i个样本的预测值、yi−第i个样本的真实值
3.Ridge(岭回归)-L2-norm
损失函数:(引入L2正则项)
L
(
θ
⃗
)
=
1
2
n
∑
i
=
1
n
(
y
i
^
−
y
i
)
2
+
λ
∑
j
=
1
m
θ
j
2
L(\vec{\theta})=\frac{1}{2n}\sum_{i=1}^{n}(\hat{y_i}-y_i)^2+\lambda\sum_{j=1}^{m}\theta_j^2
L(θ)=2n1i=1∑n(yi^−yi)2+λj=1∑mθj2
y
i
^
−
第
i
个
样
本
的
预
测
值
、
y
i
−
第
i
个
样
本
的
真
实
值
\hat{y_i}-第i个样本的预测值、y_i-第i个样本的真实值
yi^−第i个样本的预测值、yi−第i个样本的真实值
λ
−
正
则
化
系
数
(
超
参
数
)
\lambda-正则化系数(超参数)
λ−正则化系数(超参数)
4.LASSO回归-L1-norm
损失函数:(引入L1正则项)
L
(
θ
⃗
)
=
1
2
n
∑
i
=
1
n
(
y
i
^
−
y
i
)
2
+
λ
∑
j
=
1
m
∣
θ
j
∣
L(\vec{\theta})=\frac{1}{2n}\sum_{i=1}^{n}(\hat{y_i}-y_i)^2+\lambda\sum_{j=1}^{m}\left|\theta_j\right|
L(θ)=2n1i=1∑n(yi^−yi)2+λj=1∑m∣θj∣
y
i
^
−
第
i
个
样
本
的
预
测
值
、
y
i
−
第
i
个
样
本
的
真
实
值
\hat{y_i}-第i个样本的预测值、y_i-第i个样本的真实值
yi^−第i个样本的预测值、yi−第i个样本的真实值
λ
−
正
则
化
系
数
(
超
参
数
)
\lambda-正则化系数(超参数)
λ−正则化系数(超参数)
5.Elastic Net回归-L12-norm
损失函数:(按权重引入L1、L2正则项)
L
(
θ
⃗
)
=
1
2
n
∑
i
=
1
n
(
y
i
^
−
y
i
)
2
+
λ
(
ρ
∑
j
=
1
m
∣
θ
j
∣
+
(
1
−
ρ
)
∑
j
=
1
m
θ
j
2
)
L(\vec{\theta})=\frac{1}{2n}\sum_{i=1}^{n}(\hat{y_i}-y_i)^2+\lambda(\rho\sum_{j=1}^{m}\left|\theta_j\right|+(1-\rho)\sum_{j=1}^{m}\theta_j^2)
L(θ)=2n1i=1∑n(yi^−yi)2+λ(ρj=1∑m∣θj∣+(1−ρ)j=1∑mθj2)
y
i
^
−
第
i
个
样
本
的
预
测
值
、
y
i
−
第
i
个
样
本
的
真
实
值
\hat{y_i}-第i个样本的预测值、y_i-第i个样本的真实值
yi^−第i个样本的预测值、yi−第i个样本的真实值
λ
−
正
则
化
系
数
(
超
参
数
)
\lambda-正则化系数(超参数)
λ−正则化系数(超参数)
6.求解方法
1.正规方程法
2.梯度下降法
- 初始化 θ \theta θ(随机初始化)
- 沿负梯度方向迭代,更新 θ ⃗ \vec{\theta} θ使 L ( θ ⃗ ) L(\vec{\theta}) L(θ)更小 θ ⃗ = θ ⃗ − α ∂ L ( θ ⃗ ) ∂ θ ⃗ \vec{\theta}=\vec{\theta}-\alpha\frac{\partial L(\vec{\theta})}{\partial \vec{\theta}} θ=θ−α∂θ∂L(θ) α − 学 习 率 ( 步 长 ) \alpha-学习率(步长) α−学习率(步长)
注:线性回归对参数
θ
\theta
θ而言是线性的,但对样本可以是非线性的,也就是说线性回归可以拟合非线性数据。
7.线性回归性能度量
- 样本总平方和TSS(Total Sum of Squares): T S S = ∑ i = 1 n ( y i − y ˉ ) y ˉ : 样 本 均 值 TSS=\sum_{i=1}^{n}(y_i-\bar{y}) \ \ \ \bar{y}:样本均值 TSS=i=1∑n(yi−yˉ) yˉ:样本均值
- 残差平方和RSS(Residual Sum of Squares): R S S = ∑ i = 1 n ( y i ^ − y i ) 2 RSS=\sum_{i=1}^{n}(\hat{y_i}-y_i)^2 RSS=i=1∑n(yi^−yi)2RSS也称误差平方和SSE(Sum of Squares for Error)
- 定义
R
2
=
1
−
R
S
S
T
S
S
R^2=1-\frac{RSS}{TSS}
R2=1−TSSRSS
- R 2 R^2 R2越大,拟合效果越好
- R 2 R^2 R2的最优值为1;若模型预测为随机值, R 2 R^2 R2有可能为负
- 若预测值恒为样本期望, R 2 R^2 R2为0
- 定义ESS(Explained Sum of Squares) E S S = ∑ i = 1 n ( y i ^ − y ˉ ) 2 ESS=\sum_{i=1}^{n}(\hat{y_i}-\bar{y})^2 ESS=i=1∑n(yi^−yˉ)2 T S S ≥ E S S + R S S TSS \geq ESS+RSS TSS≥ESS+RSS 当 无 偏 估 计 时 : T S S = E S S + R S S 当无偏估计时:TSS=ESS+RSS 当无偏估计时:TSS=ESS+RSS ESS也称为回归平方和SSR(Sum of Squares for Regression)
逻辑回归
1.二分类回归
- Sigmod函数
h θ ( x ) = g ( θ ⃗ T x ) = 1 1 + e − θ ⃗ T x h_{\theta}(x)=g(\vec{\theta}^Tx)=\frac{1}{1+e^{-\vec{\theta}^Tx}} hθ(x)=g(θTx)=1+e−θTx1 - 损失函数
由概率论可知二分类问题服从0-1分布,其概率函数为 y ^ ( i ) = { p i , y ( i ) = 1 1 − p i , y ( i ) = 0 \hat{y}^{(i)}=\left\{\begin{matrix} p_i \ \ \ \ \ \ \ \ \ ,y^{(i)}=1\\ 1-p_i \ \ ,y^{(i)}=0 \end{matrix}\right. y^(i)={pi ,y(i)=11−pi ,y(i)=0根据极大似然估计可得 L ( θ ) m a x = ∏ i = 1 n p i y ( i ) ( 1 − p i ) y ( i ) L(\theta)_{max}=\prod_{i=1}^{n} p_i^{y^{(i)}}(1-p_i)^{y^{(i)}} L(θ)max=i=1∏npiy(i)(1−pi)y(i) 假定 p i = h θ ( x ( i ) ) p_i=h_{\theta}(x^{(i)}) pi=hθ(x(i)),则有 L ( θ ) m a x = ∏ i = 1 n h θ ( x ( i ) ) y ( i ) ( 1 − h θ ( x ( i ) ) ) 1 − y ( i ) L(\theta)_{max}=\prod_{i=1}^{n} h_{\theta}(x^{(i)})^{y^{(i)}}(1-h_{\theta}(x^{(i)}))^{1-y^{(i)}} L(θ)max=i=1∏nhθ(x(i))y(i)(1−hθ(x(i)))1−y(i) l n L ( θ ) m a x = ∑ i = 1 n y ( i ) ln h θ ( x ( i ) ) + ( 1 − y ( i ) ) ln ( 1 − h θ ( x ( i ) ) ) lnL(\theta)_{max}=\sum_{i=1}^{n}y^{(i)}\ln h_{\theta}(x^{(i)})+(1-y^{(i)}) \ln (1-h_{\theta}(x^{(i)})) lnL(θ)max=i=1∑ny(i)lnhθ(x(i))+(1−y(i))ln(1−hθ(x(i))) 令 l ( θ ) m i n = − 1 n l n L ( θ ) m a x l(\theta)_{min}=- \frac{1}{n} lnL(\theta)_{max} l(θ)min=−n1lnL(θ)max,则可将损失函数定义为 l ( θ ) m i n = − 1 n ∑ i = 1 n y ( i ) log h ( x ( i ) ) + ( 1 − y ( i ) ) log ( 1 − h ( x ( i ) ) ) l(\theta)_{min}=-\frac{1}{n}\sum_{i=1}^{n}y^{(i)} \log{h(x^{(i)})+(1-y^{(i)}) \log{(1-h(x^{(i)}))}} l(θ)min=−n1i=1∑ny(i)logh(x(i))+(1−y(i))log(1−h(x(i))) 其偏导数为:(用于梯度下降) ∂ l ( θ ^ ) ∂ θ j = − 1 n ∑ i = 1 n ( y ( i ) − h θ ( x ( i ) ) ) x j ( i ) \frac{\partial l(\hat{\theta})}{\partial \theta_j}=-\frac{1}{n}\sum_{i=1}^{n}(y^{(i)}-h_{\theta}(x^{(i)}))x_j^{(i)} ∂θj∂l(θ^)=−n1i=1∑n(y(i)−hθ(x(i)))xj(i)
注: 1 n \frac{1}{n} n1 的作用是求平均,避免因样本个数差异导致批梯度下降与随机梯度下降的差异
2.多分类回归 - Softmax函数
h θ ( x ( i ) ) = [ p ( y ( i ) = 1 ∣ x ( i ) ; θ ) p ( y ( i ) = 2 ∣ x ( i ) ; θ ) . . . p ( y ( i ) = k ∣ x ( i ) ; θ ) ] = 1 ∑ j = 1 k e θ j T x ( i ) [ e θ 1 T x ( i ) e θ 2 T x ( i ) . . . e θ k T x ( i ) ] h_{\theta}(x^{(i)})= \begin{bmatrix} p(y^{(i)}=1 \mid x^{(i)};\theta) \\ p(y^{(i)}=2 \mid x^{(i)};\theta) \\ ...\\ p(y^ {(i)}=k \mid x^{(i)};\theta)\\ \end{bmatrix} = \frac{1}{\sum_{j=1}^{k}e^{\theta_j^T x^{(i)}}} \begin{bmatrix} e^{\theta_1^T x^{(i)}} \\ e^{\theta_2^T x^{(i)}} \\ ...\\ e^{\theta_k^T x^{(i)}} \\ \end{bmatrix} hθ(x(i))=⎣⎢⎢⎡p(y(i)=1∣x(i);θ)p(y(i)=2∣x(i);θ)...p(y(i)=k∣x(i);θ)⎦⎥⎥⎤=∑j=1keθjTx(i)1⎣⎢⎢⎢⎡eθ1Tx(i)eθ2Tx(i)...eθkTx(i)⎦⎥⎥⎥⎤
其中 θ k ⃗ \vec{\theta_k} θk表示模型第k个类别的参数,所有类别的参数构成了一个参数矩阵 θ k ∗ n \theta_{k*n} θk∗n, 1 ∑ j = 1 k e θ j T x ( i ) \frac{1}{\sum_{j=1}^{k}e^{\theta_j^T x^{(i)}}} ∑j=1keθjTx(i)1的作用是对概率分布做归一化,使得所有类别概率之和为1 - 损失函数
L ( θ ) = − 1 n [ ∑ i = 1 n ∑ j = 1 k 1 { y ( i ) = j } ln e θ j T x ( i ) ∑ l = 1 k e θ l T x ( i ) ] L(\theta)= - \frac{1}{n} \left [ \sum_{i=1}^{n} \sum_{j=1}^{k} 1 \left \{ y^{(i)}=j \right \} \ln \frac{e^{\theta_j^T x^{(i)}}}{\sum_{l=1}^{k}e^{\theta_l^T x^{(i)}}} \right ] L(θ)=−n1[i=1∑nj=1∑k1{y(i)=j}ln∑l=1keθlTx(i)eθjTx(i)]
其中 1 { y ( i ) = j } 1 \left \{ y^{(i)}=j \right \} 1{y(i)=j},表示类别相同时取1,否则取0
又 p ( y ( i ) = j ∣ x ( i ) ; θ ) = e θ j T x ( i ) ∑ l = 1 k e θ l T x ( i ) p(y^{(i)}=j|x^{(i)};\theta)=\frac{e^{\theta_j^T x^{(i)}}}{\sum_{l=1}^{k}e^{\theta_l^T x^{(i)}}} p(y(i)=j∣x(i);θ)=∑l=1keθlTx(i)eθjTx(i),则
L ( θ ) = − 1 n [ ∑ i = 1 n ∑ j = 1 k 1 { y ( i ) = j } ln p ( y ( i ) = j ∣ x ( i ) ; θ ) ] L(\theta)= - \frac{1}{n} \left [ \sum_{i=1}^{n} \sum_{j=1}^{k} 1 \left \{ y^{(i)}=j \right \} \ln p(y^{(i)}=j|x^{(i)};\theta) \right ] L(θ)=−n1[i=1∑nj=1∑k1{y(i)=j}lnp(y(i)=j∣x(i);θ)] - 权重衰减
由于实际应用中,Softmax回归参数冗余会带来的数值问题,因此对损失函数加入权重衰减,即
L ( θ ) = − 1 n [ ∑ i = 1 n ∑ j = 1 k 1 { y ( i ) = j } ln p ( y ( i ) = j ∣ x ( i ) ; θ ) ] + λ 2 ∑ j = 1 k ∑ i = 1 n θ i j 2 ( λ > 0 ) L(\theta)= - \frac{1}{n} \left [ \sum_{i=1}^{n} \sum_{j=1}^{k} 1 \left \{ y^{(i)}=j \right \} \ln p(y^{(i)}=j|x^{(i)};\theta) \right ]+\frac{\lambda}{2}\sum_{j=1}^{k}\sum_{i=1}^{n}\theta_{ij}^2 \ \ \ \ \ \ (\lambda > 0) L(θ)=−n1[i=1∑nj=1∑k1{y(i)=j}lnp(y(i)=j∣x(i);θ)]+2λj=1∑ki=1∑nθij2 (λ>0) - 偏导数
∂ L ( θ ) ∂ θ j = − 1 n ∑ i = 1 n [ x ( i ) ( 1 { y ( i ) = j } − p ( y ( i ) = j ∣ x ( i ) ; θ ) ) ] + λ θ j \frac{\partial L(\theta)}{\partial \theta_j}=-\frac{1}{n} \sum_{i=1}^{n}[x^{(i)}(1 \{ y^{(i)}=j \} - p(y^{(i)}=j|x^{(i)};\theta))]+\lambda \theta_j ∂θj∂L(θ)=−n1i=1∑n[x(i)(1{y(i)=j}−p(y(i)=j∣x(i);θ))]+λθj