Theano`then`分支上的值的数量应该与`else`分支

时间:2015-04-27 10:55:00

标签: conditional-statements theano

当我在theano中使用ifelse时,标题是错误消息。

说,我有一个像这样的python片段,我想在theano中获取:

if condition:
  calculate(a,b,c)
else:
  # Do nothing

现在如果我写在theano:

ifelse(condition, calculate(a,b,c), [])

如果在标题中给出了错误。请问如何解决这个错误?

谢谢

1 个答案:

答案 0 :(得分:0)

ifelse需要在编译时评估条件的每个分支,您的错误是因为您在false条件下返回的列表包含零个theano变量,但calculate()函数返回至少一个。我相信对返回的数据类型还有其他检查,但不记得我的头脑。对于您发布的代码,如果calculate始终返回缩放器值:

rval = ifelse(condition, calculate(a,b,c), 0.)

应编译