Learning with Pseudo-Ensembles

Pseudo-Ensembles

Learning with Pseudo-Ensembles 是2014年的NIPS文章,其提出了一个概念:pseudo-ensembles。【论文】【代码】。传统方法考虑到了在输入空间上的扰动(就是在输入样本中添加噪声,构成原本数据集上的一个超集),该文章中考虑到了在模型空间上的扰动。
文章目的
(1)通过pseudo-ensembles方法,是的神经网络模型具有抗干扰的能力。这个干扰笔者认为,(以图片分类为例)就是在图片上增加了噪声,是的原本为猫的样本,在添加噪声后,分类结果可能是狗。
(2)使得模型成为一个鲁棒的模型(毕竟采用的ensemble learning)。
pseudo-ensemble 在文章中以 Dropout 为例子,认为 Dropout 方法是建立在 parent model 的模型基础上, parent model 通过对输入层/隐藏层的神经元随机抛弃,从而产生不同于的 child modelchild model 通过它们的公共 parent model 共享的参数被用来最小化 child model 的预期损失。
和传统集成学习的比较(boosting,random forest)
(1)boosting求解的是整体损失最小,而 pseudo-ensemble 求解的是单个 child model 期望损失最小。
(2)child model 通过其 parent model 共享参数和结构。

The Pseudo-Ensemble Agreement regularizer

Pseudo-Ensemble Agreement(PEA) 的含义笔者认为:对于一个输入,增添扰动后,其所有的中间表示,都应该一致。PEA 的目的是,使得模型对扰动具有鲁棒性,因为鲁棒的模型泛化性能更好,同时还能学习数据的内在不变性。
监督学习下 pseudo-ensemble 的目标函数
m i n i m i z e θ E ( x , y ) ∼ p x y E ξ ∼ p ξ L ( f θ ( x ; ξ ) , y ) \underset{\theta}{minimize} \underset{(x,y)\sim{p_{xy}}}{E}\underset{\xi\sim{p_{\xi}}}{E}L(f_{\theta}(x;\xi),y) θminimize(x,y)pxyEξpξEL(fθ(x;ξ),y)
( x , y ) ∼ p x y (x,y)\sim{p_{xy}} (x,y)pxy 是从 p x y p_{xy} pxy分布中采样的样本, ξ ∼ p ξ {\xi}\sim{p_{\xi}} ξpξ是从 p ξ p_{\xi} pξ中采样得到的噪声。 f θ ( x ; ξ ) f_{\theta}(x;\xi) fθ(x;ξ)表示child model的输出。在 ξ {\xi} ξ 扰动下, y {y} y是真实标签。
半监督学习下pseudo-ensemble 的目标函数
首先我们来解释以下pseudo-ensemble 正则化项,其公式表示如下
R ( f θ , p x , p ξ ) = E x ∼ p x E ξ ∼ p ξ ∑ i = 2 d λ i ν i ( f θ i ( x ) , f θ i ( x ; ξ ) ) R(f_{\theta},p_{x},p_{\xi})= \underset{x\sim{p_{x}}}{E}\underset{\xi\sim{p_{\xi}}}{E}\sum_{i=2}^{d}\lambda_{i}\nu_{i}(f_{\theta}^{i}(x),f_{\theta}^{i}(x;\xi)) R(fθ,px,pξ)=xpxEξpξEi=2dλiνi(fθi(x),fθi(x;ξ))
x ∼ p x x\sim p_{x} xpx是无标签样本, ν i ( . . ) \nu_{i}(..) νi(..)是一个惩罚项,用于在神经网络 i t h i^{th} ith层的 ( f θ i ( x ) (f_{\theta}^{i}(x) (fθi(x) f θ i ( x ; ξ ) f_{\theta}^{i}(x;\xi) fθi(x;ξ)的差异。 λ i \lambda_{i} λi衡量 ν i \nu_{i} νi的重要性。笔者个人理解,这个pseudo-ensemble 正则化项的思想是:神经网络中的每一层,不管是在添加扰动或者未添加扰动的这两种情况下,其对于特征的表示应该是相同的。
m i n i m i z e θ E ( x , y ) ∼ p x y E ξ ∼ p ξ L ( f θ ( x ; ξ ) , y ) + E x ∼ p x E ξ ∼ p ξ ∑ i = 2 d λ i ν i ( f θ i ( x ) , f θ i ( x ; ξ ) ) \underset{\theta}{minimize} \underset{(x,y)\sim{p_{xy}}}{E}\underset{\xi\sim{p_{\xi}}}{E}L(f_{\theta}(x;\xi),y)+ \underset{x\sim{p_{x}}}{E}\underset{\xi\sim{p_{\xi}}}{E}\sum_{i=2}^{d}\lambda_{i}\nu_{i}(f_{\theta}^{i}(x),f_{\theta}^{i}(x;\xi)) θminimize(x,y)pxyEξpξEL(fθ(x;ξ),y)+xpxEξpξEi=2dλiνi(fθi(x),fθi(x;ξ))
在加号前面部分采用监督学习的模式,而在加号后边采用半监督学习的模式,后边部分就是正则化项,在正则化项部分无需利用样本的标签信息。然后文章中简单介绍了一些计算差异性的公式,以及损失函数(交叉熵损失函数)

实验

(1)监督学习
数据集 MNIST 60K的训练集,10K的测试集,达到1.08%的错误率。
(2)半监督学习
数据集 MNIST {100, 600, 1000, 3000} 的训练集,10K的测试集,错误率。取得了当年的state-of-the-art 结果。

在这里插入图片描述
在这里插入图片描述
(3)迁移学习
解决的问题相同,都是采用小部分有标签数据来进行分类,往往一篇好点的半监督学习文章会和迁移学习的分类结果进行比较,这篇文章也是。具体请参考文章。
(4)实际应用
这部分可以说是为论文添彩的地方,可有可无。

结果分析

笔者研究方向是半监督学习,对于文章中通过正则化项来利用无标记数据的想法感觉不错,可以认为是用有标签数据训练了一个神经网络模型(监督学习),然后通过无标签数据来修正之前有标签训练的模型。
以上属于个人读后观点,有不对的地方欢迎讨论。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值