(57)【要約】【解決手段】情報処理装置は、複数の教師データを取得し、各教師データから特徴データを抽出して、抽出された特徴データを用いて教師データを複数のデータクラスタに分割する。情報処理装置は、データクラスタの教師データから特徴行列を抽出すること、および、特徴行列に対して行列分解を実行して第１の基底行列を生成すること、をデータクラスタごとに実行する。情報処理装置は、複数の第１の基底行列の結合に対する次元縮小を実行して第２の基底行列を生成する。情報処理装置は、第２の基底行列を用いて、複数の特徴行列の結合に対する行列分解を実行し、それによりアクティベーション行列を生成する。【選択図】図１
2021513701.tif 000002
【特許請求の範囲】
【請求項１】
複数の教師データを取得し、各教師データから特徴データを抽出し、抽出された前記特徴データを用いて、前記複数の教師データを複数のデータクラスタに分割するクラスタリング部、
前記データクラスタの前記教師データから特徴行列を抽出すること、および、前記特徴行列に対して行列分解を実行して第１の基底行列を生成すること、をデータクラスタごとに実行する第１の分解部、
複数の前記第１の基底行列の結合に対する次元縮小を実行して第２の基底行列を生成する次元縮小部、および、
前記第２の基底行列を用いて、複数の前記特徴行列の結合に対する行列分解を実行し、それによりアクティベーション行列を生成する第２の分解部、を備える情報処理装置。
【請求項２】
前記特徴行列の結合の分解において、前記第２の分解部が、基底行列を前記第２の基底行列として固定し、反復的に前記アクティベーション行列を更新する、請求項１に記載の情報処理装置。
【請求項３】
前記特徴行列の結合の分解において、前記第２の分解部が、基底行列を前記第２の基底行列として初期化し、反復的に前記基底行列および前記アクティベーション行列を更新する、請求項１に記載の情報処理装置。
【請求項４】
前記第２の分解部によって生成された前記アクティベーション行列が、パターン認識のテスト段階で用いられるモデルパラメータを学習するために用いられる、請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
複数の教師データを取得し、各教師データから特徴データを抽出し、抽出された前記特徴データを用いて、前記複数の特徴データを複数のデータクラスタに分割すること、
前記データクラスタの前記教師データから特徴行列を抽出すること、および、前記特徴行列に対して行列分解を実行して第１の基底行列を生成すること、をデータクラスタごとに実行すること、
複数の前記第１の基底行列の結合に対する次元縮小を実行して第２の基底行列を生成すること、および、
前記第２の基底行列を用いて、複数の前記特徴行列の結合に対する行列分解を実行し、それによりアクティベーション行列を生成すること、を含む、コンピュータによって実行される方法。
【請求項６】
前記特徴行列の結合の分解において、基底行列を前記第２の基底行列として固定し、反復的に前記アクティベーション行列を更新する、請求項５に記載の方法。
【請求項７】
前記特徴行列の結合の分解において、基底行列を前記第２の基底行列として初期化し、反復的に前記基底行列および前記アクティベーション行列を更新する、請求項６に記載の方法。
【請求項８】
前記第２の分解部によって生成された前記アクティベーション行列が、パターン認識のテスト段階で用いられるモデルパラメータを学習するために用いられる、請求項５から７のいずれか１項に記載の方法。
【請求項９】
請求項５から８のいずれか１項に含まれる各ステップを、コンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、広く機械学習のモデル訓練の分野に関する。
【背景技術】
【０００２】
パターン認識に対する広いそしてますます増大する関心は、少し例を挙げれば、セキュリティ、医学、および、画像、テキスト、発話の認識に関連する応用へのその適用性から主に生じている。一般に、これらの応用は、データパターンを学習するための機械学習技術を利用しており、そうすると、それらを検出して特定することが可能となる。データパターンを学習するための周知の技術の１つは、行列分解、特に非負値行列因子分解であり、画像および発話に関連する応用において頻繁に用いられる。そのような応用の例は、音声パターンが最初に学習され次に任意の与えられた音声データ入力において検出される、音響イベント検出である。学習および検出のこのプロセスは、今後本発明において、それぞれ訓練およびテストと呼ばれる。
【０００３】
大まかに言って、訓練プロセスにおいて、いくつかのパターンまたは特徴が教師データ入力から抽出され、モデルがそれらに対して訓練される。テストプロセスにおいて、類似の特徴がテストデータ入力から抽出され、訓練されたモデルがこれらの特徴が教師データの特徴と合致するかどうか検出する。この訓練およびテストプロセスは、データ入力の１つのタイプまたはクラスだけには限定されない。モデルは、データ入力の異なるタイプまたはクラスの間で分類するように訓練することもできる。
【０００４】
１つのクラスの教師データは、異なるタイプのソースまたは事例から得ることができる。例えば、叫び声のデータ入力において、叫んでいる男性の１００の音声サンプルおよび叫んでいる女性のたった１つの音声サンプルを有することがありうる。これが、データアンバランスの問題を生じさせる。この問題は、異なるクラスサイズからも生じうる。一例は、猫のクラスの１００の画像および犬のクラスのたった１０の画像を有するデータ入力である。
【０００５】
モデルの多くは、各クラスの全データまたはすべてのクラスの全データを使用して広く訓練される。そのようなモデル訓練を実行するときに、各クラスのデータおよびすべてのクラスのデータがバランスしていると仮定される。この仮定を満たす１つの可能な方法は、用いられるデータ、例えば画像、音声またはテキスト、のデータベースを、１つのクラスの全てのタイプのソースの等しい数の事例を有し、すべてのタイプのクラスに対して総事例の数が等しくなるように製作することである。しかしながら、そのような制約を守るのは困難である。
【０００６】
したがって、その克服のために通常用いられる技術は、データ入力の特徴をサブセットにクラスタ化して各サブセットをモデル化し、それにより混合モデルを生成するというものである。その核心において、混合モデルは、特徴の全体セットの内部に存在する特徴サブセットを表す。一例は、その潜在変数として混合の数を有する混合ガウスモデルである。
【０００７】
この方法のための従来技術が、非特許文献１に記載されている。訓練段階において、特徴ベクトルが教師データから抽出され、特徴ベクトルクラスタのセットにクラスタ化される。教師データのデータラベルを用いた、特徴ベクトルクラスタのセットに対する訓練を通して、モデルパラメータが生成される。生成されたモデルパラメータは、テスト段階で用いられるように保存される。テスト段階において、特徴ベクトルがテストデータから抽出され、テストデータは、モデルパラメータを用いてそのテスト特徴ベクトルを照合することによって特定される。
【０００８】
特徴ベクトルのセットごとにクラスタの正確な数を算定することは、モデルのオーバーフィットまたはアンダーフィットをしないようにするために重要である。クラスタの正確な数が指定されれば、モデルはデータアンバランスを克服して、効果的に教師データをクラスタ化する。しかしながら、教師データが相当に大きいときに、および／または、相関を有するイベント／クラスが存在する場合に、教師特徴ベクトルは多くの相関を有しがちである。このようなクラスタリング手法は、異なるクラスの特徴ベクトルの間に存在する相関を抽出したり、特定のクラスの異なるクラスタの特徴ベクトルの間の相関を抽出したりすることには適していない。なお、「イベント」および「クラス」という言葉は、この特許の全体にわたって互換的に用いられる。
【０００９】
系列データが特徴行列（特徴ベクトルのセット）として表されるときに、行列分解はその系列データに存在するそのような相関を算定する。特徴行列（Ｖ）を、Ｎ個の特徴ベクトル｛ｖｉ｝、１＜＝ｉ＜＝Ｎ、のセットとして定義する。特徴ベクトルの分解は以下の通りである。
式１
2021513701.tif 000003
ここで、各ベクトルｖｉが、基底ベクトル｛ｗｋ｝、１＜＝ｉ＜＝Ｎ、の線形結合として近似される。
【００１０】
一般に、ｋはＮよりずっと小さい。これは、特徴行列Ｖを算定するのに、ほんの少数の基底ベクトルだけで十分であることを意味する。基底ベクトルのセットは基底行列（Ｗ）であり、Ｈ＝｛Ｈｋｊ｝、１＜＝ｋ＜＝Ｋ、１＜＝ｉ＜＝Ｎ、がアクティベーションのセットまたはアクティベーション行列である。より簡潔には、Ｖは以下の通りに分解される。
式２
2021513701.tif 000004
ここで、上記の式の記号は近似同等を表す。
【００１１】
行列分解の普及している例の１つは、非負値行列因子分解（ＮＭＦ；Non-Negative Matrix Factorization）である。ＮＭＦにおいてＷが固定されているときには、教師ありＮＭＦと呼ばれる。事前情報を有する、および有しないＮＭＦを用いてＷが算定される場合、それぞれ、半教師あり、および教師なし、と呼ばれる。
【００１２】
上述の相関を考慮に入れる従来技術の非特許文献２は、非負値行列因子分解の概念を用いる。訓練段階において、特徴ベクトルは、教師データから抽出され、基底行列およびアクティベーション行列に分解される。教師データのデータラベルを用いた、アクティベーション行列に対する訓練を通して、モデルパラメータが生成される。テスト段階において、特徴ベクトルは、テストデータから抽出され、訓練段階で生成されたものとして基底行列が固定された状態でアクティベーション行列に分解される。テストデータは、モデルパラメータを用いてそのアクティベーション行列を照合することによって特定される。
【先行技術文献】
【非特許文献】
【００１３】
【非特許文献１】Vuegen, L., et al., "An MFCC-GMM approach for event detection and classification," IEEE Workshop on Applications of Signal Processing to Audio and Acoustics (WASPAA), 2013.
【非特許文献２】Ludena-Choez, Jimmy, and Ascension Gallardo-Antolin, "NMF-based spectral analysis for acoustic event classification tasks," International Conference on Nonlinear Speech Processing, 2013.
【発明の概要】
【発明が解決しようとする課題】
【００１４】
非特許文献１は、特徴のクラスタリングを実行することによって、データアンバランスの問題を扱う。しかしながら、一対のクラスタの間に存在する相関を考慮しない。これが、教師データ全体の不十分なモデリングの原因となる。
【００１５】
非特許文献２は、基底およびアクティベーション行列を算定する教師なし分解を実行することによって、教師データ間の相関の問題を扱う。そのような行列分解は、全データのコスト関数を最小化するように実行される。しかしながら、行列分解のためのコスト関数は、教師データのすべての特徴ベクトルに、等しい優先度を与える。そのため、教師データに冗長性があるときには、算定された基底ベクトルは教師データのより大きなサブセットのコスト関数を最小化することに焦点を合わせ、それにより、より小さなサブセットを無視する。
【００１６】
本発明の目的は、教師データ間のデータアンバランスおよび相関を考慮した、教師データのより良い表現を得る新規な方法を提供することである。
【課題を解決するための手段】
【００１７】
本発明は、１）複数の教師データを取得し、各教師データから特徴データを抽出し、抽出された特徴データを用いて、複数の教師データを複数のデータクラスタに分割するクラスタリング部、２）データクラスタの教師データから特徴行列を抽出すること、および、特徴行列に対して行列分解を実行して第１の基底行列を生成すること、をデータクラスタごとに実行する第１の分解部、３）複数の第１の基底行列の結合に対する次元縮小を実行して第２の基底行列を生成する次元縮小部、および、４）第２の基底行列を用いて、複数の特徴行列の結合に対する行列分解を実行し、それによりアクティベーション行列を生成する第２の分解部、を備える情報処理装置を提供する。
【００１８】
本発明は、コンピュータによって実行される方法を提供する。この方法は、１）複数の教師データを取得し、各教師データから特徴データを抽出し、抽出された特徴データを用いて、複数の教師データを複数のデータクラスタに分割すること、２）データクラスタの教師データから特徴行列を抽出すること、および、特徴行列に対して行列分解を実行して第１の基底行列を生成すること、をデータクラスタごとに実行すること、３）複数の第１の基底行列の結合に対する次元縮小を実行して第２の基底行列を生成すること、および、４）第２の基底行列を用いて、複数の特徴行列の結合に対する行列分解を実行し、それによりアクティベーション行列を生成すること、を含む。
【００１９】
本発明は、本発明により提供される方法の各ステップをコンピュータに実行させるプログラムを提供する。
【発明の効果】
【００２０】
本発明に従い、教師データ間のデータアンバランスおよび相関を考慮した、教師データのより良い表現を得る新規な方法が提供される。
【図面の簡単な説明】
【００２１】
上述の目的、他の目的、特徴および利点は、後述する好適な実施形態および以下の添付の図面から、より明らかとなる。
【図１】図１は、実施形態１の情報処理装置がどのように作用するかの概要を例示する。
【図２】図２は、実施形態１の情報処理装置２０００の機能ベースの構成を例示するブロック図である。
【図３】図３は、実施形態１の情報処理装置２０００を実現するコンピュータ１０００のハードウェア構成の例を示すブロック図である。
【図４】図４は、実施形態１の情報処理装置２０００によって実行される処理の流れを例示するフローチャートである。
【図５】図５は、各イベントに対して実行されるクラスタリングを例示する。
【発明を実施するための形態】
【００２２】
以下、本発明の実施形態が、添付の図面を参照して記載される。すべての図面において、類似の要素は類似の参照番号によって参照され、それについての説明は繰り返されない。
【００２３】
実施形態１
【００２４】
＜概要＞
図１は、実施形態１の情報処理装置（図２では情報処理装置２０００として示す）がどのように作用するかの概要を例示する。情報処理装置２０００は、複数の教師データを取得する。教師データごとに、情報処理装置２０００は、教師データに関連する特徴データを抽出する。特徴データは、特徴のタイプに応じて、一次元の値から多次元ベクトルまで変化しうる。
【００２５】
情報処理装置２０００は、抽出された特徴データを用いて複数の教師データをデータクラスタに分割する。データクラスタごとに、情報処理装置２０００は、データクラスタの教師データから特徴行列を抽出して、特徴行列に対して行列分解を実行する。その結果、第１の基底行列、すなわち基底ベクトルのセット、が各データクラスタに対して生成される。情報処理装置２０００は、生成された第１の基底行列を単一のマトリックスに結合し、第１の基底行列の結合に対して次元縮小を実行して、それにより第２の基底行列を生成する。
【００２６】
第２の基底行列を用いて、情報処理装置２０００は、再び行列分解を実行する。この行列分解は、データクラスタから生成された全ての特徴行列の結合に対して実行される。この行列分解の結果、アクティベーション行列が生成される。このアクティベーション行列は、パターン認識のテスト段階のためのモデルパラメータを生成するために用いられる。
【００２７】
＜作用効果＞
実施形態１の情報処理装置２０００によれば、教師データから抽出された複数の特徴データが用いられ、教師データは複数のデータクラスタに分割され、各データクラスタから特徴行列が抽出されて、各特徴行列に対して行列分解が実行される。各データクラスタに対するこの行列分解を実行することによって、行列分解に対するデータアンバランスの影響が軽減される。
【００２８】
加えて、教師データ間の相関は、行列分解および次元縮小を通して効果的に取り除かれる。具体的には、同じデータクラスタの特徴ベクトル間の相関は、各データクラスタに対して実行される行列分解を通して減少する。次元縮小に関しては、異なるデータクラスタの特徴間の相関を減少させる。
【００２９】
最後に、モデル訓練において用いられるアクティベーション行列が、第２の基底行列（すなわち上述の次元縮小の出力）を用いて、特徴行列に対する行列分解を通して生成される。特徴行列に関しては、各々が、データアンバランスの影響が上記の通りクラスタリングを通して減少して、効果的に抽出される。第２の基底行列に関しては、教師データ間の相関が上記のとおり十分に除去される。そのような特徴行列および第２の基底行列を用いることによって、アクティベーション行列のより効果的な抽出が実現する。その結果、このアクティベーション行列に対する訓練によって、より良いモデルパラメータを得ることができる。
【００３０】
以下の記述において、本実施形態の情報処理装置２０００の詳細が説明される。
【００３１】
＜機能ベースの構成の例＞
図２は、実施形態１の情報処理装置２０００の機能ベースの構成を例示するブロック図である。情報処理装置２０００は、クラスタリング部２０２０、第１の分解部２０４０、次元縮小部２０６０、および第２の分解部２０８０を含む。クラスタリング部２０２０は、複数の教師データを取得し、各教師データから特徴データを抽出して、抽出された特徴データを用いて、複数の教師データを複数のデータクラスタに分割する。データクラスタごとに、第１の分解部２０４０は、データクラスタの教師データから特徴行列を抽出して、特徴行列に対して行列分解を実行して第１の基底行列を生成する。次元縮小部２０６０は、複数の第１の基底行列の結合に対して次元縮小を実行して、第２の基底行列を生成する。第２の分解部２０８０は、第２の基底行列を用いて複数の特徴行列の結合に対して行列分解を実行し、それにより、アクティベーション行列を生成する。
【００３２】
＜ハードウェア構成の例＞
一部の実施形態では、情報処理装置２０００に含まれる各機能部は、少なくとも１つのハードウェア構成要素で実装されてもよく、各ハードウェア構成要素は一つ以上の機能部を実現してもよい。一部の実施形態では、各機能部は、少なくとも１つのソフトウェア構成要素によって実装されてもよい。一部の実施形態では、各機能部は、ハードウェア構成要素およびソフトウェア構成要素の組合せによって実装されてもよい。
【００３３】
情報処理装置２０００は、情報処理装置２０００を実装するために製造された特別な目的のコンピュータによって実装されてもよく、また、パーソナルコンピュータ（ＰＣ）、サーバマシンまたはモバイル機器のような汎用コンピュータによって実装されてもよい。
【００３４】
図３は、実施形態１の情報処理装置２０００を実現するコンピュータ１０００のハードウェア構成の例を示すブロック図である。図３において、コンピュータ１０００は、バス１０２０、プロセッサ１０４０、メモリ１０６０、記憶装置１０８０、入出力（Ｉ／Ｏ）インタフェース１１００、およびネットワークインタフェース１１２０を含む。
【００３５】
バス１０２０は、プロセッサ１０４０、メモリ１０６０、記憶装置１０８０、Ｉ／Ｏインタフェース１１００およびネットワークインタフェース１１２０が、相互にデータを送信および受信するためのデータ伝送チャネルである。プロセッサ１０４０は、ＣＰＵ（Central Processing Unit）、ＧＰＵ（Graphics Processing Unit）、またはＦＰＧＡ（Field-Programmable Gate Array）などのプロセッサである。メモリ１０６０は、ＲＡＭ（Random  Access Memory）などの主記憶装置である。記録媒体１０８０は、ハードディスク装置、ＳＳＤ（Solid State Drive）、またはＲＯＭ（Read Only Memory）などの二次記憶装置である。
【００３６】
Ｉ／Ｏインタフェース１１００は、コンピュータ１０００と周辺装置、例えばキーボード、マウスまたは表示装置、との間のインタフェースである。ネットワークインタフェース１１２０は、コンピュータ１０００と、コンピュータ１０００が他のコンピュータと通信する通信回線と、の間のインタフェースである。
【００３７】
記憶装置１０８０は、それぞれが情報処理装置２０００の機能部（図２を参照）の実装であるプログラムモジュールを格納してもよい。プロセッサ１０４０は各プログラムモジュールを実行し、それにより情報処理装置２０００の各機能部を実現する。
【００３８】
＜処理の流れ＞
図４は、実施形態１の情報処理装置２０００によって実行されるプロセスの流れを例示するフローチャートである。クラスタリング部２０２０は、複数の教師データを取得する（Ｓ１０２）。クラスタリング部２０２０は、各教師データから特徴データを抽出する（Ｓ１０４）。クラスタリング部２０２０は、抽出された特徴データに基づいて、教師データを複数のデータクラスタに分割する（Ｓ１０６）。第１の分解部２０４０は、データクラスタごとに、教師データから特徴行列を抽出する（Ｓ１０８）。データクラスタごとに、第１の分解部２０４０は、データクラスタから抽出された特徴行列の結合に対して行列分解を実行して、それにより第１の基底行列を生成する（Ｓ１０８）。次元縮小部２０６０は、第１の基底行列の結合に対する次元縮小を実行して、それにより第２の基底行列を生成する（Ｓ１１０）。第２の分解部２０８０は、第２の基底行列を用いて特徴行列の結合に対して行列分解を実行し、それによりアクティベーション行列を生成する（Ｓ１１２）。
【００３９】
＜教師データ取得：Ｓ１０２＞
クラスタリング部２０２０は、複数の教師データを取得する（Ｓ１０２）。それらは、異なるイベントの一連のデータポイントである。教師データは、定量的データ収集の任意の手段、例えば音センサ、振動センサ、自動車関連センサ、化学センサ、電気センサ、磁気センサ、放射線センサ、圧力センサ、熱センサ、光学センサ、ナビゲーションセンサ、および天気センサ、から取得されてもよい。
【００４０】
教師データを取得するには様々な方法がある。一部の実施形態では、クラスタリング部２０２０は、教師データを保存する記憶装置から教師データを取得してもよく、その記憶装置は情報処理装置２０００の内部に、または外部に取り付けられてもよい。一部の実施形態では、クラスタリング部２０２０は、教師データを生成する装置から送信された教師データを受信する。
【００４１】
一部の実施形態では、教師データは、情報処理装置２０００によって、例えば一つ以上の画像を生成するビデオデータまたは一つ以上の音声サンプルを生成する音声データ、などのソースデータから生成されてもよい。生成された教師データは、記憶装置、例えば記憶装置１０８０に書き込まれる。クラスタリング部２０２０は、その記憶装置から教師データを取得する。
【００４２】
なお、各教師データは、あらかじめクラスまたはイベントの１つに分類される。例えば、クラスタリング部２０２０は、叫び、または談話、のような音声イベントの１つをタグ付けされた音声サンプルを取得する。この場合、クラスタリング部２０２０は、各イベントに対してクラスタリングアルゴリズムを実行してもよい。図５は、各イベントに対して実行されるクラスタリングを例示する。
【００４３】
＜特徴抽出：Ｓ１０４＞
クラスタリング部２０２０は、教師データに関連する特徴データ、例えば、音声データについてのメル周波数ケプストラム係数およびスペクトログラム、および、画像についての強度およびテクスチャ、を抽出する。教師データから特徴データを抽出するための様々な周知技術があり、クラスタリング部２０２０はそのような周知技術のいずれを用いてもよい。
【００４４】
＜特徴データのクラスタリング：Ｓ１０６＞
クラスタリング部２０２０は、教師データを、それらの特徴データに基づいて複数のデータクラスタに分割する（Ｓ１０６）。データクラスタは、｛Ｃｐ｝、１＜＝ｐ＜＝Ｐ、と表され、ここでＰはデータクラスタの総数を示す。クラスタリング部２０２０は、互いに類似である特徴データのセットを特定して、それらの対応する教師データを同一のデータクラスタに入れる。これらのデータクラスタのセット｛Ｃｐ｝は、非特許文献１のものと同様であり、非特許文献１においては、各クラスタはモデルを有し、それらの混合モデルは取得された教師データの訓練モデルとして用いられた。
【００４５】
クラスタリング部２０２０は、教師あり、半教師あり、または教師なしクラスタリング技術を用いてもよい。例えば、多変量ガウシアン、ｋ−ｍｅａｎｓまたは階層的クラスタリング手法が用いられてよいが、それらには限定されない。
【００４６】
＜相関抽出＞
情報処理装置２０００は、第１の分解部２０４０および次元縮小部２０６０を用いて、データクラスタのセット間の相関を抽出し可変性を特定する。相関抽出は、各データクラスタの個々の特徴を、より少数の潜在変数または非観測変数の線形結合としてモデリングすることによって実現される。多数のデータクラスタがあるときに、これが今度は多数の潜在変数の原因となる。多数の潜在変数は、それらの間の相関の問題をやはり引き起こす。それで、各データクラスタの潜在変数の全てのセットから算定される潜在変数の、よりコンパクトな表現を特定することによって、次元は更に減少する。潜在変数のこれらのコンパクトなセットは、クラスタサイズに対する何の偏りも無くすべてのデータクラスタを表す。これは、潜在変数のコンパクトなセットが、全ての教師データを効率的に表すことができることを意味する。
【００４７】
＜＜特徴抽出：Ｓ１０８＞＞
第１の分解部２０４０は、各データクラスタについて特徴ベクトルを抽出し、それにより、各データクラスタＣｐについて特徴行列｛Ｖｐ｝、１＜＝ｐ＜＝Ｐ、を生成する。具体的には、特徴行列Ｖｐは、データクラスタＣｐの教師データから抽出された特徴ベクトルの結合である。この特徴抽出は、特徴が教師データのタイプに関連するという意味で、クラスタリング部２０２０によって実行されるものと同様である。しかしながら、相違は、データクラスタのこれらの特徴が行列分解のために用いられるということである。したがって、特徴が少なくとも２つの次元を有するベクトルであることが必須である。
【００４８】
図４に例示する全体プロセスのフローチャートにおいて、Ｓ１０４およびＳ１０８の２つの特徴抽出ステップがあり、それらの必要性を区別する必要を正当としている。Ｓ１０４で抽出される特徴データは、クラスタリング技術に適した特徴である。すなわち、抽出された特徴データは、意味があるクラスタを抽出するときに効率的でなければならない。音声データの混合ガウスモデルベースのクラスタリングについて主に用いられる特徴の例は、メル周波数ケプストラム係数（ＭＦＣＣ；Mel-Frequency Cepstral Coefficients）である。しかしながら、Ｓ１０８においてデータクラスタから抽出される特徴行列は、行列分解技術に対して効率的な特徴である。パワースペクトログラム行列は、音声データから抽出される一般的な特徴の一つであり、下位潜在因子（基底およびアクティベーション行列）を抽出するために非負値行列因子分解技術において用いられる。
【００４９】
＜＜第１の行列分解：Ｓ１１０＞＞
第１の分解部２０４０は、各特徴行列を分解し、それにより特徴行列それぞれの第１の基底行列を生成する（Ｓ１１０）。以下、特徴行列｛Ｖｐ｝から生成される第１の基底行列は｛Ｗｐ｝と表示される。加えて、第１の分解部２０４０によって実行される行列分解は、第２の分解部２０８０によって実行される行列分解と区別するために、「第１の行列分解」と記載される。
【００５０】
大部分の行列分解は、コスト関数が最小化されるまで、基底およびアクティベーション行列を反復的に更新する。教師なしケースについては、基底行列およびアクティベーション行列は、一般にランダム値によって初期化され、反復的に更新される。各データクラスタＣｐが、クラスタＣｐの内部のデータ点の全てが互いに類似であるように算定されるので、ＷｐがＣｐの効率的な表現であることは直観的に理解できることである。
【００５１】
行列分解には様々な技術がある。第１の分解部２０４０は、教師無し行列分解技術、例えば主成分分析（ＰＣＡ；Principal Component Analysis）、独立成分分析（ＩＣＡ；Independent Component Analysis）、非負値行列因子分解（ＮＭＦ）、固有値分解（ＥＶＤ；Eigen value decomposition）および特異値分解（ＳＶＤ；Singular value decomposition）、のいずれを用いてもよい。
【００５２】
＜＜次元縮小：Ｓ１１２＞＞
次元縮小部２０６０は、複数の第１の基底行列を単一の行列に結合して、第１の基底行列の結合に対して次元縮小を実行して、それにより第２の基底行列を生成する（Ｓ１１２）。おそらく、数多くのデータクラスタＣｐが存在し、それは数多くの基底行列Ｗｐが存在することを意味し、それにより、基底ベクトル全体がより多数であることを意味する。基底ベクトルの総数は、すべての基底行列の列の総数である。これは、同様に基底行列Ｗｐ間の相関も存在することを意味する。そのため、第１の基底行列から冗長性を低減するための余地がまだ存在しうる。
【００５３】
基底ベクトルの冗長性を低減する１つの可能な方法は、以下の通りすべての第１の基底行列の水平結合である基底行列Ｗａｌｌの全体セットを表すことが可能な基底ベクトルの、より小さいセットを見いだすことである。
式３
2021513701.tif 000005
【００５４】
次元縮小部２０６０は、第１の基底行列｛Ｗｐ｝を、それらを水平に結合することによって単一の行列Ｗａｌｌに結合して、Ｗａｌｌに対する次元縮小を実行することによって、ＷａｌｌからＷｃを生成する。Ｗｃの次元はＷａｌｌの次元より小さい。次元縮小には様々な技術、例えばＰＣＡ、ＮＭＦ、カーネルＰＣＡ、グラフベースカーネルＰＣＡ、線形判別分析（ＬＤＡ；Linear Discriminant Analysis）および一般化判別分析（ＧＤＡ；Generalized Discriminant Analysis）、がある。次元縮小部２０６０は、これらの技術のいずれを用いてもよい。
【００５５】
＜第２の行列分解：Ｓ１１４＞
第２の分解部２０８０は、複数のデータクラスタ｛Ｃｐ｝の特徴行列｛Ｖｐ｝を単一の行列Ｖａｌｌに結合して、第２の基底行列Ｗｃを用いてＶａｌｌを分解し、それによりアクティベーション行列を生成する（Ｓ１１４）。Ｖａｌｌは、以下の通りすべての特徴行列の水平結合である。
式４
2021513701.tif 000006
【００５６】
本実施形態において、第２の分解部２０８０は、次元縮小部２０６０によって生成されたＷｃとして基底行列を固定することによって、教師あり分解を実行する。なお、以下、第２の分解部２０８０によって実行される行列分解は、第１の分解部２０４０によって実行される行列分解、すなわち第１の行列分解と区別するために、「第２の行列分解」と記載される。第２の行列分解によって、アクティベーション行列Ｈａｌｌは、以下のように算定される。
式５
2021513701.tif 000007
【００５７】
基底行列が固定されるので、第２の分解部２０８０は、例えばコスト関数の最小化を通してアクティベーション行列だけを反復的に更新する。アクティベーション行列Ｈａｌｌは、アクティベーションベクトルのセットである。
【００５８】
様々な教師あり行列分解技術、例えばサポートベクトルマシン（ＳＶＭ）、ニューラルネットワーク、閾値化、決定木、ｋ−近傍法、ベイジアンネットワーク、ロジスティック回帰およびランダムフォレスト、が存在する。第２の分解部２０８０は、教師あり行列分解技術のいずれを用いてもよい。
【００５９】
＜情報処理装置２０００の応用＞
データアンバランスは、音声、画像およびビデオ処理分野で顕著である。実施形態１の情報処理装置の応用例として、音声イベント検出（別個の音声イベントの訓練および検出）が以下に例示される。なお、以下の例は本発明の範囲を限定しない。
【００６０】
４つのタイプの音声イベントを、任意の与えられた音声信号中に特定および検出するために訓練する応用を考える。４つのイベントを、叫び、談話、発砲およびノイズであるとする。ここで、ノイズは、叫びも、談話も、発砲もいずれも含まないバックグランド音声ノイズを指す。イベント検出のこの応用で、ノイズデータは、検出の対象ではないイベントとしての役割を果たす。
【００６１】
そのような音声イベントのデータアンバランスは、主に音声ソースにおけるバリエーションのために発生する。例えば、男性、女性、子供その他の叫びは、異なる特徴を有する。同様なのが、ショットガン、拳銃その他の発砲の場合である。アンバランスはそのような音声ソースのデータの冗長性からもたらされうる。例えば、叫びというイベントデータは、子供からの１００のサンプル、女性からの１０のサンプル、および男性からの２つのサンプルを含む。同様に、個々のイベントごとに、未知の数の音声ソースおよび未知の数のそれらのサンプルが存在しうる。上述した４つのイベントのラベルは既知であると仮定されるが、各イベント内の音声ソース間のアンバランスは既知ではない。そのようなアンバランスなデータに対する訓練は、結果として１つの音声ソースの他に対する過剰提示になることがありえる。
【００６２】
この問題に取り組むために、実施形態１の情報処理装置２０００は、イベントデータをクラスタ化して、音声ソースおよびそれらそれぞれのサンプルの総数を、クラスタリング部２０２０によってざっと算定する。音声信号にてクラスタを特定するために、ケプストラム係数、デルタケプストラム係数、スペクトログラムのような周知の特徴ベクトルを用いることができるが、これらに限定はされない。
【００６３】
なお、音声信号は時系列データであり、そのため、それぞれが少数の離散的な音声ポイントを含む重なり合う窓に分割する（窓化処理）ことができる。特徴ベクトルは、与えられた窓中のポイントの意味のある修正表現である。音声信号の周波数は、そのような周知の意味のある情報の１つである。
【００６４】
音声データ、イベントおよび特徴の性質の一般的概念が以下に与えられる。音声信号は、音声の離散的な表現である。４８ｋＨｚのサンプリング周波数を有し、各サンプルが１６ビットを用いて表される信号を考慮する。音声イベントは、共通の特徴を有すると特定することができる音声サンプルのグループである。叫びの音声サンプルは、子供、女性または男性の１−２秒の叫びからサンプル抽出することができ、類似のサンプルを他のイベントについても取得することができる。１００ｍｓの窓長および５０ｍｓの窓シフトを有する１秒の持続時間の音声サンプルの窓化処理は、０−１００ｍｓ、５０−１５０ｍｓ、１００−２００ｍｓ、...、９００−１０００ｍｓでサンプル抽出されるポイントの窓を出力する。各窓の円滑な開始および終了を確実にするために、ハン窓を用いることができる。ケプストラム係数（ＣＣ）の特徴ベクトルは、ポイントの各窓から算定することができる。実用のためには、各ＣＣベクトルの次元は、１０から１５の範囲とすることができる。これらの特徴ベクトルに基づいて、イベントデータを、データクラスタのいくつかのセットにクラスタ化することができる。
【００６５】
第１の分解部２０４０は、各データクラスタの特徴行列に対する行列分解を実行し、それにより、特徴行列のより単純な表現、すなわち第１の基底行列のセット、を抽出する。スペクトログラムに関連する特徴行列の行列分解技術は、ＮＭＦである。スペクトログラムの振幅が音声信号に存在する周波数成分の情報を有するので、特徴行列から相関を抽出するためにＮＭＦを用いることができる。この応用の特徴行列は特徴ベクトルのセットであり、それぞれが各データクラスタの音声の窓化処理から取得した窓のデータポイントを表す。
【００６６】
なお、音声ソースは別個である（例えば、子供、女性および男性）が、イベント全体が叫びであり、類似の特性を有する。そのため、音声ソース間の相関が抽出されなければならない。この論法がイベント自体の間の相関にまで広がる、すなわち、叫びおよび談話のイベントデータが、両イベントともに発話自体の形であることから、いくらかの類似特性を有する。
【００６７】
第１の基底行列が各データクラスタについて一旦抽出されると、次元縮小部２０６０が第１の基底行列｛Ｗｐ｝を結合して単一の行列Ｗａｌｌとし、Ｗａｌｌに対する次元縮小を実行し、それにより、第１の基底行列｛Ｗｐ｝のセットのより単純な表現として第２の基底行列Ｗｃを生成する。そして、第２の分解部２０８０は、基底行列を第２の基底行列Ｗｃとして固定して、Ｖａｌｌ（すなわち特徴行列｛Ｖｐ｝の水平結合）に対する教師あり行列分解を実行することによって、アクティベーション行列Ｈａｌｌを生成する。全体の訓練プロセスを完了するために、アクティベーション行列Ｈａｌｌは既知のイベントラベルを用いてモデル化され、モデルパラメータを取得する。その結果、学習されたモデルは、テストされる音声信号を、訓練されたイベント、叫び、談話および発砲、の１つに分類することができる。
【００６８】
任意の与えられた音声信号中の訓練されたイベントを検出して特定するために、テスト段階を続けて行うことができる。簡単にいえば、テストプロセスは３つの主要なステップを有する。最初に、特徴ベクトルは、窓化されたテスト音声信号から算定される。次に、特徴行列全体の行列分解が、上述の第２の基底行列を用いて、教師ありの方法で行われ、それによりアクティベーション行列を取得する。最後に、取得されたアクティベーション行列が、モデルパラメータを使用して、叫び、談話、および発砲のイベントの可能な検出に対して次にテストされる。
【００６９】
実施形態２
【００７０】
実施形態１において、アクティベーション行列Ｈａｌｌは、Ｗａｌｌに対して実行された次元縮小の結果である第２の基底行列Ｗｃとして基底行列を固定して、教師あり行列分解を用いて算定される。第２の基底行列Ｗｃは特徴ベクトルの有効な表現であるが、それがＶａｌｌからの直接の算定ではなくＷａｌｌからの算定であるので、この基底行列を改良する余地がまだある。第２の行列分解のためのより良い基底行列を取得することは、結果としてより良いアクティベーション行列Ｈａｌｌを取得することになる。
【００７１】
より最適な基底行列およびアクティベーション行列を得るために、実施形態２の情報処理装置２０００は、基底行列を第２の基底行列Ｗｃとして固定せずに特徴行列Ｖａｌｌに対する第２の行列分解を実行する。具体的には、実施形態２の第２の分解部２０８０は、ランダムな初期化の代わりに基底行列をＷｃとして初期化することによって、半教師ありの方法で特徴行列Ｖａｌｌを分解する。
【００７２】
Ｖａｌｌに対する半教師あり行列分解の結果、アクティベーション行列Ｈａｌｌは、以下のように得られる。
式６
2021513701.tif 000008
【００７３】
ＷＦは、最初の基底行列Ｗｃを反復的に更新することによるコスト関数最小化終了後の、算定された基底行列である。そして、この取得されたＨａｌｌに対する訓練が、テスト段階で用いられるモデルパラメータを生成するために実行される。
【００７４】
実施形態２の第２の分解部２０８０は、半教師あり行列分解技術のいずれを用いてもよい。例えば、ＰＣＡ、ＩＣＡ、ＮＭＦ、ＥＶＤ、およびＳＶＤなどであるが、これらには限定されない。
【００７５】
＜作用効果＞
基底行列が特徴行列Ｖａｌｌの分解でランダムに初期化されていた場合、データアンバランスのために、最終的な取得された基底行列がすべてのデータクラスタをよく表すという保証はない。一方、実施形態２の情報処理装置によれば、基底行列は、基底行列が第２の基底行列Ｗｃとして初期化されるＶａｌｌの半教師あり分解を通して、最適基底行列ＷＦに収束する見込みが高い。これは、Ｗｃが各クラスタの基底行列を表し、そのため、すべてのデータクラスタから抽出された特徴を、少なくともランダムに初期化された行列よりも、より近似的に表すためである。
【００７６】
＜機能ベースの構成の例＞
実施形態１の情報処理装置２０００と同様に、実施形態２の情報処理装置２０００の機能ベースの構成は、図２によって記載されてもよい。
【００７７】
＜ハードウェア構成の例＞
実施形態２の情報処理装置２０００のハードウェア構成は、実施形態１と同様に図３によって例示されてもよい。しかしながら、本実施形態では、上記の記憶装置１０８０に保存される各プログラムモジュールは、本実施形態に記載される各機能を実現するためのプログラムを含む。
【００７８】
実施形態３
【００７９】
実施形態２において、第２の行列分解は半教師あり行列分解として実現される。半教師あり行列分解において、基底行列の反復更新ステップは、コスト関数最小化に依存する。コスト関数がより大きいデータクラスタの方に依然として偏るので、この偏りは基底行列の更新ステップに入り込む。この偏りは、初期化にかかわりなく入り込み、そのため、コスト関数最小化終了後に取得される最終的な基底行列に影響する。
【００８０】
実施形態３の情報処理装置２０００は、Ｖａｌｌ、すなわち特徴行列の全体セット、の正規化を、それらの半教師あり分解の前に導入することによって、ある程度この偏りを軽減する。具体的には、第２の分解部２０８０は、それぞれのデータクラスタ｛Ｃｐ｝に対する重みパラメータ｛ｑｐ｝、１＜＝ｐ＜＝Ｐを特定する。重みパラメータｑｐの値は、それがコスト関数に対するデータクラスタＣｐの重みと比例するように選択される。
【００８１】
重みは、非減少正重み割当技術のいずれを用いて指定されてもよい。例えば、データサイズ、特異値、データサイズの指数的増加関数およびデータ量などであるが、これらには限定されない。
【００８２】
第２の分解部は、特徴行列Ｖｐの正規化版の結合として、特徴行列Ｖ´ａｌｌを以下の通り生成する。
式７
2021513701.tif 000009
【００８３】
Ｖａｌｌの代わりにＶ´ａｌｌに基づいて、第２の分解部２０８０は、第２の行列分解を実行して、第２の基底行列ＷＦおよびアクティベーション行列Ｈａｌｌを以下のように生成する。
式８
2021513701.tif 000010
【００８４】
上述の通り、本発明の実施形態が添付の図面を参照して説明されたが、これらの実施形態は単に本発明の実例となるだけであり、上記の実施形態の組合せ、および上述の実施形態中の構成以外の種々の構成も採用することができる。
【００８５】
＜作用効果＞
上記のとおり、第２の行列分解で、コスト関数はより大きいデータクラスタの方へ偏る傾向があり、この偏りは基底行列の更新ステップに入り込む。実施形態３の情報処理装置２０００によれば、この偏りは、特徴行列Ｖａｌｌの正規化を通して軽減される。そのため、より最適な第２の基底行列ＷＦおよびアクティベーション行列Ｈａｌｌを得ることが達成される。
【００８６】
＜機能ベースの構成の例＞
実施形態２の情報処理装置２０００と同様に、実施形態３の情報処理装置２０００の機能ベースの構成は、図２によって記載されてもよい。
【００８７】
＜ハードウェア構成の例＞
実施形態３の情報処理装置２０００のハードウェア構成は、実施形態２と同様に図３によって例示されてもよい。しかしながら、本実施形態では、上記の記憶装置１０８０に保存される各プログラムモジュールは、本実施形態に記載される各機能を実現するためのプログラムを含む。
【００８８】
上述の通り、本発明の実施形態が添付の図面を参照して記載されたが、これらの実施形態は単に本発明の実例となるだけであり、上記の実施形態の組合せ、および上述の実施形態中の構成以外の種々の構成も採用することができる。
【図１】
2021513701.tif 000011
【図２】
2021513701.tif 000012
【図３】
2021513701.tif 000013
【図４】
2021513701.tif 000014
【図５】
2021513701.tif 000015
【手続補正書】
【提出日】令和2年8月4日(2020.8.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の教師データを取得し、各教師データから特徴データを抽出し、抽出された前記特徴データを用いて、前記複数の教師データを複数のデータクラスタに分割するクラスタリング部、
前記データクラスタの前記教師データから特徴行列を抽出すること、および、前記特徴行列に対して行列分解を実行して第１の基底行列を生成すること、をデータクラスタごとに実行する第１の分解部、
複数の前記第１の基底行列の結合に対する次元縮小を実行して第２の基底行列を生成する次元縮小部、および、
前記第２の基底行列を用いて、複数の前記特徴行列の結合に対する行列分解を実行し、それによりアクティベーション行列を生成する第２の分解部、を備える情報処理装置。
【請求項２】
前記特徴行列の結合の分解において、前記第２の分解部が、基底行列を前記第２の基底行列として固定し、反復的に前記アクティベーション行列を更新する、請求項１に記載の情報処理装置。
【請求項３】
前記特徴行列の結合の分解において、前記第２の分解部が、基底行列を前記第２の基底行列として初期化し、反復的に前記基底行列および前記アクティベーション行列を更新する、請求項１に記載の情報処理装置。
【請求項４】
前記第２の分解部によって生成された前記アクティベーション行列が、パターン認識のテスト段階で用いられるモデルパラメータを学習するために用いられる、請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
複数の教師データを取得し、各教師データから特徴データを抽出し、抽出された前記特徴データを用いて、前記複数の教師データを複数のデータクラスタに分割すること、
前記データクラスタの前記教師データから特徴行列を抽出すること、および、前記特徴行列に対して行列分解を実行して第１の基底行列を生成すること、をデータクラスタごとに実行すること、
複数の前記第１の基底行列の結合に対する次元縮小を実行して第２の基底行列を生成すること、および、
前記第２の基底行列を用いて、複数の前記特徴行列の結合に対する行列分解を実行し、それによりアクティベーション行列を生成すること、を含む、コンピュータによって実行される方法。
【請求項６】
前記特徴行列の結合の分解において、基底行列を前記第２の基底行列として固定し、反復的に前記アクティベーション行列を更新する、請求項５に記載の方法。
【請求項７】
前記特徴行列の結合の分解において、基底行列を前記第２の基底行列として初期化し、反復的に前記基底行列および前記アクティベーション行列を更新する、請求項５に記載の方法。
【請求項８】
生成された前記アクティベーション行列が、パターン認識のテスト段階で用いられるモデルパラメータを学習するために用いられる、請求項５から７のいずれか１項に記載の方法。
【請求項９】
請求項５から８のいずれか１項に記載の方法を、コンピュータに実行させるプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
本発明は、本発明により提供される方法をコンピュータに実行させるプログラムを提供する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００３８
【補正方法】変更
【補正の内容】
【００３８】
＜処理の流れ＞
図４は、実施形態１の情報処理装置２０００によって実行されるプロセスの流れを例示するフローチャートである。クラスタリング部２０２０は、複数の教師データを取得する（Ｓ１０２）。クラスタリング部２０２０は、各教師データから特徴データを抽出する（Ｓ１０４）。クラスタリング部２０２０は、抽出された特徴データに基づいて、教師データを複数のデータクラスタに分割する（Ｓ１０６）。第１の分解部２０４０は、データクラスタごとに、教師データから特徴行列を抽出する（Ｓ１０８）。データクラスタごとに、第１の分解部２０４０は、データクラスタから抽出された特徴行列の結合に対して行列分解を実行して、それにより第１の基底行列を生成する（Ｓ１１０）。次元縮小部２０６０は、第１の基底行列の結合に対する次元縮小を実行して、それにより第２の基底行列を生成する（Ｓ１１２）。第２の分解部２０８０は、第２の基底行列を用いて特徴行列の結合に対して行列分解を実行し、それによりアクティベーション行列を生成する（Ｓ１１４）。
【国際調査報告】
2021513701.tif 000016
2021513701.tif 000017