【模仿学习笔记】行为克隆 Behavior Cloning
一、行为克隆概念
行为克隆属于模仿学习中的方法,不是强化学习。
强化学习:从环境给出的奖励中进行监督;
模仿学习:从人类动作经验中监督
区分两者主要在于,模仿学习没有奖励回报,知识模仿专家动作。
二、行为克隆过程
- 观测当前状态 $s_t$
- 策略网络做出预测 $p_t$
- 专家的动作是 $a_t^*$,向量化从而得到 $y_t$
- 计算损失 CrossEntropy($y_t,p_t$)
- 使用梯度下降来更新策略网络
三、行为克隆的优势与不足
如果当前的状态出现在训练数据中,则可以根据行为克隆训练得到的策略网络,执行类似于人类专家的动作。
但是如果当前状态没有出现在训练数据中,那么策略网络输出的动作可能不会很好,而且错误会累加。这种情况尤其出现在状态极为复杂的情况下。
评论