CODE:
x=T.dscalar('x')
y=T.dscalar('y')
z=T.dscalar('z')
z=x+y
f= function([x,y],z)
UPON RUNNING:
$ T.dscalar
TensorType(float64,标量)
$ x.type
TensorType(float64,标量)
$ z.type
TensorType(float64,标量)
$ x.type是T.dscalar
True<<<<<<<< -------------------------------( 1)
$ z.type是T.dscalar
错误<<<<<<<< -------------------------------( 2)
为什么不是(1)& (2)相同吗?
答案 0 :(得分:0)
线z = T.dscalar('z')
毫无意义,因为它不是图形输入。当你z=x+y
时,它会被丢弃。 z
的类型对象是使用Op的make_node
方法构建的,而不是仅使用T.dscalar
。
最后,Python is
运算符会比较两个对象是否相同而不是相等。如果您选中z.type == T.dscalar
,则会True
。