返回Theano向量中的值的索引

时间:2013-12-15 03:32:06

标签: python theano

Theano中用于返回Vector中特定值的索引的过程是什么?在NumPy中,这将是numpy.where(my_array==x)。 Theano的Tensor.where是一个转换声明。

1 个答案:

答案 0 :(得分:4)

numpy.where(condition,[x,y])有2种行为。 Theano总是支持你为where()提供3个参数。如NumPy doc [1]中所述,numpy.where(cond)相当于非零()。

你可以在Theano中这样做:

import theano
import numpy as np
v = np.arange(10)
var = theano.tensor.vector()
out = theano.tensor.eq(var, 2).nonzero()[0]
print out.eval({var: v})

检查第5行.NumPy非零()返回一个元组。 Theano做同样的事情。在非零()的输入中,每个维度的元组中有一个向量。

[1] http://docs.scipy.org/doc/numpy/reference/generated/numpy.where.html