文/随风的晓
2016年3月,Google旗下Deepmind公司开发的人工智能机器人AlphaGo以4:1的总比分战胜围棋世界冠军、职业九段李世石。这是人类历史上人工智能首次在公开场合中战胜人类围棋冠军,也是人工智能史上的一个历程碑。
一时间,关于人工智能的报道铺天盖地地见诸各大媒体,直到今天这个话题仍然方兴未艾。人工智能离我们的生活似乎已经非常近了,但是它到底是什么?是否意味着机器也像我们人类一样能够思考了呢?
如果取“人工智能”四个字查看它的百度词条解释,你应该能看到关键词“机器学习”,然后就是大段大段技术研究、主要成果等的文字描述,但是还是没搞明白什么是人工智能。
然后继续百度“机器学习”,你能看到词条解释它是人工智能的核心,然后是一大堆专业名词如概率论、统计学、逼近论、凸分析……然后你就被这种专业名词套专业名词的情况搞得凌乱了,深深吸一口气的时间,你瞬间做出了一个明智的决定:这种高大上的东西得交给专家,我们普通老百姓还是洗洗早点睡吧。
以上场景就是我在初次接触人工智能时的遭遇。前Google资深研究员吴军博士在他的著作《数学之美》提到世界上最好的学者总有办法深入浅出地把大道理讲给外行听。可惜,生活中我们总是遇到半桶水、喜欢故弄玄虚的专家。
其实人工智能远没有想象中那么复杂,现阶段的人工智能离真正能够思考的“人工生命”也差得很远。想搞清楚什么是人工智能,我们得先搞清楚三个核心名词:机器学习、人工神经网络以及大数据。
首先是机器学习。
顾名思义,机器学习是指通过某种方法让机器能够“学习”。听着很悬其实很简单,为了便于理解我们从一个简单的例子讲起。
生活中我们经常会遇到判断题,需要我们去判定一个事物是a还是b。如果今天机器也需要解决这个问题,机器该怎么做?如果这个问题进一步简化到二维平面上,我们在一张白纸上分别画了一堆蓝色圆点和一堆红色的X(如下图),该如何区分蓝色圆点和红色的X?
人怎么区分蓝色圆点和红色的X我就不多说了,对机器而言最简单的方法就是在纸上划一条线,将蓝色圆点和红色的X分开,左侧就是蓝色圆点,右侧就是红色的X。
如果用机器学习的语言描述这个过程,就是计算机接收到一个区分蓝色圆点和红色的X的分类任务,计算机在这个二维平面使用一个函数f(x) = ax+b,根据所有蓝色圆点和红色X的坐标,确定出这个函数f(x)的斜率a和截距b。最后计算机根据每个蓝色圆点或者红色的X所在的坐标(在直线的左侧还是右侧),判断它是蓝色圆点还是红色的X。
以上整个过程就是一个最简单的机器学习过程。函数f(x)被称为机器学习算法,而利用所有蓝色圆点和红色X确定最终f(x)的过程,就是机器学习的模型训练过程。
生活中的分类问题会更复杂,会让你识别动物,识别建筑物……等等。但是整个机器学习的过程本质是一样的,区别无非是从上述的二维平面的识别问题上升到n维空间,使用的机器学习算法更加复杂而已。
然后是人工神经网络。
首先不要被它的名字唬到。
它同人脑的神经网络没有半毛钱的关系,更不是那种模拟人脑的神经网络来实现某些强大功能的黑科技。除了借用生物学的名词来做一个形象的比喻外,它本质上还是一种分类机器学习算法,只不过这种机器学习算法能实现的功能非常强大而已。
经典人工神经网络算法分为三层,如上图。第一层有输入点X1和X2,第二层有中间点s1和s2,第三层有输出点Y1和Y2。我们仍然用之前识别蓝色圆点和红色的X的例子来解释什么是人工神经网络。
假如我们已经知道其中某个蓝色圆点或者红色的X的坐标是(x1, x2),我们将坐标x1和x2分别输入到人工神经网络的输入点X1和输入点X2中,得到中间点s1和s2,进而计算出输出点Y1和Y2。我们假定:如果Y1>Y2,判定坐标(x1, x2)对应的是蓝色圆点,否则判定它是红色的X。
当然,在这个过程中我们需要大量的蓝色圆点和红色的X的坐标,计算出最合适的函数s1、s2、y1和y2各自的系数,从而训练出最合适的人工神经网络模型。
如何?经过一番简单的解释后,是不是觉得人工神经网络其实也没有那么神秘了。
最后,说说大数据的事情。
大数据其实更是简单不过。虽然在一些介绍大数据的书籍将大数据也说得神乎其神,但是就本质而言大数据的确如它的名字一样,指的是海量的数据。
那么,这海量的数据、也就是所谓的大数据有什么神奇的作用呢?在以前,我们没有、同时也没法处理数量巨大的数据,因此像人口普查、估计海洋鱼类资源等等工作都采用抽样统计的方式,用样本数据的情况来估计总体的情况。
使用抽样的方式虽然简单,但是也够粗暴,很多时候会遇到抽样的结果和真实的总体情况差很远的情况。比如说,因为某个时间点一所大学的校门口出来10个学生都是男生,就得出这所大学没有女生的结论,这个抽样统计结果要是公布出来,就只能贻笑大方了。
因此到了后来,通过大量数据来推断总体情况、而不是少量的抽样统计推断总体,越来越受到大家的肯定。
而大数据与前面提到的机器学习结合,用大量数据来训练机器学习算法,得到的算法模型远比用少量数据训练的算法模型准确。
搞明白了以上三个名词,我们也就能理解人工智能了。
到目前这个阶段,人工智能说穿了,就是在大数据的支持下,利用包括人工神经网络在内的各种机器学习算法,让计算机实现包括图像识别、自然语言处理、语音识别在内的等等功能。
再回过头看看开头提到的AlphaGo的事情。
2017年5月,AlphaGo在继击败李世石九段后,在乌镇围棋峰会上再次3:0完胜当时排名第一的世界围棋冠军柯洁。
为什么说AlphaGo击败世界围棋冠军具有里程碑意义呢?
先看看AlphaGo是个什么东西。
就本质而言,AlphaGo是一款基于多层人工神经网络的人工智能程序。它通过两个不同的人工神经网络“大脑”合作来改进下棋。第一个大脑落子选择器,用于预测每一个合法下一步的最佳概率;第二个大脑棋局评估器,在给定棋子位置情况下,预测每一个棋手赢棋的概率,通过整体局面判断来辅助落子选择器。
再看看AlphaGo的对手柯洁。
查询百度词条,柯洁出生于1997年,2003年正式开始学围棋,2014年在gorating世界围棋等级分排名中首次排名第一。年仅17岁的柯洁,历经11年就能成为人类围棋世界第一人,怎么说都算得上出类拔萃。根据柯洁曾经4年下棋4000多盘的经历推算,与AlphaGo交锋前的柯洁一生下棋的盘数大致在12000~20000盘左右。
而它的对手AlphaGo呢?据AlphaGo团队的人工智能科学家介绍,比赛前输入模型的棋局数不下数百万盘,几乎是柯洁的百倍。在AlphaGo之后,AlphaGo的进化版本 AlphaGo Zero很快又超越了AlphaGo击败柯洁时的水平,而且AlphaGo Zero达到这个水平仅仅用时21天。
是的,训练用时21天的人工智能就达到了一个人类最顶尖围棋手12年的训练水准,这也是今天的人工智能最强大的地方。
我们普通大众不必要对人工智能过于恐慌,但是也不能对于它一无所知。只有了解它,正视它,才能在未来的生活与人工智能更和谐的一同生活在这个世间。