我已经实现了PPO来解决Atari环境。有很长一段时间,我不明白为什么我的模型不能像其他开源解决方案那样快速地收敛。最后,它归结为这个单一的权值初始化(在PyTorch)为CNN:
init_ = lambda m: init(m, nn.init.orthogonal_, lambda x: nn.init.constant_(x, 0), nn.init.calculate_gain("relu"))
然后应用到每一层。换句话说,神经网络必须进行正交初始化。一旦我添加了这个,我的模型就会像预期的那样收敛。
为什么正交初始化比PPO的xavier初始化要好得多?
发布于 2021-03-26 12:31:52
参见本文的(深线性神经网络非线性学习动力学的精确解)结果:
此外,我们还引入了误差信号可靠反向传播的一个数学条件,即动态等距,并令人惊讶的是,尽管随机尺度高斯初始化具有保范性,但是随机尺度高斯初始化不能达到这一条件,而贪婪的预训练和随机正交初始化可以实现深度无关的学习时间。最后,我们证明了动力学等距的性质即使在超混沌边缘的超深非线性随机正交网络中也能保持良好的逼近性。
我认为这是对你问题的回答。
https://datascience.stackexchange.com/questions/64899
复制相似问题