fangwei123456 / spikingjelly

SpikingJelly is an open-source deep learning framework for Spiking Neural Network (SNN) based on PyTorch.
https://spikingjelly.readthedocs.io
Other
1.32k stars 237 forks source link

将ANNLSTM改为SpikingLSTM时,训练缓慢且不收敛 #512

Open Zihao0 opened 6 months ago

Zihao0 commented 6 months ago

Read before creating a new issue

For faster response

You can @ the corresponding developers for your issue. Here is the division:

Features Developers
Neurons and Surrogate Functions fangwei123456
Yanqi-Chen
CUDA Acceleration fangwei123456
Yanqi-Chen
Reinforcement Learning lucifer2859
ANN to SNN Conversion DingJianhao
Lyu6PosHao
Biological Learning (e.g., STDP) AllenYolk
Others Grasshlw
lucifer2859
AllenYolk
Lyu6PosHao
DingJianhao
Yanqi-Chen
fangwei123456

We are glad to add new developers who are volunteering to help solve issues to the above table.

Issue type

SpikingJelly version

0.0.0.0.14

Description

将ANNLSTM改为SpikingLSTM时,训练缓慢且不收敛

Minimal code to reproduce the error/bug


import spikingjelly
# ...
#ANNLSTM
self.lstm = nn.LSTM(
            input_size=in_features * node_num,
            hidden_size=lstm_features,
            num_layers=1,
            batch_first=True,
            dropout=dropout)       
#SNNLSTM
 self.lstm = rnn.SpikingLSTM(
            input_size=in_features * node_num,
            hidden_size=lstm_features,
            num_layers=1)
fangwei123456 commented 6 months ago

这个应该不是bug,spiking lstm可能性能本身会比lstm低很多