Nemotron 3 vs pyannote:話者ダイアライゼーション誤り率 16.0% → 9.9%

2026年11月8日
·
10分で読めます
·Whisper Notes Team

インタビューや複数人の会議を文字起こしするとき、どの文を誰が話したのかは欠かせない情報です。Whisper Notes は音声認識も話者識別も、iPhone や Mac の中でオフラインで行います。そのため、搭載するモデルはどれも精度と速度のバランスを見て選んでおり、これまでは常に精度を優先してきました。このたび、内蔵の話者識別モデルを pyannote community-1 から NVIDIA の Nemotron 3 Diarization に切り替えました。話者が 1〜12 人の公開録音 122 本で両者を比べたところ、話者ダイアライゼーション誤り率(DER)は 16.0% から 9.9% に下がりました。

Nemotron 3 で話者ダイアライゼーション誤り率が 16.0% から 9.9% に

話者ダイアライゼーション誤り率(DER)は、3 種類の誤りを発話時間で合計した値です。別の人に割り当てられた発話、モデルが見落とした発話、雑音を発話と誤認した部分の 3 つです。話者ダイアライゼーションの標準的な指標として使われています。下の表では、この誤り率に加えて、ユーザーが気づきやすい問題と、Mac と iPhone での両モデルの速度とメモリを並べました。

pyannote
community‑1
Nemotron 3
話者ダイアライゼーション誤り率(122 本)16.0%9.9%
話者の人数が正しい録音の 52%録音の 80%
別の人に割り当てられた発話4.5%1.0%
Mac(M5)で 1 時間の音声約 22 秒約 8.5 秒
Mac でのメモリ0.88 GB0.12 GB
iPhone 15 で 55 分の録音約 27 秒約 12 秒
iPhone 15 での追加メモリ約 830 MB約 30 MB
話者数の上限決まった上限なし(アプリでは最大 10 人)8 人

この表と以下のすべての表・グラフで、緑は差が誤差の範囲を超えている場合に、良い方の値を示します。精度では 95% 信頼区間がゼロを含まないこと、速度とメモリでは実行ごとのばらつきより差がはるかに大きいことを基準にしています。誤り率は低いほど良い値です。精度の行は公開録音 122 本(計 25 時間、英語と中国語)の結果です。速度とメモリは両モデルを Core ML で動かした値で、Nemotron 3 は Neural Engine で実行しています。Mac の時間は処理のみ、iPhone の時間は識別の開始から結果が出るまでです。

この改善は、一部の録音だけで生じたものではありません。下のグラフは、122 本それぞれの変化を、最も下がった録音から最も上がった録音の順に並べたものです。

誤り率の変化(ポイント)+100−10−20−30−4099 本で改善ゼロより下:Nemotron 3 の誤りが少ない23 本で悪化うち 12 本は 1 ポイント未満122 本の録音、変化量の順

棒はそれぞれ 1 本の録音で、Nemotron 3 にしたときに誤り率が何ポイント変わったかを示します。ゼロより下なら低下、上なら上昇です。

Nemotron 3 が劣るのは次の 3 つの場合です。話者が 8 人を超える録音、話者が 1 人だけの録音、そして文の途中で段落が区切られる場合です。

話者の取り違えはほぼ解消:4.5% → 1.0%

3 種類の誤りのうち、読む人が最初に気づくのは、別の人に割り当てられた発話です。言葉は合っているのに、名前が違うからです。Nemotron 3 ではこれがほぼなくなり、発話の見落としも減りました。

pyannote community-1Nemotron 3合計16.0%9.9%話者の取り違え4.5%1.0%発話の見落とし8.4%6.0%雑音を発話と誤認3.2%2.9% 誤差の範囲内

122 本の平均で、単位は発話時間に占める割合(%)です。各行の 2 本の棒はどちらもゼロから始まります。話者の取り違えと発話の見落としの減少は、誤差の範囲を超えています。雑音を発話と誤認した割合の差は誤差の範囲内なので、その棒は薄い灰色にしています。値は四捨五入しているため、足しても合計とぴったり一致しないことがあります。

話者の人数が正しい録音は 52% から 80% に

話者の人数が少なすぎるのは、2 人の声を 1 人分にまとめてしまったときです。その結果、2 人の発言が同じラベルで表示されます。これは pyannote community-1 で最も多かった誤りで、Nemotron 3 では大幅に減りました。

少なすぎ正しい多すぎpyannote community-156642Nemotron 3129812全 122 本

122 本の録音で、各モデルが見つけた話者の人数を実際の人数と比べました。pyannote community-1 は、ほとんどの場合で人数を少なく見積もっていました。Nemotron 3 は正しい場合が多く、外れるときは多すぎと少なすぎが同じくらいです。

会議、放送、話者 2〜8 人の録音で改善

録音によって難しさは大きく違います。最も難しいのは離れた位置から録った会議で、最も易しいのは放送です。録音の種類、言語、話者の人数で分けると、録音が 10 本以上あるグループはすべて誤り率が下がりました。ただし話者 1 人のグループでは、差は誤差の範囲内です。話者が 9〜12 人の 3 本は悪化しましたが、本数が少なすぎて検定できません。

pyannote community-1Nemotron 3録音の種類会議(遠距離収音) · 58 本20.4%13.9%放送 · 48 本10.8%4.1%1 人(クリップを連結) · 10 本14.5%10.2%言語英語 · 91 本14.7%9.8%中国語 · 31 本19.7%10.5%話者の人数1 人 · 14 本12.5%9.4% 誤差の範囲内2 人 · 39 本10.2%5.8%3–4 人 · 55 本20.5%12.2%5–8 人 · 11 本16.2%9.9%9–12 人(少なすぎて検定せず) · 3 本23.2%25.1%

各グループの 2 本の棒はどちらもゼロから始まります。灰色が pyannote community-1、緑が Nemotron 3 で、棒の端の数字は平均の誤り率です。緑は誤差の範囲を超えた低下、薄い灰色は誤差の範囲内の差、琥珀色は上昇を表します。決算説明会の 6 本は全体の集計に含めていますが、本数が少ないため単独のグループにはしていません。

文字起こしの手直し:10 分あたりの修正は 28.9 回から 18.9 回に

誤り率は、最終的には手直しの手間として表れます。話者ビューを正しくするのに必要な、段落の結合、分割、話者の付け替えの回数です。単語単位の正解データがある 2 人の録音 4 本(オランダ語 2 本、中国語 1 本、フィンランド語 1 本)で、こうした修正の最小回数を数えました。読む人が気づくもう一つの誤りは、1 人の文が 2 人の話者に分かれてしまうことです。離れた位置から録った英語の会議 12 本では、この誤りはどちらのモデルでもまれで、差は誤差の範囲内でした。

pyannote
community‑1
Nemotron 3
10 分あたりの手作業の修正回数(2 人の録音 4 本)28.918.9
2 人の話者に分かれた文(英語の会議 12 本)文の 0.58%文の 0.88%

手作業の修正回数は 4 本の録音だけの結果で、統計的な検定や一般化した結論を出すには足りません。「分かれた文」とは、1 人が話した文のテキストが、2 人の話者の段落に分かれて入ったものです。

Nemotron 3 は速く、メモリは 7 分の 1 未満

デバイス上では、速度とメモリも精度と同じくらい重要です。下の表は、両モデルを Core ML で動かしたときの処理時間とメモリで、Nemotron 3 は Neural Engine で実行しています。テストしたどのデバイスでも Nemotron 3 のほうが速く、メモリもはるかに少なく済みました。この差が最も効くのは、メモリが 4 GB の古い iPhone です。

pyannote
community‑1
Nemotron 3
Mac(M5)
1 時間の音声約 22 秒約 8.5 秒
メモリ0.88 GB0.12 GB
iPhone 15
55 分の録音26.6 秒11.8 秒
識別中の追加メモリ833 MB30 MB
iPhone 12 mini
55 分の録音30.1 秒17.2 秒
識別中のアプリのピークメモリ638 MB71 MB

複数回の実行の中央値です(iPhone 15 での pyannote community-1 は 1 回のみ)。すべて同じ 55 分、話者 10 人の決算説明会で測りました。両モデルとも Core ML で動かし、Nemotron 3 は Neural Engine で実行しています。Mac の時間は処理のみで、音声のデコードとモデルの読み込みは含みません。iPhone の時間は識別の開始から結果が出るまでで、モデルの読み込みと、pyannote community-1 では当時一緒に使っていた後処理を含みます。iPhone は USB で接続し、毎回本体が冷えた状態から始めました。

Core ML がモデルを初めて Neural Engine で動かすときは、そのデバイス向けにモデルをコンパイルします。Mac で約 7 秒、iPhone 15 で約 1 分です。2 回目以降は、モデルの読み込みに 1 秒もかかりません。

pyannote community-1 がまだ優れている点

  • 話者が 8 人を超える場合。Nemotron 3 がラベルを付けられるのは最大 8 人です。話者が 9〜12 人の録音 3 本のうち 2 本で、pyannote community-1 より悪い結果でした。
  • 話者が 1 人だけの場合。1 人だけが話す録音 14 本のうち、Nemotron 3 は 5 本で余分な話者を検出しました。pyannote community-1 では 1 本です。
  • 文の途中での区切り。英語の会議 12 本では、段落の区切りの 25.8% が文の途中にありました。pyannote community-1 では 14.6% です。

Whisper Notes で Nemotron 3 をうまく使うコツ

  • 人数が分かっているなら指定する。話者が 2 人以上の録音 108 本で Nemotron 3 に人数を指定すると、15 本で話者の人数が正しくなり、悪くなった録音はありませんでした。誤り率にははっきりした変化はありません(+0.16 ポイント、誤差の範囲内)。
  • 1 人しか話さないなら、話者識別は使わない。ときどき現れる 2 人目の「話者」を避けられます。
  • 8 人を超えるときは、ラベルをたたき台として扱う。必要に応じて、話者ビューで話者を統合したり名前を変えたりしてください。
話者ごとに分かれた Whisper Notes for Mac の会議の文字起こし。Not right? メニューが開いていて、Auto-detect remote speakers と、リモート話者 2〜8 人の選択肢が並ぶ

Mac の話者ビューで、Not right? から話者の人数を指定する

話者識別は iPhone でも Mac でも同じように、すべてデバイス上で動きます。アプリでの使い方は Whisper Notes、オンデバイス話者分離に対応 をご覧ください。

仕組み:pyannote は区切ってクラスタリング、Nemotron 3 は話し始めた順に番号を付ける

pyannote community-1 は 3 段階のパイプラインです。まず音声を 10 秒の窓に区切り、それぞれの窓で誰が話しているかを判定します(1 つの窓で最大 3 人、同じ瞬間には最大 2 人)。次に、発話区間ごとに声紋(埋め込み)を抽出します。最後に VBx クラスタリングで、似た声紋を 1 人の話者にまとめます。窓の中の話者番号はその窓の中でしか通用しないため、全体の話者数は最後の段階で初めて決まります。

① 窓に区切り、話者を判定10 秒ごとに 1 つの窓。話者番号はその窓の中でだけ有効1212121210 秒10 秒10 秒10 秒② 声紋を抽出発話区間ごとに埋め込みを 1 つ作る③ VBx でクラスタリング似た声紋を 1 人にまとめ、ここで人数が決まる話者 A話者 B話者 C

Nemotron 3 Diarization は 1 つのモデルです。31 層の Transformer エンコーダーが、時点ごとに 8 本の話者トラックそれぞれのスコアを出します。トラックは個別に採点されるので、複数の人が同時に話すと、複数のトラックが同時に反応します。NVIDIA の Sortformer の方式に従い、トラックには各人が最初に話した順に番号が付きます。最初に話した人は必ずトラック 1 に入るので、ある声をどの枠に入れるかをモデルが推測する必要はありません。モデルカードで説明されているストリーミング構成では、登場順に並べた話者キャッシュがそれまでの話者を記憶しているので、後の区間も同じ番号に対応付けられます。

1 つのモデルが時点ごとに 8 本のトラックを採点トラック番号は最初に話した順123456782 人が同時に話す:2 本が反応トラック 4–8:未使用トラック 1 は常に最初に話した人

どちらの設計にも限界があります。pyannote community-1 は話者数に決まった上限がありませんが、同じ瞬間に分けられるのは 2 人までです。Nemotron 3 は同時に話す複数の人にラベルを付けられますが、トラックが 8 本なので、見つけられる話者は最大 8 人です。

図は簡略化しています。pyannote community-1:Whisper Notes では約 21 MB、CC BY 4.0(モデルカード)。セグメンテーションモデルは Plaquet・Bredin(Interspeech 2023)、埋め込みは WeSpeaker、クラスタリングは VBx(Landini et al., 2022)。Nemotron 3 Diarization:97 MB(Fluid Inference による 8 ビットの Core ML 変換)、約 1 億パラメータ、OpenMDW 1.1(モデルカード)。手法は Sortformer と Streaming Sortformer の論文で説明されています。

テスト方法

  • 録音。公開録音 122 本、計 25 時間。英語と中国語で、話者は 1 本あたり 1〜12 人です。離れた位置から録った会議、放送、決算説明会、別々のクリップをつなげた 1 人の録音を含みます。ほかに、英語、オランダ語、中国語、フィンランド語の 2 人の録音 5 本を使い、そのうち 4 本には単語単位の正解データがあります。
  • データセット。AMI、AISHELL-4、AliMeeting、VoxConverse、Earnings-21、LibriSpeech、IFADV、SKN と、私たち自身の録音です。結果の公開がライセンスで認められているデータセットだけを使い、ユーザーの録音は使っていません。
  • 指標。話者ダイアライゼーション誤り率。10 ミリ秒のフレーム単位で、境界の許容幅(カラー)を設けず、重なった発話も含めて採点し、録音ごとに平均しました。
  • 統計。95% 信頼区間は、録音単位のブートストラップ(10,000 回の再標本化)で求めました。録音が 10 本未満のグループには区間を付けていません。
  • デバイス。M5 チップ搭載の Mac、iPhone 15、iPhone 12 mini。精度は Mac で計算しました。
  • 事前登録。テスト計画は 2026 年 11 月 2 日に、2 人の録音の分け方は 11 月 4 日に固定しました。どちらも、それらのクリップでまだどのモデルも実行していない時点です。
テストの詳細

選定。検証する問いとルールは、より大きなベンチマークのために、実行より前に決めていました。今回の録音は結果ではなくライセンスで選び、同じ出力から同じ採点方法で数値を計算し直しています。LibriSpeech と AISHELL-4 のクリップをつなげた 1 人の録音は、それぞれの元のデータセットに数えています。公開するのは集計結果だけで、音声や正解テキストは公開しません。

データセットライセンス使った録音
AMI Meeting CorpusCC BY 4.0会議 16 本と 1 分の抜粋 16 本
AISHELL-4CC BY-SA 4.0会議 5 本、抜粋 5 本、つなげた 1 人の録音 5 本
AliMeetingCC BY-SA 4.0会議 8 本、抜粋 8 本、2 人の録音 1 本
VoxConverseCC BY 4.0(動画の著作権は各権利者に帰属)放送 30 本と抜粋 18 本
Earnings-21CC BY-SA 4.0決算説明会 6 本、2 人の録音 1 本
LibriSpeechCC BY 4.0つなげた 1 人の録音 5 本
IFADVGNU GPL v2 以降2 人の録音 2 本
SKN フィンランド語方言サンプルCC BY(フィンランド言語研究所)2 人の録音 1 本

ライセンスは各データセットのページの記載に基づき、2026 年 11 月に確認しました。

信頼区間。全体の誤り率は 6.0 ポイント下がりました(4.5〜7.6)。発話の見落としは 2.3 ポイント(1.3〜3.4)、話者の取り違えは 3.4 ポイント(2.4〜4.6)下がりました。雑音を発話と誤認した割合は 0.30 ポイント下がりましたが、誤差の範囲内です(−0.02〜0.62)。話者の人数が正しい録音の割合は 27.9 ポイント上がりました(17.2〜38.5)。グループ別では、話者 1 人のグループを除き、すべての区間がゼロを含みません。英語の会議 12 本では、分かれた文の区間はゼロを含み、文の途中での区切りの区間はゼロを含みません。

採点。私たちの採点プログラムと pyannote.metrics の差は 0.003 ポイント以内です。

8 人を超える録音。こうした録音の結果は、チップや音声デコードのわずかな違いに左右されます。55 分、話者 10 人の決算説明会では、Nemotron 3 はチップ、設定、音声デコーダーによって 30.6% から 42.8% までばらつきました。pyannote community-1 は 21.6% でした。

後処理の設定。一部の後処理の設定は事前登録の後に、テストとは別の調整用録音だけを使って選びました。テスト用の録音は結果の報告にしか使っていません。

限界。精度は英語と中国語でしか測っていません。手作業の修正回数は 4 本の録音による結果です。Mac の計測は、ほかの処理も動いている M5 Mac と macOS のベータ版で行いました。iPhone は USB で接続していたため、バッテリー消費は測っていません。

試してみる

Whisper Notes は iPhone 版も Mac 版も、話者識別に Nemotron 3 を使うようになりました。ご質問は support@whispernotes.app までお寄せください。