深度学习()——sae(稀疏自动编码机.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
深度学习(1)—— 稀疏自动编码机(SAE)网络 广东工业大学 13级控制工程 1019408133@ 禾宁希嫁木琢嘉俱凳河臆雌赶营么旺诵槐古秤郧绍腕靛匠炳瞧份浆霞档督深度学习(1)——sae(稀疏自动编码机)深度学习(1)——sae(稀疏自动编码机) 传统神经网络 1)比较容易过拟合,参数比较难调整; 2)训练速度比较慢,在层次比较少(小于等于3)的情况下效果并不比其它方法更优; BP算法存在的问题: (1)梯度越来越稀疏:从顶层越往下,误差校正信号越来越小; (2)收敛到局部最小值:尤其是从远离最优区域开始的时候(随机值初始化会导致这种情况的发生); (3)一般,我们只能用有标签的数据来训练:但大部分的数据是没标签的,而大脑可以从没有标签的的数据中学习; 疲熟繁骆戒伤滋世警徒舵炯嫁勋褥泪毫层妇疟图黍捂蜀率札埋碉誓挠铰狄深度学习(1)——sae(稀疏自动编码机)深度学习(1)——sae(稀疏自动编码机) 一、针对过拟合现象的处理 1.惩罚项(Penalty,正则化方法,正则化的一般形式是在整个目标函数后增加一个正则项,以使经验风险最小化。把不重要的项的参数保留,但是令其系数为零) 2.给输入层a{1}加噪,以及对隐含层a{i}进行Dropout (按比例随机清零。) 二、针对训练快慢与稳定性的矛盾 应用权值动量辅助调整权值 三、针对以往一个bp网络不能太多层 先逐个逐个隐含层进行无监督训练(实际还是用bp),即调用saesetup.m以及saetrain.m。 然后得到各个隐含层的参数才对完整的网络进行有监督训练。 贱奋砾郸戎企诚耪座砂尤钙付差小雅董祈牛裂捡觉还伟样评帖甚挽敛咏官深度学习(1)——sae(稀疏自动编码机)深度学习(1)——sae(稀疏自动编码机) test_example_SAE.m 一、训练隐含层(例中为单个隐含层) 1.调用saesetup设置网络参数( 结构为[784 100]的两层网络) 2.在第1步基础上修改网络参数(这里是修改第一组的 激活函数类型、学习率、输入加噪率、训练迭代次数、batchsize) 3.调用saetrain,让它对各个隐含层进行逐层训练(例子中给的隐含层数为1层,100个节点,输入输出同是train_x。每次进行nntrain来训练隐含层都为三层网络,输入层和输出层一样) 4.对第一组权值进行可视化,看看学习结果。(由于例中的网络只有一个100节点隐含层,故可视化为一张100个特征块图片。第一组权值W{1}用于编码,第二组W{2}用于解码) 二、初始化网络(为第三步初始化) 1.调用nnsetup,设置整个网络(结构是[784 100 10]) 2.设置网络的激活函数和学习率 3.第一步中,把用于编码的W(实际包括阈值b和权值W)赋给此网络。 三、训练前向网络 1. 设置训练次数、batchsize。 2.调用nntrain训练整个网络(此时因期望输出是train_y,为有监督的训练) 3.调用nntest测试整个网络 筒贴浙胞骗遥本锄卖最滦顺眠虫欠取辱东彭府肇现蹿讶掏獭矫抖难禄珊揪深度学习(1)——sae(稀疏自动编码机)深度学习(1)——sae(稀疏自动编码机) saesetup.m 这里sae.setup中的输入是[784 100],令architecture=[784 10 784] ,调用nnsetup进行网络参数设置。 x h x W1 b1 W1’ b1’ 鸟阑谍擂曙振太臭修爆嫩烁腮趣均霓固卜氛讳厂轿良呐乐曼狗萧钒蚀久讳深度学习(1)——sae(稀疏自动编码机)深度学习(1)——sae(稀疏自动编码机) saetrain.m 逐个隐含层进行nntrain(sae.ae{i}, x, x, opts)训练更新sae.ae{i}参数,其实就是更新sae.ae{i}.W{1}、sae.ae{i}.W{2} 实验中,这里的i=1,因而就是得到sae.ae{1}.W{1}、sae.ae{1}.W{2},而最后只取用sae.ae{1}.W{1} 784+1 100+1 784 +1 +1 这里a{1}=train_x a{2}=sigm(nn.a{1} * nn.W{1}‘),作为训练第二个隐含层的输入,但是这里只有一个隐含层,所以a{2}在这里并没用 a{1} a{2} 若是需要训练两个隐含层,那么这里的a{2}则作为下个三层网络的输入以及输出 a{1} a{2} 阈值B 交雀瘪烁靠彼徊芯恋入糜痢时菠缨姐羡懂烁街哟泅妨叁铰席蜗闺役球限窘深度学习(1)——sae(稀疏自动编码机)深度学习(1)——sae(稀疏自动编码机) nnsetup.m nn.size = architecture

文档评论(0)

mv2323 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档