- 论文题目:Learning Predictive Models From Observation and Interaction
所解决的问题?
作者在这里所关心的是,智能体采样很难采样到那些表现性能比较好的样本,就是说有些状态动作对根本就采不到,因为很难去学习这么好的策略,但是人类可以很轻松的采样得到这些样本。但是这些样本也是存在一些问题的,比如是没有带注释的,他不会有描述说为什么这么做,如果像模仿学习那样利用这些样本的话,还会存在分布漂移的问题(distributional shift)。对于第一个问题作者用图模型做,第二个问题用domain-dependent prior做。
背景
人类是很容易从别人的trajectory中进行学习,但是由于个体之间的差异,从observation学习action其实是很困难的,比如对于同一个重物,成年人可以很轻松拿起来,而对于婴儿就不是那么容易了。而作者结合历史的观测来解决这个问题。基于模型的强化学习基本上都是要学一个状态-动作的条件概率分布,如果只给observation,其实是很难学习的。而现实生活中却又存在这样大量地数据,你只能获取observation,并不知道具体所采取的动作是什么。比如一个机器人捡东西的视频,你是不可能知道当前时刻输出的电流,扭矩这些东西的。
作者提出了一种既能够从有动作标注的信息中学,也能从只有观测信息总学习model的方法。也就是action是否给定,都能学。当然了学状态转移的概率太多了,也不一一列举,今年争取做个相关的综述, 以后放在公众号的菜单栏吧,方便大家寻找.
除此之外,为了能够处理observational 和interaction data , 作者还需要解决Domain adaptation的问题. 对跨域的不变性进行正则化( regularizing for invariance across domains )是不够理想的。例如,如果人类的观察数据涉及到复杂的操作(例如,工具使用),而交互数据只涉及到简单的操作,我们不希望模型对这些差异保持不变。因此,我们采取了一种不同的方法:我们不对跨域的不变性进行正则化,而是明确地对每个域中的(潜伏)行动变量的分布进行建模( model the distributions over (latent) action variables in each of the domains)。
所采用的方法?
对于作者的设定,手中是有两类数据$[x_{1},a_{1}, x_{2},\cdots]$和$[x_{1},x_{2},\cdots]$. 而这种数据是存在domain shift的,比如从人类的视频数据和从机器人的交互数据学习. 目的就是为了学一个model,预测未来$p(x_{c+1:T}|x_{1:c},a_{1:T})$.
概率图模型
为了能够从观测和交互数据中都能学习,作者提出的概率图模型框架如下图所示:
生成模型可以表示为:
$$\begin{aligned}
\mathbf{z}_{t} & \sim p\left(\mathbf{z}_{t} | d\right) \
\mathbf{a}_{t} & \sim p\left(\mathbf{a}_{t} | \mathbf{z}_{t}\right) \
\mathbf{x}_{t+1} & \sim p\left(\mathbf{x}_{t+1} | \mathbf{x}_{1: t}, \mathbf{z}_{1: t}\right)
\end{aligned}$$
$\mathbf{z}_{t}$用高斯分布进行拟合,动作解码 $p\left(\mathbf{a}_{t} | \mathbf{z}_{t}\right)$和状态转移模型都基于高斯分布的输出,用神经网络做. 转移模型用$\mathbf{z}_{t}$作为输入,因此需要后验分布 $p(\mathbf{z}_{t} | \mathbf{a}_{t})$去生成action-conditioned的隐变量,比如满足这个采样:$p\left(\mathbf{x}_{t+1} | \mathbf{x}_{1: t}, \mathbf{a}_{1: t}\right)=\mathbb{E}_{p\left(\mathbf{z}_{1: t} | \mathbf{a}_{1: t}\right)}\left[p\left(\mathbf{x}_{t+1} | \mathbf{x}_{1: t}, \mathbf{z}_{1: t}\right)\right]$. 由于有没有action的数据,所以需要$p\left(\mathbf{z}_{t} | \mathbf{x}_{t}, \mathbf{x}_{t+1}\right)$。
由于模型高度复杂和非线性原因,上述这两个后验分布是非常难算的。所以作者设计了两个分布,其网络结构如下所示:
当动作可观察时,依据evidence lower bound (ELBO)
进行优化,同时还需要优化网络框架,和动作编解码框架:
$$\begin{aligned}
\log p\left(\mathbf{x}_{1: T}, \mathbf{a}_{1: T}\right) \geq & \mathbb{E}_{q_{\mathrm{ad}}\left(\mathbf{z}_{1: t} | \mathbf{a}_{1: t}\right)}\left[\sum_{t} \log p\left(\mathbf{x}_{t+1} | \mathbf{x}_{1: t}, \mathbf{z}_{1: t}\right)\right] \
&+\mathbb{E}_{q_{\mathrm{acd}}\left(\mathbf{z}_{t} | \mathbf{a}_{t}\right)}\left[\sum_{t} \log p\left(\mathbf{a}_{t} | \mathbf{z}_{t}\right)\right] \
&-\sum_{t} D_{K L}\left(q_{\mathrm{act}}\left(\mathbf{z}_{t} | \mathbf{a}_{t}\right) | p\left(\mathbf{z}_{t}\right)\right) \
=&-\mathcal{L}_{i}\left(\mathbf{x}_{1: T}, \mathbf{a}_{1: T}\right)
\end{aligned}$$
当动作未知时,优化目标只需要去优化框架,和ELBO
就可以:
$$\begin{aligned}
\log p\left(\mathbf{x}_{1: T}\right) \geq & \mathbb{E}_{q_{\text {inv }}\left(\mathbf{z}_{t} | \mathbf{x}_{t}, \mathbf{x}_{t+1}\right)}\left[\sum_{t} \log p\left(\mathbf{x}_{t+1} | \mathbf{x}_{t}, \mathbf{z}_{t}\right)\right] \
&-\sum_{t} D_{K L}\left(q_{\text {inv }}\left(\mathbf{z}_{t} | \mathbf{x}_{t}, \mathbf{x}_{t+1}\right) | p\left(\mathbf{z}_{t}\right)\right) \
=&-\mathcal{L}_{o}\left(\mathbf{x}_{1: T}\right)
\end{aligned}$$
两部分连立得到优化目标:
$$\mathcal{J}=\sum_{\left(\mathrm{x}_{1} ; \mathrm{r}, \mathrm{a}_{1} ; \mathrm{r}\right) \sim D^{i}} \mathcal{L}_{i}\left(\mathrm{x}_{1: T}, \mathrm{a}_{1: T}\right)+\sum_{\mathrm{x}_{1}, \mathrm{r} \sim D^{\circ}} \mathcal{L}_{o}\left(\mathrm{x}_{1: T}\right)$$
除此之外还设计了一个辅助损失函数,用于衡量两种方式提取的提取隐变量是否相同,用JS散度定义:
$$\mathcal{L}_{J S}=\sum_{\left(\mathbf{x}_{1: T}, \mathbf{a}_{1: T}\right) \sim D^{i}} D_{J S}\left(q_{\mathrm{act}}\left(\mathbf{z}_{t} | \mathbf{a}_{t}\right) \| q_{\mathrm{inv}}\left(\mathbf{z}_{t} | \mathbf{x}_{t}, \mathbf{x}_{t+1}\right)\right)$$
最终的损失函数可以表示为:
$$\mathcal{F}=\mathcal{J}+\alpha \mathcal{L}_{J S}$$
Domain Shift
由于数据集是两种类型,所以作者这里还做了Domain Shift。具体做法如下图所示:
将隐变量$z$分成两部分:$z^{shares}$和$z^{domain}$。通过给不同的先验分布(prior distributions)来让网络能够学地不同。$z^{shares}$的先验分布给相同的。
取得的效果?
所出版信息?作者信息?
论文是2019年12月三十号上传到arXiv上面的,估计今年就能知道投到那了。