home/ atoms/ rave-ema-weights

Exponential Moving Average of weights produces smoother RAVE models by averaging checkpoints over time

The EMA callback maintains a shadow copy of all model parameters as an exponential moving average: ema_weights = factor * ema_weights + (1-factor) * current_weights. During validation, the live weights are swapped for EMA weights so the validation metrics and saved audio samples reflect the smoother, averaged model. At export time, --ema_weights loads the EMA parameter set rather than the last training checkpoint. EMA models typically sound more stable and artifact-free than raw checkpoints because short-term weight fluctuations (from adversarial instability) are smoothed out. A factor near 0.999 means the EMA weights trail the live weights by roughly 1000 steps.

Examples

rave train --config v2 --ema 0.999 .... Export: rave export --run /path --ema_weights --streaming.

Assessment

If EMA factor = 0.999 and training has 1,000,000 steps, approximately how many steps of ‘memory’ does the EMA represent? Why prefer EMA weights at export over the final checkpoint?

“Exponential weight averaging factor (optional)”
corpus · rave-realtime-audio-variational-autoencoder-train-your-own-n · chunk 45