-
Notifications
You must be signed in to change notification settings - Fork 53
Open
Description
After the first batch was evaluated, I kept getting this error:
imi@imi-All-Series:~/graulef/deep-soli$ th net/main.lua --file ../datapre --list config/file_half.json --load ../uni_image_np_50.t7 --inputsize 32 --inputch 4 --label 11 --datasize 32 --datach 4 --batch 16 --maxseq 40 --cuda --cudnn
[eval] data with 1364 seq
[net] loading model ../uni_image_np_50.t7
nn.Sequencer @ nn.Recursor @ nn.MaskZero @ nn.Sequential {
[input -> (1) -> (2) -> (3) -> (4) -> (5) -> (6) -> (7) -> (8) -> (9) -> (10) -> (11) -> (12) -> (13) -> (14) -> (15) -> (16) -> (17) -> (18) -> (19) -> (20) -> (21) -> output]
(1): cudnn.SpatialConvolution(4 -> 32, 3x3, 2,2)
(2): nn.SpatialBatchNormalization (4D) (32)
(3): cudnn.ReLU
(4): cudnn.SpatialConvolution(32 -> 64, 3x3, 2,2)
(5): nn.SpatialBatchNormalization (4D) (64)
(6): cudnn.ReLU
(7): nn.SpatialDropout(0.400000)
(8): cudnn.SpatialConvolution(64 -> 128, 3x3, 2,2)
(9): nn.SpatialBatchNormalization (4D) (128)
(10): cudnn.ReLU
(11): nn.SpatialDropout(0.400000)
(12): nn.Reshape(1152)
(13): nn.Linear(1152 -> 512)
(14): nn.BatchNormalization (2D) (512)
(15): cudnn.ReLU
(16): nn.Dropout(0.5, busy)
(17): nn.Linear(512 -> 512)
(18): nn.LSTM(512 -> 512)
(19): nn.Dropout(0.5, busy)
(20): nn.Linear(512 -> 13)
(21): cudnn.LogSoftMax
}
/home/imi/graulef/datapre/0_12_20/label.json
/home/imi/graulef/datapre/0_10_18/label.json
/home/imi/graulef/datapre/0_6_8/label.json
/home/imi/graulef/datapre/0_3_0/label.json
/home/imi/graulef/datapre/0_12_22/label.json
/home/imi/graulef/datapre/0_13_10/label.json
/home/imi/graulef/datapre/0_12_3/label.json
/home/imi/graulef/datapre/0_5_14/label.json
/home/imi/graulef/datapre/0_10_15/label.json
/home/imi/graulef/datapre/0_2_5/label.json
/home/imi/graulef/datapre/0_3_5/label.json
/home/imi/graulef/datapre/0_3_18/label.json
/home/imi/graulef/datapre/0_12_21/label.json
/home/imi/graulef/datapre/0_5_21/label.json
/home/imi/graulef/datapre/0_10_20/label.json
/home/imi/graulef/datapre/0_13_6/label.json
Evaluation passed
2
just used :norm without error
/home/imi/torch/install/bin/luajit: /home/imi/torch/install/share/lua/5.1/rnn/MaskZero.lua:55: invalid arguments: CudaTensor CudaTensor number
expected arguments: *CudaTensor* CudaByteTensor float
stack traceback:
[C]: in function 'maskedFill'
/home/imi/torch/install/share/lua/5.1/rnn/MaskZero.lua:55: in function 'recursiveMask'
/home/imi/torch/install/share/lua/5.1/rnn/MaskZero.lua:99: in function 'updateOutput'
/home/imi/torch/install/share/lua/5.1/rnn/Recursor.lua:27: in function 'updateOutput'
/home/imi/torch/install/share/lua/5.1/rnn/Sequencer.lua:94: in function 'forward'
./net/rnntrain.lua:33: in function 'batchEval'
./net/train.lua:25: in function 'epochEval'
./net/train.lua:47: in function 'train'
net/main.lua:45: in main chunk
[C]: in function 'dofile'
.../imi/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:150: in main chunk
[C]: at 0x004065d0
It can be fixed by warping the part of code in the rnn library. Line number might differ, just look for the line of code where the mask is applied:output:maskedFill(zeroMask, 0). The file you wanna fix is /home/usr/torch/install/share/lua/5.1/rnn/MaskZero.lua. Warping works like this:
if(zeroMask:type() == 'torch.CudaTensor') then
zeroMask = zeroMask:cudaByte()
end
output:maskedFill(zeroMask, 0)
if(zeroMask:type() == 'torch.CudaByteTensor') then
zeroMask = zeroMask:cuda()
end
This solved the issue for me, hope this helps if anyone has the same problem!
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels