(57)【特許請求の範囲】
【請求項１】
バグオブワードの形で与えられた一連の対象者の一連の年代における健康状態データを、対象者及び年代ごとの個別データの集まりとして潜在トピック分析によりクラスタリングを行うと共に、当該クラスタリング結果の各クラスタ間の遷移確率を計算するクラスタリング部と、
前記クラスタリング部が出力したクラスタリング結果における個別データのトピック比率に基づいて、似ていると判定される個別データ同士の間にリンク構造を設定するリンク追加部と、を備え、
前記クラスタリング部及び前記リンク追加部は相互に繰り返し処理を行い、繰り返しの各I回目の処理にて前記クラスタリングが出力したクラスタリング結果に対して、前記リンク追加部がリンク構造を設定して追加したものが、繰り返しの次のI+1回目の処理における前記クラスタリング部におけるクラスタリング対象の入力として用いられ、
当該繰り返し処理の各回で得られるクラスタリング結果における各クラスタ及び各クラスタ間の遷移確率を健康遷移モデルとして出力することを特徴とする予測モデル構築装置。
【請求項２】
前記クラスタリング部では、繰り返し処理の各回において関係トピックモデルによりクラスタリングを行い、繰り返し処理の初回においては前記個別データのうち同一の対象者で年代が隣接するものの間にリンク構造を設定したうえでクラスタリングを行い、繰り返し処理の２回目以降においては繰り返し処理の各回において前記リンク追加部によってさらに追加されたリンク構造の設定のもとでクラスタリングを行うことを特徴とする請求項１に記載の予測モデル構築装置。
【請求項３】
前記クラスタリング部では、繰り返し処理の初回においては前記個別データ間にリンク構造を設定することなく潜在的ディリクレ配分法によりクラスタリングを行い、繰り返し処理の２回目以降においては繰り返し処理の各回において前記リンク追加部によってさらに追加されたリンク構造の設定のもとで関係トピックモデルによりクラスタリングを行うことを特徴とする請求項１に記載の予測モデル構築装置。
【請求項４】
前記クラスタリング部では、繰り返し処理の各回の進行に伴い、クラスタリングの結果として得られるクラスタ分割数が減少するような所定クラスタ分割数の設定のもとで、前記クラスタリングを行うことを特徴とする請求項１ないし３のいずれかに記載の予測モデル構築装置。
【請求項５】
前記クラスタリング部では、繰り返し処理の各回において、クラスタ分割数の所定候補のそれぞれにおいてクラスタリングを行い、当該行った結果の各クラスタにおいて個別データが所定基準に該当するか否かをカウントしたクロス集計表を作成し、当該クロス集計表に基づいて赤池情報量基準を算出することにより、前記クラスタ分割数の所定候補の中から最適分割数を決定し、当該最適分割数におけるクラスタリング結果を繰り返し処理の各回における出力となすことを特徴とする請求項１ないし３のいずれかに記載の予測モデル構築装置。
【請求項６】
前記クロス集計表を作成する際の前記所定基準が、
各クラスタ内の個別データにおいて、同一対象者の現年代のデータに対して次の年代のデータが現年代と同一クラスタに属しているか否かという基準である、または、
各クラスタ内の個別データにおいて、予め与えられている当該個別データにおける対象者の当該年代における医療費が高いと判定されるか否かという基準である、ことを特徴とする請求項５に記載の予測モデル構築装置。
【請求項７】
前記クラスタリング部が繰り返し処理の各回において出力したクラスタ及び遷移確率のうち、いずれの回のものを健康遷移モデルとして利用するかと、バグオブワードの形での予測対象者の健康状態データと、当該予測対象者の現在年代と、当該予測対象者の予測対象未来年代と、の指定をユーザより受け付け、
当該指定された健康遷移モデル上で、当該指定された予測対象者の健康状態の、当該指定された現在年代から当該指定された予測対象未来年代に至るまでの遷移を予測する予測部をさらに備えることを特徴とする請求項１ないし６のいずれかに記載の予測モデル構築装置。
【請求項８】
前記予測部は、前記指定された健康遷移モデルにおいて与えられているクラスタ及び当該クラスタ間の遷移確率に対して、ビタビアルゴリズムを適用することにより、最大確率を与える経路として前記遷移を予測することを特徴とする請求項７に記載の予測モデル構築装置。
【請求項９】
前記クラスタリング部が繰り返し処理の各回において出力したクラスタ及び遷移確率のうち、いずれの回のものを健康遷移モデルとして利用するかと、バグオブワードの形での予測対象者の健康状態データと、当該予測対象者の現在年代と、当該予測対象者の予測対象未来年代と、の指定をユーザより受け付け、
前記指定された予測対象者の健康状態データを、前記指定された健康遷移モデルにおける各クラスタの所属確率へと変換し、当該所属確率に対して予め機械学習された関係式を適用することで、当該指定された予測対象者の当該指定された予測対象未来年代における医療費を予測する予測部をさらに備えることを特徴とする請求項１ないし６のいずれかに記載の予測モデル構築装置。
【請求項１０】
前記予測部は、前記クラスタリング部が繰り返し処理の回数がより少ない方の回において出力したクラスタ及び遷移確率を、より短期予測のための健康遷移モデルとして利用し、前記クラスタリング部が繰り返し処理の回数がより多い方の回において出力したクラスタ及び遷移確率を、より長期予測のための健康遷移モデルとして利用することを特徴とする請求項７ないし９のいずれかに記載の予測モデル構築装置。
【請求項１１】
前記リンク追加部では、リンク構造を設定する対象を、
年代が低い側から高い側へと限定して、
個別データの対象者及び年代における医療費によって予め設定されたグループ内部に限定して、
個別データの対象者及び年代における医療費によって予め設定されたグループ間において、医療費が低い側のグループから高い側へのグループへと限定して、または、
各個別データについて、自身をリンク元とするリンク構造は１つのみに限定して、且つ、他の対象者における個別データに向けたものとして限定して、定めることを特徴とする請求項１ないし１０のいずれかに記載の予測モデル構築装置。
【請求項１２】
前記リンク追加部では、個別データの間の距離を、そのトピック比率間のユークリッド距離、アダマール積、カルバック・ライブラー情報量、重み付きユークリッド距離又は重み付きアダマール積として求め、当該距離が小さいと判定される個別データ同士を、前記似ていると判定することを特徴とする請求項１ないし１１のいずれかに記載の予測モデル構築装置。
【請求項１３】
前記リンク追加部では、個別データ間の距離を、そのトピック比率間の重み付きユークリッド距離又は重み付きアダマール積として求め、当該距離が小さいと判定される個別データ同士を、前記似ていると判定し、
当該距離を前記重み付きユークリッド距離又は重み付きアダマール積として計算するための重みとして、前記クラスタリング結果の各クラスタ及び各クラスタ間の遷移確率に基づいて当該各クラスタに対してさらにネットワーククラスタリングを適用して得られる、１以上のクラスタからなるコミュニティにおける自己遷移確率に基づく重みを利用することを特徴とする請求項１ないし１１のいずれかに記載の予測モデル構築装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力となる医療データに欠損がある場合であっても、長期予想にも利用可能な健康状態の推移モデルを出力することのできる、予測モデル構築装置に関する。
【背景技術】
【０００２】
特許文献１や特許文献２に代表されるように、健康管理システム等が大きな広がりを見せている。このような健康管理システムでは、利用者に対して健康上のアドバイス等を行う場合が多いが、特許文献３に示すように、利用者を実際の健康データを元に分類した上でアドバイスを行った方が、より行動変容につながりやすい。
【０００３】
上記のように、健康データ・医療データに基づいて、対象者をクラスタリングしたい場合があり、その目的に応じた適切なクラスタリングが行われることが望まれる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2013-085626号公報
【特許文献２】特開2010-264088号公報
【特許文献３】特開2010-170534号公報
【非特許文献】
【０００５】
【非特許文献１】D. Blei, A. Ng, and M. Jordan. Latent Dirichlet allocation. Journal of Machine Learning Research,3:993-1022, January 2003.
【非特許文献２】Topic Tracking Model: http://ijcai.org/papers09/Papers/IJCAI09-239.pdf
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、近年、Latent dirichlet allocation（潜在的ディリクレ配分法：以下、LDAとする）に代表される高精度な分類手法として潜在トピック分析が注目を浴びている。LDAは非特許文献１に開示されている。また、このLDAを時系列的な影響を加味するように拡張したTopic Tracking Model（トピックトラッキングモデル：以下、TTMとする）なども提案されている。TTMは非特許文献２に開示されている。このTTMを用いれば、長期の時系列的な影響を加味して対象者のクラスタリングが可能であり、長期にわたる変化のモデル等を作成することができる。
【０００７】
しかし一般的に、長期のデータを用意することは難しく、TTMで長期予測モデルを構築しようとしても、欠損が多くなってしまうという問題がある。特に医療データは長期のデータを用意することが難しい。
【０００８】
また、比較的短期的な将来を予測したい場合には、教師あり学習等を用いる場合も多い。しかし、教師あり学習を用いる場合についても、大量のデータ欠損がある場合にはモデルが上手く機能しないことが多い。さらに、教師無し学習では不要である教師データを用意する必要も生じてしまう。
【０００９】
そこでやはり、クラスタリング等の教師無し学習を用いて、比較的短期的な健康状態の推移モデルを生成し、短期的な予測を繰り返すことによって長期的な予測を可能とすることが望まれる。しかしこの場合やはり、前述のデータ欠損のために、特に長期間の遷移予測をすると予測精度が保てなくなるという問題が起こる。
【００１０】
本発明は、上記従来技術の課題に鑑み、データ欠損があっても長期予測に利用が可能な健康状態推移の予測モデルを構築することのできる予測モデル構築装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、本発明は、予測モデル構築装置であって、バグオブワードの形で与えられた一連の対象者の一連の年代における健康状態データを、対象者及び年代ごとの個別データの集まりとして潜在トピック分析によりクラスタリングを行うと共に、当該クラスタリング結果の各クラスタ間の遷移確率を計算するクラスタリング部と、前記クラスタリング部が出力したクラスタリング結果における個別データのトピック比率に基づいて、似ていると判定される個別データ同士の間にリンク構造を設定するリンク追加部と、を備え、前記クラスタリング部及び前記リンク追加部は相互に繰り返し処理を行い、繰り返しの各I回目の処理にて前記クラスタリングが出力したクラスタリング結果に対して、前記リンク追加部がリンク構造を設定して追加したものが、繰り返しの次のI+1回目の処理における前記クラスタリング部におけるクラスタリング対象の入力として用いられ、当該繰り返し処理の各回で得られるクラスタリング結果における各クラスタ及び各クラスタ間の遷移確率を健康遷移モデルとして出力することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、繰り返し処理によりクラスタリングを行いながらリンク構造を追加していくことにより、入力される元の健康状態データに欠損がある場合であっても、長期予測にも対処可能な健康遷移モデルを構築することができる。
【図面の簡単な説明】
【００１３】
【図１】一実施形態に係る予測モデル構築装置の機能ブロック図である。
【図２】入力される全医療データの模式的な例を示す図である。
【図３】クラスタリング部におけるクラスタリング結果及び対応する遷移確率の算出の例を[1]〜[5]と分けて示す図である。
【図４】潜在トピック分析のクラスタリングにおいて得られる行列分解結果を示す図である。
【図５】ネットワーク構造を考慮したクラスタリングの結果の例を示す図である。
【図６】予測モデル及びその適用結果の例を示す図である。
【図７】ポリシーを適用してリンク構造を設定する例を示す図である。
【図８】指定したクラスタ数がmの場合のクロス集計表の例を示す図である。
【図９】医療費予想に適したクラスタ分割数を自動決定するためのクロス集計表の例を示す図である。
【図１０】図８，９等のクロス集計表を一般化した表である。
【図１１】図１０のクロス集計表に対応する従属モデルにおける確率の表である。
【図１２】図１０のクロス集計表に対応する独立モデルにおける確率の表である。
【発明を実施するための形態】
【００１４】
図１は、一実施形態に係る予測モデル構築装置の機能ブロック図である。予測モデル構築装置10は、文書化部1、クラスタリング部2、リンク追加部3、モデル保持部4及び予測部5を備える。ここで、詳細は後述するが、クラスタリング部2及びリンク追加部3は図示するように繰り返し処理部20として機能することができ、矢印線L1,L2で示すように互いの処理結果を参照しながら各自の処理を交互に繰り返すことができる。図１の各部の処理は以下の通りである。
【００１５】
文書化部1では、予測モデル構築装置10によるモデル構築のための入力データとしての全医療データを読み込み、当該全データを構成する各対象者Xの各年代n（年齢n）における文書化された医療データD(X, n)を生成してクラスタリング部2へと出力する。
【００１６】
当該医療データD(X, n)への文書化とは、周知のバグオブワード(bag of words)の形式、すなわち所定の各単語の頻度（出現回数）を要素とする文書ベクトルの形式へ変換することであり、データD(X, n)は対象者Xのn歳時点での健康状態を反映したベクトルとなっている。後段側のクラスタリング部2でのクラスタリングを可能とするための前処理として、当該文書化がなされる。具体的には以下の通りである。
【００１７】
まず、入力される全医療データは、一連の対象者の一連の時期における健康状態を評価したものであり、具体的には例えば健康組合等のもとで実施される健康診断結果や、医師による問診の結果、あるいはレセプト（診療報酬明細書）等やこれらの組み合わせを用いることができる。
【００１８】
あらかじめ、当該医療データに記載されている、あるいは、記載されうることが既知の健康状態を表す所定の複数m個の単語i1, i2, …, imを用意しておき、文書化部1において対象者Xのn歳における医療データのテキストを解析することで、単語i1, i2, …, imの頻度ベクトルとして健康状態を表すベクトルD(X, n)を生成することができる。
【００１９】
例えば、問診データ等における特定の疾病の名称に相当する単語ibが対象者Xのn歳の医療データに存在すれば、ベクトルD(X, n)の当該ibの要素の値を「1」とし、存在しなければ同要素の値を「0」とすることができる。レセプトデータ等における処方された薬剤名などの単語ibについても同様に当該単語が存在するか否かで「1」または「0」とすることができる。また、これら単語ibが対象者Xのn歳の医療データにおいて1回以上現れていれば、当該ibの要素の値を当該現れた回数（すなわち頻度）としてもよい。
【００２０】
また、健康診断データにおける体重や血液検査の結果等、数値で評価される項目については当該項目に応じた所定の単語を用意しておき、評価数値に応じた所定規則（所定関数等）により当該単語の頻度を算出してベクトルD(X,n)の要素の値とすることができる。このような評価数値から単語頻度への変換に関しては、本出願人による特開２０１５−３２０１３号公報（発明の名称：数値データ解析装置及びプログラム）、特願２０１３−１６３２０７号（数値データ解析装置及びプログラム）、特願２０１３−２１７８１７号（数値データ解析装置及びプログラム）を利用してもよい。
【００２１】
なお、上記のような数値（量的データ）の場合の他、質的データ（例えば、問診票等に記載された喫煙習慣の有無など）の場合も、同様に所定規則により対応する単語の頻度へと変換し、ベクトルD(X,n)の要素の値とすることができる。
【００２２】
以上のように、単語i1, i2, …, imの各々は、入力される医療データにおける健康状態の評価項目（直接的に評価するもののみではなく、レセプトデータにおける薬剤名のように健康状態を間接的に反映する項目も含む）の各々に対応する単語であり、対象者Xのn歳における当該評価結果に対して所定規則（単語i1, i2, …, imの各々に個別規則を用意しておくことができる）を適用することで、文書化部1では文書ベクトルD(X, n)を生成する。
【００２３】
図２に、文書化部1に入力される全医療データの模式的な例を示す。当該例に示すように、入力としての全医療データには欠損があることが想定されており、従来技術の課題において説明したように、当該全医療データにTTM等をそのまま適用しても満足な結果が得られないことが想定されている。すなわち、健康予想モデル構築を精度よく実施するには、各対象者につき数十年等の長期間に渡るデータが存在していることが望まれるが、実際には図２の例のように、数年の短期間に渡るデータしか利用できないということが多い。
【００２４】
なお、図２の例では、例えばAさんに関しては40歳〜43歳のデータが存在しているので、文書化部1においてAさんの医療データよりD(A,40),D(A,41),D(A,42),D(D43)という4個のデータが出力されることとなる。Gさん、Dさんといったその他の対象者についても同様に医療データが存在する年代分のデータが出力されることとなる。
【００２５】
クラスタリング部2では、まず、上記の文書化部1より出力された一連の対象者Xにおける一連の年代nのデータD(X,n)の全てを対象としてクラスタリングを行う。当該クラスタリングには、潜在トピックモデルに基づくLDAをリンク構造を考慮するように拡張したモデルに基づく、RTM（Relational Topic Model; 関係トピックモデル）を利用することができる。なお、RTMについては例えば以下の非特許文献３に開示されている。
[非特許文献３] Chang, Jonathan, and David M. Blei. "Relational topic models for document networks." International Conference on Artificial Intelligence and Statistics. 2009.
【００２６】
ここで特に、共通の対象者Xであっても年代がn歳、m歳(m≠n)と異なるデータD(X,n),D(X,m)は、別データとしてクラスタリングが行われる。例えば、図２の例におけるAさんの4つの異なる年代におけるデータD(A,40),D(A,41),D(A,42),D(D43)は、4つの異なるデータとしてクラスタリング対象となる。なお、対象者がX及びYと異なるデータD(X, n),D(Y, m)（ここで年齢nと年齢mは同じでも異なっていてもよい）は当然、別データとしてクラスタリング対象となる。
【００２７】
また、クラスタリングとしてRTMを適用するためには、バグオブワード形式の各データD(X,n)間のリンク構造を入力として与えておく必要がある。そこで、クラスタリング部2ではリンク構造を以下のようにして与えたうえで、RTMによるクラスタリングを実施して、クラスタリング結果を得る。
【００２８】
すなわち、RTMの入力のリンク構造を、同じ対象者で年代が異なるデータ間に年代が進行する方向の片方向のリンクがあるものとして定めることができる。つまり、同一対象者Xで異なる年代n,n+1のデータD(X,n),D(X,n+1)が存在する場合に、年代が進む方向の片方向のリンク構造「D(X,n)→D(X,n+1)」を設定することができる。
【００２９】
例えば、上記の図２の例におけるAさんの4つの異なる年代におけるデータD(A,40),D(A,41),D(A,42),D(D43)であれば、３つのリンク構造として「D(A,40)→D(A,41)」、「D(A,41)→D(A,42)」及び「D(A,42)→D(A,43)」を定めるようにすることができる。
【００３０】
ここで、同一対象者Xの隣接年代n,n+1間のみ、すなわち1年違いの年代間のみにリンク構造「D(X,n)→D(X,n+1)」を設定するようにしてもよいし、隣接していないが同一対象者で２年以上離れたデータD(X,n),D(X,n+k)(k≧2)があれば、当該２年以上離れた箇所にもリンク構造「D(X,n)→D(X,n+k)」を設定するようにしてもよい。この場合、離れた年数kが最小のデータ間にリンク構造を設けるようにすればよい。
【００３１】
例えば、上記の例D(A,40),D(A,41),D(A,42),D(D43)において仮にD(A,42)が欠損していた（当該データD(A,42)が存在せずAさんに関して4個ではなく3個のデータしかなかった）とする場合に、隣接年代間に限定して１つのみのリンク構造「D(A,40)→D(A,41)」を設定するようにしてもよいし、当該限定を設けずにこれに「D(A,41)→D(A,43)」を加えた２つのリンク構造を設定するようにしてもよい。
【００３２】
クラスタリング部2はさらに、上記のRTMによるクラスタリング結果における一連のクラスタ間の遷移確率を計算し、図１に分岐したデータ線L1として示すように、当該クラスタリング結果及びそのクラスタ間の遷移確率をリンク追加部3及びモデル保持部4へと出力する。
【００３３】
ここで説明のため、クラスタリング結果の各クラスタをCi(i=1, 2, …)と書くことにすると、クラスタCi,Cj間の遷移確率P(Ci→Cj)は、以下の第一方針及び第二方針で定まる一連のカウントを集計し、クラスタ毎に確率として規格化することにより、クラスタリング部2において算出すればよい。
【００３４】
すなわち、第一方針として、隣接する年代n歳及びn+1歳についての同じ対象者XのデータD(X,n),D(X,n+1)が異なるクラスタCi,Cj(i≠j)に分類されている場合、すなわち、D(X,n)∈CiかつD(X,n+1)∈Cjである場合、クラスタCiよりクラスタCjへと至る遷移が1回あったものとしてカウントすることにする。（ここで、遷移の方向Ci→Cjは、対象者Xのn歳時点での所属クラスタCiからn+1歳時点での所属クラスタCjへと向かう方向、すなわち年代の進む方向である。）
【００３５】
また、第二方針として、隣接する年代n歳及びn+1歳についての同じ対象者XのデータD(X,n),D(X,n+1)が同じクラスタCiに分類されている場合、すなわち、D(X,n)∈CiかつD(X,n+1)∈Ciである場合、クラスタCiよりクラスタCi自身へと至る遷移（クラスタCiの自己遷移）が1回あったものとしてカウントすることにする。（なお、第一方針でi=jとした場合が第二方針である。）
【００３６】
以上、第一、第二方針より、以下の式(1)のようにクラスタCi,Cj間の遷移確率P(Ci→Cj)をクラスタCiからCjへの遷移数N(Ci→Cj)に比例するように計算することができる。第一方針(i≠jの場合)、第二方針(i=jの場合)にてカウントする遷移数N(Ci→Cj)は式(2)に示されている。また、式(1)における遷移確率P(Ci→Cj)の具体的な値は、遷移元クラスタCiの各々において、全ての遷移先クラスタCjを表すインデクスj(j=iの場合も含む)につき総和した式(3)の規格化条件を満たすように計算すればよい。式(2)にて右辺の全体を覆っている"||"は数学記号として周知のように集合の元の数を表す記号であって、例えば、|A|で集合Aに属する元の数を表す記号である。また式(2)にて、数学表記として周知のように、{x|xが満たす条件}で当該条件を満たすxの集合を表す。
【００３７】
【数１】
0006468653.tif 000002
【００３８】
図３に、クラスタリング部2におけるクラスタリング結果及び対応する遷移確率の算出の例を[1]〜[5]と分けて示す。[1]は、当該例におけるクラスタリング対象となった全データの例であり、Aさんに関して40歳〜43歳の4個のデータD(A,40)〜D(A,43)と、Hさんに関して43歳〜46歳の4個のデータD(H,43)〜D(H,46)と、の全8個のデータがクラスタリング対象であるものとする。（なお、予測モデルを構築するために一般にはもっと多数のデータを用いるが、ここでは算出例の説明のため、全データを8個としている。）
【００３９】
[2]は、[1]の全データのクラスタリング結果であり、2つのクラスタC1,C2に分けられ、所属データがC1={D(A,40), D(A,41), D(A,42), D(H,45), D(H,46)}及びC2={D(A,43), D(H,43), D(H,44)}となっている。なお、[2]でデータ間に描いている矢印は、同一対象者データであって隣接年代n,n+1となっているデータ間に、年齢の進む方向に描いたものであり、次の[3]における遷移数のカウントの対象となる箇所に該当する。
【００４０】
[3]では、[2]のクラスタリング結果のクラスタC1,C2において一連の遷移数N(Ci→Cj)をカウントした結果が示されている。[4]は当該[3]のカウント結果を、遷移元クラスタを行要素とし、遷移先クラスタを列要素として行列形式に並べたものである。[5]には、当該[4]の結果を上記の式(3)を満たすように規格化した結果として、[2]のクラスタリング結果に対応する遷移行列（クラスタ間遷移確率を要素とする行列）が示されている。
【００４１】
[5]ではすなわち、遷移元がクラスタC1である一連の遷移のカウントN(C1→C1)=3及びN(C1→C2)=1を規格化することで遷移確率P(C1→C1)=0.75及びP(C1→C2)=0.25を求め、同様に、遷移元がクラスタC2である一連の遷移のカウントN(C2→C1)=1及びN(C2→C2)=1を規格化することで遷移確率P(C2→C1)=0.5及びP(C2→C2)=0.5を求めている。
【００４２】
リンク追加部3では、クラスタリング部2が出力したクラスタリング結果に対して、擬似的な構造としてのリンク構造を追加したうえで、図１に線L2として示すように、クラスタリング部2へと出力する。
【００４３】
こうして、図１に線L1,L2として示すように、クラスタリング部2及びリンク追加部3では互いの結果を受け取りながら、繰り返し処理部20として機能することで、繰り返し処理を行うことができる。すなわち、繰り返し処理のI回目(I=1,2, …, N)(Nは繰り返し回数を表す所定数)におけるクラスタリング部2の入力及び出力をそれぞれINPUT(I)及びOUTPUT(I)とすると、以下の関係がある。
【００４４】
すなわち、1回目の入力INPUT(1)は上記のように文書化部1が出力した各対象者Xの各年代nの一連のデータD(X,n)であり、これにクラスタリング部2がリンク構造を設定したうえでRTMを実施し、クラスタリング結果としてOUTPUT(1)を得る。当該結果OUTPUT(1)がリンク追加部3の1回目の処理の入力であり、リンク追加の結果がINPUT(2)としてクラスタリング部2に再び渡されることとなる。
【００４５】
I=2回目の以降も同様に、I-1回目のリンク追加部3の出力をI回目処理の入力INPUT(I)として線L2に示すようにクラスタリング部2が受け取り、RTMによるクラスタリングを実施し且つ結果のクラスタ間の遷移確率を求めることで、OUTPUT(I)を線L1として示すようにリンク追加部3及びモデル保持部4へと出力する。リンク追加部3は当該結果OUPUT(I)を入力として擬似リンク構造を追加したものとしてINPUT(I+1)を得て線L2に示すように出力し、I+1回目の処理をクラスタリング部2が同様に実施する。
【００４６】
こうして、クラスタリング部2及びリンク追加部3の各I回目の処理は共通であるが、以下のように一連の入力及び出力が形成されることとなる。
1回目のクラスタリング部2にてINPUT(1)よりOUTPUT(1)を得る。
1回目のリンク追加部3にてOUTPUT(1)よりINPUT(2)を得る。
………
I回目のクラスタリング部2にてINPUT(I)よりOUTPUT(I)を得る。
I回目のリンク追加部3にてOUTPUT(I)よりINPUT(I+1)を得る。
………
N-1回目のクラスタリング部2にてINPUT(N-1)よりOUTPUT(N-1)を得る。
N-1回目のリンク追加部3にてOUTPUT(N-1)よりINPUT(N)を得る。
N回目のクラスタリング部2にてINPUT(N)よりOUTPUT(N)を得る。
【００４７】
上記のように、クラスタリング部2がN回の繰り返し処理を行う場合、リンク追加部3はN-1回の繰り返し処理を行うこととなり、N回分の一連のクラスタリング結果OUTPUT(1), OUTPUT(2), …, OUTPUT(N)がモデル保持部4へとそれぞれ出力されることとなる。
【００４８】
ここで、各I回の処理を経るごとに、I=1回目の初回の時点にクラスタリング部2が自身で設定したリンク構造に加え、リンク追加部3で追加されたリンク構造が蓄積して追加されていくこととなる。すなわち、I回目のINPUT(I)におけるリンク集合をLINK(I)と表記することにすると、以下のようにリンクが増えていくという関係がある。
LINK(1)⊂LINK(2)⊂…⊂LINK(I-1)⊂LINK(I)⊂…⊂LINK(N-1)⊂LINK(N)
【００４９】
上記にて、LINK(1)はクラスタリング部2自身が設定するものであり、1回目の処理を行うリンク追加部3がLINK(1)にさらにリンク構造を追加したものとしてLINK(2)を得る。以降同様に、I回目(2≦I≦N-1)の処理を行うリンク追加部3がLINK(I)にさらにリンク構造を追加したものとしてLINK(I+1)を得る。
【００５０】
本発明においては、遷移情報と特徴量データとを用いてクラスタリングを行うRTMを特に次のように活用することで、長期予測にも利用可能な予測モデルを構築可能とする。ここで、文書化部1に入力される当初のデータは、そのデータ自身に欠損があることから長期予測には不向きであるのを、RTMで利用する遷移情報により補完することを目指す。しかしこの際、図２で説明したように当初のデータは保存年数が少ない（一般に2〜4年程度）ため、RTMを利用しようとしても遷移情報が短く、長期間の遷移情報が存在していないので、そのままでは長期予測の精度向上の効果は限定的である。そこで、リンク追加部3において長期的な遷移情報を「描く」ように特徴量が似通った対象者同士で擬似的なリンク構造を張ることにより、長期間の遷移情報を疑似的に構築し、クラスタリング部2において長期予測可能な予測モデルを構築できるようにする。
【００５１】
すなわち、各I回目のクラスタリング結果OUTPUT(I)はそれぞれが健康予測のための遷移モデルとなっており、モデル保持部4にてそれぞれ保持されると共に、後述するように予測部5において当該遷移モデルにより未来の健康状態その他を予測することが可能である。各I回目の処理により全体として複数のN個の遷移モデルが作成可能となるが、擬似的なリンクが追加されていくことにより結果としてのクラスタ数が処理回数Iの増加に伴って減少していくことが期待され、より抽象度の高いクラスタリング結果が得られるようになる可能性が高い。このため、長期的な健康推移を観察するのに適したクラスタリング結果が得られることとなる。
【００５２】
なお、繰り返し処理部20における繰り返し回数Nについては、図１に矢印線L3として示すように、予測モデル構築装置10のユーザ（データ分析担当者など）がマニュアルで指定すればよい。N=1と指定してクラスタリング部2が1回のみ処理を行い、リンク追加部3はリンク追加を行わないようにすることも可能である。
【００５３】
リンク追加部3では以上のような各I回目の共通処理として、入力データOUTPUT(I)（クラスタリング部2のI回目の出力）に対して擬似的なリンク構造の追加を行い、出力としてINPUT(I+1)（クラスタリング部2のI+1回目の入力）を得る。当該擬似的なリンク構造の追加は具体的には、次のようにすることができる。
【００５４】
ここでまず前提となる説明として、I回目のクラスタリング部2の出力OUTPUT(I)は、潜在トピック分析の１種であるRTMによるクラスタリング結果として、図４に示すような行列分解結果が得られていることを説明する。（リンク追加部3では当該分解結果を参照して、擬似的なリンクを設定する箇所を決定する。）
【００５５】
ここで、図４に示すように、RTM等の潜在トピック分析では分類対象の全データDは単語iの頻度ベクトルとして与えられている各文書u（本発明では文書化部1の出力する各データD(X,n)に相当）からなり、当該全データD間にリンク構造LINK(I)があるものとしたうえでクラスタリングを行った結果（クラスタリング部2での出力OUTPUT(I)）が、文書uとトピックkとの関係を表すθ行列とトピックkと単語iとの関係を表すΦ行列との行列としての積「D=θ×Φ」として得られることとなる。なお、当該行列分解結果としての出力OUTPUT(I)において、リンク構造はLINK(I)のまま保持されている。（すなわち、RTMによるクラスタリングでは入力としてリンク構造を用いるが、RTM自体によって新たなリンク構造が出力されるものではない。新たなリンク構造はリンク追加部3が設定する。）
【００５６】
当該行列分解結果において、各トピックkが各クラスタに対応するものとすると、文書uのトピック比率を表すθ行列の各行は、各文書uのクラスタ所属確率と解釈できる。当該クラスタ所属確率は、各文書uにおける各トピックkのトピック比率であり、対応する元のデータD(X,n)の健康要因を表現したベクトルとなっている。従って例えば、各文書u(=各データD(X,n))は、その最大のトピック比率の値のトピックに対応するクラスタに所属しているものとして、クラスタリング結果を解釈することができる。
【００５７】
そこで、リンク追加部3では上記行列分解結果としてのOUTPUT(I)における各文書u（＝各データD(X,n)）のトピック比率（θ行列における文書u＝データD(X,n)の該当行ベクトル）を参照して、似通ったトピック比率（すなわち健康要因）にあると判定されるデータ同士の間に、リンクを追加するようにすることができる。
【００５８】
ここで、似通ったものを判定するためには、トピック比率間の距離を求めればよい。すなわち、データD(X,n)の分解結果OUTPUT(I)におけるトピック比率（のベクトル）をTP(X,n,I)と書くことにすると、両者の間にリンク構造がまだ設定されていないデータD(X,n)と他のデータD(Y,m)(ここで、Y=Xの場合又はm=nの場合も含む)との間で、対応するトピック比率TP(X,n,I)及びTP(Y,m,I)の間の距離d(TP(X,n,I), TP(Y,m,I))を求め、閾値判定で当該距離が近いと判断される場合に、リンク追加部3によって新たなリンク構造を追加するようにすることができる。
【００５９】
ここで、トピック比率のベクトルTP(X,n,I)及びTP(Y,m,I)の間の距離d(TP(X,n,I), TP(Y,m,I))に関しては、例えば以下に列挙するような周知の手法のいずれかで算出するようにすればよい。
・ユークリッド距離
・アダマール積（内積）
・カルバック・ライブラー情報量（Kullback-Leibler divergence）
・重み付きユークリッド距離
・重み付きアダマール積
【００６０】
なお、上記の重み（重み付きユークリッド距離又は重み付きアダマール積として距離を計算する際の重み）については、トピック比率の各要素についてその値が定義される重みであり、RTMで標準的に用いられている重みを用いるようにしてもよいし、以下の[手順1]及び[手順2]のようにして求めた重みを用いてもよい。
【００６１】
[手順1] まず、当該[手順1]にて対象とするデータについて述べる。I回目の分解結果OUTPUT(I)に対しては、クラスタリング部2が当該分解結果をクラスタリング結果と解釈して前述の式(1)〜(3)によりクラスタ同士の遷移確率を求めている。従って、当該分解結果OUTPUT(I)は、クラスタ及びクラスタ間の遷移確率として構成されたネットワーク構造とみなすことができる。
【００６２】
そこで、[手順1]として、リンク追加部3において周知のSpinglass等のネットワーク構造を考慮したネットワーククラスタリングを当該OUTPUT(I)におけるネットワーク構造のデータに対して実施し、そのクラスタリング結果OUTPUTnetwrok(I)を得る。
【００６３】
なお、ネットワーククラスタリングの手法としては、Spinglass（スピングラスアルゴリズム）の他にもマルコフクラスタリング(Markov clustering)、混合メンバシップブロックモデル(Mixed membership stochastic blockmodel; MMSB)等の周知の手法を利用することができる。
【００６４】
[手順2] 当該ネットワーク構造を考慮したクラスタリング結果OUTPUTnetwork(I)における各クラスタを対象として、前述の式(1)〜(3)と全く同様にして各クラスタにおける自己遷移確率を求め、当該自己遷移確率の値を、各クラスタに対応するトピック比率に対して付与する重みとして採用する。
【００６５】
ここで、ネットワーク構造を考慮したクラスタリング結果OUTPUTnetwork(I)においては当該クラスタリングする前のクラスタリング結果OUTPUT(I)のうち互いに定常的に遷移すると判定されるものが統合されることとなる。図５にその模式的な例を示すように、[1]に示すOUTPUT(I)ではクラスタC1,C2,C3に分かれていたのに対して、[2]に示すネットワーク構造を考慮したクラスタリング結果OUTPUTnetwork(I)ではCM1={C1,C2}及びCM2={C3}の2つのクラスタ（コミュニティ）となる。（なお、図５でクラスタ間の線はある程度の大きさの遷移確率がクラスタ間にあることを表すものとする。）
【００６６】
また、上記の[手順2]で求まった重みを用いて重み付きユークリッド距離や重み付きアダマール積を計算するに際しては、当該統合されたクラスタ同士（コミュニティ）におけるトピック比率同士の値を足し合わせて得られる新たなトピック比率を用いて、自己遷移確率を重みとして利用することで計算を行えばよい。
【００６７】
例えば図５の例で、あるデータD(X,n)の統合前のクラスタリング結果OUTPUT(I)のトピック比率TP(X,n,I)がC1,C2,C3の各要素につき(r1, r2, r3)であったとすると、統合後のクラスタリング結果OUTPUTnetwork(I)におけるCM1,CM2の要素におけるトピック比率として(r1+r2, r3)を用いるようにすればよい。そして、CM1,CM2のそれぞれにおける自己遷移確率を重みとして用いて各種距離を計算すればよい。
【００６８】
なお、以上の[手順1],[手順2]の手法では自己遷移確率を重みとしたが、これは次のような考察に基づいたものである。すなわち、自己遷移確率が高いクラスタ（OUTPUTnetwork(I)におけるコミュニティ）を時間的な定常性が高いクラスタとみなして、重みを大きくする。時間的に動かないクラスタの方が健康要因としての説明力は高いことになるからである。
【００６９】
なおまた、上記のOUTPUTnetwork(I)はリンク追加部3がリンクを追加するための距離計算の重みの計算のためのみに（いわば中間データとして）用いられるものであり、予測モデルとして出力されるのはOUTPUT(I)であることに注意されたい。
【００７０】
また、以上説明したリンク追加部3では各I回目の処理において閾値判定により距離が近いと判断されるデータ同士であって、且つそれまでの処理においてリンク構造が設定されていないデータ同士の間に全てリンク構造を追加するものとした。ここで、閾値判定する値については各I回毎に変化するものとして、あるいは各I回の全てに渡って固定値として、線L3で示すようにユーザ側から予め与えておいてもよい。また、当該閾値判断によりリンク構造を追加する際に、さらに別の条件を課したうえで追加する判断を下すことも可能であるが、これについては後述する。
【００７１】
モデル保持部4では、クラスタリング部2が出力した各I回のクラスタリング結果OUTPUT(I)を保持し、線L4に示すように当該データを（確認等をするために）ユーザの参照に供すると共に、予測部5で健康予測等を実施するためのモデルとして提供する。ユーザの参照に供する際は種々の周知の表示手法を利用することができ、例えば図５の[1]に示したような形で、クラスタリング結果OUTPUT(I)における各クラスタ及びクラスタ間の遷移確率を可視化するようにしてもよい。
【００７２】
予測部5では、ユーザ指示に従い、モデル保持部4で保持されている予測モデル（複数のOUTPUT(I)のうちユーザ指示で指定されたもの）を用いて各種の予測を行い、予測結果をユーザへと出力する。一実施形態では、健康状態の経年遷移の予測を行うことができ、別の一実施形態では、医療費の予測を行うことができる。以下、当該各実施形態をそれぞれ説明する。
【００７３】
（健康状態の経年遷移の予測について）
ユーザ指示としては、次の第一指示〜第三指示を与える。
【００７４】
まず、第一指示として、予測したい対象者（実際の対象者でも架空のものでもよい）の特定年代における健康データを入力として与える。当該入力は、文書化部1の出力と同様の単語頻度ベクトルの形式で与える。また、第二指示として、クラスタリング部2で得られた複数のクラスタリング結果OUTPUT(I)(I=1,2, …, N)のうちのいずれを予測モデルとして用いるかを指示する。さらに、第三指示として、当該予測対象者に当該予測モデルを適用することで、その何年先の健康状態を予測するか、という指示を与える。以上の指示を与えることで、予測部5では当該予測対象者に当該予測モデルを適用することで推定される、当該指定した年数だけ将来における健康状態を出力することができる。
【００７５】
図６は、当該予測モデル及びその適用結果の例を２つ示す図である。図６にて[1]がクラスタリング結果としてのOUTPUT(2)（C1,C2,C3の3クラスタに分類された場合を例とする）によって3年後の予測を実施する場合の例を示す。図６にて[2]がクラスタリング結果としてのOUTPUT(3)（C10,C20の2クラスタに分類された場合を例とする）によって3年後の予測の実施をする場合の例を示す。
【００７６】
図６の[1]では予測対象者のデータがn歳の場合に、3年後のn+3歳を予測する例が示されており、当該示すように、予測はクラスタリング結果C1,C2,C3のいずれかに各年齢の健康状態があるものとして、年齢を経るごとに所属クラスタがどのように変化するか、という形によってなされる。
【００７７】
例えば[1]に太線で示すように、n歳の時点ではクラスタC1の健康状態であり、n+1歳の時点ではクラスタC2の健康状態であり、n+2歳の時点ではクラスタC2の健康状態であり、n+3歳の時点ではクラスタC3の健康状態である、という形で、クラスタリング結果OUTPUT(2)をモデルとして用いた際の対象者の健康状態の推移が予測される。同様に[2]で太線で示すように、n歳の時点ではクラスタC10の健康状態であり、n+1歳の時点ではクラスタC20の健康状態であり、n+2歳の時点ではクラスタC20の健康状態であり、n+3歳の時点ではクラスタC10の健康状態である、という形で、クラスタリング結果OUTPUT(3)をモデルとして用いた際の対象者の健康状態の推移が予測される。
【００７８】
従って、上記の第一指示〜第三指示を入力として受け取った予測部5では、対象者データ（n歳時点でのデータとする）が当該n歳時点でいずれのクラスタに属するかと、n歳以降どのように所属クラスタを遷移するか、ということを計算する。当該計算は、前者（n歳での所属クラスタの決定）及び後者（n歳以降の所属クラスタの遷移）に関してそれぞれ以下のように実施することができる。
【００７９】
前者（n歳での所属クラスタの決定）に関しては、クラスタリング部2がRTM等の潜在トピック分析でクラスタリング結果を得ている場合であれば、前述の図４に示すような行列分解結果が得られているので、当該分解結果に従って対象者のデータがいずれのクラスタに属するかを決定すればよい。
【００８０】
すなわち、予測部5では、n歳時点での予測対象データ（バグオブワード形式）を当該分解結果「θ×Φ」におけるθ行列の各行と同様のトピック比率の形式へと変換し、最大トピック比率を与えているクラスタに所属しているものとして、所属クラスタを決定することができる。当該変換結果は、n歳時点での予測対象データを文書化部1（又はバグオブワード形式へ変換済みであればクラスタリング部2）へ入力される全データ内に含めておくことで、分解結果「θ×Φ」のθ行列該当箇所を参照することにより取得可能である。あるいは、バグオブワード形式の予測対象データ（分解結果「D=θ×Φ」の行列「D」の行ベクトルに相当）に、分解結果「θ×Φ」における「Φ」行列の逆行列（ムーアペンローズの一般逆行列）を乗ずることにより、対応するトピック比率を求めてもよい。
【００８１】
また、後者（n歳以降の所属クラスタの遷移）に関しては、前者で得られたn歳時点での所属クラスタを経路の始点に設定したうえで、図６の[1]に示すような状態遷移系列に対して、周知のビタビアルゴリズムを適用し、最大確率を与える経路として、クラスタ間遷移を計算することができる。ここで、状態間の遷移確率には、クラスタリング部2で求めたクラスタ間の遷移確率をそのまま利用すればよい。
【００８２】
（医療費の予測について）
予測部5へ与えるユーザ指示としては、上記の健康状態遷移の場合と同様の第一〜第三指示を与えることができ、当該指示のもと健康状態の遷移ではなく、医療費の予測を実施することも可能である。
【００８３】
この場合、上記と同様に健康状態の遷移を計算したうえで、各健康状態（各クラスタ又は各コミュニティ）に所属している際の1年間の医療費を予めモデル値として与えておいた上で、指定された予測モデル上において計算された健康状態遷移系列（n歳の所属クラスタ、n+1歳の所属クラスタ、…、n+k歳の所属クラスタ）において当該モデル値の総和を取ることで、医療費（n歳からn+k歳の時点までの総医療費）を予測することができる。なお、医療費はn歳〜n+k歳の時点までの総医療費としてでなく、第三指示で指定した予測対象未来のn+k歳の時点のみでの医療費を予測させるようにしてもよい。n歳〜n+k歳の総医療費か、n+k歳の時点のみでの医療費か、いずれを予測させるかに関しては、ユーザが第四指示として指定すればよい。
【００８４】
医療費予測の別実施形態として、上記の第一〜第三指示及び第四指示をユーザより入力として受け取って、第一指示で指定された予測対象者のn歳時点でのデータを図４でθ行列として説明したようなトピック比率（各クラスタへの所属確率）の形式へと変換し、当該トピック比率を入力として、第四指示で定義された医療費を出力するようにしてもよい。
【００８５】
この場合、学習データにより予めサポートベクトル回帰その他といった機械学習等で学習されておいた関係を適用することで、予測値としての医療費が出力されるようにすればよい。
【００８６】
すなわち、学習データとして、サンプル対象者のn歳時点でのデータ（トピック比率）と当該サンプル対象者の将来のn+k歳時点での医療費とを与えたものを多数用意しておく。つまり、「サンプル対象者のトピック比率」、「サンプル対象者の現在年齢n歳」及び「予測対象未来を設定するk年」の３つの条件に関しての多数の組み合わせのもとでの医療費（n+k歳の未来における当該サンプル対象者の医療費）を学習データとして用意しておく。
【００８７】
当該学習データに対して機械学習を適用することによって「予測対象者のトピック比率」、「予測対象者の現時点での年齢n」及び「予測対象未来のk年後」の３つの情報を入力として、医療費（第四指示に従い、n歳〜n+k歳の総医療費又はn+k歳における医療費）を出力する関係式を求めることができる。当該機械学習された関係式により、医療費予想を実施することができる。
【００８８】
以上、健康状態の遷移と医療費の予測を説明したが、いずれの予測の場合であっても、短期での予測を行う場合には予測モデルOUTPUT(I)のうちIの番号が小さい方を、長期での予測を行う場合には予測モデルOUTPUT(I)のうちIの番号が大きい方を、予測モデルとして利用するように指定することが好ましい。予測部5では、繰り返し回数Iを紐付けた形でユーザに対して予測モデルを提示し、繰り返し回数Iがより少ない方の予測モデルが短期予測向けであり、且つ繰り返し回数Iがより多い方の予測モデルが長期予測向けである旨をユーザに通知するようにしてよい。ユーザが短期予測及び長期予測の両者を行おうとしている際は、当該通知に従うもの（回数Iが少ない方の予測モデルを短期向けとし回数Iが多い方の予測モデルを長期向けとする）のみをユーザに選択させるようにしてよい。（例えばI=2回の予測モデルをユーザが短期予測に用いた場合、長期予測はI≧3の予測モデルを利用するように、ユーザに選択させるようにしてよい。）短期、中期、長期といったような３以上の予測を行おうとしている場合も全く同様に、短期側ほど回数Iの少ない予測モデルを、長期側ほど回数Iの多い予測モデルを利用させるようにしてよい。
【００８９】
以下、本発明における（説明の流れの観点からの）補足的事項を（１）〜（８）と分けてそれぞれ説明する。
【００９０】
（１）リンク追加部3においてリンク構造を追加する際に、２つのデータ間の距離に対する閾値判定以外の条件（以下「ポリシー」とする）も設定することに関して
【００９１】
以下のような種々のポリシーの任意の組み合わせを設定することができる。
（ポリシー１）年齢の低い対象者から高い対象者へ向けてのみ、リンク構造を設定するようにする。
（ポリシー２）対象者の全体を医療費の似通った者同士のグループ（例えば、0〜1万点の低医療費グループと、1〜3万点の中医療費グループと、3万点以上の高医療費グループの３グループなど）に分け、グループが共通する対象者データ間のみにおいてリンク構造を設定するようにする。
【００９２】
（ポリシー３）上記ポリシー２を変更したポリシーとして、同じく対象者全体を医療費に基づくグループ分けを行い、リンク構造「D(X,n)→D(Y,m)」を設定する対象を、リンク元のD(X,n)が属するグループよりも医療費の高いグループにリンク先のD(Y,m)が属している場合のみに限定するようにする。ここで、リンク元のD(X,n)が既に医療費の最高となるグループに属している場合は、それ以上のリンク構造を設定しないようにしてもよいし、最高医療費の同グループに属する他のデータD(Y,m)へのリンク構造の設定を許可するようにしてもよい。
【００９３】
当該ポリシー３は、突発的に医療費が高くなる場合のモデル化を可能とするものである。
【００９４】
なお、ポリシー２、３を利用する場合は、文書化部1から出力される各データD(X,n)に関して予め、当該対象者Xのn歳時点での医療費のデータを取得しておき、閾値判定で医療費の高低に基づくグループ分け結果を予め得ておけばよい。
【００９５】
図７は、上記のポリシー１を適用してリンク構造を設定した例を示す図であり、[1]に示すI=1回目の処理でクラスタリング部2が自身で設定したLINK(1)に基づくクラスタリング結果OUTPUT(1)に対して、I=1回目の処理でリンク追加部3がリンクを追加したものがLINK(2)として[2]に示されている。
【００９６】
図７にてリンク構造はデータ間の矢印として示されており、[2]にて追加されたリンク構造は「D(A,41)→D(B,42)」及び「D(C,40)→D(B,41)」であって、ポリシー１を満たすものに限られている。
【００９７】
特に、リンク追加部3にてトピック比率間の距離を前述のカルバック・ライブラー情報量として計算するような場合は、方向性を考慮した距離が計算される。当該計算によって図7の例において例えば「D(B,41)→D(A,40)」の距離が近いと判定されたとしても、年齢が下がる方向のリンクとなってしまうため、ポリシー１によりリンク構造を設定することは行わないようにすることができる。
【００９８】
また、ユークリッド距離のように方向性のない距離で計算を行い閾値判定で近いものを判定した際に、ポリシー１によって実際に設定するリンク構造における方向を自動決定するようにしてもよい。ここで、年齢が同一の場合は、リンク構造を設定してもよいし設定しないようにしてもよい。
【００９９】
（ポリシー４）あるデータD(X,n)をリンク元とするリンクは１個のみを他者Yに向けて設定するようにする。（ただし、初回処理のLINK(1)においてクラスタリング部2が設定したリンク構造は当該ポリシー４の判定対象外とするようにしてもよい。）
【０１００】
（２）クラスタリング部2における各I回のクラスタリングにおけるクラスタ数の決定について
【０１０１】
クラスタリング部2では繰り返し処理の各I回においてRTM等の潜在トピックモデルに基づくクラスタリングを行い、INPUT(I)よりクラスタリング結果OUTPUT(I)を得る。ここで、各I回目のクラスタリング結果OUTPUT(I)を構成しているクラスタ数CL(I)を指定する必要があるが、当該クラスタ数CL(I)はユーザより図１で線L3として示すようにマニュアル設定したものを用いてもよいし、以下のようにして最適と判定されるクラスタ数を自動決定するようにしてもよい。なお、マニュアル設定する際は、回数Iが増すにつれてクラスタ数CL(I)が減るように設定することが好ましい。
【０１０２】
まず、ユーザ指定等により当該INPUT(I)をクラスタリングするクラスタ数につき、ユーザ側から一連の候補を与えておき、各候補のクラスタ数において実際にクラスタリング部2がクラスタリングを実施し、当該結果より図８のようなクロス集計表を作成し、クロス集計表の数値に基づいて当該結果のAIC値を算出する。（当該AIC値の算出法は後述する。）そして、各候補のクラスタ数のそれぞれのAIC値のうち、最小値となっているようなクラスタ数が最適な分類結果を与えているものとして、クラスタ数CL(I)を定め、当該クラスタ数CL(I)における結果をクラスタリング部2からの出力OUTPUT(I)として採用する。
【０１０３】
図８には、指定したクラスタ数がmの場合のクロス集計表の例が示されている。当該クラスタ数m個にクラスタリングされた各クラスタCk(k=1,2,…,m)につきクラスタ内への遷移数n1kは、当該クラスタに同一人物Xであって隣接年代n,n+1の両データが存在する個数、すなわち前述の式(2)と同様の形式の自己遷移の個数として、以下の式(4)のようにカウントすることができる。
n1k=|{(X,n)|D(X,n)∈CkかつD(X,n+1)∈Ck }|      …(4)
【０１０４】
同様に、クラスタ外への遷移数n2kは、当該クラスタCkに人物Xのn歳時点のデータが存在したが、次のn+1歳の時点で当該人物Xのデータは別のクラスタCj(j≠k)に存在しているというケースのカウント数として求めることができる。すなわち、形式上はやはり前述の式(2)と同様で、以下の式(5)のようにカウントすることができる。
n2k=|{(X,n)|D(X,n)∈CkかつD(X,n+1)∈Cj (j≠k) }|      …(5)
【０１０５】
なお、予測部5において医療費予測を実施する場合は、当該医療費予測に適したクラスタリング結果OUTPUT(I)を得るために最適なクラスタ数CL(I)を決定するために、図８のクロス集計表に代えて図９に示すクロス集計表を用いて後述のAIC値を算出し、最小のAIC値を与えるようなクラスタ数CL(I)を決定し、その際の結果をOUTPUT(I)として採用するようにしてもよい。
【０１０６】
図９ではすなわち、各クラスタCk(k=1,2,…,m)において、属するデータD(X,n)に対応する医療費が高いと判定される数をn1kとしてカウントし、対応する医療費が低いと判定される数をn2kとしてカウントすればよい。なおここで、各データD(X,n)に対しては、実際に費やした医療費を予め与えておく必要がある。また、医療費の高低は閾値以上か閾値を超えないかで判断すればよい。
【０１０７】
（２'）上記（２）ではクラスタリング部2における各I回のクラスタリングにおける適切なクラスタ数の決定のために、自己遷移や医療費の高低に基づくカウントで作成されるクロス集計表からAICを算出し、AIC値に従って最適なクラスタ数を決定する手法を説明した。当該手法は、医療データ関連のクラスタリング全般に関して同様に適用可能であり、リンク追加部3において重みを計算するための中間データとして、前述の[手順1],[手順2]によりネットワーククラスタリングを行う際の適切なクラスタ数（クラスタ同士を統合したコミュニティ数）を決定する際にも全く同様に利用可能である。この場合、図８や図９のようなクロス集計表をネットワーククラスタリングの結果の各コミュニティに関してカウントして作成するようにすればよい。
【０１０８】
（３）文書化部1では、各対象者Xの各年代n（年齢n）における文書化された医療データD(X, n)を生成するものとし、当該年代nは1年毎に与えられているものとして以降の説明を行ったが、1年に限らず、任意の長さの所定期間（２年あるいは半年など）ごとの年代nで区切ってデータD(X,n)を生成してもよい。この場合、図６で説明したような健康推移モデルの推移のステップ幅も、当該任意の長さの所定期間となる。例えば、2年毎のデータD(X,n)を利用する場合、健康推移モデルは2年毎の状態を与えるものとなる。
【０１０９】
（４）文書化部1では、入力される健診データその他の医療データを、各対象者Xの各年代nにおける健康状態に対応するバグオブワードとしてのデータD(X,n)に変換するものとして説明したが、入力されるデータが予め当該バグオブワードの形式に変換されている場合、文書化部1は省略されてもよい。
【０１１０】
（５）クラスタリング部2の別の実施形態について
クラスタリング部2では繰り返し処理I=1,…,Nの各回においてRTMでクラスタリングを行うものとし、初回のI=1回目では自身でリンク構造を設定するものとして説明した。別の実施形態として、初回のI=1回目ではリンク構造の設定を行わず、RTMではなくLDAによってクラスタリングを行い、OUTPUT(1)を出力するようにしてもよい。以降の処理については、以上説明してきたのと全く同様に可能である。
【０１１１】
すなわち、上記OUTPUT(1)に対してリンク追加部3がリンクを追加してINPUT(2)となし、I=2回目以降の各回においてはクラスタリング部2ではRTMでクラスタリングを実施すればよい。従って、当該初回のリンク設定を行わない実施形態では、LINK(1)が空集合となり、I=2回目以降の処理は以上と同様となる。
【０１１２】
（６）リンク追加部3におけるリンク追加判断の各種実施形態について
一実施形態では、リンク追加部3におけるトピック比率間の距離の閾値判定に関して、一律の閾値を用いる代わりに、次のようにしてもよい。すなわち、リンク構造が設定されていない孤立したデータに関しては、閾値判定は行わないようにして、距離が最も近いデータに必ずリンク構造を設定するようにしてもよい。上記の（１）で説明したポリシーを満たすデータのうち、最も近いデータにリンク構造を設定するようにしてもよい。
【０１１３】
一実施形態では、リンク追加部3におけるトピック比率間の距離の閾値判定に関して、I回目の判断で利用する閾値TH(I)を、Iが増加するにつれ減少するような所定設定のものを利用するようにしてもよい。当該閾値判定により、Iが小さい最初のうちは似通った上位のデータ同士の間のみでリンク構造が設定され、Iが大きくなるにつれ似通った度合いが下位のデータ同士の間でもリンク構造が設定されるようにすることができる。
【０１１４】
（７）上記の（２）における最適なクラスタリング結果を与えるクラスタ数CL(I)を決定する際のAIC値の算出について
【０１１５】
図１０は、図８あるいは図９のクロス集計表を一般化した表である。すなわち、図１０の集計数nijは図８、図９等と共通のものを一般の場合として示しており、何らかの基準に該当するか否かを縦軸（行要素）として、クラスタ等の分類結果を横軸（列要素）として、構成されている。
【０１１６】
すなわち、図８の「クラスタ内へ遷移」及び「クラスタ外へ遷移」がそれぞれ、図１０の「該当」及び「未該当」に対応する。また、図９の「医療費が高い」及び「医療費が低い」がそれぞれ、図１０の「該当」及び「未該当」に対応する。
【０１１７】
図１０に示すように、当該クロス集計表における集計数nijにより、ただちに周辺度数ki(i=1,2,…,m)、h,N-h等を計算することができ、これらの値を用いて以下のようにAIC値を計算することがきる。
【０１１８】
当該AIC値は、次のいずれかの手法の値として求める。第一手法では、当該クロス集計表に対して従属モデルを適用することにより、以下の[式1]のような従属モデルのAIC値AIC(DM)[ここでDMはDependent Modelの略である]として求める。第二手法では、さらに、当該クロス集計表に対して独立モデルを適用して、以下の[式2]のような独立モデルのAIC値AIC(IM)[ここでIMはIndependent Modelの略である]を求めたうえで、[式3]のように、従属モデルのAIC値から独立モデルのAIC値を引いた差の値として、求める。
【０１１９】
【数２】
0006468653.tif 000003
【０１２０】
なお、[式1]等においてMLL(DM)は、従属モデルにおける最大対数尤度であって、[式1-2]のような値として求めることができる。また、[式2]等において、MLL(IM)は、独立モデルにおける最大対数尤度であって、[式2-2]のような値として求めることができる。なお、上記の各式における文字は、図１０のクロス集計表において説明した通りであり、以降説明する各式においても同様である。
【０１２１】
以下、従属モデルにおける最大対数尤度MLL(DM)と、独立モデルにおける最大対数尤度MLL(IM)と、がそれぞれ、上記の[式1-2]及び[式2-2]のように算出されることと、当該算出されたそれぞれの最大対数尤度を用いて、従属モデルにおけるAIC値が[式1]のように算出され、また、独立モデルにおけるAIC値が[式2]のように算出されることを説明する。
【０１２２】
図１１は、[式1]及び[式1-2]として示した従属モデルにおける算出を説明するための、図１０のクロス集計表に対応する従属モデルにおける確率の表である。当該表に示されている確率により、以下のように算出がなされる。
【０１２３】
まず、従属モデルの確率変数は以下の通りである。
【０１２４】
【数３】
0006468653.tif 000004
【０１２５】
一方、図１１に示された2m個の全てが自由に動かせるわけではなく、以下の制約がある。
【０１２６】
【数４】
0006468653.tif 000005
【０１２７】
従って、従属モデルの自由度は2m-1であり、AICの定義（AIC＝-2×MLL+2×自由度）より、[式1]の2*(2m-1)の項が得られる。さらに、上記確率変数より対数尤度LLを計算すると、以下のようになる。
【０１２８】
【数５】
0006468653.tif 000006
【０１２９】
上記対数尤度LLを最大にするときの条件は以下である。
【０１３０】
【数６】
0006468653.tif 000007
【０１３１】
上記最大とする条件より、以下が得られる。
【０１３２】
【数７】
0006468653.tif 000008
【０１３３】
上記と同様にして、さらに
【０１３４】
【数８】
0006468653.tif 000009
【０１３５】
等が得られる。そこで、
【０１３６】
【数９】
0006468653.tif 000010
【０１３７】
とすると、
【０１３８】
【数１０】
0006468653.tif 000011
【０１３９】
等となるので、それぞれを足すと、
【０１４０】
【数１１】
0006468653.tif 000012
【０１４１】
となるから、以下の場合が最尤推定となる。
【０１４２】
【数１２】
0006468653.tif 000013
【０１４３】
従って、上記の値をLLに代入することで、その最大値として前述の[式1-2]が得られる。
【０１４４】
図１２は、[式2]及び[式2-2]として示した独立モデルにおける算出を説明するための、図１０のクロス集計表に対応する従属モデルにおける確率の表である。当該表に示されている確率により、以下のように算出がなされる。
【０１４５】
まず、図１０の周辺度数kmと、対応する図１２の周辺確率qmと、において、以下のような制約がある。
【０１４６】
【数１３】
0006468653.tif 000014
【０１４７】
従って、自由に動かせるのはq1〜qm-1とpとであるから、パラメータの自由度は(m-1)+1=mであって、AIC算出の定義より、[式2]の2×mの項が得られる。また、独立モデルの確率変数は以下の通りとなる。
【０１４８】
【数１４】
0006468653.tif 000015
【０１４９】
従って、その対数尤度LLは以下の通りとなる。
【０１５０】
【数１５】
0006468653.tif 000016
【０１５１】
対数尤度の最大値を与える条件を求めるべく、これをp、q1・・・で偏微分してゼロに等しいとすることにより、以下等の一連の計算ができる。
【０１５２】
【数１６】
0006468653.tif 000017
【０１５３】
従って、
【０１５４】
【数１７】
0006468653.tif 000018
【０１５５】
となり、また、
【０１５６】
【数１８】
0006468653.tif 000019
【０１５７】
とすると、
【０１５８】
【数１９】
0006468653.tif 000020
【０１５９】
等となるので、それぞれ足して、
【０１６０】
【数２０】
0006468653.tif 000021
【０１６１】
となり、
【０１６２】
【数２１】
0006468653.tif 000022
【０１６３】
となるから、最大尤度は
【０１６４】
【数２２】
0006468653.tif 000023
【０１６５】
等において得られることとなる。従って、上記の値をLLに代入することで、最大値としての[式2-2]が得られる。
【０１６６】
（８）本発明は、コンピュータを予測モデル構築装置10の各部1〜5の全て又はその任意の一部分として機能させるプログラムとしても提供可能である。当該コンピュータには、CPU(中央演算装置)、メモリ及び各種I/Fといった周知のハードウェア構成のものを採用することができ、CPUが予測モデル構築装置10の各部の機能に対応する命令を実行することとなる。
【符号の説明】
【０１６７】
10…予測モデル構築装置、1…文書化部、2…クラスタリング部、3…リンク追加部、4…モデル保持部、5…予測部
【図１】
0006468653.tif 000024
【図２】
0006468653.tif 000025
【図３】
0006468653.tif 000026
【図４】
0006468653.tif 000027
【図５】
0006468653.tif 000028
【図６】
0006468653.tif 000029
【図７】
0006468653.tif 000030
【図８】
0006468653.tif 000031
【図９】
0006468653.tif 000032
【図１０】
0006468653.tif 000033
【図１１】
0006468653.tif 000034
【図１２】
0006468653.tif 000035