阿尔法狗是什么 阿尔法狗究竟是个什么狗
昨天是柯洁九段和AlphaGo的决战,弈至209手,柯洁拿起两颗棋子盘上示意认负。至此,柯洁0:3负于AlphaGo。
如果没有AlphaGo,人工智能的大幕或许还要再晚几年登上人类历史舞台,本文将试图用最通俗易懂的方式对AlphaGo做一回深度解剖,揭开“深度学习”技术的神秘面纱。
其实早在去年三月,韩国顶尖棋手李世石和AlphaGo交手,以1:4落败,自此AlphaGo惊艳全球。而今AlphoGo的系统经过优化升级,输入数据也有大量扩充,李世石可能真的会成为人类史上唯一一个赢过AlphaGo的棋手。
在解析AlphaGo之前,我们先看一下两位选手自己的赛后采访。
李世石
柯洁
其实从李世石和柯洁的采访中,都表达了一些类似的观点,有兴趣的朋友可以去查看两人完整的采访实录,这里小编直接晒出如下结论:
1、AlphaGo的确非常厉害,但也并非完全不可战胜,棋手归结于自己的棋艺和发挥
2、AlphoGo十分理性,没有情绪波动,这是与人最大的不同,而且几乎不失误(仅与李世石对战时有一局出现误算下出恶手,但如今早已修复)
3、AlphaGo具有创新能力和全局观,能超越顶尖棋手的思维下出惊人的落子
4、AlphaGo在乱战中曾陷入长考,一旦稳定局面或对手出现恶手则会立即占据优势
相信对AlphaGo团队来说一点都不意外,因为这些反馈都一一证实了AlphaGo的程序算法和原理;国内曾有媒体称AlphaGo在稳操胜券后有意退让示弱,细思极恐,这些纯属炒作,如果读者想理解AlphaGo的原理就必须理解“深度学习”的概念和“蒙特卡洛”算法。
小编预测只有不到7%人会看到最后原理部分,所以放到最后,我们先看一下青年导师马总、中国围棋界元老聂卫平是如何看待的。
马云
对于马云的这番言论,聂卫平回应说:“马云是搞什么的我不知道,他说说他专业的东西或许还行,听他说围棋那就是笑话。” 小编对马总绝对的敬仰尊重,但私以为,马总并没有完整的听取阿里智囊团的完整汇报,更没有深入去了解什么是“深度学习”。
李彦宏曾说,互联网只是开胃菜,人工智能才是主食。如果说过去互联网 的风口上阿里的表现要领先百度,那么在人工智能的判断上恐怕阿里要为自负付出代价。聂老对AlphaGo的看法,个人认为是非常客观的。
聂卫平
聂老在一开始就承认了自己的一个错误思维,这其实正是“穷尽计算”和“深度学习”两个划时代算法的差异,我们只有及时更新思想,才能以正确的姿势迈入下一个时代。
温馨提示:前方高能,高考数学130以下如无法理解不需过度责备自己。
机器在棋艺上超越人类,最早具有代表性的当属国际象棋,但象棋和围棋对计算机来说有本质不同,因为象棋的规则更加简单,计算机可以采取“穷尽计算”的方法反推最优的走法,即计算机在短时间内以其强大的计算能力预测出所有走法的排列组合,然后选择可以赢的走法击败对手,这个原理相对容易理解;而围棋则不然,由于排列组合过多,运算量过大,计算机的计算能力亦无法采取穷尽计算的方式来推导,而是采用深度学习的方法和大量的棋谱来训练机器。
深度学习后的AlphaGo能力取决于系统的设计以及样本(棋谱)的质量和数量。(这里小编更大胆的设想一下,当前AlphaGo仅仅根据棋谱作为输入,若引入对手的情绪感应来针对性的调整,增加计算深度,将更加可怕)
深度学习是机器学习研究中的一个新的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本,当然,也包括棋局。AlphaGo的计算本质上是由一个的向量矩阵(当前棋局)作为输入,经过深度(从一个输入到一个输出的最长路径的长度)计算,产生一个新的向量矩阵(落子后棋局)作为输出(还记得大学学过线性代数么?别说数学没用,数学是划时代科学创新的基础)。
而这个深度计算的过程,类似于人脑的神经网络,是综合了以往的记忆或者说经验来综合判断反射的,深度越充分,即考虑的因素越多越全面,则决策越理性,这也是为什么人年龄越大越成熟,反之如果深度不足就有可能出现误判。
设计好AlphaGo的机制后,AlphaGo团队将输入大量的棋谱供其学习,AlphaGo将根据输入的棋谱不断学习,根据不同输入输出的胜率,优化深度计算过程中的各项参数、权重,从而训练出各种输入下最理性的输出,随着优质棋谱的大量输入,可以说AlphaGo的大脑中已经经历的人类围棋史上几乎所有的对弈,这种方法无法像国际象棋机器人那般无敌,但却可以通过海量的数据无限趋近于顶尖水准,因此,李世石和柯洁以往和其他棋手的对弈,也都已经被AlphaGo消化吸收,反过来,李和柯也并没有办法通晓所有棋招,这个世界上很多棋手或许不如他们,但并不意味着每一步的水准都要低于他们,古人云,“三人行,必有我师”,AlphaGo在和李、柯的对弈中下出了天马行空的走法,正是AlphaGo在其他棋谱中吸收的高胜率输出。
深度学习模型
以上充分解释了四点结论,那么,AlphaGo究竟如何知道万亿中决策中,究竟哪一步才是最佳的呢?他为什么需要大量高质量棋谱的训练来矫正?他真的像动物园里的表演一样,是可以被训练的吗?要解释这些终极问题,就不得不提到蒙特卡洛算法。
蒙特卡洛算法的原理,是通过大量随机样本,去了解一个系统,从而得到计算结果。蒙特卡洛算法在计算机运算能力突进后得以用一种新的思维解决诸多实际问题,在这里以π的计算为例:
随机落点
假设在正方形内随机落点10000个,计算他们与中心的距离即可判断是否在圆的内部,当样本足够大,我们可以假设落点均匀分布,圆内的点应当占所有落点总数的π/4,实际计算时当样本达到30000个,π值的计算误差为0.
07%。这便是一个典型的蒙特卡洛算法展示。AlphaGo的本质也是通过大量的数据解析,来寻找胜率最高的落子,棋局每变化一次都会重新测算,所以他能保持高度理性,AlphaGo团队称其为“落子选择器”,此外,AlphaGo的系统还引入了“棋局评估器”作为决策辅助,添加了一定权重,其与柯洁对弈中占据优势后“故意放水”很可能是“棋局评估器”在确定胜局的条件下,偏向保守的步伐,因为AlphaGo的最终设定是“胜利”,而非碾压。
AlphaGo和李世石对弈赢得100万美金,与柯洁对弈赢得150万美金,均捐予联合国慈善机构,让我们感谢这条狗狗,当然,也感谢谷歌。
AlphaGo颠覆了我们对围棋的认知,但他还仅仅只是人工智能的冰山一角,但毫无疑问,他掀开了人工智能的时代大幕,让我们得以窥见豹斑。人工智能不会一蹴而就,它将首先在大数据充足、应用场景典型的领域率先颠覆,改善人类的生活,他也将毫无疑问产生自己的智能,甚至“自我”的意识,霍金的预言或将在偶然中成为现实,但潘多拉的魔盒已然打开,变革面前,我们,唯有拥抱。