我正在关注其中一本关于深度学习的书中的代码,其中作者使用theano作为这种网络的库。当我尝试运行代码时:
i = T.lscalar() # mini-batch index
train_mb = theano.function(
[i], cost, updates=updates,
givens={
self.x:
training_x[i*self.mini_batch_size: (i+1)*self.mini_batch_size],
self.y:
training_y[i*self.mini_batch_size: (i+1)*self.mini_batch_size]
})
我收到以下错误:" IndexError:未能将TensorVariable类型的切片条目强制转换为整数"。
该theano函数的调用如下所示:
cost_ij = train_mb(minibatch_index)
所以,基本上,看起来i
没有被评估,python尝试使用TensorVariable而不是普通整数,尽管我将普通整数作为函数参数传递。谁能指出我在这里做错了什么?