Skip to content

maolan/trainer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

trainer

Pure Rust trainer that fits NAM-compatible models from WAV pair(s) and exports .nam.

A2-focused capabilities

  • --a2-mode: enables A2 default trainer presets (longer run + windowing defaults).
  • --a2-strict: enforces strict A2 checks (48kHz, min length, Proteus-like detection).
  • --detect-input-version: strong + weak version/hash detection (v1/v1.1/v2/v3/proteus patterns).
  • --run-calibration --calibration-mode none|rms|rms-dc-block --calibration-target-rms <f>.
  • A2 latency analysis is computed and exported in metadata (recommended, manual, warning flags).
  • A2 data checks (clipping/DC/SNR heuristics) are computed and exported in metadata.
  • Strict thresholds: --a2-min-snr-db, --a2-max-dc-offset.

Architectures

  • Linear
  • ConvNet
  • LSTM
  • WaveNet

Training controls

  • --loss mse|esr
  • --lr-schedule constant|cosine
  • --warmup-steps, --min-learning-rate
  • --weight-decay, --momentum, --grad-clip
  • --window-size, --window-hop
  • checkpointing/resume with optimizer state:
    • --checkpoint-path, --checkpoint-every, --resume-checkpoint

Config-driven mode

Use --trainer-config trainer.json to override core trainer values.

Notes

  • WAV files must be mono and pair-matched in sample rate and length.
  • Vulkan acceleration is available for constrained fast paths (Linear + limited ConvNet case).
  • Full bit-exact equivalence still requires iterative validation/tuning.

About

NAM trainer

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages