机器学习(二)

第5章 神经网络

  • 神经元
  • 感知机
  • 多层前馈神经网络
  • 激活函数及其性质
  • BP算法

感知机与多层前馈神经网络

感知机由两层神经元组成,但只有输出神经元进行激活函数处理,即只拥有一层功能神经元,感知机只能处理线性可分问题,且若线性可分,则感知机的学习过程一定会收敛。

为了解决非线性可分问题,需要使用多层功能神经元。

反向传播算法

缓解BP网络的过拟合:

  • 早停(early stopping):若训练集误差降低但验证集误差升高,则停止训练,并返回具有最小验证集误差的连接权和阈值。
  • 正则化(regularization):如连接权的平方和(描述了网络的复杂度)。(损失函数增加了连接权的平方和后,训练过程将偏好比较小的连接权,使网络输出更加光滑)

全局最小与局部极小

由于负梯度方向是函数值下降最快的方向,因此梯度下降法沿着负梯度方向搜索最优解,最终到达局部极小点。若存在多个局部极小点,需要采用一定策略跳出局部极小,从而进一步接近全局最小:

  • 以多种不同参数值初始化多个神经网络,最后取误差最小的解作为参数。
  • 使用随机梯度下降。
  • 使用模拟退火。
  • 使用遗传算法。

第6章 支持向量机

  • 支持向量:不同类距离超平面最近的样本称为支持向量
  • 间隔:异类支持向量到超平面距离之和

动机:希望找到一个最优的划分超平面,对训练样本局部扰动的容忍性最好,结果最鲁棒,泛化能力最强。

支持向量与间隔

设超平面 w T x + b = 0 w^Tx+b=0 wTx+b=0
样本点到超平面的距离为 r = ∣ w T x + b ∣ ∣ ∣ w ∣ ∣ r=\frac{|w^Tx+b|}{||w||} r=wwTx+b
一般情况下,对于样本 x x x,当 w T x + b > 0 w^Tx+b>0 wTx+b>0时判定为正样本;当 w T x + b < 0 w^Tx+b<0 wTx+b<0时判定为负样本。为了找到最优超平面,我们希望样本点尽可能地远离超平面,令正类的支持向量满足 w T x + b = 1 w^Tx+b=1 wTx+b=1,负类的支持向量满足 w T x + b = − 1 w^Tx+b=-1 wTx+b=1。即对于所有的正样本满足 w T x + b ≥ 1 w^Tx+b \geq 1 wTx+b1,对于所有的负样本满足 w T x + b ≤ − 1 w^Tx+b \leq -1 wTx+b1。则间隔为 γ = 2 ∣ ∣ w ∣ ∣ \gamma=\frac{2}{||w||} γ=w2

支持向量机是寻求具有最大间隔的超平面,即求解优化问题 max ⁡ w 2 ∣ ∣ w ∣ ∣ \max_w \frac{2}{||w||} wmaxw2 s . t .   y i ( w T x + b ) ≥ 1 , i = 1 , . . . , m s.t. \ y_i(w^Tx+b) \geq 1, i=1,...,m s.t. yi(wTx+b)1,i=1,...,m y i y_i yi取值为1或者-1。

上述最大化问题可以转换为最小化问题 min ⁡ w 1 2 ∣ ∣ w ∣ ∣ 2 \min_w \frac{1}{2}||w||^2 wmin21w2 s . t .   y i ( w T x + b ) ≥ 1 , i = 1 , . . . , m s.t. \ y_i(w^Tx+b) \geq 1, i=1,...,m s.t. yi(wTx+b)1,i=1,...,m

对偶问题

为了高效地求解上述模型,我们利用拉格朗日乘子法获取其对偶问题。
拉格朗日函数为 L ( w , b , α ) = 1 2 ∣ ∣ w ∣ ∣ 2 + ∑ i = 1 m α i ( 1 − y i ( w T x i + b ) ) L(w,b,\alpha)=\frac{1}{2}||w||^2+\sum^m_{i=1}\alpha_i(1-y_i(w^Tx_i+b)) L(w,b,α)=21w2+i=1mαi(1yi(wTxi+b))
令偏导为0,得 ∂ L ∂ w = w − ∑ i = 1 m α i y i x i = 0 ⇔ w = ∑ i = 1 m α i y i x i = 0 \frac{\partial L}{\partial w}=w-\sum^m_{i=1}\alpha_i y_i x_i=0 \Leftrightarrow w=\sum^m_{i=1}\alpha_i y_i x_i=0 wL=wi=1mαiyixi=0w=i=1mαiyixi=0 ∂ L ∂ b = ∑ i = 1 m − α i y i = 0 ⇔ ∑ i = 1 m α i y i = 0 \frac{\partial L}{\partial b}=\sum^m_{i=1} -\alpha_i y_i=0 \Leftrightarrow \sum^m_{i=1} \alpha_i y_i=0 bL=i=1mαiyi=0i=1mαiyi=0

可以发现解得的 w w w α \alpha α的取值相关,则求解 w w w可转化为求解 α \alpha α。将上述两式代入拉格朗日函数,消去 w w w b b b,得到原始问题的对偶问题 max ⁡ α ∑ i = 1 m α i − 1 2 ∑ i = 1 m ∑ j = 1 m α i α j y i y j x i T x j \max_\alpha \sum^m_{i=1} \alpha_i - \frac{1}{2}\sum^m_{i=1}\sum^m_{j=1}\alpha_i \alpha_j y_i y_j x^T_i x_j αmaxi=1mαi21i=1mj=1mαiαjyiyjxiTxj s . t .   ∑ i = 1 m α i y i = 0 s.t. \ \sum^m_{i=1} \alpha_i y_i=0 s.t. i=1mαiyi=0 α i ≥ 0 , i = 1 , . . . , m \alpha_i \geq 0, i=1,...,m αi0,i=1,...,m

上述求解 α \alpha α过程需满足KKT条件,因此需要满足 α i ( y i f ( x i ) − 1 ) = 0 \alpha_i(y_i f(x_i)-1)=0 αi(yif(xi)1)=0,即当 α i > 0 \alpha_i>0 αi>0时, y i f ( x i ) − 1 = 0 y_i f(x_i)-1=0 yif(xi)1=0,所以解出来 α i > 0 \alpha_i>0 αi>0对应的样本为支持向量,由于支持向量满足 y i ( ∑ i = 1 m α i y i x i T x + b ) = 1 y_i(\sum^m_{i=1} \alpha_i y_i x^T_i x+b)=1 yi(i=1mαiyixiTx+b)=1,可求解出 b b b

求出 w w w b b b可得到最终模型 f ( x ) = w T x + b = ∑ i = 1 m α i y i x i T x + b f(x)=w^T x+b=\sum^m_{i=1}\alpha_i y_i x^T_i x+b f(x)=wTx+b=i=1mαiyixiTx+b

可以发现,SVM最终模型仅与支持向量有关。

核函数

对于非线性可分问题,我们可以将样本映射到一个更高维的特征空间中,使得样本在这个特征空间内线性可分。假设映射函数为 ϕ \phi ϕ,则在高维特征空间中划分超平面可表示为 f ( x ) = w T ϕ ( x ) + b f(x)=w^T \phi(x)+b f(x)=wTϕ(x)+b
最大化间隔可表示为 min ⁡ w , b 1 2 ∣ ∣ w ∣ ∣ 2 \min_{w,b} \frac{1}{2}||w||^2 w,bmin21w2 s . t .   y i ( w T ϕ ( x i ) + b ) ≥ 1 , i = 1 , . . . , m s.t. \ y_i(w^T \phi(x_i)+b) \geq 1, i=1,...,m s.t. yi(wTϕ(xi)+b)1,i=1,...,m
对偶问题为 max ⁡ α ∑ i = 1 m α i − 1 2 ∑ i = 1 i ∑ j = 1 j α i α j y i y j ϕ ( x i ) T ϕ ( x j ) \max_{\alpha} \sum^m_{i=1} \alpha_i -\frac{1}{2}\sum^i_{i=1}\sum^j_{j=1} \alpha_i \alpha_j y_i y_j \phi(x_i)^T \phi(x_j) αmaxi=1mαi21i=1ij=1jαiαjyiyjϕ(xi)Tϕ(xj) s . t .   ∑ i = 1 m α i y i = 0 s.t. \ \sum^m_{i=1} \alpha_i y_i=0 s.t. i=1mαiyi=0 α i ≥ 0 , i = 1 , . . . , m \alpha_i \geq 0, i=1,...,m αi0,i=1,...,m

可以看出,映射到高维空间后,需要求解映射函数的内积,我们引入核函数 κ ( x i , x j ) = ϕ ( x i ) T ϕ ( x j ) \kappa{(x_i,x_j)}=\phi(x_i)^T \phi(x_j) κ(xi,xj)=ϕ(xi)Tϕ(xj)
常用的核函数有:线性核、多项式核、高斯核、拉普拉斯核、Sigmoid核。

软间隔和正则化

  • 软间隔(soft margin)
  • 替代损失:hinge损失,指数损失,对率损失
  • 松弛变量(slack variables)

对于在样本空间或者是特征空间线性不可分的问题,或者为了缓解过拟合,引入"软间隔"。
引入松弛变量 ξ i ≥ 0 \xi_i \geq 0 ξi0,则软间隔支持向量机 min ⁡ w , b , ξ i 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ξ i \min_{w,b,\xi_i} \frac{1}{2} ||w||^2+C\sum^m_{i=1} \xi_i w,b,ξimin21w2+Ci=1mξi s . t . y i ( w T x i + b ) ≥ 1 − ξ i s.t. y_i(w^Tx_i+b) \geq 1-\xi_i s.t.yi(wTxi+b)1ξi ξ i ≥ 0 , i = 1 , . . . , m \xi_i \geq 0, i=1,...,m ξi0,i=1,...,m

SVM与LR比较

  • 对数几率回归结果具有概率意义;
  • 对数几率回归能直接用于多分类任务,支持向量机为此需进行推广;
  • 对数几率回归的结果依赖于更多的训练样本,开销更大,支持向量机只依赖于支持向量。

正则化

  • L1正则化倾向于稀疏解,即非0分量个数尽可能少
  • L2正则化倾向于光滑解,即 w w w的分量取值尽量均衡,非0分量个数尽量稠密

第7章 贝叶斯分类器

第8章 集成学习

  • 同质集成、基学习器、基学习算法
  • 异质集成、组件学习器
  • Boosting(代表方法 AdaBoost):个体学习器间存在强依赖关系,必须串行生成的序列化方法
  • Bagging和RF:个体学习器间不存在强依赖关系,可同时生成的并行化方法

集成学习通过构建并结合多个学习器,最终结果由投票法产生。要求个体学习器应“好而不同”,即要求个体学习器具有一定的准确性,同时具备多样性

Boosting

Boosting 族算法先从初始训练集中训练一个基学习器,再根据基学习器的表现,对训练样本分布进行调整,使得先前基学习器做错的样本在后续收到更多的关注。然后基于调整后的样本分布来训练下一个基学习器。直到基学习器数目达到事先指定的值T。最终将这T个基学习器进行加权组合。

AdaBoost

串行、只适用于二分类,关注降低偏差

Bagging 与 随机森林

Bagging 基于自助采样法(Bootstrap),给定 m m m个样本的数据集,有放回采样 m m m次后,获得含 m m m个样本的采样集。如此,采样出 T T T个含 m m m个样本的采样集后,基于每个采样集训练一个基学习器,再将这些基学习器进行组合。预测时,Bagging对分类任务使用简单投票法,对回归任务使用简单平均法。

Bagging 高效,可用于多分类和回归,关注降低方差

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值