两个标量相加
import theano.tensor as T
from theano import function
x = T.dscalar('x')
y = T.dscalar('y')
z = x + y
f = function([x,y], z)
f(2, 3)
1.
x = T.dscalar('x')
y = T.dscalar('y')
先定义两个符号x,y,代表你想用来相加的两个标量数据,在theano中所有的符合都要指定一个类型,
T.dscalar是一个0维double(d)的arrays(scalar){"0-dimensional arrays(scalar) of doubles(d)"},它是一个
Theano的Type,dscalar不是一个类。因此x和y都不是dscalar的实例,它们是TensorVariable的实例。
{ps:有点绕,可以这样认为,x和y是TensorVariable类型,而它们所取的值,比如x=2.0,y=3.0中的2.0和3.0,是double型的标量}
2.
z = x + y
同样,z也是和x与y一样的一个符号,它表示x与y的和。
可以用pp函数来打印z.
from theano import pp
print pp(z)
3.
f = function([x, y], z)
构造一个函数,x和y为输入,z为输出。
调用这个函数用f(2.0, 3.0)
4.
z.eval({x:2.0, y:3.0)}
也可以使用eval函数,输入参数用map类型表示。