演讲实录丨王熙照:非迭代深度学习

科技工作者之家 2018-10-02

今天都在谈论怎么落地,怎么变成生产力,怎么赚成钱这么一个过程,但是做研究不单单是这个东西,可支撑前进的后动力主要还是基础性的研究。


9月15日,在由中国人工智能学会学术指导的全国博士后学术交流活动上,深圳大学教授、博士生导师、IEEE/CAAI Fellow王熙照发表了题为“非迭代深度学习”的演讲。



下为王熙照教授在本次大会中的演讲实录,经整理后发布。

王熙照:今天非常荣幸有这个机会来这里和大家一起分享一下我们最近关于深度学习的一些具体想法和工作,首先非常感谢何清教授的邀请和推荐,也感谢会议组织者的安排。这个报告是讲了很多次了,最近一次是在济南召开的CCDM中国数据挖掘大会的Keynote,我今天从某个角度来谈一谈目前特别火的深度学习技术,包括个人的理解还有一些新的想法,拿出来和大家一起分享一下,有什么不对的地方,或者有些和大家的想法不太一致的地方欢迎讨论。

我今年第一次作为中国人工智能学会的工程专委会的主任委员(何老师是这里的老人了,老专委了)。我们两年一次专委会的全国会议,明年的会议是在深圳举行,我们今天上午报告的李院士多次光临指导这个大会。希望大家有机会能够光临这个NCIIP,是智能信息处理,也是知识工程专委会的年会,两年举办一次,是定在2019年的5月18-19日在深圳召开。

今天我和大家分享的这个题目就是刚才在第一张PPT里显示过的非迭代深度学习,是一个非常简单的想法。这些都是一些基本的框架,我谈一谈什么叫深度学习,深度学习的基本结构。目前来讲,我想这些东西从教科书都可以找到,因为我们现在出书的速度特别快,现在翻一翻深度学习的著作N多,中文的,外文的,我想这些基本深度学习的框架都可以从书中找到。

然后是深度学习深度网络的结构还有一些训练策略,包括深度学习为什么这么powerfully,基本上都能找到,我花几分钟捋一遍,很快的过一遍。重点想谈一谈后面这个问题—深度学习不能干什么,这是我们感兴趣的,我和何老师都是数学背景出身研究机器学习的,总希望有一个界定,定义,或者说把它搞清楚。

和今天我们大会的主题可能稍微有点不大相符,今天都在谈论怎么落地,怎么变成生产力,怎么赚成钱这么一个过程,但是做研究不单单是这个东西,也有的学者说这个观点很明确,可支撑前进的后动力主要还是基础性的研究,没有基础性的研究后面的东西越来越虚,这个不是我谈的主要话题,简单过一过。

什么叫深度学习,从数学的角度来说总希望有一个定义,很遗憾,迄今为止还没有发现一个比较让大家都认可的定义。比如说有一些描述(从数学的角度来讲如果没有定义的话就是给出一个描述),就是几个坐标等等。什么叫深度学习,有人说是一个卷积网络,有人说是特征抽取技术,有人说是无监督学习的技术等等。

目前大家都认可的一个说法是深度学习是一个特征工程,深度学习的实质就是一个特征抽取的技术,那就是说多了之后自然就成工程了,所以深度学习以及后面所谓的特征工程,与我们专委会知识工程密切关联,或者是直接的内容。简单过一遍,有人说是层次表示,有人说这是一个学习的方式,知识结构。从这个可以看到,其实最早谈出来的深度学习,不能说最早(90年代日本学者就提出了卷积的原型)。

再回到刚才说的虚一点的话题,没有基础性的研究怎么可能导致有一些新的结果出现?大家知道神经网络死过好几回了,低谷来过好几次,如果没有人坚持一直做这个东西怎么能进来,比如说Hilton一直在坚持研究卷积神经网络,当然后来成了深度学习最主要的模型之一了。后来说这个起点为2006年一篇发表到Science的文章,但现在的说法是,大数据和计算能力的快速提升才是深度学习真正重回大众视野的契机,从技术角度看并没有多少创新,就是原来的东西,然后多了些层的结构。

这篇文章,登在Science上,他是说用多层神经网络学习技术,在座好多博士后,我们的主题今天是创业,但是做研究是创业里最原始的动力,如果对研究感兴趣可以把原始发表在Science上的文章看一看,看开始的动机,说法等等,并不是随便写个文章都能发表在Science上。

基本结构教科书里都有,有多少种深度模型的结构,查查国家基金委的目录发现有一个深度学习,这个里面有深度框架,深度模型,深度训练等等,把这个深度学习分了一二三四五六,其中有一块叫深度模型,所以对深度学习到底怎么理解,仁者见仁,有不同理解的方式。基本的东西是没有变的,是一个多层神经网络,不管怎么处理本质都是多层前馈神经网络,后来演变成若干种,细分的话现在的神经模型到底有多少个类型,我也没有仔细统计过,那几个主要的我们一直在看,卷积是最早的,所谓深度模型就是从这儿出来的,从这儿叫起来的。

受限布尔斯曼机是纯无监督的学习方式,所谓一个网络能量的平衡点,找一个网络能量最小平衡点来解决一个赋初值问题,也就是自编码,这些如果你从结构上,从机理上来分析没有什么难点。这张PPT上显示的是一个所谓的多层前馈神经网络,我们把第一个叫输入层,后面叫输出层。就训练的策略来说,目前主流训练的策略就几个选项,因为能解决很多问题,而且工程上大家也认可这个东西,也好理解,大学一年级学过微积分的都知道什么叫梯度,然后导出来一个基于梯度的最速下降法。

BP算法本质上就是原来最古老的梯度下降带有解释版本的东西,解释了一层一层的梯度,本质就是梯度下降,就是几百年以前出现的梯度下降算法。

这一部分我简单show一下,讲一讲为什么特别强势,我们先回顾一下,这个PPT大概是两年以前我讲DL一直沿用下来的,就没动,这个我估计更新了好多次了。有一个什么报告让我讲一下深度学习有什么优势,我按当时的版本找的最新的,现在大概两年了,所以现在这个有点out了。按当时的说法进步还是非常大的,比如说人脸识别,没准在座有些领域的专家,比我专业强,我只是从网上摘一摘看看告诉大家,有一个突破性进展是什么?然后云就不用说了,现在科大讯飞一大堆的东西。下面几张PPT简单过下:通过用深度网络的表示,提高预测率,这个是dnn+一个随机的赋权,我们叫elm,是一个随机的赋权网络,放在一起可以大幅度提高识别的效率。

上午我听报告里很多人讲大数据里不需要online,时间太长了,这里主要是为了提高时间效率,自然语言处理好多大专家了,我这里就不再赘述了。这个后来也是推动深度学习向前进一步的一个契机,当时吹的很多。

下面大概从我们的角度大致说一说,为什么这么强势?第一点,我先说一个观点,我们的机器学习,我做机器学习从1995年开始做,原来做模糊系统(李院士当年也做模糊系统,也做不确定性推理的东西)。从1995年开始做机器学习一直到现在。机器学习有若干种分类的模式,其中有监督,无监督学习等等。这里我们来讲一讲,如果给了你一个数据库让你设计一个算法,然后预测新的到来的例子的类标,这是一个非常典型的抽象化的机器学习,有监督学习的问题。这个问题可以拓展到很多很多领域,上午主旨报告里说这种研究没有落地,实验室的东西一般不可能很容易的落地,但是研究要有研究的乐趣等等。

有监督学习里面可以涉及好多算法,但是有监督学习的出发点是有这些例子,而且有类标,关键是有监督学习的出发点特征是不一样的。一开始,这里告诉你深度学习里有一个很大很大的特点,上午哪个老师我记不清了,他讲能产生新的特征,这个可能是一个最核心的部分,而不是在后面。

深度学习按结果来说是一种有监督学习的模式,但是里面如果划分功劳的话,它是一种有监督学习和无监督学习二者的结合,并且有人认为,在这个结合中,有监督学习的功劳只能占20%,主要的功劳还是在无监督学习这一块,所以说总结来总结去产生新特征是深度学习的主旨。

因为我们有监督学习是从数据表出发的,产生这个数据表比你在这个表上设计算法重要的多,所以后面的这个总结基本上就是按照这几条的,是一个特征抽取器。第二点是能获取一些特征表示,所以有人叫表示学习,差不多,确实很有意思。

还有,他不同于传统的特征抽取器,他抽取过程是训练过程,是一个训练过程,都是讲这个特征,总结来,总结去,它讲究有层次,也就是说抽出来的特征可以一层一层的,这个是不同的领域。具体的领域,比如说落地了,比如说图象处理,语言识别可以搞成这样,泛泛的讲就是抽象问题,层次在哪儿很难说,抽象到数学的角度,模型的教学,在此过程中搞出一个层次来了,甚至还搞出语意来了,可能性不大。

总结一句话,也不是我个人观点,从已有的资料里总结出来,深度学习之所以这么强大最主要的原因是,DL不单单只是一种有监督学习的方法,而更主要的还能产生新的特征,是一个特征抽取器。下面讲一讲DL limitation,从工程的角度,比如说DL放到另一个领域非常好,行了,拿走马上用。放到这个领域里不成功,那就再来。做这个的人没有义务,或者说他没有兴趣告诉你为什么成功,为什么没成功,成功了,市场化了,赚钱了,OK,至于为什么他不关心。

做研究的人一般喜欢把某件事情搞清楚,尽管这个搞清楚可能不产生效益。我们关心的是到底是不是万能的,你看很多领域都说用了深度学习后,有些东西性能提升了多少倍,有的是颠覆性的,革命化的,华丽的词语都用上了,到底是不是这样,事实证明炒作阶段都是这么做的。实际上没有那么强大,他有很多很多东西是不能解决的,是解决不了的,这些基本的东西就不说了。咱们看一看,他需要的大量的数据,一般所谓的深度学习需要大量的数据,也就是说数据多了之后才可以做,容易陷入局部极小,很多参数可能过拟合。如果一个简单模型非要用复杂度很高的深度模型去处理就可能出现,本来简单的东西弄的很复杂,本来简单的东西用复杂模型做了。可以找一些对抗样本去看一下,一般的知识在现在的书里马上就能看到,很快就过了。

真正做深度学习实验的就会发现一种现象就是梯度消失,搞着搞着梯度就没了,然后就成零了,你们做过的都会发现这个现象,什么原因?前段时间许院士团队的孟德宇博士重点在研究为什么梯度消失,前段时间做了一个报告叫“梯度之迷”,很复杂,这个东西很复杂,但是也是一个所谓的训练过程中不可避免的一种limitation,还有可能容易陷入局部极小,训练时间过长等等。当你设计的时候到底设计多少层这个网络,卷积也好,前馈神经网络也好,或者是多层感知器也好,包括带有反馈的单元也好,这个东西多少层?每一层多少个结点,现在是解决不了的,只能是弄出来一个好的结果之后给大家show一下,怎么出来的呢?现在没有什么规律可寻。

怎么学习,做一个这样的实验,拟合出一个函数(函数就是确定性的,什么叫函数呢?给了一个自变量值一定能确定性的得到一个因变量值,这是一个函数。一个随机事件,比如说抛了个硬币,掉下来可能是正面,可能是负面,这就不叫函数)。假如说有个离散函数,不告诉你这个函数什么样子,但是我可以给你数据,根据这个函数产生数据点,自变量,因变量都有,要多少给你多少,我的问题,深度学习不是很有用嘛,可不可以从给你的数据里把这个函数学出来?很明确告诉你不行,比如说就一个普通的哈希函数,就学不出来,不是说大数据能学出来嘛,给出95%,98%的数据都给他,让他学2%,看能不能学出来。其结果2%的预测正确率对和错都是50%,那就是说和胡猜是一样的。学习结果基本上没有任何意义的,当然可能有一些误差,49%,51%了,没有意义。这么一个简单的数据driven问题深度学习都解决不了(当然函数形式不能告诉你,告诉你有那个函数的信息就不用学了)。

有做研究的博士后可以自己试一试,找个函数,这个函数甚至可以是连续的你都学不出来,当然从数学角度如果把函数的结构限制的很严,他的性质也特别好,那是另外一回事了,但自然界的函数怎么可能是特别好的,特别光滑的,于是我们经常看到从一些大牛的文章里,包括自然报道里说的,深度学习能从数据里寻找规律,上午我看那个外国人给了一个报告,最后一个点大家注意到没有,是从数据里面发现其规律,刚才这个例子的数据有没有规律呢?给你这个函数,你不能说没有吧,根据这个函数产生数据的你不能说没有规律吧,这么简单的都学不出来,更何况复杂的呢?所以深度学习有很多局限,我只是举了一个简单的例子,可以找到很多很多不能解决的问题,所以现在有很多关于这方面负面报道,也不是叫负面,因为任何一个做研究一开始总要轰轰烈烈的炒作,热度过后才是真正的研究阶段。

阿尔法狗出来的时候,你可以查查当时的报道,多少人在报道这个,现在平静了吧。我的观点,往往这个东西平静了之后才是研究的最好时机,火的时候是炒作的最好时机,现在再研究研究阿尔法狗到底有那些是科学问题,这是做研究要做的一些东西。

而且,这个DL limitations不是这些,我们再接着往下看,这个刚才说过了,这个是把函数换成连续的还不行。

我们看一看深度学习的训练机制,从这一点看一看,这个里面大家看一般来讲都是画着一个网络,中间可以有卷积,这里面前面训练过程主要是对网络赋予一个好的初始值,还是用梯度下降完成权重的调查工作。于是这里面,我刚才讲的时候提到了一点,这里面实际应用的过程中,我说的这个实际就是说量很大的时候,没有落地到一个具体问题,当这个数据量很大的时候训练的过程的时候非常长,所以有一种很简单的想法,可不可以不用这个训练模式但任然使用这个网络结构。是不是就不用这个梯度下降训练,有没有别的机制来训练这个网络?我的题目非迭代就是从这儿来的,缓解一下,可不可以把基于BP的训练时间缩短一点,就这么一点,而且当然得保证你所要的指标稳定性,这些东西没有大的损失前提下。

Limitations就不再说了,简单说几分钟我们的工作,目前我们有一种不用迭代训练这个网络,前几层直接用随机赋权的机制,后面直接求一个矩阵的伪逆,这种机制看起来很傻,很简单,但是事实证明特别的有用,真正的有用,而且计算量也很小。历史渊源,最早这种机制提出的时候是一个德国人在一篇文章中提出的,那个网络不用训练,前面几层用随机赋权的模式,后面求一个矩阵的伪逆,这个机制最早大概八几年的时候就提出了,然后经过了若干人的改进,很多个模式都是这么做的,我们何清教授也是这方面的专家,第一届关于这方面的会他就去了。

今天做的这一点工作就是想讲一讲代替机器行不行,我们显示一下后面做的一些工作。前面几层的权重随机给出,最后一层解析给出,随机赋权和用受限得到的初始权重是不是有同样的performance,体现的不太精准,但从最后的结果来看,这些层随机赋的值和受限得到的值最后的结果差不多。最后一层造成了一个最小二乘的模型,然后利用伪逆给出一个解。前面的权重是随机赋值或者用受限方式来达到的,这个是一次性完成,不需要像BP算法那样迭代若干次。我们知道深度学习里,我们一直在说前面这几层赋的初值相当于特征工程,里面起了关键作用,后面这一层不起作用,既然这样的话,如果大家猜测是对的,我们可以不用这么做了,不用BP算法,直接用这个结构外加一个其他的分类器就可以做。有人尝试过不用所谓的随机赋权网络也可以。我们这个工作的新意也不大,但确实在大量的实验里减少了训练时间,减少的特别特别多,有的可以减少上百倍,具体的就不说了,算法具体的过程,只是讲一个思想。

这是关于非迭代深度学习基本的概括,思想就是这些。关于性能我们给的一个客观的评价,你说他这个方法好吗?也好不到哪儿去。在没有研究数据本身的特点时其泛化能力也不可能强到哪儿去。这一点我想大家都是博士,博士后了,应该很清楚了,不能说设计了一个算法,泛泛地讲,这个算法的泛化能力能达到90%,人家说我的比你的好能达到95%,这些东西都是一派胡言,你有一个到95%的工作,我肯定能找到一个数据库(类似于adverserial情况),让你的算法特别差,这是肯定的。你怎么知道这个数据库在实际问题里不出现的(有人说你纯属抬杠)?用户总期待着你讲清楚在什么条件下你这个东西是很好的,时间关系就不再展开说了,这是我们工作的一点体会,发表在这个文章上。

最后几分钟继续讲一些comments。第一点,说为什么深度学习抽出来的特征符合层次化,因为符合大脑的,这个到底是不是我们的脑结构?尚未明确!第二点,大数据在深度学习里扮演了一个什么角色?这个我想很多人讲过这个东西,肯定是扮演了一个很重要的角色,也就是说如果没有大数据就不需要深度学习,深度模型是解决一个复杂数据的建模问题,大家知道神经网络越深说明参数越多,参数越多说明模型越复杂。

我这个PPT显示在这儿,大家可以网上查,说对深度学习模型数据量做的越大越好,里面蕴含的含义是什么?这个初步报告就是说训练过程的工作量,或者是说到底多长时间训练出来的,可能计算量很大,但是数据量是越大越好,这个数据量还远远没有到达充分描述复杂模型的量,所以它说数据量还是越大越好

这个PPT是深度学习的一个综述结语,它告诉你无监督学习在这里面起的作用,有监督学习只是戴了一个光环而已。有监督学习里,从机器学习的教科书里有监督学习要讲70%,无监督学习讲25%,其他那一点点是讲强化学习,一般的教科书是这么安排的。

这个PPT讲的是很早以前数学上证明了三层网络就是万能的,不需要做很高层的网络,搞来搞去把神经网络排出来的,有人证明三层证明是万能的,为什么现在还搞了这么多东西,又搞多层之后这么好呢,从数学机理上解释不清楚这件事情,我也解释不清楚,但是从若干个层面和坐标,比如说增加层数比增加结点数要好,为什么好?因为可以有连接,有不同的描述,真正的说明还没有,所以这是对做研究很好的,你能说清楚吗?比如,神经网络层数多了好还是单层节点多了好?    

最后两句话,张院士提出来的,不可解释性,深度网络的不可解释性。你训练完了一个Deep NN,不可解释性是里面的一个很大的弊病,不可避免的,解释不了,你想想你给决策者说我给你弄个网络,拟合历史数据很好,但是不能解释。决策者敢用吗?所以这是一个很大的问题,但是这个问题后来在今年的Nips会议上,Yann强调说我们不需要解释,人的大脑有限,这个东西搞出来就行了,所以是不可回答的,解释不了。到底人们还是觉得可解释好,现在很多大的指南讲出来了要研究深度神经网络的可解释性,非常难。

算法重要还是数据重要?这一些问题也是深度学习里做研究的一些基本问题,时间关系就讲到这里,谢谢大家。


CAAI原创 丨 作者王熙照

未经授权严禁转载及翻译

如需转载合作请向学会或本人申请

转发请注明转自中国人工智能学会


更多学会活动演讲实录陆续更新,欢迎关注中国人工智学会微信公众号CAAI-1981。



来源:CAAI-1981 中国人工智能学会

原文链接:http://mp.weixin.qq.com/s?__biz=MjM5ODIwNjEzNQ==&mid=2649790107&idx=3&sn=64b802b597e20cff01d139c23fd7e3f3&scene=0#wechat_redirect

版权声明:除非特别注明,本站所载内容来源于互联网、微信公众号等公开渠道,不代表本站观点,仅供参考、交流、公益传播之目的。转载的稿件版权归原作者或机构所有,如有侵权,请联系删除。

电话:(010)86409582

邮箱:kejie@scimall.org.cn

学习 数据 网络 100% 函数 梯度 深度 东西 训练 这个

推荐资讯