时间差异学习的更新

Sit*_*ite 4 machine-learning reinforcement-learning tic-tac-toe temporal-difference

我读到了Tesauro的TD-Gammon计划,并希望将其用于tic tac toe,但几乎所有的信息对我来说都是高中生无法访问的,因为我不知道术语.

这里的第一个等式,http://www.stanford.edu/group/pdplab/pdphandbook/handbookch10.html#x26-1310009.2

给出了"一般监督学习范式".它表示等式左边的w sub t是时间步t的参数向量."时间步长"究竟是什么意思?在设计用于输出电路板状态值的tic tac toe神经网络的框架内,时间步长是指给定游戏中播放的片段数量吗?例如,由字符串"xoxoxoxox"表示的板将在时间步骤9处并且板"xoxoxoxo"将在时间步骤8处?或者时间步骤是指自培训开始以来经过的时间量?

由于w sub t是给定时间步长的权重向量,这是否意味着每个时间步都有自己的评估函数(神经网络)?因此,要仅通过一次移动来评估电路板状态,您必须输入不同的NN,而不是通过两次移动来馈送电路板状态?我想我在这里误解了一些东西,因为据我所知,Tesauro只使用一个NN来评估所有的董事会状态(尽管很难找到关于TD-Gammon的可靠信息).

为什么输出的梯度取决于w而不是w sub?

提前感谢您澄清这些想法.我将不胜感激任何关于我的项目的建议或对易读阅读材料的建议.

Don*_*eba 6

TD处理马尔可夫决策过程框架内的学习.也就是说,你在某些状态s开始牛逼,执行一个动作一个牛逼,获得奖励- [R 牛逼,而在另一种状态结束- S T + 1.初始状态称为s 0.下标称为时间.

TD代理开始不知道它将采取什么奖励来获取哪些行动或其他行为所采取的行动.它的目标是了解哪些行为可以最大化长期总奖励.

国家可以代表井字棋局的状态.所以,在你的情况下,s 0将是一个明确的板:"---------",s 1可能是"-o -------",s 2可能是"-o-- x ----"等.动作可能是要标记的单元格索引.使用此表示,您将有3 9 = 19 683种可能的状态和9种可能的操作.在学习游戏之后,您将有一张桌子告诉您在每个可能的板上标记哪个单元格.

对于步步高而言,同样的直接表示也不会有效,因为有太多可能的状态.TD-Gammon所做的是使用神经网络的近似状态.网络的权重被视为状态向量,奖励总是0,除非获胜.

这里棘手的部分是TD-Gammon算法学习的状态是用于评估电路板位置的神经网络的状态,而不是电路板的状态.所以,在t = 0时你没有玩过一个游戏,网络处于初始状态.每次你必须移动时,你使用网络选择最好的一个,然后根据移动是否导致胜利来更新网络的权重.在进行移动之前,网络具有权重w t,之后它具有权重w t + 1.在玩了数十万个游戏后,您将学习权重,使神经网络能够非常准确地评估板位.

我希望这能解决问题.