ターン検出がテレビ音声で破綻する理由
テレビは二人目の話者であり、音声区間検出器は、どの声に属するかを問わず音声らしいフレームを検出します。当社のマトリクスでは、競合音声がSNR 0 dBのとき、Silero VADは対象音声のないフレームの58.2%を音声と判定し、クリーン音声では7.0%でした。
ターン検出がテレビ音声で破綻するのは、テレビが二人目の話者であり、音声区間検出器が、どの声に属するかを問わず音声らしいフレームを検出するためです。当社のマトリクスでは、競合音声がSNR 0 dBのとき、Silero VADは対象音声を含まないフレームの58.2%を音声と判定し、クリーン音声では7.0%でした。これらのフレームを通話者の発話と受け取るエージェントは、自分の発話を途中で止めます。
数値はbenchmark.json(generatedAt 2026-08-14)から取っています。Silero VAD、しきい値0.5、512サンプルブロック、19条件、話者10名です。「誤検出」は、参照が無音のフレームのうちVADが音声と判定した割合と読んでいます。フィールドの定義はハーネスにあります。
仕組み
音声エージェントは同じ信号に依存する二つの判断を行います。エージェントが話している間、検出器は通話者が話し始めたか(バージイン)を判断します。通話者が話している間は、話し終えたかを判断します。どちらもフレームごとの音声確率に基づきます。テレビやラジオ、部屋にいる別の人は、通話者ではないのに音声確率の高いフレームを生みます。検出器は音声を見つけるよう学習されており、あなたの話者を見つけるようには学習されていないため、区別できません。結果は誤ったバージインです。エージェントが自分で発話を切るか、テレビが回線を「アクティブ」に保つせいで、来ないターン終了を待ち続けます。
バージインのイベント自体は測定していません。測っているのは、その判断の入力であるフレーム単位の検出器の誤検出率です。個々のエージェントがフレームを割り込みに変換する方法は、そのエージェント自身のしきい値と保持時間に依存します(仮定:変換は単調であり、誤検出フレームが増えれば誤った割り込みも増える)。
競合音声でVADは何をするか
| 条件 | VAD誤検出率(生) | VAD誤検出率(focus v8_2) | VAD F1(生) | VAD F1(focus v8_2) |
|---|---|---|---|---|
| clean | 7.0% | 7.3% | 0.976 | 0.966 |
| noise_snr5 | 6.3% | 9.2% | 0.966 | 0.957 |
| babble_snr5 | 97.7% | 92.2% | 0.845 | 0.852 |
| competing_snr0 | 58.2% | 58.2% | 0.898 | 0.897 |
| competing_snr5 | 58.1% | 53.4% | 0.899 | 0.903 |
| competing_snr10 | 57.8% | 44.4% | 0.900 | 0.914 |
2026-08-14に測定、条件あたり参照単語190語。F1はクリーン音声と競合音声の間でほとんど動かないため、F1の1つの数値では問題が隠れます。検出器は対象音声を見つけ続け、同時にそれ以外のすべても見つけています。
分離で解決するか
部分的には、そしてどこでもというわけではありません。SNR 10 dBではfocusモデルが誤検出率を57.8%から44.4%に下げ、5 dBでは58.1%から53.4%になり、0 dBでは変わりませんでした。同じcompeting_snr10条件で、WERは6.3%から12.1%へ、挿入数は2から7へ増えており、誤検出率が下がっても書き起こしは良くなりませんでした。
| 経路 | 平均VAD F1(19条件) | 生との差 | 挿入数 |
|---|---|---|---|
| raw / passthrough | 0.9477 | +0.0000 | 103 |
| anecho focus v8_2 | 0.9413 | -0.0065 | 119 |
| ai-coustics Quail L | 0.9427 | -0.0050 | 128 |
| GTCRN | 0.9454 | -0.0023 | 223 |
| DeepFilterNet3 | 0.9011 | -0.0466 | 381 |
19条件でプールすると、表のどのエンジンも無処理音声に対する平均VAD F1を改善せず、当社も同様です(生0.9477、focus 0.9413)。VADを一方の枝、認識器をもう一方の枝に置く分割パイプラインの考え方は分割パイプラインにあります。これらの数値は、それが切り替えるスイッチではなく測定すべき設計である理由です。
対処
クリーンなテストセットではなく、テレビをつけた自分の部屋の録音で誤検出率を測ってください。高ければ、モデルに頼る前にVADのしきい値とバージインの保持時間を上げ、分離モデルは上の各行と同様に生音声に対して採点すべきものとして扱ってください。
FAQ
なぜテレビ音声でターン検出は失敗するのですか? VADは話者ではなく音声を検出するため、テレビの会話も通話者と同じ音声フレームを生みます。当社のマトリクスでは、これらのフレームにより0 dBで誤検出率が58.2%に上がります。
話者分離は誤ったバージインを防ぎますか? 当社の実行では5 dBと10 dBでVAD誤検出率を下げ、0 dBでは下げず、プールしたVAD F1も改善しませんでした。バージインのイベント自体は測っていません。
より良いVADで十分ですか? 試したVADはSilero(しきい値0.5)の1つだけです。他の検出器については何も主張しません。