0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于权重系联的线性自动编码器

zhKF_jqr_AI 来源:未知 作者:李倩 2018-07-02 14:26 次阅读

现代的深度神经网络通常具有海量参数,甚至高于训练数据的大小。这就意味着,这些深度网络有着强烈的过拟合倾向。缓解这一倾向的技术有很多,包括L1、L2正则、及早停止、组归一化,以及dropout。在训练阶段,dropout随机丢弃隐藏神经元及其连接,以打破神经元间的共同适应。尽管dropout在深度神经网络的训练中取得了巨大的成功,关于dropout如何在深度学习中提供正则化机制,目前这方面的理论解释仍然很有限。

最近,约翰·霍普金斯大学的Poorya Mianjy、Raman Arora、Rene Vidal在ICML 2018提交的论文On the Implicit Bias of Dropout,重点研究了dropout引入的隐式偏置。

基于权重系联的线性自动编码器

为了便于理解dropout的作用机制,研究人员打算在简单模型中分析dropout的表现。具体而言,研究人员使用的简单模型是只包含一个隐藏层的线性网络。该网络的目标是找到最小化期望损失(平方损失)的权重矩阵U、V:

上式中,x为输入,y为标注输出,D为输入x的分布,h表示隐藏层。

学习算法为带dropout的随机梯度下降,其目标为:

其中,dropout率为1-θ,具体的算法为:

这一算法的目标等价于(推导过程见论文附录A.1):

其中,λ = (1-θ)/θ

研究人员又令U = V,进一步简化模型为权重系联的单隐藏层线性自动编码器。相应地,该网络的目标为:

研究人员证明了,如果矩阵U是以上目标的全局最优解,那么U的所有列范数相等。这意味着,dropout倾向于给所有隐藏节点分配相等的权重,也就是说,dropout给整个网络加上了隐式的偏置,倾向于让隐藏节点都具有类似的影响,而不是让一小部分隐藏节点具有重要影响。

上图可视化了参数λ的不同取值的效果。该网络为单隐藏层线性自动编码器,搭配一维输入、一维输出,隐藏层宽度为2。当λ = 0时,该问题转换为平方损失最小化问题。当λ > 0时,全局最优值向原点收缩,所有局部极小值均为全局最小值(证明过程见论文第4节)。当λ增大时,全局最优值进一步向原点收缩。

单隐藏层线性网络

接着,研究人员将上述结果推广到了单隐藏层线性网络。回忆一下,这一网络的目标为:

和权重系联的情形类似,研究人员证明了,如果矩阵对(U, V)是以上目标的全局最优解,那么,‖ui‖‖vi‖ = ‖u1‖‖v1‖,其中,i对应隐藏层的宽度。

研究人员进一步证明,前面提到的单隐藏层线性神经网络的目标等价于正则化的矩阵分解(regularized matrix factorization):

利用矩阵分解这一数学工具,研究人员证明了全局最佳值可以在多项式时间内找到:

试验

研究人员试验了一些模型,以印证前面提到的理论结果。

上图可视化了dropout的收敛过程。和之前的可视化例子类似,模型为单隐藏层线性自动编码器,一维输入、一维输出,隐藏层宽度为2。输入取样自标准正态分布。绿点为初始迭代点,红点为全局最优点。从图中我们可以看到,在不同的λ取值下,dropout都能迅速收敛至全局最优点。

研究人员还在一个浅层线性网络上进行了试验。该网络的输入x ∈ ℝ80,取样自标准正态分布。网络输出y ∈ ℝ120,由y = Mx生成,其中M ∈ ℝ120x80均匀取样自右、左奇异子空间(指数谱衰减)。下图展示了不同参数值(λ ∈ {0.1, 0.5, 1})与不同隐藏层宽度(r ∈ {20, 80})的组合。蓝色曲线为dropout不同迭代次数下对应的目标值,红线为目标的最优值。总共运行了50次,取平均数。

上:r = 20;下:r = 80

上图最后一列为“重要性评分”的方差。重要性评分的计算方法为:‖uti‖‖vti‖,其中t表示时刻(迭代),i表示隐藏层节点。从上图我们看到,随着dropout的收敛,“重要性评分”的方差单调下降,最终降至0. 且λ较大时,下降较快。

结语

这项理论研究确认了dropout是一个均质地分配权重的过程,以阻止共同适应。同时也从理论上解释了dropout可以高效地收敛至全局最优解的原因。

研究人员使用的是单隐藏层的线性神经网络,因此,很自然地,下一步的探索方向为:

更深的线性神经网络

使用非线性激活的浅层神经网络,例如ReLU(ReLU可以加速训练)

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编码器
    +关注

    关注

    41

    文章

    3360

    浏览量

    131530
  • 神经网络
    +关注

    关注

    42

    文章

    4572

    浏览量

    98746
  • Dropout
    +关注

    关注

    0

    文章

    13

    浏览量

    9979

原文标题:dropout的隐式偏置

文章出处:【微信号:jqr_AI,微信公众号:论智】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    新手 Protel 99SE 自动编码和电气规则问题

    跟着视频画的,到自动编码时出现这个问题,哪位大神帮忙
    发表于 03-12 22:36

    什么是线性编码器

    `线性编码器是什么呢,首先我们要先了解一下编码器什么,编码器就是把数据利用一定的原理,把数据编辑整理,进而转换成能利用通讯采集的信号的一种设备。这里我们一般认为
    发表于 12-17 11:22

    稀疏边缘降噪自动编码器的方法

    为了提高自动编码器算法的学习精度,更进一步降低分类任务的分类错误率,提出一种组合稀疏自动编码器(SAE)和边缘降噪自动编码器(mDAE)从而形成稀疏边缘降噪自动编码器(SmDAE)的方
    发表于 12-21 14:41 3次下载
    稀疏边缘降噪<b class='flag-5'>自动编码器</b>的方法

    基于动态dropout的改进堆叠自动编码机方法

    针对堆叠自动编码机( SA)容易产生过拟合而降低垃圾邮件分类精度的问题,提出了一种基于动态dropout的改进堆叠自动编码机方法。首先分析了垃圾邮件分类问题的特殊性,将dropout算法引入到堆叠
    发表于 12-26 14:37 0次下载
    基于动态dropout的改进堆叠<b class='flag-5'>自动编码</b>机方法

    自动编码器的社区发现算法

    准确.提出一种基于深度稀疏自动编码器的社区发现算法CoDDA(a community detection algorithm based on deep sparse autoencoder),尝试提高使用这些经典方法处理高维邻接矩阵进行社区发现的准确性.首先,提出基于跳数的处理方法,对稀疏的邻接矩
    发表于 01-02 18:32 0次下载
    <b class='flag-5'>自动编码器</b>的社区发现算法

    编码器是什么?有什么用

    自动编码器是一种无监督的神经网络模型,它可以学习到输入数据的隐含特征,这称为编码(coding),同时用学习到的新特征可以重构出原始输入数据,称之为解码(decoding)。
    的头像 发表于 08-02 16:47 1.7w次阅读

    如何使用深度神经网络技术实现机器学习的全噪声自动编码器

    ,基于自动编码器的深度神经网络可以有效的用于数据特征提取。自动编码是一种无监督学习算法,稀疏自动编码器、降噪自动编码器、收缩自动编码器是在原
    发表于 12-11 15:44 7次下载
    如何使用深度神经网络技术实现机器学习的全噪声<b class='flag-5'>自动编码器</b>

    一种改进的基于半自动编码器的协同过滤推荐算法

    为高效利用推荐系统中用户和物品的交互历史和辅助信息,提出一种改进的协同过滤推荐算法。利用半自动编码器对用户和物品的辅助信息进行特征提取,将提取岀的特征映射到矩阵分解模型中,通过反向传播算法实现半自动编码器
    发表于 03-23 16:35 4次下载
    一种改进的基于半<b class='flag-5'>自动编码器</b>的协同过滤推荐算法

    一种混合自动编码器高斯混合模型MAGMM

    高维数据的无监督异常检测是机器学习的重要挑战之一。虽然先前基于单一深度自动编码器和密度估计的方法已经取得了显著的进展,但是其仅通过一个深度自编码器来生成低维表示,这表明没有足够的信息来执行后续
    发表于 04-13 15:33 7次下载
    一种混合<b class='flag-5'>自动编码器</b>高斯混合模型MAGMM

    栈式降噪自动编码器的动态混合推荐算法

    传统协同过滤算法仅依靠用户评分数据的低维向量方法,存在推荐结果精确度低以及冷启动问题。为此,提出一种新的动态混合推荐算法,将栈式降噪自动编码器融入到基于用户的协同过滤中,学习用户的深层次特征,并与
    发表于 06-09 15:48 7次下载

    如何使用TensorFlow构建和训练变分自动编码器

    在本文中,我们将研究一个非常流行的 AI 用例,用于压缩数据并使用自动编码器重建压缩数据。
    的头像 发表于 05-05 16:57 1817次阅读
    如何使用TensorFlow构建和训练变分<b class='flag-5'>自动编码器</b>

    堆叠降噪自动编码器(SDAE)

    自动编码器(Auto-Encoder,AE) 自编码器(autoencoder)是神经网络的一种,经过训练后能尝试将输入复制到输出。自编码器内部有一个隐藏层 h,可以产生编码(code
    的头像 发表于 01-11 17:04 5106次阅读
    堆叠降噪<b class='flag-5'>自动编码器</b>(SDAE)

    编码器种类及型号

    编码器种类及型号:最常见的编码器类型是旋转编码器线性编码器。旋转编码器通常用于测量机器人的关节
    的头像 发表于 05-18 11:15 3785次阅读
    <b class='flag-5'>编码器</b>种类及型号

    编码器与PLC的接线方法

    编码器分为旋转编码器线性编码器两种。旋转编码器用于检测旋转位置和速度,而线性
    发表于 12-22 09:20 458次阅读
    <b class='flag-5'>编码器</b>与PLC的接线方法

    编码器好坏怎么判断,编码器原理

    编码器(Encoder)是将输入数据转化为特定编码表示的一种技术。对于不同类型的编码器,评判其好坏可以从多个方面进行考量,包括编码质量、速度、模型结构等。
    的头像 发表于 01-23 10:58 631次阅读