我在我的 jupyter 笔记本上运行 sketch_rnn.ipynb,在加载环境以加载经过训练的数据集时,它返回错误“当 allow_pickle=False 时无法加载对象数组”
这是 google 开发人员在开发甚至在 google colab 中运行的 sketch_rnn 算法时已经使用的代码。过去我自己在 google colab 上运行过它,但似乎没有在我自己的 jupyter notebook 上运行
from magenta.models.sketch_rnn.sketch_rnn_train import *
from magenta.models.sketch_rnn.model import *
from magenta.models.sketch_rnn.utils import *
from magenta.models.sketch_rnn.rnn import *
model_params.batch_size = 1
eval_model_params = sketch_rnn_model.copy_hparams(model_params)
eval_model_params.use_input_dropout = 0
eval_model_params.use_recurrent_dropout = 0
eval_model_params.use_output_dropout = 0
eval_model_params.is_training = 0
sample_model_params = sketch_rnn_model.copy_hparams(eval_model_params)
sample_model_params.max_seq_len = 1
return [model_params, eval_model_params, sample_model_params]
[train_set, valid_set, test_set, hps_model, eval_hps_model,
sample_hps_model] = load_env_compatible(data_dir, model_dir)
我希望输出是
INFO:tensorflow:Downloading http://github.com/hardmaru/sketch-rnn-
datasets/raw/master/aaron_sheep/aaron_sheep.npz
INFO:tensorflow:Loaded 7400/300/300 from aaron_sheep.npz
INFO:tensorflow:Dataset combined: 8000 (7400/300/300), avg len 125
INFO:tensorflow:model_params.max_seq_len 250.
total images <= max_seq_len is 7400
total images <= max_seq_len is 300
total images <= max_seq_len is 300
INFO:tensorflow:normalizing_scale_factor 18.5198.
但它给了我
ValueError: Object arrays cannot be loaded when allow_pickle=False
原文由 Duncan Jerry 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用 allow_pickle=True 作为 np.load() 的参数之一。