Master X Blog

ECNU Student | Amateur Author

(原创)推荐&学习记录 | 跟上AI时代论文推荐(DL基础部分)

        AI领域这几年的火热,看上去是一蹴而就,实则不然。其发展之快远远超出想象。我们目前所常见的所谓黑科技、小 tricks(滑窗、对抗、连接之类),其背后无一不是积累了大量论文,且都是最新、最前沿的论文。从某种角度来讲,他们所用的技术与目前常见书籍里的内容确实不是一个时代。要想与时俱进,就必须改变思路——从论文入手。

         因此,我将近年来较为火热、重要的paper做了总结,写在此推荐博客中。一方面是作为学习记录,方便查看;另一方面是为圈内本专业与其它专业的同学起到抛砖引玉的作用。写于今日大概有40+篇,我会将其分类好并把关每一篇,做长期更新与简介。

 

写在前面的话:

         本文受知识产权保护,为避免不必要的麻烦,转载请注明,谢谢!

         阅读本文前推荐有一定 “西瓜书”、《深度学习》(Ian Goodfellow)、统计基础更佳。

        本文毕竟属于推荐类,确保对所引文章点到为止、突出重点。

        截至本文完成,文内所有所推荐内容在paper引用时仍需要注明,不能作为“公理”,直接使用。

 

 

DL基础部分

NO.1  Wide&Deep Learning

          原文: 本地下载

         作为开篇第一篇,上古遗产(2016),短小精悍,放在今天仍具有一定指导意义,无论是CS还是统计、数学等其他专业学生都推荐阅读。文中内容不仅新手容易碰到,即使是有一定经验的老司机,也容易翻车,说不出个所以然。

        关于神经元、全连接网络之类的基础结构,想必大多数学生都有了解。那么你是否真的了解全连接网络中深层与浅层的关系呢? 这篇关于wide&deep模型,会使你对全连接有更深刻的理解。原文模型用于推荐,被Google Play采用。放在当时这种网络结构以及对wide、deep的认知足以支撑全文。

       简单来说,在wide&deep模型中,wide模型和deep模型具有各自不同的分工。

        wide模型:一种浅层模型。它通过大量的单层网络节点,实现对训练样本的高度拟合性。它的缺点是泛化能力很差。

        deep模型:一种深层模型。它通过多层的非线性变化,使模型具有很好的泛化性。它的缺点是拟合度欠缺。

        将二者结合起来——用联合训练方法共享反向传播的损失值来进行训练—可以使两个模型综合优点,得到最好的结果。

        你甚至可以认为,这正是将ML与DL进行对比与联合。

 



NO.2 Adam

           原文: 本地下载

           Adam的开山之作(2014),为什么Adam被广泛使用,它为什么好?好在哪里?光会用可不行,还得把原理看懂。这样出去喷一喷,才会显得更有面子。推荐对原理感兴趣的同学阅读(毕竟在写代码时只用设置步长,一行就可以搞定的 :D)。

          Adam是从2个算法脱胎而来的:AdaGrad和RMSProp,它集合了2个算法的主要优点,同时也做了自己的一些创新,大概有这么几个卖点:

    1. 计算高效,方便实现,内存使用也很少。
    2. 更新步长和梯度大小无关,只和alpha、beta_1、beta_2有关系。并且由它们决定步长的理论上限。
    3. 对目标函数没有平稳要求,即loss function可以随着时间变化
    4. 能较好的处理噪音样本,并且天然具有退火效果
    5. 能较好处理稀疏梯度,即梯度在很多step处都是0的情况

        各类优化器涉猎:

                 梯度下降(GD):GD、BGD、SGD

                 动量优化:Momentum、NAG

                 自适应学习率优化算法:AdaGrad、RMSProp、AdaDelta、Adam

       具体应该采用哪种,有兴趣了解更多的可以自行查阅。我个人常用Adam,因为处理量大并且数据稀疏,常用步长1e-6。

本文彩蛋:

       1.Adam是由AdaGrad(Duchi et al., 2011)和RMSProp(Tieleman & Hinton,2012) 结合来的,其中Hinton是本领域教父级的角色,玻尔兹曼机就是他发明的,他参与了众多“底层”性的研究(如反向传播、Dropout),可以说没有他整个理论基础将倒退几十年。日后我们还会见到这位godfather。

      2.Adam的实验证明是采用MNIST的,是不是很熟悉?如果有自学Tensorflow的朋友在敲某一行时应该会会心一笑吧。

      3.关于步长对训练的影响,可以拜读 NIPS2018论文及代码集锦(10)(亮点:训练技巧;强化学习;GAN)中的第一篇,这也是一篇不错的文章

 

No.3 Targeted Dropout

          原文: 本地下载

          刚吹完Hinton老人家,现在又要开始重新吹一波了。Hinton 于2018发布的Targeted Dropout,不再像原有的Dropout那样按照设定的比例随机丢弃部分节点,而是对现有的神经元进行排序,按照神经元的权重重要性来丢弃节点(剪枝)。这种方式比随机丢弃的方式更智能,效果更好。有兴趣的同学可以选择性阅读。

          目前Targeted Dropout使用率还不算很高,不过这几年随着压缩网络的呼声越来越高,其潜力可见一斑。

         小tips:建议只在全连接层中使用Dropout,卷积层之间使用会导致效果下降,而卷积层之间采用批量正则化,这是我之后会介绍到的内容。

 



本期的几篇重要的文章就介绍到这里,这几篇都不算太长,也没有年长到过时,具有一定的代表性。下一期与图像分类相关,将新介绍一位大神级角色,不定期更新,敬请期待。

NIPS2018专栏:NIPS2018

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注

召唤小麦