5

我试图 s=max(ele, 0)在 theano 中的矩阵上找到元素的值。我对theano没有太多经验。

到目前为止我有

x = theano.tensor.dmatrix('x')
s = (x + abs(x)) / 2  # poor man's trick
linmax = function([x], s)

这可行,但并不漂亮,我认为我应该能够使用theano.tensor.maximum它。

在matlab中,做我想做的事,我会写 linmax=@(x) max (x, zeros (size (x)))

4

2 回答 2

8

这对我有用:

import theano.tensor as T
from theano import function

x = T.dmatrix('x')
linmax = function([x], T.maximum(x,0))

测试:

linmax([[-1,-2],[3,4]])

输出:

array([[0.,0.],[3.,4.]])
于 2013-11-27T06:41:09.193 回答
2

我已经看到这实现为

s = x*(x>0)

几次。不知道这是否比 T.maximum() 快

于 2014-07-22T12:41:56.670 回答