步子百科步子百科

bird是什么意思(用强化学习中)

强化学习通常包括两个实体Agent和Environment,什意思用状态(State)、强化动作(Action)、学习奖赏(Reward)这三个要素。什意思用需要根据当前State来采取动作,强化获得相应的学习Reward之后,再去改进这些Action,什意思用使得下次再到相同State时,强化Agent能做出更优的学习动作。

Q-learning的什意思用含义

Q为动作效用函数(action-utility function),用于评价在特定状态下采取某个动作的强化优劣,可以将之理解为Agent的学习大脑。Q-learning的什意思用核心是Q-table,Q-table的强化行和列分别表示state和action的值,Q-table的学习值Q(s,a),衡量当前state(s)采取action(a)的优劣。

以Flappy Bird游戏为例,游戏的目标就是在不触碰水管的情况下,通过尽可能多的关卡。强化学习在这类游戏上获得了非常棒的成绩。

让小鸟学习怎么飞是一个强化学习的过程,其中:

Agent:小鸟;

State:小鸟到下一根下侧管子的水平距离dx和垂直距离dy作为小鸟的状态(dx, dy);

Action: 飞,不动

Reward: 小鸟活着,每一帧给予1的奖赏;若死亡,则给予-1000的奖赏;若成功经过一个水管,则给予50的奖赏。

Q-table:

记录历史经验的表,类似于人的大脑,在什么状态下,采取那种行动更加有利。小鸟用当前的状态在Q-table中查找历史经验,选择效用值最大的作为当前的动作。

Q-learning的训练

训练的伪代码如下:

ε-greedy策略

如果每次都在Q-table中查找,然后根据效用值选择状态效用值最大的动作,小鸟永远禁锢在历史的经验中,那可能有更好的选择永远探测不到。所以需要增加一些突变,这个思想类似于动物的基因突变。

ε-greedy的策略是一种基因突变的策略,在每个状态有ε的概率进行探索(即随机选取飞或不飞),而剩下的1-ε的概率则依赖历史经验(选取当前状态下效用值较大的那个动作)。ε一般取值较小,0.01即可。

所以Q-learning并非每次迭代都沿当前Q值最高的路径前进。

Q-learning的训练公式

其中α为学习速率(learning rate),γ为折扣因子(discount factor),R是眼前利益,maxQ(s', a)是历史经验中的利益。学习速率α越大,保留之前训练的效果就越少。折扣因子γ越大,小鸟越重视历史经验,越小,小鸟越重视眼前利益。

Agent利用上述算法在训练中学习,不断优化Q表,Q表被训练优化的越好就越容易快速有效找到获取解决方案的最佳途径。

训练效果: