我有一个pkl文件,其中包含我最初使用GPU转储的ndarray。我用GPU解开它,现在我想将它存储为任何东西,以后我可以使用CPU解压缩。我在超级计算机上运行所有内容后来我想在普通计算机上访问ndarrays,而不需要花哨的GPU。我查看了诸如
之类的功能save()
但allow_pickle=False
我无法设置savez()
,当我加载与THEANO_FLAGS="device=gpu,floatX=float32" srun -u python deep_q_rl/unpicklestuff.py
一起存储的数组时,它是空的。
这是我保存的方式:
我运行import sys
import cPickle
import lasagne.layers
import os
import numpy as np
for i in os.listdir(path):
net_file = open(path+str(i), 'r')
network = cPickle.load(net_file)
q_layers = lasagne.layers.get_all_layers(network.l_out)
np.savez(savepath+str(i), q_layers)
unpicklestuff.py:
q_layers = np.load(path)
这就是我以后加载它们的方式:
{{1}}