(57)【要約】【課題】非線形な関係を表現できず、予測値の確からしさを求めることが困難である。【解決手段】ドメインが異なる複数の行列形データを入力する入力手段と、行列形データの行と列の非線形な関係を学習し、入力された複数の行列形データをドメインごとに別々のパラメータでモデル化し、各ドメインのパラメータを、共通のパラメータと誤差項によってモデル化し、ドメイン間の相関関係を誤差項により表現するモデルのパラメータを推定する、パラメータ推定手段と、パラメータ推定手段により推定されたパラメータを用いて、行列形データの欠損値を予測し、予測値の分散を算出する予測手段と、を備える。【選択図】図１
2012194741.tif 000002
【特許請求の範囲】
【請求項１】
ドメインが異なる複数の行列形データを入力する入力手段と、
前記行列形データの行と列の非線形な関係を学習し、入力された前記複数の行列形データをドメインごとに別々のパラメータでモデル化し、各ドメインのパラメータを、共通のパラメータと誤差項によってモデル化し、ドメイン間の相関関係を誤差項により表現するモデルのパラメータを推定する、パラメータ推定手段と、
推定されたパラメータを用いて、前記行列形データの欠損値を予測し、予測値の分散を算出する予測手段と、を備える、行列形データの欠損値予測装置。
【請求項２】
複数の保険者の各加入者の健康診断結果である、検査項目、加入者、検査値から構成される行列形データを保険者別に行列形にしたデータを入力データとして、ユーザの検査項目の欠損した検査値を予測する、請求項１に記載の欠損値予測装置。
【請求項３】
複数の商品のユーザの嗜好情報である、ユーザ、商品、その商品の嗜好度から構成される行列形データを商品のジャンル別に行列形にしたデータを入力データとして、ユーザの嗜好情報が未登録の商品の嗜好度を予測する、請求項１に記載の欠損値予測装置。
【請求項４】
入力されたドメインが異なる複数の行列形データの、該行列形データの行と列の非線形な関係を学習し、前記ドメインが異なる複数の行列形データをドメインごとに別々のパラメータでモデル化し、各ドメインのパラメータを、共通のパラメータと誤差項によってモデル化し、ドメイン間の相関関係を誤差項により表現する特徴を有するモデルのパラメータを推定し、
推定されたパラメータを用いて、行列形データの欠損値を予測し、予測値の分散を算出する、行列形データの欠損値予測装置の欠損値予測方法。
【請求項５】
複数の保険者の各加入者の健康診断結果である、検査項目、加入者、検査値から構成される行列形データを保険者別に行列形にしたデータを入力データとして、ユーザの検査項目の欠損した検査値を予測する、請求項４に記載の欠損値予測方法。
【請求項６】
複数の商品のユーザの嗜好情報である、ユーザ、商品、その商品の嗜好度から構成される行列形データを商品のジャンル別に行列形にしたデータを入力データとして、ユーザの嗜好情報が未登録の商品の嗜好度を予測する、請求項４に記載の欠損値予測方法。
【請求項７】
行列形データの欠損値予測装置として機能させるコンピュータに、
入力されたドメインが異なる複数の行列形データの、該行列形データの行と列の非線形な関係を学習し、前記ドメインが異なる複数の行列形データをドメインごとに別々のパラメータでモデル化し、各ドメインのパラメータを、共通のパラメータと誤差項によってモデル化し、ドメイン間の相関関係を誤差項により表現する特徴を有するモデルのパラメータを推定する手順と、
推定されたパラメータを用いて、行列形データの欠損値を予測し、予測値の分散を算出する手順と、
を実行させることを特徴とするコンピュータプログラム。
【請求項８】
複数の保険者の各加入者の健康診断結果である、検査項目、加入者、検査値から構成される行列形データを保険者別に行列形にしたデータを入力データとして、ユーザの検査項目の欠損した検査値を予測する、請求項７に記載のコンピュータプログラム。
【請求項９】
複数の商品のユーザの嗜好情報である、ユーザ、商品、その商品の嗜好度から構成される行列形データを商品のジャンル別に行列形にしたデータを入力データとして、ユーザの嗜好情報が未登録の商品の嗜好度を予測する、請求項７に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、行列形データの欠損値予測装置、欠損値予測計算方法および欠損値予測プログラムに係わり、特に、ドメインが異なる複数の行列形データの欠損値を予測し、予測値の分散を算出する、行列形データの欠損値予測装置、欠損値予測計算方法および欠損値予測プログラムに関する。
【背景技術】
【０００２】
行列形データの欠損値予測は、顧客への商品の推薦や健康診断データの欠損値予測に応用することができる。
【０００３】
商品の推薦への応答では、ユーザ、商品、ユーザの商品に対する点数（嗜好情報）を複数入力して、ユーザが点数がつけていない商品の点数を予測する。予測した点数が高ければ、ユーザがその商品が好きであるとして、その商品を推薦する。この場合、ユーザがまだ点数をつけていない商品の点数が欠損値である。
【０００４】
健康診断データへの応用では、ユーザに保健指導をするかしないかを複数の検査項目の検査値を基準に決めるため、一部の検査項目に欠損値があると、欠損値があるユーザには保健指導をするかしないか決められない。この場合に、検査項目、ユーザ、ユーザの各検査項目の検査値を複数入力して、欠損した検査値を予測する。
【０００５】
商品の推薦での行列形データは、各行が各ユーザを表し、各列が各商品を表す。健康診断データの欠損値予測の行列形データは、各行が検査項目を表し、各列が各ユーザを表す。
【０００６】
行列形データの欠損値予測技術の従来技術の例として、非特許文献１、２に記載されている欠損値予測技術がある。
【０００７】
例えば推薦技術への応用の場合、全ユーザと全商品を１つの行列形データで表現して、データを学習し、欠損値を予測する技術である。
【０００８】
近年では、ドメインの異なる複数の行列形データを同時に学習することで、予測精度の向上を図る技術が開発されている。
【０００９】
欠損値予測技術の他の例が、非特許文献３に記載されている。非特許文献３の技術は、非特許文献１、２とは異なり、全データを１つの行列形データとして扱わず、ドメインごとに行列形データを作成して、複数の行列形データを同時に学習し、ドメイン間の相関関係を考慮して、欠損値を予測する技術である。
【００１０】
商品推薦への応用の場合、行列形データの行を表す商品は、ドメインに分かれる。
【００１１】
例えば、商品が映画の場合は、ドメインは映画のジャンルを表し、ジャンルとして、Thriller、Action、Comedy、Romanceなどがある。
【００１２】
行がThrillerのジャンルの映画を表し、列がユーザを表す行列形データと、行がActionのジャンルの映画を表し、列がユーザを表す行列形データ、Comedy、Romanceのジャンルの映画についても同様の行列形データを作成し各ジャンルの行列形データを同時に学習し、予測する。
【００１３】
例えば、全ユーザの傾向として、Actionの映画に高い点数をつけた場合には、Thrillerのジャンルの映画にも高い点数をつける場合は、Thrillerのジャンルの映画の点数を予測する際に、予測するユーザのActionの映画に何点を付けているかを考慮して、予測する。
【００１４】
健康診断データのユーザの場合は、ドメインは、ユーザが加入する保険者を表し、保険者ごとに行列形データを作成して、複数の行列形データを同時に学習することにより、ある保険者に加入するユーザの検査値を予測する際に、他の保険者に加入するユーザの検査値を考慮して、予測することにより、予測精度が向上することが期待できる。
【００１５】
また、同時に学習することで、各ドメイン間の相関関係を観察することができる。
【００１６】
例えば、健康診断データへの応用、保険者は他の保険者と相関が強いか、弱いか知りたい。
【００１７】
相関があるということは、データの傾向が似ているということなので、相関が強い保険者間では、データを共有したり、分析結果を参考にできる。
【００１８】
どの保険者のデータを参考にできるか選ぶ基準として、相関が使える。
【００１９】
例えば、国保は４０〜５０才代が少なく、健保は６０以上が少ない。
【００２０】
国保と健保の相関が強い場合、国保の４０〜５０代の傾向を知るのに、健保の４０〜５０才代の傾向を参考にできる。
【００２１】
また、国保の４０〜５０才代の欠損値を予測するのに、健保の同年代のデータが予測に有用である可能性が高い。
【００２２】
特許文献１には、コンテンツ提示装置及びコンテンツ提示方法の記載があり、コンテンツを選択した利用者に関連付けられている属性を抽出し、抽出した属性を有する利用者の集合であるコミュニティを形成し、利用者の所属するコミュニィティに基づいてコンテンツを提示することの記載がある（段落００６８、００８１、０１１８等）。
【００２３】
特許文献２には、利用者対象推薦装置、利用者対象推薦方法およびプログラムの記載があり、複数の利用者が複数の利用対象のそれぞれを評価した評価値を、利用者および利用対象に対応づけて読出し、読みだされた評価値のなかで欠損している評価値を、利用者および利用対象を行及び列とした評価値の行列の特異値分解を用いて推定し、この推定値に基づいて、複数の利用対象のうち利用者へ推薦する利用対象を選択し、推定値の算出は行列の特異値単位の縮小推定により行うことの記載がある（段落０００９−００１２、００１７、００３４等）。
【００２４】
特許文献３には、予測装置の記載があり、未知の予測データを行列の欠落要素として持つように過去の履歴データおよび予測データを行列形式で構成し、構成されたデータ行列を特異値分解して行列の未知の予測データを表す欠陥要素を推定することにより予測データを出力することの記載がある（段落００４３、００７５）。
【００２５】
特許文献４には、易罹患性解析方法とソフトウェアの記載があり、疾患の判定に用いられる検査項目で煩雑に検査困難な要因を、被験者が測定可能な項目から推定し、その推定結果を用いて易罹患性を推定することの記載があり、また易罹患性は集団の分布をクラスタリングし、そのクラスタリングノード別に集計を行い、易罹患性を予め求め、その分布を事前確立分布として実際に得られた検査結果を前提条件として被験者の易罹患性の事後確立分布を推定することの記載がある（段落０００９、００１３）。
【先行技術文献】
【特許文献】
【００２６】
【特許文献１】特開２００７−０５２５６１号公報
【特許文献２】特開２０１０−０６１５１３号公報
【特許文献３】特開２００５−１２８８０８号公報
【特許文献４】特開２００４−３０５６７４号公報
【非特許文献】
【００２７】
【非特許文献１】筆者 Salakhutdinov, Ruslan and Mnih, Andriy,刊行物の題名  Probabilistic Matrix Factorization, NIPS          発行年月日 2007
【非特許文献２】筆者 Lawrence, Neil D. and Urtasun刊行物の題名Non-linear Matrix Factorization with Gaussian Processes, ICML          発行年月日 2009
【非特許文献３】筆者 Zhang, Cao and Yeung          刊行物の題名 Multi-Domain Collaborative Filtering ,UAI2010          発行年月日 2010
【発明の概要】
【発明が解決しようとする課題】
【００２８】
上記非特許文献３に開示された技術を例に、課題について説明する。
【００２９】
第１の問題点は、線形なモデルという点である。
【００３０】
行列形データの行と列の非線形な関係をモデル化できず、線形な関係のみをモデル化する。
【００３１】
例えば、商品推薦への応用の場合、従来技術ではユーザと商品の線形の関係を表現することはできるが、非線形な関係を表現できない。
【００３２】
線形では表すことができない複雑な関係をモデル化することができれば、予測精度の向上が期待できる。
【００３３】
第２の問題点は、従来手法は、予測値の確からしさを求めることが困難という点である。予測した結果がどのくらい信頼できるかを定量的に表すことは、実用上重要である。
【００３４】
例えば、商品推薦への応用の場合は、予測した商品の点数が高くても、信頼度合いが低ければ、そのユーザに推薦せず、予測した点数が高くて、かつ、信頼度合いが高い商品のみを推薦することができる。
【００３５】
実用上は、ユーザに推薦する商品の個数にも制限があるため、予測値の確からしさを求めることができれば、信頼度合いが高い順に商品を推薦するなどもできるようになる。
［発明の目的］
本発明の典型的な第１の目的は、行列形データの行と列の非線形な関係をモデル化することである。
【００３６】
例えば、商品推薦への応用の場合は、ユーザと商品の線形では表すことができない複雑な関係を非線形モデルで表現することで、予測精度の向上が期待できる。
【００３７】
本発明の典型的な第２の目的は、予測値の信頼度を出力することである。
【００３８】
本発明の典型的な予測した結果がどのくらい信頼できる結果なのかを定量的に表す。
【００３９】
第３の目的は、ドメイン間の相関を求めることである。
【００４０】
非線形モデルに拡張したモデルにおいても、ドメイン間の相関を求める。
【課題を解決するための手段】
【００４１】
本発明に係わる行列形データの欠損値予測装置は、ドメインが異なる複数の行列形データを入力する入力手段と、
前記行列形データの行と列の非線形な関係を学習し、入力された前記複数の行列形データをドメインごとに別々のパラメータでモデル化し、各ドメインのパラメータを、共通のパラメータと誤差項によってモデル化し、ドメイン間の相関関係を誤差項により表現するモデルのパラメータを推定する、パラメータ推定手段と、
推定されたパラメータを用いて、前記行列形データの欠損値を予測し、予測値の分散を算出する予測手段と、を備えることを特徴とする。
【００４２】
本発明に係わる行列形データの欠損値予測装置の欠損値予測方法は、入力されたドメインが異なる複数の行列形データの、該行列形データの行と列の非線形な関係を学習し、前記ドメインが異なる複数の行列形データをドメインごとに別々のパラメータでモデル化し、各ドメインのパラメータを、共通のパラメータと誤差項によってモデル化し、ドメイン間の相関関係を誤差項により表現する特徴を有するモデルのパラメータを推定し、
推定されたパラメータを用いて、行列形データの欠損値を予測し、予測値の分散を算出することを特徴とする。
【００４３】
本発明に係わるプログラムは、行列形データの欠損値予測装置として機能させるコンピュータに、
入力されたドメインが異なる複数の行列形データの、該行列形データの行と列の非線形な関係を学習し、前記ドメインが異なる複数の行列形データをドメインごとに別々のパラメータでモデル化し、各ドメインのパラメータを、共通のパラメータと誤差項によってモデル化し、ドメイン間の相関関係を誤差項により表現する特徴を有するモデルのパラメータを推定する手順と、
推定されたパラメータを用いて、行列形データの欠損値を予測し、予測値の分散を算出する手順と、
を実行させることを特徴とする。
【発明の効果】
【００４４】
本発明に係わる典型的な第１の効果は、予測精度の向上である。行列形データの行と列の線形な関係だけでなく、非線形な関係をもモデル化することで、予測精度が向上する。
【００４５】
本発明に係わる典型的な第２の効果は、予測値の信頼度として予測値の分散を算出し、出力することである。適用する非線形モデルは事後分布が求まるため、予測値の分散が算出できる。
【００４６】
本発明に係わる典型的な第３の効果は、計算量の削減である。非線形に拡張したモデルによって、素朴にドメイン間の相関を計算すると、計算量が膨大になるため、実用困難である。入力された複数の行列形データをドメインごとに別々のパラメータでモデル化し、各ドメインのパラメータを共通のパラメータと誤差項によってモデル化し、ドメイン間の相関関係を誤差項によって表現することで計算量を削減できる。
【図面の簡単な説明】
【００４７】
【図１】本発明に係わる第１の実施の形態のブロック図である。
【図２】本発明に係わる第１の実施の形態のフローチャートである。
【図３】本発明に係わる第２の実施の形態の入力データの例である。
【図４】本発明に係わる第３の実施の形態の入力データの例である。
【図５】本発明に係わる第３の実施の形態の分散共分散の例である。
【図６】本発明に係わるプログラムにより欠損値予測装置として動作するコンピュータの一例を示す図である。
【発明を実施するための形態】
【００４８】
次に、本発明の典型的な実施の形態について図面を参照して詳細に説明する。
（第１の実施形態）
図１は、本発明の一実施形態に係わる欠損値予測装置の構成図である。
【００４９】
本実施形態の欠損値予測装置１０１の構成は、入力部１０２、パラメータ推定部１０３、欠損値予測部１０４、出力部１０５を備える。
【００５０】
入力部１０２は、ドメインが異なる複数の行列形データを入力する。パラメータ推定部１０３は、モデルのパラメータを推定する。欠損値予測部１０４は、入力された行列形データの欠損値を予測する。出力部１０５は、予測した欠損値を出力する。入力部１０２はキーボードやネットワークと通信を行う受信部等で構成され、出力部１０５は液晶ディスプレイ等の表示装置やネットワークと通信を行う送信部等で構成される。
【００５１】
次に、上記構成例の動作について説明する。図２に、動作のフローチャートを示す。
（１）ステップＳ２０１
入力部１０２に、ドメインが異なる複数の行列形データを入力する。
【００５２】
ドメインdの行列形データをY_dとする。ドメイン数をDとすると、入力データはY_d{d=1,2,..,D}である。行列形データY_dは、N×M_d次元の行列とする。行数を表すNは、ドメインで共通であり、列数を表すM_dは、ドメインごとに異なる。
（２）ステップＳ２０２
パラメータ推定部１０３では、モデルのパラメータを推定する。欠損値を含むドメインdの行列形データY_dを数１で示す。なお、「＾」はべき乗を示し、{i,:}^{T}は{i,:}{T}を示す。
[数１]
Y_d_{i,:}  = W_d X_d_{i,:}^{T}  + ε
Y_d  = N × M_d  行列   ：入力データ
X_d  =   N × q  行列   ： 低次元行列データ
W_d  =   M_d ×q  行列    ：低次元行列データ
N：Y_dの行数
M_d：Y_dの列数
q：X_d、W_dの次元数
qは、ドメインで共通とする。
{i,:}は、行列のi行の全列を縦ベクトルにしたものを表す。
ここで、
ε 〜  N(0, σ_d I_(M_d) )
I_(M_d)  = M_d × M_d  行列 ：単位行列
σ_dは、正規分布の分散を表す。
行列形データY_dを数２で表す。
[数２]
P(Y_d | X_d、σ_d)＝ II^{M_d}_{i=1}  N (Y_d_{:,i} | X_d X_d^{T}, σ_d^{2} I_N)
ここで、N()は多次元正規分布を表す。
推定するパラメータはX_dとσ_dである。
数１は、非特許文献２に記載のモデルと同じである。
数２のX_d X_d^{T}をマーセルカーネルKとすると、数２は非線形モデルとなる。
マーセルカーネルKの例として、
K(i,j)= exp(-1/2*γ* ( x(i,j)-x(j,i) )^2  ) , i=1,2,…,N ; j=1,2,…,N
とする。
γは、RBFカーネルのパラメータである。
【００５３】
次に、ドメインごとに推定するパラメータであるX_dを行列Xとしてまとめる（数３）。
[数３]
X=[ X_1 , X_2 , .., X_D ]
ここで、X= N × Dq 行列となる。
D：ドメイン数を表す
次に、上記Xからi行目を抽出したベクトルを、X_i:とする。
X_i:は、Dq ×  1  ベクトルである。本技術では、X_i:を数４で表す。
[数４]
X_i: = f(X’_i) + e 
ここで、
X’は、N×q’全てのドメインに共通の低次元行列とする。
X’_i は、X’のi行列目から抽出する q’×  1ベクトルである。
q’は、X’行列の次元を表す。事前に与えられるとする。
f()はX’_iの関数とする。
ここで、
e 〜  N(0, Σ_Dq)
eは誤差項であり、 Dq ×1  ベクトルである。
eの分散共分散行列は、Dq×Dq行列であり、各ドメインの各次元間の相関を表す。
数４は、X_i:が、f(X’_i)と誤差項の和で表現することを示している。
【００５４】
本技術は、各ドメインのパラメータを１つの行列Xにまとめ、それを共通のパラメータX’と誤差項eによってモデル化し、ドメイン間の相関関係を誤差項の分散共分散行列Σ_Dqで表現する特徴を有する。
【００５５】
数４は、誤差項eがDq間で独立ではなく、相関があると仮定しているため、X_i:は、Dq間で独立ではない。
【００５６】
素朴にDq間の相関関係を観察する場合は、数２と同様に、
p( vec(X) | vec(X’)、β) ＝ N( vec(X) | 0 , vec(X’)vec(X’)^{T} +  βI_DqN )
とすることにより、
「vec(X’)vec(X’)^{T} +  βI_DqN」によって、DqN次元間の相関が求まるが、DqNは、次元が大きすぎるため、計算量が膨大になるため、実用困難である。ここで、N()は多次元正規分布を表す。vec(X)は行列Xの各列要素（例えば、i列目の場合X_(:,i)と表す）を縦に並べたベクトル[X_(:,1)^{T},X_(:,2)^{T}, …, X_(:,Dq)^{T} ]^{T}であり、サイズがDqN×１のベクトルである。Tは、転置を表す。また、vec(X’)は行列X’の各列要素を縦に並べたベクトル[X’_(:,1)^{T},X’_(:,2)^{T}, …, X’_(:,Dq)^{T} ]^{T}である。
【００５７】
計算量を削減しつつ、ドメイン間の相関関係を表現するために、変数変換により、ドメイン間の相関関係を表す誤差をX’から取り除き、X’はDq間で無相関化する。
【００５８】
まず、eの分散共分散行列Cov（e）= Σ_Dq は、コレスキー分解によって、
cov(e) =  L L^{T}
となる。Lは、Dq×Dqの下三角行列である。
【００５９】
この結果、e = Le*となる。 
ここで、
e* 〜  N(0, I_Dq )とする。
e* = Dq × 1  ベクトルであり、I_Dq = Dq ×  Dq   の単位行列である。
e*の分散協分散行列は、
cov(e*)=I_Dqであり、無相関とする。
上記を用いると、数４は数５と表すことができる。
[数５]
X_i: = f(X’_i:) + e 
= f(X’_i:) + Le*
次に、数５の両辺に、Lの逆行列L^{-1}をかけると、
[数６]
L^{-1}X_(i:)  =  L^{-1}f( X’_(i:)) + e* 
となる。
【００６０】
次に、新たな変数として、数７によりX^{I}_(i:)を定義する。
[数７]
X^{I}_(i:)  = L^{-1}f(X’_(i:)) + e* 
ドメイン間の相関を表す誤差項であるeはドメイン間の相関を消したe*となり、X^{I}_(i:)は、Dq間では無相関となる。X^{I}は、Xと同じサイズの行列である。
【００６１】
次に、数５と数７より、
[数８]
X_i:  = L X^{I}_i:
となる。数８は、Dq間で無相関のX^{I}_i:とDq間の相関関係が入るX_iの関係を表す。
【００６２】
行列Xをvec(X)とすると、ドメイン間に共通の低次元ベクトルvec(X’)は次式で表される。
[数９]
p( vec(X) | vec(X’)) ＝  ( L_{Dq} ×  I_{N} ) p( vec(X^{I}) | vec(X’) ) 
数９のp( vec(X_{I}) | vec(X’) ) は、Dq間で独立であり、数１０と表すことができる。
2012194741.tif 000003
[数１０]
p( X^{I} | X’  , β) =  II^{Dq}_{i=0}  p( X^I_(:,i) | X’ , βI_N)
=  II^{Dq}_{i=0}  N( X^I_(:,i) | 0, X’ X’^{T} , βI_N)
ここで、βはN()のパラメータ（分散）を表す。
【００６３】
II^{N}としてNに独立にモデル化しない素朴な方法では、数１０のX’ X’^{T}=N×Nの分散共分散行列を計算する代わりに、DqN×DqNの分散共分散行列を計算することになるため、計算量が膨大になり、実用上計算困難になる。
【００６４】
推定するパラメータは、[X_1,X_2,…,X_d,…,X_D], L , X’, [σ_1, σ_2,…, σ_d,…, σ_D] 、βである。q、q`は、あらかじめ入力されるパラメータとする。
【００６５】
推定したLを用いると、数１１によりドメイン間の相関を表す、分散共分散行列が求まる。
[数１１]
e =  L L^{T} = Σ
Σは、分散共分散行列であり、Dq×Dqの大きさの行列である。
この行列がドメイン間の相関関係を表す。
【００６６】
分散共分散行列Dq×DqをD×Dに圧縮した例を図５に示す。
（３）ステップＳ２０３
欠陥予測部１０４において、欠損値を予測する。
ドメインdの、j行目、l列目の値を予測する場合、
[数１３]
μ_d,j,l   =   ( K_d,index_l: , index_l : + σ_d^{2} I)^{-1} K_d,index_l,j  y_d,index_l, l
index_l: は、l列目の中で値がある（欠損していない）行番号のインデックスの集合を表す。
[数１４]
ξ_d,j,l  =   K_d,j,j + σ_d^{2} - K_d,index_l, j^{T} ( K_d,j:,j: + σ_d^{2} I)^{-1} K_d,index_l,j
数１３は予測値であり、数１４は分散を表す。
（４）ステップＳ２０４
出力部１０５は、入力した複数の行列形データに含まれる各欠損値の予測値μとその信頼度を表すξをそれぞれ出力する。
（第２の実施形態）
本発明の第２の実施の形態は、健康診断データの欠損値予測である。
【００６７】
複数の保険者｛d=1,..,D｝の各加入者｛M_1,M_2,…,M_D｝の健康診断結果として、検査項目{1,2,..,N}、加入者、検査値から構成される行列形データを保険者別に行列形にしたデータを入力データとして、ユーザの検査項目の欠損した検査値を予測する。
【００６８】
図３に入力データ例を示す。例えば、加入者に保健指導をするかしないかを、複数の検査項目の検査値を基準に決めるため、一部の検査項目に欠損値があると、欠損値がある加入者には保健指導をするかしないか決められないことから、欠損値を予測した補間することで、欠損値がある加入者に対しても保健指導をするかしないか決めることができる。
（第３の実施形態）
本発明の第３の実施の形態は、商品推薦技術である。
【００６９】
複数の商品のユーザの嗜好情報として、ユーザ、商品、その商品の嗜好度から構成される行列形データを商品のジャンル別｛d=1,..,D｝に行列形にしたデータを入力データとして、ユーザがまだ点数がつけられていない商品の嗜好度を予測する。
【００７０】
予測した点数が高ければ、ユーザがその商品を好きであるとして、その商品を推薦する。
【００７１】
図４に行列形データの例を示す。  図４では、Thriller、Action、Romanceのジャンルを例にした。
【００７２】
分散共分散行列Dq×DqをD×Dに圧縮した例を図５に示す。ジャンル間の相関関係が観察できる。
【００７３】
例えば、図５の（１、２）要素は、ThrillerとActionの相関を表す。（１、３）要素は、ThrillerとRomanceの相関を表す。図５では、ThrillerとActionの相関は、ThrillerとRomanceの相関よりも高いことがわかる。
【００７４】
本実施形態の行列形データの欠損値予測装置はハードウェアで構成されるが、図１に示す構成部の全部又は一部をコンピュータを用いてソフトウェアで実現することもできる。図６は本発明に係わるプログラムにより欠損値予測装置として動作するコンピュータの一例を示す図である。
【００７５】
コンピュータをＣＰＵ３０４、ハードディスク等のディスク装置（ＲＯＭ等の記憶手段であってもよい）３０５、キーボード等の入力部３０１、ＲＡＭ等のメモリ３０３、液晶ディスプレイ等の表示部３０２で構成し、パラメータ推定部１０３、欠損値予測部１０４の動作をプログラムで記述し、このプログラムをハードディスク等のディスク装置３０５に記憶し、演算に必要な情報をＲＡＭ等のメモリ３０３に記憶し、ＣＰＵ３０４で当該プログラムを動作させることで、本実施形態の欠損値予測装置の機能をプログラムで実現することができる。当該プログラムは、ＤＶＤ、ＣＤ−ＲＯＭ、ＵＳＢメモリ等のコンピュータ読み取り可能な記録媒体に記録し、ハードディスクにインストールすることで、コンピュータに読み込むことができる。
【００７６】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下の構成には限られない。
（付記１）
ドメインが異なる複数の行列形データを入力する入力手段と、
前記行列形データの行と列の非線形な関係を学習し、入力された前記複数の行列形データをドメインごとに別々のパラメータでモデル化し、各ドメインのパラメータを、共通のパラメータと誤差項によってモデル化し、ドメイン間の相関関係を誤差項により表現するモデルのパラメータを推定する、パラメータ推定手段と、
推定されたパラメータを用いて、前記行列形データの欠損値を予測し、予測値の分散を算出する予測手段と、を備える、行列形データの欠損値予測装置。
（付記２）
複数の保険者の各加入者の健康診断結果である、検査項目、加入者、検査値から構成される行列形データを保険者別に行列形にしたデータを入力データとして、ユーザの検査項目の欠損した検査値を予測する、付記１に記載の欠損値予測装置。
（付記３）
複数の商品のユーザの嗜好情報である、ユーザ、商品、その商品の嗜好度から構成される行列形データを商品のジャンル別に行列形にしたデータを入力データとして、ユーザの嗜好情報が未登録の商品の嗜好度を予測する、付記１に記載の欠損値予測装置。
（付記４）
入力されたドメインが異なる複数の行列形データの、該行列形データの行と列の非線形な関係を学習し、前記ドメインが異なる複数の行列形データをドメインごとに別々のパラメータでモデル化し、各ドメインのパラメータを、共通のパラメータと誤差項によってモデル化し、ドメイン間の相関関係を誤差項により表現する特徴を有するモデルのパラメータを推定し、
推定されたパラメータを用いて、行列形データの欠損値を予測し、予測値の分散を算出する、行列形データの欠損値予測装置の欠損値予測方法。
（付記５）
複数の保険者の各加入者の健康診断結果である、検査項目、加入者、検査値から構成される行列形データを保険者別に行列形にしたデータを入力データとして、ユーザの検査項目の欠損した検査値を予測する、付記４に記載の欠損値予測方法。
（付記６）
複数の商品のユーザの嗜好情報である、ユーザ、商品、その商品の嗜好度から構成される行列形データを商品のジャンル別に行列形にしたデータを入力データとして、ユーザの嗜好情報が未登録の商品の嗜好度を予測する、付記４に記載の欠損値予測方法。
（付記７）
行列形データの欠損値予測装置として機能させるコンピュータに、
入力されたドメインが異なる複数の行列形データの、該行列形データの行と列の非線形な関係を学習し、前記ドメインが異なる複数の行列形データをドメインごとに別々のパラメータでモデル化し、各ドメインのパラメータを、共通のパラメータと誤差項によってモデル化し、ドメイン間の相関関係を誤差項により表現する特徴を有するモデルのパラメータを推定する手順と、
推定されたパラメータを用いて、行列形データの欠損値を予測し、予測値の分散を算出する手順と、
を実行させることを特徴とするコンピュータプログラム。
（付記８）
複数の保険者の各加入者の健康診断結果である、検査項目、加入者、検査値から構成される行列形データを保険者別に行列形にしたデータを入力データとして、ユーザの検査項目の欠損した検査値を予測する、付記７に記載のコンピュータプログラム。
（付記９）
複数の商品のユーザの嗜好情報である、ユーザ、商品、その商品の嗜好度から構成される行列形データを商品のジャンル別に行列形にしたデータを入力データとして、ユーザの嗜好情報が未登録の商品の嗜好度を予測する、付記７に記載のコンピュータプログラム。
【産業上の利用可能性】
【００７７】
本発明は、ドメインが異なる複数の行列形データの欠損値を予測し、予測値の分散を算出する、行列形データの欠損値予測装置、欠損値予測計算方法および欠損値予測プログラムに用いることができ、顧客への商品の推薦や健康診断データの欠損値予測に応用することができる。
【符号の説明】
【００７８】
１０１  欠損値予測装置
１０２  入力部
１０３  パラメータ推定部
１０４  欠損値予測部
１０５  出力部
【図１】
2012194741.tif 000004
【図２】
2012194741.tif 000005
【図３】
2012194741.tif 000006
【図４】
2012194741.tif 000007
【図５】
2012194741.tif 000008
【図６】
2012194741.tif 000009