RemFx / cfg /exp /5-5_cls_dynamic.yaml
Christian J. Steinmetz
updated classifier configs
9ff30f9
raw
history blame
3.46 kB
# @package _global_
defaults:
- override /model: demucs
- override /effects: all
seed: 12345
sample_rate: 48000
chunk_size: 262144 # 5.5s
logs_dir: "/scratch/cjs-logs"
render_files: True
render_root: "/scratch/EffectSet_cjs"
accelerator: "gpu"
log_audio: False
# Effects
num_kept_effects: [0,0] # [min, max]
num_removed_effects: [0,5] # [min, max]
shuffle_kept_effects: True
shuffle_removed_effects: True
num_classes: 5
effects_to_keep:
effects_to_remove:
- distortion
- compressor
- reverb
- chorus
- delay
datamodule:
_target_: remfx.datasets.EffectDatamodule
train_dataset:
_target_: remfx.datasets.DynamicEffectDataset
total_chunks: 8000
sample_rate: ${sample_rate}
root: ${oc.env:DATASET_ROOT}
chunk_size: ${chunk_size}
mode: "train"
effect_modules: ${effects}
effects_to_keep: ${effects_to_keep}
effects_to_remove: ${effects_to_remove}
num_kept_effects: ${num_kept_effects}
num_removed_effects: ${num_removed_effects}
shuffle_kept_effects: ${shuffle_kept_effects}
shuffle_removed_effects: ${shuffle_removed_effects}
render_files: ${render_files}
render_root: ${render_root}
parallel: True
val_dataset:
_target_: remfx.datasets.EffectDataset
total_chunks: 1000
sample_rate: ${sample_rate}
root: ${oc.env:DATASET_ROOT}
chunk_size: ${chunk_size}
mode: "val"
effect_modules: ${effects}
effects_to_keep: ${effects_to_keep}
effects_to_remove: ${effects_to_remove}
num_kept_effects: ${num_kept_effects}
num_removed_effects: ${num_removed_effects}
shuffle_kept_effects: ${shuffle_kept_effects}
shuffle_removed_effects: ${shuffle_removed_effects}
render_files: ${render_files}
render_root: ${render_root}
test_dataset:
_target_: remfx.datasets.EffectDataset
total_chunks: 1000
sample_rate: ${sample_rate}
root: ${oc.env:DATASET_ROOT}
chunk_size: ${chunk_size}
mode: "test"
effect_modules: ${effects}
effects_to_keep: ${effects_to_keep}
effects_to_remove: ${effects_to_remove}
num_kept_effects: ${num_kept_effects}
num_removed_effects: ${num_removed_effects}
shuffle_kept_effects: ${shuffle_kept_effects}
shuffle_removed_effects: ${shuffle_removed_effects}
render_files: ${render_files}
render_root: ${render_root}
train_batch_size: 32
test_batch_size: 256
num_workers: 12
callbacks:
model_checkpoint:
_target_: pytorch_lightning.callbacks.ModelCheckpoint
monitor: "valid_avg_acc_epoch" # name of the logged metric which determines when model is improving
save_top_k: 1 # save k best models (determined by above metric)
save_last: True # additionaly always save model from last epoch
mode: "max" # can be "max" or "min"
verbose: True
dirpath: ${logs_dir}/ckpts/${now:%Y-%m-%d-%H-%M-%S}
filename: '{epoch:02d}-{valid_avg_acc_epoch:.3f}'
learning_rate_monitor:
_target_: pytorch_lightning.callbacks.LearningRateMonitor
logging_interval: "step"
#audio_logging:
# _target_: remfx.callbacks.AudioCallback
# sample_rate: ${sample_rate}
# log_audio: ${log_audio}
trainer:
_target_: pytorch_lightning.Trainer
precision: 32 # Precision used for tensors, default `32`
min_epochs: 0
max_epochs: 300
log_every_n_steps: 1 # Logs metrics every N batches
accumulate_grad_batches: 1
accelerator: ${accelerator}
devices: 1
gradient_clip_val: 10.0
max_steps: -1