122 lines
3.6 KiB
YAML
122 lines
3.6 KiB
YAML
|
|
# Multimodal noise configuration for robustness experiments (P0-4)
|
|||
|
|
# Each variant defines noise applied per modality.
|
|||
|
|
# Run: python scripts/preprocess/generate_noise.py \
|
|||
|
|
# --config configs/noise_configs.yaml \
|
|||
|
|
# --data_dir $ZSY/multimodal_affect/data/iemocap
|
|||
|
|
|
|||
|
|
variants:
|
|||
|
|
|
|||
|
|
# ── Variant 1: Light Gaussian across all modalities ───────────────────
|
|||
|
|
- name: gaussian_light
|
|||
|
|
description: "Mild Gaussian noise on all modalities (σ=0.05)"
|
|||
|
|
noise:
|
|||
|
|
text:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.05
|
|||
|
|
audio:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.05
|
|||
|
|
visual:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.05
|
|||
|
|
|
|||
|
|
# ── Variant 2: Heavy Gaussian ─────────────────────────────────────────
|
|||
|
|
- name: gaussian_heavy
|
|||
|
|
description: "Strong Gaussian noise on all modalities (σ=0.20)"
|
|||
|
|
noise:
|
|||
|
|
text:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.20
|
|||
|
|
audio:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.20
|
|||
|
|
visual:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.20
|
|||
|
|
|
|||
|
|
# ── Variant 3: Missing modality – audio dropped ───────────────────────
|
|||
|
|
- name: missing_audio
|
|||
|
|
description: "Audio features zeroed out (100% drop)"
|
|||
|
|
noise:
|
|||
|
|
text:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.0
|
|||
|
|
audio:
|
|||
|
|
type: masking
|
|||
|
|
intensity: 1.0 # mask ALL dims
|
|||
|
|
visual:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.0
|
|||
|
|
|
|||
|
|
# ── Variant 4: Missing modality – visual dropped ──────────────────────
|
|||
|
|
- name: missing_visual
|
|||
|
|
description: "Visual features zeroed out"
|
|||
|
|
noise:
|
|||
|
|
text:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.0
|
|||
|
|
audio:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.0
|
|||
|
|
visual:
|
|||
|
|
type: missing_modality
|
|||
|
|
intensity: 1.0
|
|||
|
|
|
|||
|
|
# ── Variant 5: Text word-drop ─────────────────────────────────────────
|
|||
|
|
- name: text_word_drop_30
|
|||
|
|
description: "30% token dropout in text modality"
|
|||
|
|
noise:
|
|||
|
|
text:
|
|||
|
|
type: word_drop
|
|||
|
|
intensity: 0.30
|
|||
|
|
audio:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.0
|
|||
|
|
visual:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.0
|
|||
|
|
|
|||
|
|
# ── Variant 6: Audio feature masking ─────────────────────────────────
|
|||
|
|
- name: audio_masking_50
|
|||
|
|
description: "50% of audio feature dimensions masked"
|
|||
|
|
noise:
|
|||
|
|
text:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.0
|
|||
|
|
audio:
|
|||
|
|
type: masking
|
|||
|
|
intensity: 0.50
|
|||
|
|
visual:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.0
|
|||
|
|
|
|||
|
|
# ── Variant 7: Realistic mixed noise ─────────────────────────────────
|
|||
|
|
- name: realistic_mixed
|
|||
|
|
description: >
|
|||
|
|
Realistic scenario: moderate text corruption, noisy audio,
|
|||
|
|
partial visual occlusion
|
|||
|
|
noise:
|
|||
|
|
text:
|
|||
|
|
type: word_drop
|
|||
|
|
intensity: 0.15
|
|||
|
|
audio:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.10
|
|||
|
|
visual:
|
|||
|
|
type: occlusion
|
|||
|
|
intensity: 0.25
|
|||
|
|
|
|||
|
|
# ── Variant 8: Asynchronous noise (time-shifted audio) ───────────────
|
|||
|
|
- name: audio_time_mask
|
|||
|
|
description: "Audio time-step masking (30%) simulates dropped frames"
|
|||
|
|
noise:
|
|||
|
|
text:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.0
|
|||
|
|
audio:
|
|||
|
|
type: time_mask
|
|||
|
|
intensity: 0.30
|
|||
|
|
visual:
|
|||
|
|
type: gaussian
|
|||
|
|
intensity: 0.0
|