Speaker Recognition

Azure AI Services - Speech Service の話者認識は、話者を独自の音声特性によって検証および識別するアルゴリズムを提供します。 話者認識は、"誰が話しているのか" という質問に回答するために使用されます。 詳細については、こちらを参照してください

声には固有の特性があり、個人に関連付けることができます。 話者認識テクノロジの 2 つの主要なアプリケーションに対して、話者検証 API と話者識別 API を提供します。

話者認証

話者認証には、テキストに依存する種類とテキストに依存しない種類があります。 テキストに依存する検証は、登録フェーズと検証フェーズの両方で、使用する同じパスフレーズを話者が選択する必要があることを意味します。 音声コンテンツと音声署名の両方の検証により、多要素検証シナリオが容易になります。テキストに依存しない検証は、話者が登録と検証フレーズで日常的な言語で話すことができるということです。

テキスト依存の話者の検証

話者登録フェーズでは、定義済みの一連の語句からパスフレーズを読み上げ、話者の声を録音します。 音声録音から音声機能が抽出され、選択したパスフレーズが認識されている間に一意の音声署名が形成されます。 音声署名とパスフレーズを組み合わせて、話者を確認します。

検証フェーズでは、検証対象の個人に関連付けられている ID が話者検証 API に送信されます。 話者検証サービスは、入力音声記録から音声機能とパスフレーズを抽出します。 次に、音声機能とパスフレーズを対応するスピーカーの登録プロファイルと比較します。

応答は、類似性スコアが 0 から 1 の "Accept" または "Reject" を返します。 "Accept" または "Reject" 応答は、話者の検証結果と音声認識の結果の両方を組み合わせた結果ですが、類似性スコアは音声の類似性のみを測定します。 音声認識の結果が登録語句と一致し、音声類似性スコアが 0.5 以上の場合、"Accept" が返されます。 ただし、結果は、使用されているシナリオやその他の検証要因に基づいて決定する必要があります。 独自のデータを試し、必要に応じて "Accept" または "Reject" 応答をオーバーライドするしきい値を決定することをお勧めします。

現在のバージョンのテキスト依存話者検証 API では、話者が選択できる 10 個の英語フレーズが用意されています。

  • 私は彼に拒否できない申し出をするつもりです。
  • ヒューストン私たちは問題を抱えていました。
  • 私の声は私のパスポート検証です。
  • アップルジュースは、歯磨き粉の後に面白い味がします。
  • パスワードなしでログインできます。
  • セキュリティ システムをアクティブ化できるようになりました。
  • 私の声はパスワードよりも強いです。
  • 私のパスワードはあなたの仕事ではありません。
  • 私の名前はあなたには知られていません。
  • 他の誰もが既に取られている自分である"

テキストに依存しない話者検証 API と音声テキスト変換 API に個別の要求を送信することで、独自のパスフレーズを作成できます。 話者の検証結果と音声認識の結果を組み合わせることで、話者の ID を判断できます。

API の目的は、音声がライブ ユーザーの声か、声を真似たものか、登録済み話者の記録かを判断することではありません。 再生攻撃を防ぐために、読み上げる話者のランダムなフレーズを生成することが効果的であると見なされます。

テキストに依存しない話者の検証

話者の確認はテキストに依存しない場合もあります。つまり、オーディオで話者が言う内容に制限はありません。

登録フェーズでは、話者のオーディオから音声機能が抽出され、一意の音声署名が形成されます。

検証フェーズでは、検証する個人に関連付けられているオーディオと ID が話者検証 API に送信されます。 話者検証サービスは、入力音声記録から音声機能を抽出します。 次に、音声機能を、対応するスピーカーの登録プロファイルの音声署名と比較します。

応答は、類似性スコアが 0 から 1 の "Accept" または "Reject" を返します。 類似性スコアが 0.5 以上の場合、"Accept" 応答が返されます。 ただし、結果は、使用されているシナリオやその他の検証要因に基づいて決定する必要があります。 独自のデータを試し、必要に応じて "Accept" または "Reject" 応答をオーバーライドするしきい値を決定することをお勧めします。

API の目的は、音声がライブ ユーザーの声か、声を真似たものか、登録済み話者の記録かを判断することではありません。

話者識別

話者識別は、一連の候補話者の間で不明な音声の ID を決定するタスクです。 Speaker Identification API は、指定された ID の一覧に対する類似性スコアに基づいて、"最適な一致" の一覧を返します。 Speaker Identification API は、登録と認識で述べた内容を比較しないため、テキストに依存しません。

テキストに依存しない話者識別

話者識別の登録はテキストに依存しません。つまり、オーディオ内で話者が話す内容に制限はありません。 パスフレーズは不要です。 登録フェーズでは、話者の声が記録され、声の特徴が抽出されて一意の声紋を形成します。

識別フェーズでは、話者識別サービスによって、入力された音声記録から声の特徴が抽出されます。 次に、指定した話者リストの登録データの音声署名と機能を比較します (各要求で最大 50 人の候補スピーカー)。 応答には、識別された ID が 1 つと、類似性スコアが 0 から 1 までの上位ランク ID が 5 つ含まれていました。 識別された ID は、最も一致した話者の類似性スコアに基づいて決定されます。 候補の話者が 0.5 以上の類似性スコアを返さない場合、応答は "一致するものが見つかりません" を表す 0 の文字列を返します。 ただし、結果は、使用されているシナリオやその他の要因に基づいて決定する必要があります。 データを試し、必要に応じて既定の "一致または一致なし" をオーバーライドするしきい値を決定することをお勧めします。

API の目的は、音声がライブ ユーザーの声か、声を真似たものか、登録済み話者の記録かを判断することではありません。

参照