线性回归(理论篇)

线性回归(理论篇)

线性模型

线性模型(Linear Model)是机器学习中应用最广泛的模型,指通过样本特征的线性组合来进行预测的模型。给定一个n维样本 x=[x1,x2,,xn]T x = [ x 1 , x 2 , · · · , x n ] T ,其线性组合函数为:

hθ(x)=θ1x1+θ2x2++θnxn+b=(θ;b)T(x;1) h θ ( x ) = θ 1 x 1 + θ 2 x 2 + · · · + θ n x n + b = ( θ ; b ) T ( x ; 1 )

线性回归

给定数据集 D=(x1,y1),(x2,y2),,(xN,yN) D = ( x 1 , y 1 ) , ( x 2 , y 2 ) , · · · , ( x N , y N ) ,其中 x x 是一个m维向量, yiR y i ∈ ℜ 。 线性回归(linear regression)试图用一个线性模型以尽可能准确地预测实值输出值。

极大似然估计

yi^ y i ^ 表示第i样本的预测值,则估计误差:

εi=yi^yi ε i = y i ^ − y i

根据中心极限定理,误差 εi ε i 是独立同分布的,且符合均值为0方差为 σ2 σ 2 的高斯分布。则:
p(εi)=12πσexp(ε2i2σ2) p ( ε i ) = 1 2 π σ e x p ( − ε i 2 2 σ 2 )

p(yi|xi,θ)=12πσexp((yiθTxi)22σ2) p ( y i | x i , θ ) = 1 2 π σ e x p ( − ( y i − θ T x i ) 2 2 σ 2 )

采用极大似然估计时,似然函数为:

L(y1,y2,,yN|x1,x2,,xN,θ)=Np(yi|xi,θ)=N12πσexp((yiθTxi)22σ2) L ( y 1 , y 2 , · · · , y N | x 1 , x 2 , · · · , x N , θ ) = ∏ N p ( y i | x i , θ ) = ∏ N 1 2 π σ e x p ( − ( y i − θ T x i ) 2 2 σ 2 )

对数似然函数为:

l(y1,y2,,yN|x1,x2,,xN,θ)=logL(y1,y2,,yN|x1,x2,,xN,θ)=Nlog(12πσexp((yiθTxi)22σ2))=Nlog12πσ1σ212N(yiθTxi)2 l ( y 1 , y 2 , · · · , y N | x 1 , x 2 , · · · , x N , θ ) = l o g L ( y 1 , y 2 , · · · , y N | x 1 , x 2 , · · · , x N , θ ) = ∑ N l o g ( 1 2 π σ e x p ( − ( y i − θ T x i ) 2 2 σ 2 ) ) = N l o g 1 2 π σ − 1 σ 2 1 2 ∑ N ( y i − θ T x i ) 2

J(θ)=12N(θTxiyi)2 J ( θ ) = 1 2 ∑ N ( θ T x i − y i ) 2

则求 l(y1,y2,,yN|x1,x2,,xN,θ) l ( y 1 , y 2 , · · · , y N | x 1 , x 2 , · · · , x N , θ ) 最大即求: J(θ) J ( θ ) 最小。 J(θ) J ( θ ) 称为线性回归的目标函数。

参数解析解

J(θ) J ( θ ) 求导得:

J(θj)θj=N(x2ijθjxijyi)=(x1jx2jxNj)x1jx2jxNjθj(x1jx2jxNj)y1y2yN ∇ J ( θ j ) θ j = ∑ N ( x i j 2 θ j − x i j y i ) = ( x 1 j x 2 j ⋮ x N j ) ( x 1 j x 2 j ⋮ x N j ) θ j − ( x 1 j x 2 j · · · x N j ) ( y 1 y 2 ⋮ y N )

其中 j1,2,,M j ∈ 1 , 2 , · · · , M xij x i j 表示第i个样本的第j维。令倒数等于0,并写出矩阵形式得:
x11x12x1Nx21x22x2NxN1xN2xNNx11x21xN1x12x22xN2x1Nx2NxNNθ1θ2θNx11x12x1Nx21x22x2NxN1xN2xNNy1y2yN=0 ( x 11 x 21 · · · x N 1 x 12 x 22 · · · x N 2 ⋮ ⋮ ⋮ ⋮ x 1 N x 2 N · · · x N N ) ( x 11 x 12 · · · x 1 N x 21 x 22 · · · x 2 N ⋮ ⋮ ⋮ ⋮ x N 1 x N 2 · · · x N N ) ( θ 1 θ 2 ⋮ θ N ) − ( x 11 x 21 · · · x N 1 x 12 x 22 · · · x N 2 ⋮ ⋮ ⋮ ⋮ x 1 N x 2 N · · · x N N ) ( y 1 y 2 · · · y N ) = 0

即:
XTXθXTY=0 X T X θ − X T Y = 0

使用最小二乘法得到解析解:
θ=(XTX)1XTY θ = ( X T X ) − 1 X T Y

为了防止过拟合或者 XTX X T X 不可逆,增加 λ λ 扰动:
θ=(XTX+λI)1XTY θ = ( X T X + λ I ) − 1 X T Y

线性回归的复杂度惩罚因子

  1. 增加L1正则的目标函数为(lasso):
    J(θ)=12N(θTxiyi)2+λM|θj| J ( θ ) = 1 2 ∑ N ( θ T x i − y i ) 2 + λ ∑ M | θ j |

    通常L1正则求解出的参数是稀疏的。
  2. 增加L2正则的目标函数为(rige):
    J(θ)=12N(θTxiyi)2+λMθ2j J ( θ ) = 1 2 ∑ N ( θ T x i − y i ) 2 + λ ∑ M θ j 2
  3. L1与L2正则混合的目标函数为(ElasticNet):
    J(θ)=12N(θTxiyi)2+ρM|θj|+(1ρ)Mθ2j J ( θ ) = 1 2 ∑ N ( θ T x i − y i ) 2 + ρ ∑ M | θ j | + ( 1 − ρ ) ∑ M θ j 2
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值