【要約】WhisperにHPFを入れたら日本語音声認識精度が改善した [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
開発者が、ノイズ環境下でのWhisperによる日本語音声認識精度の低下という課題に直面した。
- ・ノイズ(0dB)の付加により、CERが0.060から0.148へ悪化した。
- ・単純な音量正規化では、ノイズ帯域そのものの影響を排除できなかった。
// Approach
筆者は、ノイズ成分の特定と除去、およびセグメンテーション手法の比較を通じて解決を試みた。
- ・FFTを用いて、100Hz以下の低周波成分がノイズ源であることを特定した。
- ・Scipyを用い、100HzのHPF(ハイパスフィルタ)を実装・適用した。
- ・VADや固定長・重複ありのChunkingによる分割処理を比較検証した。
// Result
実験の結果、特定の周波数帯域のフィルタリングが最も効果的であることが判明した。
- ・100HzのHPF適用により、CERが0.148から0.114へ改善した。
- ・VADやChunkingは、文脈情報の断裂により精度を大幅に悪化させた。
- ・200Hz以上のHPFは、音声成分まで削るため逆効果となった。
Senior Engineer Insight
> Whisperのような長文脈依存モデルに対し、外部からの安易なセグメンテーションは避けるべきだ。VADによる区間切断は、モデルの文脈理解能力を阻害する。現場では、HPF等の信号処理によるノイズ除去を優先すべきである。分割処理を行う際は、Whisper内部のsegment処理との競合を考慮せよ。