基于好奇心驱动探索的DQN与ICM模型训练实践
1. 搭建Q网络与策略函数
在强化学习中,我们为智能体使用深度Q网络(DQN)。DQN接收一个状态并输出动作值,即对采取每个可能动作的预期奖励的预测。我们利用这些动作值来确定动作选择策略。
对于特定游戏,有12个离散动作,因此DQN的输出层将产生一个长度为12的向量,其中第一个元素是采取动作0的预测值,依此类推。动作值通常在两个方向上都是无界的,如果奖励可以是正或负(在这个游戏中是可能的),动作值也可以是正或负,所以我们不在最后一层应用任何激活函数。
DQN的输入是形状为 Batch x 3 x 42 x 42 的张量,其中通道维度(3)表示游戏的最近三帧。
DQN的架构由四个卷积层和两个线性层组成。在每个卷积层和第一个线性层之后使用指数线性单元(ELU)激活函数,但最后一层之后不使用激活函数。架构图如下:
graph LR
A[输入: St 1 x 3 x 42 x 42] --> B[Conv2d in_channels=3, out_channels=32, kernel_size=(3,3), stride=2, padding=1]
B --> C[Conv2d 32, 32, (3,3), 2, 1]
C --> D[Conv2d 32, 32, (3,3), 2, 1]
D --> E[Conv2d 32, 32, (3,3), 2, 1]
E --> F[Linear(288, 100)]
F --> G[Li
超级会员免费看
订阅专栏 解锁全文

2995

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



