Ha, D., & Schmidhuber, J. (n.d.). World Models. world model的工作模式和自动驾驶预测决策规划如出一辙,我认为world model是自动驾驶数据驱动方式的终局方案。perception对应V model, 预测对应M model,决策规划则是C model,在感知输入下,world model具有ego action对环境影响的判断能力,可以预测出next Z, 通过ego action的rollouts获得这种自车行为对未来的影响与演化过程,最后找到best policy,这不就是自动驾驶在做的事情吗。
world model
world model的组成有两部分:vision model + memory model. 其中vision model将高维度视觉信息转变成低维度信息,这里通过VAE完成:
memory model采用了MDN-RNN模型实现,说白了就是混合高斯模型+LSTM. memory模块要维护一个latent state h, 它用于存储历史信息。此外他还要有预测未来的能力:“we also want to compress what happens over time. For this purpose, the role of the M model is to predict the future.”未来的状态记为z:“we train our RNN to output a probability density function p(z) instead of a deterministic prediction of z”。那这里有一个说法,关于z怎么表达,不同文章有不同的做法,比如可以是deterministic的做法,直接就是确定的z, 或者是这里的gaussian distribution用于容纳不确定性,也有dreamer系列的做法,搞成discrete的形式。下图表达了world model的结构,不过这里还不完整,少了action.
所以更准确的表达是带上action:
训练:
vision, memory and control三部分都是互相独立的,各训练各自的即可:
vision部分就是要训练一个重建任务:
memory部分是要训练一个对未来的预测任务:
在后面的附录里面还有一个更明确的图:
RNN输出两个东西,一个是latent state h: "M will then take the current zt and action at as an input to update its own hidden state to produce ht+1 to be used at time t + 1.", 还有一个未来的预测z。看到这里的温度系数,用于加入噪声,温度系数越大,则对网络施加的干扰越大。文中说到可以“adjust τ to control the uncertainty of the environment generated by M”。