AlphaGo 背后的人工智能:机器学习和神经网络

文章目录

一、说明

棋盘游戏围棋被视为人工智能最具挑战性的任务之一,因为它"复杂、基于模式且难以编程"。计算机程序 AlphaGo 战胜李世石成为人工智能和计算机工程史上的重要时刻。我们可以看到 AlphaGo 的巨大能力,但人们对它如何"思考"知之甚少。AlphaGo 的规则是学习而来的,而不是设计出来的,它运用机器学习以及多个神经网络来创建学习组件,使围棋水平更高。从与英国国家医疗服务体系的合作可以看出,AlphaGo 在其他领域也有着广阔的应用前景。

二、背景

2016 年 3 月 9 日至 3 月 15 日,世界排名第二的职业棋手李世石与谷歌 DeepMind 公司开发的计算机程序 AlphaGo 进行了一场围棋比赛。AlphaGo 以 4-1 战胜李世石,成为人工智能历史上的重要时刻。这是计算机首次在围棋比赛中击败人类专业棋手。韩国大多数主要电视网络都转播了这场比赛。在中国,有 6000 万人观看了比赛;美国围棋协会和 DeepMind 在 YouTube 上对比赛的英文直播吸引了 10 万观众。数百名媒体记者和专家评论员一起观看了比赛 [1]。是什么让这场比赛如此重要?要理解这一点,我们必须首先了解围棋的根源。

三、围棋游戏

围棋,在中国称为weiqi ,在日本称为igo,是一种抽象的双人棋盘游戏,已有 3000 年历史。它是一种在 19*19 的棋盘上进行的抽象策略棋盘游戏。围棋从空棋盘开始。每轮,玩家在棋盘上放置一块黑色或白色的棋子 [2]。游戏的总体目标是使用棋子围住比对手更多的领地。虽然规则非常简单,但它创造了一个有深度和细微差别的挑战。因此,棋盘游戏围棋因其复杂性和基于模式的状态而被视为人工智能最具挑战性的任务之一。

在常见的计算机游戏中,人工智能通常使用游戏树来根据对手可能采取的行动来确定游戏中的最佳下一步行动。游戏树是一个有向图,将游戏状态(位置)表示为节点,将可能的移动表示为边。树的根表示游戏开始时的状态。下一级表示后续移动后的可能状态 [3]。以简单的游戏井字游戏为例,可以在图 1 中直观地表示所有可能的游戏状态 [3]。

图 1:井字游戏的完整博弈树[3]。

然而,对于像围棋这样复杂的游戏,在游戏中找到最佳下一步很快就变得不可能了,因为围棋的游戏树将包含 10^761 个节点,这对于计算机来说是一个庞大的数字(宇宙中只有 10^80 个原子,仅供参考)[4]。这也解释了为什么围棋长期以来一直被视为人工智能面临的最大挑战之一。大多数棋盘游戏的人工智能都使用人工智能工程师手工创建的规则。由于这些规则可能不完整,它们通常会限制人工智能的智能。例如,对于围棋的某个阶段,设计者认为计算机应该选择十个选定步骤中的一个,但这些步骤对于专业玩家来说可能是愚蠢的。设计者的围棋游戏水平会影响人工智能的智能水平。

四、AlphaGo 算法

那么 AlphaGo 是如何解决围棋的复杂性以及设计者游戏水平所施加的限制的呢?之前所有的围棋人工智能方法都依赖于某种博弈树搜索,并结合手工制定的规则。然而,AlphaGo 大量使用机器学习来避免使用手工制定的规则并提高效率。机器学习是一种人工智能,它使计算机能够无需明确编程即可学习。机器学习专注于开发计算机程序,这些程序可以教会自己在接触新数据时成长和改变。机器学习系统搜索数据以寻找模式。但它不是像数据挖掘应用程序那样提取数据供人类理解,而是使用数据来检测模式并相应地调整程序操作 [4]。AlphaGo 还使用深度学习和神经网络来教自己下棋。就像iPhotos能够帮你把照片按照不同的角色分成不同的相册,是因为它存储了无数经过像素级处理的角色图像一样,AlphaGo的智能,也是建立在它已经学习了数百万个人类下过的围棋位置和走法的基础上的。

AlphaGo 的智能依赖于两个不同的组成部分:博弈树搜索程序和简化树搜索程序的神经网络。树搜索程序可以看作是一种蛮力方法,而卷积网络则为游戏玩法提供了一定程度的直觉 [5]。神经网络在概念上类似于其他人工智能中的评估函数,只是 AlphaGo 的评估函数是学习而并非设计的,从而解决了设计者的游戏水平影响人工智能智能水平的问题。

五、神经网络

一般来说,AlphaGo 内部主要训练两种神经网络:策略网络和价值网络。这两种网络都将当前游戏状态作为输入,通过不同的公式对每个可能的下一步动作进行评分,并输出获胜概率。一方面,价值网络提供了对当前游戏状态价值的估计:在当前状态下,黑方最终获胜的概率是多少?价值网络的输出是获胜概率。另一方面,在当前游戏状态下,策略网络提供了选择哪种动作的指导。输出是每个可能的合法动作的概率值(网络的输出与棋盘一样大)。概率值较高的动作(动作)对应于更有可能导致获胜的动作。AlphaGo 最重要的方面之一是学习能力。深度学习使 AlphaGo 能够通过与自己进行大量游戏来不断提高其智能。这训练了策略网络,以帮助 AlphaGo 预测下一步动作,这反过来又训练了价值网络来确定和评估这些位置 [5]。 AlphaGo 会展望可能的走法和排列,考虑各种可能发生的情况,然后选择它认为最有可能成功的走法。

总体而言,两个神经网络的结合让 AlphaGo 避免了过多的工作:策略网络关注当前并决定下一步,以节省搜索整个博弈树的时间;价值网络关注长远,分析整体情况以减少博弈树中可能出现的走法。然后,AlphaGo 会平均两个网络的建议以做出最终决定。AlphaGo 之所以如此重要,是因为它不仅遵循博弈论,还涉及学习部分。通过与自己对弈,AlphaGo 的围棋水平自然而然地越来越高。

六、AlphaGo 的未来

围棋比赛固然精彩,但更重要的是 AlphaGo 展示了人工智能算法将如何影响我们的生活;人工智能将使人类变得更好。在第二场比赛的第 37 步,AlphaGo 做出了一个非常令人惊讶的决定。一位欧洲围棋冠军说: "这不是人类的棋步。我从来没见过人类下出这步棋。太漂亮了。"这位通过与 AlphaGo 对弈帮助训练 AlphaGo 的欧洲围棋冠军说,虽然他几乎输掉了所有的比赛,但由于程序的不寻常的下法,他对围棋的理解得到了很大的提高。这也反映在他世界排名的跃升上 [6]。

据数据显示,在美国,每年有约40500名患者因误诊而死亡。医疗信息量巨大,医生不可能对每一件小事都进行梳理。像AlphaGo这样的人工智能能够收集系统中所有的医学文献历史以及医疗案例、医学图像和其他数据,并输出最佳解决方案来帮助医生。最近,AlphaGo与英国国家医疗服务体系(NHS)展开合作,以数字解决方案改善医疗服务流程。AlphaGo利用其计算能力分析健康数据和记录。[6]这将为患者开辟新的治疗机会,并协助医生治疗患者。效率的提高也将降低保险公司的成本[6]。

七、人工智能的未来

人们已经从最优秀的人类身上学到了很多东西,但现在从人工智能身上可以学到更多的知识。[6] 人工智能在某些情况下可以超越人类的能力,这可能会让一些人感到不舒服。人工智能除了以 AlphaGo 为代表的棋盘游戏人工智能外,还运用了许多技术,包括视觉识别和语音识别等多个技术领域。人工智能在某一专门领域超越人类并不奇怪。但在综合智能和学习能力方面,人类比人工智能要好得多。虽然深度学习取得了很大进展,但机器学习仍然依赖于人工设计的过程。而且,深度学习需要大量数据作为训练和学习的基础,学习过程不够灵活。

所谓全面人工智能将控制人类,对人类社会造成毁灭性影响的说法纯属虚构,人工智能超越人类并非不可能,但那一天还很遥远,而"超越"仍是在人类的控制之下。

八、结论

无论是 AlphaGo 还是李世石获胜,总体而言胜利属于人类。AlphaGo 背后的人工智能利用机器学习和神经网络,通过与自己对弈不断提高技能。这种人工智能技术也为我们的生活带来了改善的潜力。

人工智能赢得了围棋比赛,但人类赢得了未来。

参考

[1] "谷歌的 AlphaGo 如何击败围棋世界冠军" The Atlantic。网络。2016 年 3 月 28 日 < http://www.theatlantic.com/technology/archive/2016/03/the-invisible- opposite/475611/>

[2] "围棋"维基百科。网页。https://en.wikipedia.org/wiki/Go_(game)

[3] "游戏树"维基百科。网页。https://en.wikipedia.org/wiki/Game_tree

[4]"机器学习的定义" WhatIs.Web .2016年2月 <http://whatis.techtarget.com/definition/machine-learning?

[5] "Google DeepMind 的 AlphaGo:工作原理" The tastehit。网络。2016 年 3 月 16 日 https://www.tastehit.com/blog/google-deepmind-alphago-how-it-works/

[6] "AlphaGo 可以塑造医疗保健的未来" TMF。网站。2016 年 4 月 5 日 http://whatis.techtarget.com/definition/machine-learning

相关推荐
Alkali!1 小时前
2-5 softmax 回归的简洁实现
人工智能·数据挖掘·回归
哥廷根数学学派2 小时前
基于Maximin的异常检测方法(MATLAB)
开发语言·人工智能·深度学习·机器学习
xrgs_shz2 小时前
人工智能、机器学习、神经网络、深度学习和卷积神经网络的概念和关系
人工智能·深度学习·神经网络·机器学习·卷积神经网络
zzyincsdn3 小时前
从FasterTransformer源码解读开始了解大模型(2.1)代码通读03
人工智能·llm·fastertransform
dc爱傲雪和技术4 小时前
相机参数与图像处理技术解析
图像处理·人工智能·数码相机
QQ21696368814 小时前
Hi6602 恒压恒流SSR电源方案
人工智能·硬件架构·硬件工程·信息与通信·智能硬件
wodertianna4 小时前
机器学习原理之 -- 神经网络:由来及原理详解
人工智能·神经网络·机器学习
续亮~5 小时前
9、程序化创意
前端·javascript·人工智能
yuzhangfeng5 小时前
【大模型】解锁语言模型潜能:提示工程的艺术
人工智能·语言模型·自然语言处理
丘山子5 小时前
牙牙学语:使用 PyTorch 从零开始构建和训练 GPT-2
人工智能·gpt·nlp