为什么 Deep deeplearning4j 最先在语音识别和图像处理领域取得突破

为什么 Deep Learning 最先在语音识别和图像处理领域取得突破_百度知道&p&首先,我感觉不必像 @李Shawn 同学一样认为DNN、CNN、RNN完全不能相提并论。从广义上来说,NN(或是更美的DNN)确实可以认为包含了CNN、RNN这些具体的变种形式。在实际应用中,所谓的深度神经网络DNN,往往融合了多种已知的结构,包括卷积层或是LSTM单元。但是就题主的意思来看,这里的DNN应该特指全连接的神经元结构,并不包含卷积单元或是时间上的关联。因此,题主一定要将DNN、CNN、RNN等进行对比,也未尝不可。&/p&&p&其实,如果我们顺着神经网络技术发展的脉络,就很容易弄清这几种网络结构发明的初衷,和他们之间本质的区别,希望对题主有所帮助。&/p&&p&=========================== 分 割 线 就 是 我
================================&/p&&br&&p&神经网络技术起源于上世纪五、六十年代,当时叫&b&感知机&/b&(perceptron),拥有输入层、输出层和一个隐含层。输入的特征向量通过隐含层变换达到输出层,在输出层得到分类结果。早期感知机的推动者是Rosenblatt。&i&(扯一个不相关的:由于计算技术的落后,当时感知器传输函数是用线拉动变阻器改变电阻的方法机械实现的,脑补一下科学家们扯着密密麻麻的导线的样子…)&/i&&/p&&p&但是,Rosenblatt的单层感知机有一个严重得不能再严重的问题,即它对稍复杂一些的函数都无能为力(比如最为典型的“异或”操作)。连异或都不能拟合,你还能指望这货有什么实际用途么o(╯□╰)o&/p&&br&&p&随着数学的发展,这个缺点直到上世纪八十年代才被Rumelhart、Williams、Hinton、LeCun等人(反正就是一票大牛)发明的&b&多层感知机&/b&(multilayer
perceptron)克服。多层感知机,顾名思义,就是有多个隐含层的感知机(废话……)。好好,我们看一下多层感知机的结构:&/p&&img src=&/e186f18d73fdafa8d4a5e75ed55ed4a3_b.png& data-rawwidth=&866& data-rawheight=&249& class=&origin_image zh-lightbox-thumb& width=&866& data-original=&/e186f18d73fdafa8d4a5e75ed55ed4a3_r.png&&&br&&p&&b&&i&图1&/i&&/b&&i&上下层神经元全部相连的神经网络——多层感知机&/i&&/p&&br&&p&多层感知机可以摆脱早期离散传输函数的束缚,使用sigmoid或tanh等连续函数模拟神经元对激励的响应,在训练算法上则使用Werbos发明的反向传播BP算法。对,这货就是我们现在所说的&b&神经网络&/b&&b&NN&/b&——神经网络听起来不知道比感知机高端到哪里去了!这再次告诉我们起一个好听的名字对于研(zhuang)究(bi)很重要!&/p&&br&&p&多层感知机解决了之前无法模拟异或逻辑的缺陷,同时更多的层数也让网络更能够刻画现实世界中的复杂情形。相信年轻如Hinton当时一定是春风得意。&/p&&br&&p&多层感知机给我们带来的启示是,&b&神经网络的层数直接决定了它对现实的刻画能力&/b&——利用每层更少的神经元拟合更加复杂的函数[1]。&/p&&p&(Bengio如是说:functions that can be compactly
represented by a depth k architecture might require an exponential number of
computational elements to be represented by a depth k - 1 architecture.)&/p&&br&&p&即便大牛们早就预料到神经网络需要变得更深,但是有一个梦魇总是萦绕左右。随着神经网络层数的加深,&b&优化函数越来越容易陷入局部最优解&/b&,并且这个“陷阱”越来越偏离真正的全局最优。利用有限数据训练的深层网络,性能还不如较浅层网络。同时,另一个不可忽略的问题是随着网络层数增加,&b&“梯度消失”现象更加严重&/b&。具体来说,我们常常使用sigmoid作为神经元的输入输出函数。对于幅度为1的信号,在BP反向传播梯度时,每传递一层,梯度衰减为原来的0.25。层数一多,梯度指数衰减后低层基本上接受不到有效的训练信号。&/p&&br&&p&2006年,Hinton利用预训练方法缓解了局部最优解问题,将隐含层推动到了7层[2],神经网络真正意义上有了“深度”,由此揭开了深度学习的热潮。这里的“深度”并没有固定的定义——在语音识别中4层网络就能够被认为是“较深的”,而在图像识别中20层以上的网络屡见不鲜。为了克服梯度消失,ReLU、maxout等传输函数代替了sigmoid,形成了如今DNN的基本形式。单从结构上来说,&b&全连接的&/b&&b&DNN&/b&&b&和图&/b&&b&1&/b&&b&的多层感知机是没有任何区别的&/b&。&/p&&br&&p&值得一提的是,今年出现的高速公路网络(highway network)和深度残差学习(deep residual learning)进一步避免了梯度消失,网络层数达到了前所未有的一百多层(深度残差学习:152层)[3,4]!具体结构题主可自行搜索了解。如果你之前在怀疑是不是有很多方法打上了“深度学习”的噱头,这个结果真是深得让人心服口服。&/p&&br&&img src=&/7b3ee9e4f4a2e61acfcc12_b.png& data-rawwidth=&866& data-rawheight=&1228& class=&origin_image zh-lightbox-thumb& width=&866& data-original=&/7b3ee9e4f4a2e61acfcc12_r.png&&&br&&p&&b&&i&图2&/i&&/b&&i&缩减版的深度残差学习网络,仅有34&/i&&i&层,终极版有152&/i&&i&层,自行感受一下&/i&&/p&&br&&p&如图1所示,我们看到&b&全连接&/b&&b&DNN&/b&&b&的结构里下层神经元和所有上层神经元都能够形成连接&/b&,带来的潜在问题是&b&参数数量的膨胀&/b&。假设输入的是一幅像素为1K*1K的图像,隐含层有1M个节点,光这一层就有10^12个权重需要训练,这不仅容易过拟合,而且极容易陷入局部最优。另外,图像中有固有的局部模式(比如轮廓、边界,人的眼睛、鼻子、嘴等)可以利用,显然应该将图像处理中的概念和神经网络技术相结合。此时我们可以祭出题主所说的卷积神经网络CNN。对于CNN来说,并不是所有上下层神经元都能直接相连,而是&b&通过“卷积核”作为中介。同一个卷积核在所有图像内是共享的,图像通过卷积操作后仍然保留原先的位置关系。&/b&两层之间的卷积传输的示意图如下:&/p&&br&&img src=&/440765dbaabd_b.png& data-rawwidth=&866& data-rawheight=&457& class=&origin_image zh-lightbox-thumb& width=&866& data-original=&/440765dbaabd_r.png&&&p&&b&&i&图3&/i&&/b&&i&卷积神经网络隐含层(摘自Theano&/i&&i&教程)&/i&&/p&&br&&p&通过一个例子简单说明卷积神经网络的结构。假设图3中m-1=1是输入层,我们需要识别一幅彩色图像,这幅图像具有四个通道ARGB(透明度和红绿蓝,对应了四幅相同大小的图像),假设卷积核大小为100*100,共使用100个卷积核w1到w100(从直觉来看,每个卷积核应该学习到不同的结构特征)。用w1在ARGB图像上进行卷积操作,可以得到隐含层的第一幅图像;这幅隐含层图像左上角第一个像素是四幅输入图像左上角100*100区域内像素的加权求和,以此类推。同理,算上其他卷积核,隐含层对应100幅“图像”。每幅图像对是对原始图像中不同特征的响应。按照这样的结构继续传递下去。CNN中还有max-pooling等操作进一步提高鲁棒性。&/p&&br&&img src=&/c71cd39abe8b0dd29e229fda_b.png& data-rawwidth=&866& data-rawheight=&203& class=&origin_image zh-lightbox-thumb& width=&866& data-original=&/c71cd39abe8b0dd29e229fda_r.png&&&br&&p&&b&&i&图4&/i&&/b&&i&一个典型的卷积神经网络结构,注意到最后一层实际上是一个全连接层(摘自Theano&/i&&i&教程)&/i&&/p&&br&&p&在这个例子里,我们注意到&b&输入层到隐含层的参数瞬间降低到了&/b&&b&100*100*100=10^6&/b&&b&个&/b&!这使得我们能够用已有的训练数据得到良好的模型。题主所说的适用于图像识别,正是由于&b&CNN&/b&&b&模型限制参数了个数并挖掘了局部结构的这个特点&/b&。顺着同样的思路,利用语音语谱结构中的局部信息,CNN照样能应用在语音识别中。&/p&&br&&p&全连接的DNN还存在着另一个问题——无法对时间序列上的变化进行建模。然而,&b&样本出现的时间顺序对于自然语言处理、语音识别、手写体识别等应用非常重要&/b&。对了适应这种需求,就出现了题主所说的另一种神经网络结构——循环神经网络RNN。&/p&&br&&p&在普通的全连接网络或CNN中,每层神经元的信号只能向上一层传播,样本的处理在各个时刻独立,因此又被成为前向神经网络(Feed-forward Neural Networks)。而在&b&RNN&/b&&b&中,神经元的输出可以在下一个时间戳直接作用到自身&/b&,即第i层神经元在m时刻的输入,除了(i-1)层神经元在该时刻的输出外,还包括其自身在(m-1)时刻的输出!表示成图就是这样的:&/p&&br&&img src=&/bef6acad53eb47757af9d_b.png& data-rawwidth=&866& data-rawheight=&441& class=&origin_image zh-lightbox-thumb& width=&866& data-original=&/bef6acad53eb47757af9d_r.png&&&p&&b&&i&图5&/i&&/b&&i& RNN&/i&&i&网络结构&/i&&/p&&br&&p&我们可以看到在隐含层节点之间增加了互连。为了分析方便,我们常将RNN在时间上进行展开,得到如图6所示的结构:&/p&&br&&img src=&/c2ebfd25f0e90aa66d363a_b.png& data-rawwidth=&866& data-rawheight=&348& class=&origin_image zh-lightbox-thumb& width=&866& data-original=&/c2ebfd25f0e90aa66d363a_r.png&&&p&&b&&i&图6&/i&&/b&&i& RNN&/i&&i&在时间上进行展开&/i&&/p&&br&&p&Cool,&b&(&/b&&b&t+1&/b&&b&)时刻网络的最终结果O(t+1)&/b&&b&是该时刻输入和所有历史共同作用的结果&/b&!这就达到了对时间序列建模的目的。&/p&&br&&p&不知题主是否发现,RNN可以看成一个在时间上传递的神经网络,它的深度是时间的长度!正如我们上面所说,&b&“梯度消失”现象又要出现了,只不过这次发生在时间轴上&/b&。对于t时刻来说,它产生的梯度在时间轴上向历史传播几层之后就消失了,根本就无法影响太遥远的过去。因此,之前说“所有历史”共同作用只是理想的情况,在实际中,这种影响也就只能维持若干个时间戳。&/p&&br&&p&为了解决时间上的梯度消失,机器学习领域发展出了&b&长短时记忆单元&/b&&b&LSTM&/b&&b&,通过门的开关实现时间上记忆功能,并防止梯度消失&/b&,一个LSTM单元长这个样子:&/p&&br&&img src=&/a8fd41f250fdf0a43812fb_b.png& data-rawwidth=&866& data-rawheight=&555& class=&origin_image zh-lightbox-thumb& width=&866& data-original=&/a8fd41f250fdf0a43812fb_r.png&&&p&&b&&i&图7 &/i&&/b&&i&LSTM&/i&&i&的模样&/i&&/p&&br&&p&除了题主疑惑的三种网络,和我之前提到的深度残差学习、LSTM外,深度学习还有许多其他的结构。举个例子,RNN既然能继承历史信息,是不是也能吸收点未来的信息呢?因为在序列信号分析中,如果我能预知未来,对识别一定也是有所帮助的。因此就有了&b&双向&/b&&b&RNN&/b&&b&、双向&/b&&b&LSTM&/b&&b&,同时利用历史和未来的信息。&/b&&/p&&br&&img src=&/a3ab3ac8ecdafda617db0c_b.png& data-rawwidth=&866& data-rawheight=&365& class=&origin_image zh-lightbox-thumb& width=&866& data-original=&/a3ab3ac8ecdafda617db0c_r.png&&&p&&b&&i&图8&/i&&/b&&i&双向RNN&/i&&/p&&br&&p&事实上,&b&不论是那种网络,他们在实际应用中常常都混合着使用,比如&/b&&b&CNN&/b&&b&和RNN&/b&&b&在上层输出之前往往会接上全连接层,很难说某个网络到底属于哪个类别。&/b&不难想象随着深度学习热度的延续,更灵活的组合方式、更多的网络结构将被发展出来。尽管看起来千变万化,但研究者们的出发点肯定都是为了解决特定的问题。题主如果想进行这方面的研究,不妨仔细分析一下这些结构各自的特点以及它们达成目标的手段。入门的话可以参考:&/p&&p&Ng写的Ufldl:&a href=&///?target=http%3A//ufldl.stanford.edu/wiki/index.php/UFLDL%25E6%E7%25A8%258B& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&UFLDL教程 - Ufldl&i class=&icon-external&&&/i&&/a&&/p&&p&也可以看Theano内自带的教程,例子非常具体:&a href=&///?target=http%3A//www.deeplearning.net/tutorial/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Deep Learning Tutorials&i class=&icon-external&&&/i&&/a&&/p&&p&欢迎大家继续推荐补充。&/p&&p&当然啦,如果题主只是想凑个热闹时髦一把,或者大概了解一下方便以后把妹使,这样看看也就罢了吧。&/p&&br&&br&&p&&b&参考文献:&/b&&/p&&p&[1]
Bengio Y. Learning Deep
Architectures for AI[J]. Foundations & Trends(R) in Machine Learning, 2009,
2(1):1-127.&/p&&p&[2]
Hinton G E, Salakhutdinov R R.
Reducing the Dimensionality of Data with Neural Networks[J]. Science, 2006,
313(7.&/p&&p&[3]
He K, Zhang X, Ren S, Sun J. Deep
Residual Learning for Image Recognition. arXiv:, 2015.&/p&&p&[4]
Srivastava R K, Greff K,
Schmidhuber J. Highway networks. arXiv:, 2015.&/p&&br&&br&&br&【“科研君”公众号初衷始终是希望聚集各专业一线科研人员和工作者,在进行科学研究的同时也作为知识的传播者,利用自己的专业知识解释和普及生活中的 一些现象和原理,展现科学有趣生动的一面。该公众号由清华大学一群在校博士生发起,目前参与的作者人数有10人,但我们感觉这远远不能覆盖所以想科普的领域,并且由于空闲时间有限,导致我们只能每周发布一篇文章。我们期待更多的战友加入,认识更多志同道合的人,每个人都是科研君,每个人都是知识的传播者。我们期待大家的参与,想加入我们,进QQ群吧~:】&br&&br&&br&&br&&p&【非常高兴看到大家喜欢并赞同我们的回答。应许多知友的建议,最近我们开通了同名公众号:&b&PhDer&/b&,也会定期更新我们的文章,如果您不想错过我们的每篇回答,欢迎扫码关注~ 】&br&&/p&&br&&p&&a href=&///?target=http%3A///r/5zsuNoHEZdwarcVV9271& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&/r/5zsuNoH&/span&&span class=&invisible&&EZdwarcVV9271&/span&&span class=&ellipsis&&&/span&&i class=&icon-external&&&/i&&/a& (二维码自动识别)&/p&
首先,我感觉不必像 @李Shawn 同学一样认为DNN、CNN、RNN完全不能相提并论。从广义上来说,NN(或是更美的DNN)确实可以认为包含了CNN、RNN这些具体的变种形式。在实际应用中,所谓的深度神经网络DNN,往往融合了多种已知的结构,包括卷积层或是LSTM单元。…
正好最近在公众号写 NIPS 2015 Deep Learning Symposium 的论文总结,直接搬运到这里吧。&br&&br&先来说结论,我推荐的论文有:&br&&p&&strong&《Character-aware Neural Language Models》. &/strong&Yoon Kim, Yacine Jernite, David Sontag, Alexander M. Rush.&/p&&p&&strong&《A Neural Algorithm Of Artistic Style》&/strong&. Leon A. Gatys, Alexander S. Ecker, Matthias Bethge.&/p&&p&&strong&《Skip-thought vectors》&/strong&. Ryan Kiros, Yukun Zhu, Ruslan Salakhutdinov, et al.&/p&&p&&strong&《Teaching machines to read and comprehend》&/strong&. Karl Moritz Hermann, Tomá? Ko?isk?, Edward Grefenstette, et al.&/p&&p&《&strong&Visualizing and understanding recurrent networks&/strong&》. Andrej Karpathy, Justin Johnson, Li Fei-Fei.&/p&&p&《&strong&Spatial Transformer Networks&/strong&》. Max Jaderberg, Karen Simonyan, Andrew Zisserman, and Koray Kavukcuoglu.&/p&&p&《&strong&Deep Generative Image Models Using A Laplacian Pyramid Of Adversarial Networks&/strong&》. Emily Denton, Soumith Chintala, Arthur Szlam, Rob Fergus.&/p&&p&《&strong&Early stopping is nonparametric variational inference&/strong&》. Dougal Maclaurin, David Duvenaud, Ryan P. Adams.&/p&&p&《&strong&Dropout as a Bayesian approximation: Representing model uncertainty in deep learning&/strong&》. Yarin Gal, Zoubin Ghahramani.&/p&&br&&p&以下复制全部笔记(不仅包括推荐的,还包括别的)。为了更好的排版,可以直接移步公众号原文章查看:&a href=&///?target=http%3A//mp./s%3F__biz%3DMzAwMjM3MTc5OA%3D%3D%26mid%3Didx%3D1%26sn%3Da39b7d1aa90422bab9d46bbscene%3D20%23rd& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&干货 | NIPS 2015 Deep Learning Symposium(一)&i class=&icon-external&&&/i&&/a&&/p&&p&&a href=&///?target=http%3A//mp./s%3F__biz%3DMzAwMjM3MTc5OA%3D%3D%26mid%3Didx%3D1%26sn%3Dfd4e984cd5ec6e38d47697%23rd& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&干货 | NIPS 2015 Deep Learning Symposium(二)&i class=&icon-external&&&/i&&/a&&br&&/p&&img src=&/15eac2df5a7451abfe28bae_b.png& data-rawwidth=&773& data-rawheight=&349& class=&origin_image zh-lightbox-thumb& width=&773& data-original=&/15eac2df5a7451abfe28bae_r.png&&&br&&br&&p&&strong&Character-aware Neural Language Models&/strong&&/p&&br&&p&这篇文章之前挂在 arXiv 上,现在已经被 AAAI 2016 正式接收。&strong&推荐系数5星。是一篇 NLP 和 DL 结合的非常好的论文,而且信息量非常大&/strong&。他们的 model 由两个部分组成,character-level 的输入,输入给 CNN,CNN 的输出,输入给 RNNLM,但最终预测仍然是 word-level。&/p&&blockquote&&p&&em&In this work, we propose a language model that leverages subword information through a character-level convolutional neural network (CNN), whose output is used as an input to a recurrent neural network language model (RNNLM).&/em&&/p&&/blockquote&&p&只用了一次 convolutional + pooling (max-over-time),并且作者表示用多次 conv+pooling 的组合(stacked,就像 CNN for Sentence Modeling 那里一样,并没有提升效果)。&em&Whereas a conventional NLM takes word embeddings as inputs, our model instead takes the output from a single-layer character-level CNN with max-over-time pooling. &/em&除了在 stacked 与否的问题上,和 Sentence Modeling 的 CNN 不同的第二个地方在于,这里不再是 wide convolutional,而是 narrow convolutional。&/p&&p&特殊的地方在于 pooling 的 output 不是直接输入给 LSTM,而是先经过一个基于 &strong&Highway Network (HW-Net)&/strong&改造的 module。而且在实验中,作者验证了,如果没有这个 module,效果会差。这个 HW-Net Module 只对 character-level 的模型有效,对于 word-level input,则无提升。HW-Net 相当于另一个 nonlinear 隐层,作用类似于别的模型中的 MLP(multilayer perceptron),增强 feature 之间的 interaction 的。在这篇论文中的这个模型里,因为 conv+pooling 只是单层,没有那么多 interaction 被 model 进去,所以考虑了这层 interaction。&strong&但是作者声称尝试了 stacked CNN,没有提升,所以是否可以推论 highway networks 的 interaction 和 stacked CNN 是不同的?&/strong&&br&&/p&&blockquote&&ul&&li&&p&&em&Similar to the adaptive memory cells in LSTM networks, HW-Net allows for training of deep networks by adaptively carrying some dimensions of the input directly to the output.&/em&&/p&&/li&&li&&p&&em&Applying HW-Net to the CharCNN has the following interpretation: since each output is essentially detecting a character n-gram (where n equals the width of the filter), HW-Net allows some character n-grams to be combined to build new features (dimensions where transform ≈ 1), while allowing other character n-grams to remain ‘as-is’ (dimensions where carry ≈ 1).&/em&&/p&&/li&&/ul&&/blockquote&&p&最后作者在实验结论部分表示这个 highway 对于 character-aware compositonal 的 model 非常重要,对于 word-level 不重要。加不加这个东西,可以从学出来的 word representation 周围都是啥词看出效果(见 Table 5). 这个结果还是不要太明显……震惊。&/p&&blockquote&&ul&&li&&p&&em&Before the highway layers the representations seem to solely rely on surface forms—for example the nearest neighbors of you are your, young, four, youth, which are close to you in terms of edit distance. The highway layers however, seem to enable encoding of semantic features that are not discernable from orthography alone. After highway layers the nearest neighbor of you is we, which is orthographically distinct from you. Another example is while and though— these words are far apart edit distance-wise yet the composition model is able to place them near each other.&/em&&/p&&/li&&/ul&&/blockquote&&p&HW Net 对于 word-level 没用的原因是:&em&dimensions of word embeddings do not (a priori) encode features that benefit from nonlinear, hierarchical composition availed by highway layers&/em&. 最后这篇的 Related Work 也很值得看。&/p&&br&&br&&p&&strong&Character-level Convolutional Networks for Text Classification&/strong&&/p&&br&&p&这篇论文前身是《Text Understanding from Scratch》,当时在微博上一时因为实验效果太过拔群,引起轰动和过分关注。最后被发现是实验数据测试集训练集有严重重叠,暂时撤稿。重新修改后被 NIPS’15 接收。这篇论文的风格给人感觉非常不 NLP,从术语到模型思路,到写作风格,都感觉是纯做 Deep Learning 的人,来做了 NLP 的任务而已。&/p&&p&文章中的模型是完全基于 ConvNet 改造。按照作者的原话是,&em&This article is the first to apply ConvNets only on characters。&/em&是很规矩的, temporal convolutional,temporal max-pooling (max-over-time),然后有 dropout 在最后三个全连接层。值得注意的是他们用到的 nonlinear funtion 是 rectifier/thresholding:h(x) = max{0,x},使得很像 ReLUs。&/p&&p&细节上,这个模型十分“简单”,并没有做变长的 convolutional 处理。也就是说,一旦一个输入的 text chunk,超过了他们预定的一个 length,那么后面的 character 就都不要了。输入的时候就是把一个定长的 character embedding &strong&sequence&/strong& input 进去。另外的细节是,尽管不是用 RNN 这样的 recurrent 模型 encoding decoding,但他们依然用 reverse 的 input,&em&The character quantization order is backward so that the latest reading on characters is always placed near the begin of the output, making it easy for fully connected layers to associate weights with the latest reading&/em&。&/p&&p&在实验设置上考虑了大小写区分开,然后发现很多时候区分反而不如不区分。&em&We report experiments on this choice and observed that it usually (but not always) gives worse results when such distinction is made. One possible explanation might be that semantics do not change with different letter cases, therefore there is a benefit of regularization. &/em&他们使用了 Data Augmentation,用同义词去制造更多的“正例”。这部分细节在 Section 2.4。&/p&&br&&br&&p&&strong&A Neural Algorithm Of Artistic Style&/strong&&/p&&img src=&/50298b3dbd3dbbbf9e8c34_b.png& data-rawwidth=&830& data-rawheight=&550& class=&origin_image zh-lightbox-thumb& width=&830& data-original=&/50298b3dbd3dbbbf9e8c34_r.png&&&p&这篇文章应该是这次 Symposium 中最著名的了。这个工作被叫做 neural art,就是用 Deep Neural Networks 的方法,将一些作品,进行特定风格化(photorealistic rendering)。比如可以将梵高在《Starry Night》中的那种,高对比和清晰笔触的风格,渲染在各种风景摄影作品上。&/p&&p&这个工作主要基于 CNN,其核心是对一张图片中的 content 和 style 分别建模 representation,而&strong&核心的核心就是 style 的建模&/strong&。由于 CNN 的 hierarchy,content 建模中,越是 high-level 的 content representation 可能越 general,越难 reconstruct;但另一方面,style representation,则是在 high-level 的地方更不容易被“image content”的局部信息所“迷惑”。&br&&/p&&img src=&/b14e17a78f07c64a9a06e0a125c01b93_b.png& data-rawwidth=&901& data-rawheight=&577& class=&origin_image zh-lightbox-thumb& width=&901& data-original=&/b14e17a78f07c64a9a06e0a125c01b93_r.png&&&p&因为 content 和 style 是很难完全独立开的,在网络设计上,作者也考虑了这点。所以 style representation 并不是基于某一层的 content representation,而是在 CNN 中的每一层都有一个 style representation。style representation 的建模就是利用“不变性”——这背后的假设其实是,不管你在画什么东西,画哪个局部,你的 style 应该保证了一种局部性;不变的 feature,才是 style。所以它采用的是对比每一个层 filter 之间的 correlation,进行 style representation。&/p&&p&这个工作已经有相当多开源代码,在线应用,也被集成在各种 NN 框架中。大家有兴趣可以找来玩玩。&br&&/p&&br&&br&&p&&strong&Listen, attend and spell&/strong&&/p&&br&&p&这篇文章其实挺简单的。核心思想就是用一个 listener-speller encoder-decoder 的结果做 speech recognition(speeach utterances -& characters)。listener(encoder)部分用的是 pyramidal RNN,这个比较特别,作者 argue 说 pyramidal RNN 对于这个任务提速显著。&/p&&p&&img src=&/b4e7c55ea3dfb10c2142a_b.png& data-rawwidth=&570& data-rawheight=&541& class=&origin_image zh-lightbox-thumb& width=&570& data-original=&/b4e7c55ea3dfb10c2142a_r.png&&pyramidal RNN 的部分,实质是一个 hierarchical 的 Bi-LSTM (pBLSTM)。而这个架构,就像 CNN 一样,high-level(在“金字塔”顶端)的 features 会比较少,比较“浓缩”,用这样少一些的 features 传给 decoders,会减少 decoder 解析的耗时,提高解析的能力,并且整体上提高 encoder-decoder 的 inference 速度。&/p&&p&另一方面,speller 端用的 attention-mechansim,好处很显然,防止 overfitting。&br&&/p&&blockquote&&p&Without the attention mechanism, the model overfits the training data significantly, in spite of our large training set of three million utterances - it memorizes the training transcripts without paying attention to the acoustics. Without the pyramid structure in the encoder side, our model converges too slowly - even after a month of training, the error rates were significantly higher than the errors we report here.&/p&&/blockquote&&br&&p&&strong&Skip-Thought Vectors&/strong&&/p&&br&&p&已经是相当有名的工作。模型上,具体使用是 RNN-RNN 的 encoder-decoder 模型;&strong&其中两个 RNN 都用了 GRU 去“模拟” LSTM 的更优表现&/strong&。在 encoder 阶段,只是一个 RNN;在 decoder 阶段,则是两个(分别对应前一个句子和后一个句子——也就是说不能预测多个前面的句子和后面的句子)。&/p&&p&这样的模型可以保留一个 encoding for each sentence,这个 encoding 会很有用,就被称为 skip-thoughts vector,用来作为特征提取器,进行后续 task。注意是 Figure 1 中所谓的 unattached arrows,对应在 decoder 阶段,是有一个 words conditioned on previous word + previous hidden state 的 probability 束缚。同时,因为 decoder 也是 RNN,所以可用于 generation(在论文结尾处也给出了一些例子)。&/p&&p&本文的另一个贡献是 &strong&vocabulary mapping&/strong&。因为 RNN 的复杂性,但作者又不希望不能同时 learn word embedding,所以只好取舍一下——我们 learn 一部分 word embedding(words in training vocabulary);对于没出现的部分,我们做一个 mapping from word embedding pre-trained from word2vec。这里的思想就是 Mikolov'13 年那篇 word similarity for MT 的,用一个没有正则的 L2 学好 mapping。&/p&&p&在实验中,他们用此方法将 20K 的 vocabulary 扩充到了 930K。&/p&&blockquote&&p&&em&In our experiments we consider 8 tasks: semantic-relatedness, paraphrase detection, image-sentence ranking and 5 standard classification benchmarks. In these experiments, we extract skip-thought vectors and train linear models to evaluate the representations directly, without any additional fine-tuning. As it turns out, skip-thoughts yield generic representations that perform robustly across all tasks considered.&/em&&/p&&/blockquote&&p&首先是他们有三种 feature vectors,uni-skip/bi-skip/combine-skip。分别对应 encoder 是 unbidirectional,bidirectional,和 combine 的。分别都是 4800 dimensions。对于不同的 task,可能用不同的 feature indicator,比如把两个 skip-thoughts-vectors u 和 v,点乘或者相减,作为两个 feature,再用 linear classifier(logistic)。&/p&&br&&br&&p&&strong&Ask me anything: Dynamic memory networks for natural language processing&/strong&&/p&&p&这篇文章也是相当早就放在 arXiv 上了,ACL 2015 的论文中就已经有人引用。文章来自 Richard Socher 的 MetaMind 团队。主要就是利用一个 dynamic memory network(DMN)框架去进行 QA(甚至是 Understanding Natural Language)。&/p&&p&&br&这个框架是由几个模块组成,可以进行 end-to-end 的 training。其中核心的 module 就是Episodic Memory module,可以进行 iterative 的 semantic + reasoning processing。DMN 先从 input 接受 raw input(question),然后生成 question representation,送给 semantic memory module,semantic module 再将 question representation + explicit knowledge basis(只是设想) 一起传给核心的 Episodic Memory module。这个 Episodic Memory module 会首先 retrieve question 中涉及到的 facts 和 concepts,再逐步推理得到一个 answer representation。由于可能有多个涉及到的 facts 和 questions,所以这里还用到了 attention mechanism。最后,Answer Module 就可以用接收到的 answer representation 去 generate 一个真正的 answer。&/p&&br&&p&&strong&Teaching machines to read and comprehend&/strong&&br&&/p&&br&&p&这篇论文有两个主要贡献,一个在于 &strong&attention-based model&/strong& 的运用和改进,一个在于构造了一个 supervised document-query based 的数据集,虽然说是供 machine comprehend 使用,其实依然没有超过 QA 范畴,就是基于一篇 document,一个 query(document-query pair)回答一个 entity form 的 answer。数据集在此不表。来看他们 attention-based 的相关 model。&/p&&p&&br&论文一共提出&strong&三个新 model&/strong&,其中只有后两个(图中 (a)(b))是 attention-based 的。input 都是一个 document query pair。作者尝试了两种机制,一种是 document 按一小段句子(以标点分割)输入,一小段句子+一个query,这样算一次输入;另一种是一篇 document 全部输入完毕再输入 query,这种方法被认为失去了 query 的 mention 作用。&/p&&p&两个 attention-based model,(a) Attentive Reader 和 (b) Impatient Reader。(a) 非常好理解,看 (a) 左边就是标准的 attention mechanism 的结构啊,对比一下:&/p&&br&&p&再看 (b) Impatient Reader,这个 model 很有趣,尤其和我下面想说的非 NLP 那篇有点像。我按我的理解来解读,这个 model 强调&strong&“reread”&/strong&,就是说,对于每一个 query,有许多个 token,按照 query token 一个个输入,每一个 query token(不再是每一个 query),就都读一遍 document,然后下一个 token,再来一遍——reread。&/p&&p&我会把这种 reread 机制,理解为一种“逐渐”获取(理解)文章的过程,就像我们读一篇艰深的文章,读一遍不成,读两遍,读三遍。这个机制的 motivation 很好,但是如果只用来预测一个 token(the answer),我会认为起不到 motivation 的作用。个人理解。&/p&&br&&br&&p&&strong&Towards AI-complete question answering: A set of prerequisite toy tasks&/strong&&/p&&br&&p&和《Ask Me Anything》那篇一样,也是很早就放在 arXiv 上的工作。这个数据集不仅被《Ask Me Anything》引用,也被很多 ACL 2015 和后续的 QA 工作引用。文章主要就是介绍他们的 AI-related
QA 数据集,因为是 Facebook 团队制作且有 20类问题,所以这个数据集后来被缩写为 FB20。&/p&&p&按照上次介绍的 ICLR2016 中 Jianfeng Gao 团队的工作,在这 20类问题中,最难做的是 position reasoning 和 path finding 两类任务。&/p&&blockquote&&p&We achieve near-perfect accuracy on all categories, including positional reasoning and pathfinding that have proved difficult for all previous approaches due to the special two-dimensional relationships identified from this study.&/p&&/blockquote&&br&&p&如果想了解在这个数据集上的一些工作,可以看下面几篇论文:&br&&/p&&p&1.《Learning Answer-Entailing Structures for Machine Comprehension》Mrinmaya Sachan, Kumar Dubey, Eric Xing, Matthew Richardson. ACL 2015. CMU 出品,Eric Xing 老师的组。本文不是 NN,数学上还算简单。个人觉得有两个亮点,一个就是假设了一个中间的 hypothesis,一个是在数学的地方结合了 multi-task,并使用了 feature map 的 technique 把 multi-task 给“退化”成了原始问题。他们先用 Question 和 Answer,学出一个 hypothesis,这个 hypothesis 就是一种 latent variable,也可以认为是一种 embedding 后的 fact。如果我们认为 question + answer 共同描述了一个 fact/truth/event 的话。基于这个 hypothesis,再去 match 原始 paragraph/text 里的 relevant words。具体可以看看 Figure 1.我觉得这个蛮有趣的。因为让我想起编码解码。Question + Answer 的组合就是一种 对于这篇 doc 的一种表达;而这篇 doc 本身是另一种表达。这两种表达就是两种 representation 的结果,那么中间真实的事情是什么?所谓的完整的 information 是什么?他这样直接结合的 hypothesis 肯定也是 reduce 了信息的。实际我觉得现在 Machine Translation/Conversation 那边也在做类似的事情。我们不要直接一对一,要有中间一个看不见的“hypothesis”。第二个 multi-task,他们用了FB20这20类,把任务细分,细分成 20个 subtask。这样就变成了 multi-task 的问题。然后使用了 feature map(Evgeniou 2004)的技术,把 multi-task 又给转化成了原始问题。我觉得还蛮有趣的。当然 multi-task 已经有非常多的解决办法了,这个只是一种适用于他的模型的有效简单的办法。&/p&&p&2.《Machine Comprehension with Discourse Relations》. Karthik Narasimhan and Regina Barzilay. ACL 2015.
MIT CSAIL 出品。开源。是一篇很 neat 的论文,而且不是 NN。这篇文章的卖点是:discourse information + less human annotation所以他们的 model,可以使用 discourse relation(relations between sentences, learned, not annotated) 去增强 machine comprehension 的 performance。具体的,他们先使用 parsing 等方法,去选出和 question 最 relevant 的一个句子(Model 1)或者多个句子(Model 2 和 Model 3),并在这个过程中建立 relation,最后预测。思想都是 discriminative model 的最简单的思想,找 hidden variable,概率连乘。如果对本文有兴趣,推荐看 Section 3.1,讨论了一下他们认为这个 task 上可能相关的四【类】feature。&/p&&p&3.《Reasoning in Vector Space: An Exploratory Study of Question Answering》. In submission to ICLR 2016. 文章来自 Microsoft Jianfeng Gao, Xiaodong He 团队。是一份比较详细的针对 Facebook 20 tasks(FB20)的分析和工作。所谓分析是指,过去针对 FB20 的 Reasoning Work 基本都是 end-to-end 的,所以对于 error case 的分析不够明确,不知道到底是作为 basis 的 semantics 就没建模好;还是 reasoning 的过程出了问题。为了进一步提高在这个 tasks 上的 performances,作者就将 end-to-end 拆分开来,利用 tensor product representation(TPR)的方法,融合一些 common-sense inference(比如东和西是 opposite 的两个方向),将 FB20 的正确率提高到了几乎完美的程度。&/p&&br&&br&&p&&strong&Visualizing and understanding recurrent networks&/strong&&/p&&br&&p&作者是写出《The Unreasonable Effectiveness Of RNN》 博文的 Stanford 学生,Andrej Karpathy。同时 Andrej Karpathy 也是 Fei-Fei Li 教授的高徒。&br&&/p&&br&&p&这篇工作从几个月前递交到 arXiv,前几日又更新了一版,投到了 ICLR 2016,内容上是博文的扩展。主要是通过 controlled experiment 的实验方式,结合可视化的方法,去“量化”展示 char-LSTM 到底为什么 powerful,是否真的如 often cited/claimed 的那样,可以 model long term dependency。这篇工作最后的结论也和之前 Yoav Goldberg 澄清 char-LSTM 令人惊奇之处的文章一致——指出 char-LSTM 厉害之处,&strong&不在于它能 generate 出看起来还不错的 char sequence,而是在于其对于 bracket, quote 等显著 long distance information 的 retrieval 能力。&/strong&&/p&&br&&p&它们通过 visulization cell 的激活,gate activation statistics, error type/case analysis 的方式,展现了许多 LSTM 确实是“对应”和“负责”某些 character position 的,同时 LSTM 确实比 n-gram character language model 大幅降低了 bracket, quote 等 long distance information 的 error case。&/p&&br&&br&&p&&strong&End-to-end memory networks&/strong&&/p&&br&&p&这篇文章,及 Neural Turing Machine,其实是很多类似思想的前身工作,下次会把相关一起对比一下。这类工作的 motivation 是,如何把 large body 的 external memory 用在 Neural Networks 里。&/p&&p&&br&在这篇工作中,他们就是尝试性地探究了几种方式。首先,是 single-layer or multi-layer,其次是 feature 空间如何转换。如果将这样的 end-to-end memory networks 的输出拆分成两种,就可以和 typical RNN 的工作映射起来。将 output 分为 internal output 和 external output,那么分别就可以对应到 RNN 中的 memory 和 predicted label。&/p&&br&&br&&p&&strong&Grid Long-Short Term Memory&/strong&&/p&&p&总的来说,这篇的贡献应该是给出了一个更 flexible 还 computation capability 更高的框架。 要理解这个论文,可能首先要理解三个概念:&strong&grid/block, stacked, depth。&/strong&(1)Grid/Block 是把一个 LSTM 机制改造后的一个 component,这个 component 可以是 multi-dimensional 的,决定了几个方向进行 propagate。每一个 dimension 都有 memory 和 hidden cell。1-dimensional 的 Grid LSTM 就很像上面所说的 Highway Networks。(2)Stacked 和 LSTM stacked 一样,是指把 output 和 input 连在一起。但是 stacked 并不会改变 Grid LSTM 的dimension。stacked 2D Grid LSTM 依然是 2D 的,而不是 3D 的。从 visualize 来看,无非就是把一个个方块/方形,平铺在空间里(每个 dimension 都要延展)。(3)Depth 则是会增加dimension。在一个 block 内部,变 deep,就是增加 layers。一个 block 由几个 layer 组成,就是几层 deep 的 Grid LSTM。&/p&&p&只是 1D/2D 的时候,Grid LSTM 看不出特别大的优点。但是当变成 multidimensional 的时候,就会比传统的 multidimensional LSTM 更好的解决 gradient vanishing 的问题。原因是,传统multidimensional LSTM 在计算每层的 memory cell 的时候,是把每个 dimensional 的 gate 信息集合起来的。显然这样有问题。Grid LSTM 就不是这样。它是每个 dimensional 分开计算memory cell。对于每一个 grid,有 N 个 incoming memory cells 和 hidden cells,同时还有 N个 outgoing memory cells 和 hidden cells。N 是 dimension 的个数。而 Grid LSTM share 的其实大的隐层 H。这样既保证了 interaction 又保证了 information flow。&br&&/p&&br&&p&这篇论文后面还有挺有趣的应用,把 MT 的任务转换成一个 3D Grid LSTM 的问题,其中两个dimensions 分别是 bi-LSTM 正向逆向读写,第三个 dimension 是 depth。效果不俗。&/p&&p&可能这篇论文的这个框架的提出,在于让 LSTM 的变种稍微有迹可循了一点,到底有多大performance 的提高,我还是比较怀疑的。&/p&&br&&br&&br&&b&Spatial Transformer Networks&/b&&br&&p&来自 Google DeepMind 的工作。主要是说,尽管 CNN 一直号称可以做 spatial invariant feature extraction,但是这种 invariant 是很有局限性的。因为 CNN 的 max-pooling 首先只是在一个非常小的、rigid 的范围内(2×2 pixels)进行,其次即使是 stacked 以后,也需要非常 deep 才可以得到大一点范围的 invariant feature,三者来说,相比 attention 那种只能抽取 relevant 的 feature,我们需要的是更广范围的、更 canonical 的 features。为此它们提出了一种新的完全 self-contained transformation module,可以加入在网络中的任何地方,灵活高效地提取 invariant image features.&/p&&p&&br&具体上,这个 module 就叫做 &strong&Spatial Transformers&/strong&,由三个部分组成: Localization Network, Grid generator 和 Sampler。Localization Network 非常灵活,可以认为是一个非常 general 的进一步生成 feature map 和 map 对应的 parameter 的网络。因此,它不局限于用某一种特定的 network,但是它要求在 network 最后有一层 regression,因为需要将 feature map 的 parameter 输出到下一个部分:Grid generator。Grid generator 可以说是 Spatial Transformers 的核心,它主要就是生成一种“蒙版”,用于“抠图”(Photoshop 附体……)。Grid generator 定义了 Transformer function,这个 function 的决定了能不能提取好 invariant features。如果是 regular grid,就好像一张四四方方没有倾斜的蒙版,是 affined grid,就可以把蒙版“扭曲”变换,从而提取出和这个蒙版“变换”一致的特征。在这个工作中,只需要六个参数就可以把 cropping, translation, rotation, scale and skew 这几种 transformation 都涵盖进去,还是很强大的;而最后的 Sampler 就很好理解了,就是用于把“图”抠出来。&/p&&p&&img src=&/eafbb4ffdea98ff5bd46a81e_b.png& data-rawwidth=&750& data-rawheight=&305& class=&origin_image zh-lightbox-thumb& width=&750& data-original=&/eafbb4ffdea98ff5bd46a81e_r.png&&这个工作有非常多的优点:(1)它是 self-contained module,可以加在网络中的任何地方,加任何数量,不需要改变原网络;(2)它是 differentiable 的,所以可以直接进行各种 end-to-end 的训练;(3)它这个 differentiable simple and fast,所以不会使得原有网络变慢;(4)相比于 pooling 和 attention 机制,它抽取出的 invariant features 更 general。&/p&&br&&br&&b&Semi-Supervised Learning with Ladder Networks&/b&&p&&img src=&/fb3ba36cbd8_b.png& data-rawwidth=&653& data-rawheight=&437& class=&origin_image zh-lightbox-thumb& width=&653& data-original=&/fb3ba36cbd8_r.png&&这篇论文并没有特别多的创新点,主要是将 Ladder Networks 从纯 unsupervised fashion 改成了 semi-supervised fashion。&strong&Ladder Networks&/strong& 其实就是把 stacked autoencoder 中 layer 和 decoded reconstruction 之间加上了 skip-connection,所以就像在 encoder 和 decoder 之间有了 ladder,因此命名。那么这篇论文的改进就是在 Ladder Networks 上,encoder 部分的每一层 layer 都加入了 Gaussian noise,并保持 decoder 部分是 noise-free 的。加了 noise 的部分用于 unsupervised autoencoder loss,noise-free 的就是用来提供 supervised loss。&/p&&p&但是这篇论文的实验结果实在是太 outstanding。在 MNIST 数据集上,达到了 1.13% 的超低错误率。这也可以一定程度上证明 semi-supervised 的 improvements。不过,这种 semi-supervised 暂时来看还没被运用得很好,因为这篇工作中,在 validation set 上用的依然是全部的 10K label,而不是小范围的 label。这点上,个人认为是有点 cheating 的。&/p&&br&&br&&b&Neural Turing Machines&/b&&p&&strong&Neural Turing Machines(NTM)&/strong& 这个工作应该是整个 DL Symposium 中最出名的了。跟这篇工作相关的工作有个五六篇(比如同是这个 Symposium 中的另外两篇《Large-scale simple question answering with memory networks》和《End-to-end memory networks》),下次有机会专门写一下。这次只讲这篇原始的 NTM。NTM 的 motivation 我个人理解,主要有两点:(1)neural networks 虽然可以提供很好的 hidden units 计算,去 model internal memory,但是我们在真实生活中有时候更需要 external memory 的辅助和交互(这是两件事,比如和 NTM 很像的 memory networks 其实就只有辅助,没有交互,而 NTM 是有交互的);(2)RNN 作为一种出色的 neural networks,其实是图灵完备的(已被证明)。既然如此,是否可以去把它设计成图灵机?出于这两个目的,就有了 NTM 这个工作。&/p&&img src=&/44ec32acee2bd_b.png& data-rawwidth=&563& data-rawheight=&310& class=&origin_image zh-lightbox-thumb& width=&563& data-original=&/44ec32acee2bd_r.png&&&p&一个 NTM 包括 Controller,Read+Write Heads 和 External Memory;Controller 就是 NN。换言之,NTM 比一般的 NN 多在了读写头和外部存储交互(memory networks 就没有读写头)。个人理解,如果把 NTM 中的 Controller 比作计算机的 CPU,那么其中的 memory 就是计算机的 RAM,而 hidden states 就是 CPU 中的 registers。NTM 中的 Read+Write Heads 非常重要,首先它们可以实现 content-based/location-based 的相关操作,也因此就可以模拟 Focus/Attention 的效果——于是就可以用 content addressing 实现查找 similar data(content-based)。Content addressing 之后,interpolation,提供的是 gate 机制;convolutional shift 提供的是 location-based addressing。有了上面这些模块,NTM 就可以模拟图灵机,实现一些算法。不仅如此,NTM 是 end-to-end differentiable 的。&/p&&p&&img src=&/cbcb4c191ae5bfd7d8c8151_b.png& data-rawwidth=&681& data-rawheight=&252& class=&origin_image zh-lightbox-thumb& width=&681& data-original=&/cbcb4c191ae5bfd7d8c8151_r.png&&从 NTM 的两个 motivation 出发,就可以看出NTM 的两个 goal:(1)NTM 是为了增强 RNN 的学习能力,那么它也应该像 RNN 一样能 solve problems;(2)NTM 是模拟图灵机,是否有可能学习出内部算法?基于这两个 goal,这篇工作中设计了很多种 tasks,比如 copy,比如 priority sort,同时横向对比了三种架构,NTM with LSTM, NTM with feedforward, standard LSTM。&/p&&br&&br&&b&Deep Generative Image Models Using A Laplacian Pyramid Of Adversarial Networks&/b&&p&这个工作虽然知名度不那么大,但是也已经被广泛引用和改进。同样是来自 NYU 和 Facebook AI team 的合作(这次 DL Symposium 中入选的很多篇都出自他们)。工作的思想上很像之前推荐过很多次的 Google DeepMind 的DRAW,就是说,我们在 generate 图片时,不要强迫 model 一步到位,而是让它一步步来。&br&&/p&&p&这篇工作中的 model 叫做&strong& Laplacian Generative Adversarial Networks(LAPGAN)&/strong&,由 conditional GAN 和 Laplacian pyramid 结构组成。前者,conditional GAN 是 GAN 的一种改造,而 GAN 是由一个用于生成 sample 的 generative model(G) 和 一个用于比较 G 生成的 sample 和真实 training data 的 discriminative model(D)构成的框架。那么 conditional GAN 就是在此基础上,再增加上 additional information,比如 sample class/label。后者,Laplacian pyramid 则是一种层次化的图像特征表达,主要体现的图像不同 scale 之间的差异。具体公式可以见 Equation (3)-(4)。那么这篇工作就是将这两点结合起来,使得 GAN 也变成一种层次化的 framework,变成了 multi-scale 的。&br&&/p&&p&&img src=&/77a88fcc032c10eaf23f7_b.png& data-rawwidth=&923& data-rawheight=&382& class=&origin_image zh-lightbox-thumb& width=&923& data-original=&/77a88fcc032c10eaf23f7_r.png&&个人理解,这样的 LAPGAN 有两个好处:(1)是 unsupervised,这是 GAN 的优势。可以直接从 finest/highest-scale/level 的图像,一直利用 Adversial Network 逐步进行 training;(2)就像 DRAW 一样,LAPGAN 的核心思想就是把 generation 的过程给“分解”了,变成了一种逐步的“refinement”,所以降低了网络每次需要记忆的内容量,也同时就提高了网络的 capacity 和 scalability。反过来,这样的网络也有一个劣势,就是它抛弃了图像的 global feature 和 representation,缺少了对于一个 image 的 probability,所以也就在进行 evaluate 时,需要用一些特殊的技巧(比如这篇文章中采用的 Gaussian Parzen window)。&/p&&blockquote&&p&&em&Breaking the generation into successive refinements is the key idea in this work. Note that we give up any “global” we never make any attempt to train a network to discriminate &/em&&em&between the output of a cascade and a real image and instead focus on making each step plausible. Furthermore, the independent training of each pyramid level has the advantage that it is far more difficult for the model to memorize training examples – a hazard when high capacity deep networks &/em&&em&are used.&/em&&/p&&/blockquote&&br&&br&&b&Natural Neural Networks&/b&&p&这篇论文的 motivation 也很 fundamental,是说 SGD 这样基于 point gradient 的优化方法,在日趋复杂的 NN 架构上越来越无力。另一方面,distribution gradient 的方法则还有很多值得探索的空间。毕竟 distribution 在优化的过程中,是一直可被捕捉的(见今天的另一篇论文《Early stopping is nonparametric variational inference》)。Distribution gradient 的求解就需要 KL divergence measurement 和 Fisher matrix。然而,Fisher matrix 的求解计算量非常大(matrix size 大,且包括逆运算等等),使得过去想用 Fisher matrix 的工作都不太 scalable。&/p&&p&基于这个 distribution gradient (也许)可以帮助提高 convergence 效率的想法,这篇工作开始探究 Fisher matrix 的性质。最终通过假设和实验,设计出了一种基于特定 Fisher matrix
的 NN(给 Fisher matrix 加了一些限定条件,并忽略了一些 interaction)。在这种 NN 下,它们的优化算法与更有名的 Mirror Descent 很像。&br&&/p&&p&个人认为这篇工作很直观的贡献是,过去的一些 NN tricks,比如 batch normalization (before non-linearity),zero-mean activations 等等,在这个框架下,都可以有一些理论上的解释。也算是 theoretical Deep Learning的一种进展吧。&br&&/p&&br&&br&&b& Early stopping is nonparametric variational inference&/b&&p&&strong&这篇文章很推荐&/strong&,是一篇优化相关的工作。出发点是,我们除了去优化 training loss,我们也可以优化 marginal likelihood。这样有很多优势,首先,我们就不需要哪些基于 validation set 的 trick 了(比如 early stopping),我们可以直接用 marginal likelihood estimator 去 evaluate performance。&/p&&p&那么如何实现这件事呢,这篇工作给优化过程找了一些 Bayesian 的解释:优化过程中,每一步都会“生成”一个 distribution。这样,整个优化过程中,就会产生一个 distribution sequence。这个 sequence 从 Bayesian 的角度,可以看成是被某个 true posterior distribution 不断 sample 出来的,sample 的样本数 N,也就是优化的迭代次数,就可以被看成是 variational parameter。有了这样一个解释,作者进一步就把 early stopping 这个 trick 解释成了对 varitional lower bound 的优化;ensembling random initializations 就可以看成是 ensembling various independent variational samples.&br&&/p&&p&上面所说的,就是这篇论文的第一个贡献(也是论文的标题)。除此以外,本文利用这样的解释,进一步去构造了 marginal likelihood estimator,并用这个 estimator 去做了 training stop 选择,model selection capacity 选择和 model hypermeter 选择。&br&&/p&&br&&p&之所以推荐这篇文章,并不是说它给出的这种优化方法就比以前 SGD 等等优化 training loss 的好;而是基于两个原因:(1)首先,它里面提到了非常多对于优化的思考。比如 training loss 和 marginal likelihood 两个“指标”,到底应该更“相信”哪个?varational lower bound 这个东西越高,是否真的代表 model 的 accuracy
越准?它和 validation error/test error 指标相反的时候该怎么理解?这些是很有趣的。(2)对于优化过程中 distribution sequence 的解释我个人觉得很有用,现在 variational sequence learning 的工作也越来越多,但是被优化方法局限。这个工作也是一个启发。&/p&&br&&br&&b&Dropout as a Bayesian approximation: Representing model uncertainty in deep learning&/b&&p&这篇论文&strong&从 Bayesian 角度,解释了 why dropout works&/strong&。虽然在2013年,也有人试图解释过 dropout,但当时是从 sparse regularization 的角度解释的,有一定局限性。这篇工作更 general,更 provoking。&/p&&p&首先作者论证了 dropout 在理论上,是等价于一种 Gaussian Process 的 Bayesian approximation 的。这个证明过程很简单,大家可以去看一下。个人感觉,这个解释其实和dropout as noise regularization 很相似,毕竟 approximation 也在引入 noise。只不过它们这种解释更数学化。 &br&&/p&&p&随后,有了这样一种解释,就可以从使用了 dropout 的 NN 中,得到 model uncertainty。这个 uncertainty 其实才是作者的 motivation(当然也是 Bayesian 学派的 motivation)。比如现在的 NN,有一个 softmax layer 去 output 出一个 prediction,比如就是预测一个 label 吧,这个 output 只是对这个 label 的 propability,但是并不包含它对于自己这个 prediction 的 certainty 程度。设想一种情况,我们一直用 dog 的图像去 train 一个网络,最后让这个网络预测的全是 cat 的图片;最后很可能它预测的 probability 有些比较高,但其实 uncertainty 应该更高。以前的框架下,都无法很好地涵盖这种 uncertainty as output。现在,有了 dropout as approximation 的解释,就可以通过 moment-matching 的技术,从 NN 中得到这种 uncertainty 了。&/p&&p&得到这种 uncertainty 后,可以把它用于 regression, classification 甚至是 reinforcement learning 的各种任务上。从实验结果来看,增加了 uncertainty 之后,各种 task 都有提升。&/p&&p&另外可以想到,这样的 Bayesian 解释,有助于提高 model interpretation 的能力,也算是一个非常大的 motivation。最后,如果觉得论文读起来比较枯燥,可以去作者主页找他相关的 slides,看起来非常生动。主页上还有他自己写的一篇 blog,详细地展示了他的 motivation。这次 DL Symposium 中的另外两篇,《Stochastic backpropagation and approximate inference in deep generative models》和《Scalable Bayesian optimization using deep neural networks》也和这个工作非常相似,就不单独介绍了。&/p&
正好最近在公众号写 NIPS 2015 Deep Learning Symposium 的论文总结,直接搬运到这里吧。 先来说结论,我推荐的论文有: 《Character-aware Neural Language Models》. Yoon Kim, Yacine Jernite, David Sontag, Alexander M. Rush.《A Neural Algorithm Of…
Hi 题主,&br&首先血与泪的教训就是,现在搞 DL 研究,一定要及时放上 ArXiv!当然是要有理论有结果分析的那种,仅仅有个 idea 就挂上网的行为我不太赞成。&br&看了很多答案让题主不要过于在意,我觉得从心态调整上这是很正确的。但是这可能还不仅仅是心态调整问题,这还涉及到研究部门的效益/评价等。可能题主有上面领导的压力要求宣传自己的工作吧。&br&&br&我举几个最近的 DL 研究“撞车“例子供题主参考。&br&&br&1. Variational auto encoder&br&VAE 这个 idea 现在已经成了 DL 的一个重要热点话题。最早提出这个 idea 的是 Kingma & Welling (2013) [1]。但是就在一个月后 deepmind 也上传了一篇论文,几乎相同的 idea [2],而且就晚了一个月。当然之后双方进行了沟通,最后的结果是,在正式会议出版上他们互相引用,并且提倡后来的 following paper 都引用双方的文章。&br&总结:这算是一个比较好的结局。当然最后 Kingma & Welling 的贡献被赞誉的更多,因为人家是第一个公开的(注意:他们不一定开始的比 deepmind 早)。而且之后他们也保持的很好的合作关系,Kingma 还去实习了一趟,不过最后他选择了 OpenAI。&br&&br&2. Adversarial training for Transfer learning &br&从14年开始 adversarial learning 也成为了热点话题。在15年ICML 投稿中 [3] 和 [4] 用了类似的方法把 adversarial training 应用在 transfer learning 上。结果 ICML 大会 [3] 投中了而 [4] 被拒了。[4] 的作者之一 Hugo Larochelle (Bengio 的学生)说,他们赶紧联系了 [3] 的作者,经过沟通 [3] 的作者最终同意一起合著一篇 journal,即将出版在 JMLR [5]。&br&总结:这也算是比较好的结局。我感觉现在 DL 研究竞争非常激烈,同时想到同样的 idea 确实是有可能的。但是这次双方还是表现了一个开放的合作态度,合作了一片期刊论文。在 ML 学界我们普遍认为期刊论文相比会议论文更加完善,所以在双方有共同的 idea 的情况下,合作发表能让这个 idea 有更多角度的验证。当然我们还是要给第一出版者 credit, 而且最后 [3] 的作者们也排在 [5] 的作者列表前列。&br&&br&3. Generative moment matching network (GMMN)&br&还是之前的 adversarial training 相关工作。14年 Bengio 组提出的 generative adversarial network [6] 的训练被认为是比较困难的。于是在 15年 ICML 上 Toronto 的 Yujia Li 等人提出了 GMMN [7], 使用 maximum mean discrepancy (MMD) 来训练。然后晚些时候我们组的现在正在 visit Toronto 的博士生 Karolina 以第一作者挂网了同样的 idea [8],并且引用了 [7] 注明是 independent work。&br&总结:我感觉在16年同时/相继发表类似 idea 的事情也会有不少,但是这不能否定发表时间稍晚/作者稍微不那么大牛 的文章的价值。毕竟 idea 相同,分析的角度相同的情况更罕见。而更常见的情况是最后表述的模型类似,但是出发点不同/测试场景不同。[8] 的贡献在于他们从统计学角度分析了 MMD 应用在 adversarial training 的效果,而 [7] 是从改进 GAN 训练的角度入手。从影响来看,可能近期 DL 领域的 following work 会倾向引用(甚至只引用)[7],但是长远来看 [8] 最终也会得到应有的评价。&br&&br&References (as first appeared online)&br&[1] Kingma D P, Welling M. Auto-encoding variational bayes. arXiv preprint arXiv:, 2013.&br&[2] Rezende D J, Mohamed S,
Wierstra D. Stochastic backpropagation and approximate inference in deep
generative models. arXiv preprint arXiv:, 2014.&br&[3] Ganin Y, Lempitsky V. Unsupervised domain adaptation by backpropagation. arXiv preprint arXiv:, 2014.&br&[4] Ajakan H, Germain P, Larochelle H, et al. Domain-adversarial neural networks. arXiv preprint arXiv:, 2014.&br&[5] Gani Y, Ustinova E, Ajakan H, et al. Domain-Adversarial Training of Neural Networks. arXiv preprint arXiv:, 2015.&br&[6] Goodfellow I,
Pouget-Abadie J, Mirza M, et al. Generative adversarial
nets. Advances in Neural Information Processing Systems. 2014:
.&br&[7] Li Y, Swersky K, Zemel R. Generative moment matching networks. arXiv preprint arXiv:, 2015.&br&[8] Dziugaite G K, Roy D M,
Ghahramani Z. Training generative neural networks via maximum mean
discrepancy optimization. arXiv preprint arXiv:, 2015.
Hi 题主, 首先血与泪的教训就是,现在搞 DL 研究,一定要及时放上 ArXiv!当然是要有理论有结果分析的那种,仅仅有个 idea 就挂上网的行为我不太赞成。 看了很多答案让题主不要过于在意,我觉得从心态调整上这是很正确的。但是这可能还不仅仅是心态调整问题…
&p&【不好意思,由于前段时间被告知名称不符合知乎命名规范,被要求强制改名,现在我们名称改为“科研君”,欢迎大家继续关注~另外由于改名期间不允许发送任何消息,导致我们这篇文章发布略晚,抱歉!】&/p&&br&&p&浏览了其他同学的回答,很多人提到了题主的不严谨之处,即deep learning实际上同时推动了很多领域的发展。我也同意,而且一个我所知道的例子是自然语言处理NLP中词向量(Word Embedding)方法对传统语言模型的提升[1];而且我相信,deep learning还会进一步推动更多AI领域的发展。&/p&&br&&p&当然,深度学习Deep Learning最为人所关注也表现最明显的,就是使语音、图像识别获得了长足的进步。其实有的同学已经回答得很漂亮了,只是我忍不住再谈谈自己的理解,抛砖引玉,大家共同讨论。&/p&&br&&p&本着读书人简单问题复杂化……啊呸,是论证完整化的标准,我觉得可以从以下三点递进地解决题主的疑问:&/p&&p&1.
为什么深度学习突然间火起来了?&/p&&p&2.
为什么深度学习会应用到语音识别和图像识别中?&/p&&p&3.
为什么深度学习能成功地应用到语音、图像识别中,取得突破?&/p&&br&&p&为了让更多对深度学习感兴趣的朋友看懂,下面我尽可能地用简单的语言来阐述下我的看法(叙述中假设你已经大致知道什么是深度学习和神经网络,了解神经网络的基本原理,顺便认为你已经浏览了其他答案):&/p&&p&==============================我是分割线============================&/p&&br&&p&&b&1.&/b&&b&为什么深度学习突然间火起来了?&/b&&/p&&br&&p&谈到这个问题,如果在五六年之前,很多人肯定会说是因为Hinton在Science上的那篇论文“Reducing the dimensionality of&br&data with neural networks”。&/p&&br&&p&虽然神经网络“号称”自己可以拟合任何函数,并且可以模拟人脑的运作形式,但是这一切都是建立在神经网络足够深足够大的基础上。没有了规模,浅层的神经网络啥都达不到。而人们发现,优化多层神经网络是一个高度非凸的问题,当网络层数太多了之后,训练就难以收敛,或者只能收敛到一个次优的局部最优解,性能反而还不如一两层的浅模型。这个严重的问题直接导致了神经网络方法的上一次衰败。&/p&&br&&p&在2006年Hinton的那篇文章中,他提出了利用RBM预训练的方法,即用特定结构将网络先初始化到一个差不多“好”的程度,再回到传统的训练方法(反向传播BP)。这样得到的深度网络似乎就能达到一个不错的结果,从一定程度上解决了之前网络“深不了”的问题。在这个框架下,深度学习重新得到了人们重视,一批新方法被发明出来(Denoise Autoencoder,Dropout,ReLU……),都让神经网络有了前所未有的“更深”的可能。&/p&&br&&p&但是我们现在再回过头来看这个问题,我们应该加入两个甚至更加关键的元素:&b&大数据&/b&和&b&高性能计算&/b&&/p&&br&&p&在如今的互联网时代,近十年来数据量的积累是爆炸式的。几年后人们发现,只要有足够多的数据,即便不做预训练,也能使深层网络得到非常好的结果。而针对卷积神经网络CNN或者LSTM来说,预训练本身也不像全连接那么好做了。一个技术不能很大地提升性能,还需要researcher辛辛苦苦想算法,需要程序员辛辛苦苦写代码,你说谁干呢……现在的语音识别或图像识别系统,如果拥有大量的训练样本,基本都是没有预训练步骤的。&/p&&br&&p&而高性能计算是与大数据相辅相成的,想象你有好多好多数据(百万幅图片,上万小时语音),但是计算速度跟不上,训练一个网络需要好几年(做机器学习的人应该知道这个完全没有夸张吧),那这个研究也完全不必要做了吧?这也是为什么有人认为神经网络火起来完全是因为GPU使得计算方法更快更好了。从这个意义上,GPU并行计算的发展确实极大推动了深度学习的普及。&/p&&br&&p&有大数据和高性能计算打下最坚实的基础,人的聪明才智是无穷无尽的。那些笃信深度学习的学者们使用了各种各样的算法激发深度学习的潜能,比如微软的残差学习[2]。否则,再多的数据也不能把传统的神经网络训练到152层啊。&/p&&br&&p&总得来说,&b&大数据的快速积累、大规模并行计算的快速发展、新算法的不断出现共同促使了神经网络技术改头换面,重出江湖。&/b&&/p&&br&&p&&b&2.&/b&&b&为什么人们会想到将深度学习应用到语音识别和图像识别中?&/b&&/p&&br&&p&众所周知,深度学习的目标是模仿人类神经网络感知外部世界的方法。那么很自然地,如果把人想象成计算机,那么语音和图像就是最主要的input形式(当然了,什么气味之类的,就属于化学或者物理领域了……)。既然人能够很好地识别图像和语音,那么自然地,我们也会希望这个试图模仿人类大脑的深度学习算法也能像我们一样听清语音、看清图片。目前在许多重要的模式识别问题中,机器都远远没有人表现得好。而&b&如果这个方法能够像人脑一样工作,那它理应在这两个领域得到接近或者乃至达到人的水平。&/b&这是非常让人兴奋,让人觉得promising的。&/p&&p&(同理,文字也是重要的输入,因此也有许多工作试图在NLP领域应用深度学习算法。)&/p&&p&深度学习热潮率先在这两个领域刮起,当然还有一个不可忽视的因素。一个机器是否具有智能,最最基础的就是看它能否接收到外界的视频音频信号。如果有算法号称自己能够做这件事,并且貌似靠谱的话,那么研究机器学习的人当然是要一起从这上面下手了。你说,拉funding的人听到你说你的机器能听懂人说话,他能不感兴趣么!当全世界的科学家都意识到语音、图像识别中的深度学习是个坑之后,大家必须争先往里跳啊。&br&&/p&&br&&p&&b&3.&/b&&b&为什么深度学习能成功地应用到语音、图像识别中,取得突破?&/b&&/p&&br&&p&当然,深度学习不是神,并不是无所不能。从上面的分析我们知道,是深度学习看起来无比光明的前景让大家把它应用到语音、图像领域。而它之所以能在语音和图像领域获得成功,又回过头促进深度学习发展,背后必然是有一定的道理的。&/p&&br&&p&第一个非常重要的原因就是问题1中提到的——&b&大量数据&/b&(硬件装备各个领域都一样,就不考虑了)。为什么这么说?比如语音识别中用到的深度学习技术,除去最新的端到端技术,大部分都是在上世纪就已经有了的,但是到2012年,Li Deng和Hinton等人才写出了语音识别中划时代的文章“Deep Neural Networks for Acoustic Modeling in Speech Recognition”,中间差的是什么,一个关键就是大量的数据。&/p&&br&&p&举个例子,一个语音识别系统,当训练数据达到3000小时时能有较好的效果。3000小时什么概念?可以想象一下自己听一段演讲,然后把它逐字逐句敲下来,这才多少小时?而谷歌、微软他们的训练数据则更是海量的几万个小时。同样,在图像识别领域,ImageNet则有百万张图片,这么多的数据让当年六万张手写数字的mnist情何以堪。正是这些大量的数据,使得深度学习应用到这两个领域成为可能。&/p&&br&&p&这里可能有稍微了解语音识别的同学要提出疑问:“有很多研究单位现在研究小数据量下的深度学习,不是说必须要数据量大才管用么?”注意,这里所谓的小数据只是某一类别的数据少,而全体“可用”数据仍然很多。比如在语音识别中,我可以说训练粤语的数据量很少,但是我可以通过已有的大量普通话数据,还帮助我提高识别粤语的性能。因此,最终还是需要数据作为支撑。&/p&&br&&p&第二个非常非常重要的原因是——&b&特征原始性的保留&/b&。在模式识别领域,一句重要的话是:“Features matter”。如何最大限度保留原始信息地表示输入的特征,对于识别是一个重要的问题。神经网络一个特点是它能够作为特征抽取器。什么意思呢?比如在图像识别中,人们发现神经网络每层的权重实际上学习到了图像的某些“成分”;而且越高层,成分越具体。在第一层可能是一些“点”、“边”、“拐角”等;再往上可能就是“眼角”、“嘴唇”;到最后一层可能就是脸的不同部分了。说明网络和人脑一样,将原始信号经过逐层的处理,最终从部分到整体抽象为我们感知的物体。&/p&&br&&p&因此这个特征抽取器对输入有一个不小的要求:应该足够原始并包含目标任务的信息。显然,假设你已经把一幅图片根据你的理解变成了有多少张人脸,有多少朵花,有多少棵树统计出来的向量的话,你还怎么指望深度学习能给你学出来什么嘴巴鼻子眼睛,来进行人脸识别呢。&/p&&br&&p&我们发现,对于语音和图像来说,这个要求实际上是相对容易满足的,每一幅图像、每一段语音帧,都属于自然界的原始信号,并且能够清晰地反映我们要识别的人脸或者音素,我们通过尽量简单的预处理就能将其送入神经网络。把最主要的识别工作交给深度学习来完成。&/p&&br&&p&反之,对于NLP问题来说,我们拿到的一段段文本,实际上都是由人脑处理过的,我们用什么样的特征来刻画它才足够原始呢?再比如语音信号处理的另一个任务——说话人识别,应用深度学习也是有一定困难的,一段语音中有什么特征能够反映一个说话人的身份,又没有经过过多的人为处理呢?从这个角度看,这些领域深度学习的应用都没有语音识别、图像识别那么简单、自然,也没有那么成功。&/p&&br&&p&就我感觉而言,如果你的任务能拿到原始的有效特征,数据量足够巨大,任务本身和感知相关(人也能完成相似的工作),那么深度学习就极有可能带你飞一会。只是图像和语音是人们最感兴趣的,人们花了大量努力让它飞起来而已(那么多大牛在努力填坑呢)。&/p&&br&&p&如此看来,深度学习在语音、图像识别中获得成功,也是很自然的事情了。&/p&&p&=====================================================================&/p&&br&&p&最后扯几句。&/p&&p&深度学习之所以能够如此广泛的成功,现在已经绝不仅仅是简单替换原先系统中的某些部件那么简单,端到端的热潮正在到来,神经网络似乎准备接管系统的所有组成部分。&/p&&br&&p&相信现在还有很多人和几年前的我一样,觉得深度学习只是神经网络方法打出的一个大噱头,不过是用了几十年的东西旧瓶装新酒罢了。但是,作为一个研究语音识别的研究生,看到停滞了十年的识别率被深度学习再次(而且是一再)地提升后,你不得不承认它是如此的牛逼。另一个让我再次对深度学习肃然起敬的事情,就是AlphaGO对人类的胜利。看到3:0时我的想法并不是很多人的:“哇塞,机器赢了,机器人是不是马上就要统治世界了?AlphaGO会不会通过网络流动了每一台的电脑里,控制我们?BetaCat是不是要写好了?”而是:“哇,深度学习居然能将围棋模型训练到这种程度,真的能达到人的水平!以后牛逼吹起来更有逼格了”曾经让我觉得缺少传统机器学习那种数学美的方法,确确实实(至少在性能上)达到了一个新的高度,真的是非常了不起。&/p&&img src=&/e965c366201_b.png& data-rawwidth=&554& data-rawheight=&367& class=&origin_image zh-lightbox-thumb& width=&554& data-original=&/e965c366201_r.png&&&p&图1 语音识别正确率的变化。注意conversational speech近十年的停滞不前和2011年的那个五角星,那是深度学习带来的大进步(图片来源:&a href=&///?target=http%3A///acoustic-model/knn/benchmarks-comparison-of-different-architectures& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&The Speech Recognition Wiki&i class=&icon-external&&&/i&&/a&)&/p&&br&&p&我想,像Hinton这种见证了神经网络三十年来的风风雨雨、潮起潮落的学者,看到神经网络如今每一次丰碑式的成功,在心里是会激动得老泪纵横呢,还是早已笑看风卷云舒。&/p&&br&&p&上面所说的都是我自己个人的认识,从学术上说有的地方可能不是非常准确,而且限于篇幅讨论得也不是那么全面,欢迎大家批评指正。好了,不瞎扯了,我得去训练网络了,看看实验室的GPU有没有空位置。。。&/p&&br&&br&&p&参考文献:&/p&&p&[1] Collobert R,&br&Weston J, Bottou L. Natural Language Processing (Almost) from Scratch[J].&br&Journal of Machine Learning Research, 2011.&/p&&p&[2] He K, Zhang X, Ren S.&br&Deep Residual Learning for Image Recognition[J]. Clinical Orthopaedics and&br&Related Research, 2015.&/p&&br&【“科研君”公众号初衷始终是希望聚集各专业一线科研人员和工作者,在进行科学研究的同时也作为知识的传播者,利用自己的专业知识解释和普及生活中的 一些现象和原理,展现科学有趣生动的一面。该公众号由清华大学一群在校博士生发起,目前参与的作者人数有10人,但我们感觉这远远不能覆盖所以想科普的领域,并且由于空闲时间有限,导致我们只能每周发布一篇文章。我们期待更多的战友加入,认识更多志同道合的人,每个人都是科研君,每个人都是知识的传播者。我们期待大家的参与,想加入我们,进QQ群吧~:】&br&&br&&br&&br&&br&&p&【非常高兴看到大家喜欢并赞同我们的回答。应许多知友的建议,最近我们开通了同名公众号:&b&PhDer&/b&,也会定期更新我们的文章,如果您不想错过我们的每篇回答,欢迎扫码关注~ 】&br&&/p&&br&&p&&a href=&///?target=http%3A///r/5zsuNoHEZdwarcVV9271& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&/r/5zsuNoH&/span&&span class=&invisible&&EZdwarcVV9271&/span&&span class=&ellipsis&&&/span&&i class=&icon-external&&&/i&&/a& (二维码自动识别)&/p&
【不好意思,由于前段时间被告知名称不符合知乎命名规范,被要求强制改名,现在我们名称改为“科研君”,欢迎大家继续关注~另外由于改名期间不允许发送任何消息,导致我们这篇文章发布略晚,抱歉!】 浏览了其他同学的回答,很多人提到了题主的不严谨之处,…
已有帐号?
无法登录?
社交帐号登录
1937 人关注
318 条内容
2865 人关注
114 条内容
1510 人关注
118 条内容
6570 人关注
375 条内容
625 人关注}

我要回帖

更多关于 deep learning 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信