小编and*_*rew的帖子

Tensorflow:如何将转换层权重复制到另一个变量以用于强化学习?

我不确定Tensorflow是否可行,我担心我可能不得不切换到PyTorch。

基本上,我有这层:

self.policy_conv1 = tf.layers.conv2d(inputs=self.policy_s, filters=16, kernel_size=(8,8),strides=(4,4), padding = 'valid',activation=tf.nn.relu, kernel_initializer=tf.glorot_uniform_initializer, bias_initializer = tf.glorot_uniform_initializer)
Run Code Online (Sandbox Code Playgroud)

我正在尝试每训练约100次迭代将其复制到另一层:

self.eval_conv1 = tf.layers.conv2d(inputs=self.s, filters=16, kernel_size=(8,8),strides=(4,4), padding = 'valid', activation=tf.nn.relu, kernel_initializer=tf.glorot_uniform_initializer, bias_initializer = tf.glorot_uniform_initializer)
Run Code Online (Sandbox Code Playgroud)

tf.assign 似乎不是正确的工具,并且以下内容似乎无效:

self.policy_conv1 = tf.stop_gradient(tf.identity(self.eval_conv1))
Run Code Online (Sandbox Code Playgroud)

本质上,我希望将其遍历eval conv层复制到policy conv层,并且不要在每次图形运行一个变量或另一个变量时将它们绑在一起(这与上面的身份代码段一起发生)。如果有人可以指出所需的代码,我将不胜感激。

python reinforcement-learning conv-neural-network tensorflow

2
推荐指数
1
解决办法
1247
查看次数