专栏首页大数据文摘阿法狗是如何工作的?卡内基梅隆大学博士用54页PPT给你答案

阿法狗是如何工作的?卡内基梅隆大学博士用54页PPT给你答案

最绚烂的火花,永远产生于森然秩序被打破,天才超然于规律之外的那一瞬间

卡内基梅隆大学博士生用54页PPT解密阿法狗的工作原理

在刚刚结束的“AlphaGo”与韩国围棋高手李世石之间的人机大战第五局中,李世石执黑负,无缘两连胜。至此,人机大战五番棋全部结束,李世石1-4输掉对决,无缘100万美元赢棋奖金。

为了让大家从另外一面了解AlphaGo,Computer Science排名第一的卡内基梅隆大学的博士研究生 Shane Moon(个人主页:http://shanemoon.com/)做了一次演讲,他就读于卡内基梅隆大学著名的语言技术研究所,纯干货讲稿PPT奉上。

AlphaGo是如何工作的

演讲人:Shane Moon

2015年10月,AlphaGo与欧洲围棋冠军樊麾二段对弈

2016年3月9日-15日,AlphaGo与世界冠军李世乭九段展开对弈

电脑围棋人工智能

电脑围棋人工智能:定义

我们可以把棋盘想象成一个矩阵

当给出s,电脑围棋运算出最优移动a,得到s'

电脑围棋人工智能:一个可行的概念?

假设它模拟所有可能的棋盘落子位置呢?

进行这样的模拟直到游戏结束,然后报告输赢结果

这是不可能的,据说所有可能的棋盘排布种类总数超过了宇宙中原子的数量

关键在于:缩减搜索空间

缩减搜索空间的第一种方法:减少可选择的着法(横向缩减)

从搜索出的着法候选中把这些提前剔除

缩减搜索空间的第二种方法:提前评估落子位置(纵向缩减)

假设这里有一个函数可以计算V,即s的盘面形势评估

缩减搜索空间的两种方式:减少可选择的着法(横向),提前评估落子位置(纵向)

减少可选择的着法

得到P(下一次落子|现在的位置)

减少可选择的着法:模仿专业高手的着法(在指导下学习)

建立棋盘的预测模型

将预测模型模拟为矩阵进行运算

这个深度学习过程要经过13层“CNN”

CNN即卷积神经网络,是一种强大的图像识别任务处理模型,它将输入的图像通过卷积层抽象化

它们利用卷积神经网络模型去评估对局形势

围棋:胜利的关键在于抽象能力

卷积神经网络:抽象是其特长

模仿专业高手着法的模型

减少可选择的着法:通过自我对弈来提高(巩固学习)

两个专业高手着法模仿模型进行对弈

输赢两种结局

更新模型,不断进行新旧模型之间的对弈,最后一个版本的模型和初始版本对弈已经有了八成赢面

盘面形势评估

使用两个模型:上文最新版本的模仿模型与价值预测模型(复盘)

缩减搜索空间:横向上减少可选择的着法(策略网络),纵向上进行盘面形势评估(价值网络)

前瞻:蒙特卡洛树形研究模型

结果:AlphaGo不同成分的组合所呈现的表现

李世乭九段与AlphaGo的能量功耗对比

据估测,AlphaGo的水准在业余五段左右

将CPU/GPU资源运用到极致?

AlphaGo每天都学习数以百万计的对局

如果AlphaGo学习了李世乭的策略会怎样?谷歌表示他们不会将李世乭的比赛数据用于AlphaGo的训练数据,即使它真的学习了,仅仅与李世乭对弈几盘就修改在海量数据下训练过的模型也是很难的

AlphaGo的弱点是什么?留待研究

本文分享自微信公众号 - 大数据文摘(BigDataDigest)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-03-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 一个女人的机器人日记

    大数据文摘
  • 手把手教你分析微信群聊记录,识别害群之马

    大数据文摘
  • 数据科学“内战”:统计vs.机器学习

    大数据文摘
  • 数据分析挖掘:影响信用因素是什么?银行如何通过模型做到快速审批的?

    在之前曾经写过一篇叫做“数据分析:未来,你可能发生信用卡逾期吗?”,是分析什么样的人容易发生信用卡逾期行为呢?哪些因素会影响逾期行为的严重程度?

    沉默的白面书生
  • 将Core ML模型集成到您的应用程序中

    此示例应用程序使用经过训练的MarsHabitatPricer.mlmodel模型来预测火星上的栖息地价格。

    iOSDevLog
  • 案例 | 奥运鸟巢打造者金螳螂签约法大大

    谈起公装,无人不知金螳螂。作为奥运“鸟巢”、国家大剧院、国家博物馆等装饰工程的打造者,这家已成立25年的国内装饰龙头企业,于2015年进军家装电商市场,集团金融...

    法大大电子合同
  • 基于Keras 循环训练模型跑数据时内存泄漏的解决方式

    在实际应用或比赛中,经常会用到交叉验证(10倍或5倍)来提高泛化能力,这样在预测时需要加载多个模型。常用的方法为

    砸漏
  • .net core 利用中间件处理常见的网站功能 包括 session、routers、重定向、重写和文件下载

    在.net core中所有的请求都会被请求中间件所处理,所以我们可以通过在中间件里边添加对应的功能然后在服务中添加注入来实现对应的功能

    FreeTimeWorker
  • Socket 通信原理

    什么是Socket? Socket的中文翻译过来就是“套接字”。套接字是什么,我们先来看看它的英文含义:插座。 Socket就像一个电话插座,负责连通两端的电话...

    wangxl
  • 11块10节课~掌握R语言常用的数据分析方法

    有读者留言说 在公众号或者B站看有时候可能不太方便,希望我分享视频文件。最开始是想免费分享给大家的。可是想来想去还是决定收费了:

    用户7010445

扫码关注云+社区

领取腾讯云代金券