现状:
1. 目前大家对于大部分需求,通常采用multiple layer,units in each layer也是人工订好的(虽然可以做稀疏,但是在same layer范围内竞争)。
2. 网络结构(或connection paradigm)常用的有3种:
DNN(或DBN)中full connection,各个weight独立看待;
CNN中part connection(translation or scale)in same convolution,weight有group的概念,同group的"共生"(常采用equality);
RNN中有了context的概念,从而在connection中增加了context内的依赖(temporal/spacial)。
3. feature learn from raw data layer by layer,but prior knowledge in raw data is NOT fully concerned.我们更期望学到是的联合概率而不是后验概率。
4.uncertainty quantification的问题解决,这个事关risk(variance)。
只从技术上谈突破(个人理解,有可能有误,请大牛们指正)如下:
a. BP很可能不是唯一的“彩蛋”。细节不便说,可以提一个,如果我到google/facebook搞,首先从layered graph model开始(形成inference network or inference graph),采用bayesian network中的因果推断关系和markov network中的互为因果关系。
b. 网络结构方面消除layer间的隔阂的shrink或dropout。常有人说train到某个epoch后貌似提升不动,甚至反而变坏了,除了units size和learning rate调整解决外,可以考虑此思路。此外,更重要的是,不用拘束在第2点说到的connection paradigm,完全可以根据自己的业务(例如广告CTR)和数据特征特点,建立suitable connection。我和朋友研究下针对语音识别 和 广告CTR的特有网络形式。
c. prior knowledge的获取有3个思路:auto-encoder,manifold learning,structure constraints的表征。尤其是第三个,怎么把structure constraints有效的和network(or graph)的connection形式建立关系是个很好的思路。
d. quantification问题或者说upper bound问题是个“永恒”的话题。因为有些应用特别关注这些,比如互联网金融中对variance的risk evaluation。但改进还是有的,思路之一是逐层量化或逐图量化+适当约束优化。但不建议为了quantify而限制整个模型学习的activeness,从而得不偿失。