我实现了一个名为sharedModule的模块供我自己使用。我已经覆盖了下面的updateGradInput方法:
function SharedModule:updateGradInput(input, gradOutput)
test_grad = {}
print("call updateGradInput")
test_input = input
test_gradOutput = gradOutput
assert(type(gradOutput) == 'table' and #input == #gradOutput)
local T = #input
for t = 1, T do
self.gradInput[t] = self.clones[t]: updateGradInput(input[t], gradOutput[t])
test_grad[t] = self.gradInput[t]
end
print(#self.gradInput) -- print normal value
--self.gradInput = test_grad --
return self.gradInput -- empty, ???
end
然而,当我在我的模块上调用后退方法时,self.gradInput字段没有更新,问题是什么,任何人都可以帮助我?
答案 0 :(得分:1)
后向方法将调用名为updateGradInput和accGradParams的两个方法,结果是由于拼写错误而在accGradParams中发生错误