【发布时间】:2015-06-24 11:23:52
【问题描述】:
在 Theano 深度学习教程中,y 是一个被强制转换的共享变量:
y = theano.shared(numpy.asarray(data, dtype=theano.config.floatX))
y = theano.tensor.cast(y, 'int32')
我稍后想为 y 设置一个新值。
这适用于 GPU:
y.owner.inputs[0].owner.inputs[0].set_value(np.asarray(data2, dtype=theano.config.floatX))
对于 CPU,这是可行的:
y.owner.inputs[0].set_value(np.asarray(data2, dtype=theano.config.floatX))
为什么这需要在 GPU 和 CPU 之间使用不同的语法?我希望我的代码适用于这两种情况,我做错了吗?
【问题讨论】: