大家好, 欢迎回到人工智能课程｡
在今天的教程中, 我们将有一些乐趣｡
我们将看到一个人工智能正在穿过我们一直在谈论的迷宫｡
它将使用关键的学习来导航并找到出路｡
我们将看到提示值会发生什么变化, 策略会发生什么变化, 等等｡
让我们来看看｡
我们将使用一些由伯克利大学提供的材料｡
所以如果你去I, Berkeley, B, r k e l e y edu, 如果你去那个链接, 输入,
你会看到这个网站｡
这里我们要看的是我们要看的是帕克曼项目｡
是的, 我知道
口袋妖怪项目｡
这里如果你向下滚动, 你会看到强化学习, 这就是我们正在研究的｡
所以在这里你可以下载zip压缩包｡
所以如果你想的话, 你就不必这样做｡
在本教程中, 我们不会一起讨论解决方案.
我只是想让你们知道这些都是从哪里来的, 因为我们非常感谢加州大学伯克利分校提供了这些材料｡
但如果你们真的想自己做实验, 记住这不是我们课程的一部分｡
这是伯克利课程的一部分｡
我将向你们展示它是如何工作的, 以便于说明｡
但是如果你真的想尝试一下, 你可以在这里找到它, zip存档和所有的说明｡
我们马上就来看看Python｡
首先, 我想向大家展示的是, 这里有许可信息｡
所以这就是我的意思｡
我们很幸运, 他们说我们可以自由地使用或扩展这些项目用于教育目的, 你知道, 分布式解决方案,
我们不会这样做｡
您保留我们拥有的此通知, 并提供明确的加州大学伯克利分校归属, 包括我们也拥有的链接｡
所以, 如果你想了解更多, 这里有一个链接, 你可以看看｡
非常感谢所有为这个项目工作的人｡
这就是我们将要研究的网格世界｡
有一个解决办法｡
为了让它起作用, 你必须要么孤立自己, 要么找到解决办法｡
也许你们中的一些人, 或者一些人, 你认识的人, 可能会帮助你摆脱困境, 如果你想的话｡
你不必这样做, 因为我们现在就在屏幕上看｡
创建完所有这些文件后, 我们可以在这里启动它｡
所以在这个世界上有一些参数｡
现在我将向你们展示如果我们发射它的样子｡
让我们尝试以手动模式启动它｡
如果我手动减去其中一个参数, 我就可以手动控制代理｡
这里你可以看到我们的网格｡
这样我就可以上去了｡
所以你可以看到它在采取行动, 在我所在的州开始｡
然后你看到你看到我压上去, 向北行动, 第一次我在01结束｡
所以我就上去了｡
但第二次我采取行动了, 我结束了同样的状态｡
我没动｡
所以发生了一些事｡
随机性发生了｡
我要么向左走, 要么向右走, 默认情况下, 参数是设置好的｡
你可以看到, 默认情况下, 它们的设置与我们讨论的完全相同, 即操作导致意外方向的频率为20%,
10%向左, 10%向右｡
所以如果我往上走, 你看, 我往上走, 我往右走｡
我现在就去｡
没有发生的权利再次和权利｡
我就完了｡
但是在这个实现中, 您必须再次单击才能退出这个最终输出｡
因此, 在退出时, 您只需再次单击, 即可完成｡
这是一个终端状态, 所以我们可以运行一个手动｡
你可以看到, 如果我向右, 右, 右, 左向上｡
我们之前看到代理不会直接向上, 对吗？
如果有机会进坑, 那上去又有什么意义呢？
让我们看看代理人会怎么做｡
你会向左走, 你会向西走, 所以向西走｡
你看, 我点击了左边, 但是它上升了, 在这里我点击了右边, 我最终进入了最后的退出状态,
你看, 得到了等于1的奖励｡
这就是手动操作的效果｡
现在让我们把一个人工智能连接到这个上, 让它通过｡
让我们在这里做一个H, 并添加一些参数｡
让我看看我在这里输入了什么｡
希望你们能看到, 蟒蛇网格世界的点P, 这里减去R表示这是活着的回报｡
所以我有两个, 所以我可能应该删除这个｡
那么减去K是多少次迭代？
这是太多的迭代方式｡
让我们少做点｡
让我们做十次迭代｡
应该够了｡
减a是我想用哪种类型的代理, 对一个随机代理, 某个值代理或者Q, Q, Q,
学习代理, 做这个, 减s是s的速度｡
所以这太快了｡
现在我们使用默认速度｡
减R是活的惩罚｡
所以默认为零｡
所以请记住, 在一开始, 我们从零生活惩罚开始｡
所以我们也称之为零｡
这里我们可以去掉这个参数, dx就是DX折扣.
所以我们的折扣系数｡
所以让它保持在0｡ 9.
这与我们在这节课开始时讲的内容非常相似｡
所以我们再跑一次吧｡
我想是的｡
哦, 事实上, 它是如此漂亮｡
所以你可以看到他是如何探索的｡
到目前为止, 他已经三次击中了负值｡
你可以看到Q值是如何在这些方块中更新的｡
这些就是价值观｡
它们从零开始｡
现在可以看到Q值｡
所以他又一次学到了, 这一个是有点不同的实施, 因为一旦你到了最后一个阶段, 你必须离开它｡
您只需再单击一个按钮即可退出｡
所以它非常接近于一, 但不完全是一｡
但同时, 你可以看到, 这里, 你知道,
价值是慢慢地在0种结晶｡ 8显然是有进展了, 但其他的都是零因为他没有足够的信息来理解到底发生了什么.
好吧, 我会的
让我们看看, 看看会发生什么.
探索, 探索, 探索将要发生的事情｡
杨帆楞了好一会｡
别忘了, 这里有一些随机性｡
所以现在有几次击中了那个好的｡
他只有10次迭代, 所以他得学得快｡
我需要你｡
让我们看看发生了什么｡
来吧, 来吧
快离开迷宫｡
是的, 十集, 所以平均回报, 这是我们真的不感兴趣｡
让我们看看我以前从没见过他们.
如果我点击这里, 我们去｡
所以你可以看到这是他提出的政策, 即使只有十集｡
他已经有保险了｡
好吧, 我要去巴巴巴嘣｡
我要从这里下去｡
我要下去了｡
我会撞到墙上然后弹到这边来｡
那很酷｡
现在让我们加快速度｡
这里的参数sx是多少, 我们来取double｡
好吧, 让我们, 让我们把速度提高四倍, 让我们增加迭代的次数｡
假设这次迭代20次｡
让我们看看他现在能不能再多穿一点, 这样你就可以看到他走得更快了｡
他在学习｡
他正在学习, 它并没有真正走出这个状态｡
没有太多好的行为, 或者这些行为的权利和直不是那么好｡
绝对的｡
这个肯定不好｡
他还需要学习｡
所以从这里看也是好的｡
你可以看到这个动作相当不错｡
好吧, 我会的
他得到了什么？
好吧, 这个政策很有意思｡
他决定上去｡
只是信息不够｡
所以我们｡
我们再来一次｡
把速度提高到100｡
所以速度超快｡
迭代的次数将给予他们有100次STEM迭代来快速运行该场景｡
你可以看到这一点, 因为有太多的迭代｡
他有了更多的信息, 更多的机会去实验, 去构建这个, 这个矩阵,
这些队列值, 对于他现在知道的每一个状态｡
您可以看到0. 89.
在我们的例子中, 我们说的是0｡ 86.
另一件事要记住这一点, 即任何给定状态的值｡
请记住, 我们的公式是Q值的最大值｡
记住我们想出的捷径公式｡
那么在这种状态下的值是多少呢？
这个状态的V, 应该是0 89因为这是四个中最高的｡
这里, 该状态的值为0｡ 71.
此状态的值为0｡ 61等等｡
所以这是需要记住的｡
我记得在我们的例子中, 我想我们有0｡ 86年左右, 非常接近｡
所以如果我们再往下看, 它就消失了｡
让我们再来一次让它回来｡
好吗？
好吧, 我会的
慢点慢点慢点｡
填补一些空白｡
我明白了｡
它也是随机的, 因为不仅环境是随机的,
而且他在不知道策略的情况下开始探索的方式也是随机的.
它只是不断消失｡
我不明白为什么｡
不管怎样, 让我们看看如果我们增加这里的数字会发生什么, 这里应该会花同样多的时间｡
如果速度没有上限的话｡
所以你可以看到他有更多的机会去探索事物｡
OC让我们看看它是如何进行的, 你可以看到值正在收敛｡
它们会上下波动,
因为有一些随机性, 他可能会像在坑里一样结束, 尽管他是这样走的, 但同时它们会慢慢地开始收敛到某种最终值｡
Q值？
OC大概1000在时间上有点太多了｡
看起来速度也没有成比例地增加｡
所以它可能会切断那部分｡
我是说, 比如降低速度｡
是的, 我知道
而这一段则很长｡
您不必一直观看本教程的结尾部分｡
我只是想尝试一下｡
我给予你们举几个例子来说明我们一直在做的事情, 但你们应该明白, 它贯穿了所有这一切｡
它有一些随机性, 就像Ram是它行为的一部分｡
所以即使它已经有了政策, 它还是会继续探索｡
所以它不会像一旦有了基本政策, 它不会只是继续遵循它的政策｡
它仍然会偶尔尝试其他变化, 以加强其政策｡
也许它还没有马上找到最好的策略｡
也许这能改善政策｡
这就是为什么, 即使经过这么多次迭代, 你仍然可以看到一些随机效应｡
它有时会跳到随机状态,
不仅仅是因为环境的随机性, 还因为有一些级别, 比如你可以控制的参数,
你可以为你的代理设置, 比如说大多数时间, 80%的时间, 做你的策略告诉你做的任何事情｡
但有20%的时间, 你知道, 只是有一些有趣的实验, 看看会发生什么,
并使用您收集的信息来更新您的政策｡
好吧, 我会的
这花的时间太长了｡
我们再来一次｡
是的, 我知道
这就是代理人在不同状态下学习的方式｡
也许吧｡
出于好奇我们再跑一次吧｡
所以我们还有什么可以改变的吗？
对它们进行迭代｡
原币原币
我们来看看｡
是啊, 好吧, 比如说, 我们可以改变折扣｡
所以在这种情况下, 我们可以说｡
K-100, 减去一个q-, 再减去一个q-, 就是千｡
所以奖励｡
我们想保留它｡
也许我们把它保持在0｡ 04, 但让我们再说一遍｡
让我们把奖励保持在-0｡ 每次都这样｡
这里我们说D｡
折扣不为0｡ 9, 但它就像0.. 5.
所以当你玩游戏的时候, 它会打很多折扣｡
所以实际上现在它会被激励去更接近终点而不是更接近终点的状态, 我们会得到更高的价值｡
所以你可以看到这个值很快就下降了｡
它不像以前那么绿色了｡
在这里, 您可以看到这是现在的策略｡
就像这样, 像这样, 像这样, 像这样｡
和我们之前看到的非常相似｡
可能唯一的区别就是直接跳到这里｡
这就是那个了
我们再跑一次｡
这太有趣了
我们再跑一次｡
是这样｡
K减k 100一q折｡
请保持原样｡
让我来运行这个基本的香草设置｡
好了好了好了｡
让我们看看最后它是否会显示策略｡
是的, 我知道
我们有保单｡
是的, 我知道
很好的结束｡
这就是我们的策略｡
你知道, 这很熟悉｡
还记得那次我们看到人工智能比人类聪明, 撞到墙上去那里, 撞到墙上去,
这样做, 以增加概率｡
好了, 我们走吧｡
这是人工智能的一个例子｡
非常, 非常基本, 简单的杀戮学习｡
所以在这个阶段没有深度学习｡
但与此同时, 它已经相当聪明了｡
我希望你喜欢今天的教程｡
再次感谢加州大学伯克利分校, 我希望你们喜欢今天的教程, 我期待着下一次见到你们｡
在那之前, 好好享受吧｡
一､