diff options
-rw-r--r-- | Module.lua | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -192,8 +192,12 @@ function Module:getParameters() local k, v = unpack(storageAndOffset) flatParameters[{{v+1,v+k:size()}}]:copy(Tensor():set(k)) end - for k = 1,flatUsedParameters:nElement() do - flatUsedParameters[k] = flatParameters[k+cumSumOfHoles[k] ] + if cumSumOfHoles:sum() == 0 then + flatUsedParameters:copy(flatParameters) + else + for k = 1,flatUsedParameters:nElement() do + flatUsedParameters[k] = flatParameters[k+cumSumOfHoles[k]] + end end return flatUsedParameters end |