姓名:白国乐
学号:17021210898
专业:信号与信息处理
转载自:https://baike.baidu.com/item/%E9%98%BF%E5%B0%94%E6%B3%95%E5%9B%B4%E6%A3%8B/19319610?fr=aladdin,有删节
【嵌牛导读】2017年10月18日,DeepMind团队公布了最强版AlphaGo ,代号AlphaGo Zero。
【嵌牛鼻子】AlphaGo
【嵌牛提问】什么是AlphaGo?
【嵌牛正文】旧版原理
深度学习
阿尔法围棋(AlphaGo)是一款围棋人工智能程序。其主要工作原理是“深度学习”。“深度学习”是指多层的人工神经网络和训练它的方法。一层神经网络会把大量矩阵数字作为输入,通过非线性激活方法取权重,再产生另一个数据集合作为输出。这就像生物神经大脑的工作机理一样,通过合适的矩阵数量,多层组织链接一起,形成神经网络“大脑”进行精准复杂的处理,就像人们识别物体标注图片一样。
阿尔法围棋用到了很多新技术,如神经网络、深度学习、蒙特卡洛树搜索法等,使其实力有了实质性飞跃。美国脸书公司“黑暗森林”围棋软件的开发者田渊栋在网上发表分析文章说,阿尔法围棋系统主要由几个部分组成:一、策略网络(Policy Network),给定当前局面,预测并采样下一步的走棋;二、快速走子(Fast rollout),目标和策略网络一样,但在适当牺牲走棋质量的条件下,速度要比策略网络快1000倍;三、价值网络(Value Network),给定当前局面,估计是白胜概率大还是黑胜概率大;四、蒙特卡洛树搜索(Monte Carlo Tree Search),把以上这三个部分连起来,形成一个完整的系统。[3-4]
两个大脑
阿尔法围棋(AlphaGo)是通过两个不同神经网络“大脑”合作来改进下棋。这些“大脑”是多层神经网络,跟那些Google图片搜索引擎识别图片在结构上是相似的。它们从多层启发式二维过滤器开始,去处理围棋棋盘的定位,就像图片分类器网络处理图片一样。经过过滤,13个完全连接的神经网络层产生对它们看到的局面判断。这些层能够做分类和逻辑推理。
第一大脑:落子选择器 (Move Picker)
阿尔法围棋(AlphaGo)的第一个神经网络大脑是“监督学习的策略网络(Policy Network)” ,观察棋盘布局企图找到最佳的下一步。事实上,它预测每一个合法下一步的最佳概率,那么最前面猜测的就是那个概率最高的。这可以理解成“落子选择器”。
第二大脑:棋局评估器 (Position Evaluator)
阿尔法围棋(AlphaGo)的第二个大脑相对于落子选择器是回答另一个问题,它不是去猜测具体下一步,而是在给定棋子位置情况下,预测每一个棋手赢棋的概率。这“局面评估器”就是“价值网络(Value
Network)”,通过整体局面判断来辅助落子选择器。这个判断仅仅是大概的,但对于阅读速度提高很有帮助。通过分析归类潜在的未来局面的“好”与“坏”,阿尔法围棋能够决定是否通过特殊变种去深入阅读。如果局面评估器说这个特殊变种不行,那么AI就跳过阅读。
这些网络通过反复训练来检查结果,再去校对调整参数,去让下次执行更好。这个处理器有大量的随机性元素,所以人们是不可能精确知道网络是如何“思考”的,但更多的训练后能让它进化到更好。[4-6]
操作过程
阿尔法围棋(AlphaGo)为了应对围棋的复杂性,结合了监督学习和强化学习的优势。它通过训练形成一个策略网络(policy
network),将棋盘上的局势作为输入信息,并对所有可行的落子位置生成一个概率分布。然后,训练出一个价值网络(value
network)对自我对弈进行预测,以
-1(对手的绝对胜利)到1(AlphaGo的绝对胜利)的标准,预测所有可行落子位置的结果。这两个网络自身都十分强大,而阿尔法围棋将这两种网络整合进基于概率的蒙特卡罗树搜索(MCTS)中,实现了它真正的优势。新版的阿尔法围棋产生大量自我对弈棋局,为下一代版本提供了训练数据,此过程循环往复。
在获取棋局信息后,阿尔法围棋会根据策略网络(policy
network)探索哪个位置同时具备高潜在价值和高可能性,进而决定最佳落子位置。在分配的搜索时间结束时,模拟过程中被系统最频繁考察的位置将成为阿尔法围棋的最终选择。在经过先期的全盘探索和过程中对最佳落子的不断揣摩后,阿尔法围棋的搜索算法就能在其计算能力之上加入近似人类的直觉判断。
2017年1月,谷歌Deep Mind公司CEO哈萨比斯在德国慕尼黑DLD(数字、生活、设计)创新大会上宣布推出真正2.0版本的阿尔法围棋。其特点是摈弃了人类棋谱,只靠深度学习的方式成长起来挑战围棋的极限。[7-8]
新版原理
自学成才
AlphaGo此前的版本,结合了数百万人类围棋专家的棋谱,以及强化学习的监督学习进行了自我训练。
AlphaGoZero的能力则在这个基础上有了质的提升。最大的区别是,它不再需要人类数据。也就是说,它一开始就没有接触过人类棋谱。研发团队只是让它自由随意地在棋盘上下棋,然后进行自我博弈。[9]
“这些技术细节强于此前版本的原因是,我们不再受到人类知识的限制,它可以向围棋领域里最高的选手——AlphaGo自身学习。” AlphaGo团队负责人大卫?席尔瓦(Dave Sliver)说。
据大卫·席尔瓦介绍,AlphaGoZero使用新的强化学习方法,让自己变成了老师。系统一开始甚至并不知道什么是围棋,只是从单一神经网络开始,通过神经网络强大的搜索算法,进行了自我对弈。
随着自我博弈的增加,神经网络逐渐调整,提升预测下一步的能力,最终赢得比赛。更为厉害的是,随着训练的深入,DeepMind团队发现,AlphaGoZero还独立发现了游戏规则,并走出了新策略,为围棋这项古老游戏带来了新的见解。[10]
一个大脑
AlphaGoZero仅用了单一的神经网络。在此前的版本中,AlphaGo用到了“策略网络”来选择下一步棋的走法,以及使用“价值网络”来预测每一步棋后的赢家。而在新的版本中,这两个神经网络合二为一,从而让它能得到更高效的训练和评估。[10]
神经网络
AlphaGoZero并不使用快速、随机的走子方法。在此前的版本中,AlphaGo用的是快速走子方法,来预测哪个玩家会从当前的局面中赢得比赛。相反,新版本依靠地是其高质量的神经网络来评估下棋的局势。[10]