查看原文
其他

人工智能调研---跨界乱弹一通琴

洞穴之外 理念世界的影子 2021-06-23

公众号:理念世界的影子

文不可无观点,观点不可无论据。



人工智能调研---跨界乱弹一通琴


针对《运载火箭停机能力(动力冗余)与交叉输送技术》一文中介绍的运载火箭停机能力设计,曾有人问我:动力冗余是人工智能吗?我认为不算!


对人工智能特别感兴趣,经过一周阅读,做了个调研。对此领域涉猎不多,全凭自己的理解,如果有常识性错误,请大家不吝指出。


调研分为两个部分。


第一部分为人工智能技术历史的调研,对人工智能技术级别的分类,以及动力冗余所处的分类位置。


第二部分为神经网络的调研,与动力冗余关系不大,但对此更感兴趣。


参考书籍:

[1] 松尾丰著,赵函宏、高华彬译,人工智能狂潮---机器人会超越人类吗?机械工业出版社,2015。

[2] Michael A. Nielsen, “Neural Networks and Deep Learning”, Determination Press, 2015 (神经网络与深度学习,Xiaohu Zhu Freeman Zhang翻译),强烈推荐

人工智能技术

+



参考书籍:

松尾丰著,赵函宏、高华彬译,人工智能狂潮---机器人会超越人类吗?机械工业出版社,2015。


人工智能(Artificial IntelligenceAI),是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。回顾过去,人工智能曾反复经历了数次热潮严冬时代的循环交替,才发展到了今天的水平,并从单纯技术变成了全社会话题。


推理与搜索的时代(1952-1969)


计算机在使用“推理和搜索”来解决特定问题方面取得较大进展,其技术特征是搜索树,如玩游戏时游戏人物的跑动,以及国际象棋等,都是将路径或后续走法抽象为搜索树,采用深度或广度优先算法进行搜索。


1952年西洋跳棋程序的出现,驳斥了计算机只能做算术运算,只能做被告知的事的思想,人工智能初现萌芽。1956年的达特茅斯会议被认为是人工智能诞生标志,它定义了一个独立的领域,这个领域不是数学或控制论的分支,因为它提出了复制人的才能,如创造性、自我改进和语言应用的思想。但实际上,研讨会在技术上并未导致任何突破。冷静思考就会发现,这个时期的人工智能解决的问题非常有限(“玩具问题”),也就在这个时期,人工智能的权威明斯基针对风靡一时的神经网络,指出了它在特定条件下的局限性;美国政府出台了ALPAC负面报告,认为机器翻译在短时期内将难有成果,人们对人工智能的失望情绪随之蔓延,70年代其迎来第一个寒冬。


基于知识的系统(1982-1987)


AI研究的第一个浪潮期呈现的问题求解美景是一种通用的搜索机制,试图串联基本的推理步骤来寻找完全解,尽管通用,但不能扩展到大规模的或困难的问题实例。80年代,人工智能卷土重来,与简单推理和搜索等简单规则实现人工智能不同,它使用强有力的、领域相关的知识,以允许更大量的推理步骤。如希望能将大量的病理知识输入计算机取代医生,用大量的法律知识输入计算机取代律师,但在输入过程中发现程序必须具备常识性知识,如病理中,什么是肚子?疼痛又是什么疼法?用于处理分子程序推断的Dendral程序(1969)是早期例子,它吸收了专业知识专用规则,并第一次把知识(规则)和推理部件清楚地分离开。


知识导入使计算机变得更聪明,具备了一定的产业实用性。1982第一个成功的商用专家系统R1开始在数据设备公司(DEC)运转,几乎每个主要的美国公司都有自己的AI研究小组,并且正在使用或研发专家系统。这段时间,AI产业从1980年的几百万美元暴涨到1988年的数十亿美元。80年代有人专门启动了一项野心勃勃的Cyc计划,试图将人类拥有的所有一般性知识都输入到计算机里面,当时知识描述之复杂与困难超出当初设想,30年过去了,这个项目仍在继续,好像永远没有尽头。1981年,日本宣布了第五代智能计算机计划,目标是与人对话、翻译语言、解释图像、像人一样推理等,10年过去后,发现美好设想终究是一场梦。各种类似的野心勃勃的目标均未兑现,令人感到知识描述进行到穷尽几乎是一件不可能的事情,很多公司因为其做出的过分承诺而垮掉,大概1987(美国)~1995(日本)年前后,人工智能进入第二个冬天。


机器学习悄然兴起(1993-现在)


第二次人工智能浪潮时,海量的知识永远也输不完,而且输入的符号与其所表示的意义是脱节的,对计算机而言,掌握语义是极为困难的事情。1993年,Mosaic浏览器出现,模式识别领域的数据呈爆炸性增长,1998年google出现,数据挖掘研究变得盛行,贝叶斯网络的形式化方法被发明出来,尤其是互联网网页猛烈影响下,处理网页文本的自然语言处理和机器学习的研究获得了很大发展,统计自然语言处理领域迅速成长,比如翻译,它不考虑语法结构及上下文意思,只是机械地将对译概率较高的词语找出来组成句子即可。


深度学习霸占榜首(2006-现在)


1943年沃伦•麦卡洛克(Warren McCulloch)和沃尔特•皮兹(Walter Pitts)的人工神经网络的概念及人工神经元的数学模型,可以模拟或/与/非逻辑函数,开创了人类神经网络研究的时代。1956年,心理学家Frank Rosenblatt首次提出了模拟人类感知能力的机器,称为感知机,提出了让人工神经元学习的方法,开启了深度学习第一次浪潮。但为解决复杂问题,必须采用多层感知机(就是人工神经网络),而Rosenblatt概括的简单学习规则不适用于多层网络结构。


1986年,David Rumelhart、Geoffrey Hinton、Ronald Williams提出了反向传播算法(back-propagating,BP),将神经网络的训练量减少到连接的线性阶次。


1989年,Yann LeCunn将 BP神经网络成功应用于手写邮编识别,证明神经网络完全能够胜任识别任务。开启了深度学习第二次浪潮。90年代,BP神经网络再次进入死胡同,实践表明,深于一两个隐藏层的深度神经网络遭遇了梯度消失或爆炸问题,即网络输出累积的反向传播错误信号不是以几何级数迅速收缩,就是超出界限,神经网络寒冬来临。直到30年后的2006年,Hinton发表“深度信念网”的经典论文,表明名为深度信念网络的神经网络可以使用一种称为贪婪逐层训练的策略来有效地训练,使研究者有能力训练以前不可能训练的比较深的神经网络,开启了神经网络的第三次浪潮,AlphaGo的成功更是将深度学习推向巅峰。深度学习内采用的无监督学习或半监督学习,可充分利用大量的未标注样本,更是突破监督学习算法的“特征获取”的巨墙,看到了人工智能的曙光。


2010年,Hinton启动GPU+攻下语音识别界;2011年,出现Theano和Torch等支持深度学习的软件库;2012年,Hinton率队参加计算机视觉比赛ImageNet,攻下计算机视觉界;2013年,深度学习大会ICLR成立;2014年,深度学习在自然语言处理,尤其是机器翻译上取得突破;2015年,深度学习进军艺术创作界;2016年,深度学习系统AlphaGo轻松战胜李世石。人工智能已经从单纯技术变成了全社会话题。


小结


从以上历史,可将我们常说的“人工智能”划分为几个级别:


  • 级别1. 传统人工智能:输入与输出的组合数目多得惊人,使用了推理及搜索,或引入了知识库,如引入了推理和搜索的清扫机器人、医疗诊断程等;

  • 级别2. 引入机器学习的人工智能:基于大数据进行自动判断的人工智能,其推理机制及知识库是以数据为基础通过学习获得,过去属于级别1的东西可以通过引入机器学习升级为级别2;

  • 级别3. 引入深度学习的人工智能,能够对机器学习时的数据表示所用变量(特征量)本身进行学习的人工智能。


技术上,动力冗余涉及的弹道重规划,以及控制率和摆角分配重构,仍不脱离控制工程学范畴,不是真正意义上的人工智能。而发动机停机前的诊断环节,理论上可以基于推理,甚至基于大数据学习,但作者认为应用于追求100%可靠的火箭工程的可能性不高。在真实工程应用中,基于上下限判断和有限关联的逻辑是最为可能的形式,也不是真正意义的人工智能。


引入深度学习的人工智能

+



参考书籍:

Michael A. Nielsen, “Neural Networks and Deep Learning”, Determination Press, 2015 (神经网络与深度学习,Xiaohu Zhu Freeman Zhang翻译),强烈推


人工智能的以上级别所处的阶段相互重叠,如第一次浪潮期已有神经网络,第三浪潮期仍有搜索树,如AlphoGo就采用蒙特卡洛树搜索多次模拟未来棋局。但毋庸置疑,深度学习神经网络,目前已成为绝对主流,已经到了不说几个专有名词都没法上街了的程度了


神经网络


下图为大脑神经元。其中树突接受刺激并将冲动由轴突传入另一个神经元。人类大脑有1000亿个神经元,每个神经元最多与10000多个其他神经元相连。人工神经网络模拟了大脑神经元工作原理,通过权重和激活神经元的激活函数(一般选sigmoid函数,即)传输信号,通过训练算法,调整权重解决给定问题。



图 大脑神经元


图 模拟人工神经元


一个全连接神经网络见下图,Cybenko在1988年证明,三层网络可以逼近任意函数。这就是神经网络的机理。如何通过学习和训练求连接的权值,是神经网络研究的根本问题。


图 全连接神经网络


假设输入层为500x500的节点,输出层含7个节点,分别代表7种模式。如果隐藏层为106规模,则网络连接规模为5002x106x106x7=1.75x1016。在神经网络应用上陷入一个两难的困难:


1)模式复杂的函数,浅层网络可能需要指数级的节点来计算,规模巨大大,存储、学习、计算均无法完成。


2)深度网络从本质上能获得超过浅层的更强的能力,但由于反向传播算法存在“梯度消失问题”,即误差逐层传播逐层递减(或增加),使得学习难以进行。


卷积神经网络


由于难以学习的问题,神经网络进入了长达30年的一个寒冬,好在2006年有了深度学习。尤其是近些年来,卷积神经网络(CNN)已经成为众多科学领域的研究热点,特别是模式分类领域,由于该网络避免了对图像的复杂前期预处理,可以直接输入原始图像,因而得到了更为广泛的应用。


对于图像输入,在原理上,全连接层的神经网络在完全相同的基础上对待相距很远和彼此接近的图像输入像素,是完全没有必要的。受生物学研究启发(1981年Hubel、Wiesel、Sperry关于人类视觉机理的诺贝尔医学奖),模拟动物视觉皮层的V1层和V2层中简单细胞和复杂细胞在视觉系统的功能的一种神经网络技术,即卷积神经网络提供了一种方法来特化神经网络,使其能处理具有清楚的网络结构拓扑的数据,以及将这样的模型扩展到非常大的规模。这种方法在二维图像拓扑上取得了巨大的成功。


将图像输入视为500x500的方形排列神经元,其值对应于输入的500x500的像素光强度。将输入图像进行小的、局部区域的连接。将10x10的区域(对应于100个输入像素点),连接到1个像素点上,形成100个输入的神经元,见下图所示。在这一步,除了连线比全连接神经网络少了,计算方法是一样的。


图 局部连接示意图


在输入图像上交叉移动此区域,形成491x491的隐藏层,所有神经元共享权重形成1个特征映射,以检测完全相同的特征,此共享权重称为卷积核。为了开展图像识别,设置10~30个特征映射,以检测多种局部特征的类型,形成一个完整的卷积层,见下图所示。

图 多重局部特征网络示意图


可在卷积层之后设置池化层,进一步简化从卷积层输出的信息。如最大值池化即从一块nxn的区域中选取最大值,输出到下一层的单个神经元,见下图所示。常见的池化层包括最大值池化、L2池化等。



图 池化层示意图


从上所述,卷积和池化只是全连接神经网络的一种蜕化情况,很多连接不需要了,很多权重取相同值合并了。如采用共享权重和偏置,减少了参与的卷积网络的参数。对于每个特征需要100个共享权重加上一个共享偏置,则30个特征总共需要3030个参数来定义卷积层。比原全连接第一层的规模减小106


又是卷积,又是池化的,干什么呢?有人说,卷积相当于各类积分,池化相当于滤波,就算是吧。还有文章分析,它们干了特征提取的事情,如提取边缘、提取特征。都很形象,但仍感觉非本质。


在网络中多次应用卷积层和池化层,最后连接一个全连接层,形成实用的卷积神经网络。在复杂的ImageNet判别竞赛(判别图像中物体类型,如狗类,需判断是阿拉斯加雪橇犬还是西伯利亚雪橇犬)上,2012Krizhevsky, SutskeverHinton使用了5个卷积和池化层,以及2个全连接层,取得了84.7%的准确率;2014Google使用了22层神经网络(称为Inception),达到了93.33%的准确率;2015年微软研究院提出了一种新的CNN构架ResNet,采用110层模型取得了96.43%的准确率。而两位人类专家在测试中的准确率分别为94.9%88%


图 卷积神经网络示意图(来自KSH)


反向传播训练学习算法


实践表明,卷积网络是第一批能使用反向传播有效训练的深度网络之一。现在仍不完全清楚为什么卷积网络在一般的反向传播网络被认为已经失败时反而成功了,但它确实成功了。



以下内容不感兴趣可跳过。


对于特定输入,神经网络的输出为a,而训练样本提供的结果y,网络学习和训练的目标就是调整权值,使a等于或接近y。采用代价函数C作为训练误差



其中n是训练样本总数,求和运算遍历每个训练样本xy=y(x)是对应的目标,L表示网络的层数,aL=aL(x)是当输入为x时网络输出的激活值向量。


针对此神经网络的反向传播算法的公式如下所示,这个公式太太重要了,原文摘录如下。它对于理解概念大有好处,建议读参考文献时驻足一两天。



其中是第l-1层的第k个神经元到第l层的第j个神经元的连接上的权重,表示第l层第j个神经元的偏置;表示第l层第j个神经元的激活值,是此神经元上的误差。反向传播算法具体为:



在实现上述计算过程中,存在一些依赖于经验且影响计算收敛的调节量,以及使用方法,需要在训练过程中反复尝试。



激活函数和代价函数的匹配选择


当神经元激活函数选用sigmoid函数(1/(1+e^-z)),训练代价函数选二次函数时。简单考虑输入1,输出0的单输入单输出神经元,权重偏导数,在神经元输出大于1时,即神经网络犯明显错误时,取值很小,反而导致学习缓慢。


图 sigmoid函数示意图


图 使用sigmoid函数的单输入单输出神经网络训练速度

如将代价函数定义为交叉熵函数

由于a为sigmoid函数输出结果,可确保a位于0~1之间,此时C恒为正,计算可得,避免了采用二次函数学习中出现的学习缓慢导数项,直接使用误差输出作为偏导数,当神经元出现严重错误时能以更快速度学习。


一般地,输出层采用sigmoid激活函数,使用交叉熵函数作为代价函数;如输出层采用线性激活函数,则采用二次函数作为代价函数。


过度拟合和规范化


如训练样本数远远少于待拟合权重参数时,即使神经网络能够很好地拟合已有数据,但也不一定是一个好模型。模型中有足够的自由度可以描述已有数据集,但可能没有真正洞察现象的本质,对新的数据很难泛化,对于一个新的场景,模型可能预测错误。为高效训练需要采用一些技术来降低过度拟合的影响,如规范化技术。其基本想法是权重衰减,即增加一个额外的所有权重的平方和项到代价函数上。



规范化的效果是让网络倾向于学习小一点的权重,它是寻找小权重和最小化原始代价函数的折中,两者相对重要性的值来控制。小一点的权重在某种程度上,意味着更低的复杂性,即对数据给出了一种更简单却更强大解释,是应该优先选择的方案。大量实践检验表明,规范化让网络显著减轻了过度拟合的影响


还有一种dropout技术,它不修改代价函数,而是直接修改网络本身。随机(临时)地删除网络中一半的隐藏神经元,同时让输入层和输出层的神经元保持不变。在一个小批量样本进行这些反向传播计算后,对有关权重和偏置进行更新,然后首先重置弃权的神经元,然后再选择一个新的随机的隐藏神经元子集进行删除。通过不断重复,网络将学会一半神经元被弃权情形下的权重和偏置。此过程看似胡搞没道理,但可以认为是减少了复杂的互适应的神经元,强制那些在神经元的不同随机子集中更加健壮的特征加强学习,网络对丢失个体连接的场景更加健壮,因此其结果和规范化有相似之处,即倾向于更小的权重。实践表明,dropout技术在提升神经网络性能上应用相当成功,在训练大规模深度网络时尤其有用,而这种网络中过度拟合问题经常特别突出


图 dropout技术图示


使用开源软件包及训练学习中的调试


以上方法除了自编程序外,可以使用各种开源库。如TensorFlow、Torch、Theano(2011年)等。利用Theano内置操作,可以用极为简短的程序完成网络搭建、卷积、池化、激活阈值、反向传播学习训练等。Theano还封装了CPU和GPU交互(2014年Raina、Madhavan等的比较表明,利用GPU进行计算,与CPU相比速度提升70倍以上)。还可以使用Google发布的Inception-ResNet(2016年),它吸收了ImageNet比赛中的微软残差网络(ResNet)技术,可以直接用于开展卷积神经网络的编制和训练。


实际上,目前大量开源库的出现,算法推导、神经网络搭建和程序编制已不是任何问题。难点在于有效网络的设计,计算过程的调试,即超参数的适当选取,极其依赖于经验。如学习速率的选取,规范化参数的选取,初始化权重的选取等。当使用神经网络解决问题时,寻找好的超参数是很困难的一件事。在不合适的选取下,网络表现可能就像随机噪声产生器,学习不到任何知识。在一次训练可能需要几个小时甚至几周情况下,可能出现花费若干天在调整参数而无任何进展的情况。一般来说,可采用简化网络加速试验的方法,摸索超参数掌握经验,并逐渐提高识别准确率。当然,随着技术进步,也必将出现越来越多的自动技术。


神经网络中的几个问题理解


1)训练量的问题。与人类相比,当前的人工神经网络学习效率较低,人类学习1000盘即可成为高手,而AlphaGo在战胜李世石前学习了上百万盘。大量训练样本是当前神经网络学习的必需条件。如手写数字识别的MNIST数据集包含了7万张带标记的手写数字,用于图像识别的ImageNet包含了超过1400万张标记图像的数据库。


2)神经网络的可解释性问题。经过训练学习后的连接、权重等,目前仍是无法解释的黑盒子。因此目前在图像识别、自然语言处理等领域大量应用,但确定性数学领域的应用尚未普及。


其它


在国务院于2017年7月8日印发《新一代人工智能发展规划》后,新一个风口已经来临,好像什么技术,不挂上人工智能都不算高科技,也无法定义未来。浏览互联网,感觉有些技术虽挂着个人工智能的名字,其实和人工智能关系不大。那为什么要往这上面靠呢?原因可能有如下两个:


1) 确实不懂。“你的脑子如果根本不知道世界上曾经有过伦勃朗、贝多芬、但丁和拿破仑,那你不是很容易认为自己是一个伟大的人物吗?这小伙子智力有限的脑子里只有一个思想,...,而且因为他根本没有想到世界上...还有其他有价值的东西,所以他有一切理由去自我陶醉。” 


2)确实太懂了。“站在风口上,猪都会飞。”,风大呀,乱刮呀。明知是风口还扭扭捏捏不站上去,更是猪!





往期文章:

交叉输送能提高运载能力吗?

运载火箭停机能力(动力冗余)与交叉输送技术

简易轨道计算程序使用说明

“电子号”火箭运载能力有150千克吗?

 新型发动机循环---让商业航天变得更容易》

 发动机为什么长这样---发动机形式与摆角分配公式》

 二向箔与降维攻击---FH成功的技术逻辑链及对我们后续工作的启示(3)

 惟情怀和信仰不灭,祝祖国明日更强---记FH首飞(2)

 坚志而勇为,谓之刚---Falcon重型首飞有感(1)

 新时代开启的新征程---Falcon9回收箭体复飞成功》


微信扫一扫

关注“理念世界的影子”

版权声明:

本文是"洞穴之外"作者原创文章,欢迎转载,须署名并注明来自“理念世界的影子”公众号。



    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存