机器学习之回归

线性回归

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-特征个数 iim 令 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...θmX=[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=1n(yi^yi)2 y i ^ − 第 i 个 样 本 的 预 测 值 、 y i − 第 i 个 样 本 的 真 实 值 \hat{y_i}-第i个样本的预测值、y_i-第i个样本的真实值 yi^iyii

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=1n(yi^yi)2+λj=1mθj2 y i ^ − 第 i 个 样 本 的 预 测 值 、 y i − 第 i 个 样 本 的 真 实 值 \hat{y_i}-第i个样本的预测值、y_i-第i个样本的真实值 yi^iyii λ − 正 则 化 系 数 ( 超 参 数 ) \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=1n(yi^yi)2+λj=1mθj y i ^ − 第 i 个 样 本 的 预 测 值 、 y i − 第 i 个 样 本 的 真 实 值 \hat{y_i}-第i个样本的预测值、y_i-第i个样本的真实值 yi^iyii λ − 正 则 化 系 数 ( 超 参 数 ) \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=1n(yi^yi)2+λ(ρj=1mθj+(1ρ)j=1mθj2) y i ^ − 第 i 个 样 本 的 预 测 值 、 y i − 第 i 个 样 本 的 真 实 值 \hat{y_i}-第i个样本的预测值、y_i-第i个样本的真实值 yi^iyii λ − 正 则 化 系 数 ( 超 参 数 ) \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=1n(yiyˉ)   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=1n(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=1TSSRSS
    • 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=1n(yi^yˉ)2 T S S ≥ E S S + R S S TSS \geq ESS+RSS TSSESS+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)=11pi  ,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=1npiy(i)(1pi)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=1nhθ(x(i))y(i)(1hθ(x(i)))1y(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=1ny(i)lnhθ(x(i))+(1y(i))ln(1hθ(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=1ny(i)logh(x(i))+(1y(i))log(1h(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)} θjl(θ^)=n1i=1n(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)=1x(i);θ)p(y(i)=2x(i);θ)...p(y(i)=kx(i);θ)=j=1keθjTx(i)1eθ1Tx(i)eθ2Tx(i)...eθkTx(i)
    其中 θ k ⃗ \vec{\theta_k} θk 表示模型第k个类别的参数,所有类别的参数构成了一个参数矩阵 θ k ∗ n \theta_{k*n} θkn 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=1nj=1k1{y(i)=j}lnl=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)=jx(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=1nj=1k1{y(i)=j}lnp(y(i)=jx(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=1nj=1k1{y(i)=j}lnp(y(i)=jx(i);θ)]+2λj=1ki=1nθ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 θjL(θ)=n1i=1n[x(i)(1{y(i)=j}p(y(i)=jx(i);θ))]+λθj
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值