我尝试使用泡菜来保存训练有素的特工

   try:
      agent1 = pickle.load(open(model_file_path, 'rb'))
    except:
      print("An exception occurred")
      train_agent(True)

    if agent1 == None:
        train_agent(True)

    human = Human()
    human.set_sym(env1.o)

    agent1.set_verbose(True)
    start_session(agent1, human, Environment(), draw=2)

    pickle.dump(agent1, open(model_file_path, 'wb'))

    return agent1.prediction

但是保存代理的文件变得非常沉重,大约1GB,因此我无法救援该代理

最佳答案

HDF5 Format是一种网格格式,非常适合存储多维数字数组。例如:使用Keras / Tensorflow,您可以非常轻松地保存/加载模型和权重:

# Save the model
model.save('path_to_my_model.h5')

# Recreate the exact same model purely from the file
new_model = keras.models.load_model('path_to_my_model.h5')

# Save weights
model.save_weights('path_to_my_weights.h5')

# Load weights
new_model.load_weights('path_to_my_weights.h5')

关于machine-learning - 如何保存训练有素的强化学习代理以免每次都进行训练?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59125756/

10-12 18:01