吴立德教授深度学习课程笔记

复旦大学 吴立德教授 深度学习(Deep Learning)课程(http://www.youku.com/playlist_show/id_21508721.html),老先生讲得很细致,非常推荐。

直接利用Deep Neural Networks的问题:

  • 以前机器学习的数据量不是很大(标记数据更少),而DNN待学习的参数非常的多(Andrew Ng在Google搞的那个有1.15billion个参数),这样就会出现严重的过拟合现象;我觉得这也是DNN之前没有像现在这样火的原因之一(难以训练,计算复杂度高等也是原因)。
  • 层数多了以后,梯度下降的优化过程就变成非凸优化,比较容易陷入局部极值;(关于凸优化,非凸优化的区别可以参考http://hi.baidu.com/tuenmei/item/beedffa6714dce228819d329)
  • 层数多以后,会出现梯度弥散(diffusion of gradients)的现象:梯度下降法(以及相关的L-BFGS算法等)在使用随机初始化权重的深度网络上效果不好的技术原因是:梯度会变得非常小。具体而言,当使用反向传播方法计算导数的时候,随着网络的深度的增加,反向传播的梯度(从输出层到网络的最初几层)的幅度值会急剧地减小。结果就造成了整体的损失函数相对于最初几层的权重的导数非常小。这样,当使用梯度下降法的时候,最初几层的权重变化非常缓慢,以至于它们不能够从样本中进行有效的学习。这种问题通常被称为“梯度的弥散”(http://ufldl.stanford.edu/wiki/index.php/深度网络概览)
针对以上问题,一些学者提出了可行的解法:
  • 利用未标记的数据,提出自编码器(Auto Encoder,包括Forward Neural Networks,Restricted Boltzmann Machine),采用逐层学习的方式(layer-wise的pretraining);
  • 减少参数,提出CNN (Convolution Neural Networks)。


还有一个学习“深度学习”的网址,是Andrew Ng他们maintain的:http://deeplearning.stanford.edu/wiki/index.php/Main_Page

你可能感兴趣的:(机器学习,deep,learning,深度学习)