putshua / SNN_conversion_QCFS

48 stars 16 forks source link

some questions about training QCFS #10

Closed Lyu6PosHao closed 1 year ago

Lyu6PosHao commented 1 year ago

Hi, I'm training an ann model with QCFS. Resnet20 on CIFAR10. I program my own QCFS class,whose parameters are v_threshold and T (L in your paper). Its forward function is: y = floor_ste(x * T / v_threshold + 0.5) y = torch.clamp(y, 0, T) * v_threshold / T return y However, I found two layers' v_threshold were updated to be negative while training. The initial value is:T=8 v_threshold=1.0, which means initial quantization step is 1/8. I wonder what the reason is. Have you met such situations? What initial values would you recommend? Many thanks!

putshua commented 1 year ago

The initial v_threshold should be larger. I recommend 4.0 or 8.0

Lyu6PosHao commented 1 year ago

Thanks. It helps. Another question is about the accuracy of ANN mentioned in the paper. Does it refer to the accuracy of QCFS model, or the accuracy of ReLU model?

putshua commented 1 year ago

It's the accuracy of the QCFS model.