Classification de Commandes Vocales Synthétiques
CNN audio à 30 classes atteint 100% de précision test sur 41 849 échantillons. Mel-spectrogram (64 bins) + SpecAugment. CNN à 4 blocs, 1,25M paramètres. Précision val atteint 100% à l'époque 8. Label smoothing 0,1.
41 849 fichiers .wav synthétiques, 30 classes de commandes
Mel-spectrogram + SpecAugment → CNN à 4 blocs + label smoothing + LR cosinus
Classification de commandes audio à 30 classes atteignant une précision parfaite sur données synthétiques.
Jeu de données
- ▸41 849 fichiers .wav : 30 classes de commandes (bed, bird, cat... yes, zero)
- ▸Variantes propres + bruitées, 16kHz, durée fixe 1,0s
- ▸Entraînement : 31 386 / Validation : 6 277 / Test : 4 186 (stratifié)
Extraction de Features
1. Charger .wav → normaliser à 1,0s (rembourrage/découpage)
2. Mel-spectrogram : 64 bins, n_fft=512, hop=160
3. Normaliser par échantillon à [0, 1]
4. SpecAugment : FreqMask(k=15) + TimeMask(k=35)
Architecture CNN (1 246 142 paramètres) 4 ConvBlocks [32→64→128→256 canaux] → GAP → Dense(512) → Dropout(0,3) → Dense(30)
Entraînement 30 époques, Adam(lr=1e-3), CrossEntropy + label_smoothing=0,1, CosineAnnealingLR, patience=10
Résultats
| Époque | Précision Val |
|---|---|
| 5 | 98,5% |
| 8 | 100,0% |
| 30 | 100,0% |
Précision test : 100,00% | F1 par classe : 1,00 pour toutes les 30 commandes
Pourquoi une Précision Parfaite ? La parole synthétique a des propriétés acoustiques très consistantes. Contrairement à la parole réelle (accents, prosodie, bruit de fond), les commandes synthétiques se regroupent étroitement dans l'espace mel-spectrogram — c'est une condition d'évaluation favorable mais irréaliste.