Theano TypeError:function()至少需要1个参数(给定1个)

时间:2013-05-28 08:29:28

标签: python theano

我的一个Theano函数不接受任何输入,只使用共享变量来计算输出。但是这个函数会抛出TypeError: function() takes at least 1 argument (1 given)

这是一个最小的例子:

import theano as th
import theano.tensor as T
import numpy as np

x, y = T.dscalars('x', 'y')
z = th.shared(np.zeros(2))

f1 = th.function(inputs=[x], updates=[(z, z+x)]) 
f2 = th.function(outputs=z)
f1(3)
print f2()


Traceback (most recent call last):
  File "/home/me/temp/theano.test.py", line 9, in <module>
    f2 = th.function(updates=[(z, z*z)])
TypeError: function() takes at least 1 argument (1 given)

1 个答案:

答案 0 :(得分:1)

来自:https://stackoverflow.com/a/16782594/380038

&#34; theano.function()始终需要输入列表。如果函数采用0输入,就像在这种情况下,您需要为输入提供一个空列表。&#34;

f2 = th.function(outputs=z)必须为f2 = th.function([], outputs=z)