文章目录
一、What is RL?
1.Step 1: Function with Unknown
如下图所示,这是一个Policy Network的结构,输入是游戏画面,输出是下一步移动方式的概率,然后根据概率随机决定下一步的移动方式。
2.Step 2: Define “Loss”
如下图所示,一个游戏画面会产生一个reward,此过程反复进行,然后把所有的reward相加起来得到Total Reward,并对Total Reward取最大化,将它乘上-1作为Network的Loss Function。
3.Step 3: Optimization
如下图所示,这是Optimization的操作步骤,找一个Network的参数使R(所有reward的总和)取到最大。
二、Policy Gradient
1.How to control your actor
1) 如下图所示,有两种情况。如果采取一个固定的行为,我们就使损失函数越小越好;如果不采取一个行为,我们就使损失函数越大越好,然后对它乘上-1。
2) 如下图所示,收集一大堆训练资料,然后定义一个Loss Function,去训练Actor后取最小化的θ。
2.Policy Gradient
如下图所示,把训练资料拿来训练后,只能更新一次参数,下一次更新参数,需要重新把训练资料再拿来训练。
3.On-policy v.s. Off-policy
如下图所示,介绍了On-policy和Off-policy,在On-policy的过程中,θ(i)是不能用θ(i-1)的训练资料,但在Off-policy的过程中,θ(i)是可以用θ(i-1)的训练资料,这样就可以节省时间。
4.Proximal Policy Optimization
进行训练的Actor必须要了解到它与Actor的差异才能够去互动。
5.Collection Training Data: Exploration
如下图所示,在收集资料时,actor需要具有随机性,有些时候我们还会特意加大模型中的随机性。
三、Actor-Critic
1.Critic
Critic就是去评估actor做得怎样。如下图所示,Critic是考虑了s范围的情况下,评估actor做得怎样,而Value function得到的值取决于actor θ和s。
2.How to estimate (s)
1)第一种方法是Monte-Carlo (MC) based approach,先把θ与环境进行互动多轮,得到训练资料来训练Value function,如果输入是Sa,那么就希望输出与Ga越接近越好。
2)第二种方法是Temporal-difference (TD) approach,它可以不用完成整场比赛就可以更新参数。
3.MC v.s. TD
如下图所示, 举例说明MC和TD的情况。
4.Tip of Actor-Critic
如下图所示,Actor和Critic都是Network,它们是可以共用参数的。
四、Reward Shaping
1.Sparse Reward
如下图所示,这里举一个机器手臂拧螺丝的例子。拧螺丝过程中每一步的reward都是0,直到拧完结束才知道reward的值,因此这里需要定义额外的reward来指导。
2.Reward Shaping-Curiosity
Curiosity的意思就是指机器要对新事物感兴趣,对有意义的事物加分。
五、No Reward: Learning from Demonstration
1.Motivation
如下图所示,人类给机器定义了3条reward,但是机器会采取人类意想不到的行为,会不受人类的控制,因此需要用到Imitation Learning。
2.Imitation Learning
Imitation Learning是不产生reward,而是让人类里面的专家和环境互动作为示范,然后让机器来模仿行为。
3.Inverse Reinforcement Learning
Inverse Reinforcement Learning中没有reward,而是把专家和环境地互动去学出一个Reward Function,然后用Reward Function去训练actor。这里的Reward Function可能是比较简单的,但训练出来的actor却是比较复杂的。
4.Framework of RL
如下图所示,老师和actor都会产生对应的trajectory,然后产生Reward Function(让老师得到的分数总是高于actor),反复进行这个循环,就可以根据Reward Function产生新的actor去代替原来的actor。