"TypeError: Unknown parameter type: <class 'dict_values'>"

"TypeError: Unknown parameter type: <class 'dict_values'>"

我正在使用此代码:“https://github.com/LouisFoucard/MC_DCNN/blob/master/.ipynb_checkpoints/MultiChannel_DeepConvNet-checkpoint.ipynb

当我 运行 代码时,我得到的错误是:

TypeError: unsupported operand type(s) for +: 'dict_values' and 'list'

这个错误与这行代码有关:

train = theano.function(inps.values()+[target_values],cost, updates=updates)

我将此行更改为:

train = theano.function(inputs=[inps.values(), target_values], outputs=cost, updates=updates)

这次我得到的错误是:

TypeError: Unknown parameter type:

这似乎 Theano.function 不接受 Dictionary.values 作为输入?

谢谢

您似乎正在尝试 运行 python 2 代码 python 3, 其中 dict.values returns a dictionary view object

解决方案非常简单 - 只需将 dict.values 包装在 list:

train = theano.function(list(inps.values())+[target_values], cost, updates=updates)