(57)【特許請求の範囲】
【請求項１】
観測対象の予測項目の予測値を算出するための予測モデルの予測精度を分析する計算機であって、
前記計算機は、演算装置、前記演算装置に接続されるメモリ、及び前記演算装置に接続されるインタフェースを備え、
前記計算機は、前記観測対象の予測項目の前記予測値及び前記観測対象の予測項目の実値から構成される複数のレコードを格納するデータベースを管理し、
前記観測対象の予測項目の前記実値は、任意の事象が発生するか否かを示す値であり、
前記演算装置は、前記予測値の大きい順又は前記予測値の小さい順に前記データベースに格納される複数のレコードをソートし、ソート結果を前記メモリに格納し、
前記演算装置は、前記ソート結果に基づいて、任意の数の前記レコードを含むグループを複数生成し、前記グループを管理するためのグループ情報を前記メモリに格納し、
前記演算装置は、前記グループに含まれる前記複数のレコードの前記実値及び前記予測値に基づいて、前記グループの前記実値の統計量及び前記予測値の統計量を算出し、前記複数のグループの各々の前記実値の統計量及び前記予測値の統計量を含む統計情報を前記メモリに格納し、
前記演算装置は、前記統計情報に基づいて、前記複数のグループの各々の予測誤差を算出し、前記複数のグループの各々の前記予測誤差を前記メモリに格納し、
前記演算装置は、前記ソート結果に基づいて、前記予測値の累積値及び前記実値の累積値に関する累積情報を生成し、前記生成された累積情報を前記メモリに格納し、
前記演算装置は、前記累積情報を参照して、前記予測値の累積値の増加量又は前記実値の累積値の増加量のいずれかが所定の閾値より大きいグループを選択し、
前記演算装置は、前記選択されたグループの前記予測誤差に基づいて、前記予測モデルの予測精度を分析するための分析指標を算出し、前記分析指標を前記メモリに格納することを特徴とする計算機。
【請求項２】
請求項１に記載の計算機であって、
前記演算装置は、前記選択されたグループの前記予測誤差に基づいて、前記予測誤差の平均値及び前記予測誤差の分散の少なくとも何れかを前記分析指標として算出することを特徴とする計算機。
【請求項３】
請求項１に記載の計算機であって、
前記演算装置は、前記予測値の範囲を決定し、
前記演算装置は、前記予測値の範囲に基づいて、前記レコードを分類することによって前記複数のグループを生成することを特徴とする計算機。
【請求項４】
観測対象の予測項目の予測値を算出するための予測モデルの予測精度を分析する計算機が実行する分析指標の算出方法であって、
前記計算機は、演算装置、前記演算装置に接続されるメモリ、及び前記演算装置に接続されるインタフェースを備え、
前記計算機は、前記観測対象の予測項目の前記予測値及び前記観測対象の予測項目の実値から構成される複数のレコードを格納するデータベースを管理し、
前記観測対象の予測項目の前記実値は、任意の事象が発生するか否かを示す値であり、
前記分析指標の算出方法は、
前記演算装置が、前記予測値の大きい順又は前記予測値の小さい順に前記データベースに格納される複数のレコードをソートし、ソート結果を前記メモリに格納する第１のステップと、
前記演算装置が、前記ソート結果に基づいて、任意の数の前記レコードを含むグループを複数生成し、前記グループを管理するためのグループ情報を前記メモリに格納する第２のステップと、
前記演算装置が、前記グループに含まれる前記複数のレコードの前記実値及び前記予測値に基づいて、前記グループの前記実値の統計量及び前記予測値の統計量を算出し、前記複数のグループの各々の前記実値の統計量及び前記予測値の統計量を含む統計情報を前記メモリに格納する第３のステップと、
前記演算装置が、前記統計情報に基づいて、前記複数のグループの各々の予測誤差を算出し、前記複数のグループの各々の前記予測誤差を前記メモリに格納する第４のステップと、
前記演算装置が、前記ソート結果に基づいて、前記予測値の累積値及び前記実値の累積値に関する累積情報を生成し、前記生成された累積情報を前記メモリに格納する第５のステップと、
前記演算装置が、前記累積情報を参照して、前記予測値の累積値の増加量又は前記実値の累積値の増加量のいずれかが所定の閾値より大きいグループを選択する第６のステップと、
前記演算装置が、前記選択されたグループの前記予測誤差に基づいて、前記予測モデルの予測精度を分析するための分析指標を算出し、前記分析指標を前記メモリに格納する第７のステップと、を含むことを特徴とする分析指標の算出方法。
【請求項５】
請求項４に記載の分析指標の算出方法であって、
前記第７のステップは、前記演算装置が、前記選択されたグループの各々の前記予測誤差に基づいて、前記予測誤差の平均値及び前記予測誤差の分散の少なくとも何れかを前記分析指標として算出するステップを含むことを特徴とする分析指標の算出方法。
【請求項６】
請求項４に記載の分析指標の算出方法であって、
前記第２のステップは、
前記演算装置が、前記予測値の範囲を決定するステップと、
前記演算装置が、前記予測値の範囲に基づいて、前記レコードを分類することによって前記複数のグループを生成するステップと、を含むことを特徴とする分析指標の算出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、予測精度を分析する技術に関する。
【背景技術】
【０００２】
近年、様々な分野において、過去データを用いた機械学習によって生成された予測モデルに基づく事象の予測が行われている。ここで、過去データは、任意の時刻に観測、集計、又は記録された項目群から構成されるレコード等のデータ群を示す。
【０００３】
予測モデルを用いてある観測対象について任意の事象を予測する場合、使用する予測モデルの精度が高いことを保証する必要がある。したがって、予測モデルの精度を分析する技術が求められる。予測モデルの精度を分析する方法として、例えば、特許文献１に記載されている技術が知られている。
【０００４】
特許文献１には、「予測指標計算装置の単回帰式計算部は、過去データとして記録された商品の出荷に係る複数の実績値と各実績値に対応する予測値とについて単回帰式を計算する。予測指標計算装置の予測精度計算部は、この単回帰式で表される単回帰直線ｙ＝ａｘの傾きａと、過去データを当該複数の実績値と各実績値に対応する予測値とを両軸とするグラフ上にプロットした場合の当該グラフ上の点（Ｘ，Ｙ）を、それぞれ原点と結んだ直線の傾きとの差異に基づいて、予測精度を計算する。具体的には、単回帰直線ｙ＝ａｘと、点（Ｘ，Ｙ）をそれぞれ原点と結んだ直線とがなす角θについて、ｃｏｓ２θを点（Ｘ，Ｙ）ごとに計算する。そして、ｃｏｓ２θの平均値を予測精度として計算する。」ことが記載されている。
【０００５】
ここで、本明細書の用語について説明する。
【０００６】
観測対象に対して予測したい事象に対応する項目を予測項目と記載する。なお、予測項目が取りうる値が「０」及び「１」のような二値の場合、予測事象とも記載する。例えば、病気の発症率及び機器の故障率等が予測事象に該当する。予測項目と相関関係がある項目を相関項目と記載する。過去データに基づく予測とは、任意の期間のレコード群を用いて予測項目と観測項目との間の関連性を示す規則（予測モデル）を抽出し、当該規則を用いてある時刻の観測項目の値から予測項目の値を算出することを示す。予測モデルに基づいて算出される予測項目の値を予測値と記載する。また、実際に観測された予測項目の値を実値と記載する。また、実値と予測値との間の誤差を予測誤差と記載する。以上が本明細書の用語の説明である。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００９−２４５０３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来、予測値がどの程度実値に近い値かを示す指標が、予測精度を分析する指標として用いられる。以下の説明では、予測精度を分析する指標を分析指標とも記載する。従来の分析指標は、各レコードの予測誤差の二乗の平均値、又はその平均値の平方根等として与えられる。前述した分析指標は値が小さいほど予測モデルの予測精度が高いことを示す。
【０００９】
観測項目群と予測項目との間の相関性が低く、観測項目群に反映されていない他の要因の影響を大きく受ける予測項目の場合、予測値と実値との差が大きくなる。すなわち、実値と実値の期待値との差が大きくなる。なぜならば、予測モデルは、実値の期待値に近くなるように生成されるためである。
【００１０】
前述のような場合、従来の分析指標は値が非常に大きくなるため、予測精度の分析には適さない指標である。
【００１１】
各レコードについて実値の期待値と予測値とを比較すれば、予測モデルの予測精度を分析できるが、実値の期待値は一つの観測対象の値だけからは算出できないため、このような分析方法は困難である。
【００１２】
本発明は、予測モデルの予測精度を適切に分析できる指標を算出する装置及び方法を提供する。
【課題を解決するための手段】
【００１３】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、観測対象の予測項目の予測値を算出するための予測モデルの予測精度を分析する計算機であって、前記計算機は、演算装置、前記演算装置に接続されるメモリ、及び前記演算装置に接続されるインタフェースを備え、前記計算機は、前記観測対象の予測項目の前記予測値及び前記観測対象の予測項目の実値から構成される複数のレコードを格納するデータベースを管理し、前記観測対象の予測項目の前記実値は、任意の事象が発生するか否かを示す値であり、前記演算装置は、前記予測値の大きい順又は前記予測値の小さい順に前記データベースに格納される複数のレコードをソートし、ソート結果を前記メモリに格納し、前記演算装置は、前記ソート結果に基づいて、任意の数の前記レコードを含むグループを複数生成し、前記グループを管理するためのグループ情報を前記メモリに格納し、前記演算装置は、前記グループに含まれる前記複数のレコードの前記実値及び前記予測値に基づいて、前記グループの前記実値の統計量及び前記予測値の統計量を算出し、前記複数のグループの各々の前記実値の統計量及び前記予測値の統計量を含む統計情報を前記メモリに格納し、前記演算装置は、前記統計情報に基づいて、前記複数のグループの各々の予測誤差を算出し、前記複数のグループの各々の前記予測誤差を前記メモリに格納し、前記演算装置は、前記ソート結果に基づいて、前記予測値の累積値及び前記実値の累積値に関する累積情報を生成し、前記生成された累積情報を前記メモリに格納し、前記演算装置は、前記累積情報を参照して、前記予測値の累積値の増加量又は前記実値の累積値の増加量のいずれかが所定の閾値より大きいグループを選択し、前記演算装置は、前記選択されたグループの前記予測誤差から算出される統計量に基づいて、前記予測モデルの予測精度を分析するための分析指標を算出し、前記分析指標を前記メモリに格納することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、観測項目群と予測項目との間の相関性が低い場合でも、予測モデルの予測精度を分析できる指標を算出することができる。上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１５】
【図１】実施例１の計算機が実行する処理の一例を説明するフローチャートである。
【図２】実施例１の累積グラフを示す説明図である。
【図３】実施例１の計算機システムの構成の一例を示すブロック図である。
【図４】実施例１の個別情報記憶部に格納される個別情報の一例を示す説明図である。
【図５】実施例１のグループ情報記憶部に格納されるグループ情報の一例を示す説明図である。
【図６】実施例１のグループ情報記憶部に格納されるグループ統計情報の一例を示す説明図である。
【図７】実施例１の予測精度分析グラフの一例を示す説明図である。
【図８】実施例１の分析指標情報の一例を示す説明図である。
【図９】実施例１の累積グラフの一例を示す説明図である。
【発明を実施するための形態】
【００１６】
まず、本発明の概要について説明する。ここでは、予測項目の予測値及び実値を含むレコードを格納するデータベースを想定する。また、実値はある事象が発生するか否かを示す二値であるものとする。すなわち、実値は、事象が発生したことを示す「１」及び事象が発生しないことを示す「０」のいずれかの値となる。この場合、予測値は「０」から「１」の間の値となる。
【００１７】
本発明は、実値が予測値にどの程度近いかを分析することによって予測モデルの予測精度を分析する。すなわち、予測モデルに基づく予測値は正しいものと仮定し、予測値及び実値の誤差等を分析する。しかし、各レコードについて予測値と実値との間の誤差を算出しても、意味のある分析ができない。そこで、本発明の計算機３００（図３参照）は、以下のような処理を実行する。
【００１８】
計算機３００は、レコードを予測値の大きさに基づいてソートする。具体的には、計算機３００は、予測値の大きい順にレコードをソートする。計算機３００は、各レコードの予測値及び実値を用いて予測誤差を算出する。計算機３００は、ソート結果に基づいて対象とするレコード群を選択し、また、選択されたレコード群の予測誤差に基づいて、分析指標を算出する。
【００１９】
なお、計算機３００は、レコード群を選択した後、選択されたレコード群の予測値の統計値及び実値の統計値を算出し、当該統計量に基づいて予測誤差を算出してもよい。
【００２０】
レコードの選択方法は目的に応じて様々考えられる。例えば、予測モデルの予測精度を分析するためには、事象が発生しやすいレコード群について予測精度を分析すればよい。そこで、計算機３００は、ソート結果に基づいて、予測値の累積値及び実値の累積値を示す累積グラフ（累積情報）を生成する。
【００２１】
ここで、累積グラフについて説明する。図２は、実施例１の累積グラフ２００を示す説明図である。
【００２２】
横軸は、レコードに付与されたソート番号を示す。縦軸は、累積値を示す。予測値の累積値は、例えば、各レコードの予測値を合計することによって算出できる。また、実値の累積値は、各レコードの実値を合計することによって算出できる。例えば、ソート番号が「１００」の予測値の累積値は、ソート番号が「１」から「１００」までの各レコードの予測値を合計することによって算出される。
【００２３】
予測値が大きいレコードは、実値が「１」である確率が高い。そのため、累積値は急激に増加する。一方、予測値が小さいレコードは、実値が「１」である確率が低い。そのため、累積値は緩やかに増加する。したがって、累積グラフ２００は、図２に示すような曲線となる。
【００２４】
なお、予測値の小さい順にレコードがソートされた場合、累積値のグラフは、図２に示すグラフとは形は異なるが、前述の累積値の増加量の特性を示すグラフとなる。
【００２５】
予測精度が高い予測モデルの場合、予測値が所定の閾値より大きいレコード群の予測値の累積値と実値の累積値との間の差は、小さくなる。すなわち、実値が予測値に近いことを示す。一方、予測値が所定の閾値以下のレコード群の予測値の累積値と実値の累積値との間の差は、単調増加する。なぜならば、予測値と実値との間の差は大きくなるためである。
【００２６】
前述したように、ソート結果に基づく予測の累積値及び実値の累積値は、予測モデルの予測精度に関連する数値であることが分かる。また、予測値が所定の閾値以下のレコード群の統計量は、予測精度の分析に適さないことが分かる。そこで、予測値が所定の閾値より大きいレコード群について予測精度の分析を行えばよい。これによって、予測精度の分析におけるランダム要因を排除することができる。
【００２７】
そこで、計算機３００は、分析対象のレコード群を選択し、分析対象のレコード群の予測値の統計量及び実値の統計量の差等を分析指標として算出する。
【００２８】
予測モデルの予測精度をより正確に分析するためには、予測値と実値の期待値との差等を分析する必要があるためである。しかし、一般的に、実値の期待値は不明である。また、各レコードの値からは実値の期待値を算出することができない。
【００２９】
予測値が類似するレコードは、実値の期待値も類似すると推定される。そこで、計算機３００は、レコードがソートされた後、予測値が類似する複数のレコードをグループ化する。これによって、計算機３００は、グループに含まれる複数のレコードの実値の分布から実値の期待値に相当する統計量を算出できる。また、計算機３００は、各グループの実値の期待値の相当する統計量及び予測値の統計量を算出する。計算機３００は、実値の期待値の相当する統計量及び予測値の統計量に基づいて、予測誤差を算出する。計算機３００は、予測誤差に基づいて分析指標を算出する。
【００３０】
従来の分析指標は、全レコードの予測誤差等から算出されるものであるため、全レコードの予測値を上下することによってコントロールできる。本実施例では、予測精度の分析に適したグループについて予測精度を算出できる。
【００３１】
なお、前述した処理では、事象が発生しやすいレコード群について分析指標を算出していたが、本発明はこれに限定されない。例えば、事象が発生しにくいレコード群について分析指標を算出してもよい。当該レコード群は、図２のグラフを用いて選択することができる。また、ユーザが指定した特定のグループについて分析指標を算出してもよい。したがって、目的に応じた予測精度の分析が可能となる。
【実施例１】
【００３２】
実施例１では、計算機３００は、予測項目の予測値及び実値から構成されるレコードを予測値に基づいてソートし、ソート結果に基づいて所定数のレコードから構成されるグループを生成する。計算機３００は、グループごとに、予測値の平均値及び実値の平均値を算出し、予測値の平均値と実値の平均値との差をグループの予測誤差として算出する。計算機３００は、算出結果に基づいて、予測精度分析グラフを生成し、また、分析指標を算出する。
【００３３】
図３は、実施例１の計算機システムの構成の一例を示すブロック図である。
【００３４】
計算機システムは、計算機３００及び記憶装置３０１から構成される。
【００３５】
計算機３００は、任意の予測項目の予測モデルの予測精度を分析する。本実施例の計算機３００は、演算装置３１０、メモリ３１１、入力装置３１２、出力装置３１３、及び記憶媒体３１４を備える。各構成は、内部バス等を介して互いに接続される。
【００３６】
演算装置３１０は、メモリ３１１に格納されるプログラムを実行する演算装置であり、例えば、ＣＰＵ及びＧＰＵ等がある。以下の説明では、機能部を主語として処理及び機能を説明する場合、演算装置３１０によって当該機能部を実現するプログラムが実行されていることを示す。メモリ３１１は、演算装置３１０によって実行されるプログラム及び当該プログラムによって使用される情報を格納する。メモリ３１１は、揮発性のメモリ及び不揮発性のメモリのいずれであってもよい。
【００３７】
入力装置３１２は、計算機３００に各種情報を入力するための装置であり、例えば、キーボード、マウス、及びタッチパネル等が含まれる。出力装置３１３は、計算機３００が実行した処理結果を出力する装置であり、例えば、ディスプレイ等が含まれる。
【００３８】
記憶媒体３１４は、計算機３００が有する各種機能を実現するプログラム等を格納する。本実施例では、演算装置３１０が、記憶媒体３１４からプログラムを読み出し、読み出されたプログラムをメモリ３１１上にロードし、さらに、ロードされたプログラムを実行する。本実施例の記憶媒体３１４に格納されるプログラム等については後述する。
【００３９】
なお、記憶媒体３１４に格納されるプログラムは、ＣＤ−ＲＯＭ及びフラッシュメモリ等のリムーバブルメディア又はネットワークを介して接続される配信サーバから取得する方法が考えられる。リムーバブルメディアからプログラムを取得する場合、計算機３００は、リムーバブルメディアに接続されるインタフェースを備える。
【００４０】
記憶装置３０１は、計算機３００が管理する各種データを格納する。記憶装置３０１は、一般的な計算機及びストレージシステム等が考えられる。なお、ストレージシステムは、コントローラ、外部インタフェース、及び複数の記憶媒体を備え、複数の記憶媒体を用いてＲＡＩＤを構成することができる。また、ストレージシステムは、ＲＡＩＤボリュームを用いて複数の論理的な記憶領域を提供することもできる。
【００４１】
記憶装置３０１上にはデータベースが構築され、当該データベースには、個別情報記憶部３５１、グループ情報記憶部３５２、及び分析結果記憶部３５３が含まれる。
【００４２】
個別情報記憶部３５１は、観測対象（人、装置等）の各種情報を保持するレコード等の情報を記憶する。レコードには、観測項目の値が含まれる。個別情報記憶部３５１に記憶される情報の詳細は、図４を用いて説明する。
【００４３】
グループ情報記憶部３５２は、複数の観測対象の情報から生成されたグループに関する情報を記憶する。グループ情報記憶部３５２に記憶される情報の詳細は、図５を用いて説明する。
【００４４】
分析結果記憶部３５３は、予測モデルの予測精度の分析結果に関する情報を記憶する。分析結果記憶部３５３に記憶される情報の詳細は、図６、図７、及び図８を用いて説明する。
【００４５】
ここで、記憶媒体３１４に格納されるプログラムについて説明する。
【００４６】
記憶媒体３１４は、レコード管理部３２０、統計量算出部３３０、及び予測精度分析部３４０を実現するプログラムを格納する。
【００４７】
レコード管理部３２０は、個別情報記憶部３５１に記憶されるレコードを管理する。また、レコード管理部３２０は、当該レコードのソート及びレコードのグループ化を行う。レコード管理部３２０は、複数のモジュールから構成される。本実施例のレコード管理部３２０は、レコードソート部３２１及びグループ生成部３２２を含む。
【００４８】
レコードソート部３２１は、予測値の大きさに基づいて複数のレコードをソートする。レコードソート部３２１は、レコードのソート時に、各レコードにソート番号を付与する。レコードソート部３２１は、処理の結果を個別情報記憶部３５１に記憶する。グループ生成部３２２は、レコードのソート結果に基づいて、所定の数のレコードを含むグループを複数生成する。グループ生成部３２２は、生成されたグループの情報をグループ情報記憶部３５２に記憶する。
【００４９】
統計量算出部３３０は、グループ毎に、各種統計量を算出する。算出される統計量は、予測値の平均値及び実値の平均値、又は、予測値の累積値及び実値の累積値等が考えられる。なお、本発明は、算出される統計量の種別に限定されない。統計量算出部３３０は、複数のモジュールから構成される。本実施例の統計量算出部３３０は、グループ統計量算出部３３１及び予測誤差算出部３３２を含む。
【００５０】
グループ統計量算出部３３１は、グループ情報記憶部３５２に記憶される情報に基づいて、グループ毎に、予測値の統計量及び実値の統計量を算出する。グループ統計量算出部３３１は、算出された予測値の統計量及び実値の統計量をグループ情報記憶部３５２に記憶する。予測誤差算出部３３２は、予測値の統計量及び実値の統計量に基づいて、グループ毎の予測誤差を算出する。予測誤差算出部３３２は、グループ毎の予測誤差をグループ情報記憶部３５２に記憶する。
【００５１】
予測精度分析部３４０は、統計量算出部３３０によって算出された各グループの統計量に基づいて、予測モデルの予測精度を分析する。予測精度分析部３４０は、複数のモジュールから構成される。本実施例の予測精度分析部３４０は、予測精度分析グラフ生成部３４１及び予測精度分析指標算出部３４２を含む。
【００５２】
予測精度分析グラフ生成部３４１は、グループ情報記憶部３５２に記憶される統計量に基づいて、予測精度分析グラフ７００（図７参照）を生成する。予測精度分析グラフ生成部３４１は、予測精度分析ブラフを分析結果記憶部３５３に記憶する。予測精度分析指標算出部３４２は、グループ情報記憶部３５２に記憶される統計量及び予測精度分析グラフ７００に基づいて、分析指標を算出する。予測精度分析指標算出部３４２は、分析指標を分析結果記憶部３５３に記憶する。
【００５３】
図４は、実施例１の個別情報記憶部３５１に格納される個別情報４００の一例を示す説明図である。
【００５４】
個別情報４００は、観測対象に対応するレコードを複数含む。レコードは、ＩＤ４０１、予測値４０２、及び実値４０３から構成される。以下の説明では、個別情報４００に含まれるレコードを個別レコードとも記載する。
【００５５】
ＩＤ４０１は、観測対象、すなわち、レコードを一意に識別するための識別情報である。本実施例のＩＤ４０１には、識別番号が格納される。予測値４０２は、予測モデルに基づいて算出された予測項目の値である。実値４０３は、予測事象の観測結果を示す値である。
【００５６】
ここで、糖尿病の発症を管理する情報を例に、予測値４０２及び実値４０３について説明する。
【００５７】
この場合、一つのレコードは、一人の健診者のデータに対応する。ＩＤ４０１が「００００１」のレコードの場合、予測値４０２は「０．３２」であり、実値４０３は「０」である。これは、健診者の糖尿病発症率の予測値が「０．３２」であり、発症実績は「０」であることを示す。本実施例では、糖尿病を発症した場合、実値４０３には「１」が格納され、糖尿病を発症していない場合、実値４０３には「０」が格納される。すなわち、ＩＤ４０１が「００００１」の健診者は、糖尿病を発症していないことを示す。
【００５８】
図５は、実施例１のグループ情報記憶部３５２に格納されるグループ情報５００の一例を示す説明図である。
【００５９】
グループ情報５００は、観測対象に対応するレコードを複数含む。レコードは、ＩＤ５０１、グループ番号５０２、及びソート番号５０３から構成される。
【００６０】
ＩＤ５０１は、ＩＤ４０１と同一のものである。グループ番号５０２は、グループ生成部３２２によって付与されたグループの識別番号である。ソート番号５０３は、レコードソート部３２１によって付与されたソート順を示す番号である。
【００６１】
本実施例では、予測値が大きさに基づいて「１」から順にソート番号が各レコードに付与される。また、レコードは、ソート番号５０３が小さい順にソートされる。
【００６２】
ＩＤ５０１が「００００１」のレコードの場合、ソート番号５０３は「２」である。これは、個別情報４００に含まれるレコードのうち、予測値４０２の値が２番目に大きいレコードであることを示す。また、当該レコードのグループ番号５０２は「１」である。これは、グループ番号が「１」のグループに含まれるレコードであることを示す。
【００６３】
図６は、実施例１のグループ情報記憶部３５２に格納されるグループ統計情報６００の一例を示す説明図である。
【００６４】
グループ統計情報６００は、グループに対応するレコードを複数含む。レコードは、グループ番号６０１、予測値の平均値６０２、実値の平均値６０３、及び予測誤差６０４から構成される。
【００６５】
グループ番号６０１は、グループ番号５０２と同一のものである。予測値の平均値６０２は、グループに含まれる個別レコードの予測値４０２の平均値である。実値の平均値６０３は、グループに含まれる個別レコードの実値４０３の平均値である。予測誤差６０４は、グループ毎の、予測値の平均値と実値の平均値との間の誤差を示す値である。
【００６６】
実値の平均値６０３は、グループに含まれる個別レコードの実値の分布から算出される値であり、実値の期待値に相当する統計量である。本実施例では、計算機３００は、実値の平均値６０３及び予測値の平均値６０２を用いて予測誤差を算出する。
【００６７】
本実施例では、統計量算出部３３０は、予測値の平均値６０２から実値の平均値６０３を減算することによって第１の値を算出する。さらに、統計量算出部３３０は、第１の値を予測値の平均値６０２で除算することによって第２の値を算出する。統計量算出部３３０は、第２の値に１００を乗算することによって第３の値を算出する。統計量算出部３３０は、第３の値を予測誤差６０４に格納する。
【００６８】
なお、計算機３００は、図４、図５、及び図６を一つの情報として保持してもよい。すなわち、図４、図５、及び図６に示すようなカラムを管理できるものであればよい。
【００６９】
図７は、実施例１の予測精度分析グラフ７００の一例を示す説明図である。図８は、実施例１の分析指標情報８００の一例を示す説明図である。
【００７０】
後述するように、予測精度分析グラフ７００及び分析指標情報８００は、予測精度分析部３４０によって生成される。
【００７１】
予測精度分析グラフ７００は、予測モデルの予測精度の分析指標を算出時に用いるグラフである。図７の予測精度分析グラフ７００では、縦軸が各グループの予測誤差を示し、横軸がグループの番号を示す。なお、予測値の平均値６０２又は実値の平均値６０３を横軸としてもよい。予測精度分析グラフ７００は、分析の目的に応じて適宜変更することができる。
【００７２】
図７では、予測精度分析グラフ７００は、各グループの予測誤差をプロットしたグラフであるが、各グループの予測誤差の変化傾向を示す曲線であってもよい。
【００７３】
分析指標情報８００は、予測誤差の平均値８０１及び予測誤差の分散８０２を含む。予測誤差の平均値８０１は、各グループの予測誤差から算出された予測誤差の平均値である。予測誤差の分散８０２は、各グループの予測誤差から算出された予測誤差の分散である。
【００７４】
なお、分析指標情報８００には、予測誤差の平均値及び予測誤差の分散以外の統計量が含まれてもよい。
【００７５】
次に、計算機３００が実行する処理の詳細について説明する。
【００７６】
図１は、実施例１の計算機３００が実行する処理の一例を説明するフローチャートである。
【００７７】
計算機３００は、予測値の大きさに基づいて、個別情報４００の個別レコードのソート処理を実行する（ステップＳ１０１）。
【００７８】
具体的には、レコード管理部３２０のレコードソート部３２１が、予測値４０２の値が大きい順に個別情報４００の個別レコードにソート番号を付与し、当該ソート番号に基づいて個別レコードをソートする。レコードソート部３２１は、ソート結果に基づいて、グループ情報５００のソート番号５０３にソート番号を格納する。なお、個別レコードをソートする規則は、前述したものに限定されない。例えば、予測値４０２の値が小さい順に個別情報４００のレコードをソートする方法が考えられる。
【００７９】
次に、計算機３００は、個別情報４００の個別レコードのソート結果に基づいて、複数のレコードから複数のグループを生成する（ステップＳ１０２）。
【００８０】
具体的には、レコード管理部３２０のグループ生成部３２２が、個別情報４００の予測値４０２及びグループ情報５００のソート番号５０３の少なくとも何れかに基づいて、グループを生成する。このとき、グループ生成部３２２は、生成された各グループにグループ番号を付与する。また、グループ生成部３２２は、各レコードのグループ番号５０２に、各レコードが所属するグループのグループ番号を設定する。グループの生成方法は、例えば、以下のような方法が考えられる。
【００８１】
（生成方法１）グループ生成部３２２は、ソート番号５０３の大きい順又は小さい順に１００個のレコードを選択し、当該１００個のレコードを一つのグループとして生成する。
【００８２】
生成方法１の場合、各グループに含まれるレコードの数は全て同一であるため、グループに含まれる全てのレコードの実値の期待値が一致している場合、実値の平均値と実値の期待値との差は、大数の法則により、任意の閾値以下にできる。ただし、前述の条件を満たす可能性は少ないため、実値の平均値と実値の期待値との間には、誤差が生じる。
【００８３】
（生成方法２）グループ生成部３２２は、予測値の範囲を決定し、当該予測値の範囲にグループ番号を付与する。グループ生成部３２２は、各個別レコードの予測値がどの範囲に含まれるか分類することによって、各グループに含める個別レコードを決定する。
【００８４】
例えば、各レコードの予測値を、０．５から０．４の範囲、０．４から０．３の範囲、０．３から０．２の範囲、０．２から０．１の範囲、及び０．１か０．０の範囲の四つの範囲に区切る。グループ生成部３２２は、各個別レコードを予測値の範囲毎に分類する。
【００８５】
生成方法２の場合、実値の平均値と実値の期待値との間の誤差を抑止できる。ただし、グループに所属するレコードの数は、グループ毎に異なる。
【００８６】
なお、生成方法１及び生成方法２を組み合わせてもよい。以上がステップＳ１０２の処理の説明である。
【００８７】
次に、計算機３００は、各グループの予測値の統計量及び実値の統計量を算出する（ステップＳ１０３）。
【００８８】
具体的には、統計量算出部３３０のグループ統計量算出部３３１は、グループを選択する。グループ統計量算出部３３１は、グループ情報５００及び個別情報４００を参照し、選択されたグループに含まれる個別レコードの予測値４０２及び実値４０３に基づいて、予測値の統計量及び実値の統計量を算出する。グループ統計量算出部３３１は、グループ統計情報６００の該当するレコードに算出された統計量を設定する。
【００８９】
本実施例では、グループ統計量算出部３３１は、予測値４０２の平均値及び実値４０３の平均値をグループの統計量として算出するものとする。算出された値は、予測値の平均値６０２及び実値の平均値６０３に格納される。
【００９０】
なお、グループ統計量算出部３３１は、予測値４０２の累積値及び実値４０３の累積値、又は、予測値４０２の分散及び実値４０３の分散をグループの統計量として算出してもよい。
【００９１】
次に、計算機３００は、各グループの予測値の統計量及び実値の統計量に基づいて、各グループの予測誤差を算出する（ステップＳ１０４）。
【００９２】
具体的には、統計量算出部３３０の予測誤差算出部３３２は、グループを選択する。予測誤差算出部３３２は、グループ統計情報６００を参照し、選択されたグループに対応するレコードの予測値の平均値６０２及び実値の平均値６０３に基づいて、当該グループの予測誤差を算出する。
【００９３】
予測誤算の算出方法は、以下のような方法が考えられる。
【００９４】
（算出方法１）予測誤差算出部３３２は、予測値の平均値６０２と実値の平均値６０３との間の差を算出する。なお、平均値の差は、予測値の平均値６０２から実値の平均値６０３が減算された値の絶対値から求めることができる。予測誤差算出部３３２は、算出された平均値の差を予測値の平均値６０２で除算した値を予測誤差とする。
【００９５】
算出方法１で算出された予測誤差は、予測値が与えられた場合に、実値がどの程度予測値に近いかを示す値である。予測値が実値より相対的に安定している場合、算出方法１で算出された予測誤差も相対的に安定する。したがって、予測モデルの予測精度を分析に適した値として用いることができる。
【００９６】
（算出方法２）予測誤差算出部３３２は、予測値の平均値６０２と実値の平均値６０３との間の差を算出する。予測誤差算出部３３２は、算出された平均値の差を実値の平均値６０３で除算した値を予測誤差とする。
【００９７】
算出方法２で算出された予測誤差は、実値が与えられた場合に、予測値がどの程度実値に近いかを示す値である。実値が予測値より相対的に安定している場合、算出方法２で算出された予測誤差も相対的に安定する。したがって、予測モデルの予測精度を分析に適した値として用いることができる。
【００９８】
なお、実値はランダムな場合が多いため、実値が予測値より相対的に安定している場合は少ない。以上がステップＳ１０４の処理の説明である。
【００９９】
次に、計算機３００は、グループ統計情報６００に基づいて、予測精度分析グラフ７００を生成する（ステップＳ１０５）。
【０１００】
具体的には、予測精度分析部３４０の予測精度分析グラフ生成部３４１は、予測誤差６０４を縦軸に設定し、グループ番号６０１を横軸に設定することによって、図６に示すような予測精度分析グラフ７００を生成する。なお、予測値の平均値６０２又は実値の平均値６０３が横軸に設定されてもよい。どのカラムを横軸に設定するかは分析目的に応じて適宜変更できる。
【０１０１】
次に、計算機３００は、グループ統計情報６００に基づいて、予測精度の分析に用いるグループを選択する（ステップＳ１０６）。
【０１０２】
具体的には、予測精度分析部３４０の予測精度分析指標算出部３４２は、グループ統計情報６００及び分析目的に基づいて、グループを選択する。グループの選択方法は、例えば以下のような方法が考えられる。
【０１０３】
（選択方法１）予測精度分析指標算出部３４２は、グループ番号６０１に基づいて、所定の数のグループを選択する。例えば、予測精度分析指標算出部３４２は、グループ番号６０１が閾値より大きいグループを５つ選択し、又は、グループ番号６０１が閾値より小さいグループを３つ選択する。
【０１０４】
（選択方法２）予測精度分析指標算出部３４２は、予測値の平均値６０２に基づいて、所定の数のグループを選択する。例えば、予測精度分析指標算出部３４２は、予測値の平均値６０２が０．７より大きいグループを５つ選択し、又は、予測値の平均値６０２が０．２より小さいグループを２つ選択する。
【０１０５】
（選択方法３）予測精度分析指標算出部３４２は、実値の平均値６０３に基づいて、所定の数のグループを選択する。例えば、予測精度分析指標算出部３４２は、実値の平均値６０３が０．７より大きいグループを５つ選択し、又は、実値の平均値６０３が０．２より小さいグループを２つ選択する。
【０１０６】
（選択方法４）予測精度分析指標算出部３４２は、予測誤差５０４に基づいて、所定の数のグループを選択する。例えば、予測精度分析指標算出部３４２は、予測誤差５０４が２０％より大きいグループを７つ選択し、又は、予測誤差５０４が１０％より小さいグループを５つ選択する。
【０１０７】
（選択方法５）予測精度分析指標算出部３４２は、個別情報４００及びグループ情報５００を参照して、縦軸が予測値４０２、横軸がグループ番号５０２である累積グラフ９００を生成する。予測精度分析指標算出部３４２は、予測値の累積値の増加量又は実値の累積値の増加量が所定の閾値より大きいグループを特定する。予測精度分析指標算出部３４２は、特定されたグループを予測精度の分析に用いるグループとして選択する。
【０１０８】
図９は、実施例１の累積グラフ９００の一例を示す説明図である。
【０１０９】
グループ番号が「５」の累積値は、グループ番号が「１」から「５」までの各グループの予測値の平均値３０２を合計値である。なお、縦軸は、予測値４０２以外の統計量であってもよい。
【０１１０】
本実施例では、予測値４０２が大きい順に個別情報４００のレコードがソートされ、また、当該ソートの結果に基づいてグループが生成される。したがって、グループ番号が小さいグループほど、予測値４０２の平均値が大きい。これは、予測値４０２の平均値が大きいグループの実値の分布は非一様な分布であることを示す。すなわち、実値の真の値（期待値）が予測できることを示す。一方、実値の分布が一様な分布の場合、実値はランダムであり、実値の真の値を予測できない。
【０１１１】
実値の分布の非一様性は、累積グラフ９００の累積値の変化量としてとらえることができる。分布が非一様な実値の場合、累積値は急激に増加する。すなわち、累積値の変化量が大きい。分布が一様な実値の場合、累積値は緩やかに増加する。すなわち、累積値の変化量は一定となる。
【０１１２】
前述したような特徴は、累積グラフ９００からも把握できる。グループ番号５０２が小さいグループの累積値の変化量は曲線となる。一方、グループ番号５０２が大きいグループの累積値の変化量は直線となる。
【０１１３】
選択方法５では、前述したような特徴に基づいてグループが選択される。具体的には、予測精度分析指標算出部３４２は、累積グラフ９００を用いて累積値の変化量が一定値となるグループを特定する。さらに、予測精度分析指標算出部３４２は、最初のグループから特定されたグループまでを選択する。図９に示す例では、グループ番号が「１」から「１０」までのグループが選択される。
【０１１４】
選択方法５では、予測精度が高い部分を適切に抽出することができる。すなわち、事象が発生する可能性がある部分を特定できる。なお、選択方法５の変形例として、計算機３００は、予測精度が低い部分も同様に抽出することができる。
【０１１５】
従来の予測精度の指標は、観測対象全体の予測値を上下することによって、コントロールできる。そのため、特定の観測対象の予測精度を分析できない。しかし、本発明では、選択方法に応じて特定の観測対象の予測精度を分析できる。
【０１１６】
前述した選択方法は一例であって、本発明はこれに限定されない。目的に応じてグループを選択すればよい。
【０１１７】
次に、計算機３００は、グループ統計情報６００に基づいて、分析指標を算出する（ステップＳ１０７）。
【０１１８】
具体的には、予測精度分析部３４０の予測精度分析指標算出部３４２は、予測精度分析グラフ７００を参照し、選択されたグループの予測誤差の平均値及び予測誤差の分散を分析指標として算出する。予測精度分析指標算出部３４２は、分析指標情報８００の予測誤差の平均値８０１及び予測誤差の分散８０２のそれぞれに算出された値を格納する。
【０１１９】
なお、実施例１では、グループ毎に予測値の統計量及び実値の統計量が算出されているが、本発明はこれに限定されない。例えば、レコード単位で同様の処理が実行されてもよい。この場合、ステップＳ１０２の処理は省略される。また、計算機３００は、レコードがソートされた後、各レコードの予測値及び実値に基づいて、予測誤差を算出する。計算機３００は、予測精度分析グラフ７００を生成する。また、計算機３００は、ソート結果に基づいて、対象のレコード群を選択し、選択されたレコード群の予測誤差の統計量を算出する。また、計算機３００は、予測誤差の統計量に基づいて、分析指標を算出する。例えば、予測誤差の統計量をそのまま分析指標として算出する方法が考えられる。
【０１２０】
以上のように実施例１によれば、計算機３００は、予測値の大きさに基づいてレコードをソートし、ソート結果に基づいてレコード又はグループを選択することによって、特定の分析目的の応じた分析指標を算出できる。また、グループの予測値の統計量及び実値の統計量に基づいて、予測値と実値の期待値との差に対応する値を算出できる。これによって、予測精度を正確に分析するための分析指標を算出できる。
【０１２１】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
【０１２２】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるＣＰＵが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。
【０１２３】
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、Ｃ／Ｃ＋＋、ｐｅｒｌ、Ｓｈｅｌｌ、ＰＨＰ、Ｊａｖａ（Ｊａｖａは登録商標）等の広範囲のプログラム又はスクリプト言語で実装できる。
【０１２４】
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はＣＤ−ＲＷ、ＣＤ−Ｒ等の記憶媒体に格納し、コンピュータが備えるＣＰＵが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
【０１２５】
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
【符号の説明】
【０１２６】
３００  計算機
３０１  記憶装置
３１０  演算装置
３１１  メモリ
３１２  入力装置
３１３  出力装置
３１４  記憶媒体
３２０  レコード管理部
３２１  レコードソート部
３２２  グループ生成部
３３０  統計量算出部
３３１  グループ統計量算出部
３３２  予測誤差算出部
３４０  予測精度分析部
３４１  予測精度分析グラフ生成部
３４２  予測精度分析指標算出部
３５１  個別情報記憶部
３５２  グループ情報記憶部
３５３  分析結果記憶部
４００  個別情報
５００  グループ情報
６００  グループ統計情報
７００  予測精度分析グラフ
８００  分析指標情報
９００  累積グラフ
【図１】
0006568488.tif 000002
【図２】
0006568488.tif 000003
【図３】
0006568488.tif 000004
【図４】
0006568488.tif 000005
【図５】
0006568488.tif 000006
【図６】
0006568488.tif 000007
【図７】
0006568488.tif 000008
【図８】
0006568488.tif 000009
【図９】
0006568488.tif 000010