线性分类(1)

背景


感知机

感知机(preceptron)是线性分类的二分类模型,属于硬分类。输入为实例的特征向量,输出为实例的类别,分别用 1 和 -1 表示。感知机将输入空间(特征空间)中的实例划分为正负两类分离的超平面,旨在求出将训练集进行线性划分的超平面,为此,导入基于误分类的损失函数,利用梯度下降法对损失函数进行极小化,求得最优解。

n个p维样本集{xi,yi} ,yi = ω \omega ωTx 且xi ∈ \in Rp ω \omega ωi ∈ \in Rp

模型
f( ω \omega ω) = sign( ω \omega ωTx ),当 ω \omega ωTxi > 0 ,yi = +1 ,否则yi = -1,联立可得正确被分类的样本点满足
y i ω T x i > 0 (1) y_i \omega^Tx_i > 0\tag{1} yiωTxi>0(1)
损失函数
假设误分类点的集合为 M
L ( ω ) = ∑ i = 1 m − y i ω T x i , x i ∈ M (2) L(\omega) = \sum_{i=1}^m -y_i\omega^Tx_i,x_i \in M\tag{2} L(ω)=i=1myiωTxi,xiM(2)
随机梯度下降法:
Δ = ∂ L ∂ ω = − ∑ i = 1 m y i x \Delta = \frac{\partial L}{\partial \omega} = -\sum_{i=1}^my_ix Δ=ωL=i=1myix
ω t + 1 ⟸ ω t − λ Δ \omega^{t+1} \Longleftarrow \omega^{t} - \lambda \Delta ωt+1ωtλΔ
通过迭代可以使损失函数不断减小,直到为 0.
当训练数据集线性可分的时候,感知机学习算法是收敛的,并且存在无穷多个解,解会由于不同的初值或不同的迭代顺序不同而有所不同。

逻辑回归

Logistic Regression 虽然被称为回归,但其实际上是分类模型,并常用于二分类。Logistic 回归是在上面感知机基础上再加一层,它要找到分类概率 P(Y=1) 与输入向量 x 的直接关系(条件概率),然后通过比较概率值来判断类别。

数据集:同感知机一样

本质:假设数据服从这个分布,然后使用极大似然估计做参数的估计。

激活函数:Logistic 分布(一种连续型的概率分布)
F ( X ) = P ( X ≤ x ) = 1 1 + e − ( x − μ ) γ F(X) = P(X \leq x) = \frac{1}{1+e^{-\frac{(x-\mu)}{\gamma}}} F(X)=P(Xx)=1+eγ(xμ)1
其概率密度函数为f(x)
f ( x ) = F ′ ( X ) = e − ( x − μ ) γ γ ( 1 + e − ( x − μ ) γ ) 2 f(x) = F\prime(X) = \frac{e^{-\frac{(x-\mu)}{\gamma}}}{\gamma(1+e^{-\frac{(x-\mu)}{\gamma}})^2} f(x)=F(X)=γ(1+eγ(xμ))2eγ(xμ)
其中, μ \mu μ表示位置参数, γ \gamma γ 为形状参数

这里使用的激活函数是其特殊状态sigmoid函数,即 μ \mu μ = 0、 γ \gamma γ = 1.

条件概率P(Y=1|X):对于二分类问题,设+1表示正例,-1表示反例。我们用条件概率P(Y=1|X)来拟合样本点被分类到正例的概率。由于 ω \omega ωTx的范围为R,需要将其映射到(0,1),使用sigmoid函数正合适,因为其不仅可以正确映射,而且连续可微。
P ( y = 1 ∣ x ) = p 1 = 1 1 + e − ω T x P(y=1|x) = p_1 = \frac{1}{1+e^{-\omega^Tx}} Py=1x=p1=1+eωTx1
P ( y = 0 ∣ x ) = p 0 = 1 − p 1 = 1 1 + e ω T x (3) P(y=0|x) = p_0 = 1- p_1 = \frac{1}{1+e^{\omega^Tx}} \tag{3} Py=0x=p0=1p1=1+eωTx1(3)
I n p 1 1 − p 1 = ω T x , 其 中 p 1 1 − p 1 叫 几 率 , I n p 1 1 − p 1 叫 对 数 几 率 (4) In \frac{p_1}{1-p_1} = \omega^Tx,其中\frac{p_1}{1-p_1}叫几率,In \frac{p_1}{1-p_1}叫对数几率 \tag{4} In1p1p1=ωTx,1p1p1In1p1p1(4)
输出 Y=1 的对数几率是由输入 x 的线性函数表示的模型,这就是逻辑回归模型。当 ω \omega ωTx的值越接近正无穷, In p 1 1 − p 1 \frac{p_1}{1-p_1} 1p1p1 概率值也就越接近 1。因此逻辑回归的思路是,先拟合决策边界(不局限于线性,还可以是多项式),再建立这个边界与分类的概率联系,从而得到了二分类情况下的概率。

损失函数(似然函数): L( ω \omega ω)
L ( ω ) = ∏ i = 1 n p 1 y i p 0 1 − y i L(\omega) = \prod_{i=1}^n p_1^{y_i} p_0^{1-y_i} L(ω)=i=1np1yip01yi
方便计算,转为对数似然函数
L ( ω ) = I n ∏ i = 1 n p 1 y i p 0 1 − y i = ∑ i = 1 n [ y i I n ( p 1 ) + ( 1 − y i ) I n ( 1 − p 1 ) ] = ∑ i = 1 n [ y i I n p 1 1 − p 1 + I n ( 1 − p 1 ) ] 由 式 ( 3 ) ( 4 ) 可 得 L ( ω ) = ∑ i = 1 n [ ω T x i − I n ( 1 + e ω T x i ) ] (5) L(\omega) =In \prod_{i=1}^n p_1^{y_i} p_0^{1-y_i} \\ =\sum_{i=1}^n [y_iIn(p_1)+ (1-y_i)In(1-p_1)] \\ =\sum_{i=1}^n [y_i In\frac{ p_1}{1-p_1} + In(1-p_1) ]\\ 由式(3)(4)可得 \\ L(\omega)=\sum_{i=1}^n[\omega^Tx_i - In(1+e^{\omega^Tx_i}) ] \tag{5} L(ω)=Ini=1np1yip01yi=i=1n[yiIn(p1)+(1yi)In(1p1)]=i=1n[yiIn1p1p1+In(1p1)]34L(ω)=i=1n[ωTxiIn(1+eωTxi)](5)

求解 ω \omega ω 随机梯度下降法
将式(5)的最大对数似然函数转为最小损失函数
L ( ω ) = − ∑ i = 1 n [ ω T x i − I n ( 1 + e ω T x i ) ] (5) L(\omega)= -\sum_{i=1}^n[\omega^Tx_i - In(1+e^{\omega^Tx_i}) ] \tag{5} L(ω)=i=1n[ωTxiIn(1+eωTxi)](5)
Δ i = ∂ L ∂ ω i = ( p 1 − y i ) x i \Delta_i = \frac{\partial L}{\partial \omega_i} = (p_1-y_i)x_i Δi=ωiL=(p1yi)xi
迭代更新
ω i t + 1 = ω i t − λ Δ i = ω i t − λ ( p 1 − y i ) x i \omega^{t+1}_i = \omega^t_i - \lambda \Delta_i = \omega^t_i - \lambda (p_1-y_i)x_i ωit+1=ωitλΔi=ωitλ(p1yi)xi
知道达到限定条件就可停止迭代。

逻辑回归正则化

拉普拉斯分布

x-Laplace(μ, λ \lambda λ),其中,μ 是位置参数, λ \lambda λ 是尺度参数。概率密度函数如下:
f ( x ) = 1 2 λ e − ∣ x − μ ∣ λ f(x) = \frac{1}{2\lambda}e^{-\frac{|x-\mu|}{\lambda}} f(x)=2λ1eλxμ

性质:

  1. E(x) = μ \mu μ
  2. D(x) = 2 λ \lambda λ2
  3. 关于 μ对称,且在该点达到极大值1/2 λ \lambda λ ,即是它的众数。 越小曲线越陡, 越大曲线越平坦.

下面给出μ= 0, λ \lambda λ = 0.5的图像

L1正则化

相当于为模型添加了这样一个先验知识: ω \omega ω 服从零均值拉普拉斯分布。
f ( ω ∣ λ ; μ = 0 ) = 1 2 λ e − ∣ ω − μ ∣ λ = 1 2 λ e − ∣ ω ∣ λ f(\omega|\lambda;\mu=0) = \frac{1}{2\lambda}e^{-\frac{|\omega-\mu|}{\lambda}} = \frac{1}{2\lambda}e^{-\frac{|\omega|}{\lambda}} f(ωλ;μ=0)=2λ1eλωμ=2λ1eλω

损失函数(似然函数): L( ω \omega ω)
L ( ω ) = ∏ i = 1 n p 1 y i p 0 1 − y i ∏ j = 1 p 1 2 λ e − ∣ ω j ∣ λ L(\omega) = \prod_{i=1}^n p_1^{y_i} p_0^{1-y_i} \prod_{j=1}^p \frac{1}{2\lambda}e^{-\frac{|\omega_j|}{\lambda}} L(ω)=i=1np1yip01yij=1p2λ1eλωj

目标函数:
L ( ω ) = − I n L ( ω ) = − ∑ i = 1 n [ y i I n ( p 1 ) + ( 1 − y i ) I n ( 1 − p 1 ) ] + 1 2 λ 2 ∣ ∣ ω ∣ ∣ 1 L(\omega) = -In L(\omega) = -\sum_{i=1}^n [y_iIn(p_1)+ (1-y_i)In(1-p_1)] + \frac{1}{2\lambda^2} ||\omega||_1 L(ω)=InL(ω)=i=1n[yiIn(p1)+(1yi)In(1p1)]+2λ21ω1

总结: 为模型增加了“模型参数服从零均值拉普拉斯分布”这一先验知识 ⟹ \Longrightarrow 原始损失函数的后面加上了 L1 正则

L2正则化

相当于为模型添加了这样一个先验知识:w 服从零均值正态分布。
f ( ω ∣ μ = 0 ; σ ) = 1 2 π σ e − ( ω ) 2 2 σ 2 f(\omega|\mu=0;\sigma) = \frac{ 1}{ \sqrt{ 2\pi } \sigma} e^{\frac{- (\omega)^2}{2\sigma^2}} f(ωμ=0;σ)=2π σ1e2σ2(ω)2

损失函数(似然函数): L( ω \omega ω)
L ( ω ) = ∏ i = 1 n p 1 y i p 0 1 − y i ∏ j = 1 p 1 2 π σ e − ( ω j ) 2 2 σ 2 L(\omega) = \prod_{i=1}^n p_1^{y_i} p_0^{1-y_i} \prod_{j=1}^p \frac{ 1}{ \sqrt{ 2\pi } \sigma} e^{\frac{- (\omega_j)^2}{2\sigma^2}} L(ω)=i=1np1yip01yij=1p2π σ1e2σ2(ωj)2

目标函数:
L ( ω ) = − I n L ( ω ) = − I n L ( ω ) = − ∑ i = 1 n [ y i I n ( p 1 ) + ( 1 − y i ) I n ( 1 − p 1 ) ] + 1 2 σ 2 ∣ ∣ ω ∣ ∣ 2 L(\omega) = -In L(\omega) = -In L(\omega) = -\sum_{i=1}^n [y_iIn(p_1)+ (1-y_i)In(1-p_1)] + \frac{1}{2\sigma^2} ||\omega||_2 L(ω)=InL(ω)=InL(ω)=i=1n[yiIn(p1)+(1yi)In(1p1)]+2σ21ω2

总结: 为模型增加了“模型参数服从零均值正态分布”这一先验知识 ⟹ \Longrightarrow 原始损失函数的后面加上了 L2正则

L1、L2总结

L1 正则化增加了所有权重 w 参数的绝对值之和,逼迫更多 w 为零,也就是变稀疏,从而实现特征的自动选择(把无用的特征对应的权重置为 0)。

L2 正则化中增加所有权重 w 参数的平方之和,逼迫所有 w 尽可能趋向零但不为零,降低模型的复杂度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值