"入力データに対して出力データが得られるときの前記入力データから前記出力データを予測するためのモデルのパラメータを推定する入出力モデル推定装置であって、前記入力データの集合である入力された入力データ集合と、前記出力データの集合であって、かつ、前記入力データとの対応付けが未知の入力された出力データ集合とを読み込む読み込み手段と、前記入力データ集合及び前記出力データ集合に基づいて、前記入力データの各々の第1潜在変数に関する平均と前記出力データの各々の第2潜在変数に関する平均とを近似させ、かつ、前記入力データの各々の第1潜在変数に関する共分散行列と前記出力データの各々の第2潜在変数に関する共分散行列とを近似させるように、前記入力データの各々の第1潜在変数及び該第1潜在変数を前記入力データにマッピングするための第1重み変数、並びに前記出力データの各々の第2潜在変数及び該第2潜在変数を前記出力データにマッピングするための第2重み変数を、前記モデルのパラメータとして推定するモデル推定手段と、を含む入出力モデル推定装置。前記入力データ集合のうちの予測対象の入力データについて推定された前記第1潜在変数と、推定された前記第2重み変数とに基づいて、前記予測対象の入力データに対する出力データを予測する予測手段を更に含む請求項1記載の入出力モデル推定装置。前記モデル推定手段は、前記入力データの各々の前記第1潜在変数及び前記第1重み変数、並びに前記出力データの各々の前記第2潜在変数及び前記第2重み変数の各々に初期値を設定する初期化手段と、前記第1潜在変数に関する平均と前記第2潜在変数に関する平均とを近似させ、かつ、前記第1潜在変数に関する共分散行列と前記第2潜在変数に関する共分散行列とを近似させるための予め定められた目的関数に基づいて、前記入力データの各々の前記第1潜在変数及び前記第1重み変数、並びに前記入力データの各々の前記第2潜在変数及び前記第2重み変数の各々を推定するパラメータ推定手段と、を含み、前記パラメータ推定手段による推定を繰り返すことにより、前記目的関数の値を最小化したときの前記入力データの各々の前記第1潜在変数及び前記第1重み変数、並びに前記出力データの各々の前記第2潜在変数及び前記第2重み変数を、前記モデルのパラメータの推定結果とする請求項1又は2記載の入出力モデル推定装置。前記潜在変数に関する平均及び共分散行列は、前記潜在変数の平均及び共分散行列、または前記潜在変数に関する正規分布の平均及び共分散行列である請求項1~請求項3の何れか1項記載の入出力モデル推定装置。入力データに対して出力データが得られるときの前記入力データから前記出力データを予測するためのモデルのパラメータを推定する入出力モデル推定装置における入出力モデル推定方法であって、読み込み手段によって、前記入力データの集合である入力された入力データ集合と、前記出力データの集合であって、かつ、前記入力データとの対応付けが未知の入力された出力データ集合とを読み込むステップと、モデル推定手段によって、前記入力データ集合及び前記出力データ集合に基づいて、前記入力データの各々の第1潜在変数に関する平均と前記出力データの各々の第2潜在変数に関する平均とを近似させ、かつ、前記入力データの各々の第1潜在変数に関する共分散行列と前記出力データの各々の第2潜在変数に関する共分散行列とを近似させるように、前記入力データの各々の第1潜在変数及び該第1潜在変数を前記入力データにマッピングするための第1重み変数、並びに前記出力データの各々の第2潜在変数及び該第2潜在変数を前記出力データにマッピングするための第2重み変数を、前記モデルのパラメータとして推定するステップと、を含む入出力モデル推定方法。予測手段によって、前記入力データ集合のうちの予測対象の入力データと、前記入力データについて推定された前記第1潜在変数と、推定された前記第2重み変数とに基づいて、前記予測対象の入力データに対する出力データを予測するステップを更に含む請求項5記載の入出力モデル推定方法。前記モデル推定手段によって推定するステップは、初期化手段によって、前記入力データの各々の前記第1潜在変数及び前記第1重み変数、並びに前記出力データの各々の前記第2潜在変数及び前記第2重み変数の各々に初期値を設定するステップと、パラメータ推定手段によって、前記第1潜在変数に関する平均と前記第2潜在変数に関する平均とを近似させ、かつ、前記第1潜在変数に関する共分散行列と前記第2潜在変数に関する共分散行列とを近似させるための予め定められた目的関数に基づいて、前記入力データの各々の前記第1潜在変数及び前記第1重み変数、並びに前記入力データの各々の前記第2潜在変数及び前記第2重み変数の各々を推定するステップと、を含み、前記パラメータ推定手段による推定を繰り返すことにより、前記目的関数の値を最小化したときの前記入力データの各々の前記第1潜在変数及び前記第1重み変数、並びに前記出力データの各々の前記第2潜在変数及び前記第2重み変数を、前記モデルのパラメータの推定結果とする請求項5又は6記載の入出力モデル推定方法。コンピュータを、請求項1~請求項4のいずれか1項記載の入出力モデル推定装置を構成する各手段として機能させるための入出力モデル推定プログラム。しかしながら、上記非特許文献1では、入力集合と出力集合の大きさが同じである必要がある、という問題点がある。本発明は上記事情に鑑みてなされたものであり、対応付けが未知の入力データ集合及び出力データ集合から、入力データに対する出力データを予測するためのモデルのパラメータを推定することができる入出力モデル推定装置、方法、及びプログラムを提供することを目的とする。上記目的を達成するために、本発明の入出力モデル推定装置は、入力データに対して出力データが得られるときの前記入力データから前記出力データを予測するためのモデルのパラメータを推定する入出力モデル推定装置であって、前記入力データの集合である入力された入力データ集合と、前記出力データの集合であって、かつ、前記入力データとの対応付けが未知の入力された出力データ集合とを読み込む読み込み手段と、前記入力データ集合及び前記出力データ集合に基づいて、前記入力データの各々の第1潜在変数に関する平均と前記出力データの各々の第2潜在変数に関する平均とを近似させ、かつ、前記入力データの各々の第1潜在変数に関する共分散行列と前記出力データの各々の第2潜在変数に関する共分散行列とを近似させるように、前記入力データの各々の第1潜在変数及び該第1潜在変数を前記入力データにマッピングするための第1重み変数、並びに前記出力データの各々の第2潜在変数及び該第2潜在変数を前記出力データにマッピングするための第2重み変数を、前記モデルのパラメータとして推定するモデル推定手段と、を含んで構成されている。本発明の入出力モデル推定装置によれば、読み込み手段によって、入力データの集合である入力された入力データ集合と、前記出力データの集合であって、かつ、前記入力データとの対応付けが未知の入力された出力データ集合とを読み込む。そして、モデル推定手段によって、前記入力データ集合及び前記出力データ集合に基づいて、前記入力データの各々の第1潜在変数に関する平均と前記出力データの各々の第2潜在変数に関する平均とを近似させ、かつ、前記入力データの各々の第1潜在変数に関する共分散行列と前記出力データの各々の第2潜在変数に関する共分散行列とを近似させるように、前記入力データの各々の第1潜在変数及び該第1潜在変数を前記入力データにマッピングするための第1重み変数、並びに前記出力データの各々の第2潜在変数及び該第2潜在変数を前記出力データにマッピングするための第2重み変数を、前記モデルのパラメータとして推定する。このように、入力データの各々の第1潜在変数に関する平均及び共分散行列と出力データの各々の第2潜在変数に関する平均及び共分散行列とを近似させるように、入力データの各々の第1潜在変数及び第1重み変数、並びに出力データの各々の第2潜在変数及び第2重み変数を推定することにより、対応付けが未知の入力データ集合及び出力データ集合から、入力データに対する出力データを予測するためのモデルのパラメータを推定することができる。また、本発明の入出力モデル推定方法は、入力データに対して出力データが得られるときの前記入力データから前記出力データを予測するためのモデルのパラメータを推定する入出力モデル推定装置における入出力モデル推定方法であって、読み込み手段によって、前記入力データの集合である入力された入力データ集合と、前記出力データの集合であって、かつ、前記入力データとの対応付けが未知の入力された出力データ集合とを読み込むステップと、モデル推定手段によって、前記入力データ集合及び前記出力データ集合に基づいて、前記入力データの各々の第1潜在変数に関する平均と前記出力データの各々の第2潜在変数に関する平均とを近似させ、かつ、前記入力データの各々の第1潜在変数に関する共分散行列と前記出力データの各々の第2潜在変数に関する共分散行列とを近似させるように、前記入力データの各々の第1潜在変数及び該第1潜在変数を前記入力データにマッピングするための第1重み変数、並びに前記出力データの各々の第2潜在変数及び該第2潜在変数を前記出力データにマッピングするための第2重み変数を、前記モデルのパラメータとして推定するステップと、を含む。また、本発明の入出力モデル推定プログラムは、コンピュータを、上記の入出力モデル推定装置を構成する各手段として機能させるためのプログラムである。以上説明したように、本発明の入出力モデル推定装置、方法、及びプログラムによれば、入力データの各々の第1潜在変数に関する平均及び共分散行列と出力データの各々の第2潜在変数に関する平均及び共分散行列とを近似させるように、入力データの各々の第1潜在変数及び第1重み変数、並びに出力データの各々の第2潜在変数及び第2重み変数を推定することにより、対応付けが未知の入力データ集合及び出力データ集合から、入力データに対する出力データを予測するためのモデルのパラメータを推定することができる、という効果が得られる。以下、図面を参照して本発明の実施の形態を詳細に説明する。<モデルの概要>入力データ集合をXn1N1、出力データ集合をYn1N2とする。ここで入力データおよび出力データは多次元ベクトルxnm1M1,ynm1M2とする。出力データ集合Yは、入力データに対して所定の関係に基づいて得られる出力データの集合であり、入力データとの対応付けが未知のものである。例えば、入力データが特許文書であり、出力データが、当該特許文書に対するカテゴリである。なお、出力データ集合Yの出力データは、入力データ集合に含まれる入力データに対する出力データである必要はなく、入力データ集合に含まれない同様の入力データに対して同様の関係に基づいて得られる出力データであればよい。入力データ集合Xおよび出力データ集合Yは、それぞれ、以下の1式、2式のように近似できるとする。ここで、uinKk1、vimKk1であり、u1nは、入力データxnの潜在変数であり、v1mは、潜在変数v1mを入力データにマッピングするための重み変数である。u2nは、出力データynの潜在変数であり、v2mは、潜在変数v2mを出力データにマッピングするための重み変数である。なお、潜在変数u1n、u2n、重み変数v1m、v2mが、入力データから出力データを予測するためのモデルのパラメータである。上記1式、2式は、入力データ集合を表わす行列および出力データ集合を表わす行列を、それぞれ、2つの低ランク行列の積によって近似すること行列分解と同等である。入力データ集合と出力データ集合を別々に行列分解した場合、得られる低ランク行列のu1nとu2nの各要素の特徴は関連しない。そこで、これらを関連させるために、U1n1N1の平均とU2N2n1の平均とが同じであって、かつ、U1n1N1の共分散行列とU2N2n1の共分散行列が同じであると仮定する。つまり、以下の3式、4式が成り立つことを仮定する。ここで、μiは平均であり、以下の5式で表される。また、Ciは共分散行列であり、以下の6式で表される。なお、上記では、U1U2が同じ平均、共分散行列を持つ場合を例に説明したが、これに限定されるものではなく、U1U2が同じ平均、共分散行列を持つある正規分布から生成されると仮定してもよい。本実施の形態では、上記式、式、式、及び式が示す近似が、最小二乗の意味でできるだけ満たされるようにパラメータU1n1N1、U2n1N2、V1m1M1、V2m1M2を推定する。つまり、最小化すべき目的関数は以下の7式で表される。ここで、λ1λ2αβはそれぞれの近似の重要性を示すハイパーパラメータである。ηは正則化のためのハイパーパラメータである。ハイパーパラメータは事前に与えてもよいし、クロスバリデーション等によってデータから推定してもよい。そのときの評価指標としては、上記1式、2式の近似がどれくらい満たされているなどを使うことができる。また、各要素の特徴が関連するパラメータを推定することができれば、ある入力xnに対する出力のm番目の要素はuT1nv2mにより予測することができる。上記1式、2式のように、入力、出力ともに潜在変数uinの線形和で近似できることを仮定しているが、以下の8式、9式に示すような任意の関数で近似できると仮定して、これらの近似を満たすようにパラメータを推定してもよい。上記8式、9式で近似する場合、ガウス過程などを用いることにより、非線形関数をモデル化できる。この場合、出力の予測はf2を用いて可能である。<システム構成>本発明の実施の形態に係る入出力モデル推定装置100は、CPUCentralProcessingUnitと、RAMRandomAccessMemoryと、後述する入出力モデル推定処理ルーチンを実行するためのプログラムを記憶したROMReadOnlyMemoryとを備えたコンピュータで構成されている。このコンピュータは、機能的には、図1に示すように、読み込み部10、記憶部20、推定部30、及び予測部40を含んだ構成で表すことができる。読み込み部10は、入力集合読み込み部11と、出力集合読み込み部12とを備えている。入力集合読み込み部11は、入力された入力データ集合Xを読み込む。出力集合読み込み部12は、入力された出力データ集合Yを読み込む。記憶部20には、読み込まれた入力データ集合Xが記憶される入力集合記憶部21、読み込まれた出力データ集合Yが記憶される出力集合記憶部22、及びパラメータ集合Θが記憶されるパラメータ集合記憶部23が設けられている。推定部30は、初期化部31と、パラメータ推定部32と、書き込み部33とを備えている。初期化部31は、パラメータ集合Θの各パラメータに、ランダムに値を設定して初期化する。また、ハイパーパラメータにも、適当な値を設定して初期化する。パラメータ集合Θは、U1n1N1、U2n1N2V1m1M1V2m1M2である。パラメータ推定部32は、上記1式~4式の近似ができるだけ満たされるように、パラメータ集合を推定する。例えば、上記7式の目的関数を最小化するパラメータ集合を求めることにより、上記1式~4式の近似が満たされるようなパラメータ集合が得られる。準ニュートン法,勾配法などの方法を用いて目的関数を最小化できる。そのときに必要となる各パラメータに対する勾配は、以下の10式~13式で表される。パラメータ推定部32は、上記10式~13式を用いて、上記7式の目的関数を最小化するように、一時刻前のパラメータ集合Θに基づいて、パラメータ集合Θを更新する。パラメータ推定部32によるパラメータ集合Θの更新を、終了条件が満たされるまで繰り返すことにより、近似をできるだけ満たすパラメータ集合Θを推定する。なお、パラメータ集合Θが、モデルパラメータの一例である。終了条件としては、例えば、パラメータ集合Θの現在の推定値が、近似をどれくらい満たしているかを示す目的関数が収束することである。また、終了条件としては、例えば、パラメータ集合Θの現在の推定値が、どのくらい入力データ集合及び出力データ集合を尤もらしく説明できているかを表す、尤度が収束することを用いることができる。また、終了条件として、繰り返し回数、計算時間などが所定値に到達することを用いることができる。最後に、書き込み部33は、推定したパラメータ集合Θを書き込む.予測部40は、出力予測部41と、書き込み部42とを備えている。出力予測部41は、入力データ集合のうちの予測対象の入力データxnに対して、推定したパラメータ集合Θのうち入力データxnの潜在変数u1nと、出力データの重み変数v2mm=1,,M2を用い、以下の15式を用いて、出力のm番目m=1,,M2の要素を予測することにより、予測対象の入力データxnに対する出力データyを予測する。書き込み部42では、予測した出力データを記憶部20に書き込む。<入出力モデル推定装置の作用>本実施の形態の入出力モデル推定装置100に、入力データ集合X及び出力データ集合Yが入力されると、入出力モデル推定装置100において、図2に示す、入出力モデル推定処理ルーチンが実行される。まず、ステップS101で、読み込み部10によって、入力された入力データ集合X及び出力データ集合Yを読みこみ、入力集合記憶部21及び出力集合記憶部22に格納する。次のステップS102では、推定部30によって、入力データ集合X及び出力データ集合Yに対するパラメータ集合Θを推定する。ここで、上記ステップS102は、図3に示す処理ルーチンによって実現される。ステップS110において、初期化部31によって、入力データ集合Xの入力データxの各々にする潜在変数u1n、重み変数v1m、及び出力データ集合Yの出力データyの各々にする潜在変数u2n、重み変数v2mに、ランダムな値を設定して、パラメータ集合Θを初期化する。また、ハイパーパラメータλ1、λ2、α、β、ηに適当な値を設定する。次のステップS111では、パラメータ推定部32によって、初期化されたパラメータ集合Θ、又はステップS111で前回更新されたパラメータ集合Θを用いて、上記10式~13式に従って、上記7式の目的関数を最小化するように、パラメータ集合Θを更新する。そして、ステップS112では、繰り返しの終了条件を満たすか否かを判定する。例えば、上記ステップS111で求めたパラメータ集合Θに基づいて算出される目的関数の値が収束したか否かを判定する。目的関数の値が収束していない場合には、ステップS111へ戻って、上記ステップS111の処理を繰り返す。一方、目的関数の値が収束したと判定された場合には、ステップS113において、書き込み部33によって、最終的に推定されたパラメータ集合Θを、パラメータ集合記憶部23に格納し、上記ステップS102の処理を終了する。次に、図2のステップS103で、出力予測部41によって、上記ステップS102で推定されたパラメータ集合Θを用いて、上記15式に従って、予測対象の入力データに対する出力データを予測する。また、書き込み部42は、予測した出力データを、記憶部20に書き込み、処理を終了する。以上説明したように、本発明の実施の形態に係る入出力モデル推定装置によれば、入力データの各々の潜在変数に関する平均及び共分散行列と出力データの各々の潜在変数に関する平均及び共分散行列とを近似させるように、入力データの各々の潜在変数及び重み変数、並びに出力データの各々の潜在変数及び重み変数を推定することにより、対応付けが未知の入力データ集合及び出力データ集合から、入力データに対する出力データを予測するためのモデルのパラメータを推定することができる。また、入力データと出力データのペアがない場合であっても、予測対象の入力データに対する出力データを予測することができる。<実施例>本発明を評価するため、人工データを用いた実験を行った。人工データは以下の手順で作成した。まず、平均0、共分散行列Iをもつ正規分布から、unの平均をサンプリングする。また、平均0、分散1の正規分布から各要素がサンプリングされた上三角行列Lを、LLTとしたものをunの共分散行列とした。この平均、共分散行列の正規分布からUn1Nを生成した。また、平均0、共分散行列Iの正規分布から、Vi、i12を生成した。そして、入力データ集合Xおよび出力データ集合YをxnmuTnv1mおよびynmuTnv2mにより生成した。ここで、N300、M1300、M2300、K3とした。出力データの正解値ynmと、入力データ集合Xおよび出力データ集合Yから推定し予測した値^uT1n^v2mとの平均二乗誤差を評価指標とする。ベースライン手法として、出力データの各要素のデータの平均1NΣn1Nynmを予測値とする手法を用いた。本発明におけるハイパーパラメータはλ11、λ21、α110102107、β110102107、η1とした。またK12...5と変化させて実験を行った。各Kにおいて最良のハイパーパラメータにおける平均二乗誤差を図4に示す。全Kにおいてベースラインよりも誤差が低く、本発明で提案した手法が有効であることが分かった。またデータ生成に用いたK3のときに最も誤差が低くなっている。また、αを変化させたときの平均二乗誤差を図5に示す。ここでK3、β102とした。また、βを変化させたときの平均二乗誤差を図6に示す。ここでK3、β106とした。平均および共分散行列に関する近似の重みが低すぎる場合α1、β1、誤差が大きく、予測に関してこれらの近似の重要性が示唆される。また、平均および共分散行列に関する近似の重みが高すぎる場合α107、β107誤差が大きく、これは、相対的に、上記式、式の近似の重みが低くなるため、悪くなると考えられる。本発明は、上記実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。例えば、入力データもしくは出力データの一部の要素が欠損している場合に、目的関数から、該当する入力データ又は出力データにおける欠損部分に関する近似を取り除くようにしてもよい。これにより、欠損データに対応することができる。また、U1U2が同じ平均、共分散行列を持つある正規分布から生成されると仮定し、ベイズ推定によりパラメータ集合を推定するようにしてもよい。この際、参考文献RuslanSalakhutdinovAndriyMnihBayesianProbabilisticMatrixFactorizationusingMarkovChainMonteCarloInternationalConferenceonMachineLearning2008に記載されているマルコフ連鎖モンテカルロ法や、変分ベイズ法を用いることができる。また、入力データ、出力データが非負であることが分かっている場合、非負行列分解法と同じように、パラメータに非負制約を入れて、パラメータ集合を推定することもできる。また、入力データ、出力データが連続値ではなく離散値である場合には、最小二乗ではなく、参考文献DavidMBleiandJohnLaffertyCorrelatedtopicmodelsAdvancesinNeuralInformationProcessingSystems17CambridgeMA2005に記載されているように、多項分布からの生成を仮定した確率モデルでの、最尤推定もしくは事後確率最大化推定、又はベイズ推定により、パラメータ集合を推定することもできる。また、上記の実施の形態では、入力データと出力データの2つのデータを用いてパラメータ集合を推定する場合を例に説明したが、これに限定されるものではなく、3つ以上のデータを用いて、それらのデータの潜在変数に関する平均及び共分散行列が同じになるようにパラメータ集合を推定するようにしてもよい。また、上述の入出力モデル推定装置は、内部にコンピュータシステムを有しているが、コンピュータシステムは、WWWシステムを利用している場合であれば、ホームページ提供環境あるいは表示環境も含むものとする。また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。"