(57)【要約】【課題】  事象が発生または発生しない確率を精度よく算出できる確率モデル作成方法を提供する。【解決手段】  確率モデル作成システムは、確率モデルと重み係数を繰り返し作成するモデル作成部１と、モデル作成部１で作成された確率モデルと重み係数を記憶する第１記憶部２と、モデル作成部１が最後に作成した最終的な確率モデルを記憶する第２記憶部３と、所定のパラメータを入力する入力部４と、入力されたパラメータを第２記憶部３から読み出した確率モデルに入力して所定の事象が発生する（または発生しない）確率を算出する確率算出部５とを備えている。この構成により、ある企業の特定の座標指標が入力されたときに、迅速に企業の倒産確率を簡易かつ精度よく算出できる。【選択図】  図１
2006185099.tif 000002
【特許請求の範囲】
【請求項１】
所定の事象を説明するための１つ以上の変数を含む説明変数と該説明変数に応じた値を取る非説明変数とを組とするサンプルの集合である学習データの各サンプルごとに、予め用意された確率モデルに基づいて、前記非説明変数の値に対応する確率を算出するステップと、
該算出された確率に基づいて、学習データの各サンプルに対する重みを算出するステップと、
算出された重みと前記学習データとに基づいて新たな確率モデルを作成してモデル記憶装置に記憶するステップと、
前記モデル記憶装置に記憶された確率モデルを用いて、前記説明変数と同じデータ形式の入力パラメータに対して、前記事象が発生または発生しない確率を算出するステップと、を備えることを特徴とする確率モデル作成方法。
【請求項２】
前記重みを算出するステップは、前記非説明変数の値に対応する確率を算出するステップにより前記事象が発生する確率を算出した場合には、前記事象が発生しない確率を算出した結果に比例した前記重みを算出することを特徴とする請求項１に記載の確率モデル作成方法。
【請求項３】
前記重み、前記学習データおよび所定のパラメータを用いて定義される目的関数の値が最大または最小になるように、前記所定のパラメータの値を設定するステップを備え、
前記目的関数の値が最大または最小になるときの前記所定のパラメータを用いて、前記新たな確率モデルを作成することを特徴とする請求項１または２に記載の確率モデル作成方法。
【請求項４】
所定の事象を説明するための１つ以上の変数を含む説明変数と該説明変数に応じた値を取る非説明変数とを組とするサンプルの集合である学習データの各サンプルごとに、予め用意された確率モデルに基づいて、前記非説明変数の値に対応する確率を算出するステップと、
該算出された確率に基づいて、学習データの各サンプルに対する事象が発生しない確率を算出し、該算出された事象が発生しない確率に比例した重みを算出するステップと、
算出された重みと前記学習データとに基づいて新たな確率モデルを作成するステップと、
前記算出された重みを用いて、所定回数、前記重みを算出するステップと前記新たな確率モデルを作成するステップとの処理を繰り返し行った後、各回ごとに算出された確率モデルに基づいて、最終的な確率モデルをモデル記憶装置に記憶するステップと、
前記モデル記憶装置に記憶された確率モデルを用いて、前記説明変数と同じデータ形式の入力パラメータに対して、前記事象が発生または発生しない確率を算出するステップと、を備えることを特徴とする確率モデル作成方法。
【請求項５】
前記最終的な確率モデルは、各回ごとに算出された確率モデルを互いに掛け合わせて得られた積を含むことを特徴とする請求項４に記載の確率モデル作成方法。
【請求項６】
前記重み、前記学習データおよび所定のパラメータを用いて定義される目的関数の値が最大または最小になるように、前記所定のパラメータの値を設定するステップを備え、
各回ごとに、前記目的関数の値が最大または最小になるときの前記所定のパラメータを用いて、前記新たな確率モデルを作成することを特徴とする請求項４または５に記載の確率モデル作成方法。
【請求項７】
前記目的関数が改善されなくなった時点で、前記最終的な確率モデルを前記モデル記憶装置に記憶することを特徴とする請求項４乃至６のいずれかに記載の確率モデル作成方法。
【請求項８】
前記学習データは、訓練用データと評価用データとを有し、
前記目的関数は、重みと訓練用データとで定義される訓練用目的関数と、重みと評価用データとで定義される評価用目的関数とを有し、
前記訓練用目的関数および前記評価用目的関数の値が最大または最小になるように、前記所定のパラメータの値を設定して、前記新たな確率モデルを作成することを特徴とする請求項６または７に記載の確率モデル作成方法。
【請求項９】
所定回数、前記重みを算出するステップと前記新たな確率モデルを作成するステップとの処理を繰り返し行う際に使用する学習データを、各回毎に変更する、請求項４記載の確率モデル作成方法。
【請求項１０】
所定回数、前記重みを算出するステップと前記新たな確率モデルを作成するステップとの処理を繰り返し行う際に、確率モデルの種類を、各回毎に変更する、請求項４記載の確率モデル作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の事象が発生または発生しない確率を算出する確率モデル作成方法に関する。
【背景技術】
【０００２】
所定の事象が発生する確率を算出するために、確率モデルを構築する技術が提案されている（非特許文献１参照）。
【０００３】
この非特許文献１では、AdaBoostと呼ばれるアルゴリズムを提案している。このアルゴリズムは広く利用されているが、判別問題に対するアルゴリズムであるため、確率モデルを構築する際には直接利用できない。
【０００４】
上述したAdaBoostの考え方を利用して確率モデルを構築する手法が提案されている（非特許文献２参照）。ところがこの手法によっても、正しい確率モデルを構築することができない。
【非特許文献１】Freund, Y. and Schapire, R. E.: A decision-theoretic generalization of on-line learning and an application to boosting, Journal of Computer and System Sciences, Vol.55, No. 1, pp.119-139(1997).
【非特許文献２】末松伸朗、林朗：ブースティング法に発想を得た確率モデル学習アルゴリズム、人工知能学会誌、15巻１号（2001年１月）、pp129-136.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、事象が発生または発生しない確率を精度よく算出できる確率モデル作成方法を提供するものである。
【課題を解決するための手段】
【０００６】
本発明の一実施形態によれば、所定の事象を説明するための１つ以上の変数を含む説明変数と該説明変数に応じた値を取る非説明変数とを組とするサンプルの集合である学習データの各サンプルごとに、予め用意された確率モデルに基づいて、前記非説明変数の値に対応する確率を算出するステップと、該算出された確率に基づいて、学習データの各サンプルに対する重みを算出するステップと、算出された重みと前記学習データとに基づいて新たな確率モデルを作成してモデル記憶装置に記憶するステップと、前記モデル記憶装置に記憶された確率モデルを用いて、前記説明変数と同じデータ形式の入力パラメータに対して、前記事象が発生または発生しない確率を算出するステップと、を備える。
【０００７】
また、本発明の一実施形態によれば、所定の事象を説明するための１つ以上の変数を含む説明変数と該説明変数に応じた値を取る非説明変数とを組とするサンプルの集合である学習データの各サンプルごとに、予め用意された確率モデルに基づいて、前記非説明変数の値に対応する確率を算出するステップと、該算出された確率に基づいて、学習データの各サンプルに対する事象が発生しない確率を算出し、該算出された事象が発生しない確率に比例した重みを算出するステップと、算出された重みと前記学習データとに基づいて新たな確率モデルを作成するステップと、前記算出された重みを用いて、所定回数、前記重みを算出するステップと前記新たな確率モデルを作成するステップとの処理を繰り返し行った後、各回ごとに算出された確率モデルに基づいて、最終的な確率モデルをモデル記憶装置に記憶するステップと、前記モデル記憶装置に記憶された確率モデルを用いて、前記説明変数と同じデータ形式の入力パラメータに対して、前記事象が発生または発生しない確率を算出するステップと、を備えることを特徴とする確率モデル作成方法を提供するものである。
【発明の効果】
【０００８】
本発明によれば、事象が発生または発生しない確率を精度よく算出できる。
【発明を実施するための最良の形態】
【０００９】
以下、図面を参照しながら、本発明の一実施形態を説明する。
【００１０】
（第１の実施形態）
図１は本発明の第１の実施形態に係る確率モデル作成システムの概略構成を示すブロック図である。図１の確率モデル作成システムは、確率モデルと重み係数を繰り返し作成するモデル作成部１と、モデル作成部１で作成された確率モデルと重み係数を記憶する第１記憶部２と、モデル作成部１が最後に作成した最終的な確率モデルを記憶する第２記憶部３と、所定のパラメータを入力する入力部４と、入力されたパラメータを第２記憶部３から読み出した確率モデルに入力して所定の事象が発生する（または発生しない）確率を算出する確率算出部５とを備えている。
【００１１】
図１の各部の処理は、一つのコンピュータ機器で行ってもよいし、複数のコンピュータ機器で分散して行ってもよい。ただし、モデル作成部１の処理には時間がかかるおそれがあるため、事前に処理を行って、最終的な確率モデルを予め第２記憶部３に記憶しておくのが望ましい。これにより、入力部４からパラメータが入力されたときに、第２記憶部３から読み出した最終的な確率モデルを利用して、比較的短時間で上述した確率を算出することができる。あるいは、モデル作成部１の処理を高速で行うために、専用のコンピュータ機器を用意してもよい。また、第１記憶部２と第２記憶部３は、物理的に一つの記憶装置にまとめてもよい。
【００１２】
図２は図１のシステムの処理手順の一例を示すフローチャートである。以下、このフローチャートを用いて、本実施形態の処理手順を説明する。以下では、一例として、図１のシステムを利用して、企業の倒産確率を算出する手順を説明する。なお、ベクトルを表す記号は、数式や図面においは、記号の上に矢印を付して表記するが、以下の文章中では、記号の前に「ベクトル」と表記する。
【００１３】
まず、（１）式に示すサンプルセットを用意し、これを学習データとする。
【数１】
2006185099.tif 000003
【００１４】
サンプルの番号ｉは、例えば企業を識別する番号である。ｉ番目のサンプルは、（ベクトルｘi，ｃi）である。ｘiは、サンプル番号ｉの企業における財務指標の少なくとも一部であり、説明変数とも呼ばれる。以下の表は財務指標一覧の一例を示す図である。この図は、「企業倒産予知情報の形成」白田佳子著、中央経済社に開示されたものとほぼ同じである。
【表１】
2006185099.tif 000004
2006185099.tif 000005
【００１５】
財務指標の一覧が表１で表される場合、ベクトルｘiには表１に列挙された財務指標の少なくとも一部が含まれる。ベクトルｘiのｊ番目の成分をｘij（ｊ＝1,…,ｎ）と書くことにする。ｊ番目の成分は財務指標の一覧におけるｎj番目の指標と対応する。つまり、ｘijは企業ｉの財務指標ｎjの値である。
【００１６】
例えば、財務指標のベクトルｘiが例えばｊ＝1,2,…,7の成分を持っていたとすると、｛外部負債依存率, 買入債務回転期間, 総資産運転資本率, 売上高税引前当期利益率, 一人当り売上高, 総資本回転率, 一人当り販管費｝なる、財務指標のベクトルｘiが得られる。
【００１７】
ｉ番目のサンプル（ベクトルｘi，ｃi）におけるｃiは、企業ｉが１年以内に倒産するかどうかを示すものであり、０（非倒産）または１（倒産）を取る非説明変数である。倒産とは、銀行取引停止処分、会社更生法、商法による会社整理、民事再生法、破産、特別清算等を表し、休業、廃業、解散、人員整理、手形ジャンプなどは特に取引先に重大な被害を与えていないことを勘案して倒産とはしない。ただし、倒産の定義はモデルの運用を踏まえて自由に変更してもかまわない。
【００１８】
図１のモデル作成部１は、まず、予め与えられた確率モデルＱ(ｃ｜ベクトルｚ)により、（２）式に基づいて、各サンプルの確率Ｑ(ｃ｜ベクトルｘi)を計算しておく（図２のステップＳ１）。（２）式は、ロジットモデルに基づいている。
【数２】
2006185099.tif 000006
【００１９】
（２）式のパラメータ（α，ベクトルβ）は、以下の（３）式で算出される対数尤度ｌ(D，Ｑ）が最大となるように設定される。
【数３】
2006185099.tif 000007
【００２０】
このようなパラメータ（α，ベクトルβ）を算出することは、いわゆる凸問題であるため、ニュートン法や最急降下法などのよく知られた手法で、簡易かつ最適な値が得られる。得られたパラメータ（α，ベクトルβ）とこの場合の確率モデルＱを、各記号の上に「＾」を付けて表記することにすると、（４）式で表される（ステップＳ２）。
【数４】
2006185099.tif 000008
【００２１】
次に、モデル作成部１は、各サンプルごとに、荷重値（＝重み）ｗt＝｛ｗt1,…,ｗtN｝を計算する（ステップＳ３）。このとき、荷重値ｗti（ｉ＝1,…,N）は（５）式で表される。
【数５】
2006185099.tif 000009
【００２２】
ただし、ｚtは（６）式で表される。
【数６】
2006185099.tif 000010
【００２３】
実際に１年以内に倒産していればｃi＝１である。このとき、１−ｃi＝０となり、（５）式中の括弧内は倒産しない確率を表す。逆に、１年以内に倒産していなければ、ｃi＝０となり、（５）式中の括弧内は倒産する確率を表す。
【００２４】
このように、（５）式中の括弧内は、現実に起こった事象とは反対の事象が生じる確率を表しており、荷重値ｗtは現実に起こらなかった事象が発生するとモデルで推定した確率を表す。この荷重値ｗtを各サンプルに乗じることは、実際に発生しなかった事象を大きく推定したサンプルに大きな荷重値を掛けることになる。従って、次回の学習では、このサンプルを強調してモデルを作成するというように直感的に解釈できる。
【００２５】
ここで、目的関数をｌ(ｗ，Ｄ，Ｐ)と表記することにする。Ｐはこれから新しく求める重みｗに対応した確率モデルであり、本実施形態ではロジットモデルを考える。Ｐは（７）式で表される。
【数７】
2006185099.tif 000011
【００２６】
目的関数ｌ(ｗ，Ｄ，Ｐ)は重みｗにより重み付けした分布に対する対数尤度とする。このとき、（８）式で表される。
【数８】
2006185099.tif 000012
【００２７】
（８）式の目的関数を最大化するようにパラメータ（α，ベクトルβ）を定めることで、重み付けした分布に対するモデルを得ることができる（ステップＳ４）。
【００２８】
算出された最終的なパラメータに対応するモデルを（９）式で表し、（１０）式に基づいて、確率モデルＱ'(ｃ｜ベクトルｚ)を算出する（ステップＳ５）。
【数９】
2006185099.tif 000013
【数１０】
2006185099.tif 000014
【００２９】
（１０）式により、財務指標がベクトルｚである企業が１年以内に倒産する確率を算出することができる。
【００３０】
図１のモデル作成部１は、（１０）式の確率モデルＱ'(ｃ｜ベクトルｚ)を第２記憶部３に記憶する。
【００３１】
その後、入力部４を介して、ある企業の特定の財務指標が入力されると、確率算出部５は、第２記憶部３に記憶されている（１０）式のベクトルｚに、入力部４から入力された特定の財務指標で生成されるベクトルを入力して、この企業が１年以内に倒産する確率を算出する。
【００３２】
このように、第１の実施形態では、複数の企業のそれぞれについて、財務指標に基づいて倒産確率に関する確率モデルを生成する。このとき、実際に倒産が発生しなかったサンプルに対して大きな荷重値を掛けるようにして、次回の学習では、倒産が発生しなかったサンプルを強調して確率モデルを生成する。このようにして得られた確率モデルを記憶しておく。したがって、ある企業の特定の座標指標が入力されたときに、迅速に企業の倒産確率を簡易かつ精度よく算出することができる。
【００３３】
（第２の実施形態）
第１の実施形態は、企業の倒産確率を算出する例を説明したが、第２の実施形態は、種々の事象の発生確率を算出できるように、第１の実施形態を一般化したものである。
【００３４】
第２の実施形態では、（１１）式で表されるサンプルセットを用意し、これを学習データとする。
【数１１】
2006185099.tif 000015
【００３５】
サンプルの番号をｉとすると、ｉ番目のサンプルは（ベクトルｘi，ｃi）で表される。ここで、ベクトルｘiは説明変数であり、ｘiのｊ番目の成分は、ｘij（ｊ＝1,…,n）で表される。ｃは「０」か「１」を取りうる非説明変数である。
【００３６】
予め与えられた確率モデルＱ(ｃ｜ベクトルｚ）により、各サンプルの確率Ｑ（ｃ｜ベクトルｘ）を計算する。
【００３７】
次に、（１２）式に基づいて各サンプルごとに荷重値（＝重み）ｗ＝｛ｗ1,…,ｗN｝を計算する。
【数１２】
2006185099.tif 000016
【００３８】
（１２）式中のｚｔは（１３）式で表される。
【数１３】
2006185099.tif 000017
【００３９】
ここで、目的関数をｌ(ｗ，Ｄ，Ｐ)と表記する。Ｐはこれから新しく求める重みｗに対応した確率モデルである。本実施形態では、目的関数を、重みｗにより重み付けした分布に対する対数尤度とする。この場合、目的関数ｌ(ｗ，Ｄ，Ｐ)は（１４）式で表される。
【数１４】
2006185099.tif 000018
【００４０】
目的関数は、必ずしも対数尤度でなくてもよく、AICやTICなどの他の関数を用いてもよい（なお、AICやTICについては、竹内啓：「情報統計量の分布とモデルの適切さの基準」、数理科学、No. 153 (1976) p12-18.を参照）。
【００４１】
ここで、Pθ(ｃ｜ベクトルｚ）がθをパラメータとするパラメトリックモデルであるとき、目的関数ｌ(ｗ，Ｄ，Ｐθ)は（１５）式で表される。
【数１５】
2006185099.tif 000019
【００４２】
（１５）式の目的関数を最大化するようにθを定めることで、重み付けした分布に対するモデルを得ることができる。
【００４３】
他の目的関数の例として、（１６）式に示す二乗誤差を用いることもできる。
【数１６】
2006185099.tif 000020
【００４４】
この場合、目的関数を最小化することで、重み付けした分布に対するモデルを得ることができる。
【００４５】
以下では、目的関数を最大化または最小化することにより得られるθの最適解を、θの上に「＾」を付けて表す。
【００４６】
ここでは、Ｐθ(ｃ｜ベクトルｘ)として、図３に示すニューラルネットワークを考える。図３のニューラルネットワークの出力をＰθ(１｜ベクトルｘ)とみなす。ニューラルネットワークでは、ノード間の枝に対応した荷重値とノードに対応した閾値をパラメータθと考える。
【００４７】
また、Ｐθ(０｜ベクトルｘ)＝１−Ｐθ(１｜ベクトルｘ)として計算し、上述した（１５）式により目的関数を算出する。そして、この目的関数が最大となるようにθを決定することで、パラメータが決定される。（１５）式の目的関数の代わりに、近似式である以下の（１７）式を用いて目的関数を算出してもよい。
【数１７】
2006185099.tif 000021
【００４８】
（１７）式の目的関数を採用する場合は、目的関数を最小化することで、パラメータθの最適解を算出する。
【００４９】
算出されたパラメータθの最適解に対応するモデルを、（１８）式で表記することにする。
【数１８】
2006185099.tif 000022
【００５０】
次に、（１９）式に基づいて、最終的な確率モデルを算出する。
【数１９】
2006185099.tif 000023
【００５１】
（１９）式で算出した確率モデルを、図１の第２記憶部３に記憶しておけば、ベクトルｚに所定の説明変数を与えることで、ある事象の発生確率を簡易かつ精度よく算出することができる。
【００５２】
このように、第２の実施形態では、種々の事象について、予め（１９）式に基づいて確率モデルを算出して第２記憶部３に記憶しておくため、その事象の発生（または発生しない）確率を簡易かつ精度よく算出することができる。
【００５３】
（第３の実施形態）
上述した第２の実施形態では、（１９）式に示す確率モデルを１回だけ算出しているが、重みｗを更新しながら確率モデルの算出を所定回数繰り返し行って、最終的な確率モデルを算出してもよい。
【００５４】
図４は本発明の第３の実施形態に係る確率モデル作成システムの処理手順を示すフローチャートである。まず、以下の（２０）式で表されるデータセットを用意して学習データとする。
【数２０】
2006185099.tif 000024
【００５５】
サンプルの番号をｉとすると、ｉ番目のサンプルは（ベクトルｘi，ｃi）で表される。ｔは世代を表すものとし、初期状態ではｔ＝１とする。ベクトルｘiは説明変数であり、ベクトルｘiのｊ番目の成分はｘij（ｊ＝1,…,n）で表される。ｃiは非説明変数であり、「０」か「１」を取る。
【００５６】
まず、ｔ＝１の場合の荷重値（＝重み）ｗ1として、（２１）式のように初期設定する（ステップＳ１１）。
【数２１】
2006185099.tif 000025
【００５７】
なお、ｔ回目の荷重値ｗtは、各サンプル（ｉ＝1,2,…,N）ごとに、ｗt＝｛ｗt1,…,ｗtN｝で表される。
【００５８】
次に、（２２）式に示すように、目的関数ｌ(ｗt,Ｄ,Ｐθ)が最大になるように、θを決定する（ステップＳ１２）。
【数２２】
2006185099.tif 000026
【００５９】
目的関数ｌ(ｗt,Ｄ,Ｐθ)が最大になる確率モデルＰ(t)(ｃ｜ベクトルｘ)は、（２３）式で表される。この確率モデルＰ(t)(ｃ｜ベクトルｘ)は、各回ごとに図１の第１記憶部２に記憶しておく。
【数２３】
2006185099.tif 000027
【００６０】
例えば、確率モデルＰθ(ｃ｜ベクトルｘ)として、ニューラルネットワークを考え、ニューラルネットワークの出力をＰθ(１｜ベクトルｘ)とする。ニューラルネットワークでは、ノード間の枝に対応した荷重値とノードに対応した閾値をパラメータとして考える。
【００６１】
また、Ｐθ(０｜ベクトルｘ)＝１−Ｐθ(１｜ベクトルｘ)として計算し、上述した（２２）式を用いて目的関数を定義する。そして、この目的関数が最大となるようにθを決定することで、パラメータを決定できる。目的関数は、近似的に（２４）式のように置き換えてもよい。
【数２４】
2006185099.tif 000028
【００６２】
（２４）式の目的関数を採用する場合、目的関数を最小化することで、パラメータθの最適解を算出できる。算出されたパラメータθの最適解に対応する確率モデルＰ(t)(ｃ｜ベクトルｘ)は、上述した（２３）式で表される。
【００６３】
次に、（２５）式に従って、次回の重みｗt+1を算出する（ステップＳ１３）。
【数２５】
2006185099.tif 000029
【００６４】
ここで、ｚtは、（２６）式で表される。算出された重みは、各回ごとに図１の第１記憶部２に記憶しておく。
【数２６】
2006185099.tif 000030
【００６５】
次に、終了条件を満たしたか否かを判定する（ステップＳ１４）。終了条件を満たさなければ、ｔを「１」だけインクリメントして（ステップＳ１５）、ステップＳ１２以降の処理を繰り返す。
【００６６】
ここで、終了条件としては、以下のようなものが考えられる。
【００６７】
（１）回数を指定する場合であり、ｔが一定の数を上回る。
【００６８】
（２）重み付けした分布に対してまったく学習できない場合。すなわち、ｌt(θ)−ｌ1/2が予め定めた値Δよりも小さくなった場合である。ここで、ｌ1/2は、すべてのｉ（ｉ＝1,2,…,Ｎ）に対して、Ｐ(t)(ｃi｜ベクトルｘi)＝1/2となる目的関数の値である。
【００６９】
（３）元の分布に対して学習できない場合。この場合、ｌ1(Ｑ(t-1))≧ｌ1(Ｑt)となる。この処理を実行する場合、毎回Ｑtを算出する必要がある。
【００７０】
（４）評価用サンプルに対する目的関数を改善できない場合。評価用サンプルＤ'を用いて、（２７）式を定義しておき、ｌ'1(Ｑ(t-1))≧ｌ'1(Ｑ(t))となる場合。
【数２７】
2006185099.tif 000031
【００７１】
終了条件を満たせば、（２８）式に従って最終的な確率モデルＱt(ｃ｜ベクトルｚ)を算出する（ステップＳ１６）。
【数２８】
2006185099.tif 000032
【００７２】
このように、第３の実施形態では、重みを更新しながら繰り返し確率モデルを算出して最終的な確率モデルを得るため、学習結果を十分に考慮に入れた精度の高い事象の発生確率を求めることができる。
【００７３】
（第４の実施形態）
第４の実施形態は、第３の実施形態を拡張して、企業の信用リスクの予測を行うものである。
【００７４】
まず、（２９）式で示すデータセットを用意して、学習データとする。
【数２９】
2006185099.tif 000033
【００７５】
ベクトルｘiのｊ成分は、第１の実施形態と同様に財務指標を表す。上述した表１にある財務指標ID1〜ID67を全集合Ω＝｛ｘ1,…,ｘ67｝とし、ベクトルｘi＝（ｘi1,…,ｘi67）とする。また、（３０）式を満たす部分集合Ａを定義する。
【数３０】
2006185099.tif 000034
【００７６】
ベクトルｘ(A)は、部分集合Ａに対応した添え字のベクトルである。例えば、ベクトルｘ({2,5,6})＝(ｘ2,ｘ5,ｘ6)である。また、訓練用データＤと評価用データＤ'を用意する。
【００７７】
サンプル番号（企業番号）をｉとし、ｉ番目のサンプルは（ベクトルｘi,ｃi）で表される。また、ｔは世代を表し、初期状態ではｔ＝１である。非説明変数ｃは、「０」（非倒産）か、「１」（倒産）である。
【００７８】
第１世代の訓練用データＤ(1)＝Ｄと評価用データＤ'(1)＝Ｄは、全業種のデータであるが、このうちの製造業だけを取り出したデータを第２世代とし、それぞれＤ(2)とＤ(2) 'とする。
【００７９】
製造業で規模の大きな（例えば従業員数30名以上の）企業のサンプルをそれぞれＤ(3)とＤ (3) 'とする。この例では新世代のデータは旧世代のデータに含まれており、（３１）式が成立するが、必ずしもこれを満たさなくてもよい。
【数３１】
2006185099.tif 000035
【００８０】
まず、ｔ＝１の場合の荷重値（＝重み）ｗ1を、（３２）式のように初期設定する。
【数３２】
2006185099.tif 000036
【００８１】
ここで、各サンプル（ｉ＝1,2,…,N）ごとの荷重値ｗtは、ｗt＝｛ｗt1,…,ｗtN｝で表される。
【００８２】
部分集合Ａは、上述した（３０）式を満たす集合とし、ベクトルｘ(A)は、Ａに対応したベクトルである。例えば、ベクトルｘ({2,5,6})＝（ｘ2,ｘ5,ｘ6）である。１つ以上の部分集合Ａに対して、（３３）式に示す目的関数を定義する。
【数３３】
2006185099.tif 000037
【００８３】
ここで、Ａ＝Ａ1,…,Ａmとする。このとき、ｍ個の目的関数が存在することになる。この実施形態では、ロジットモデルを採用することにする。例えば、Ａ1＝{2,5,6}の場合、ベクトルｘ({2,5,6})＝（ｘ2,ｘ5,ｘ6）となる。このときの確率モデルは、（３４）式のようになる。
【数３４】
2006185099.tif 000038
【００８４】
（３４）式において、θ({2,5,6})＝（α2,α5,α6,β）である。
【００８５】
Ａ2＝{1,5,6,12}の場合、ベクトルｘ({1,5,6,12})＝（ｘ1,ｘ5,ｘ6,ｘ12）である。このときの確率モデルは、（３５）式のようになる。
【数３５】
2006185099.tif 000039
【００８６】
（３５）式において、θ({1,5,6,12})＝（α1,α5,α6,α12,β）である。
【００８７】
各Ａに対応した目的関数を最大にするθ(A)を、θ(A)の記号の上に「＾」を付けて表記することにする。
【００８８】
他方、各Ａに対する評価用目的関数は、評価用データＤ'と
【数３６】
2006185099.tif 000040
とを用いると、（３６）式のように定義される。
【数３７】
2006185099.tif 000041
【００８９】
（３６）式の評価用目的関数を最大にするＡを、記号Ａの上に「＾」を付けて表記することにする。この場合、（３６）式が最大となるときの確率モデルは、（３７）式のようになる。
【数３８】
2006185099.tif 000042
ｔ≧２では、Ｄ(t)の各サンプルに対してＰ(t-1)(ｃ｜ベクトルｘi)を算出し、（３７）式に従ってｃと対応した事象の発生しない確率を算出する。
【数３９】
2006185099.tif 000043
【００９０】
（３８）式と１世代前の荷重値ｗit-1の積を取ると、ｔ世代の荷重値ｗitは（３９）式で表される。
【数４０】
2006185099.tif 000044
【００９１】
（３９）式中のｚtは、（４０）式のようになる。
【数４１】
2006185099.tif 000045
【００９２】
次に、目的関数ｌ(W(t),Ｄ(t),Ｐθ)を最大化するようにθを設定する。ここでは、特に、重みｗtにより重み付けした分布に対する対数尤度を（４１）式のようなものとする。
【数４２】
2006185099.tif 000046
【００９３】
各Ａに対応した目的関数を最大とするθ(A)を、記号θ(A)の上に「＾」を付けて表記することにする。他方、評価用データＤ(t)'と目的関数θ(A)の最大値とを用いると、各Ａに対する評価用目的関数は、（４２）式のように定義される。
【数４３】
2006185099.tif 000047
【００９４】
この（４２）式を最大にするＡを、記号Ａの上に「＾」を付けて表記する。これにより、確率モデルは、（４３）式のようになる。
【数４４】
2006185099.tif 000048
【００９５】
ｔ＝３まで、以上の処理を繰り返した後、求まった確率モデルＰ(t)(ｃi｜ベクトルｘi)を用いて、（４４）式に基づいて最終的な確率モデルを算出する。
【数４５】
2006185099.tif 000049
【００９６】
この（４４）式の確率モデルは、図１の第２記憶部３に記憶される。この（４４）式の確率モデルのベクトルｚに、ある企業の財務指標を入力することにより、ある企業が１年以内に倒産する確率を計算することができる。
【００９７】
一般に、|Ｄ(3)|＜|Ｄ(2)|＜|Ｄ(1)|、かつ|Ｄ(3)'|＜|Ｄ(2)'|＜|Ｄ(1)'|である。規模の大きな製造業のサンプル数|Ｄ(3)|や|Ｄ(3)'|は少なく、モデルのパラメータを正確に決めるのは困難である。しかし、本手法を用いれば、全サンプルを用いて基本となるモデルＰ(1)を定めておいて、これを修正することで、全体モデルＱ(ｃ｜ベクトルｚ)を構築することができるため、精度の高いモデルが得られる。
【００９８】
実際、多くの場合、Ｐ(2)やＰ(3)に含まれるパラメータ数は、Ｐ(1)に含まれるパラメータ数よりも少ない。場合によっては、部分集合Ｄ(t)が小さすぎて、モデルを改善できない場合がある。この場合、Ｐ(t)(０｜ベクトルｚ)＝Ｐ(t)(１｜ベクトルｚ)＝1/2とすれば、ｔ世代目の学習結果とt-1世代目の学習結果が一致する。
【００９９】
このように、第４の実施形態では、基本となる確率モデルを予め作成しておき、その確率モデルを事象に応じて適宜修正することにより、精度のよい確率モデルを簡易に作成することができる。
【０１００】
（第５の実施形態）
第４の実施形態は、企業の信用リスクを評価する手法について説明したが、第５の実施形態は、第４の実施形態を一般化したものである。
【０１０１】
第５の実施形態は、第３の実施形態の目的関数を最大化または最小化することによりパラメータを決定してＰ(t)(ｃi｜ベクトルｘi)を算出する処理を拡張したものである。具体的には、世代ごとに最適な説明変数の部分集合を選択する手法を実装する。
【０１０２】
（４５）式に示す部分集合Ａを考える。
【数４６】
2006185099.tif 000050
【０１０３】
ベクトルｘ(A)は、部分集合に含まれる要素のベクトルである。例えば、ベクトルｘ({2,5,6})＝（ｘ2,ｘ5,ｘ6）である。また、訓練用データＤと評価用データＤ'を用意しておく。そして、第３の実施形態の目的関数の代わりに、１つ以上の部分集合Ａに対して、（４６）式に示す目的関数を定義する。
【数４７】
2006185099.tif 000051
【０１０４】
ここで、Ａ＝Ａ1,…,Ａmである。このとき、ｍ個の目的関数が存在することになる。この実施形態では、ロジットモデルを採用することにする。
【０１０５】
例えば、Ａ1＝{2,5,6}の場合、ベクトルｘ({2,5,6})＝（ｘ2,ｘ5,ｘ6）であり、確率モデルは（４７）式のようになる。θ({2,5,6})＝（α2,α5,α6,β）である。
【数４８】
2006185099.tif 000052
【０１０６】
Ａ2＝{1,5,6,12}の場合、ベクトルｘ({1,5,6,12})＝（ｘ1,ｘ5,ｘ6,ｘ12）であり、確率モデルは（４８）式のようになる。θ({1,5,6,12})＝（α1,α5,α6,α12,β）である。
【数４９】
2006185099.tif 000053
【０１０７】
各Ａに対応した目的関数の最大値θ(A)を、記号θ(A)の上に「＾」を付けて表記する。
【０１０８】
また、評価用データＤ'と
【数５０】
2006185099.tif 000054
とを用いて、各Ａに対して（４９）式に示す評価用目的関数を定義する。
【数５１】
2006185099.tif 000055
【０１０９】
（４９）式を最大とするＡを記号Ａの上に「＾」を付けて表記する。このようにして求まった
【数５２】
2006185099.tif 000056
を用いると、（５０）式が得られる。
【数５３】
2006185099.tif 000057
【０１１０】
確率モデルを算出した後の処理は第３の実施形態と同様に行う。
【０１１１】
（第６の実施形態）
第６の実施形態は、第３の実施形態の目的関数を最大化または最小化することによりパラメータを決定してＰ(t)(ｃi｜ベクトルｘi)を算出する処理を拡張したものである。具体的には、世代ごとに最適な種類のモデルを選択する手法を実装する。
【０１１２】
上述した第３の実施形態において、Ｐは世代ｔごとに異なる関数族である。つまり、異なる種類のモデルＰk（ｋ＝1,…,m）を用意しておく。例えば、ｋ＝1,2,3とし、ｋ＝１はロジットモデル、ｋ＝２は中間層のノード数２のニューラルネットワーク、ｋ＝３は決定木という構成を考えることができる。
【０１１３】
次に、（５１）式に示す目的関数を考える。
【数５４】
2006185099.tif 000058
【０１１４】
ここで、λは「１」以上の予め定められた数値とし、|θ|はモデルに含まれるパラメータ数を表す。（５１）式の第二項は、モデルに含まれるパラメータ数が多くなりすぎることに対するペナルティであり、AIC（Akaike Information Criteria）では、λ＝１である。
【０１１５】
（５１）式の目的関数を最大にする解を、（５２）式のように表すと、このときの確率モデルは（５３）式で表される。
【数５５】
2006185099.tif 000059
【数５６】
2006185099.tif 000060
【０１１６】
（５３）式の確率モデルＰが算出されると、その後の処理は第３の実施形態と同様に行う。
【０１１７】
（第７の実施形態）
第７の実施形態は、第３の実施形態とは、重みの更新手法が異なっている。第３の実施形態では、（５４）式に従って重みの更新を行っていた。
【数５７】
2006185099.tif 000061
【０１１８】
第７の実施形態では、以下の（５５）〜（５７）式に基づいて重みの更新を行う。
【数５８】
2006185099.tif 000062
【０１１９】
（５５）〜（５７）式は、t-1までのモデルでまったく検討はずれの予測しかできないサンプルは、サンプル自体に問題があるとみなして、サンプルから除外することに対応している。式中の閾値100/Nは、世代ｔに依存して変化させてもよい。
【０１２０】
このように、第７の実施形態では、信頼性の低いサンプルを除外して重みの更新を行うため、信頼性の高い重みを算出でき、ひいては精度の高い確率モデルを算出できる。
【０１２１】
（第８の実施形態）
第８の実施形態は、上述した実施形態とは確率モデルＰの形式が異なるものである。
【０１２２】
（５８）式に示す学習データＤにおいて、ｃ＝０，１の２値しか取らないとする。
【数５９】
2006185099.tif 000063
【０１２３】
また、（５９）式に示す確率モデルＰを考える。
【数６０】
2006185099.tif 000064
【０１２４】
（５９）式において、（６０）式の制約をつける。
【数６１】
2006185099.tif 000065
【０１２５】
すなわち、判別モデルを組み合わせて最良の結果を得たい場合を想定する。この場合、第３の実施形態で尤度が最大となるように確率モデルＰを導出するのと同様の結果を、異なる手法で実現することができる。以下、その手法を説明する。
【０１２６】
（６１）式が成立すれば正解、（６２）式が成立すれば不正解とし、エラー率εtが最小になるようにｈ(ベクトルｚ)の中に含まれるパラメータを決定する。
【数６２】
2006185099.tif 000066
【０１２７】
判別モデルでは、エラー率が最小になるようにモデルを構成するため、この処理は通常の判別モデル作成に対応する。エラー率は、全サンプルに占める不正解となったサンプルの割合である。また、（６３）式が成立するとする。
【数６３】
2006185099.tif 000067
【０１２８】
算出したｈt(ベクトルｚ)とλ１を、上述した（５９）式に代入することで、Ｐt(１｜ｚ)とＰt(０｜ｚ)＝１−Ｐt(１｜ｚ)が求まる。
【０１２９】
これ以降の処理は、第３の実施形態と同様に、確率モデルＰを用いて、（６４）式に示す最終的な確率モデルＱｔ(ｃ｜ベクトルｚ)を算出する。
【数６４】
2006185099.tif 000068
【０１３０】
あるいは、各世代ごとに求まったｈtとλtを用いて、以下の（６５）式および（６６）式により、最終的な確率モデルを算出することもできる。
【数６５】
2006185099.tif 000069
【０１３１】
また、閾値をΛとして、確率モデルＱｔ(１｜ベクトルｚ)＞Λであれば、推定値１確信度Ｑt(１｜ベクトルｚ)を出力する。Ｑt(１｜ベクトルｚ)≦Λであれば、推定値０確信度Ｑt(０｜ベクトルｚ)を出力する。
【０１３２】
特に、Λ＝1/2の場合、推定値はAdaBoostingの結果と一致するが、AdaBoostingでは確信度を算出することはできない。
【０１３３】
（第９の実施形態）
第９の実施形態は、文字認識を行うものである。
【０１３４】
図５（ａ）はアルファベットの「Ａ」を表す５×５のピクセルデータを示す。この図５（ａ）の各ピクセルごとに２値表現を行うと、図５（ｂ）のような結果が得られる。
【０１３５】
本実施形態では、図５（ｂ）に示す５×５のピクセル群をベクトルｘiとして表現する。具体的には、ベクトルｘi＝（0,0,1,0,0,0,1,0,1,0,0,1,1,1,0,1,0,0,1,0,0,0,1）となる。非説明変数ｃは、文字の種別を表すとする。したがって、「Ａ」を表すｃA＝１となり、その他の文字に対応するｃ0〜ｃ9とｃB〜ｃZはいずれも「０」となる。正確には、（６７）式で表現することができる。
(c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, cA, cB, cC, cD, cE, cF, cG, cH, cI, cJ, cK, cL, cM, cN, cO, cP, cQ, cR, cS, cT, cU, cV, cW, cX, cY, cZ)
=(0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
【０１３６】
ここで、（６８）式に示すデータセットにおいて、各文字ごとにモデルを作成する。
【数６６】
2006185099.tif 000070
【０１３７】
各文字ごとに第１の実施形態と同様の処理により、モデル作成を行う。この結果、（６９）式のようなモデルが得られる。
【数６７】
2006185099.tif 000071
【０１３８】
図５（ａ）の入力に対して最適な解は、（Ｑ0,Ｑ1,…,Ｑ9）＝０、ＱA＝１、（ＱB,…,Ｑz）＝０である。これにより、入力された文字が「Ａ」であったことがわかる。実際には、このように明確に計算できず、ベクトルＱ＝（Ｑ0,Ｑ1,…,Ｑ9,ＱA,…,Ｑz）の中で最大の値を取る文字を回答として出力する。
【０１３９】
このように、第９の実施形態によれば、文字認識を精度よく行うことができる。
【０１４０】
（その他の具体例１）
第１の実施形態では、企業の倒産確率を算出する例を説明したが、本発明は、種々の事象が発生する（発生しない）確率を予測するために用いることができる。以下では、本発明を医療リスクの評価のために使用する例を説明する。
【０１４１】
まず、（７０）式に示すサンプルセットを用意して、これを学習データとする。
【数６８】
2006185099.tif 000072
【０１４２】
（７０）式において、サンプルの番号ｉは医療業務を識別する番号である。ｉ番目のサンプルは、（ベクトルｘi，ｃi）である。ｃiは、医療業務ｉの実行中にエラーの発生の有無を表すもので、０（エラーなし）または１（エラーあり）を取る非説明変数である。
【０１４３】
ここで、エラーがあっても、患者に何らかの影響が及ぶ場合とそうでない場合があるが、患者に影響の大きいエラー（事故）だけをカウントしてもよい。
【０１４４】
ベクトルｘiのｊ番目の成分をｘij（ｊ＝1,…,n）と表記する。エラーと相関のある事象（影響因子と呼ぶ）の一覧を用意しておき、ｊ番目の成分は影響因子の一覧におけるｎj番目の指標と対応する。つまり、ｘijは医療業務ｉの影響因子ｎjの値である。表２は影響因子の一覧の一例を示している。
【表２】
2006185099.tif 000073
【０１４５】
その後は、第１の実施形態と同様の手順で処理を行って、最終的に、医療リスクの確率を算出することができる。
【０１４６】
（その他の具体例２）
次に、事務リスクの評価を行う例について説明する。
【０１４７】
まず、（７１）式に示すサンプルセットを用意して、これを学習データとする。
【数６９】
2006185099.tif 000074
【０１４８】
サンプルの番号ｉは単位事務を識別する番号である。ｉ番目のサンプルは、（ベクトルｘi，ｃ）で表される。ここでは、一例として、銀行の営業店の事務リスクの評価を行うことを考える。
【０１４９】
ｃiは定められた一定期間内（ここでは半年とする）に、単位事務ｉの実行中に損失事故の発生の有無を表すものであり、０（損失事故なし）または１（損失事故あり）を取りうる非説明変数である。
【０１５０】
損失事故とは、実際に１円以上の損失が発生したことをいう。また、ベクトルｘiのｊ番目の成分をｘij（ｊ＝1,…,n）と表記することにする。損失事故と相関のある事象（影響因子と呼ぶ）の一覧を用意しておき、ｊ番目の成分は影響因子の一覧におけるｎj番目の指標と対応する。
【０１５１】
つまり、ｘijは単位事務ｉの実行された営業店において、過去一定期間（ここでは、半年とする）に計測された影響因子ｎjの値である。
【０１５２】
表３は影響因子の一覧の一例を示す表である。
【表３】
2006185099.tif 000075
【０１５３】
影響因子の中に、過去の事務量当たりの損失事故が含まれているが、これは将来の損失事故を予測する入力として利用している。
【０１５４】
ここで、図６のような期間T1,T2を考える。ある営業店の期間T2における事務量が10,000時間であるとし、単位事務を1000時間とする。このとき、この営業店では、期間T2に10単位の単位事務を実行したことになる。この期間内に損失事故が２件発生したとする。
【０１５５】
また、この営業店において、期間T1に計測された結果をベクトルｘで表すと、この営業店については以下の10サンプルが生成される。
（ベクトルｘ，１）
（ベクトルｘ，１）
（ベクトルｘ，０）
（ベクトルｘ，０）
（ベクトルｘ，０）
（ベクトルｘ，０）
（ベクトルｘ，０）
（ベクトルｘ，０）
（ベクトルｘ，０）
（ベクトルｘ，０）
【０１５６】
他の営業店についても、同様にしてサンプルを作成することができる。この問題では、損失事故が少ないことと、営業店の数がそれほど多くないため、詳細なモデルを構築することが難しい。そこで、過去に作成したモデルをＰ(1)(ｃ＝１｜ベクトルＸ＝ベクトルｘi)として、サンプルセットＤを用いて、Ｐ(2)(ｃ＝１｜ベクトルＸ＝ベクトルｘi)を算出する。そして、この算出結果を用いて、（７２）式を算出して、最終的な確率モデルを得る。
【０１５７】
この（７２）式により、事務量当たりの損失事故発生確率が算出される。
【数７０】
2006185099.tif 000076
【図面の簡単な説明】
【０１５８】
【図１】本発明の第１の実施形態に係る確率モデル作成システムの概略構成を示すブロック図。
【図２】図１のシステムの処理手順の一例を示すフローチャート。
【図３】ニューラルネットワークの一例を示す図。
【図４】本発明の第３の実施形態に係る確率モデル作成システムの処理手順を示すフローチャート。
【図５】（ａ）は文字「Ａ」のピクセルデータ、（ｂ）は（ａ）を２値表現したデータを示す図。
【図６】期間T1,T2を説明する図。
【符号の説明】
【０１５９】
１  モデル作成部
２  第１記憶部
３  第２記憶部
４  入力部
５  確率算出部
【図１】
2006185099.tif 000077
【図２】
2006185099.tif 000078
【図３】
2006185099.tif 000079
【図４】
2006185099.tif 000080
【図５】
2006185099.tif 000081
【図６】
2006185099.tif 000082