相当于a [a< Theano中0] = 0?

时间:2015-01-07 09:33:04

标签: python theano

在Theano(张量变量)中NumPy的a[a < 0] = 0相当于什么? 我希望我的所有矩阵元素都小于等于零的数字。

2 个答案:

答案 0 :(得分:5)

这项工作:

import theano
a=theano.tensor.matrix()
idxs=(a<0).nonzero()
new_a=theano.tensor.set_subtensor(a[idxs], 0)

别忘了,Theano是一种象征性的语言。因此,变量a不会在用户图中发生变化。新变量new_a包含新值,仍然具有旧值。

Theano将优化此功能,以便在可能的情况下就位。

答案 1 :(得分:1)

这也有效,也可以添加上限

import theano
import theano.tensor as T
a = T.matrix()
b = a.clip(0.0)

或者如果你想要上限,你可能想尝试:

b = T.clip(a, 0.0, 1.0)

其中1.0是想要设置上限的地方。

检查文件here