(57)【特許請求の範囲】
【請求項１】
高次元ベクトルで表現できる情報のクラスを予測するにあたって、訓練データを訓練クラスタに分割して予測器を生成し、入力されるテストクラスタに対して適切な予測器を選択する予測器選択装置であって、
訓練クラスタの特徴表現を保存するクラスタ表現データベースと、
訓練クラスタ間の非対称な類似度を最大化する変換行列を保存する変換行列データベースと、
テストクラスタの特徴表現を変換行列データベースに保存された変換行列にて変換し、変換されたテストクラスタの特徴表現とクラスタ表現データベースに保存された各特徴表現との類似度を算出し、算出された類似度が最大の訓練クラスタをテストクラスタに最適な予測器を生成するクラスタと特定する類似度計算手段と、
類似度計算手段にて特定されたクラスタから生成された予測器を選択し、選択された予測器を出力する予測器選択手段と、
を備えることを特徴とする予測器選択装置。
【請求項２】
高次元ベクトルで表現できる情報のクラスを予測するにあたって、訓練データを訓練クラスタに分割して予測器を生成し、入力されるテストクラスタに対して適切な予測器を選択する予測器選択装置であって、
訓練クラスタの特徴表現を保存するクラスタ表現データベースと、
訓練クラスタ毎に最適な予測器を生成する訓練クラスタをクラスタ組として保存する最適情報データベースと、
最適情報データベースのクラスタ組の特徴表現をクラスタ表現データベースから取得し、一方の訓練クラスタの特徴表現を変換後にクラスタ組の非対称の類似度を最大化する変換行列を生成する変換行列生成手段と、
変換行列生成手段の生成した変換行列にてテストクラスタの特徴表現を変換し、変換されたテストクラスタの特徴表現とクラスタ表現データベースに保存された各特徴表現との類似度を算出し、算出された類似度が最大の訓練クラスタをテストクラスタに最適な予測器を生成するクラスタと特定する類似度計算手段と、
類似度計算手段にて特定されたクラスタから生成された予測器を選択し、選択された予測器を出力する予測器選択手段と、
を備えることを特徴とする予測器選択装置。
【請求項３】
各訓練クラスタから生成された予測器を保存する予測器データベースをさらに備え、
予測器選択手段は、類似度計算手段にて特定されたクラスタから生成された予測器を予測器データベースから選択する
ことを特徴とする請求項１または２のいずれか１項に記載の予測器選択装置。
【請求項４】
高次元ベクトルで表現できる情報のクラスを予測するにあたって、訓練データを訓練クラスタに分割して予測器を生成し、入力されるテストクラスタに対して適切な予測器を選択する装置の実行する予測器選択方法であって、
テストクラスタの特徴表現を、変換行列データベースに保存された訓練クラスタ間の非対称な類似度を最大化する変換行列にて変換し、変換されたテストクラスタの特徴表現とクラスタ表現データベースに保存された各特徴表現との前記類似度を算出し、前記類似度が最大の訓練クラスタをテストクラスタに最適な予測器を生成するクラスタと特定する類似度計算ステップと、
該特定されたクラスタから生成された予測器を選択し、選択された予測器を出力する予測器選択ステップと、
を有することを特徴とする予測器選択方法。
【請求項５】
高次元ベクトルで表現できる情報のクラスを予測するにあたって、訓練データを訓練クラスタに分割して予測器を生成し、入力されるテストクラスタに対して適切な予測器を選択する装置の実行する予測器選択方法であって、
訓練クラスタ毎に最適な予測器を生成する訓練クラスタをクラスタ組として保存する最適情報データベースのクラスタ組の特徴表現を、訓練クラスタの特徴表現を保存するクラスタ表現データベースから取得し、一方の訓練クラスタの特徴表現を変換後にクラスタ組の非対称の類似度を最大化する変換行列を生成する変換行列生成ステップと、
該生成された変換行列にてテストクラスタの特徴表現を変換し、変換されたテストクラスタの特徴表現とクラスタ表現データベースに保存された各特徴表現との類似度を算出し、算出された類似度が最大の訓練クラスタをテストクラスタに最適な予測器を生成するクラスタと特定する類似度計算ステップと、
該特定されたクラスタから生成された予測器を選択し、選択された予測器を出力する予測器選択ステップと、
を有することを特徴とする予測器選択方法。
【請求項６】
予測器選択ステップは、類似度計算ステップで特定されたクラスタから生成された予測器を、各訓練クラスタから生成された予測器を保存する予測器データベースから選択する
ことを特徴とする請求項４または５のいずれか１項に記載の予測器選択方法。
【請求項７】
請求項１〜３のいずれか１項に記載の予測器選択装置の各手段としてコンピュータを機能させる予測器選択プログラム。 
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキストや画像などの高次元のベクトルで表現できる情報を用いて予測（例えば分類やランキングなど）を行う技術に関する。
【背景技術】
【０００２】
周知のようにテキストや画像などのデータを高次元ベクトルで表現し、クラスを予測するにあたってはクラスタ毎に生成した予測器（モデル）が利用されている。その際には、同じ特性を持った訓練データをひとつのクラスタ（訓練クラスタ）にまとめることで訓練データを複数のクラスタに分割し、それぞれのクラスタに含まれる訓練データを用いて予測器を生成し、入力されたテストデータ群（テストクラスタ）に対して適切な予測器を選択的に利用する予測方式が有効である。
【０００３】
この方式において、予測器を生成したクラスタの選択方式としては、図４および図５に示すように、テストクラスタに対しては各モデルの性能を評価できないためテストクラスタに対する類似度が最大の訓練クラスタを選択し、選択された訓練クラスタの生成したモデルをテストクラスタに適用する方法が知られている。
【０００４】
そして、従来は、非特許文献１に示すように、訓練データを用いてテクストクラスタに対して最良の性能を示すモデルを生成するクラスタの類似度を最大化するような特徴空間に変換するための変換行列を生成し、訓練クラスタの選択精度を向上させている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Eric P.Xing, Andrew Y. Ng, Michael I. Jordan, Stuart Russell ”Distance Metric Learning with Application to Clustering with Side-Information” Proceedings of the 16th annual conference on Neural Information Processing Systems (NIPS ’02), pp.505≡512, 2002.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、最適な予測器は、与えられたクラスタに含まれるデータに対する予測器の性能によって評価されることから、図６に示すように、テストクラスタＣＤの最適な予測を行う予測器ＭＢを生成する訓練クラスタＭＢに対して、テストクラスタＣＤから生成された予測器ＭＤが最適であるとは限らない。このような場合の予測器選択にあってはクラスタ間の類似度は対称ではない。
【０００７】
ところが、従来は、特許文献１のようにクラスタ間の類似度として対称な類似度の距離尺度を用いているため、非対称な類似関係に対してクラスタ間の類似度を最適化することができず、テストクラスタに対して最適な予測器を選択できないおそれがある。
【０００８】
本発明は、上述のような従来技術の問題点を解決するためになされたものであり、非対称な類似関係に対して最適な予測器を選択可能とする技術の提供を解決課題としている。
【課題を解決するための手段】
【０００９】
そこで、本発明は、事前に訓練データに基づき非対称な類似度を最大とする変換行列を生成し、生成された変換行列を利用して入力されたテストクラスタの予測器を選択する。
【００１０】
本発明に係る予測器選択装置の一態様は、訓練クラスタの特徴表現を保存するクラスタ表現データベースと、訓練クラスタ間の非対称な類似度を最大化する変換行列を保存する変換行列データベースと、テストクラスタの特徴表現を変換行列データベースに保存された変換行列にて変換し、変換されたテストクラスタの特徴表現とクラスタ表現データベースに保存された各特徴表現との類似度を算出し、算出された類似度が最大の訓練クラスタをテストクラスタに最適な予測器を生成するクラスタと特定する類似度計算手段と、類似度計算手段にて特定されたクラスタから生成された予測器を選択し、選択された予測器を出力する予測器選択手段と、を備える。
【００１１】
本発明に係る予測器選択装置の他の態様は、訓練クラスタの特徴表現を保存するクラスタ表現データベースと、訓練クラスタ毎に最適な予測器を生成する訓練クラスタをクラスタ組として保存する最適情報データベースと、最適情報データベースのクラスタ組の特徴表現をクラスタ表現データベースから取得し、一方の訓練クラスタの特徴表現を変換後にクラスタ組の非対称の類似度を最大化する変換行列を生成する変換行列生成手段と、変換行列生成手段の生成した変換行列にてテストクラスタの特徴表現を変換し、変換されたテストクラスタの特徴表現とクラスタ表現データベースに保存された各特徴表現との類似度を算出し、算出された類似度が最大の訓練クラスタをテストクラスタに最適な予測器を生成するクラスタと特定する類似度計算手段と、類似度計算手段にて特定されたクラスタから生成された予測器を選択し、選択された予測器を出力する予測器選択手段と、を備える。
【００１２】
本発明に係る予測器選択方法の一態様は、テストクラスタの特徴表現を、変換行列データベースに保存された訓練クラスタ間の非対称な類似度を最大化する変換行列にて変換し、変換されたテストクラスタの特徴表現とクラスタ表現データベースに保存された各特徴表現との前記類似度を算出し、前記類似度が最大の訓練クラスタをテストクラスタに最適な予測器を生成するクラスタと特定する類似度計算ステップと、該特定されたクラスタから生成された予測器を選択し、選択された予測器を出力する予測器選択ステップと、を有する。
【００１３】
本発明に係る予測器選択方法の他の態様は、訓練クラスタ毎に最適な予測器を生成する訓練クラスタをクラスタ組として保存する最適情報データベースのクラスタ組の特徴表現を、訓練クラスタの特徴表現を保存するクラスタ表現データベースから取得し、一方の訓練クラスタの特徴表現を変換後にクラスタ組の非対称の類似度を最大化する変換行列を生成する変換行列生成ステップと、該生成された変換行列にてテストクラスタの特徴表現を変換し、変換されたテストクラスタの特徴表現とクラスタ表現データベースに保存された各特徴表現との類似度を算出し、算出された類似度が最大の訓練クラスタをテストクラスタに最適な予測器を生成するクラスタと特定する類似度計算ステップと、該特定されたクラスタから生成された予測器を選択し、選択された予測器を出力する予測器選択ステップと、を有する。
【００１４】
前記予測器の選択にあたっては、各訓練クラスタから生成された予測器を保存する予測器データベースから選択することもできる。なお、本発明は、前記各装置としてコンピュータを機能させるプログラムの態様としてもよい。このプログラムは、ネットワークや記録媒体などを通じて提供することができる。
【発明の効果】
【００１５】
本発明によれば、非対称な類似関係に対して最適な予測器を選択することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態に係る予測器選択装置の構成図。
【図２】同  変換行列生成装置の構成図。
【図３】同  類似度計算部の処理を示すフローチャート。
【図４】クラスタ毎に生成した予測器の選択を示す説明図１。
【図５】同  説明図２
【図６】クラスタ間の類似度が非対称な状態を示す説明図。
【発明を実施するための形態】
【００１７】
図１および図２に基づき本発明の実施形態に係る予測器選択装置を説明する。この選択装置１は、非対称な類似度（Ａｓｙｍｍｅｔｒｉｃ  Ｓｉｍｉｌａｒｉｔｙ）に対して該類似度を最大とする変換行列を生成する変換行列生成装置２を備え、クラスの予測にあたって変換行列生成装置２で生成された変換行列を利用して入力されたテストクラスタの最適な予測器を選択する。
【００１８】
具体的には、前記選択装置１は、コンピュータにより構成され、通常のコンピュータのハードウェアリソース、例えばＣＰＵ．メモリ（ＲＡＭ）．ハードディスクドライブ装置などを備える。このハードウェアリソースとソフトウェアリソース（ＯＳ．アプリケーションなど）との協働の結果、前記選択装置１は、図１および図２に示すように、クラスタ表現ＤＢ１０，最適予測器情報ＤＢ２０，変換行列生成部（変換行列生成装置２に相当する。）３０，変換行列ＤＢ４０，類似度計算部５０，予測器ＤＢ６０，予測器選択部７０を実装する。
【００１９】
ここでは各ＤＢ１０．２０．４０．６０は、メモリ（ＲＡＭ）やハードディスクドライブ装置などの記憶装置に構築されているものとする。この各部１０〜７０によれば、事前に作成された前記変換行列を保存する変換行列作成ステージと、保存された前記変換行列にて入力されたテクストクラスタの前記類似度を最大とする予測器を選択する予測器選択ステージとが実行される。
【００２０】
すなわち、クラスタ表現ＤＢ１０には訓練クラスタの特徴表現（特徴ベクトル）が保存され、最適予測器情報ＤＢ２０には訓練クラスタ組、即ち訓練クラスタ毎に最適な予測器を生成するクラスタがペアで保存されている。このとき変換行列作成ステージでは、変換行列生成部３０が、図２に示すように、前記ＤＢ２０のクラスタ組のクラスタ表現データベースに保存された特徴表現を取得し、一方の特徴変換後に前記クラスタ組の非対称の類似度を最大化する変換行列を生成する。生成した変換行列を変換行列ＤＢ４０に保存する。
【００２１】
また、予測器選択ステージでは、類似度計算部５０が、図１に示すように、入力されたテストクラスタの特徴表現を前記ＤＢ４０の変換行列にて変換する。変換されたテストクラスタの特徴表現と、前記ＤＢ１０に保存された各特徴表現との前記類似度を算出する。算出された類似度が最大の訓練クラスタをテストクラスタにとって最適な予測器を生成するクラスタと特定する。
【００２２】
予測器選択部７０は、各訓練クラスタから生成された予測器のパラメータを保存する前記ＤＢ６０から予測器を選択する。すなわち、前記ＤＢ６０を参照して類似度計算部５０にて特定されたクラスタから生成された予測器を選択し、選択された予測器を出力する。以下、各ステージの詳細を説明する。
【００２３】
≪変換行列生成ステージ≫
変換行列生成部３０は、前記ＤＢ１０．２０を参照してその保存データを入力として受け取る。表１は、前記ＤＢ１０のデータ構造例を示している。ここでは「ｃ1，ｃ2，．．．，ｃN」が訓練クラスタのクラスタＩＤを示し、各行がそれぞれの訓練クラスタの特徴表現を示している。なお、表１のデータ構造例では、訓練各クラスタの特徴がＭ次元の特徴ベクトル「ｘ1，ｘ2，．．．，ｘM」で表現され、ｉ行ｊ列目の値は訓練クラスタｃiのｊ番目の特徴値を示している。
【００２４】
【表１】
0005432935.tif 000002
【００２５】
表２は、前記ＤＢ２０のデータ構造例を示し、テストクラスタＩＤはテストクラスタに擬制された訓練クラスタのＩＤを示している。すなわち、ある訓練クラスタをテストクラスタと擬制し、その他の訓練クラスタのうち最良の予測性能を示した予測器を生成する訓練クラスタが最適予測器生成クラスタとして選択されている。ここで選択された訓練クラスタのＩＤが、テストクラスタに擬制された訓練クラスタのクラスタＩＤ毎に記述されている。
【００２６】
【表２】
0005432935.tif 000003
【００２７】
ここで変換行列生成部３０は、表１．２のような前記ＤＢ１０．２０の保存データを入力として受け取ると、前記ＤＢ２０に保存されたクラスタ組「テストクラスタ（ＩＤ）：最適予測器生成クラスタ（ＩＤ）」の特徴表現を前記ＤＢ１０の保存データから取得する。ここで取得されたテストクラスタの特徴表現の変換後にクラスタ組「テストクラスタ（ＩＤ）：最適予測器生成クラスタ（ＩＤ）」の類似度を最大化するような変換行列を生成し、生成された変換行列を前記ＤＢ４０に保存する（変換行列生成ステップ）。
【００２８】
この類似度は、図６に示すような非対称の類似度を意味し、例えば一般化カルバックライブラーダイバージェンス「Ｇｅｎｅｒａｌｉｚｅｄ  Ｋｕｌｌｂａｃｋ−Ｌｅｉｂｌｅｒ  ｄｉｖｅｒｇｅｎｃｅ（ｇｋｌｄ）」を用いることができる。この一般化カルバックライブラーダイバージェンスは式（１）で与えられる。
【００２９】
【数１】
0005432935.tif 000004
【００３０】
ここで「０≧ｐ，ｑ」が必要であるため、訓練クラスタの特徴表現ｘに対するテストクラスタ（テストクラスタに擬制された訓練クラスタ）の特徴表現ｙを、「ｐ＝ｅｘｐ（ｘ），ｑ＝ｅｘｐ（ｙ）」とすることにより、あらゆる実数値を扱うことができる。この際に訓練クラスタの特徴表現ｘに対するテストクラスタの特徴表現ｙは式（２）にしたがって算出できる。
【００３１】
【数２】
0005432935.tif 000005
【００３２】
この式（２）を、変換行列Ｗを用いてテストクラスタの特徴表現を特徴変換「ｙ→ｙTｗi」した後の類似度は式（３）で計算することができる。ここで「Ｇ（ｘ，ｙ）」の二乗を損失関数とすると「ｗi」の推定値は式（４）にしたがって求めることができる。
【００３３】
【数３】
0005432935.tif 000006
【００３４】
【数４】
0005432935.tif 000007
【００３５】
この推定値の計算には、損失関数の勾配情報を用いて最急降下法、ニュートン法、ＢＦＧＳ「Ｂｒｏｙｄｅｎ−Ｆｌｅｔｃｈｅｒ−Ｇｏｌｄｆａｒｂ−Ｓｈａｎｎｏ」法などの非線形最適化手法などを用いるとことができる。なお、式（１）〜（４）はプログラムなどに定義されているものとする。
【００３６】
≪予測器選択ステージ≫
（１）類似度計算部５０
類似度計算部５０は、入力されたテクストクラスタと前記ＤＢ１０．４０の保存データを入力として受け取る。ここでは前記ＤＢ４０の変換行列を用いて入力されたテストクラスタの特徴表現を変換し、前記ＤＢ１０の訓練クラスタ特徴との前記類似度を計算する。この類似度が最大の訓練クラスタを前記ＤＢ１０中から探索し、探索された訓練クラスタを最適な予測器を生成するクラスタとしてクラスタＩＤを出力する。
【００３７】
図３に基づき処理内容を詳述すれば、テストクラスタが図示省略の入力部に入力されると類似度計算部５０の処理が開始される。処理が開始されると、まず、メモリ（ＲＡＭ）に記憶された「最大類似度ｓmax」・「最適クラスタｃbest」を初期化する（Ｓ０１）。この初期化は「ｓmax←０」および「ｃbest←ＮＯＮＥ」に書き換えることで実行される。
【００３８】
つぎに前記ＤＢ４０から変換行列ｗiを取得し、入力されたテストクラスタｃtestの特徴表現を特徴変換「ｙ→ｙTｗi」する（Ｓ０２）。この変換後に前記ＤＢ１０の保存データ中にＳ０５以下を未処理のクラスタｃkが存在するか否かを確認する（Ｓ０３）。
【００３９】
この確認の結果、未処理のクラスタｃkが存在すれば、入力テストクラスタｃtestのクラスタｃkに対する類似度ｓkを算出する（Ｓ０６）。類似度ｓkの算出には式（３）を用いればよい。ここで算出された類似度ｓkが最大値「ｓmax」よりも大きいか否か、即ち「ｓk＞ｓmax」が成立するか否かが確認され（Ｓ０６）、成立しなければＳ０３に戻る一方、成立すればＳ０７に進む。Ｓ０７では、メモリ（ＲＡＭ）に記憶された「最大類似度ｓmax」・「最適クラスタｃbest」を書き換える。ここでは「最大類似度ｓmax」をＳ０６で算出された類似度ｓkに更新「ｓmax←ｓk」し、最適な予測器を生成するクラスタとして当該クラスタｃkを記憶「ｃbest←ｃk」する。
【００４０】
このＳ０７の処理後にＳ０３に戻って前記ＤＢ１０の保存データ中に未処理のクラスタｃkが存在しなくなるまでＳ０５〜Ｓ０７が繰り返され、該クラスタｃkが無くなればメモリ（ＲＡＭ）に記憶された「最適クラスタｃbest」のクラスタＩＤを予測器選択部７０に出力し、処理を終了する。
【００４１】
（２）予測器選択部７０
予測器選択部７０は、類似度計算部５０から「最適クラスタｃbest」のクラスタＩＤを受け取ると、前記ＤＢ６０を参照して最適予測器を図示省略の出力部を通じてモニタなどに出力する。
【００４２】
【表３】
0005432935.tif 000008
【００４３】
表３は、前記ＤＢ６０のデータ構造例を示し、各訓練クラスタから生成された予測器のパラメータが格納されている。ここでは線形モデル予測器におけるパラメータのデータ構造が示されているが、これに限定されずにあらゆる学習アルゴリズムを用いて生成された予測器の情報を前記ＤＢ６０に保存することができる。具体的には、表３のデータ構造例中、「ｃ1，ｃ2，．．．，ｃN」が訓練クラスタのクラスタＩＤを示し、各行がそれぞれの訓練クラスタの特徴表現に対する重みを示し、ｉ行ｊ番目の値は訓練クラスタｃiのｊ番目の特徴に対する重みの値を示している。
【００４４】
そして、予測器選択部７０は、類似度計算部５０から出力されたクラスタＩＤの予測器を前記ＤＢ６０の保存データから選択し、選択された予測器を出力する。出力された予測器は、例えばテキストや画像とった高次元ベクトルで表現できる情報の予測（分類やランキング）に利用される。
【００４５】
このように前記選択装置１によれば、非対称な類似度指標（例えば一般カルバックライブラーダイバージェンス）に基づいてクラスタに対して最適な予測器を生成するクラスタの類似度を最大化する変換行列を生成して前記ＤＢ４０に保存される。この保存データに基づき入力テストクラスタと前記ＤＢ１０の訓練クラスタとの類似度を計算し、該類似度が最大の訓練クラスタのクラスタＩＤが予測器選択部７０に出力されることから、入力テストクラスタに対する予測器選択の精度が向上する。これにより入力テストクラスタに含まれるデータの予測制度を向上させることができる。
【００４６】
なお、本発明は、上記実施形態に限定されるものではなく、装置構成などは各請求項に記載された範囲内で変形することができる。例えば変換行列生成装置２（変換行列生成部３０）は、必ずしも予測器選択装置１内に組み込まれている必要はなく、別個の装置として構成してもよい。この場合には前記ＤＢ２０．４０は、それぞれの装置１．２にて共有して備えればよい。
【００４７】
≪プログラムなど≫
本発明は、予測器選択装置１（変換行列生成装置２を含む。）の各部１０．２０．３０．４０．５０．６０．７０の一部もしくは全部として、コンピュータを機能させる文書検索プログラムとして構成することもできる。このプログラムによれば、前記各ステージの一部あるいは全部の処理をコンピュータに実行させることが可能となる。
【００４８】
前記プログラムは、Ｗｅｂサイトや電子メールなどネットワークを通じて提供することができる。また、前記プログラムは、ＣＤ−ＲＯＭ，ＤＶＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷ，ＤＶＤ−Ｒ，ＤＶＤ−ＲＷ，ＭＯ，ＨＤＤ，ＢＤ−ＲＯＭ，ＢＤ−Ｒ，ＢＤ−ＲＥなどの記録媒体に記録して、保存・配布することも可能である。この記録媒体は、記録媒体駆動装置を利用して読み出され、そのプログラムコード自体が前記実施形態の処理を実現するので、該記録媒体も本発明を構成する。
【符号の説明】
【００４９】
１…予測器選択装置
２…変換行列生成装置
１０…クラスタ表現ＤＢ（クラスタ表現データベース）
２０…最適予測器情報ＤＢ（クラスタ表現データベース）
３０…変換行列生成部（変換行列生成手段）
４０…変換行列ＤＢ（変換行列データベース）
５０…類似度計算部（類似度計算手段）
６０…予測器ＤＢ（予測器データベース）
７０…予測器選択部（予測器選択手段） 
【図１】
0005432935.tif 000009
【図２】
0005432935.tif 000010
【図３】
0005432935.tif 000011
【図４】
0005432935.tif 000012
【図５】
0005432935.tif 000013
【図６】
0005432935.tif 000014