task_name: convert_checkpoint tags: - convert_checkpoint ckpt_path: logs/train/multiruns/2025-10-14_10-54-43/0/checkpoints/last.ckpt upload_repo: ina-foss/ssl-music-detection-music2vec seed: 42 paths: root_dir: /rex/home17/vpelloin/git/pantagruel-audio-all data_dir: /rex/home17/vpelloin/datasets log_dir: /rex/store2a/home/vpelloin/pantagruel-audio-all/logs output_dir: ${hydra:runtime.output_dir} work_dir: ${paths.root_dir} encoders: baseline: vpelloin/data2vec2-base,facebook/wav2vec2-base,facebook/data2vec-audio-base,LeBenchmark/wav2vec2-FR-7K-base ina: vpelloin/pantagruel-ina-1k-base,vpelloin/pantagruel-ina-1k-stability,vpelloin/pantagruel-ina-1k-no_music,vpelloin/pantagruel-ina-1k-only_speech,vpelloin/pantagruel-ina-1k-only_fr,vpelloin/pantagruel-ina-1k-gender_m50_f50,vpelloin/pantagruel-ina-1k-base_dup_001_10x,vpelloin/pantagruel-ina-from-scratch pantagruel: PantagrueLLM/Speech_Base_fr_1K_best,PantagrueLLM/Speech_Large_fr_14K_v1_best,PantagrueLLM/Speech_Large_fr_114K_v0_last all: ${paths.encoders.baseline},${paths.encoders.ina},${paths.encoders.pantagruel} lrec_panta: ${paths.encoders.pantagruel},LeBenchmark/wav2vec2-FR-1K-base,LeBenchmark/wav2vec2-FR-7K-large lrec_ssl: ${paths.encoders.ina},${paths.encoders.baseline} extras: ignore_warnings: false enforce_tags: true print_config: true model: _target_: src.models.music_detection.MusicDetectionModel optimizer: _target_: torch.optim.AdamW _partial_: true lr: 0.0001 weight_decay: 0.1 betas: - 0.9 - 0.98 lr_scheduler: scheduler: _target_: src.optim.TriStageLR _partial_: true total_steps: ${trainer.max_steps} ratio_ramp_up: 0.1 ratio_constant: 0.3 ratio_ramp_down: 0.6 interval: step frequency: 1 name: train/lr encoder: _target_: src.models.components.encoders.PretrainedEncoder ckpt: m-a-p/music2vec-v1 prune_transformers: 1 custom_kwargs_model: trust_remote_code: true custom_kwargs_config: trust_remote_code: true custom_config: apply_spec_augment: false mask_time_prob: 0.05 mask_time_length: 10 mask_feature_prob: 0.0 mask_feature_length: 10 layerdrop: 0.1 activation_dropout: 0.1 classifier_input_type: cnn_and_transformer_layers classifier: _target_: src.models.components.classifiers.music_detection.MLP num_layers: ${eval:'${model.encoder.prune_transformers} + 1'} use_weighted_average: false output_dim: 1 decoder: _target_: src.models.components.decoders.AutoSwitch during_training: _target_: src.models.components.decoders.ThresholdDecoder otherwise: _target_: src.models.components.decoders.ViterbiDecoder output_dim: ${model.classifier.output_dim} transition_probs: - - 0.95 - 0.05 - - 0.05 - 0.95 pos_weight: 1.5 compile: false callbacks: model_checkpoint: _target_: lightning.pytorch.callbacks.ModelCheckpoint dirpath: ${paths.output_dir}/checkpoints filename: epoch_{epoch:03d} monitor: valid/f1_score verbose: false save_last: true save_top_k: 1 mode: max auto_insert_metric_name: false save_weights_only: false every_n_train_steps: null train_time_interval: null every_n_epochs: null save_on_train_epoch_end: null model_summary: _target_: lightning.pytorch.callbacks.RichModelSummary max_depth: -1 rich_progress_bar: _target_: lightning.pytorch.callbacks.RichProgressBar dataset_stats: _target_: src.callbacks.DatasetStats log_lr: _target_: lightning.pytorch.callbacks.LearningRateMonitor logging_interval: step freeze_feature_extractor: _target_: src.callbacks.FreezeFinetuneCallback layers: - encoder log_tags: _target_: src.callbacks.LogPerTag tags: ${tags} source_log_dir: ${paths.output_dir} target_tagged_dir: ${paths.log_dir}/per_tag save_metrics_outputs: _target_: src.callbacks.SaveMetricsOutputs metrics_save: csv: null json: null outputs_save: csv-segments: null trainer: _target_: lightning.pytorch.trainer.Trainer default_root_dir: ${paths.output_dir} min_epochs: 100 max_steps: 13000 accelerator: gpu devices: 8 gradient_clip_val: 10 check_val_every_n_epoch: 1 val_check_interval: 100 deterministic: true strategy: ddp_find_unused_parameters_true num_nodes: 1 sync_batchnorm: true data: _target_: src.data.audio_datamodule.AudioDataModule train_batch_size: 8 valid_batch_size: 8 test_batch_size: 8 num_workers: 6 pin_memory: true train: - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/OpenBMAT.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: train - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/Mirex2015.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: train - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/SeyerlehnerMusicSpeech.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: train valid: - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/OpenBMAT.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: dev - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/Mirex2015.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: dev - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/SeyerlehnerMusicSpeech.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: dev test: - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/GTZANMusicSpeech.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/OpenBMAT.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: test - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/Mirex2015.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: test - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/SeyerlehnerMusicSpeech.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: test - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/OpenBMAT.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: test tags: - 1_Music - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/OpenBMAT.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: test tags: - 2_FgMusic - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/OpenBMAT.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: test tags: - 3_Similar - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/OpenBMAT.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: test tags: - 4_BgMusic - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/OpenBMAT.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: test tags: - 5_BgMusicVL - _target_: src.data.components.audio_dataset.SlicedAudioDataset feather_file: ${paths.data_dir}/OpenBMAT.feather slice_max_duration_seconds: 30 slice_min_duration_seconds: 1 label_sample_rate: 50 subset: test tags: - 6_NoMusic