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

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

3天内不再提示

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

jf_96884364 来源:jf_96884364 作者:jf_96884364 2023-01-11 17:04 次阅读

自动编码器(Auto-Encoder,AE)

编码器(autoencoder)是神经网络的一种,经过训练后能尝试将输入复制到输出。自编码器内部有一个隐藏层 h,可以产生编码(code)表示输入。该网络可以看作由两部分组成:一个由函数 h = f(x) 表示的编码器和一个生成重构的解码器 r = g(h)。我们不应该将自编码器设计成输入到输出完全相等。这通常需要向自编码器强加一些约束,使它只能近似地复制,并只能复制与训练数据相似的输入。

自动编码机由三层网络组成,其中输入层神经元数量与输出层神经元数量相等,中间层神经元数量少于输入层和输出层。搭建一个自动编码器需要完成下面三样工作:搭建编码器,搭建解码器,设定一个损失函数,用以衡量由于压缩而损失掉的信息(自编码器是有损的)。编码器和解码器一般都是参数化的方程,并关于损失函数可导,典型情况是使用神经网络。编码器和解码器的参数可以通过最小化损失函数而优化。

自动编码机(Auto-encoder)是一个自监督的算法,并不是一个无监督算法,它不需要对训练样本进行标记,其标签产生自输入数据。因此自编码器很容易对指定类的输入训练出一种特定的编码器,而不需要完成任何新工作。自动编码器是数据相关的,只能压缩那些与训练数据类似的数据。比如,使用人脸训练出来的自动编码器在压缩别的图片,比如树木时性能很差,因为它学习到的特征是与人脸相关的。

自动编码器运算过程:原始input(设为x)经过加权(W、b)、映射(Sigmoid)之后得到y,再对y反向加权映射回来成为z。通过反复迭代训练两组(W、b),目的就是使输出信号与输入信号尽量相似。训练结束之后自动编码器可以由两部分组成:

1.输入层和中间层,可以用这个网络来对信号进行压缩

2.中间层和输出层,我们可以将压缩的信号进行还原

降噪自动编码器(Denoising Auto Encoder,DAE)

降噪自动编码器就是在自动编码器的基础之上,为了防止过拟合问题而对输入层的输入数据加入噪音,使学习得到的编码器具有鲁棒性而改进的,是Bengio在08年论文:Extracting and composing robust features with denoising autoencoders提出的。

论文中关于降噪自动编码器的示意图如下,类似于dropout,其中x是原始的输入数据,降噪自动编码器以一定概率(通常使用二项分布)把输入层节点的值置为0,从而得到含有噪音的模型输入xˆ。

这个破损的数据是很有用的,原因有二:

1.通过与非破损数据训练的对比,破损数据训练出来的Weight噪声比较小。降噪因此得名。原因不难理解,因为擦除的时候不小心把输入噪声给×掉了。

2.破损数据一定程度上减轻了训练数据与测试数据的代沟。由于数据的部分被×掉了,因而这破损数据一定程度上比较接近测试数据。训练、测试肯定有同有异,当然我们要求同舍异。

堆叠降噪自动编码器(Stacked Denoising Auto Encoder,SDAE)

SDAE的思想就是将多个DAE堆叠在一起形成一个深度的架构。只有在训练的时候才会对输入进行腐蚀(加噪),训练完成就不需要在进行腐蚀。结构如下图所示:

**逐层贪婪训练:**每层自编码层都单独进行非监督训练,以最小化输入(输入为前一层的隐层输出)与重构结果之间的误差为训练目标。前K层训练好了,就可以训练K+1层,因为已经前向传播求出K层的输出,再用K层的输出当作K+1的输入训练K+1层。

一旦SDAE训练完成, 其高层的特征就可以用做传统的监督算法的输入。当然,也可以在最顶层添加一层logistic regression layer(softmax层),然后使用带label的数据来进一步对网络进行 微调(fine-tuning) ,即用样本进行有监督训练。

审核编辑 hhy

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

    关注

    41

    文章

    3364

    浏览量

    131560
  • 神经网络
    +关注

    关注

    42

    文章

    4575

    浏览量

    98775
收藏 人收藏

    评论

    相关推荐

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

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

    编码器,编码器是什么意思

    编码器,编码器是什么意思 编码器 编码器(encoder)是将信号
    发表于 03-08 15:04 2894次阅读

    基于SDAE的深度网络模型

    重构和原始输入的较大差别,这使得网络无论在准确率还是学习效率上都无法得到进一步提升。针对以上问题,提出一种基于稀疏降噪编码器SDAE)的深度网络模型,其核心是稀疏降噪
    发表于 11-28 17:19 8次下载
    基于<b class='flag-5'>SDAE</b>的深度网络模型

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

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

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

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

    自动编码器与PCA的比较

    编码器虽然不像 PCA 那般在教科书上随处可见,但是在早期被拿来做深度网络的逐层预训练,其地位可见一斑。尽管在 ReLU、Dropout 等神器出现之后,人们不再使用 AutoEncoders
    发表于 06-11 15:37 5584次阅读

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

    ,基于自动编码器的深度神经网络可以有效的用于数据特征提取。自动编码是一种无监督学习算法,稀疏自动编码器降噪自动编码器、收缩
    发表于 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 1821次阅读
    如何使用TensorFlow构建和训练变分<b class='flag-5'>自动编码器</b>

    编码器是什么?编码器有哪些分类及应用

    编码器,广泛应用于工业自动化、精密机械、卫星、导航设备等领域。编码器的分类可以按照其使用的原理、输入信号类型、数据率、电源电压等多方面进行。
    的头像 发表于 05-18 11:08 3566次阅读
    <b class='flag-5'>编码器</b>是什么?<b class='flag-5'>编码器</b>有哪些分类及应用

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

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