相关疑难解决方法(0)

Python中常见的pickle用例

我看过pickle文档,但我不明白pickle在哪里有用.

泡菜有哪些常见的用例?

python serialization use-case pickle

127
推荐指数
5
解决办法
2万
查看次数

如何保存和加载xgboost模型?

XGBoost指南的链接上,

  1. 可以保存模型. bst.save_model('0001.model')
  2. 模型及其特征映射也可以转储到文本文件中.
    bst.dump_model('dump.raw.txt') # dump model bst.dump_model('dump.raw.txt','featmap.txt')# dump model with feature map
  3. 可以按如下方式加载已保存的模型: bst = xgb.Booster({'nthread':4}) #init model bst.load_model("model.bin") # load data

我的问题是:

  1. save_model&之间有什么区别dump_model
  2. 保存'0001.model''dump.raw.txt','featmap.txt'?之间的区别是什么?
  3. 为什么加载的型号名称model.bin与要保存的名称不同0001.model
  4. 假设我训练两个模型model_Amodel_B,我想保存这两种模式以供将来使用,这saveload我应该使用功能?你能帮忙展示清楚的过程吗?

python machine-learning save xgboost

26
推荐指数
5
解决办法
3万
查看次数

无法使用 keras.load_model 保存/加载模型 - IndexError: list index out of range

我正在使用 tf 和 Keras 按照此处此处使用的方法创建 cycleGAN

网络结构相当复杂:很多模型相互嵌套。

我无法保存和重新加载经过训练的模型。

培训完成后,我使用

 generator_AtoB.save("models/generator_AtoB.h5")
Run Code Online (Sandbox Code Playgroud)

pickle.dump(generator_AtoB, saveFile)
Run Code Online (Sandbox Code Playgroud)

保存模型:这不会导致错误,并在提供的路径中创建一个文件。

通过检查h5dump | less我可以看到 .h5 文件包含数据。

稍后使用 keras 重新加载模型:

generator_AtoB = load_model("models/generator_AtoB.h5")
Run Code Online (Sandbox Code Playgroud)

或泡菜:

pickle.load(saveFile)
Run Code Online (Sandbox Code Playgroud)

导致错误:

Traceback (most recent call last):
File "test_model.py", line 14, in <module>
generator_AtoB = pickle.load(saveFile)
File "/home/MYUSERNAME/.virtualenvs/tensorflow_py3/lib/python3.5/site-packages/keras/engine/network.py", line 1266, in __setstate__
model = saving.unpickle_model(state)
File "/home/MYUSERNAME/.virtualenvs/tensorflow_py3/lib/python3.5/site-packages/keras/engine/saving.py", line 435, in unpickle_model
return _deserialize_model(f)
File "/home/MYUSERNAME/.virtualenvs/tensorflow_py3/lib/python3.5/site-packages/keras/engine/saving.py", line 274, in _deserialize_model
reshape=False)
File "/home/MYUSERNAME/.virtualenvs/tensorflow_py3/lib/python3.5/site-packages/keras/engine/saving.py", line 682, in preprocess_weights_for_loading
weights = …
Run Code Online (Sandbox Code Playgroud)

python save keras tensorflow

9
推荐指数
1
解决办法
1651
查看次数