提出问题
对于同样规模参数的网络,层数较高的网络表现较好。这是为什么呢?why deep ??
这里引入modularization的概念,模组化。 DNN的前面部分是进行较为简单的特征提取,因此需要较少的training data。
语音识别
语音由一串phoneme组成,每个单词由一串phoneme组成,但是实际发音时会受到前后单词的影响,而形成相同phoneme会发出不同的发音,构成tri-phone。
语音识别第一阶段是分类问题,即对于输入的acoustic feature,按照时间进行采样,决定采样的数据属于哪一个state。每个state都有一个静态分类问题
由于人类发音器官的特点,可以总结出 嘴形、舌头位置等变量会导致发音不同。因此,可以对于所有的acoustic feature,可以共用一个CNN。输入为acoustic feature,输出为各个状态。
deep的好处
对于前面的理论,DNN能够更好的使用训练数据,得到模组化结构。而较浅的网络虽然能够表示所有函数关系,但是它对于训练数据使用不是非常有效率,因此训练较为困难。
可以实现end-to-end learning,即只给网络输入和输出,不告诉中间应该怎么进行分工模组化。对于DNN,可以叠一个很深的网络,通过数据可以自行决定每一层的功能。
如下图所示,传统的语音识别需要大量的人工干预,只有在最后一步存在机器学习。而现在,可以从对数之后社会之从频谱之后就直接进行DNN机器学习。
对于图像识别,以前的操作流程如下图,也包括了很多部分,构成production line。而现在只需要进行DNN就可以很好地分类。
进一步地,存在一些非常复杂的任务。例如非常相似的输入有着不同的输出,或者差别很大的输入有着相同的输出的情况,flatten网络很难完成这项任务。而DNN可以通过多层的网络,将差别很多的输入特征,可以聚集到一起。
更多的深度学习的必要性讨论,可以参考深度学习是否多虑?