翻译Deep Learning and the Game of Go(1)绪论部分

关于这本书

这本书旨在通过一个实用而有趣的例子来引入机器学习:构建一个围棋人工智能。到第三章结束,你将能做出一个可以运行的围棋程序,即使它还比较弱。从第三章结束开始,之后的每一章都会介绍新的方法去改进你的AI, 你可以通过实验学习到每种技术的优点和缺点,到最后一章时,你的AI会达到最强,在那一章我们会展示AlphaGo和AlphaGo Zero是如何将所有技术整合到一起变成不可思议的强大AI

谁应该读这本书

这本书是为那些想开始试验机器学习的软件开发人员编写的,他们更喜欢实用的方法而不是数学方法。我们需要你有Python基础, 虽然您可以在任何现代语言中实现相同的算法。我们不需要你对围棋有任何了解;如果你偏爱国际象棋或类似的游戏,你可以适用这本书中的大多数技术去做你喜欢的游戏。 如果你是一个围棋玩家,当你看到你的AI学会下棋的时候肯定很激动。我们当然可以做到!

路线图

这本书有三个部分,涵盖14章和5个附录。

第一部分:介绍本书其余部分的主要概念

第一章(面向深度学习):给出了该学科人工智能、机器学习和深度学习的轻量级和高级概述。我们说明了它们是如何相互关联的,以及运用这些技术在这个领域中你可以做到什么和不能做到什么
第二章(围棋是一个机器学习难题),本章介绍了围棋的规则,并说明了我们可以希望教电脑下棋时能做些什么
第三章,实现你的第一个围棋机器人,在这一章 我们用Python实现了围棋棋盘,落子和下整盘棋。到本章结束时,您就可以做出最弱的围棋AI了

第二部分:机器学习和游戏AI提供了技术和方法的基础,以创造一个强大的围棋人工智能。特别是,我们将介绍AlphaGo使用的三种非常有效的技术:树搜索、神经网络和强化学习。

树搜索

第四章(使用树搜索进行对弈):概述了搜索和评估游戏落子序列的算法。我们先从最简单的暴力最小最大搜索开始,然后引入α-β剪枝和蒙特卡洛搜索法来逐步提升算法

神经网络

第五章(开始使用神经网络),本章给出了人工神经网络的实用介绍。您将从头学习如何通过Python一个能预测手写数字的神经网络。
第六章(为围棋数据设计了一个神经网络),本章解释了围棋数据如何共享与图像数据相似的特征,并引入了用于落子预测的卷积神经网络。在这一章中,我们开始使用最流行的深度学习库Keras来构建我们的模型。
第七章(从数据中学习:一个深度学习机器人),我们应用前面两章中获得的实际知识来构建一个由深层神经网络驱动的围棋机器人。我们使用业余高手的实际对局数据去训练这个机器人,并且我们还指出了这种方法的局限性。
第八章(部署机器人),本章我们会让你把AI部署到服务器上,这样人类就可以在用户界面与它对弈了。您还将学习如何让您的机器人与其他机器人一起对弈,无论是在本地还是在Go服务器上。

强化学习

第九章(通过实践学习:强化学习):本章涵盖了强化学习的基本知识,以及我们如何在围棋中使用它进行自我对弈。
第十章(带有策略梯度的强化学习):本章详细地介绍策略梯度,这是改进第七章落子评估的一种重要方法。
第十一章(带有价值函数的强化学习),本章展示了如何用所谓的价值函数评估棋盘棋盘盘面,这是与第四章所讲的树搜索相结合的强大工具。
第十二章(带有Actor-Critic算法的强化学习):介绍一种可以预测给定的棋盘盘面和下一步的长期价值的技术,这将帮助我们有效地选择下一步。

第三部分:整合早期所有模块做出一个最接近AlphaGo的应用程序。

第十三章(AlphaGo:合并之前的所有模块),首先我们讨论了如何利用围棋数据去训练神经网络(第5-7章),然后通过自我对弈(第8-11章),并结合一种树搜索方法(第4章),成功创建了一个达到超越人类的围棋机器人。
第十四章(AlphaGoZero:将树搜索与强化学习结合起来),这是本书的最后一章,描述了目前在围棋AI的当前情况。我们深入研究了树搜索和强化学习的创新结合,这为AlphaGoZero提供了动力。

附录

附录A(数学基础):概述了线性代数和微积分的一些基础,并展示了如何在Python库NumPy中表示一些线性代数结构。
附录B(反向传播算法): 展示我们从第五章开始使用的大多数神经网络学习过程的数学细节。
附录C(Go程序和服务器),为读者提供了一些资源 去了解更多关于围棋的信息。
附录D(使用亚马逊网页服务培训和部署机器人):是在亚马逊云服务器上运行您的机器人的快速指南。
附录E(向OGS提交你的机器人),演示如何将您的机器人连接到一个流行的Go服务器,在那里您的机器人可以对世界各地的玩家进行对弈测试。下面一页的图形总结了章节的依赖关系。

在这里插入图片描述

关于代码

本书在编号清单和符合普通文字的情况下均包含许多源代码示例。在这两种情况下,源代码为了与普通文本分开都已做了格式化。有时,代码还会加粗来突出显示与本章先前步骤已更改的代码,例如,当新功能添加到现有代码行时。
GitHub上提供了所有代码示例以及一些其他粘合代码,网址为:https : //github.com/maxpumperla/deep_learning_and_the_game_of_go。

图书论坛

购买深度学习和围棋游戏可以免费访问由Manning Publications运营的私人网络论坛,您可以在其中对本书进行评论,提出技术问题并获得作者和其他用户的帮助。要访问该论坛,请访问https://forums.manning.com/forums/deep-learning-and-the-game-of-go。您还可以在https://forums.manning.com/forums/about上了解有关Manning论坛和行为准则的更多信息。

发布了8 篇原创文章 · 获赞 5 · 访问量 1408

猜你喜欢

转载自blog.csdn.net/qq_41957257/article/details/103923881