会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
躺柒
博客园
首页
新随笔
联系
订阅
管理
随笔 - 788
文章 - 0
评论 - 17
阅读 -
49126
读AI3.0笔记07_游戏与推理
游戏与推理
合集 - 读AI3.0(10)
1.
读AI3.0笔记
10_读后总结与感想兼导读
2024-01-31
2.
读AI3.0笔记
01_引言
2024-01-17
3.
读AI3.0笔记
02_起源
2024-01-18
4.
读AI3.0笔记
03_神经网络
2024-01-19
5.
读AI3.0笔记
04_视觉识别
2024-01-23
6.
读AI3.0笔记
05_人类与机器学习
2024-01-24
7.
读AI3.0笔记
06_新机器人三定律
2024-01-25
8.
读AI3.0笔记
07_游戏与推理
2024-01-26
9.
读AI3.0笔记
08_自然语言
2024-01-29
10.
读AI3.0笔记
09_常识
2024-01-30
1. 始于游戏,不止于游戏
1.1. 开发超人类的游戏程序并不是人工智能的最终目的
1.2. AlphaGo所有的版本除了下围棋,其他什么也不会
1.2.1. 其最通用的版本AlphaGo Zero也一样
1.3. 这些游戏程序中没有一个能够将其在一款游戏中学到的知识迁移到其他游戏中,来帮助其学习不同的游戏
2. 强化学习
2.1. 驯兽师最重要的驯兽方法
2.1.1. 奖励其正确的行为,忽略其不正确的行为
2.1.2. 这种经典的训练技巧,在心理学上被称为操作性条件反射,已经在动物和人类身上应用了数个世纪
2.2. 强化学习在人工智能领域的一项举世震惊的重大成就中发挥了关键性作用:一个程序在复杂的围棋游戏中击败了世界上顶级的人类棋手
2.3. 在其最纯粹的形式下,强化学习不需要任何被标记的训练样本
2.3.1. 代替它的是一个智能体,即学习程序,在一种特定环境(通常是计算机仿真环境)中执行一些动作,并偶尔从环境中获得奖励,这些间歇出现的奖励是智能体从学习中获得的唯一反馈
2.4. 你越是想让机器人变得智能,手动设定它的行为规则就会越困难
2.5. 从人类的角度来看,我们常常会有一种“迷信”,即认为某种特定的行为将能帮助引发特定的好的或坏的结果
2.6. 设计成功的强化学习系统仍然是一种很难的但有时却很赚钱的技巧,只有一小部分像深度学习领域的同行一样,花费大量时间调节超参数的专家才能掌握
2.7. 愿景是智能体(如机器狗)能够通过在现实世界中执行一些动作并偶尔获得奖励(即强化)的方式来自主地学习灵活的策略,而无须人类手动编写规则或直接“教育”智能体如何应对各种可能的情况
2.7.1. 算法会告诉机器人如何从它的经验中进行学习
2.7.2. 强化学习是通过使机器人在一系列学习片段中采取动作来实现的,每个学习片段都包含一定数量的迭代
2.7.3. 一次性学习太多对其可能是有害的
2.8. 目标是让智能体自己学习并获得能对即将到来的奖励进行更好的预测的值,前提是智能体在采取相关行动后一直在做正确的选择。正如我们将看到的,习得给定状态下特定动作的值通常需要经过许多次的试错
2.9. 关键概念是在一个给定的状态下执行一个特定动作的值。状态S下动作A的值是一个数字,表示在状态S下,如果执行动作A,智能体预测最终将获得多少奖励,智能体只需执行高值的动作即可
2.9.1. 由状态、动作和值组成的表被称为Q表(Q-table)
2.9.1.1. Q表,在复杂现实世界任务中,不可能定义一小组能够罗列在一个表格中的“状态”
2.9.1.2. 大多数当下的强化学习方法使用的是神经网络而非Q表
2.9.1.2.1. 神经网络负责学习在一个给定状态下应给动作分配什么值
2.9.1.2.2. 神经网络将当前状态作为输入,其输出是智能体在当前状态下能够采取的所有可能动作的估计值
2.9.1.2.3. 网络学习的目标是将相关状态组成通用概念
2.9.2. Q学习算法是一种为给定状态下的动作赋值的方法,包括那些不直接获得奖励但能帮助智能体经历相对较少的状态就获得奖励的动作
2.10. 在现实世界中,使用真的机器人通过许多片段来真正地执行学习过程的难度很大
2.10.1. 强化学习的实践者几乎都会构建机器人和环境的模拟,然后在模拟世界而非在现实世界中执行所有的学习片段
2.10.2. 环境愈复杂和不可预测,将机器人在模拟中学到的技能转移到现实世界的尝试就愈加难以成功
2.10.3. 迄今为止强化学习最大的成功不是在机器人领域,而是在那些能够在计算机上进行完美模拟的领域
2.10.4. 强化学习最知名的成功是在游戏领域
2.11. 时序差分学习
2.11.1. temporal difference learning
2.11.2. 强化学习不是将其输出与人类给定的标签进行匹配,而是假设后续迭代给出的值比前面迭代给出的值更好,网络学习的是使其输出在一次迭代到下一次迭代的过程中保持一致
2.12. 与监督学习不同,强化学习可以使程序能够真正靠自己去学习,简单地通过在预设的环境中执行特定动作并观察其结果即可
2.12.1. 无须人类的任何指导
2.12.2. 即便在最具挑战性的领域,不用人类的示例或指导,除基本规则之外不提供任何其他领域的知识,程序也有可能训练到超人类水平
3. 学会玩游戏
3.1. 电子游戏像是现实世界的缩影,但更纯净并且更易被约束
3.2. 无论你对电子游戏持何种立场,如果你更倾向于纯净且受控制,而非真实,你可能会考虑创建人工智能程序来玩20世纪七八十年代的雅达利电子游戏,这正是DeepMind团队决定要做的事
3.3. 打砖块
3.3.1. 是雅达利为其大获成功的《乒乓》游戏开发单人模式的成果
3.3.1.1. 雅达利游戏程序没有被植入游戏的规则
3.3.2. 其设计和实现任务最初是在1975年被分配给了一名20岁的名叫史蒂夫·乔布斯(Steve Jobs)的员工
3.3.2.1. 当时的乔布斯缺乏足够的工程技能
3.3.2.2. 邀请了他的好朋友——25岁的史蒂夫·沃兹尼亚克(Steve Wozniak)来帮忙
3.3.2.3. 苹果公司的联合创始人
3.3.3. 即使这个玩家被训练到超人水平,只要将球拍在屏幕上的位置移动几个像素,系统的表现就会骤然下降
3.3.3.1. 意味着系统甚至没有学到“球拍”这种基本概念的含义
3.3.4. 当屏幕的背景颜色被改变时,系统的表现会显著下降
3.3.4.1. 如果没有大量的重新训练,系统无法将对这一概念的理解力泛化为向下或向侧面挖隧道的能力
3.4. 深度Q学习
3.4.1. deep Q-learning
3.4.2. DeepMind团队将强化学习,尤其是Q学习,与DNN相结合,创建了一个能够学习玩雅达利电子游戏的系统
3.5. 随机搜索
3.5.1. 这种算法不是通过多个片段的强化学习来训练深度Q网络,而是通过随机选择权重的方式来测试不同的ConvNets
3.5.2. 这种算法完全通过随机试错来进行学习
3.5.3. 优步的研究人员持续尝试新的随机权重网络,最终他们用比训练一个深度Q网络更少的时间,找到了一个能在他们测试的13款游戏的5款中与深度Q学习算法训练的网络表现得一样好甚至更好的网络
3.6. 遗传算法
3.6.1. 在13款游戏中的7款都表现得优于深度Q学习算法
3.7. 如何更新权重?这是监督学习和强化学习之间的核心差异
3.7.1. 反向传播的工作原理是通过改变神经网络的权重以减少网络输出的误差
3.7.2. 在监督学习中,测量这种误差非常直截了当
3.7.3. 在强化学习中我们没有标签
3.7.3.1. 一个来自游戏的给定的帧并不带有指示系统应采取某种动作的标签
3.7.4. 通过反向传播学习调整网络权重,从而使得当前与先前迭代输出之间的差异最小化
3.7.4.1. 从猜测中学习猜测
3.7.4.2. 从更好的猜测中学习猜测
3.8. 塞缪尔的西洋跳棋程序是基于搜索博弈树(game tree)的方法,该方法是迄今为止所有棋类游戏程序的基础
3.8.1. 即使计算机不做详尽的搜索,也有可能表现得很好
3.8.2. 程序就会使用一个被称为“极小化极大”(minimax)的经典算法
3.8.3. 博弈树、评估函数和“自对弈学习”(learning by self-play)
3.8.4. 一台机器最终在1994年战胜了人类跳棋冠军
3.9. 在1997年,也就是深蓝击败国际象棋世界冠军卡斯帕罗夫的同一年,当时最好的围棋程序仍然会被普通棋手轻易击败
3.9.1. 深蓝没有在任何核心部件上使用机器学习方法
3.9.2. 一个国际象棋棋手在一个给定棋局中平均有35种可能的行棋方式
3.10. 围棋
3.10.1. 围棋已有两千多年的历史,被公认为所有棋类游戏中最难的
3.10.1.1. 规则简单却能产生无穷的复杂性
3.10.2. 围棋的博弈树的规模要比国际象棋大得多
3.10.2.1. 一个围棋棋手平均有250种这样的行棋方式
3.10.2.2. 即便使用专用的硬件,对围棋的博弈树进行“深蓝式”的暴力搜索也是不可行的
3.10.3. 没有人能够为围棋棋局创建一个良好的评估函数
3.11. 蒙特卡洛方法
3.11.1. 在科学和数学领域,蒙特卡洛指的是一系列计算机算法,即所谓的“蒙特卡洛方法”(Monte Carlo method),这一方法最初用在曼哈顿计划中来帮助设计原子弹
3.11.2. 就像蒙特卡洛赌场那标志性的快速旋转的轮盘一样,一定程度的随机性可被用在计算机上来解决复杂的数学问题
3.11.2.1. 受轮盘赌启发的随机性被用来决定如何前瞻
3.12. 蒙特卡洛树搜索
3.12.1. 蒙特卡洛树搜索是专门为计算机游戏程序设计的蒙特卡洛方法的一个版本
3.12.2. 蒙特卡洛树搜索不是DeepMind的计算机科学家发明的,而是2006年在博弈树的基础上被首次提出的,并且它的出现使计算机围棋程序的水平得到大幅提升
3.12.3. 这些程序还无法战胜最出色的人类棋手,其中一个原因是:从走子演算中生成足够多的统计数据需要花费大量时间,特别是对于存在大量可能行棋方式的围棋来说
3.12.3.1. 可以使用一个深度卷积神经网络来对蒙特卡洛树搜索进行补充,以提升它们的系统能力
3.12.3.2. 从原则上说,ConvNets将会通过这一学习过程学会辨识局势,就像围棋大师一样
3.13. AlphaGo
3.13.1. 创建一个学习下围棋的程序,而且要比所有人类棋手都下得更好
3.13.2. 仅仅20年之后,AlphaGo就通过深度Q学习学会了围棋,并在一场五局三胜制的比赛中击败了世界上最出色的围棋棋手之一李世石
3.13.3. 顶级围棋棋手区别于常人的东西是他们的直觉,我们在AlphaGo中所做的就是将这种所谓的直觉引入神经网络中
3.13.3.1. 哈萨比斯
3.13.3.2. 如果你觉得AlphaGo也有直觉,那么这种直觉源自它对深度Q学习和蒙特卡洛树搜索这些方法的巧妙结合
3.13.4. AlphaGo在应用蒙特卡洛树搜索时就不用通过查看棋局局势来猜测哪种行棋方式最可能通往胜利,而只根据走子演算收集的关于给定行棋方式最终指向胜利或失败的统计数据,来判断下一步的最佳行棋策略
3.13.4.1. 程序执行的走子演算越多,其统计数据就越有参考价值
3.13.4.2. 该程序需要平衡“效用”(在走子演算期间选择得分最高的行棋方式)和“探索”(偶尔选择程序尚未有太多统计数据的得分较低的行棋方式)
3.13.5. 人工智能领域中长期以来的重大挑战之一,能够被强化学习、ConvNets和蒙特卡洛树搜索,以及在这一组合中加入的强大的现代计算硬件所体现出的创造性征服
3.13.6. AlphaGo的这些关键部分没有一个是通过纯粹的强化学习,从数据中学到的,相反,它们是由DeepMind的程序员在一开始就植入其内的
3.13.7. 尽管AlphaGo在下围棋时表现出了神奇的直觉能力,但是该系统没有任何机制,能使其在不经重建和重新训练深度Q网络的情况下,泛化它的围棋能力,即便是泛化到一个更小的或形状不同的围棋棋盘上
3.14. AlphaGo Zero
3.14.1. 比AlphaGo更简单也更高级
3.14.2. 与之前的版本不同的是:除了围棋规则之外,AlphaGo Zero对围棋的知识是从“零”开始的
3.14.3. 在AlphaGo Lee与AlphaGo Zero的100场对弈中,AlphaGo Zero取得了完胜
3.14.4. AlphaGo Zero确实没有在学习过程中使用任何人类示例,但并不是说它不需要人类的指导
3.14.5. 某些方面的人类指导对其成功至关重要
3.14.5.1. 它的ConvNets的具体架构
3.14.5.2. 对蒙特卡洛树搜索方法的使用
3.14.5.3. 这两者所涉及的众多超参数的设置
3.15. 对人工智能而言,人类玩的许多游戏甚至比围棋更具挑战性
3.15.1. 猜字谜游戏
3.15.1.1. 这个游戏需要远超任何现有人工智能系统的复杂的视觉、语言和社会理解能力
4. 通用人工智能
4.1. 必须是一种通用人工智能,也就是它可以根据自身的经验和数据来学习如何做事
4.2. 对于人类来说,智能的一个关键点并非在于能够学习某一特定的技能,而在于能够学会思考,并且可以灵活地将这种思考能力用于应对任何可能遇到的情况或挑战,这也是我们希望孩子们能够通过下国际象棋或围棋学习到的真正技能
4.3. 迁移学习
4.3.1. transfer learning
4.3.2. 是指一个程序将其所学的关于一项任务的知识进行迁移,以帮助其获得执行不同的相关任务的能力
4.3.3. 对于人类来说,迁移学习是自动进行的
4.3.3.1. 人类这种从一种任务到另一种任务的能力迁移看起来毫不费劲
4.3.3.2. 我们对所学知识进行泛化的能力正是思考的核心部分
4.3.4. 与人类不同的是,这些程序中没有一个能够将其在一款游戏中学到的知识迁移到其他游戏中,来帮助其学习不同的游戏
4.3.4.1. 当今人工智能领域中的大多数学习算法在相关的任务之间不是可迁移的
4.3.4.2. 就好像你学会了玩《乒乓》,但是为了学会玩《打砖块》,你必须完全忘记你学过的关于《乒乓》的所有知识,并重新开始
4.4. 模拟越逼真,在计算机上运行的速度就越慢,并且即便使用一台速度非常快的计算机,要把所有的物理作用力和装载碗碟的各方面相关参数都精确地置入模拟中也极其困难
合集:
读AI3.0
好文要顶
关注我
收藏该文
微信分享
躺柒
粉丝 -
50
关注 -
0
+加关注
0
0
升级成为会员
«
上一篇:
读AI3.0笔记06_新机器人三定律
»
下一篇:
读元宇宙改变一切笔记13_治理与管理
posted @
2024-01-26 06:53
躺柒
阅读(
84
) 评论(
0
)
编辑
收藏
举报
刷新页面
返回顶部
登录后才能查看或发表评论,立即
登录
或者
逛逛
博客园首页
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
相关博文:
·
读AI新生:破解人机共存密码笔记05逻辑
·
读人工智能全传10深度思维
·
TensorFlow 强化学习:6~10
·
强化学习-学习笔记5 | AlphaGo
·
TensorFlow 智能移动项目:6~10
阅读排行:
·
【.NET】调用本地 Deepseek 模型
·
CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
·
DeepSeek “源神”启动!「GitHub 热点速览」
·
我与微信审核的“相爱相杀”看个人小程序副业
·
Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
历史上的今天:
2023-01-26
读Java8函数式编程笔记01_Lambda表达式
公告
昵称:
躺柒
园龄:
2年1个月
粉丝:
50
关注:
0
+加关注
<
2025年2月
>
日
一
二
三
四
五
六
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
1
2
3
4
5
6
7
8
搜索
常用链接
我的随笔
我的评论
我的参与
最新评论
我的标签
合集
学信息系统项目管理师第4版(35)
学系统集成项目管理工程师(中项)(43)
读高性能MySQL(第4版)(21)
读发布!设计与部署稳定的分布式系统(第2版)(34)
随笔及总结(26)
读改变未来的九大算法(10)
读数据压缩入门(11)
读C#代码整洁之道(8)
读编程与类型系统(12)
读函数式编程思维(6)
读Java8函数式编程(9)
读Java实战(第二版)(20)
读Java性能权威指南(第2版)(31)
读SQL进阶教程(17)
选读SQL经典实例(23)
读SQL学习指南(第3版)(13)
读图数据库实战(11)
读程序员的制胜技(15)
读像火箭科学家一样思考(16)
读程序员的README(19)
读算法霸权(13)
读元宇宙改变一切(14)
读AI3.0(10)
读千脑智能(13)
读十堂极简人工智能课(9)
读人工不智能:计算机如何误解世界(10)
读算法的陷阱:超级平台、算法垄断与场景欺骗(20)
读所罗门的密码(21)
读天才与算法:人脑与AI的数学思维(26)
读人工智能时代与人类未来(19)
读AI未来进行式(12)
读AI新生:破解人机共存密码(18)
读人工智能全传(16)
读写给大家的AI极简史(7)
读零信任网络:在不可信网络中构建安全系统(21)
读软件开发安全之道:概念、设计与实施(17)
读软件设计的要素(7)
读构建可扩展分布式系统:方法与实践(16)
读数据湖仓(9)
读数据工程之道:设计和构建健壮的数据系统(34)
读数据质量管理:数据可靠性与数据质量问题解决之道(20)
读数据保护:工作负载的可恢复性(31)
读量子霸权(18)
读算法简史:从美索不达米亚到人工智能时代(15)
读当我点击时,算法在想什么?(7)
读DAMA数据管理知识体系指南(4)
更多
随笔档案
2025年2月(25)
2025年1月(31)
2024年12月(31)
2024年11月(30)
2024年10月(31)
2024年9月(30)
2024年8月(31)
2024年7月(31)
2024年6月(30)
2024年5月(31)
2024年4月(30)
2024年3月(31)
2024年2月(29)
2024年1月(31)
2023年12月(31)
2023年11月(30)
2023年10月(31)
2023年9月(30)
2023年8月(31)
2023年7月(31)
2023年6月(30)
2023年5月(31)
2023年4月(31)
2023年3月(36)
2023年2月(28)
2023年1月(26)
阅读排行榜
1. C#代码整洁之道读后总结与感想(599)
2. 选读SQL经典实例笔记01_检索和排序(369)
3. 读C#代码整洁之道笔记01_C#的编码标准和原则(311)
4. 读C#代码整洁之道笔记04_重构C#代码识别代码坏味道(309)
5. 学信息系统项目管理师第4版系列02_法律法规(268)
评论排行榜
1. 2023年1月随笔(11)
2. 2023年10月随笔之婚宴趣事多(2)
3. 读高性能MySQL(第4版)笔记12_查询性能优化(下)(2)
4. 读Java性能权威指南(第2版)笔记18_垃圾回收E(2)
推荐排行榜
1. 读高性能MySQL(第4版)笔记01_MySQL架构(上)(2)
2. 选读SQL经典实例笔记01_检索和排序(2)
3. 读软件设计的要素01概念(1)
4. 读AI未来进行式笔记01深度学习(1)
5. 读所罗门的密码笔记01_当人类遇见机器(1)
最新评论
1. Re:2023年10月随笔之婚宴趣事多
@gz4621 wondershare mindmaster...
--躺柒
2. Re:2023年10月随笔之婚宴趣事多
大神 思维导图用的什么软件制作的?
--gz4621
3. Re:读高性能MySQL(第4版)笔记12_查询性能优化(下)
@东围居士 建议读新版。...
--躺柒
4. Re:读高性能MySQL(第4版)笔记12_查询性能优化(下)
第4版相比第3版好像缩减了好多内容?楼主推荐第3版还是第4版
--东围居士
5. Re:读Java性能权威指南(第2版)笔记18_垃圾回收E
@屠炉 没有用第三方工具,手动的。 有几个平台直接支持markdown导入,只是要调整一下图片上传即可。...
--躺柒
点击右上角即可分享
支持DeepSeek的编程助手
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
2023-01-26 读Java8函数式编程笔记01_Lambda表达式