Whisper-LoRA для BWC audio: меньше параметров, ниже WER
Эта короткая статья про адаптацию Whisper к аудио с body-worn cameras полезна как пример доменного распознавания речи на маленьком и шумном корпусе. Задача далека от чистого dictation: сирены, радио, стрессовая речь и полицейский лексикон дают много удалений и неверных замен. Авторы показывают, что LoRA с малым rank может обойти не только zero-shot Whisper-base, но и полное дообучение на таком наборе.
Метод. Используется Whisper-base, а LoRA вставляется в query и value projections; сравниваются rank 8, 16 и 32 при alpha 32 и dropout 0.05. Корпус состоит из 53 BWC files, разделенных на 42 train, 5 validation и 6 test, с нормализацией human transcripts и сохранением VTT timestamps для нарезки длинного аудио. В PDF основной training workflow описан на RIT infrastructure с NVIDIA A100 20GB, хотя в аннотации отдельно заявлена возможность consumer-grade hardware через 8-bit quantization и gradient checkpointing; это стоит читать как не до конца разнесенные экспериментальные режимы.
Результаты. Zero-shot Whisper-base получает average WER 0.6194, full fine-tuned Whisper-base - 0.5874, а LoRA rank 8 - 0.3733. Увеличение rank ухудшает результат: rank 16 дает 0.3793, rank 32 - 0.3848, что авторы связывают с переобучением на шумные распределения BWC. По сценариям виден большой разброс: простые traffic stops дают WER 0.378, а complex crash scenes - 0.789.
Ограничения. Тестовая часть очень мала - всего 6 файлов, поэтому числа нельзя воспринимать как стабильный production benchmark. Нет доверительных интервалов, нет сравнения с более крупными Whisper-вариантами, а аппаратные утверждения в abstract и основной training section выглядят неоднозначно. Тем не менее результат хорошо иллюстрирует, что для узкого домена с шумом и специальной лексикой parameter-efficient adaptation может быть надежнее полного дообучения.
Фишка из статьи. Абляция rank показывает обратную сторону «больше параметров лучше»: на маленьком шумном корпусе более широкий LoRA-subspace начинает вредить.
| Конфигурация | Trainable params | Rank | Avg. WER ниже лучше |
|---|---|---|---|
| Whisper-base zero-shot | 0 | - | 0.6194 |
| Full fine-tuned | 99,148,800 | - | 0.5874 |
| LoRA optimized | 294,912 | 8 | 0.3733 |
| LoRA optimized | 589,824 | 16 | 0.3793 |
| LoRA optimized | 1,179,648 | 32 | 0.3848 |
Как это читать: rank 8 обновляет около 0.3% параметров и дает 39.7% относительного снижения WER относительно zero-shot. В этой постановке дополнительная емкость не улучшает распознавание, а, вероятно, подстраивается под артефакты маленького набора.