集智科学家张江解析:为什么复杂性需要深度学习?

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
NLP 自学习平台,3个模型定制额度 1个月
简介:

雷锋网(公众号:雷锋网)按:本文来自北京集智俱乐部。作者张江,北京师范大学系统科学学院副教授,集智俱乐部创始人、现任主席、集智科学家,腾讯公司腾云智库成员。

尽管复杂性科学一直在追求一大类终极问题的答案,如生命的起源、复杂性的起源等。但其实它的发展完全是研究方法驱动的。例如在计算机出现之前,人们是用哲学思辨和数学方程来研究复杂系统;到了90年代,圣塔菲学派兴起,多主体仿真、复杂自适应系统方法席卷了各个研究领域;2000年以后,复杂网络崛起,小世界和无标度以及各式各样的网络分析渗透到了复杂性研究的各个角落;到了2010年以后,基于大数据的复杂性研究和计算社会科学(computational social science)开始兴起。那么,站在2016年的末端展望未来,下一波的热潮将会是什么呢?有没有可能是引领工业界革命的深度学习技术呢?

实际上,将深度学习技术引入复杂性科学研究已经有了大量的研究案例。例如,最近Science上发表了一篇“用遥感和卫星数据结合来预测贫困”的研究就是一个很好的典范1。来自斯坦福大学的一个团队利用深度学习技术成功预测了非洲地区的贫困,这一研究不仅解决了困扰了社会学家们数十年的大问题,而且也打开了深度学习方法渗透进社会复杂性研究的一个新窗口。

用深度学习预测贫困

集智科学家张江解析:为什么复杂性需要深度学习?

用深度学习和遥感数据预测非洲贫困的Science文章(左),以及同期刊登的评述文章

问题的背景是这样的:非洲的贫困问题长期得不到解决,这并不是因为缺乏来自发达地区的资助,而是因为没有精确的贫困数据。这就使得对非洲的大量投资没有达到需要救助的地区,而全部落入了富人和贪官的腰包里,从而导致了更大规模的贫富差距。于是,人们想到了利用卫星拍摄到的夜光数据来预测地区的贫困,因为越富有的地区,通常夜间灯光的亮度也越高。

但是,这个结论反过来却不成立,并不是说越贫穷的地区灯光越暗。事实上,研究人员从一片黑色区域中完全区分不出无人居住的沙漠,还是贫困得连灯都用不起的村庄。怎么办呢?

集智科学家张江解析:为什么复杂性需要深度学习?

图1 复杂的训练管道,上面的流程为输入一块区域的卫星遥感数据,来预测同一区域的夜光明亮度,从而训练一个卷积神经网络以获得遥感数据中的特征。下图所示为:将卷积神经网络进行迁移,再配合上少量的贫困调查数据作为标签,训练一个普通的神经网络。最终卷积神经网络+普通网络就可以根据输入图片来预测地区贫困。摘自:文献2

斯坦福的这个研究团队巧妙地将另一种高精度、高质量的卫星遥感图像数据训练一个深度卷积神经网络(Convoluational Neural Network, CNN),以预测同区域的夜光数值大小。但这样做的目标并不真的为了预测夜光,而是为了提取遥感图像数据中的特征(例如街道、屋顶等)。然后,再利用这些特征作为输入,以及少数采样点的贫困调查数据作为标签,一起来训练一个普通的神经网络。最终,喂给这个网络一张街景地图,它就可以高精度地预测该地区的贫困程度。就这样,这个组使用了非常先进的迁移学习技术,以及复杂的机器学习训练管道(pipeline),对局部贫困程度进行了较高精度的预估(如图1)。

深度学习与多主体建模

多主体建模是复杂系统一种非常普遍而有效的研究方式。我们将系统理解为大量个体遵循简单的相互作用规则而形成的整体。例如,当我们分析人群的集体行为时,可以对每一个个体人建立模型,并假设它们都遵循极其简单的相互作用规则(如社会力模型3)。然后,我们在计算机中再造这群人的计算机仿真程序,从而模拟出人群的运动轨迹。

集智科学家张江解析:为什么复杂性需要深度学习?

社会力模型的模拟程序

尽管这种思路的确可以逼真地模拟复杂系统,但是所有的模型规则和参数几乎全部是模型构建者拍脑袋决定的。这就使得模型的准确性和可信赖程度大打折扣。

我们知道,实际上,现在的城市公共空间装满了各种各样的摄像头。大量的人群运动轨迹被记录在了视频里。那么,我们能不能自动地将视频中的个体人的运动轨迹提取出来,训练我们的主体模型,从而得到极其逼真的人群运动模拟呢?

来自清华大学自然语言处理和深度学习的一个团队就做了这样的尝试。他们为人群运动视频中的每一个人构建了一个LSTM模型(long short time memory,一种特殊的循环神经网络RNN模型,被人们大量地用于自然语言处理和机器翻译),通过自动提取视频中每一个人的运动轨迹作为训练数据,构建了能够准群预测人群运动状态的深度学习模型4。

集智科学家张江解析:为什么复杂性需要深度学习?

每一个Agent的LSTM模型,该图引自:参考文献4

该模型不仅可以预测每个人的运动轨迹,同时,它还可以自动为人群的集体运动状态进行分类和识别,以便预警人群的恐慌状态,防止踩踏的发生。也可以用来快速识别突发事件。

类似的,来自英国Sheffield大学和美国哈佛大学的一个团队尝试用对抗式机器学习的方法,让机器通过模仿自动建立多主体模型5。他们将自制的小机器人分成了三组,一组是被模仿对象,它们会按照事先指定的规则进行复杂的运动;一组是模仿者,它们会混到第一组机器人之中模仿它们的运动行为,从而尽可能地骗过辨别者的法眼;第三组是辨别者,它的任务就是区分这些机器人谁是模仿者,谁是被模仿对象。最终的效果是,随着辨别者识别准确度的提高,模仿者的模仿行为也会越来越逼近被模仿者。于是,我们便可以利用训练好的模仿者搭建一个逼真的多主体模型,来对被模仿者群体进行模拟。

尽管这些研究仍处于实验室阶段,但是我们不难想象,未来的人工智能将可能通过深度学习自动提取主体的运行规则,从而构造大规模的模拟程序。那个时候,我们将有可能更加逼真地模拟多个体的复杂系统,并在其上进行规划或政策仿真。

复杂网络中的深度学习

为什么深度学习如此厉害?不同的人会给出不同的答案。

因为它有很深的神经网络层次——一个初学者大概会如是说;

因为它可以学习超大规模数据——一个了解深度学习的行业从业人员大概会这么说;

因为深度学习技术可以自动从数据中提取特征——一个深入理解深度学习的科研人员大概会这么回答。

没错,深度学习的本质并不在层次有多深,数据规模有多大,而在于它自动提取特征的能力。

什么是特征?长度、宽度、颜色、质料、形状,等等都是特征。然而,它们全部是人为定义的。假设一种生活在频率世界之中的生物体,它大概很难看到一个物体的长度和体积。所以面对超大规模的数据,我们凭借肉眼已经很难提炼特征了,必须把这种能力赋予机器,这才是深度学习的本质。

在现代的复杂系统研究中,复杂网络已经成为了一种标准的通用描述语言。那么我们怎样用深度学习的方式自动提取大规模网络数据特征呢?

我们知道,复杂网络无非就是由点和连边构成的整体。节点或连边的特征自然就是由它所在的网络环境(上下文)所决定的。只要我们将每一个点赋予一个n维向量,就得到了整个网络的嵌入(n维空间中的一团点云)。

我们可以把语言中出现在同一句话的单词彼此相连构成一个所谓的“共现网络”,这样,每一个词就是一个节点,连边就表示同时出现。对于这种网络,2013年,Google的Miklov开创性地提出了一种用向量表示英语单词的做法,叫做Word2Vec6。通过扫描大量的文本数据,Word2Vec可以快速、高效地为每一个单词构造一个向量,即n维空间中的一个点。

相似的单词,例如红与粉在空间中会彼此靠近。更有趣的是,同一种意思的单词在不同语言的空间嵌入中具有相似的位置。例如,如果我们分别用英语和法语进行训练,那么1,2,3……等数字会在两套向量表示下具有相似的位置。如图所示:

集智科学家张江解析:为什么复杂性需要深度学习?

分别用纯英文(左)和纯法文(右)的语料训练Word2Vec得到的向量表示。我们会看到,英语的one,two,three……的位置以及对应的法语单词的位置非常相似。与此类似,哺乳类动物在两种语言的嵌入中也具有相似的位置(下面两幅图)。

集智科学家张江解析:为什么复杂性需要深度学习?

Word2Vec中涌现的向量差关系:,其中蓝色的向量(深蓝和浅蓝)都表示用Word2Vec学习得到的单词向量。它们彼此之间的差向量(红色箭头),表达了最高权力关系也近似相等

更让人震惊的是,单词之间的关系也可以自动地被Word2Vec学到,如上图这个著名的公式:v(男人)-v(女人)=v(国王)-v(王后),其中v(x)表示x这个单词的词向量。也就是说,机器会自己学习到男人相对于国王相当于女人相对于王后。所以,除了将每个单词进行向量表示以外,Word2Vec还可以隐式地学习到“最高权力”这种抽象关系。

与此类似,很多概念之间会存在着上下位的层级关系。例如,“动物”就是“昆虫”的上位词,而“昆虫”又是“蜻蜓”的上位词。我们用这些单词的向量表示分别做减法,就可以用差向量来表示这种抽象的关系9。如图:

集智科学家张江解析:为什么复杂性需要深度学习?

Word2Vec学习得到的词语之间的层级关系:首先让Word2Vec学习大量的中文语料,这样每个单词会对应一个表示(蓝色的点)。其次,我们寻找所有的上下位词层级关系,比如工人与木匠,或者运动员与足球运动员,并将它们的向量表示分别相减得到了上下位词的差向量。我们发现,这些差向量如果是同一种类别的话,比如工人-木匠,以及工人-园丁,则非常相似。所以,Word2Vec学习得到的向量表示蕴含了一种关系表示。该图摘自:参考文献9

然而,这种蕴含的关系表示并不十分明确,存在着很大的误差。于是,人们想出了各种方法来改进,其中一种比较彻底的方式是,将所有的名词实体和各种关系(包括上下位、同义词等)分别嵌入到不同的空间(即实体空间和关系空间),这样可以更全面、更准确地来表达它们10。

与此类似,我们还可以用这种方法处理其它的不同网络。

集智科学家张江解析:为什么复杂性需要深度学习?

利用与Word2Vect类似的DeepWalk算法10得到的“跆拳道俱乐部”(左侧)网络的嵌入(右侧)。其中节点是人,连边是好友关系。在这个俱乐部中,存在着4个相对独立的社团,分别被标注了不同的颜色。摘自参考文献7

得到这些向量表示又有什么用呢?它的用途有很多,例如,通过向量表示可以发现节点之间的聚类,我们只要将表示空间中彼此靠近的节点划分为一类就可以,如下图:

集智科学家张江解析:为什么复杂性需要深度学习?

该图是将带参数的网络嵌入Node2Vec算法在两种不同参数条件下用于同一个网络(上、下),并根据向量表示做聚类分析后得到的可视化效果。其中同一种颜色对应同一种聚类。上图得到的聚类是网络的社团划分。下图的聚类得到的却是生态位(叶子节点、桥接节点以及中心节点)的划分。摘自文献8

 更重要的是,这些花样繁多的向量表示解决了每个节点的特征描述问题以作为节点分类和预测问题的基础。一般情况下,节点的向量表示就是机器自发学习出来的节点特征,该特征反应的是每一个节点所在整个网络之中的生态地位。

于是,根据机器学习得到的特征,运用神经网络技术,我们便可以进行节点的分类与预测了。我们可以通过社交网络识别哪一个节点更可能是恐怖分子。我们也可以根据一篇文章在引文网中的地位预测它是否可以获得诺贝尔奖提名,等等。

图卷积神经网络

我们知道,现在的深度学习技术最主要的突破其实都是在图像识别领域和自然语言领域。从技术上讲,图像属于一种静态的二维数组,而自然语言实际上可以看做一种时间上的符号序列。它们都有非常标准的数据结构。

但是,网络或者图,却是一种介于二维数组和一维序列之间的不规则数据类型。我们不能把网络看做图像,因为网络的节点之间没有图像的像素之间那样规整的邻域关系。我们同样不能把网络看做是一维的节点和连边序列,因为我们任意颠倒节点之间的顺序,却对应的是同一张网络。

于是,问题来了。既然深度学习可以在图像识别以及自然语言处理中大展身手,那么是否也能在复杂网络的相关任务中崭露头脚呢?

具体的,让我们考虑这样一种所谓的图分类问题(Graph classification problem)。如果我给你一张网络,没有任何其它辅助信息,你能不能告诉我它属于哪一类?是社交网络还是生物网络?是无标度网还是小世界网?这个问题有什么实际背景呢?我们知道,复杂网络可以看做是复杂系统的骨架(backbone),那么当我们处理不同的复杂系统时,我们便可以通过它们的骨架来进行识别、分类和预测。比如,我们可以将一个社群的社交网络看做社群的骨架,那么我们就能否根据它预测网络的运行状况;再比如,如果将一个国家的投入产出网看做是国家经济系统的骨架,那么我们就能给国家的产业结构进行“诊脉”。

这些问题的背后需要一种新的突破,它在5年前刚刚开始萌芽,这就是图卷积神经网络技术(Graph convolutional neural network,GNN)11。该套技术通过扩展基于图像的卷积神经网络(Convolutional neural network,CNN),来处理大量的网络数据。并有可能达到和CNN同等的精确程度。

集智科学家张江解析:为什么复杂性需要深度学习?

GNN模型的架构,类似于图像处理中的CNN,GNN可以对一个网络进行卷积操作,并做粗粒化,从而实现多层信号处理,摘自文献12

在很多文献中,人们不仅用CNN来识别图像,更多的是用它来提取图片中物体的特征。例如在前面讲述的用卫星遥感图像预测贫困的工作中,研究者用CNN的最主要目的是提取出图像中屋顶、道路等特征。有了这些机器自动学习得到的特征之后,我们便可以将学好的网络用于各种领域。例如,我们可以将CNN和LSTM结合,从而实现 “看图说话”;将CNN配上强大的强化学习,就能实现让计算机和人类一样看着视频打游戏;将CNN配上强大的蒙特卡洛搜索,就能实现战胜人类大师的AlphaGo。

与此类似,一旦GNN技术实现突破,那么我们就真的可以通过网络来对宏观复杂系统进行诊脉。城市的规划很糟糕吗?让我们利用GNN扫描一下城市的道路网络,就能给城市规划打分;美国和中国的金融市场哪一个更容易崩盘?让GNN扫描一下它们各自的股票相关网络就能给出答案;今天Facebook的心情如何?让GNN扫描一下社交网络就能给出类似这样的描述:“今天的Facebook心情很糟,因为微信又挖走了五千万用户……囧”。

展望

复杂系统需要深度学习吗?我的回答当然是需要。这是因为深度学习可以自动化提取对象中的隐藏特征,这将结束几十年来复杂性科学家手工发明特征指标的历史。人类的智慧虽然闪烁着灵光,但面对庞大的数据,人工智能还是更胜一筹。一旦GNN、网络嵌入等技术获得突破,所有的特征发现就全部变成了自动化流水线,我们便可以站在一个更高的层次来理解复杂系统。

深度学习在图像领域中的大量突破告诉我们,一旦机器可以学会自动提取特征,我们就可以以一种人类难以想象的精准度来进行预测和识别。例如,现在深度学习在人脸识别的准确率已经高达99%了,而人类的准确率也仅仅只有97%。所以,在未来,精确地认识、调控复杂系统并非完全不可能。

而更有意思的是,当我们把深度学习和传统技术,包括多主体模拟、系统动力学相结合,就可能实现对复杂系统的自动建模。我们可以设想这样一种机器,你只要不断地喂给它大量的数据,它就有可能自动吐出来一个多主体模型,并告诉你精确调控系统的方案。如果能实现这一步的话,人工智能就真的可以管理社会了。

然而,反对论者批评深度学习是一个黑箱模型:尽管它可以很好地工作,但我们人类仍然无法理解。这就好像中医看病,完全凭借老医师的个人经验和感悟,无法给你一套符合西医科学标准的解释。但是,也许复杂系统就需要这种中医式的思维方式。因为就像小蚂蚁无法理解蚁群的行为一样,超级复杂的相互作用关系也许压根就不是我们人脑智慧可以处理得了的。我们只能借助更加强大的机器来应付超大规模的复杂性。

反过来讲,复杂性科学也可以帮助我们更好地理解深度学习模型。例如,最近的一批物理学家就在尝试用变分重整化群(Variational renormalization group)的方法来理解深度学习网络13,每增加一层神经元节点就是在对原问题进行更高层次的粗粒化。所以,层次的加深有助于我们从更高的尺度去把握数据中的规律。

总而言之,长期以来复杂性科学就是一个非常具有包容性的学科。它是各种数理方法、工程技术的大熔炉。所以,将深度学习融入复杂系统是一个必然趋势。

参考文献

1.Jean N, Burke M, Xie M, et al. Combining satellite imagery and machine learning to predict poverty.[J]. Science, 2016, 353(6301):790-794.

2.Blumenstock J E. Fighting poverty with data[J]. Science, 2016, 353(6301):753-754.

3.Helbing D, Moln T. Social Force Model for Pedestrian Dynamics[J]. Physical Review E Statistical Physics Plasmas Fluids & Related Interdisciplinary Topics, 1995, 51(5):4282-4286.

4.Hang Su, Yinpeng Dong, Jun Zhu, Haibin Ling, and Bo Zhang, Crowd Scene Understanding with Coherent Recurrent Neural Networks, Proceedings of the Twenty-Fifth International Joint Conference on Artificial Intelligence (IJCAI-16), 2016

5.Wei Li , Melvin Gauci and Roderich Gro: Turing learning: a metric-free approach to inferring behavior and its application to swarms, https://arxiv.org/pdf/1603.04904v2.pdf

6.T. Miklov: Efficient Estimation of Word Representations in Vector Space, 2013

7.Perozzi B, Al-Rfou R, Skiena S. DeepWalk: Online Learning of Social Representations[J]. arXiv preprint arXiv:1403.6652, 2014.

8.Aditya Grover, Jure Leskovec. node2vec: Scalable Feature Learning for Networks. KDD 2016.

9.R Fu et al: Learning Semantic Hierarchies via Word Embeddings, Meeting of the Association for Computational Linguistics, 2014

10.Lin Y, Liu Z, Sun M, et al. Learning entity and relation embeddings for knowledge graph completion[J]. 2015.

11.Defferrard M, Bresson X, Vandergheynst P. Convolutional Neural Networks on Graphs with Fast Localized Spectral Filtering[J]. 2016.

12.Niepert M, Ahmed M, Kutzkov K. Learning Convolutional Neural Networks for Graphs[J]. 2016.

13.Mehta P, Schwab D J. An exact mapping between the Variational Renormalization Group and Deep Learning[J]. Computer Science, 2014.


本文作者:集智


本文转自雷锋网禁止二次转载,原文链接

相关文章
|
1月前
|
机器学习/深度学习 自然语言处理 语音技术
揭秘深度学习中的注意力机制:兼容性函数的深度解析
揭秘深度学习中的注意力机制:兼容性函数的深度解析
|
13天前
|
机器学习/深度学习 人工智能 算法
机器学习与深度学习:差异解析
机器学习与深度学习作为两大核心技术,各自拥有独特的魅力和应用价值。尽管它们紧密相连,但两者之间存在着显著的区别。本文将从定义、技术、数据需求、应用领域、模型复杂度以及计算资源等多个维度,对机器学习与深度学习进行深入对比,帮助您更好地理解它们之间的差异。
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
探索深度学习与自然语言处理的前沿技术:Transformer模型的深度解析
探索深度学习与自然语言处理的前沿技术:Transformer模型的深度解析
109 0
|
1月前
|
机器学习/深度学习 人工智能 自动驾驶
深入解析深度学习中的卷积神经网络(CNN)
深入解析深度学习中的卷积神经网络(CNN)
46 0
|
2月前
|
机器学习/深度学习 人工智能 算法
揭开深度学习与传统机器学习的神秘面纱:从理论差异到实战代码详解两者间的选择与应用策略全面解析
【10月更文挑战第10天】本文探讨了深度学习与传统机器学习的区别,通过图像识别和语音处理等领域的应用案例,展示了深度学习在自动特征学习和处理大规模数据方面的优势。文中还提供了一个Python代码示例,使用TensorFlow构建多层感知器(MLP)并与Scikit-learn中的逻辑回归模型进行对比,进一步说明了两者的不同特点。
108 2
|
4月前
|
UED 开发者
哇塞!Uno Platform 数据绑定超全技巧大揭秘!从基础绑定到高级转换,优化性能让你的开发如虎添翼
【8月更文挑战第31天】在开发过程中,数据绑定是连接数据模型与用户界面的关键环节,可实现数据自动更新。Uno Platform 提供了简洁高效的数据绑定方式,使属性变化时 UI 自动同步更新。通过示例展示了基本绑定方法及使用 `Converter` 转换数据的高级技巧,如将年龄转换为格式化字符串。此外,还可利用 `BindingMode.OneTime` 提升性能。掌握这些技巧能显著提高开发效率并优化用户体验。
71 0
|
4月前
|
Apache 开发者 Java
Apache Wicket揭秘:如何巧妙利用模型与表单机制,实现Web应用高效开发?
【8月更文挑战第31天】本文深入探讨了Apache Wicket的模型与表单处理机制。Wicket作为一个组件化的Java Web框架,提供了多种模型实现,如CompoundPropertyModel等,充当组件与数据间的桥梁。文章通过示例介绍了模型创建及使用方法,并详细讲解了表单组件、提交处理及验证机制,帮助开发者更好地理解如何利用Wicket构建高效、易维护的Web应用程序。
62 0
|
22天前
|
机器学习/深度学习 传感器 数据采集
深度学习在故障检测中的应用:从理论到实践
深度学习在故障检测中的应用:从理论到实践
99 5
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习的原理与应用:开启智能时代的大门
深度学习的原理与应用:开启智能时代的大门
67 16
|
14天前
|
机器学习/深度学习 网络架构 计算机视觉
深度学习在图像识别中的应用与挑战
【10月更文挑战第21天】 本文探讨了深度学习技术在图像识别领域的应用,并分析了当前面临的主要挑战。通过研究卷积神经网络(CNN)的结构和原理,本文展示了深度学习如何提高图像识别的准确性和效率。同时,本文也讨论了数据不平衡、过拟合、计算资源限制等问题,并提出了相应的解决策略。
71 19

推荐镜像

更多