模仿学习中的多种算法解析
1. 随机混合迭代学习(SMILe)算法
1.1 算法原理
在许多情况下,我们可以利用专家的示范来训练策略。SMILe 算法就是这样一种方法,它通过不断生成新的数据集,并结合行为克隆技术来训练新的组件策略,然后将这些组件策略混合,逐步减少遵循专家策略的概率。
具体步骤如下:
1. 使用最新的策略 $\pi(k)$ 生成新的数据集 $D$,并向专家查询正确的动作。
2. 仅对这个新数据集应用行为克隆,训练一个新的组件策略 $\hat{\pi}(k)$。
3. 将这个新的组件策略与之前迭代中的组件策略混合,生成新的策略 $\pi(k + 1)$。
组件策略的混合由一个混合标量 $\beta \in (0, 1)$ 控制。遵循专家策略的概率为 $(1 - \beta)^k$,遵循 $\hat{\pi}(i)$ 的概率为 $\beta(1 - \beta)^{i - 1}$。随着迭代次数的增加,遵循原始专家策略的概率会逐渐衰减到零。
1.2 代码实现
struct SMILe
𝒫 # problem with unknown reward
bc # Behavioral cloning struct
k_max # number of iterations
m # number of rollouts per iteration
d # rollout depth
b # initial state distribution
β # mixing s
超级会员免费看
订阅专栏 解锁全文
5万+

被折叠的 条评论
为什么被折叠?



