Why are weights not clipped? #598
Unanswered
maicoldubbio
asked this question in
Q&A
Replies: 1 comment 1 reply
-
How do you get your weights from the tile? Note that |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi!
I'm retraining a ResNet32 (from one of the Notebooks) in a HWA fashion. Relevantly, to limit weight bounds during training (which impair accuracy a lot), I set in
InferenceRPU
these settings:WeightClipParameter(fixed_value=1.0, type=WeightClipType.FIXED_VALUE)
and ChannelWise remap.learn_out_scaling = True
. My RPU config is very similar toStandardHWATrainingPreset
, except for some A/D values and the like.However by extracting the min/max for each layer, I see that I get some outliers that are actually higher than 1, e.g. 1.5.
Why is that happening?
I wonder whether that could be due to Learning Rate used/number of epochs? Does a low LR (say 0.001) prevent SGD from moving too much from the digital baseline? Or does the HWA training need a given number of epochs to clip?
From what I see, using a low LR allows to reach digital accuracy much quicker -- which makes sense, since a small step might be better to reach again optimum baseline. However if this impairs HWA quality, it's not a good choice.
I don't exclude that perhaps I'm missing something here, e.g. some further settings in RPU config 😃
I'm all ears, any tip is highly appreciated. Thanks for the support!
Beta Was this translation helpful? Give feedback.
All reactions