自动编码器(Autoencoder)

自动编码器(Autoencoder)autoencoder是一种无监督的学习算法。在深度学习中,autoencoder用于在训练阶段开始前,确定权重矩阵WW的初始值。神经网络中的权重矩阵WW可看作是对输入的数据进行特征转换,即先将数据编码为另一种形式,然后在此基础上进行一系列学习。然而,在对权重初始化时,我们并不知道初始的权重值在训练时会起到怎样的作用,也不知道在训练过程中权重会怎样的变化。因此一种较好的思

大家好,又见面了,我是你们的朋友全栈君。

Autoencoder

autoencoder是一种无监督的学习算法,主要用于数据的降维或者特征的抽取,在深度学习中,autoencoder可用于在训练阶段开始前,确定权重矩阵 W 的初始值。

神经网络中的权重矩阵

W
可看作是对输入的数据进行特征转换,即先将数据编码为另一种形式,然后在此基础上进行一系列学习。然而,在对权重初始化时,我们并不知道初始的权重值在训练时会起到怎样的作用,也不知道在训练过程中权重会怎样的变化。因此一种较好的思路是,利用初始化生成的权重矩阵进行编码时,我们希望编码后的数据能够较好的保留原始数据的主要特征。那么,如何衡量码后的数据是否保留了较完整的信息呢?答案是:如果编码后的数据能够较为容易地通过解码恢复成原始数据,我们则认为 W 较好的保留了数据信息。

例如下图所示,将手写数字图片进行编码,编码后生成的

ϕ1
, ϕ2 , ϕ3 , ϕ4 , ϕ5 , ϕ6 较完整的保留了原始图像的典型特征,因此可较容易地通过解码恢复出原始图像。

图片名称

autoencoder通过神经网络进行预训练,从而确定 W 的初始值。其目标是让输入值等于输出值。如下图所示:首先用

W
对输入进行编码,经过激活函数后,再用 WT 进行解码,从而使得 h(x)x 。该过程可以看作是对输入数据的压缩编码,将高维的原始数据用低维的向量表示,使压缩后的低维向量能保留输入数据的典型特征,从而能够较为方便的恢复原始数据。需要注意的是:这里增加了一个约束条件,即在对数据进行编码和解码时,使用的是同一个参数矩阵 W <script type=”math/tex” id=”MathJax-Element-98″>W</script>。该约束可看作是一种regularization,用于减少参数的个数,控制模型的复杂度。

图片名称

对于多层神经网络的参数初始化问题,我们可以依次对每一层进行autoencoder。如下图所示,具体做法是首先按照上述方法确定第一层的权重参数,然后固定第一层的参数,对第二层的参数进行训练,以此类推,直到得到所有权重值。

图片名称

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132699.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java流操作对文件的分割和合并

    学习文件的输入输出流,自己做一个小的示例,对文件进行分割和合并。

    2022年2月24日
    45
  • goland 激活码【最新永久激活】

    (goland 激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月28日
    759
  • 查询接口调用成功,但未查询到数据_dde怎么看

    查询接口调用成功,但未查询到数据_dde怎么看DTU轮询采集指令YeeCOMDTU提供了22组周期串口轮询,1组定时串口查询功能,根据配置规则自动输出串口指令,可实现自动采集外设数据并上报服务器,替代服务器的轮询,减小服务器开销。注1:第1组串口轮询最多可配置6条,单条最大长度28;第2组串口轮询最多可配置4条;单条最大长度28;1组固定时间,最多可以配置5条;单条最大长度20;如还不够或特殊需求可以由服务器下发指令或定制DTU版本。注2:轮询指令可灵活配置,常见

    2022年10月14日
    3
  • windows 命令行杀死进程_杀死进程命令

    windows 命令行杀死进程_杀死进程命令使用命令杀进程的几种方式:1,根据进程名称杀进程:taskkill/f/t/imqq.exe//此例是杀QQ进程2,通过进程号杀进程:taskkill/pid9396-f//规则taskkill/pid[进程号]-t(结束该进程)-f(强制结束该进程以及所有子进程)这种方式是成功的;进程号获取方式:快捷键ctrl+alt+delete找到任务管理器,PID即为进程号如果没有PID,右键名称,勾选PID即可;杀进程命令:tas…

    2025年9月12日
    5
  • AOP实现原理详解[通俗易懂]

    AOP实现原理详解[通俗易懂]转载地址:https://my.oschina.net/elain/blog/382494一、什么是AOPAOP(Aspect-OrientedProgramming,面向切面编程),可以说是OOP(Object-OrientedPrograming,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入…

    2025年6月20日
    5
  • 实现redhat的完全自动化安装

    实现redhat的完全自动化安装

    2021年8月13日
    59

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号