随便说说人工智能

人工智能这个词差不多是在2016年开始映入大多数人眼帘的。伴随着韩国高手李世石在一直被视为“人类专属”的围棋项目上1:4输给谷歌的AlphaGO,人工智能这个概念仿佛凭空出现,并渐渐升温。短短一年之后,曾经认为自己足以打败人工智能的世界围棋第一人柯洁又在乌镇围棋峰会上被升级版的AlphaGO以3:0击败,从那一天开始,关于人工智能的讨论就再也没有停止。

人工智能会取代人类的工作吗?

让人工智能开车靠谱吗?

人工智能会毁灭人类吗?

……

可是等等,到底啥是人工智能啊?


人工智能这个概念其实既不新颖,也不神秘。早在计算机诞生之前,就有无数的机械师倾尽毕生所学,希望制造出可够解决复杂问题的“智能机械”,这些机器之中最为复杂精密的当数19世纪20年代“诞生”的差分机640px-Babbage_Difference_Engine

这台花了整整十年也只完成了1/7的巨大机器,能够以相当高的精度计算完成任意的多项式求值运算,经过优化的差分机2号甚至可以完成三角函数求值等一系列更加复杂的运算。

进入19世纪,随着电子计算机的出现,人们对“智能机器”的期望也大大提升了,越来越多的学者希望能够制造出能够独立思考的像人一样的机器。在1956年的一次学术会议上,人工智能正式成为一个学科。

可是制造像人一样的机器谈何容易,光是人类的思维如何产生这一点,都一直是一个未解之谜。计算机科学家们只好先放低对自己的要求,转而研究“拥有学习或推导能力的”机器。既然要求放低了,再用“人工智能”这个词来描述自己的工作就总显得有点不着边际,于是机器学习这个概念出现了,机器学习技术从属与人工智能这个学科领域,专指拥有学习能力的机器或者程序。为了和想象中拥有情感,能够独立思考的“智能机器”形成区分,机器学习技术也被称作是弱人工智能,弱人工智能不需要拥有情感,不需要独立思考,只需要在某个给定任务上具有根据经验调整自己的表现的能力即可,这一特点也决定了弱人工智能永远不会做出与预设目标相悖的事情(所以毁灭人类什么的是不可能的啦)。相对地,强人工智能则被用来形容电影中的“天网”一样的拥有自我意识的机器。不过到目前为止,学界依旧对强人工智能的实现持悲观态度,有的学者甚至断言这种技术不可能实现。

那么让我们暂时不提强人工智能,来看看弱人工智能,或者说机器学习,究竟是什么。


专家系统

首先我们来思考一个问题:

人类是怎样学习的呢?

根据我们自己的经验来看,人类似乎是通过记忆书本上的一条条公理和定理,以这些理论为基础不断推导,进而得出特定问题的答案的。那么可不可以给计算机程序也设定一些必须遵守的既定规则,让计算机通过这些规则推得给定问题的结论,并把推得的正确结论也加入到规则库中,来实现机器的不断学习呢?

当然可以。早在在几十年前,就有很多计算机程序使用了这种被称作专家系统的方法,实现了对任意数学定理的证明。这种方法听上去是不是有点熟悉?对了——这种技术正是我们大多数人都听说过的演绎推理

专家系统,或者说演绎推理固然清晰简明,但在实际应用中还是存在着它致命的问题——需要人为给定规则。如果只做一个证明数学定理的人工智能,这个方法还说得过去,毕竟公理就那么几条,所有定理都能通过公理推导出来。可一旦把专家系统放到实际生活中,它可就一点也不“专家”了——任何一个实际问题都可能存在着无穷多的基本规则,哪怕有任何一条考虑不到位,都可能导致专家系统无法进行下一步的推理。这个时候,人们开始希望计算机能够拥有试错的能力,并且根据所犯的错误来调整自己的行为,减少错误的发生。


感知机

这一次计算机科学家们从神经科学那里取得了灵感。人的那道是怎样工作的呢?中学生物告诉我们,在人的大脑里有大量的神经元,他们一旦获得化学信号,就会把这些信号处理并传递出去,产生一个新的激励或者抑制信号,错综复杂的神经元网络就这样不断地接受外界的信号,控制肢体和思维。

image002

可不可以用类似的结构制造人工智能呢?

当然可以。毕竟不知道该怎么做的时候,模仿总是没错的。上世纪40年代,第一次有人提出了“人工神经网络”这个概念。人们通过计算机模拟出大量的神经元结构,每个神经元相当于一个函数,接受一些输入参数,处理后输出一个值:

Ncell

将大量这种人工神经元连接在一起,就形成了一个有点像人类神经系统的人工神经网络;

SingleLayerNeuralNetwork_english

这种结构可以将输入的数据进行相对复杂的处理,最终输出几个值来代表它对输入数据的响应,因此也被称作感知机。在当时,感知机结构在房价预测、数据分类这样的任务上取得了极好的表现,只需要输入房屋大小、房屋数量或者其他数据的特征,经过训练的感知机就可以正确预测对应的房价或则数据对应的类别,一时间引起了巨大的轰动。

可惜的是,在感知机研究进行了20年之后,两位科学家马文·明斯基和西摩·帕尔特共同发表了一项研究,在数学层面证明了感知机只能做简单的线性回归和线性分类问题,甚至连异或这样的运算都无法完成,更别说实现人们所希望的对指定任务的学习了。这样一来,曾经被人们寄予厚望的感知机算是正式被宣判了死刑,连政府都表示不再对研究感知机的科学家提供任何支持。


神经网络

然而几年以后,事情出现了另一项转折——计算机科学家Werbos在1975年提出了一个叫做“反向传播”的算法,这个算法使用偏微分的链式法则实现对多层神经网络的误差分析,进而使得训练更复杂的神经网络成为了可能。

simple_feedforward_network

通过增加神经网络的层数,之前的感知机不能完成的异或运算等任务终于得到了实现,经过证明,这种结构可以对任意的非线性函数进行拟合——换句话说,可以对任何的输入数据进行精确的分类——我们经常会用到的手写文字识别就是使用了这样的技术。

可是这个和开头说到的AlphaGO那样的人工智能也不是一种东西啊?

别急,已经差不多了——


深度学习

随着现代计算机计算能力的不断增长,训练层数更多的神经网络逐渐成为了可能,人们也在原有神经网络的结构上加以改造,设计出了卷积神经网络(CNN,常用作图像识别),连续神经网络(RNN,拥有“短期记忆”,常用语自然语言处理)等全新的网络结构。现在人们吧层数多、结构复杂的神经网络称作为深度神经网络,将这类机器学习方法称作深度学习(Deep Learning),AlphaGO正是因为使用了深度学习技术,才能获得了超越人类的棋力,而开发AlphaGo的公司将自己命名为DeepMind,不难想到深度学习在他们心目中的地位。

1042406-20170220122323148-1704308672

这些新的结构和更多的网络层数使得神经网络的学习能力大为增强,下围棋、玩游戏、视频换脸、甚至凭空生造以假乱真的图像都不在话下——就比如——你能猜到下面三张人脸中哪张是计算机生成的吗?

IMG_2775

事实上,这三张照片都是使用深度学习技术生成的假图片,而这还仅仅只是深度学习所打开的全新世界中微不足道的冰山一角。

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×