Theano Tensor删除元素?
Theano Tensor remove element?
我目前正在努力学习 theano。
有没有办法,例如,从 NxN 张量 delete/add a row/column?文档中突出显示的 subtensor 功能仅修改元素,而不是删除元素。
Sutensor 允许使用张量的一部分。 set_subtensor和inc_subtensor允许修改其中的一部分。
Theano 支持 Python 和 NumPy 索引以及高级索引。您可以通过多种方式做您想做的事。这是一个简单的:
import theano, numpy
T = theano.tensor.matrix()
f = theano.function([T], T[[1, 2, 4]])
f(numpy.arange(25).reshape(5, 5))
大多数情况下,您只需传递一个列表,其中包含您要保留的行的索引。对于列,只需使用:
import theano, numpy
T = theano.tensor.matrix()
f = theano.function([T], T[:, [1, 2, 4]])
f(numpy.arange(25).reshape(5, 5))
要添加行,我们支持与 numpy 相同的接口,因此大多数情况下,您可以通过连接所需的部分来构建新的张量:
import theano, numpy
T = theano.tensor.matrix()
o = theano.tensor.concatenate([T[2], T[4], [100, 101, 102, 103, 104]])
f = theano.function([T], o)
f(numpy.arange(25).reshape(5, 5))
我目前正在努力学习 theano。
有没有办法,例如,从 NxN 张量 delete/add a row/column?文档中突出显示的 subtensor 功能仅修改元素,而不是删除元素。
Sutensor 允许使用张量的一部分。 set_subtensor和inc_subtensor允许修改其中的一部分。
Theano 支持 Python 和 NumPy 索引以及高级索引。您可以通过多种方式做您想做的事。这是一个简单的:
import theano, numpy
T = theano.tensor.matrix()
f = theano.function([T], T[[1, 2, 4]])
f(numpy.arange(25).reshape(5, 5))
大多数情况下,您只需传递一个列表,其中包含您要保留的行的索引。对于列,只需使用:
import theano, numpy
T = theano.tensor.matrix()
f = theano.function([T], T[:, [1, 2, 4]])
f(numpy.arange(25).reshape(5, 5))
要添加行,我们支持与 numpy 相同的接口,因此大多数情况下,您可以通过连接所需的部分来构建新的张量:
import theano, numpy
T = theano.tensor.matrix()
o = theano.tensor.concatenate([T[2], T[4], [100, 101, 102, 103, 104]])
f = theano.function([T], o)
f(numpy.arange(25).reshape(5, 5))