0

我已经使用 TF2 构建了一个演员评论家网络。我在以下代码部分中不断收到错误消息:

with tf.GradientTape() as tape:
        actions = actor_model(state_batch, training=True)
        new_actions2 = mapp_raw_batch_actions(actions)
critic_value = critic_model([state_batch, new_actions2], training=True)
        # Used `-value` as we want to maximize the value given
        # by the critic for our actions
        actor_loss = -tf.math.reduce_mean(critic_value)

    actor_grad = tape.gradient(actor_loss, actor_model.trainable_variables)
    actor_optimizer.apply_gradients(
        zip(actor_grad, actor_model.trainable_variables)
    )

该错误actor_grad专门[None, None, None, None, None, None]针对actor_grad. 当我使用该mapp_raw_batch_actions函数将参与者网络中的原始操作映射到策略中的合法操作时,会出现此错误。但是,当我没有将参与者的原始行为映射到法律行为时,我不会遇到这个错误,但它会影响我的最终结果。任何人都知道如何解决这个问题?

PS我的法律行动比演员网络的原始行动要大得多。我的原始动作是由tanh.

4

0 回答 0