sksq96 / pytorch-summary

Model summary in PyTorch similar to `model.summary()` in Keras
MIT License
3.98k stars 412 forks source link

AttributeError: ‘NoneType’ object has no attribute ‘size’ #185

Open Aidenfaustine opened 2 years ago

Aidenfaustine commented 2 years ago

hello. when i use torch summary. it reports some issues about:

File “F:\Anaconda3\lib\site-packages\torchsummary\torchsummary.py”, line 23, in [-1] + list(o.size())[1:] for o in output AttributeError: ‘NoneType’ object has no attribute ‘size’

here is my model structure. CommonsenseGRUModel( (linear_in): Linear(in_features=1024, out_features=300, bias=True) (norm1a): LayerNorm((1024,), eps=1e-05, elementwise_affine=True) (norm1b): LayerNorm((1024,), eps=1e-05, elementwise_affine=True) (norm1c): LayerNorm((1024,), eps=1e-05, elementwise_affine=True) (norm1d): LayerNorm((1024,), eps=1e-05, elementwise_affine=True) (norm3a): BatchNorm1d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) (norm3b): BatchNorm1d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) (norm3c): BatchNorm1d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) (norm3d): BatchNorm1d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) (dropout): Dropout(p=0.5, inplace=False) (dropout_rec): Dropout(p=False, inplace=False) (cs_rnn_f): CommonsenseRNN( (dropout): Dropout(p=False, inplace=False) (dialogue_cell): CommonsenseRNNCell( (g_cell): GRUCell(600, 150) (p_cell): GRUCell(918, 150) (r_cell): GRUCell(1218, 150) (i_cell): GRUCell(918, 150) (e_cell): GRUCell(750, 450) (dropout): Dropout(p=False, inplace=False) (dropout1): Dropout(p=False, inplace=False) (dropout2): Dropout(p=False, inplace=False) (dropout3): Dropout(p=False, inplace=False) (dropout4): Dropout(p=False, inplace=False) (dropout5): Dropout(p=False, inplace=False) (attention): SimpleAttention( (scalar): Linear(in_features=150, out_features=1, bias=False) ) ) ) (cs_rnn_r): CommonsenseRNN( (dropout): Dropout(p=False, inplace=False) (dialogue_cell): CommonsenseRNNCell( (g_cell): GRUCell(600, 150) (p_cell): GRUCell(918, 150) (r_cell): GRUCell(1218, 150) (i_cell): GRUCell(918, 150) (e_cell): GRUCell(750, 450) (dropout): Dropout(p=False, inplace=False) (dropout1): Dropout(p=False, inplace=False) (dropout2): Dropout(p=False, inplace=False) (dropout3): Dropout(p=False, inplace=False) (dropout4): Dropout(p=False, inplace=False) (dropout5): Dropout(p=False, inplace=False) (attention): SimpleAttention( (scalar): Linear(in_features=150, out_features=1, bias=False) ) ) ) (sense_gru): GRU(768, 384, bidirectional=True) (matchatt): MatchingAttention( (transform): Linear(in_features=900, out_features=900, bias=True) ) (linear): Linear(in_features=900, out_features=300, bias=True) (smax_fc): Linear(in_features=300, out_features=7, bias=True) )

here is about using summary. input_size = [( 14,1, 1024), (14, 1, 1024), (14, 1, 1024), (14, 1, 1024), (14, 1, 768), (14, 1, 768), (14, 1, 768),(14, 1, 768), (14, 1, 768), (14, 1, 9), (1, 14)] from torchsummary import summary model_summary = summary(model,input_size = input_size) print(model_summary)

Could you please give me some detailed suggestions about how to fix it? Thanks, best wishes

dongdongunique commented 1 year ago

I encounter the same problem today. And I solve it by installing torchinfo(pip install torchinfo)

iris-qq commented 1 year ago

your forward should be return some value, hope help you

WkBored commented 1 year ago

Hi, have you solved this problem? I have met same bug that was very annoying