(57)【特許請求の範囲】
【請求項１】
話者識別の方法であって、
複数の登録話者を表す複数の音声サンプルを、前記登録話者からの登録音声サンプルの特徴を表す高次ベクトルを用いて、データ構造へ体系化するステップと、
未識別話者からの未識別音声サンプルの略最近傍からなる前記複数の音声サンプルサブセットの密度を予想するステップと、
前記予想された密度によって示された、前記未識別音声サンプルに最も良く一致する一つ以上の音声サンプルに基づいて、前記未識別話者を識別するステップとからなる方法。
【請求項２】
密度を予想する前記ステップは、確率密度関数を予想するために、Parzen窓を用いた確率密度関数の予想からなることを特徴とする請求項１の方法。
【請求項３】
密度を予想する前記ステップは、前記音声サンプルサブセット内の個々の音声サンプル間の距離に基づいた前記密度の予想からなることを特徴とする請求項１の方法。
【請求項４】
密度を予想する前記ステップは、前記未識別音声サンプルから音声サンプルまでの距離に基づいて、前記音声サンプルサブセット内の個々の音声サンプルの前記密度に対する相対的寄与の制御をさらに含むことを特徴とする請求項１の方法。
【請求項５】
密度を予想する前記ステップは、前記複数の音声サンプルに関するパラメトリックな分布情報とは独立の音声サンプルサブセットの密度を予想することを特徴とする請求項１の方法。
【請求項６】
前記データ構造モジュールは、個々の音声サンプル間の距離が関連の音声サンプル間の特徴類似性に基づくように前記複数の音声サンプルを体系化し、
前記距離はEuclid距離、Minkowski距離およびManhattan距離を含むグループの一つとして計測されることを特徴とする請求項１の方法。
【請求項７】
前記データ構造はkd-treeからなることを特徴とする請求項１の方法。
【請求項８】
前記複数の音声サンプルは比較的多数の音声サンプルからなることを特徴とする請求項１の方法。
【請求項９】
前記未識別音声サンプルからの未識別音声サンプルを、前記複数の音声サンプルの索引として用いて、前記音声サンプルサブセットを検索するステップを更に含む請求項１の方法。
【請求項１０】
前記音声サンプルサブセットを検索するステップは、前記未識別音声サンプルに対する略最近傍の検索を含み、
前記略最近傍は絶対最近傍の距離の関数として計算される距離内の音声サンプルからなることを特徴とする請求項９の方法。
【請求項１１】
前記音声サンプルサブセットは共通の識別で関連付けられた一つ以上の音声サンプルを含み、
前記未識別話者を識別するステップは前記共通の識別に対してスコアを蓄積することを特徴とする請求項１の方法。
【請求項１２】
前記登録音声サンプルと前記未識別音声サンプルから前記高次ベクトルを抽出することをさらに含む請求項１の方法。
【請求項１３】
前記未識別話者を識別するステップは、一致が誤差の閾値以内であれば前記未識別話者を前記登録話者の一人として識別することからなることを特徴とする請求項１の方法。
【請求項１４】
登録音声サンプルと共通の話者の未識別音声サンプルがテキスト独立であることを特徴とする請求項１の方法。
【請求項１５】
話者識別の方法であって、
未識別の音声サンプルを、複数の音声サンプルからなるデータ構造の索引として使用することにより、前記未識別話者データに対する略最近傍を表す音声サンプルサブセットを検索するステップと、
前記複数の音声サンプルのサブセットから確率密度関数を予想するステップと、
前記確率密度関数によって示された、未識別音声サンプルに最も良く一致する一つ以上の音声サンプルに基づいて、前記未識別話者を識別するステップとからなる方法。
【請求項１６】
確率密度関数を予想する前記ステップは、前記確率密度関数を予想するために、Parzen窓を用いた確率密度関数の予想からなることを特徴とする請求項１５の方法。
【請求項１７】
話者識別システムであって、
複数の登録話者を表す複数の音声サンプルを、登録話者からの登録音声サンプルの特徴を表す高次ベクトルを用いて、データ構造へ体系化する手段と、
未識別話者からの未識別音声サンプルの略最近傍からなる複数の音声サンプルサブセットの密度を予想する手段と、
前記予想された密度によって示された、未識別音声サンプルに最も良く一致する一つ以上の音声サンプルに基づいて、前記未識別話者を識別する手段とからなるシステム。
【請求項１８】
前記予想手段は前記密度を予想するためにParzen窓を用いることを特徴とする請求項１７のシステム。
【請求項１９】
前記予想手段は、前記音声サンプルサブセット内の個々の音声サンプル間の距離に基づいて、前記密度を予想することを特徴とする請求項１７のシステム。
【請求項２０】
前記未識別音声サンプルから音声サンプルまでの距離に基づいて、前記音声サンプルサブセット内の個々の音声サンプルが前記確率密度関数に及ぼす相対的寄与を制御するための平滑化パラメータを、前記予想手段は含むことを特徴とする請求項１７のシステム。
【請求項２１】
前記予想手段は、前記複数の音声サンプルに関連したパラメトリックな分布情報とは独立の前記話者データサブセットの密度を予想することを特徴とする請求項１７のシステム。
【請求項２２】
前記体系化手段は、個々の音声サンプル間の距離が関連音声サンプル間の特徴的類似性に基づくように前記複数の音声サンプルを体系化し、前記距離はEuclid距離、Minkowski距離およびManhattan距離を含むグループの一つとして計測されることを特徴とする請求項１７のシステム。
【請求項２３】
前記体系化手段はkd-treeからなることを特徴とする請求項１７のシステム。
【請求項２４】
前記複数の音声サンプルは比較的多数の音声サンプルからなることを特徴とする請求項１７のシステム。
【請求項２５】
前記未識別音声サンプルからの未識別音声サンプルを、前記複数の音声サンプルの索引として用いて、前記音声サンプルサブセットを検索する検索手段を更に含む請求項１７のシステム。
【請求項２６】
前記音声サンプルサブセットを検索する手段は、前記未識別音声サンプルに対する略最近傍を検索し、前記略最近傍は絶対最近傍の距離の関数として計算される距離内の音声サンプルからなることを特徴とする請求項２５のシステム。
【請求項２７】
前記音声サンプルサブセットは共通の識別で関連付けられた一つ以上の音声サンプルを含み、前記識別モジュールは前記共通の識別に対するスコアの蓄積を特徴とする請求項１７のシステム。
【請求項２８】
音声サンプルから前記高次ベクトルを検索する検索手段をさらに含む請求項１７のシステム。
【請求項２９】
前記識別手段は、一致が誤差の閾値以内であれば前記未識別話者を前記登録話者の一人として識別すること特徴とする請求項１７のシステム。
【請求項３０】
登録音声サンプルと共通の話者の未識別音声サンプルがテキスト独立であることを特徴とする請求項１７のシステム。
【請求項３１】
話者識別のためのコンピュータプログラムの指示およびデータが実現化され、コンピュータが読取可能な媒体からなるプログラムであって、
複数の登録話者を表す複数の音声サンプルを、前記登録話者からの登録音声サンプルの特徴を表す高次ベクトルを用いて、データ構造へ体系化するステップと、
未識別話者からの未識別音声サンプルの略最近傍からなる前記複数の音声サンプルサブセットの密度を予想するステップと、
前記予想された密度によって示された、前記未識別音声サンプルに最も良く一致する一つ以上の音声サンプルに基づいて、前記未識別話者を識別するステップとからなるプログラム。
【請求項３２】
密度を予想する前記ステップは、確率密度関数を予想するために、Parzen窓を用いた確率密度関数の予想からなることを特徴とする請求項３１のプログラム。
【請求項３３】
密度を予想する前記ステップは、前記音声サンプルサブセット内の個々の音声サンプル間の距離に基づいた前記密度の予想からなることを特徴とする請求項３１のプログラム。
【請求項３４】
密度を予想する前記ステップは、前記未識別音声サンプルから音声サンプルまでの距離に基づいて、前記音声サンプルサブセット内の個々の音声サンプルの前記確率密度関数に対する相対的寄与の制御をさらに含むことを特徴とする請求項３１のプログラム。
【請求項３５】
密度を予想する前記ステップは、前記複数の音声サンプルに関するパラメトリックな分布情報とは独立の音声サンプルサブセットの確率密度関数を予想することを特徴とする請求項３１のプログラム。
【請求項３６】
前記データ構造モジュールは、個々の音声サンプル間の距離が関連の音声サンプル間の特徴類似性に基づくように体系化し、
前記距離はEuclid距離、Minkowski距離およびManhattan距離を含むグループの一つとして計測されることを特徴とする請求項３１のプログラム。
【請求項３７】
前記データ構造はkd-treeからなることを特徴とする請求項３１のプログラム。
【請求項３８】
前記複数の音声サンプルは比較的多数の音声サンプルからなることを特徴とする請求項３１のプログラム。
【請求項３９】
前記未識別音声サンプルからの未識別音声サンプルを、前記複数の音声サンプルの索引として用いて、前記話者音声サンプルサブセットを検索するステップを更に含む請求項３１のプログラム。
【請求項４０】
前記音声サンプルサブセットを検索するステップは、前記未識別音声サンプルに対する略最近傍の検索を含み、
前記略最近傍は絶対近傍の距離の関数として計算される距離内の音声サンプルからなることを特徴とする請求項３９のプログラム。
【請求項４１】
前記音声サンプルサブセットは共通の識別で関連付けられた一つ以上の音声サンプルを含み、
前記識別モジュールは前記共通の識別に対してスコアを蓄積することを特徴とする請求項３１のプログラム。
【請求項４２】
前記登録音声サンプルと前記未識別音声サンプルから前記高次ベクトルを抽出することをさらに含む請求項３１のプログラム。
【請求項４３】
前記未識別話者を識別するステップは、一致が誤差の閾値以内であれば前記未識別話者を前記登録話者の一人として識別することからなることを特徴とする請求項３１のプログラム。
【請求項４４】
登録音声サンプルと共通の話者の未識別音声サンプルがテキスト独立であることを特徴とする請求項３１のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に話者認識に関し、特に、データ構造において、話者からのデータポイントに最も近いデータポイントの予想密度を用いて、話者を認識するシステムおよび方法に関する。
【背景技術】
【０００２】
話者認識における進歩によって、人間とコンピュータの相互作用が日常生活に応用されている。そのような人工知能によって、例えば、ロボットに対する音声指示、車両におけるハンズフリーによる効率化およびバイオメトリクセキュリティ機能が可能になっている。さらに、テキスト独立の話者認識によって、パスワードのような所定の発声に依存することなく話者が認識される。例えば、文字の発声によって話者が登録され、番号の発声によって話者が認識される。一方、テキスト依存のシステムは同じ発声を使用し、それら二つの発声（例えば、同じアルファベット文字）の類似の部分について比較する。
【０００３】
テキスト独立の音声認識は、信頼できる比較の基礎を提供するために個々の音声サンプルから膨大な量の情報を収集しなければならないので、困難が伴う。多数の登録話者を含めて適用する場合は、比較を実行するために大きくて複雑なデータベースとハイエンドの処理システムが供給されなければならない。現在の音声認識技術の多くはこのような環境下で、大容量のデータセットを充分に早く処理できない、またはデータについて不正確な仮定をして近道をしている点で問題を抱えている。
【０００４】
話者認識に向けてのパラメトリック（あるいは生成的）手法は現実世界のデータ分布に対しては拘束が強すぎて不正確である。Gaussian Mixed Modelsのような手法は識別するために必要な計算量を低減するためにガウス分布を仮定している。しかしながら、データ分布特性は時間経過に伴って変化し、その結果、常にそのような仮定に従うとは限らない。このように、パラメトリックな手法は音声認識の多くの適用事例に対して十分な精度を提供しない。
【０００５】
音声認識に向けた識別手法は、非常に精度が高いが、大きなデータセットに対しては訓練ができない。サポートベクトルマシン、多項回帰分類子、適合ベクトルマシン、正規化最小自乗分類を例に取れば、パラメトリックな仮定よりもむしろ分類子が使用されている。さらに、多くの識別手法は疎らさ及び他の特性を示し、比較を実行するために必要な分類子の数を減らすことによってそれらを計算実行上効率的にしている。それにもかかわらず、訓練の複雑さはデータポイント数の２乗になることがあるので、識別手法は大きなデータセット（例えば、５００，０００あるいは１，０００，０００データポイント）に対しては拡張性が無い。音声認識はリッチで高次元のデータポイントのパターン認識を実行するので、多くの非パラメトリックな手法は扱いにくい。
【０００６】
その他の非パラメトリックな手法は許容不可能な計算時間を必要とする。個々のテストデータポイントが全ての訓練ポイントに対して比較されるので、訓練データポイントの量に比例してテスト時間が増加する。
【０００７】
したがって、大量で特徴がリッチなデータセットの環境で精度と計算効率を確保するローバストな音声認識システムと方法に対してニーズがある。未識別話者の認識の間に、識別のための密度関数を確実に予想する際に使用する話者データポイントサブセットを、解決策が迅速に生成できるように、その解決策は話者の登録の際に話者データ構造を効率的に体系化すべきである。
【発明の開示】
【０００８】
発明の要約
本発明は上記の必要性を満たす音声認識システムおよび方法を提供する。まず音声認識システムは、大きくて特徴リッチなデータセットに対して、迅速で、扱いやすく、信頼できることが利点として挙げられる。一実施形態において、システムは登録話者からの音声サンプルを略最近傍の検索に適合するデータ構造に体系化する。未識別話者からの音声サンプルが与えられると、システムはデータ構造を検索して最も近い話者データポイントのサブセットを見つけ出し予想密度を定式化する。
【０００９】
別の実施形態では、システムは登録音声サンプルと識別情報を用いて話者を登録する。抽出モジュールは登録音声サンプルを一つ以上の高次特徴ベクトルまたは話者データポイントで特徴付ける。データ構造化モジュールはデータポイントを、個々のデータポイント間の類似性がEuclid距離、Minkowski距離またはManhattan距離のような距離を規定するkd-treeのような高次データ構造に体系化する。その結果、データ構造は、未識別話者からの次のデータポイントと登録話者からのデータポイント間の距離を迅速に報告する。
【００１０】
さらに別の実施形態では、システムは未識別の音声サンプルを用いて話者を識別する。データ問合せモジュールはデータ構造を検索し、高次特徴ベクトルまたは未識別話者からのデータポイントに基づいて略最近傍のサブセットを生成する。データモデリングモジュールは、未識別話者の特性が登録話者にどの程度良く一致するかを表す確率密度関数を予想する。データモデリングモジュールの一実施形態は、Parzen窓のようなカーネル回帰を用いて、略最近傍のサブセットから予想密度を生成する。データモデリングモジュールの他の実施形態は、広範囲のモデリングデータポイントあるいはデータ分布についてのパラメトリックな仮定を用いずに、実時間で局所密度を予想する。円滑化パラメータは近接および遠隔の話者データポイントの予想密度への相対的寄与を制御する。
【００１１】
さらに別の実施形態では、識別モジュールは予想密度から得られるスコアを計算する。識別モジュールの一実施形態は、話者データポイントのサブセットに関連づけられた個々の登録話者に対してスコアを蓄積する。識別モジュールは最高スコアの登録話者が同一人であることを、ロボットまたはATM機のような出力装置へ出力して、ビジネスルールのセットを適用する。識別モジュールの他の実施形態は、誤差閾値内に留まっている条件で、識別結果を出力する。
【発明を実施するための最良の形態】
【００１２】
実施形態の詳細な説明
【００１３】
音声認識のシステムと方法が開示される。システムの一実施形態を図１−３に示し、そこで動作する方法の一実施形態を図４−６に示す。図に伴う説明には多数の具体的詳細を使用し、完全な説明をすることを目的としている。当然のことながら、音声認識の分野では、本発明の図示および説明された特徴について多くの異なった変形が可能である。従って同業者は間違いなく、以下の具体的詳細記述のある部分が無くても本発明は実施できると認識し、本願の教示と意図を満たしながら多くの変形と実施形態が実施可能であることを理解する。したがって、本発明は以下の具体的な実施事例に限定されることなく、添付の請求項によってのみ限定されると理解されるべきである。
【００１４】
本発明のプロセス、特徴あるいは機能は適切な計算装置内で実行するプログラムインストラクションによって実施できる。計算装置の例としては、エンタープライズサーバ、アプリケーションサーバ、ワークステーション、パーソナルコンピュータ、ネットワークコンピュータ、ネットワークアプライアンス、パーソナルデジタルアシスタント、ゲームコンソール、テレビジョン、セットトップボックス、構内オートメーション機器、ポイントオブセール端末、自動車および個人用通信装置（例えば携帯ハンドセット）が含まれる。
【００１５】
プログラムインストラクションは、コンピュータが読取可能な媒体またはストレージボリューム上に分布され得る。コンピュータが読取可能なストレージボリュームは、公開ネットワーク、個人ネットワークまたはインターネットを経由して利用可能である。プログラムインストラクションは、ソースコード、オブジェクトコードまたはスクリプティングコードのような、目的にかなった形式であればどのようなものでも良い。
【００１６】
図１は本発明の一実施形態による音声認識システム１００を示すブロック図である。システム１００は、例えば自動車、ロボット、または認証またはセキュリティシステムで具現化される。システム１００は話者インターフェース１１０と出力装置１２０につながる計算環境１０５からなる。一般に、話者インターフェース１１０は登録あるいは認識のために計算環境１０５へ話者の音声サンプルを送る。認識の間、計算環境１０５が認識音声サンプルを登録音声サンプルに一致させれば、計算環境１０５は同一人物であることを出力する。ここで用いられているように、「音声サンプル」は、一つ以上の単語あるいは単語の一部、句、数字、コード、または話者によるいかなる言語あるいは方言の音声投影または発声に関連している。声紋または話者データポイントのような「特徴ベクトル」は、時間あるいは周波数領域のメトリクス、バイオメトリクス、統計その他によって示されるような音声サンプルの特徴に関連している。システム１００を用いた方法の運用についてさらに詳細に以下に説明する。
【００１７】
話者インターフェース１１０は、マイクロフォンのような、話者から音声サンプルを受けるための音声取得装置１１２を含む。話者インターフェース１１０は、アナログ音をデジタル化して、デジタル化済みの音を受信して、あるいはその音を編集して（例えばクリッピングまたは音量正規化）、話者からの音声信号として音声サンプルを生成できる。一実施形態では、音声サンプルは、ＷＡＶ、ＭＰ３、ＡＡＣ、ＭＩＤＩ、ＷＭＡあるいは計算環境１０５が使用可能なフォーマットで記憶されているデジタル音声ファイルである。話者インターフェース１１０は、例えば話者が識別情報を入力するためのキーボードまたは数値パッドを含んでも良い。話者インターフェース１１０は、例えばバス、サーキット、ワイヤ、電話回線またはネットワーク経由で、対応する電気あるいはビット信号を用いて音声サンプルを伝送する。話者インターフェース１１０は、例えば携帯電話、地上回線電話、ＩＰ電話デバイス、マイクロフォンまたは話者からの音声サンプルを受信可能な他のいかなる装置においても具現化できる。音声取得装置１１２は、一実施形態において、残りのシステム１００に関係しない付属品であり、また他の一実施形態においては、システム１００用に一体化され且つ／またはシステム１００専用に設計されている。
【００１８】
計算環境１０５は音声入力装置１１０から音声サンプルを受信し、識別情報（またはインポスター情報）を出力装置１２０へ出力する。計算環境１０５はコンピュータのような独立した装置、あるいはロボットまたは車両のようなホスト環境へ一体化したものであることに注意を喚起したい。計算環境１０５とそれらのコンポーネントが音声認識のために最適化されると同時に、それらは他の計算タスクにも使用できる。
【００１９】
計算環境１０５はさらに入出力制御器１３０、プロセッサ１４０およびメモリ１５０からなり、それらはそれぞれバス１９９につながっている。入出力制御器１３０は処理のために音声取得装置１１２から音声サンプルを受信し、識別データ（またはインポスターデータ）を出力装置１２０へ送信する。プロセッサ１４０は、例えばカリフォルニア州サンタクララにあるインテル社のペンティアム４、カリフォルニア州サニーベールにあるアドバンストマイクロデバイス社のアスロンＸＰのようなＣＰＵ、またはＡＳＩＣ、ＦＰＧＡ、または音声認識インストラクションおよびデータの実行および操作が可能な任意のデバイスからなる。メモリ１５０は一時的および／または長期的なインストラクション及びデータのストレージをするために、ＲＡＭ、ハードドライブ、バッファおよびキャッシュのような揮発性および／または非揮発性のストレージシステムからなる。図１の実施形態ではメモリ１５０は音声サンプルを用いて話者を登録および認識する音声認識モジュール１５５をさらに含む。
【００２０】
前記のコンポーネントはハードウェアとして、あるいはハードウェア内で実行するソフトウェアとして、または両者の組み合わせとして実施可能であることに注意を喚起したい。さらに、計算環境１０５は、オペレーティングシステム、ＢＩＯＳ、ユーザーインターフェースその他を含むことが可能である。
【００２１】
図２は本発明の一実施形態による音声認識モジュール１５５を表すブロック図である。音声認識モジュール１５５は、音声前処理モジュール２１０、ベクトル抽出モジュール２２０、データ分割モジュール２３０、データ問合せモジュール２４０、データモデリングモジュール２５０、および識別モジュール２６０からなる。当業者であれば、図３−５で開示される図２に示された一例の変形が本発明の範囲と意図の内にあると認識する。例えば、モジュールはある機能グループを表現するために使用されるが、これらのモジュールは例示されている通りに命名、形成、および結合される必要はない。さらに、音声認識モジュール１５５は、オーディオバッファ、ユーザーインターフェースモジュール等のようなコンポーネントを追加して含んでも良い。
【００２２】
音声前処理モジュール２１０は解析のために音声サンプルを準備する。音声前処理モジュール２１０は、スピーチ分離、均等化、振幅一様化のようなシステム１００の性能向上につながる音声強化を行う音声品質モジュール２１２からなる。音声前処理モジュール２１０はさらに音声サンプルを、設計パラメータに従った時間長を持ついくつかの独立したフレームに分割する音声分割モジュール２１４からなる。音声前処理モジュール２１０は、システム能力に応じて、実時間あるいは時間遅れを持ってフレームを転送する。ベクトル抽出モジュール２１０は、セプストラル特徴のような、全体またはフレーム単位で音声サンプルの特徴を表すリッチな特徴ベクトル（rich feature vector）を抽出する。
【００２３】
登録の間、データ構造化モジュール２３０は音声サンプルデータベース２７５に保存されているデータ構造に特徴ベクトルをマッピングするために登録特徴ベクトルを使用する。データ構造は、略最近傍の迅速な検索のために話者データポイントを体系化するEuclid空間の超平面で分割可能である。即ち、未知の音声サンプルから得られた特徴ベクトルのようなテストデータポイントが与えられたとき、音声サンプルデータベース２７５の前処理は、テストポイントと他の話者データポイント間の距離を迅速に決定することを可能にする。
【００２４】
音声サンプルデータベース２７５はリッチな話者データポイントからなる比較的大きなデータ構造に合うように改変される。一実施形態では、新しいデータポイントを分類するために、データ構造のサイズに線形な時間を使うことは実行不可能なので、一つの大きなデータベースがそのように考慮されている。別の実施形態では、一つの大きなデータベースが、識別分類と非パラメトリックな密度予想を介した分類の間の類似性能によって特徴付けられている。量的な例を挙げれば、５００，０００、１，０００，０００あるいは２，０００，０００の話者データポイントは大きなデータ構造と考えられる。しかしながら、音声サンプルデータベース２７５は、大容量のデータポイントを蓄積していても、大きなデータ構造に適合できる。例えば、ある適用例では、何人の話者がシステム１００に登録するか先験的に知られている。
【００２５】
識別の間、予想モジュール２４０は、ローカライズした話者データポイントに基づいて予想統計モデルを生成するために未識別特徴ベクトルを使用する。そうするために、予想モジュール２４０は、音声サンプルデータベース２７５を検索して未識別音声サンプルから得られた未識別話者データポイントに関して略最近傍のサブセットを見つけるためのデータ問合せモジュール２４２を含む。予想モジュール２４０はさらに、略最近傍のサブセットから確率密度関数を予想するためのデータモデリングモジュール２４４を含む。一実施形態においては、予想モジュールはParzen窓を用いて確率密度関数を予測する。別の実施形態においては、円滑化コンポーネントが近傍および遠隔の話者データポイントの確率密度関数への相対的寄与を制御する。識別モジュール２５０は、一つ以上の登録話者データポイントが未識別話者に一致する身元に関連付けられる見込みを表す確率密度関数に基づいて、スコアを計算する。予想モジュール２４０と識別モジュール２５０は実時間で結果を出力できる。
【００２６】
図３は本発明の一実施形態による未識別話者を認識する方法３００を示すフローチャートである。上位レベルにおいて、システム１００は二つのモード、登録と識別で動作する。システム１００によって認識されようと試みるインポスターの場合は、話者に関する登録プロセスがないことに注意を喚起する。一実施形態においては、出力装置１２０は、システム１００がユーザを認識した結果、ビジネスプロセスのようなアクションのセットを実行する。
【００２７】
システム１００は登録話者を音声サンプルと識別情報を用いて登録する（３１０）。話者は一つ以上の音声サンプルを音声取得装置１１２に向かって発声する。システム１００は、同一話者の次の識別のためのレファレンスとして用いるために、音声サンプルの特徴を解析する。一実施形態においては、システム１００は音声サンプルまたは話者データポイントから抽出された特徴ベクトルを、最近傍の迅速な問い合わせを可能にするデータ構造に体系化する。別の実施形態では、システム１００は高次特徴ベクトルを、ベクトル間の類似性がEuclid空間の距離を規定するkd-treeのような高次データ構造に体系化する。システム１００は証明要求を受けるまでモデリングデータを検索しないこともあるので、システム１００は識別レファレンスとして使用するために話者データポイントを迅速に検索できなければならない。
【００２８】
一実施例では、登録話者は、システム１００の特性に応じて、名前または口座番号のような識別情報をさらに入力する。別の実施形態においては、外部ハードドライブまたはネットワーク化されたデータベースのような外部ソースから計算環境１０５に与えられた登録情報によって、話者は間接的に登録される。その他の登録方法については図４を用いて以下に詳細に説明する。
【００２９】
システム１００は話者が登録されているか決定するための未識別音声サンプルを用いて未識別話者を識別する（３２０）。未識別話者は音声取得装置１１２に向かって一つ以上の音声サンプルを発声する。３１０の登録の間に蓄積されたレファレンス情報を用いて、システム１００は、話者の声のバイオメトリックパラメータのような話者に特有な特徴によって、未識別話者を登録話者に一致させることができる。一実施形態においては、システム１００は未識別音声サンプルから抽出した特徴ベクトルをデータ構造へマップ化し、モデリングのために一定の数の略最近傍を検索する。略最近傍の数は、速さと精度のトレードオフに基づいて選択される設計パラメータである。一実施形態では、近傍および遠隔ポイントの相対的寄与を制御し、Parzen窓に基づく確率密度関数を用いて、データをモデル化する。
【００３０】
一実施形態では、システム１００は話者の閉集合があると仮定し、未識別話者を最近傍の既知の話者に一致させる。別の実施形態では、システム１００は話者の開集合があると仮定する。システムは未識別の話者が登録されている話者かインポスターかを決定するために誤差閾値を使用する。したがって、最近傍の話者との一致が強くない場合、システム１００は一致が見られなかったことを指示する。
【００３１】
図４は本発明の一実施形態による話者を登録する方法３１０を示すフローチャートである。登録の間、音声前処理モジュール２１０は音声取得装置１１２から登録音声サンプルを受信する（４１０）。音声品質モジュール２１２は音声サンプルの強化を実施する（４２０）。一例では、音声品質モジュール２１２は音声の欠落したデータとその他の不要または使用不可能なデータを音声サンプルから取り除く。その他の音声品質向上の変形（あるいは改善を全くしない変形）は適宜実施される。音声分割モジュール２１４は音声サンプルをいくつかの独立したフレームに分割する（４３０）。例えば、話者は電話またはＰＩＮ番号を繰り繰り返すことにより、３０秒の登録話者サンプルを提供できる。３０秒の音声ファイルは、システム１００に応じて、２５ミリセカンドのフレーム、あるいは他の時間幅に分割できる。フレームは音声抽出モジュール２２０に実時間、またはバッファにより微小の遅れを持たせて供給する。例えば、２５ミリセカンドのフレームは１秒間に１００フレームのレートで出力できる。
【００３２】
ベクトル抽出モジュール２１０はフレームから登録特徴ベクトルまたは登録話者データポイントを抽出する（４４０）。特徴ベクトルは登録話者音声サンプルの特徴またはパターンを表すメトリクスを含んでいる。例えば、ベクトル抽出モジュール２１０は個々のフレームに対して１５セプストラルおよび１５デルタセプストラルの特徴を決定できる。低エネルギセプストラルとデルタセプストラルは除外できて、２８次元の特徴ベクトルを残す。一実施形態において、ベクトル抽出モジュール２１０は、登録音声サンプルに対して、代表または平均特徴ベクトルを出力できる。計算能力がより高い別の実施形態においては、ベクトル抽出モジュール２１０は個々のフレームに特徴ベクトルを出力し、その結果リッチで且つより信頼できるデータセットを与える。
【００３３】
データ構造化モジュール２３０は特徴ベクトルを音声サンプルデータベース２７５に保存されている最近傍データ構造に体系化する（４５０）。データ構造は、例えば、ＡＮＮライブラリ、または一定の数の最近傍ポイントに迅速なアクセスを可能とするデータ構造であればどのようなものでも構わない。例えばデータ構造は、高次元のバイナリツリーの一般化バージョンであるkd-treeで良い。kd-treeは“ｌ”の話者データポイントと固定次元“ｄ”のデータセットにおけるｋ最近傍を見つけるために、Ｏ（ｌ）空間とＯ（ｌｏｇｌ）時間とからなる予想性能を与える。問い合わせ時間と入力空間は“ｄ”に指数依存するので、略最近傍の提供によって、最近傍のサブセットは音声認識モジュール１５５に対して実現可能な計算時間を維持する。個々の話者に対して体系化された特徴ベクトルの数は、例えば、５００、１，０００または２，０００で良く、特徴ベクトルがよりリッチであればより高精度になる。
【００３４】
一実施形態においては、データ構造化モジュール２３０は入力空間を再帰的に分割し、話者データポイントの全てのデータセットの検索を分割ごとに可能にする。分割の一方法は、座標軸に直交する超平面の分割または減縮によって階層的な一区分を生成する。入力空間を分割する別の方法には、kd-tree分割、sliding-midpoint、minimum-ambiguity、balanced box-decomposition等が含まれる。分割は縦横比のようなさまざまな設計配慮によって限定される。
【００３５】
図５は本発明の一実施形態による話者識別の方法３２０を表すフローチャートである。音声前処理モジュール２１０は上述のように音声取得装置１１２から未識別音声サンプルを受信する（５１０）。話者インターフェース１１０は音声サンプル内にフラグを立てるか、一つの音声サンプルが登録と照合されて認識に向けられているという別の指示を送ることもできる。音声品質モジュール２１２は音声強化を実行し（５２０）、音声分割モジュール２１４は前述のように音声サンプルを分割する（５３０）。音声抽出モジュール２１０は、未識別特徴ベクトルまたはフレームからの未識別話者データポイントを抽出する（５４０）。効率の観点では、未識別音声サンプルを受信するステップ５１０、音声強化を行うステップ５２０、音声サンプルを分割するステップ５３０および特徴ベクトルを抽出するステップ５４０は、同一の装置を使用して登録と認識の両方において同じように動作するのが望ましい。しかしながら、当業者にとって、登録と認識に独立の装置を使用するような、変形および最適化は当たり前のことである。
【００３６】
データ問合せモジュール２４２は特徴ベクトルの略最近傍である話者データポイントのサブセットを生成する（５５０）。データ問合せモジュール２４２は、未識別特徴ベクトルをデータ構造内のロケーションの指標として使用する。このロケーションから略最近傍が引き出される。返却される略最近傍データの厳密な数は、信頼度と精度間のトレードオフを考慮して決められる。一実施形態においては、最近傍は未識別の特徴ベクトルから絶対最近傍までの距離の関数として選ばれる。例えば、この絶対距離は（１＋ε）のファクタが乗ぜられ、その得られた距離内から略最近傍が引き出される。前述のように、コンフィギャラブルな数値εはサブセット結果を制御する。この実施形態の検索時間は次元には依存しないので、リッチな話者データポイントの迅速な検索を可能にするという利点を有する。
【００３７】
0004571624.tif 000002
【００３８】
0004571624.tif 000003
【００３９】
0004571624.tif 000004
【００４０】
0004571624.tif 000005
【００４１】
同一性モジュール２５０は同一性および／または最高スコアと関連付けられた他の識別情報を出力する（５６０）。同一性モジュール２５０は、音声サンプルデータベース２７５、または関連付けられた同一性且つ／又は他の情報を調べるための他のデータベースに、得られた話者データポイントを提示する。例えば、識別モジュール２５０は、名前、口座番号、さらに認識パラメータ等を出力できる。出力装置１２０は、アクセスの許可、現金支払い、または音声サンプルによって出された命令の実行等のような、ビジネスルールをさらに適用するためにこの出力を使用する。
【００４２】
上記の説明は好適な実施形態の動作を示すために含められたものであって、本発明の範囲を限定する意図を持つものではない。本発明の範囲は添付の請求項によってのみ限定される。
【図面の簡単な説明】
【００４３】
【図１】図１は本発明の一実施形態による音声認識のためのシステムを示すブロック図である。
【図２】図２は本発明の一実施形態による音声認識モジュールを示すブロック図である。
【図３】図３は本発明の一実施形態による未識別話者を認識する方法を示すフローチャートである。
【図４】図４は本発明の一実施形態による話者を登録する方法を示すフローチャートである。
【図５】図５は本発明の一実施形態による話者を識別する方法を示すフローチャートである。
【図１】
0004571624.tif 000006
【図２】
0004571624.tif 000007
【図３】
0004571624.tif 000008
【図４】
0004571624.tif 000009
【図５】
0004571624.tif 000010