我在rllib文档中没有看到任何内容允许我在keras中打印类似print(model.summary())
的模型的快速摘要。我试过使用tf slim和
variables = tf.compat.v1.model_variables()
slim.model_analyzer.analyze_vars(variables, print_info=True)
以大致了解tensorflow模型,但在初始化模型(插入ESTrainer类init的末尾(后,没有发现任何变量。具体来说,我一直试图获得进化策略(ES(策略的摘要,以验证对模型配置的更改是否按预期更新,但我无法获得摘要打印。
有现成的方法吗?斯利姆希望在这里工作吗?
培训代理可以返回允许您访问模型的策略:
agent = ppo.PPOTrainer(config, env=select_env)
policy = agent.get_policy()
policy.model.base_model.summary() # Prints the model summary
样本输出:
Layer (type) Output Shape Param # Connected to
==================================================================================================
observations (InputLayer) [(None, 7)] 0 []
fc_1 (Dense) (None, 256) 2048 ['observations[0][0]']
fc_value_1 (Dense) (None, 256) 2048 ['observations[0][0]']
fc_2 (Dense) (None, 256) 65792 ['fc_1[0][0]']
fc_value_2 (Dense) (None, 256) 65792 ['fc_value_1[0][0]']
fc_out (Dense) (None, 5) 1285 ['fc_2[0][0]']
value_out (Dense) (None, 1) 257 ['fc_value_2[0][0]']
==================================================================================================
Total params: 137,222
Trainable params: 137,222
Non-trainable params: 0