tensorflow 加载参数,强化学习模型可扩展。

本文介绍如何将强化学习中4个智能体训练的模型扩展至更多智能体,通过共享模型参数实现可扩展性,并提供详细步骤及参数加载技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

强化学习中想要在4个智能体训练出来的模型扩展到更多智能体的模型。

若要可扩展,首先需要所有智能体共享一个模型参数,方法是设置reuse=True即可。

然而,现实操作可能还会存在问题。因此通常三个步骤来查看。

1、通常先输出网络的参数。下面三种方法稍有不同,具体输出可以看出。

# 得到该网络中,所有可以加载的参数的三种方法
variables = tf.contrib.framework.get_variables_to_restore()
for i in range(len(variables)):
    print(variables[i])
print('------------variables22222222222---------------')
variables2 = tf.all_variables()
for i in range(len(variables2)):
    print(variables2[i])
print('---------variables33333333------------------')
variables2 = tf.trainable_variables() #得到可训练参数
for i in range(len(variables2)):
   print(variables2[i])

2、过滤一些无关紧要的参数

 # 删除其他参数,adv_agent层中的参数
        variables_to_restore = [v for v in variables if v.name.split('/')[0] == 'adv_agent']

3、 加载model的(过滤后)这部分参数

# 构建这部分参数的saver
        saver = tf.train.Saver(variables_to_restore)
        saver.restore(U.get_session(),arglist.load_dir) #arglist.load_dir就是模型存储的位置

参考链接:

1、https://blog.youkuaiyun.com/marsjhao/article/details/72829635#commentBox

2、 https://blog.youkuaiyun.com/huachao1001/article/details/78501928

3、https://blog.youkuaiyun.com/u011961856/article/details/77064631

4、https://blog.youkuaiyun.com/b876144622/article/details/79962727

5、https://blog.youkuaiyun.com/jeryjeryjery/article/details/79880475

6、https://blog.youkuaiyun.com/CV_YOU/article/details/80698942 (多次载入部分参数)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值