(57)【要約】      （修正有）【課題】共通する回帰式に対してＡＩＣを計算してモデルを選択し、元の差分方程式の推定値を求めてデータとの適合度を計算することなく、回帰分析の段階でモデルを選択する。【解決手段】ＡＩＣ計算部およびパラメータ推定・推定値算出部に対して保存している実データを入力する実データ入力・保存部と、選択されたモデルの判定を指令するモデル判定指令部と、ＡＩＣ計算部およびパラメータ推定・推定値算出部に対してモデル情報を入力するモデル情報入力部と、前記モデル判定指令部からの判定指令により、ＡＩＣ計算をして、パラメータ推定・推定値算出部に対して最も適合するモデルを出力するＡＩＣ計算部と、モデル情報入力部より、回帰分析のパラメータから各モデルのパラメータにどのように変換するのかという情報を受け取り、該モデルのパラメータおよび各時間周期ごとの推定値を計算するパラメータ推定・推定値算出部と、結果出力部とを設ける。【選択図】図１
2008234094.tif 000002
【特許請求の範囲】
【請求項１】
単調増加し最終的にある一定値になる現象を最も良く記述するモデルを選択し、前記現象中で発生する事象を予測する予測モデル選択方法であって、
モデル情報入力部から入力された現象を近似する複数のモデルに対して、実データ入力・保存部からデータを入力することにより、該複数のモデルを記述するそれぞれの微分方程式をそれぞれの差分方程式に変換し、
前記モデル情報入力部および前記実データ入力・保存部に接続されたＡＩＣ計算部では、前記複数の差分方程式からパラメータを推定するための共通の一つの回帰式を用いて、該回帰式に対してＡＩＣを計算して、ＡＩＣの値が最も小さいモデルを選択し、
前記ＡＩＣ計算部に接続されたパラメータ推定・推定値算出部では、該ＡＩＣ計算部により選択されたモデルに応じて回帰式のパラメータから元のモデルである差分方程式のパラメータを求め、前記現象中で発生する事象を推定し、該事象がある値になる時点の予測を行うことを特徴とする予測モデル選択方法。
【請求項２】
請求項１に記載の予測モデル選択方法において、
前記モデルとして、少なくとも指数形曲線とＳ字形曲線を含むことを特徴とする予測モデル選択方法。
【請求項３】
請求項１または２に記載の予測モデル選択方法において、
前記モデルを表現する微分方程式から変換される差分方程式が厳密解を持つようなモデルを選択することを特徴とする予測モデル選択方法。
【請求項４】
請求項１から３のいずれかに記載の予測モデル選択方法において、
前記現象を記述するモデルは、コンピュータウィルスの感染数を予測するコンピュータウィルス感染数予測モデル、ソフトウェアの信頼度あるいはバグ数を予測するソフトウェア信頼度成長モデル、人口の変化を予測する人口予測モデル、生物個体数の変化を予測する生物個体数予測モデル、ならびに、新製品、技術、およびサービスの普及を予測する普及予測モデルのうちの少なくともいずれか一つであることを特徴とする予測モデル選択方法。
【請求項５】
単調増加し最終的にある一定値になる現象を最も良く記述するモデルを選択し、該モデルの差分方程式の厳密解がある値になるのに今後どれだけの時間がかかるかという予測を行う予測方法であって、
モデル情報入力部から入力された現象を近似する複数のモデルに対して、実データ入力・保存部からデータを入力することにより、該複数のモデルを記述するそれぞれの微分方程式をそれぞれの差分方程式に変換し、
前記モデル情報入力部および前記実データ入力・保存部に接続されたＡＩＣ計算部では、該複数の差分方程式からパラメータを推定するための共通の一つの回帰式を用いて、該回帰式に対してＡＩＣを計算して、モデルの選択を行い、
前記ＡＩＣ計算部に接続されたパラメータ推定・推定値算出部では、該ＡＩＣ計算部により選択されたモデルに応じて回帰式のパラメータを求め、前記現象中で発生する事象がある値になる時点の予測を行うことを特徴とする予測方法。
【請求項６】
単調増加し最終的にある一定値になる現象を最も良く記述するモデルを選択し、選択されたモデルのパラメータを推定するパラメータ推定装置であって、
ＡＩＣ計算部およびパラメータ推定・推定値算出部に対して保存している実データを入力する実データ入力・保存部と、
選択されたモデルの判定を指令するモデル判定指令部と、
ＡＩＣ計算部およびパラメータ推定・推定値算出部に対してモデル情報を入力するモデル情報入力部と、
前記モデル判定指令部からの判定指令により、前記実データ入力・保存部からの実データと、前記モデル情報入力部からのモデル情報とを受け取り、ＡＩＣ計算をして、パラメータ推定・推定値算出部に対して最も適合するモデルを出力するＡＩＣ計算部と、
前記モデル情報入力部より、回帰分析のパラメータから各モデルのパラメータにどのように変換するのかという情報を受け取り、前記ＡＩＣ計算部より最も適合するモデルを受け取り、該モデルのパラメータおよび各時間周期ごとの推定値を計算するパラメータ推定・推定値算出部と、
前記パラメータ推定・推定値算出部から出力された最も適合するモデルのモデル名、最も適合するモデルのパラメータ、推定値を出力する結果出力部と
を有することを特徴とするモデルパラメータ推定装置。
【請求項７】
単調増加し最終的にある一定値になる現象を最も良く記述するモデルを選択し、前記現象中で発生する事象を予測する予測モデル選択用プログラムであって、
実データ入力・保存部とＡＩＣ計算部のコンピュータに、モデル情報入力部から現象を近似する複数のモデルを受け取る手順、実データ入力・保存部からのデータをＡＩＣ計算部で受け取る手順、該複数のモデルを記述するそれぞれの微分方程式をそれぞれの差分方程式に変換する手順、前記複数の差分方程式からパラメータを推定するための共通の一つの回帰式を用いて、該回帰式に対してＡＩＣを計算する手順、ＡＩＣの値が最も小さいモデルを選択する手順を、それぞれ実行するための予測モデル選択用プログラム。
【請求項８】
単調増加し最終的にある一定値になる現象を最も良く記述するモデルを選択し、前記現象中で発生する事象を予測する予測モデル選択用プログラムであって、
パラメータ推定・推定値算出部のコンピュータに、ＡＩＣ計算部により選択されたモデルのデータを受け取り、該選択されたモデルに応じて回帰式のパラメータから元のモデルである差分方程式のパラメータを求める手順、前記現象中で発生する事象を推定する手順、該事象がある値になる時点の予測を行う手順を、それぞれ実行するための予測モデル選択用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、指数形やＳ字形の曲線で近似できる単調増加し、最終的にある一定値（飽和値）になる現象で、最も良くその現象を表現しているモデルの選択方法、その事象を予測する予測方法、パラメータ推定装置、ならびにそのプログラムに関する。
【背景技術】
【０００２】
コンピュータウィルスの感染数を予測するコンピュータウィルス感染数予測モデル、ソフトウェアの信頼度あるいはバグ数を予測するソフトウェア信頼度成長モデル、人口の変化を予測する人口予測モデル、静物個体数の変化を予測する生物個体数予測モデル、ならびに新製品、技術、およびサービスの普及を予測する普及予測モデルは、指数形曲線やＳ字形曲線で記述されることが多い。そのモデルは複数提案されており、実際にデータが与えられたときに、どのモデルが最もそのデータに適しているのかは経験則で決めていることが多く、モデル選択のための基準は少ない。
【０００３】
モデル選択のための基準としては、ソフトウェア信頼度成長モデルにおいて、文献（山田茂：ソフトウェア信頼性モデル−基準と応用、日科技連）のｐｐ．１２５−１２９（非特許文献１参照）にあるが、これらは曲線が最終的に落ち着く一定値（飽和値）になってから複数のモデルの善し悪しを評価するものであったり、モデル選択を行う上での考え方が書かれているものであるため、実際にデータが与えられ、予測が必要なときに複数のモデルのうち、どれが好ましいのかを判定する指標としては不十分である。
【０００４】
実データからモデル選択を行うための指標としては、同じくソフトウェア信頼度成長モデルにおいて特開２００３−１８６７０１号公報（特許文献１参照）あるいはＤ．Ｓａｏｈ  ａｎｄ  Ｓ．Ｙａｍａｄａ：Ｄｉｓｃｒｅｔｅ  ｅｑｕａｔｉｏｎｓ  ａｎｄ  ｓｏｆｔｗａｒｅ  ｒｅｌｉａｂｉｌｉｔｙ  ｇｒｏｗｔｈ  ｍｏｄｅｌｓ，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  １２ｔｈ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｒｅｌｉａｂｉｌｉｔｙ  Ｅｍｇｉｎｅｅｒｉｎｇ，（ＩＥＥＥ  Ｃｏｍｐｕｔｅｒ  Ｓｏｃｉｅｔｙ，ＨｏｎｇＫｏｎｇ，Ｎｏｖｅｍｂｅｒ，２００１）１７６−１８４（非特許文献２参照）がある。以後、この方法について説明する。なお、注目する事象がソフトウェア信頼度成長モデルの場合、累積バグ数となるが、冒頭で掲げた各現象においてはその注目する事象に読み替えれば良い。以後は、ソフトウェア信頼度成長モデルを例に説明していく。
【０００５】
このモデル選択法では、実データが、ともにＳ字形曲線を示すロジスティック曲線モデルとゴンペルツ曲線モデルのいずれにより適合しているかを判断する指標である。その指標とは、以下に示すものであり、ＣＬ（ｎ）とＣＧ（ｎ）の値の小さい方が適したモデルとなる。
【０００６】
【数１】
2008234094.tif 000003
【０００７】
【数２】
2008234094.tif 000004
ここで、Ｄｉは第ｉ期における実データの値、
【０００８】
【数３】
2008234094.tif 000005
はそれぞれロジスティック曲線モデル、ゴンペルツ曲線モデルによって得られた第ｉ期における推定値である。この推定値は、厳密解を持つ差分方程式を用いて回帰分析によって与えられる。まず、ロジスティック曲線モデルの回帰式は以下の通りである。
Ｙｎ＝Ａ＋ＢＬｎ＋１                                           （３）
ここで、
【０００９】
【数４】
2008234094.tif 000006
【００１０】
【数５】
2008234094.tif 000007
【００１１】
【数６】
2008234094.tif 000008
式（３）を用いて回帰分析を行い、得られたＡ，Ｂの推定値から元の差分方程式のパラメータであるｋ，α，ｍを求め、厳密解
【００１２】
【数７】
2008234094.tif 000009
により推定値を求め、ＣＬ（ｎ）を計算する。
一方、ゴンペルツ曲線モデルの回帰式は、
【００１３】
【数８】
2008234094.tif 000010
で与えられる。ここで、
【００１４】
【数９】
2008234094.tif 000011
【００１５】
【数１０】
2008234094.tif 000012
【００１６】
【数１１】
2008234094.tif 000013
である。式（８）を用いて回帰分析を行い、得られたＡ，Ｂの推定値から元の差分方程式のパラメータであるｋ，ａ，ｂを求め、厳密解
【００１７】
【数１２】
2008234094.tif 000014
により推定値を求め、ＣＧ（ｎ）を計算する。
【００１８】
【特許文献１】特開２００３−１８６７０１号公報
【非特許文献１】山田茂：ソフトウェア信頼性モデル−基準と応用、日科技連のｐｐ．１２５−１２９
【非特許文献２】Ｄ．Ｓａｏｈ  ａｎｄ  Ｓ．Ｙａｍａｄａ：Ｄｉｓｃｒｅｔｅ  ｅｑｕａｔｉｏｎｓ  ａｎｄ  ｓｏｆｔｗａｒｅ  ｒｅｌｉａｂｉｌｉｔｙ  ｇｒｏｗｔｈ  ｍｏｄｅｌｓ，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  １２ｔｈ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｒｅｌｉａｂｉｌｉｔｙ  Ｅｍｇｉｎｅｅｒｉｎｇ，（ＩＥＥＥ  Ｃｏｍｐｕｔｅｒ  Ｓｏｃｉｅｔｙ，ＨｏｎｇＫｏｎｇ，Ｎｏｖｅｍｂｅｒ，２００１）１７６−１８４
【発明の開示】
【発明が解決しようとする課題】
【００１９】
前述のように、従来の技術では、実データと推定値との相対二乗誤差の和を比較することにより、モデルの判定を行っている。このような誤差によって判定を行う場合には、比較するモデルで使われているパラメータ数が一致している必要がある。何故ならば、パラメータ数が増えると、それに伴って適合度は上がっていくからである。そのため、従来技術では、パラメータ数が異なるモデル間で比較することができない、という問題がある。
また、従来技術では、実データと推定値とを比較するため、回帰式によって求められたパラメータを元の差分方程式のパラメータに変換し、その変換されたパラメータを厳密解に代入して初めて推定値が得られ、その推定値と実データとを比較しなければならない。このため、モデル選択をするためには、モデル選択だけのためにわざわざ各モデルでの推定値に変換しなければならない、という問題もある。
【００２０】
（目的）
本発明の目的は、共通する回帰式に対してＡＩＣを計算することによりモデルの選択ができ、パラメータの数が異なるモデルに対してもモデルの比較が可能となり、かつ元の差分方程式の推定値を求めてデータとの適合度を計算することなく、回帰分析の段階でモデルの選択が可能になる予測モデル選択方法、予測方法、およびパラメータ推定装置、ならびにそのプログラムを提供することにある。
【課題を解決するための手段】
【００２１】
本発明の予測モデル選択方法では、微分方程式を差分方程式に書き換おる場合、通常の前進差や中心差分ではない差分法を行うことにより、上記の回帰式の性質を満足するものを導き出すとともに、微分方程式からの離散化誤差を考慮しなくて済むように、その差分方程式は厳密解を持つような差分方程式を導き出し、この差分方程式を用いてパラメータ推定のための回帰式に変換することにより、ＡＩＣ（赤池情報量規準）によるモデル選択を可能にする。
なお、パラメータ数が異なるモデルの比較には、ＡＩＣが用いられるが、ＡＩＣを計算するには回帰式が全てのモデルを含んでいなければならない。つまり、回帰式のパラメータのいずれかを０にすることによって、他のモデルになっていなければならない。
【発明の効果】
【００２２】
本発明によれば、共通する回帰式に対してＡＩＣを計算することによりモデルの選択ができるようになり、パラメータの数が異なるモデルに対してもモデルの比較が可能となる。さらに、元の差分方程式の推定値を求めてデータとの適合度を計算せずに、回帰分析の段階でモデルの選択が可能となる。
【発明を実施するための最良の形態】
【００２３】
以下、数式および図面を用いて、本発明の実施の形態を詳細に説明する。
まず、はじめに複数のモデルから得られる共通の回帰式を説明する。
ここでは、指数形モデル、Ｓ字形モデル（ロジスティック曲線モデル、リカッチ方程式モデル）のパラメータを推定するための共通のひとつの回帰式を示す。Ｍｎをｎ番目の期間（たとえば一日や一週間など）までに発見された累積バグ数として指数形モデル、Ｓ字形モデル（ロジスティック曲線モデル、リカッチ方程式モデル）のパラメータを推定するための共通のひとつの回帰式は、
【００２４】
【数１３】
2008234094.tif 000015
と表される。ここで、
【００２５】
【数１４】
2008234094.tif 000016
である。この回帰式を用いて回帰分析、ＡＩＣの計算によるモデル選択を行う。
式（１３）は、
【００２６】
【数１５】
2008234094.tif 000017
のとき指数形モデルの回帰式
【００２７】
【数１６】
2008234094.tif 000018
【００２８】
【数１７】
2008234094.tif 000019
【００２９】
【数１８】
2008234094.tif 000020
となる。回帰分析によりＡ，Ｂが推定できれば、式（１７）（１８）をａｅ，ｂｅそれぞれについて解き、
【００３０】
【数１９】
2008234094.tif 000021
【００３１】
【数２０】
2008234094.tif 000022
また、δ＝１とおくことで、ａｅ，ｂｅの推定値を求めることができる。注目している事象の飽和値はａｅの推定値によって与えられる。指数形モデルの差分方程式とその厳密解は、
【００３２】
【数２１】
2008234094.tif 000023
【００３３】
【数２２】
2008234094.tif 000024
であり、時間間隔δ→０で微分方程式とその厳密解
【００３４】
【数２３】
2008234094.tif 000025
【００３５】
【数２４】
2008234094.tif 000026
に一致する。
推定値に必要なｍｅはデータ数をＮ、既に得られているデータＭｎ，ｎ＝１，２，・・・，Ｎとして、
【００３６】
【数２５】
2008234094.tif 000027
によって求める。求められたｍｅ，ａｅ，ｂｅを式（２２）に代入することにより、ｎ期目の推定値を求めることができる。Ｍｎがある値になるのに、今後どれだけの時間がかかるかといった予測が得られる。
次に、式（１３）において、
【００３７】
【数２６】
2008234094.tif 000028
とすると、ロジスティック曲線モデルの回帰式
【００３８】
【数２７】
2008234094.tif 000029
【００３９】
【数２８】
2008234094.tif 000030
【００４０】
【数２９】
2008234094.tif 000031
となる。回帰分析によりＢ，Ｃが推定できれば、式（２８）（２９）をｋｌ，αｌそれぞれについて解き、
【００４１】
【数３０】
2008234094.tif 000032
【００４２】
【数３１】
2008234094.tif 000033
また、δ＝１とおくことで、ｋｌ，αｌの推定値を求めることができる。注目している事象の飽和値ｋｌの推定値が求められる。
ロジスティック曲線モデルの差分方程式とその厳密解は、
【００４３】
【数３２】
2008234094.tif 000034
【００４４】
【数３３】
2008234094.tif 000035
であり、時間間隔→０で微分方程式と厳密解
【００４５】
【数３４】
2008234094.tif 000036
【００４６】
【数３５】
2008234094.tif 000037
に一致する。推定値に必要なｍｌはデータ数をＮ、既に得られているデータＭｎ，ｎ＝１，２，・・・，Ｎとして、
【００４７】
【数３６】
2008234094.tif 000038
によって求める。求められたｍｌ，ｋｌ，αｌを式（３３）に代入することにより、ｎ期目の推定値を求めることができる。これにより、Ｍｎがある値になるのに今後どれだけの時間がかかるかといった予測が得られる。
次に、式（１３）において、
【００４８】
【数３７】
2008234094.tif 000039
【００４９】
【数３８】
2008234094.tif 000040
のとき、リカッチ方程式モデルとなる。このリカッチ方程式モデルは、分野により名称が異なる。例えば、ソフトウェア信頼度成長モデルでは、習熟Ｓ字形モデルと呼ばれ、新製品、技術、およびサービスの普及を予測する普及予測モデルでは、Ｂａｓｓモデルとも呼ばれる。共通することは、モデルを記述する微分方程式がリカッチ方程式であることである。分野によりパラメータが異なることがあるが、適当な変換により別の分野でのモデルのパラメータに書き換えることができる。
【００５０】
【数３９】
2008234094.tif 000041
【００５１】
【数４０】
2008234094.tif 000042
【００５２】
【数４１】
2008234094.tif 000043
【００５３】
【数４２】
2008234094.tif 000044
となる。
回帰分析に母Ａ，Ｂ，Ｃが推定できれば、式（４０）（４１）（４２）をＫｒ，ｋｒ，αｒそれぞれについて解き、
【００５４】
【数４３】
2008234094.tif 000045
【００５５】
【数４４】
2008234094.tif 000046
【００５６】
【数４５】
2008234094.tif 000047
また、δ＝１とおくことで、Ｋｒ，ｋｒ，αｒの推定値を求めることができる。注目している事象の飽和値ｋｒ＋Ｋｒがこれにより得られる。
式（１３）のパラメータとリカッチ方程式モデルの差分方程式とその厳密解は
【００５７】
【数４６】
2008234094.tif 000048
【００５８】
【数４７】
2008234094.tif 000049
【００５９】
【数４８】
2008234094.tif 000050
【００６０】
【数４９】
2008234094.tif 000051
に一致する。推定値に必要なｍｒはデータ数をＮ、既に得られているデータＭｎ，ｎ＝１，２，・・・，Ｎとして
【００６１】
【数５０】
2008234094.tif 000052
によって求める。求められたｍｒ，Ｋｒ，ｋｒ，αｒを式（４７）に代入することにより、ｎ期目の推定値を求めることができる。これにより、Ｍｎがある値になるのに、今後どれだけの時間がかかるかといった予測が得られる。
【００６２】
図１は、本発明の一実施形態に係るモデル選択・予測装置のブロック図である。
また、図２は、同じくモデル選択・予測方法の動作手順を示すフローチャートである。
一日や一週間など予め決められた期間ごとに注目する事象の発生数（ソフトウェア信頼度成長モデルであれば、発見したバグ数）を実データ入力・保存部１１に入力する。実データ入力部では、各期間ごとに入力されたデータ値および各期間までの累積のデータ値を記憶する（ステップ１０１）。モデル判定指令部１２からのモデル判定要求（ステップ１０２）により、実データ入力・保存部１１に記憶されているデータを用いてＡＩＣ計算部（モデル判定部）１４でＡＩＣを計算する。ＡＩＣ計算部（モデル判定部）１４は、モデル情報入力部１３から入力されたモデル情報、すなわち、どのモデルが式（１３）のパラメータＡ，Ｂ，Ｃ全てを使用するのか、あるいは、いずれかのパラメータが０なのか、という情報を記憶している。
【００６３】
式（１３）のような重回帰分析の場合、ＡＩＣは次のように計算できる。
【００６４】
【数５１】
2008234094.tif 000053
ここでＮはその時点でのデータの数、ｐはパラメータ数、Ｓｅは残差平方和で、
【００６５】
【数５２】
2008234094.tif 000054
と表される。ここで
【００６６】
【数５３】
2008234094.tif 000055
は回帰分析により推定されたパラメータの値である。
指数形モデル、ロジスティック曲線モデル、リカッチ方程式モデルのそれぞれについてＡＩＣをＡＩＣ計算部（モデル判定部）１４で求める（ステップ１０３，１０４，１０５）。
指数形モデルのときは、
ｐ＝２                                                 （５３）
【００６７】
【数５４】
2008234094.tif 000056
ロジスティック曲線モデルのときは、
【００６８】
【数５５】
2008234094.tif 000057
【００６９】
【数５６】
2008234094.tif 000058
リカッチ方程式モデルのときは、
【００７０】
【数５７】
2008234094.tif 000059
【００７１】
【数５８】
2008234094.tif 000060
である。
それぞれ求められたＡＩＣの値が最も小さいモデルが最も実データに適合するモデルである。ＡＩＣ計算部（モデル判定部）１４は、パラメータ推定・推定値算出部１５に対して最も適合するモデルを出力する（ステップ１０８）。
パラメータ推定・推定算出部１５は、最も適合するモデルを受け取り、そのモデルのパラメータおよび各時間周期ごとの推定値を計算する。パラメータ推定・推定値算出部１５は、モデル情報入力部１３から回帰分析のパラメータＡ，Ｂ，Ｃから各モデルのパラメータにどのように変換するのか、という情報を得て記憶している。
パラメータ推定・推定算出部１５は、最も適合するモデル名、最も適合するモデルのパラメータ、推定値を結果出力部１６で出力する（ステップ１０７，１０８，１０９）。
【００７２】
図２のモデル選択・予測方法の手順をプログラム化して、ＣＤ−ＲＯＭなどの記録媒体に格納し、本発明のモデル選択・予測装置内のコンピュータに装着して、このコンピュータにプログラムをインストールして、実行させることにより、本発明を容易に実現することができる。また、ネットワークを介してこのプログラムを他のコンピュータにダウンロードすることにより、このプログラムの汎用化も可能となる。
【図面の簡単な説明】
【００７３】
【図１】本発明の実施形態に係るモデル選択・予測装置のブロック図である。
【図２】本発明の実施形態に係るモデル選択・予測方法の手順を示すフローチャートである。
【符号の説明】
【００７４】
１１  実データ入力・保存部
１２  モデル判定指令部
１３  モデル情報入力部
１４  ＡＩＣ計算部（モデル判定部）
１５  パラメータ推定・推定値算出部
１６  結果出力部
【図１】
2008234094.tif 000061
【図２】
2008234094.tif 000062