我正在尝试将pylearn2
GPU模型转换为与CPU兼容的版本以在远程服务器上进行预测-如何将CudaNdarraySharedVariable
转换为TensorVariable
以避免在GPU上调用cuda代码时出错-少机器?实验性theano标志unpickle_gpu_to_cpu
似乎已经留下了一些CudaNdarraySharedVariable
(特别是model.layers[n].transformer._W
)。
最佳答案
对于普通的CudaNdarray变量,应执行以下操作:
'''x = CudaNdarray ... x_new = theano.tensor.TensorVariable(CudaNdarrayType([False] * tensor_dim))
f = theano.function([x_new],x_new)
convert_x = f(x)
'''