(57)【要約】  コンポーネント間に依存性があるモデルに対しても、或いはコンポーネントの候補がパラメータに対して急激に増加する場合でも、高速なモデル選択を実現する。  モデル選択装置１００は、混合分布に対してモデルを最適化するモデル最適化手段を備え、モデル最適化手段は、完全データの情報量基準に関し、完全データの隠れ変数の事後分布について、所定の条件を満たすコンポーネントのモデルおよびパラメータの組に対する完全データの期待情報量基準を最適化する。
2011108632.tif 000002
【特許請求の範囲】
【請求項１】
混合分布に対してモデルを最適化するモデル最適化手段を備え、
前記モデル最適化手段は、
完全データの情報量基準に関し、前記完全データの隠れ変数の事後分布について、所定の条件を満たすコンポーネントのモデルおよびパラメータの組に対する前記完全データの期待情報量基準を最適化することを特徴とするモデル選択装置。
【請求項２】
混合数の候補値から最適化が行われていない候補値を選択する混合数設定手段と、
前記混合数設定手段で選択された混合数を用いてデータの初期化処理を実施する分布初期化手段と、
全ての混合数の候補値に対して、最適な情報量基準の値が計算されているかを判定し、計算されていないと判定した場合、前記混合数設定手段及び前記分布初期化手段、前記最適化手段による処理を再度行わせる混合数ループ終了判定手段と、
全ての混合数の候補値に対して計算された情報量基準の値を比較し、情報量基準が最適である混合数を選択する最適分布選択手段とを備え、
前記モデル最適化手段が、
前記データの隠れ変数に関する事後分布を計算する隠れ変数の事後分布計算手段と、
所定の条件を満たすコンポーネントのモデル及びパラメータの組を選択する更新パラメータ設定手段と、
前記隠れ変数の事後分布計算手段で計算された事後分布に関し、前記更新パラメータ設定手段にて選択したモデル及びパラメータの組について、完全データに対する期待情報量基準を最適化する条件付期待情報量基準最小化手段と、
前記条件付期待情報量基準最小化手段による最適化により更新されたモデルについて、不完全データに対する情報量基準の値を計算する情報量基準計算手段と、
前記情報量基準計算手段にて計算した情報量基準の値の最適性を判定し、最適でないと判定した場合に、再度最適化処理を行う最適性判定手段と、
を含むことを特徴とする請求項１に記載のモデル選択装置。
【請求項３】
前記モデル最適化手段が、
所定の条件を満たすコンポーネントのモデル及びパラメータの組が複数ある場合に、当該組のすべてについて、完全データに対する期待情報量基準の最適化が行われるまで、前記更新パラメータ設定手段と前記条件付期待情報量基準最小化手段による処理を繰り返し行わせる更新パラメータ設定ループ終了判定手段を含むことを特徴とする請求項２に記載のモデル選択装置。
【請求項４】
前記情報量基準は、ＭＤＬ基準であることを特徴とする請求項１から請求項３の何れか１項に記載のモデル選択装置。
【請求項５】
前記所定の条件は、他のモデル及びパラメータと独立であることを特徴とする請求項１から請求項４の何れか１項に記載のモデル選択装置。
【請求項６】
多次元データに対して独立性の異なる複数の分布の混合分布に関し、混合の数及び各コンポーネントの独立性を最適化することを特徴とする請求項１から請求項４の何れか１項にモデル選択装置。
【請求項７】
複数の異なる周辺分布の混合分布に関して、混合の数及び各コンポーネントの周辺分布の種類を最適化することを特徴とする請求項１から請求項４の何れか１項にモデル選択装置。
【請求項８】
異なる属性を用いた混合識別モデルのモデル及び属性選択に関して、各コンポーネントで識別に有効な属性を最適化することを特徴とする請求項１から請求項４の何れか１項にモデル選択装置。
【請求項９】
混合分布に対してモデルを最適化するモデル最適化ステップを有し、
前記モデル最適化ステップは、
完全データの情報量基準に関し、前記完全データの隠れ変数の事後分布について、所定の条件を満たすコンポーネントのモデルおよびパラメータの組に対する前記完全データの期待情報量基準を最適化することを特徴とするモデル選択方法。
【請求項１０】
混合分布に対してモデルを最適化するモデル最適化処理をコンピュータに実行させ、
前記モデル最適化処理は、
完全データの情報量基準に関し、前記完全データの隠れ変数の事後分布について、所定の条件を満たすコンポーネントのモデルおよびパラメータの組に対する前記完全データの期待情報量基準を最適化することを特徴とするモデル選択プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データのモデル選択装置に関し、特に、条件付情報量基準の期待値を最適化することによって、複雑な混合分布モデルに対して高速なモデル選択を実現することを特徴とするモデル選択装置、モデル選択方法、モデル選択プログラムに関する。
【背景技術】
【０００２】
混合分布は、複数の分布によってデータの分布を表現するモデルであり、産業上データモデル化に対して重要なモデルである。このようなモデルには、例えば、混合正規分布や混合隠れマルコフモデルなど様々なモデルが存在する。【０００３】
一般的に、混合の数と各コンポーネントの種類が特定された場合には、ＥＭアルゴリズム（例えば、非特許文献１）などの公知の技術を利用して、分布のパラメータを特定することが可能である。【０００４】
パラメータを推定するためには、混合の数や各コンポーネントの種類を決定する必要が有り、このような、モデルの形を特定する問題は、一般的に「モデル選択問題」や「システム固定問題」と呼ばれ、信頼性のあるモデルを構築するために極めて重要な問題であり、そのための技術が関連技術として複数提案されている。【０００５】
モデル選択のための有力な技術として、最小記述長（ＭＤＬ：ｍｉｎｉｍｕｍ  ｅｓｃｒｉｐｔｉｏｎ  ｌｅｎｇｔｈ）（例えば、非特許文献２）、赤池情報量基準（ＡＩＣ：Ａｋａｉｋｅ’ｓ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｃｒｉｔｅｒｉｏｎ）（例えば、非特許文献３）などの、情報量基準を用いたモデル選択方法が提案されている。【０００６】
情報量基準を用いたモデル選択方法は、モデルの候補のなかから、データに対する情報量基準の値を最適とするモデルを選択する方法である。情報量基準を最適化するモデルは、例えばＭＤＬの場合は真の分布への一致性や、ＡＩＣの場合は予測誤差最小など、優れた統計的性質を持つことが知られている。【０００７】
しかし、情報量基準を用いたモデル選択方法では、全てのモデル候補に対して情報量基準の値を計算すれば、原理的には任意のモデル候補に対してモデル選択を実施することが可能であるが、モデル候補の数が膨大になった場合には、事実上計算が不可能であった。【０００８】
例として、以下、混合多項曲線の選択問題を説明する。多項式曲線は、直線（１次曲線）、２次曲線、３次曲線と、複数の次数が存在する。【０００９】
混合数を１からＣｍａｘまで、曲線の次数を１からＤｍａｘまで探索して最適なモデルを選択する場合、関連技術では、直線と２次曲線が２つ（混合数は３）、３次曲線が３つと４次曲線が２つ（混合数は５）など全てのモデルの候補に対して情報量基準を計算する必要がある。このモデルの候補の数は、例えばＣｍａｘ＝１０、Ｄｍａｘ＝１０とした場合には約十万通り、Ｃｍａｘ＝２０、Ｄｍａｘ＝２０とした場合には数百億通りとなり、探索すべきモデルの複雑さに伴って指数的に増加する。【００１０】
この問題に対して、特許文献１では、さまざまな混合分布モデルに対して、隠れ変数を含む完全データに対する期待情報量基準を繰り返し最適化することによって、高速に情報量基準に基づくモデル選択を実行する技術を開示している。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特願２００９−０１３５０３号
【非特許文献】
【００１２】
【非特許文献１】Ｃｈｒｉｓｔｏｐｈｅｒ  Ｍ．Ｂｉｓｈｏｐ著，  「Ｐａｔｔｅｒｎ  Ｒｅｃｏｇｎｉｔｉｏｎ  Ａｎｄ  Ｍａｃｈｉｎｅ  Ｌｅａｒｎｉｎｇ」，  Ｎｅｗ  ｅｄｉｔｉｏｎ版，  Ｓｐｒｉｎｇｅｒ−Ｖｅｒｌａｇ，  ２００６年８月１７日，  ｐ．４３８−４４１
【非特許文献２】山西健司、韓太舜著，  「ＭＤＬ入門：情報理論の立場から」，  人工知能学会誌，  １９９２年５月，  第７巻，  第３号，  ｐ．４２７−４３４
【非特許文献３】下平英寿著、他３名，  「モデル選択  予測・検定・推定の交差点統計科学のフロンティア（３）」，  岩波書店，２００４年１２月，  ｐ．２４−２５
【非特許文献４】Ｙｕｅ  Ｗａｎｇ，Ｌａｎ  Ｌｏｕ，Ｍａｔｔｈｅｗ  Ｔ．Ｆｒｅｅｄｍａｎ，ａｎｄ  Ｓｕｎ−Ｙｕａｎ  Ｋｕｎｇ，  ”Ｐｒｏｂａｂｉｌｉｓｔｉｃ  Ｐｒｉｎｃｉｐａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｓｕｂｓｐａｃｅｓ：Ａ  Ｈｉｅｒａｒｃｈｉｃａｌ  Ｆｉｎｉｔｅ  Ｍｉｘｔｕｒｅ  Ｍｏｄｅｌ  ｆｏｒ  Ｄａｔａ  Ｖｉｓｕａｌｉｚａｔｉｏｎ”，  ＩＥＥＥ  ＴＲＡＮＳＡＣＴＩＯＮＳ  ＯＮ  ＮＥＵＲＡＬ  ＮＥＴＷＯＲＫＳ，  ＭＡＹ  ２０００，  ＶＯＬ．１１，  ＮＯ．２，  ｐ．６２５−６３６
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかし、特許文献１に記載されるような、隠れ変数を含む完全データに対する期待情報量基準を繰り返し最適化する方法では、混合分布の各コンポーネントのパラメータが独立であることが仮定されているため、この仮定を満たさないモデルに対しては適用できないという課題があった。【００１４】
また、例えば、各コンポーネント内で属性の独立性を選択する必要がある場合など、コンポーネントの候補の数が指数的に増加してしまう状況では、高速なモデル選択が実現できないという課題があった。コンポーネントの候補の数が指数的に増加してしまう状況としては、例えば、異なる独立性をもつＤ次元の正規分布の混合分布が考えられる。この場合、次元の独立性の候補がΣ＿｛ｄ＝０｝＾｛Ｄ＊（Ｄ−１）／２｝  Ｄ＊（Ｄ−１）／２Ｃｄ通り存在するための次元とともに、急激にコンポーネントの候補の数が増加してしまう。【００１５】
（発明の目的）
本発明の目的は、上述の課題を解決し、コンポーネント間に依存性があるモデルに対しても、高速なモデル選択を実現するモデル選択装置、モデル選択方法及びモデル選択プログラムを提供することである。【００１６】
本発明の他の目的は、コンポーネントの候補がパラメータに対して急激に増加する場合でも、高速なモデル選択を実現するモデル選択装置、モデル選択方法及びモデル選択プログラムを提供することである。
【課題を解決するための手段】
【００１７】
本発明の第１のモデル選択装置は、混合分布に対してモデルを最適化するモデル最適化手段を備え、モデル最適化手段は、完全データの情報量基準に関し、完全データの隠れ変数の事後分布について、所定の条件を満たすコンポーネントのモデルおよびパラメータの組に対する完全データの期待情報量基準を最適化する。【００１８】
本発明の第１のモデル選択方法は、混合分布に対してモデルを最適化するモデル最適化ステップを有し、モデル最適化ステップは、完全データの情報量基準に関し、完全データの隠れ変数の事後分布について、所定の条件を満たすコンポーネントのモデルおよびパラメータの組に対する完全データの期待情報量基準を最適化する。【００１９】
本発明の第１のモデル選択プログラムは、混合分布に対してモデルを最適化するモデル最適化処理をコンピュータに実行させ、モデル最適化処理は、完全データの情報量基準に関し、完全データの隠れ変数の事後分布について、所定の条件を満たすコンポーネントのモデルおよびパラメータの組に対する完全データの期待情報量基準を最適化する。
【発明の効果】
【００２０】
本発明によれば、混合分布の推定において、コンポーネント間に依存性があるモデルに対しても、高速なモデル選択を実現ことができる。【００２１】
また、本発明によれば、混合分布の推定において、コンポーネントの候補がパラメータに対して急激に増加する場合でも、高速なモデル選択を実現することができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の第１の実施の形態によるモデル選択装置の構成を示すブロック図である。
【図２】本実施の形態によるモデル最適化処理部の構成例を示す図である。
【図３】本実施の形態によるモデル最適化処理部の構成例を示す図である。
【図４】本実施の形態によるモデル選択装置の処理動作の内容を説明するフローチャートである。
【図５】本実施の形態によるモデル最適化処理部の処理動作の内容を説明するフローチャートである。
【図６】本実施の形態によるモデル最適化処理部の処理動作の内容を説明するフローチャートである。
【図７】本発明のモデル選択装置のハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００２３】
次に、本発明の実施の形態について、図面を参照して詳細に説明する。なお、すべての図面において、同様な構成要素には同様の符号を付し，適宜説明を省略する。
【００２４】
（第１の実施の形態）
本発明の第１の実施の形態について、図面を参照して詳細に説明する。以下の図において、本発明の本質に関わらない部分の構成については省略してあり、図示されていない。
【００２５】
図１は、本発明の第１の実施の形態によるモデル選択装置１００の構成を示すブロック図である。図１を参照すると、本実施の形態のモデル選択装置１００は、データ入力部１０１と、混合数設定部１０２と、分布初期化処理部１０３と、モデル最適化処理部１０４と、混合数ループ終了判定処理部１０５と、最適分布選択処理部１０６と、モデル選択結果出力部１０７を備えている。
【００２６】
モデル選択装置１００は、入力データ１０８が入力されると、入力データ１０８に対して混合の数と各コンポーネントの種類及びパラメータ等を最適化し、モデル選択結果１０９として出力する。
【００２７】
データ入力部１０１は、入力データ１０８を入力するための機能部である。入力データ１０８には、混合される各コンポーネントの種類及びパラメータや、混合数の候補値など、モデル選択に必要な情報が含まれる。
【００２８】
混合数設定部１０２は、モデルの混合数を、入力された混合数の候補値から選択して設定する機能を有する。以後、混合設定部１０２により設定された混合数をＫと称する。
【００２９】
分布初期化処理部１０３は、推定のための初期化処理を実施する機能を有する。なお、初期化は任意の方法によって実施することが可能である。例えば、ランダムにデータに対応する隠れ変数の値を設定する方法が考えられる。
【００３０】
モデル最適化処理部１０４は、混合数設定部１０２で設定された混合数の混合分布に対して、モデルを最適化する機能を有する。モデル最適化処理部１０４は、具体的には図２に示されるモデル最適化処理部２００や図３に示されるモデル最適化処理部３００のように構成され、これらの詳細については後述する。
【００３１】
混合数ループ終了判定処理部１０５は、入力された全ての混合数の候補値に対して、最適な情報量基準の値が計算されているかを判定する機能を有する。
【００３２】
最適分布選択処理部１０６は、全ての混合数の候補値に対して計算された情報量基準の値を比較し、情報量基準が最適である混合数を選択する機能を有する。なお、各混合数に対する最適なモデルの情報量基準の値は、後述するようにモデル最適化処理部１０４で計算されている。また、最適な混合数に対して、各コンポーネントの種類及びパラメータはモデル最適化処理部１０４において最適化されているため、それを最適な分布として選択する。
【００３３】
モデル選択結果出力部１０７は、最適な混合数、コンポーネントの種類、パラメータなどをモデル選択結果１０９として出力する機能を有する。
【００３４】
次に、モデル最適化処理部１０４の具体的な構成例として示すモデル最適化処理部２００及びモデル最適化処理部３００の構成を説明する。
【００３５】
図２を参照すると、モデル最適化処理部２００は、隠れ変数の事後分布計算処理部２０１、更新パラメータ設定部２０２、条件付期待情報量基準最適化処理部２０３、独立パラメータ設定ループ終了判定部２０４、情報量基準計算処理部２０５、最適性判定処理部２０６を備えている。
【００３６】
隠れ変数の事後分布計算処理部２０１は、入力された各データが混合分布のどのコンポーネントに属しているかを表す隠れ変数に関する事後分布を計算する機能を有する。
【００３７】
更新パラメータ設定部２０２は、各コンポーネントのモデル及びパラメータの候補に対して、部分的に更新をするためのルールを記憶しており、その部分的なモデル及びパラメータの中から最適化対象となるもの選択する機能を有する。
【００３８】
条件付期待情報量基準最小化処理部２０３は、隠れ変数の事後分布計算処理部２０１で計算された事後分布に関し、更新パラメータ設定部２０２で選択されたモデル及びパラメータに対する完全データの期待情報量基準を最適化する機能を有する。なお、ここで、完全データとは、入力データ及びそれに対応する隠れ変数の組を指す。入力データを不完全データと呼ぶ。なお、最適化の方法に関しては任意の最適化手法を用いることが可能である。
【００３９】
更新パラメータ設定ループ終了判定部２０４は、更新パラメータ設定部２０２に記憶された部分的に更新するモデルとパラメータの組の全てに対して、条件付期待情報量基準最小化の処理が実施されたかを判定する機能を有する。
【００４０】
情報量基準計算処理部２０５は、更新されたモデルに対して、不完全データに対する情報量基準の値を計算する機能を有する。
【００４１】
最適性判定処理部２０６は、本ループで計算された情報量基準の値と、前のループで計算された情報量基準の値を比較し、最適化処理が収束されているかを判定する機能を有する。
【００４２】
この処理の重要な点は、更新パラメータ設定部２０２において、部分的なモデル及びパラメータを設定し、条件付期待情報量基準を最適化することにより、複雑なモデル候補に対しても、候補の数が膨大となる事を防ぐことが可能な点である。例として、独立性の異なるＤ次元の正規分布の混合モデルの例を考える。例えば、特許文献１で提案されている期待情報量基準の最適化では、各コンポーネントを最適化するために、Σ＿｛ｄ＝０｝＾｛Ｄ＊（Ｄ−１）／２｝  Ｄ＊（Ｄ−１）／２Ｃｄ通りのコンポーネント候補に対してパラメータ推定を行い、最適なコンポーネントを選択する必要がある。一方で、本発明を利用すると、２つの次元の独立性を部分モデルと設定し、残りの次元に対する条件付期待情報量基準を最適化する事によって、（Ｄ＊（Ｄ−１）／２通り）に関するパラメータ推定によって最適化を実施する事が可能であり、高速なモデル選択が実現される。
【００４３】
図３を参照すると、モデル最適化処理部３００は、モデル最適化処理部２００と比較して、隠れ変数の事後分布計算処理部２０１と更新パラメータ設定部２０２の接続順序が異なる点、及び更新パラメータ設定ループ終了判定部２０４を有しない点で相違する。この処理では、更新パラメータ設定部によって更新パラメータが全て更新されたどうかにかかわらず、最適性判定処理部２０６で最適化が終了したと判断された時点で処理が終了する。
【００４４】
（第１の実施の形態の動作の説明）
次に、図面を参照して、本実施の形態の動作について詳細に説明する。
【００４５】
本実施の形態によるモデル選択装置１００の動作について、図４を参照して詳細に説明する。図４は、本実施の形態によるモデル選択装置１００の処理動作を示すフローチャートである。
【００４６】
図４を参照すると、本実施の形態によるモデル選択装置１００は、概略以下のように動作する。
【００４７】
まず、データ入力部１０１に入力データ１０８が入力されると（ステップＳ４０１）、混合数設定部１０２において、入力された混合数の候補値のうち、まだ最適化の行なわれていない混合数を選択し設定する（ステップＳ４０２）。
【００４８】
次に、分布初期化処理部１０３において、指定された混合数に対して、最適化に必要な初期化する（ステップＳ４０３）。
【００４９】
次に、モデル最適化処理部１０４において、指定された混合数に対して、最適なモデルを推定する（ステップＳ４０４）。なお、モデル最適化処理部１０４として、モデル最適化処理部２００及びモデル最適化処理部３００を利用した場合の処理の詳細に関しては後述する。
【００５０】
次に、混合数ループ終了判定処理部１０５において、混合数の候補値の全てに対して最適化が完了し、情報量基準の値が計算されているかを判定する（ステップＳ４０５）。
【００５１】
全ての候補に対して最適化が完了していない場合には、ステップＳ４０１からステップＳ４０４の処理を繰り返す（ステップＳ４０５で”ＮＯ”）。
【００５２】
全ての候補に対して、最適化が完了した場合には、最適分布選択処理部１０６において、各混合数に対する最適化された情報量基準の値を比較し、その値が最適な混合数を最適なモデルとして選択する（ステップＳ４０６）。なお、選択されたモデルに関しては、ステップＳ４０２からステップＳ４０５の処理において、コンポーネントの種類及びパラメータが最適化されており、最適な混合数及びコンポーネントの種類を持った分布が取得される。
【００５３】
次に、モデル選択結果出力部１０７において、モデル選択結果１０９を出力する（ステップＳ４０７）。
【００５４】
次に、モデル最適化処理部１０４としてモデル最適化処理部２００を利用した場合の処理の詳細について、図５を参照して詳細に説明する。図５は、本実施の形態によるモデル最適化処理部２００の処理動作を示すフローチャトである。
【００５５】
図５を参照すると、本実施の形態に関する最適化処理部２００は、概略以下のように動作する。
【００５６】
まず、分布初期化処理部１０３の出力を受け取り、隠れ変数の事後分布計算処理部２０１において、隠れ変数の事後分布を計算する（ステップＳ５０１）。
【００５７】
次に、更新パラメータ設定部２０２において、更新パラメータ設定部２０２に記憶されている、他のモデル及びパラメータと独立であるモデル及びパラメータの組を選択する（ステップＳ５０２）。
【００５８】
次に、条件付期待情報量基準最適化処理部２０３において、更新パラメータ設定部２０２にて選択されたモデル及びパラメータに関して、条件付期待情報量基準を最小化するモデル及びパラメータを推定する（ステップＳ５０３）。
【００５９】
次に、更新パラメータ設定部２０４において、更新パラメータ設定部２０２に記憶されている、独立となるモデルとパラメータの組が全て更新されたかどうかを判定する（ステップＳ５０４）。
【００６０】
まだ更新されていない組が残っている場合には、ステップＳ５０１からステップＳ５０４の処理を繰り返す（ステップＳ５０４で”ＮＯ”）。
【００６１】
更新されている組が残っていない場合には（ステップＳ５０４”ＹＥＳ”）、情報量基準計算部２０５において、更新されたモデルに対する情報量基準の値を計算する（ステップＳ５０５）。
【００６２】
次いで、最適性判定処理部２０６において、本ループで計算された情報量基準の値と、前のループで計算された情報量基準の値を比較し、最適化処理が収束されているかを判定する（ステップＳ５０６”）。情報量基準の値が収束した場合には（ステップＳ５０７で”ＹＥＳ”）、最適化処理部２００の処理を終了する。情報量基準の値が収束していない場合には（ステップＳ５０７で”ＮＯ”）、Ｓ５０１からＳ５０６の処理を繰り返す。
【００６３】
ここで、図６を参照すると、図６は、本実施の形態によるモデル最適化処理部３００の動作を示すフローチャトである。本実施の形態による最適化処理部３００は、最適化処理部２００の動作と比較して、図５に示すステップＳ５０１とステップＳ５０２の処理順が逆となっている（ステップＳ６０１，６０２）点、図５に示すＳ５０４の処理が含まれていない点で相違する。
【実施例１】
【００６４】
次に、情報量基準としてＭＤＬ基準を利用する場合の一例について説明する。【００６５】
まず、学習すべき混合分布は、入力されたデータに対応する確率変数Ｘに対して下記の式（１）で表される。【００６６】
【数１】
2011108632.tif 000003
【００６７】
ただし、πｋはｋ番目のコンポーネントに関する混合比、ηｋはｋ番目のコンポーネントに関する分布のパラメータを表し、θ＝｛π、η１，…，ηＫ｝とする。ただし、π＝（π１，…，πＫ）である。【００６８】
各コンポーネントの分布Ｐ（Ｘ；ηｋ）は、コンポーネント候補の集合Ｓの元であり、例えば式（１）は正規分布と指数分布など、複数の異なる分布を混合させる事も可能である。なお、式（１）はデータの分布をモデル化する枠組みであるが、回帰の分布やデータ分類のための分布など、教師データが与えられるモデル選択に関しても、以下の構成は同様に成立する。【００６９】
次に、ＭＤＬ基準とは、式（２）で表される、データの記述長とモデルの記述長の総和を最小化するモデルを最適なモデルとして選択するための基準である。情報量基準としてＭＤＬ基準を利用する場合には、情報量基準計算処理部１０６にはＭＤＬ基準の計算方法が記憶されており、式（２）によって分布のＭＤＬ基準の値が計算される。【００７０】
【数２】
2011108632.tif 000004
【００７１】
ただし、ｌは記述長関数を、ｘＮ＝（ｘ１，…，ｘＮ）は入力されたデータセットを、Ｍはモデルを表す。ｘｉはデータ１点を表し、Ｘはデータに対応する確率変数である。例えば、モデルＭによって決まるＸの分布をＰ（Ｘ；θ）とすると（θは分布のパラメータ）、ｌ（ｘＮ｜Ｍ）は式（３）や式（４）のように計算する事が可能である。【００７２】
【数３】
2011108632.tif 000005
【００７３】
【数４】
2011108632.tif 000006
【００７４】
ただし、ｌｏｇは底が２の対数とし、ｌｎは自然対数とする。また、＾はパラメータが最尤推定量である事を表すとする。また、Ｉ（θ）はフィッシャー情報行列である。なお、記述長関数ｌ（ｘＮ｜Ｍ）及びｌ（Ｍ）は、Ｍの種類によって様々な記述方法が提案されており、本発明においては、任意の記述方法を利用することが可能である。【００７５】
データｘｉに対する隠れ変数をｚｉとし、ｚＮ＝（ｚ１，…，ｚＮ）とする。ｚｉ＝（ｚｉ１，…，ｚｉＫ）であり、ｚｉｋはｘｉがｋ番目のクラスタに属する場合には１を、ｋ番目のクラスタに属さない場合には０をとる変数である。ｘＮとｚＮの組は、完全データと呼ばれる。【００７６】
隠れ変数の事後分布計算処理部２０１では、データｘＮが与えられた場合の隠れ変数の事後確率に関する期待値の計算方法が記憶されている。なお、事後確率は、Ｐ（Ｘ；θ）によって異なり、公知の任意の方法によって計算する事が可能である。以下では、Ｅｚ［Ａ］は引数Ａの隠れ変数の事後確率に関する期待値を表すとする。【００７７】
完全データを記述する場合の記述長は、式（５）によって計算される。【００７８】
【数５】
2011108632.tif 000007
【００７９】
ここで、ｌ（ｘＮ，ｚＮ；Ｍ）は、ｌ（ｘＮ｜Ｍ）及びｌ（Ｍ）と同じく任意の記述長関数を利用することが可能である。例としては、式（３）に対応して式（６）が挙げられる。【００８０】
【数６】
2011108632.tif 000008
【００８１】
ただし、Ｍｋはηｋの次元であり、Ｎｋはｋ番目のクラスタに属するデータの個数であり、式（７）で計算可能である。また、Ｐ（ｚｉ；πｋ）はｉ番目のデータに関するクラスタアサイメントが「１」または「０」をとる確率を表す。【００８２】
【数７】
2011108632.tif 000009
【００８３】
条件付期待情報量基準最小化処理部２０３で計算される期待記述長とは、ｌ（ｘＮ，ｚＮ；Ｍ）に対して、更新パラメータ設定部２０２で選択されたモデル及びパラメータを変数とし、それ以外のパラメータを固定した場合に、隠れ変数の事後確率に関して期待値をとった量であり、Ｅｚ［ｌ（ｘＮ，ｚＮ；Ｍ）］と計算される。更新パラメータとして設定されたモデル及びパラメータは、それぞれ独立であるため、選択されたモデル及びパラメータに関する条件付期待記述長を考えると、モデル及びパラメータ毎に最適化が可能となる。なお、コンポーネント毎の分布のパラメータ推定方法に関しては、最尤推定やモーメント法ななど公知の任意の技術を利用することが可能である。【００８４】
次に、本発明で提案するモデル選択装置１００が適用可能なモデルについて、以下において具体的に説明する。
【実施例２】
【００８５】
（独立性の異なる複数の混合分布）
本発明で提案するモデル選択装置１００を利用すると、多次元データに対して独立性の異なる複数の分布の混合分布に関し、混合の数及び各コンポーネントの独立性を高速に最適化する事が可能である。【００８６】
更新パラメータ設定部２０２において、各コンポーネントの任意の２つの次元が独立かどうかを判定する事をモデルとして記憶させる。これによって、各２つの次元が独立かどうかを逐次的に選択することにより、次元の増加とともに独立性の組み合わせが急激に増加する状況においても、高速に学習を行う事が可能である。
【実施例３】
【００８７】
（異種多様な周辺分布を持つ同時分布）
本発明で提案するモデル選択装置を利用すると、複数の異なる周辺分布の混合分布に関して、混合の数及び各コンポーネントの周辺分布の種類を最適化する事が可能である。【００８８】
一般に多次元データが入力された場合に、各次元に対して最適な分布は異なるため、混合分布を考える場合には、その同時分布を考える必要があるが、どの次元がどの分布かという組み合わせの問題が発生する。そこで、各コンポーネントの各次元の周辺分布がどのモデルであるかを、更新パラメータ設定部２０２で設定し、次元ごとに最適な分布を更新する事で、高速なモデル選択が可能である。【００８９】
本発明で提案するモデル選択装置１００を利用すると、周辺分布のみでなく、周辺分布間の相関関係を表現するコピュラを同時に推定する事が可能となる。
【実施例４】
【００９０】
（異なる属性を用いた混合識別モデルのモデル及び属性選択）
本発明で提案するモデル選択装置１００を利用すると、異なる属性を用いた混合識別モデルのモデル及び属性選択に関して、高速なモデル選択を行う事が可能である。【００９１】
例えば、あるコンポーネントに関しては、属性１がデータ識別に関して有効な情報をもち、また別のコンポーネントに関しては、属性２が識別に有効な情報を有する場合は、各コンポーネントによって異なる有効な属性を推定する事が重要となるが、どの属性を利用してどの属性を利用しないかという組み合わせが膨大となってしまう。本発明の技術を利用すると、各コンポーネントにおける各属性の利用の有無を、更新パラメータ設定部２０２で設定すべきモデル及びパラメータとする事によって、各コンポーネントで識別に有効な属性を高速に推定する事が可能である。【００９２】
（第１の実施の形態による効果）
次に本実施の形態の効果について説明する。【００９３】
本実施の形態によれば、混合分布の推定において、コンポーネント間に依存性があるモデルに対しても、高速なモデル選択を実現することが可能となる。【００９４】
また、本実施の形態によれば、混合分布の推定において、コンポーネントの候補がパラメータに対して急激に増加する場合でも、高速なモデル選択を実現することが可能となる。【００９５】
次に、本発明のモデル選択装置１００のハードウェア構成例について、図７を参照して説明する。図７はモデル選択装置１００のハードウェア構成例を示すブロック図である。【００９６】
図７を参照すると、モデル選択装置１００は、一般的なコンピュータ装置と同様のハードウェア構成であり、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）８０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメモリからなる、データの作業領域やデータの一時退避領域に用いられる主記憶部８０２、ネットワークを介してデータの送受信を行う通信部８０３、入力装置８０５や出力装置８０６及び記憶装置８０７と接続してデータの送受信を行う入出力インタフェース部８０４、上記各構成要素を相互に接続するシステムバス８０８を備えている。記憶装置８０７は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置等で実現される。【００９７】
本発明のモデル選択装置１００のデータ入力部１０１、混合数設定部１０２、分布初期化処理部１０３、モデル最適化処理部１０４、混合数ループ終了判定処理部１０５、最適分布選択処理部１０６、モデル選択結果出力部１０７は、プログラムを組み込んだ、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等のハードウェア部品である回路部品を実装することにより、その動作をハードウェア的に実現することは勿論として、その機能を提供するプログラムを、記憶装置８０７に格納し、そのプログラムを主記憶部８０２にロードしてＣＰＵ８０１で実行することにより、ソフトウェア的に実現することも可能である。【００９８】
以上好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。【００９９】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。【０１００】
また、本発明の各種の構成要素は、必ずしも個々に独立した存在である必要はなく、複数の構成要素が一個の部材として形成されていること、一つの構成要素が複数の部材で形成されていること、ある構成要素が他の構成要素の一部であること、ある構成要素の一部と他の構成要素の一部とが重複していること、等でもよい。【０１０１】
また、本発明の方法及びコンピュータプログラムには複数の手順を順番に記載してあるが、その記載の順番は複数の手順を実行する順番を限定するものではない。このため、本発明の方法及びコンピュータプログラムを実施する時には、その複数の手順の順番は内容的に支障しない範囲で変更することができる。【０１０２】
また、本発明の方法及びコンピュータプログラムの複数の手順は個々に相違するタイミングで実行されることに限定されない。このため、ある手順の実行中に他の手順が発生すること、ある手順の実行タイミングと他の手順の実行タイミングとの一部ないし全部が重複していること、等でもよい。【０１０３】
さらに、上記実施形態の一部又は全部は、以下の付記のようにも記載されうるが、これに限定されない。【０１０４】
（付記１）
混合分布に対してモデルを最適化するモデル最適化手段を備え、
前記モデル最適化手段は、
完全データの情報量基準に関し、前記完全データの隠れ変数の事後分布について、所定の条件を満たすコンポーネントのモデルおよびパラメータの組に対する前記完全データの期待情報量基準を最適化することを特徴とするモデル選択装置。【０１０５】
（付記２）
混合数の候補値から最適化が行われていない候補値を選択する混合数設定手段と、
前記混合数設定手段で選択された混合数を用いてデータの初期化処理を実施する分布初期化手段と、
全ての混合数の候補値に対して、最適な情報量基準の値が計算されているかを判定し、計算されていないと判定した場合、前記混合数設定手段及び前記分布初期化手段、前記最適化手段による処理を再度行わせる混合数ループ終了判定手段と、
全ての混合数の候補値に対して計算された情報量基準の値を比較し、情報量基準が最適である混合数を選択する最適分布選択手段とを備え、
前記モデル最適化手段が、
前記データの隠れ変数に関する事後分布を計算する隠れ変数の事後分布計算手段と、
所定の条件を満たすコンポーネントのモデル及びパラメータの組を選択する更新パラメータ設定手段と、
前記隠れ変数の事後分布計算手段で計算された事後分布に関し、前記更新パラメータ設定手段にて選択したモデル及びパラメータの組について、完全データに対する期待情報量基準を最適化する条件付期待情報量基準最小化手段と、
前記条件付期待情報量基準最小化手段による最適化により更新されたモデルについて、不完全データに対する情報量基準の値を計算する情報量基準計算手段と、
前記情報量基準計算手段にて計算した情報量基準の値の最適性を判定し、最適でないと判定した場合に、再度最適化処理を行う最適性判定手段と、
を含むことを特徴とする付記１に記載のモデル選択装置。【０１０６】
（付記３）
前記モデル最適化手段が、
所定の条件を満たすコンポーネントのモデル及びパラメータの組が複数ある場合に、当該組のすべてについて、完全データに対する期待情報量基準の最適化が行われるまで、前記更新パラメータ設定手段と前記条件付期待情報量基準最小化手段による処理を繰り返し行わせる更新パラメータ設定ループ終了判定手段を含むことを特徴とする付記２に記載のモデル選択装置。【０１０７】
（付記４）
前記情報量基準は、ＭＤＬ基準であることを特徴とする付記１から付記３の何れか１項に記載のモデル選択装置。【０１０８】
（付記５）
前記所定の条件は、他のモデル及びパラメータと独立であることを特徴とする付記１から付記４の何れか１項に記載のモデル選択装置。【０１０９】
（付記６）
多次元データに対して独立性の異なる複数の分布の混合分布に関し、混合の数及び各コンポーネントの独立性を最適化することを特徴とする付記１から付記４の何れか１項にモデル選択装置。【０１１０】
（付記７）
複数の異なる周辺分布の混合分布に関して、混合の数及び各コンポーネントの周辺分布の種類を最適化することを特徴とする付記１から付記４の何れか１項にモデル選択装置。【０１１１】
（付記８）
異なる属性を用いた混合識別モデルのモデル及び属性選択に関して、各コンポーネントで識別に有効な属性を最適化することを特徴とする付記１から付記４の何れか１項にモデル選択装置。【０１１２】
（付記９）
混合分布に対してモデルを最適化するモデル最適化ステップを有し、
前記モデル最適化ステップは、
完全データの情報量基準に関し、前記完全データの隠れ変数の事後分布について、所定の条件を満たすコンポーネントのモデルおよびパラメータの組に対する前記完全データの期待情報量基準を最適化することを特徴とするモデル選択方法。【０１１３】
（付記１０）
混合数の候補値から最適化が行われていない候補値を選択する混合数設定ステップと、
前記混合数設定ステップで選択された混合数を用いてデータの初期化処理を実施する分布初期化ステップと、
全ての混合数の候補値に対して、最適な情報量基準の値が計算されているかを判定し、計算されていないと判定した場合、前記混合数設定ステップ、前記分布初期化ステップ及び前記最適化ステップによる処理を再度行わせる混合数ループ終了判定ステップと、
全ての混合数の候補値に対して計算された情報量基準の値を比較し、情報量基準が最適である混合数を選択する最適分布選択ステップとを有し、
前記モデル最適化ステップが、
前記データの隠れ変数に関する事後分布を計算する隠れ変数の事後分布計算ステップと、
所定の条件を満たすコンポーネントのモデル及びパラメータの組を選択する更新パラメータ設定ステップと、
前記隠れ変数の事後分布計算ステップで計算された事後分布に関し、前記更新パラメータ設定ステップにて選択したモデル及びパラメータの組について、完全データに対する期待情報量基準を最適化する条件付期待情報量基準最小化ステップと、
前記条件付期待情報量基準最小化ステップによる最適化により更新されたモデルについて、不完全データに対する情報量基準の値を計算する情報量基準計算ステップと、
前記情報量基準計算ステップにて計算した情報量基準の値の最適性を判定し、最適でないと判定した場合に、再度最適化処理を行う最適性判定ステップと、
を含むことを特徴とする付記９に記載のモデル選択方法。【０１１４】
（付記１１）
前記モデル最適化ステップが、
所定の条件を満たすコンポーネントのモデル及びパラメータの組が複数ある場合に、当該組のすべてについて、完全データに対する期待情報量基準の最適化が行われるまで、前記更新パラメータ設定ステップと前記条件付期待情報量基準最小化ステップによる処理を繰り返し行わせる更新パラメータ設定ループ終了判定ステップを含むことを特徴とする付記１０に記載のモデル選択方法。【０１１５】
（付記１２）
前記情報量基準は、ＭＤＬ基準であることを特徴とする付記９から付記１１の何れか１項に記載のモデル選択方法。【０１１６】
（付記１３）
前記所定の条件は、他のモデル及びパラメータと独立であることを特徴とする付記９から付記１２の何れか１項に記載のモデル選択方法。【０１１７】
（付記１４）
多次元データに対して独立性の異なる複数の分布の混合分布に関し、混合の数及び各コンポーネントの独立性を最適化することを特徴とする付記９から付記１２の何れか１項にモデル選択方法。【０１１８】
（付記１５）
複数の異なる周辺分布の混合分布に関して、混合の数及び各コンポーネントの周辺分布の種類を最適化することを特徴とする付記９から付記１２の何れか１項にモデル選択方法。【０１１９】
（付記１６）
異なる属性を用いた混合識別モデルのモデル及び属性選択に関して、各コンポーネントで識別に有効な属性を最適化することを特徴とする付記９から付記１２の何れか１項にモデル選択方法。【０１２０】
（付記１７）
混合分布に対してモデルを最適化するモデル最適化処理をコンピュータに実行させ、
前記モデル最適化処理は、
完全データの情報量基準に関し、前記完全データの隠れ変数の事後分布について、所定の条件を満たすコンポーネントのモデルおよびパラメータの組に対する前記完全データの期待情報量基準を最適化することを特徴とするモデル選択プログラム。【０１２１】
（付記１８）
混合数の候補値から最適化が行われていない候補値を選択する混合数設定処理と、
前記混合数設定処理で選択された混合数を用いてデータの初期化処理を実施する分布初期化処理と、
全ての混合数の候補値に対して、最適な情報量基準の値が計算されているかを判定し、計算されていないと判定した場合、前記混合数設定処理、前記分布初期化処理及び前記最適化処理による処理を再度行わせる混合数ループ終了判定処理と、
全ての混合数の候補値に対して計算された情報量基準の値を比較し、情報量基準が最適である混合数を選択する最適分布選択処理とをコンピュータに実行させ、
前記モデル最適化処理が、
前記データの隠れ変数に関する事後分布を計算する隠れ変数の事後分布計算処理と、
所定の条件を満たすコンポーネントのモデル及びパラメータの組を選択する更新パラメータ設定処理と、
前記隠れ変数の事後分布計算処理で計算された事後分布に関し、前記更新パラメータ設定処理にて選択したモデル及びパラメータの組について、完全データに対する期待情報量基準を最適化する条件付期待情報量基準最小化処理と、
前記条件付期待情報量基準最小化処理による最適化により更新されたモデルについて、不完全データに対する情報量基準の値を計算する情報量基準計算処理と、
前記情報量基準計算処理にて計算した情報量基準の値の最適性を判定し、最適でないと判定した場合に、再度最適化処理を行う最適性判定処理と、をコンピュータに実行させるモデル選択プログラム。【０１２２】
この出願は、２０１０年３月３日に出願された日本出願特願２０１０−０４６７２５を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2011108632.tif 000010
【図２】
2011108632.tif 000011
【図３】
2011108632.tif 000012
【図４】
2011108632.tif 000013
【図５】
2011108632.tif 000014
【図６】
2011108632.tif 000015
【図７】
2011108632.tif 000016
【手続補正書】
【提出日】平成24年9月24日(2012.9.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
混合分布に対してモデルを最適化するモデル最適化手段を備え、
前記モデル最適化手段は、
完全データの情報量基準に関し、前記完全データの隠れ変数の事後分布について、予め決められた手順に従ってパラメータとモデルを部分的に固定しながら前記完全データの期待情報量基準を最適化することを特徴とするモデル選択装置。
【請求項２】
混合数の候補値から最適化が行われていない候補値を選択する混合数設定手段と、
前記混合数設定手段で選択された混合数を用いてデータの初期化処理を実施する分布初期化手段と、
全ての混合数の候補値に対して、最適な情報量基準の値が計算されているかを判定し、計算されていないと判定した場合、前記混合数設定手段及び前記分布初期化手段、前記最適化手段による処理を再度行わせる混合数ループ終了判定手段と、
全ての混合数の候補値に対して計算された情報量基準の値を比較し、情報量基準が最適である混合数を選択する最適分布選択手段とを備え、
前記モデル最適化手段が、
前記データの隠れ変数に関する事後分布を計算する隠れ変数の事後分布計算手段と、
所定の条件を満たすコンポーネントのモデル及びパラメータの組を選択する更新パラメータ設定手段と、
前記隠れ変数の事後分布計算手段で計算された事後分布に関し、前記更新パラメータ設定手段にて選択したモデル及びパラメータの組について、完全データに対する期待情報量基準を最適化する条件付期待情報量基準最小化手段と、
前記条件付期待情報量基準最小化手段による最適化により更新されたモデルについて、不完全データに対する情報量基準の値を計算する情報量基準計算手段と、
前記情報量基準計算手段にて計算した情報量基準の値の最適性を判定し、最適でないと判定した場合に、再度最適化処理を行う最適性判定手段と、
を含むことを特徴とする請求項１に記載のモデル選択装置。
【請求項３】
前記モデル最適化手段が、
所定の条件を満たすコンポーネントのモデル及びパラメータの組が複数ある場合に、当該組のすべてについて、完全データに対する期待情報量基準の最適化が行われるまで、前記更新パラメータ設定手段と前記条件付期待情報量基準最小化手段による処理を繰り返し行わせる更新パラメータ設定ループ終了判定手段を含むことを特徴とする請求項２に記載のモデル選択装置。
【請求項４】
前記情報量基準は、ＭＤＬ基準であることを特徴とする請求項１から請求項３の何れか１項に記載のモデル選択装置。
【請求項５】
前記所定の条件は、他のモデル及びパラメータと独立であることを特徴とする請求項２から請求項４の何れか１項に記載のモデル選択装置。
【請求項６】
多次元データに対して独立性の異なる複数の分布の混合分布に関し、混合の数及び各コンポーネントの独立性を最適化することを特徴とする請求項１から請求項４の何れか１項にモデル選択装置。
【請求項７】
複数の異なる周辺分布の混合分布に関して、混合の数及び各コンポーネントの周辺分布の種類を最適化することを特徴とする請求項１から請求項４の何れか１項にモデル選択装置。
【請求項８】
異なる属性を用いた混合識別モデルのモデル及び属性選択に関して、各コンポーネントで識別に有効な属性を最適化することを特徴とする請求項１から請求項４の何れか１項にモデル選択装置。
【請求項９】
混合分布に対してモデルを最適化するモデル最適化ステップを有し、
前記モデル最適化ステップは、
完全データの情報量基準に関し、前記完全データの隠れ変数の事後分布について、予め決められた手順に従ってパラメータとモデルを部分的に固定しながら前記完全データの期待情報量基準を最適化することを特徴とするモデル選択方法。
【請求項１０】
混合分布に対してモデルを最適化するモデル最適化処理をコンピュータに実行させ、
前記モデル最適化処理は、
完全データの情報量基準に関し、前記完全データの隠れ変数の事後分布について、予め決められた手順に従ってパラメータとモデルを部分的に固定しながら前記完全データの期待情報量基準を最適化することを特徴とするモデル選択プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】変更
【補正の内容】
【００１７】
本発明の第１のモデル選択装置は、混合分布に対してモデルを最適化するモデル最適化手段を備え、モデル最適化手段は、完全データの情報量基準に関し、完全データの隠れ変数の事後分布について、予め決められた手順に従ってパラメータとモデルを部分的に固定しながら完全データの期待情報量基準を最適化する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
本発明の第１のモデル選択方法は、混合分布に対してモデルを最適化するモデル最適化ステップを有し、モデル最適化ステップは、完全データの情報量基準に関し、完全データの隠れ変数の事後分布について、予め決められた手順に従ってパラメータとモデルを部分的に固定しながら完全データの期待情報量基準を最適化する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
本発明の第１のモデル選択プログラムは、混合分布に対してモデルを最適化するモデル最適化処理をコンピュータに実行させ、モデル最適化処理は、完全データの情報量基準に関し、完全データの隠れ変数の事後分布について、予め決められた手順に従ってパラメータとモデルを部分的に固定しながら完全データの期待情報量基準を最適化する。
【国際調査報告】
2011108632.tif 000017
2011108632.tif 000018
2011108632.tif 000019
2011108632.tif 000020