(57)【特許請求の範囲】
【請求項１】
それぞれ時系列で変化する１または複数種類の入力値および（または）該入力値についての加工値からなる複数種類の入力データを入力パターンとして前記時系列を構成する時点毎に入力し、該入力パターンに対応し予測値および（または）該予測値についての加工値からなる１または複数種類の出力データを出力パターンとして出力するニューラルネットワークによる予測装置において、
前記ニューラルネットワークに学習を行わせるに先立って、少なくとも前記出力データを含む種類別の候補出力データそれぞれについての時系列実績データと、少なくとも前記入力データを含む種類別の候補入力データそれぞれについての時系列実績データとの相互間の、且つ各当該の種類別時系列実績データ相互の時間差を順次所定の時間差まで変化させたときの各時間差毎の相関係数を求める入出力データ解析手段と、
この全ての相関係数のうち、所定の大きさ以上の相関を示す相関係数のそれぞれに関わる種類別候補入力データを予測用の入力データに決定し、同じく該相関係数のそれぞれに関わる種類別候補出力データを予測用の出力データに決定し、該予測用入力データについての時系列実績データからなる時系列の学習用入力パターン及び該予測用出力データについての時系列実績データからなる時系列の教師パターンを入力とし、中間層ニューロン数の異なる複数の学習モデルを自動生成する学習モデル生成手段とを備えたことを特徴とするニューラルネットワークによる予測装置。
【請求項２】
請求項１に記載のニューラルネットワークによる予測装置において、
前記加工値が被加工値の１次差分値、２次差分値、移動平均除去値のいずれかを含むことを特徴とするニューラルネットワークによる予測装置。
【請求項３】
請求項１または２に記載のニューラルネットワークによる予測装置において、
前記学習モデル生成手段によって生成された中間層ニューロン数の異なる各学習モデルの学習に用いる時系列実績データの時系列の期間を所定の学習期間と、これに続く所定の評価期間とに区分し、
該学習期間の時系列実績データから得られる学習用入力パターン及び教師パターンを用いて前記の各学習モデルにそれぞれ学習を行わせるモデル学習手段と、この学習を終えた各学習モデルに前記評価期間の時系列データから得られる学習用入力パターンを予測用の入力パターンとして与えることにより、該各学習モデルから出力される時系列の出力パターンからそれぞれ得られる時系列の予測値と、該予測値に対応する前記評価期間の時系列実績データとの誤差に、各当該学習モデルの重みとしきい値からなる学習パラメータの数を加えた所定の評価基準を各当該学習モデル毎に求め、該評価基準の最小となる最良の学習モデルを選択するモデル選択手段と、
該最良の学習モデルに必要に応じさらに未学習の新たな時系列実績データを含む時系列実績データを用いて学習を行わせ、初期予測モデルとする予測モデル生成手段とを備えたことを特徴とするニューラルネットワークによる予測装置。
【請求項４】
請求項３に記載のニューラルネットワークによる予測装置において、
前記初期予測モデル又は予測動作後の再学習によって逐次更新された予測モデルに、前記予測用入力パターンに対応する最新の実績データを入力して得られる出力パターンから最新の予測値を求める予測計算手段と、
直近の予測値と該予測値に対応する実績データとの予測誤差を含み、過去に遡る一定期間の時系列の予測誤差を所定の演算により評価し、この評価誤差が所定値以内にあれば、前記最新の予測値を有効として外部に出力させると共に、当該の最新予測値を出力した予測モデルには最新の実績データを用い学習を行わせて前記の逐次更新された予測モデルとし、
前記評価誤差が前記所定値を上回るときは当該の最新予測値及び予測モデルを無効として再度、前記の入出力データ解析手段、学習モデル生成手段、モデル学習手段、モデル選択手段、予測モデル生成手段を介し新たな前記初期予測モデルを生成させる予測モデル逐次更新・評価手段とを備えたことを特徴とするニューラルネットワークによる予測装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ニューラルネットワークを用いて、製品の販売実績や出荷実績などの時系列の実績データの挙動から、それらの今後の需要等を予測する装置としてのニューラルネットワークによる予測装置に関する。
【０００２】
【従来の技術】
一般に需要予測を行うニューラルネットワークは、複数のニューロンを持つ入力層及び中間層と、１または複数のニューロンを持つ出力層とからなる階層構造を持ち、予測すべき需要に影響を与えると推定される各種の要因（入力変数）としての各種の時系列の入力データ、例えば製品の販売実績，出荷実績，景気指数，天候，気温等を入力層に取込み、出力層から所望の予測結果を得るための１または複数種類の出力データを生成して出力する。
【０００３】
ニューラルネットワークにこのような予測動作を行わせるためには、予めニューラルネットワークの入力層，出力層，中間層のそれぞれのニューロンの個数を試行錯誤で組合わせたうえ、後述する学習動作によってニューラルネットワークの各ニューロン間の結合の強さを表す重みと、各ニューロンの入出力特性を表すしきい値を調整するという作業を繰り返し、当該の予測に適合するニューラルネットワークを生成する必要がある。
【０００４】
なお、ニューラルネットワークの入力層、出力層、中間層の各層のニューロン数や、上記重み，しきい値等のニューラルネットワークの構造や特性を定める可調整の定数を一括してニューラルネットワークのパラメータという。但し重み，しきい値は学習動作によって毎回変わるパラメータであるため、この重み，しきい値を特に区別して学習パラメータという。
【０００５】
また、入力層のニューロンは、学習動作や予測動作の際、入力層に同時に入力される各種の入力データを１対１に対応して入力しているので、入力層のニューロン数は入力データの種類数に等しく、入力データの種類が定まれば入力層のニューロン数も定まる。
同様に出力層のニューロンは、予測動作の際、出力層から同時に出力される種類別の出力データを１対１に対応して出力しているので、出力層のニューロン数は出力データの種類数に等しく、出力データの種類が定まれば出力層のニューロン数も定まる。
【０００６】
また学習動作の際は、上記種類別の出力データに１対１に対応する教師データを出力層に入力するので、出力層のニューロン数は教師データの種類数にも等しい。
なお、学習動作や予測動作の際、入力層に同時に入力される上記の種類別入力データを一括して入力パターンといい、予測動作時に同じく出力層から同時に出される種類別出力データを一括して出力パターンという。また、学習動作時に出力層に同時に入力される種類別教師データを一括して教師パターンという。
【０００７】
ニューラルネットワークに学習を行わせるには、入力パターンとなる種類別実績データと、この入力パターンに対応する出力パターンとなるべき種類別実績データ（つまり教師パターンとなる種類別実績データ）との対を幾組か用意し、この対の種類別実績データの組毎に、入力層のニューロン列に実績データの入力パターンを呈示して予測動作を行わせたときの出力層のニューロン列の出力と、教師パターンとの誤差を求め、この誤差が減少するように前記ニューロン間の重みとしきい値からなる学習パラメータを調整して、再び前記予測動作と誤差計算を行うことを、前記誤差が所定の許容範囲に入るまで繰り返す。
【０００８】
ところで、ニューラルネットワークを用いて需要予測を行う方法や装置には数多くの提案がなされており、例えば、特開平5 −282281公報ではニューラルネットワークによる予測結果が妥当かどうかを検証する機能と、予測結果が異常と判断された場合に、予測結果を修正する機能を持つ装置が提案されている。
【０００９】
【発明が解決しようとする課題】
一般に、ニューラルネットワ−クによる予測では、予測用ニューラルネットワ−クモデルとしての予測モデル（なお、ここでモデルとは、ニューラルネットワークの前記パラメータで定まる所定の構造と特性を持つニューラルネットワークをいう）を得るまでに、モデルを決めるパラメータの組み合わせが多く存在し、モデルの学習をするためには、大量の繰り返し計算を行う必要があり、計算時間がかかるという問題がある。
【００１０】
また、多くのパラメータの組合せから最良の予測モデルを得るパラメータの組合せを選択する当たって、従来は予測誤差のみを選択の基準にしているが、この場合、一旦は予測誤差が極めて小さい予測モデルが得られたとしても、入力データが不確かである場合、予測出力が実態から異常に大きく外れる、いわゆるオーバーフィッティングを生ずる可能性があるという問題がある。
【００１１】
また、前記例示のような従来の技術は、予測結果の評価や修正などの機能を持っているが、現実の入力データはその特性自体が時系列で変化していく可能性があり、この場合、時間と共に予測結果と実態との乖離が拡大して行き、修正が困難になるという問題がある。
そこで本発明の目的は上記の問題を解消し、ニューラルネットワ−クのパラメータの組合わせを減らして学習時の計算量を低減し、学習の効率化を計ると共に、入力データが不確かであったり、入力データの特性が経時的に変化しても適切な予測精度を確保できる、ニューラルネットワークによる予測装置を提供することにある。
【００１２】
【課題を解決するための手段】
前記の課題を解決するために、請求項１のニューラルネットワークによる予測装置は、
それぞれ時系列で変化する１または複数種類の入力値および（または）該入力値についての加工値からなる複数種類の入力データを入力パターンとして前記時系列を構成する時点毎に入力し、該入力パターンに対応し予測値および（または）該予測値についての加工値からなる１または複数種類の出力データを出力パターンとして出力するニューラルネットワークによる予測装置において、
前記ニューラルネットワークに学習を行わせるに先立って、（データ入力部１０１、データ加工部２０１を介して得た）少なくとも前記出力データを含む種類別の候補出力データそれぞれについての時系列実績データ（x(k), dx1(k), dx2(k), dxm(k)など）と、少なくとも前記入力データを含む種類別の候補入力データそれぞれについての時系列実績データ（y(k), dy1(k), dy2(k), dym(k)など）との相互間の、且つ各当該の種類別時系列実績データ相互の時間差（ｉ）を順次所定の時間差（Ｎ0 ）まで変化させたときの各時間差毎の相関係数（式（１１）で示されるＣx*y (i) など）を求める入出力データ解析手段（データ解析部３０１）と、
この全ての相関係数のうち、所定の大きさ以上の相関を示す相関係数のそれぞれに関わる種類別候補入力データを予測用の入力データに決定し、同じく該相関係数のそれぞれに関わる種類別候補出力データを予測用の出力データに決定し、該予測用入力データについての時系列実績データからなる時系列の学習用入力パターン及び該予測用出力データについての時系列実績データからなる時系列の教師パターンを入力とし、中間層ニューロン数の異なる複数の学習モデルを自動生成する学習モデル生成手段（モデル生成部３０２）とを備えたものとする。
【００１３】
また請求項２のニューラルネットワークによる予測装置は、請求項１に記載のニューラルネットワークによる予測装置において、
前記加工値が被加工値（x(k), y(k)など）の１次差分値（dx1(k), dy1(k)など）、２次差分値（dx2(k), dy2(k)など）、移動平均除去値（dxm(k), dym(k)など）のいずれかを含むようにする。
【００１４】
また請求項３のニューラルネットワークによる予測装置は、請求項１または２に記載のニューラルネットワークによる予測装置において、
前記学習モデル生成手段によって生成された中間層ニューロン数の異なる各学習モデルの学習に用いる時系列実績データの時系列の期間を所定の学習期間（期間Ａ）と、これに続く所定の評価期間（期間Ｂ）とに区分し、
該学習期間の時系列実績データから得られる学習用入力パターン及び教師パターンを用いて前記の各学習モデルにそれぞれ学習を行わせるモデル学習手段（モデル学習部３０３）と、
この学習を終えた各学習モデルに前記評価期間の時系列データから得られる学習用入力パターンを予測用の入力パターンとして与えることにより、該各学習モデルから出力される時系列の出力パターンからそれぞれ得られる時系列の予測値と、該予測値に対応する前記評価期間の時系列実績データとの誤差に、各当該学習モデルの重みとしきい値からなる学習パラメータの数を加えた所定の評価基準（式（１２）で与えられるＪ）を各当該学習モデル毎に求め、該評価基準の最小となる最良の学習モデルを選択するモデル選択手段（モデル選択部３０４）と、該最良の学習モデルに必要に応じさらに未学習の新たな時系列実績データを含む時系列実績データを用いて学習を行わせ、初期予測モデルとする予測モデル生成手段（初期予測モデル生成部３０５）とを備えたものとする。
【００１５】
また請求項４のニューラルネットワークによる予測装置は、請求項３に記載のニューラルネットワークによる予測装置において、
前記初期予測モデル又は予測動作後の再学習によって逐次更新された予測モデルに、（データ入力部１０１、データ加工部２０１を介して得た）前記予測用入力パターンに対応する最新の実績データを入力して得られる出力パターンから最新の予測値を求める予測計算手段（予測計算部２０３）と、
直近の予測値と該予測値に対応する実績データとの予測誤差を含み、過去に遡る一定期間の時系列の予測誤差を所定の演算（式（１３）で与えられるＲＭＳＥ）により評価し、この評価誤差が所定値以内にあれば、前記最新の予測値を有効として（データ出力部１０２を介し）外部に出力させると共に、当該の最新予測値を出力した予測モデルには最新の実績データを用い学習を行わせて前記の逐次更新された予測モデルとし、
前記評価誤差が前記所定値を上回るときは当該の最新予測値及び予測モデルを無効として再度、（学習部３０における）前記の入出力データ解析手段、学習モデル生成手段、モデル学習手段、モデル選択手段、予測モデル生成手段を介し新たな前記初期予測モデルを生成させる予測モデル逐次更新・評価手段（予測モデル逐次更新部２０２、モデル評価部２０４）とを備えたものとする。
【００１６】
本発明の作用は次の如くである。即ち、主として請求項１に関わる発明（第１発明という）では、ニューラルネットワークに学習を行わせるにあたって、ニューラルネットワークの出力データの候補となる種類別データについての時系列実績データと、同じく入力データの候補となる種類別データについての時系列実績データとの個々の種類別データ相互の、且つ相互データ間の時間差を順次ずらしたときの相関係数の絶対値の大きいものを選び、選ばれた相関係数に関わる種類別データから予測モデルの入出力パターンを構成する種類別データを決定すると共に、この入出力パターンに対応する学習用入力パターン及び教師パターンを入力とする中間層のニューロン数の異なる複数の学習モデルを自動的に生成出力させるようにし、相関の強い入出力データのみを自動選択させ、モデル決定のためのパラメータの組合わせを減らすことで、学習モデルの学習を効率的に行わせるようにする。
【００１７】
請求項３に関わる発明（第２発明という）では、学習に利用する時系列実績データを学習期間分と評価期間分に分け、学習期間分の実績データを用いてモデル学習を行い、評価期間分の実績データを用いて学習モデルを評価し、最良の学習モデルを自動的に選択するようにして、オーバーフィッティングすることがなく、高い予測精度の初期予測モデルを得るようにする。
【００１８】
また、請求項４に関わる発明（第３発明という）では、予測動作を行った現在の予測モデルに対し、最新の入出力実績データを用い学習をさせて予測モデルを逐次更新し、初期予測モデルや逐次更新された予測モデルに最新の入力実績データを与えて予測を行わせると同時に、予測値の精度を逐次、その時点までの過去一定期間の時系列の予測誤差から推定評価し、この推定評価した予測誤差が誤差基準を超えると、現在の予測モデルを無効として新たに初期予測モデルを生成させるようして、時系列入出力データの特性が変わっても、予測モデルの予測精度を保てるようにする。
【００１９】
【発明の実施の形態】
図１は本発明の一実施例としてのニューラルネットワークによる予測装置の基本構成を示すブロック図である。同図に示すにように、本発明の予測装置は大きく区分してデータ入出力部１０と、逐次予測部２０と、学習部３０とからなる。そして、データ入出力部１０はデータ入力部１０１とデータ出力部１０２とからなり、逐次予測部２０はデータ加工部２０１と、予測モデル逐次更新部２０２と、予測計算部２０３と、モデル評価部２０４とからなり、学習部３０はデータ解析部３０１と、モデル生成部３０２と、モデル学習部３０３と、モデル選択部３０４と、初期予測モデル生成部３０５とにより構成される。
【００２０】
データ入出力部１０は、予測値の時系列実績データ、及びこの予測値をニューラルネットワークの出力データから得るに必要なニューラルネットワークの入力データ（学習モデルが決まるまでは入力データの候補データ）の元となる未加工データについての複数種類の時系列実績データを入力してデータベースへ格納したり、予測結果を出力したりする機能を持っている。
【００２１】
逐次予測部２０は、データ入出力部１０から新しい実績データが入力される度にこの実績データを加工すると共に、最新の学習用実績データを用いて予測動作を行った予測モデルを逐次更新し、初期予測モデルや逐次更新された予測モデルに最新の予測用実績データからなる入力パターンを与えて最新予測値を求め、また最新予測値の精度を逐次に推定評価し、推定評価した予測誤差が小さければ最新予測値を有効としてデータ入出力部１０へ送り、予測誤差が大きければ最新予測値と現在の予測モデルを無効として、新たに学習部３０に予測モデルを生成させる機能を持っている。
【００２２】
学習部３０は逐次予測部２０で加工された時系列実績データを解析し、その結果に基づいて自動的にニューラルネットワークの入力層，出力層のニューロン数を決定すると共に、この入力層，出力層と組合わされる中間層のニューロン数の異なる複数の学習モデルを自動生成し、生成される各モデルに対して学習を行わせ、これらのモデルの中から決められた基準により、最良の学習モデルを選び出し初期予測モデルとする機能を持っている。
【００２３】
この学習部３０の処理は最初に初期予測モデルを生成する時と、逐次予測部２０において現在の予測モデルが無効と判定されて新たな初期予測モデルを生成する時に行われる。
図４は初期予測モデル生成の処理手順を示す。同図におけるＳ１０１〜Ｓ３０５の符号はステップ番号を示す。次に図４を用いて図１の各部の細部の動作を説明する。
【００２４】
先ず、ステップＳ１０１ではデータ入力部１０１が、予測値についての時系列実績データと予測値に影響を及ぼすと予想される予め選択された各種の要因値（つまり、ニューラルネットワークの各種の入力データの候補となるデータ）の元となる未加工の時系列の実績データをロードする。
次にステップＳ２０１ではデータ加工部２０１が、次に述べる式（１）〜（６）を用いて、ステップＳ１０１において入力された時系列実績データの加工を行う。
【００２５】
ニューラルネットワークの入力として、未加工の時系列実績データそのものだけでなく、後述の式で示される未加工実績データの１次差分値，２次差分値，移動平均を除去した移動平均除去値は生産財の需要予測等において非常に有効である。
そこで、データ加工部２０１は、予測したい時系列実績データx(k)（但し、ｋは１からＮまでの時系列のサンプリング時刻を一般に表す変数とする）に対して、それぞれ次式（１），（２），（３）で示される１次差分値dx1(k)，２次差分値dx2(k)，移動平均除去値dxm(k)を求める加工を行う。
【００２６】
【数１】
0003743247.tif 000002
次にステップＳ３０１ではデータ解析部３０１が、データ加工部２０１で処理された時系列データに対して、以下のようにそれぞれの相関係数を計算する。
例えば予測したい時系列の実績データx(k)及び上記の式（１），（２），（３）で求めたx(k)の加工データからなる時系列実績データ群｛x(k), dx1(k), dx2(k), dxm(k)｝と、入力データ候補を得るための未加工の時系列実績データy(k)及び上記の式（４），（５），（６）で求めたy(k)の加工データからなる時系列実績データ群｛y(k), dy1(k), dy2(k), dym(k)｝とを対象とするときは、次の各式（７）〜（１０）中の「〜」の記号を挟んで対応するデータ相互の相関解析を行う。
【００２７】
即ち式（７）の場合でいえば、 x(k) と８種類のデータx(k), dx1(k), dx2(k), dxm(k), y(k), dy1(k), dy2(k), dym(k)の各々との相関係数を求めることになる。
【００２８】
【数２】
0003743247.tif 000003
ここで予測したい出力データx(k)の時系列実績値としてのデータ群｛x(1), x(2), ・・・, x(N)｝と、入力パターンを構成する１候補の入力データy(k)の時系列実績値としてのデータ群｛y(1), y(2), ・・・, y(N)｝との相互のサンプリング時刻をｉだけずらしたときのデータx(k)とy(k)との相関係数をＣx*y (i) で表すものとすると、Ｃx*y (i) は次式（１１）により計算される。
【００２９】
【数３】
0003743247.tif 000004
式（７）で示される対応関係では、さらに式（１１）と同様に、 x(k) と各種時系列データ群｛x(k), dx1(k), dx2(k), dxm(k), dy1(k), dy2(k), dym(k)｝の各要素データとの相関係数からなる群｛Ｃx*x (i) ，Ｃx*dx1(i)，Ｃx*dx2(i)，Ｃx*dxm (i) ，Ｃx*dy1(i)，Ｃx*dy2(i)，Ｃx*dym (i) ｝を計算することになる。
【００３０】
データ解析部３０１は、同様に式（８），（９），（１０）において対応を示すデータ相互についても相関係数を求める。
次にステップＳ３０２ではモデル生成部３０２が、以下のように学習用のニューラルネットワークモデルとしての学習モデルを生成する。即ち、モデル生成部３０２はデータ解析部３０１の計算結果に基づき、ニューラルネットワークの入出力パターンを構成する、例えばx(k)とy(k)といった未加工実績データや、この未加工実績データについてのそれぞれ１次差分値、２次差分値、移動平均除去値等からなる組合せと、階層型ニューラルネットワークの中間層ニューロン数とを生成出力する。
【００３１】
ニューラルネットワークの入力データの種類数の上限をＩＮmax 、相関係数の選択基準をＣ０とすれば、x(k)をニューラルネットワークの出力とした時の入力パターンを構成する入力データの種類Ｕ(j) （ｊ＝１，２，・・・，ｍ≦ＩＮmax ）（但し、ｊは入力データの種類別に付した番号である）は次のように決定される。
【００３２】
まず、各時刻差ｉ（ｉ＝１，２，・・・，Ｎ0 ）ごとの相関係数群｛Ｃx*x (i) ，Ｃx*dx1(i)，Ｃx*dx2(i)，Ｃx*dxm (i) ，Ｃx*y (i) ，Ｃx*dy1(i)，Ｃx*dy2(i)，Ｃx*dym (i) ｝中の個々の相関係数（便宜上、要素ともいう）の値を一括して絶対値の降順に整列する。
次に、整列後の要素（この場合、個別の相関係数）のうちの先頭要素から、最後の要素までの中で選択基準Ｃ０より大きい要素を選択する。選択された要素の数が入力数の上限ＩＮmax を超えたら、そこで選択を打ち切る。そして選択された要素（相関係数）に対応する時系列データを入力として選ぶ。
【００３３】
ここで、例として時系列実績データx(k)とy(k)の相関係数Ｃx*y (i) の時間差ｉを横軸にとった時系列推移のイメージを図２に示す。本例では選択基準Ｃ０を満足するＣx*y (i) の要素は｛Ｃx*y(1), Ｃx*y(2)｝であり、それに対応する２種類の時系列データ[y(k-1), y(k-2)]がニューラルネットワークの入力として決定される。
【００３４】
x(k)に関する他の相関係数をすべて考慮し、仮に例えば、選択基準Ｃ０を満足し、絶対値の降順で整列された時系列の相関係数群が｛Ｃx*y(1), Ｃx*dx1(1), Ｃx*y(2), Ｃx*x(1), Ｃx*dym(1), Ｃx*x(2), ・・・｝であり、入力数の上限ＩＮmax は５である場合には、ニューラルネットワークの入力パターンを構成するデータとして上記相関係数群の最初の５つに対応する種類別の時系列データ｛ y(k-1), dx1(k-1), y(k-2), x(k-1), dym(k-1) ｝が選択決定されることになる。
【００３５】
以上はx(k)をニューラルネットワークの出力とした時のニューラルネットワーク入力の決定法について述べた。同様の方法で、予測したい時系列データx(k)についての加工データ｛dx1(k), dx2(k), dxm(k)｝をニューラルネットワークの出力とした時、ニューラルネットワークの入力パターンを構成すべき時系列データの種類を決定することができる。
【００３６】
モデル生成部３０２は、こうして決定したニューラルネットワークの種類別の入力データと出力データを入出力とするニューラルネットワークモデルのいくつかを生成し学習モデルとする。即ち、入力データの種類数により入力層のニューロン数が定まり、出力データの種類数により出力層のニューロン数が定まるので、ここでは中間層のニューロン数の異なる複数の学習モデルを生成することになる。
【００３７】
次にステップＳ３０３ではモデル学習部３０３が、モデル生成部３０２で生成された全ての学習モデルに対して、実績データを用いて学習を行わせる。
ここで、モデルのオーバーフィッティングを避けるため、実績データの時系列の期間を図３のように期間Ａと期間Ｂに分け、学習モデルの学習用には時点ｌ1 からｌ2 迄の期間Ａの実績データを用い、学習モデルの評価用には時点ｌ2 ＝ｔ1 からｔ2 迄の期間Ｂの実績データを用いる。
【００３８】
次にステップＳ３０４ではモデル選択部３０４が、モデル学習部３０３で学習させた全ての学習モデルを期間Ｂの実績データを用い、次に述べる評価基準Ｊによって評価し、その中から評価基準Ｊが最小値を示す最良の学習モデルを選択する。
学習モデルの評価基準Ｊは次式（１２）に示すように、評価期間Ｂにおける予測誤差の項（第１項）と学習モデルの学習パラメータ数の項（第２項）から構成される。
【００３９】
【数４】
0003743247.tif 000005
次にステップＳ３０５では初期予測モデル生成部３０５が、モデル選択部３０４により式（１２）の値が最小となるモデルとして選択された最良の学習モデルに対し、期間Ａと期間Ｂからなる全期間の実績データを適用して学習を終えたモデルを初期の予測用モデル（初期予測モデル）とし、この初期予測モデルを逐次学習部２０内の予測モデル逐次更新部２０２に送る。
【００４０】
次は予測モデルに最新の予測用実績データを入力して予測計算を行うと共に、その予測結果を評価して適切と推定される予測値を外部に出力し、予測計算した予測モデルに最新の学習用実績データを入力して予測モデルを更新する一方、予測結果が不適切と推定される場合は予測結果及び現在の予測モデルを無効として新たな初期予測モデルを生成させるという動作を繰り返す。
【００４１】
図５はこの逐次の予測および予測モデル更新の処理手順を示す。なお同図中、Ｓ２０１〜Ｓ２０４〜Ｓ１０２の符号はステップ番号を示す。
次に図５を用いて図１の細部の動作の説明を続ける。ステップＳ２０１ではデータ加工部２０１が、データ入力部１０１から逐次入力される最新の未加工の入出力実績データを前述のように加工し、そのつど最新の学習用の入出力パターンと最新の予測用の入力パターンを出力する。
【００４２】
ステップＳ２０２では逐次更新部２０２が、学習部３０から初期予測モデルが送られてきた場合は、初期予測モデルにデータ加工部２０１が出力した最新の予測用入力パターンを組み合わせて予測計算部２０３へ送るが、そうでない場合は、データ加工部２０１が新たな学習用の入出力パターンを出力する度に、この入出力パターンを用い、一度予測計算を終えて（後述のようにモデル評価部２０４により、その予測計算値が正常と評価されて）予測計算部２０３から戻った現在の予測モデルに学習を行わせて予測モデルを更新し、更新した予測モデルにデータ加工部２０１が出力した最新の予測用入力パターンを組み合わせて再び予測計算部２０３へ送る動作を繰り返す。
【００４３】
ステップＳ２０３では予測計算部２０３が、予測モデル逐次更新部２０２から送られた予測モデルと最新の入力パターンを用いて予測値を計算する。
次のステップＳ２０４では、モデル評価部２０４が、予測モデルの予測計算結果を監視し、予測精度（予測誤差評価値）を次式（１３）によって逐次、評価する。
【００４４】
【数５】
0003743247.tif 000006
即ち、モデル評価部２０４は式（１３）によって、直近の予測誤差を含む一定期間内の時系列の予測誤差（データ数はＮ1 ）についての予測誤差評価値ＲＭＳＥを求め。予測誤差評価値ＲＭＳＥが誤差評価基準ＲＭＳＥ０を超えなければ、予測値を予測計算部２０３からデータ出力部１０２へ送らせる。
【００４５】
これによりステップＳ１０２においてデータ出力部１０２がこの予測値を外部に出力する。この後は、前述のように一度予測計算を終えた現在の予測モデルは予測モデル逐次評価部２０２へ送られ、再びステップＳ２０１からの処理が繰り返される。
他方、ステップＳ２０４において予測誤差ＲＭＳＥが誤差基準ＲＭＳＥ０を超える場合は、モデル評価部２０４は最新の予測値と現在の予測モデルを無効とし、ステップＳ３０において学習部３０に新たな初期予測モデルを生成させる。
この新たな初期予測モデルは予測モデル逐次更新部２０２に送られ、以後は当初の初期予測モデルの場合と同様に、上述してきた動作が繰り返される。
【００４６】
【発明の効果】
第１発明によれば、使用者がニューラルネットワークに学習を行わせるにあたって、ニューラルネットワークの出力データの候補となる種類別データについての時系列実績データと、同じく入力データの候補となる種類別データについての時系列実績データとの個々の種類別データ相互の相関係数の絶対値の大きいものを選び、選ばれた相関係数に関わる種類別データから予測モデルの入出力パターンを構成する種類別データを決定すると共に、この入出力パターンに対応する学習用入力パターン及び教師パターンを入力とする中間層のニューロン数の異なる複数の学習モデルを自動的に生成出力させるようにしたので、
相関の強い入出力データのみが自動選択されることになり、ケーススタディの回数が減り、学習モデルの学習を効率的に行える効果がある。
【００４７】
第２発明によれば、学習に利用する時系列実績データを学習期間分と評価期間分に分け、学習期間分の実績データを用いてモデル学習を行い、モデル学習に使用していない評価期間分の実績データを用いて学習モデルを評価し、最良の学習モデルを自動的に選択するようにしたので、
オーバーフィッティングするモデルを選択することなく、高い予測精度の予測モデルが得られる効果がある。
【００４８】
また、第３発明によれば、予測動作を行った現在の予測モデルに対し、最新の入出力実績データを用い学習をさせて予測モデルを逐次更新し、初期予測モデルや逐次更新された予測モデルに最新の入力実績データを与えて予測を行わせると同時に、予測値の精度を逐次、その時点までの過去一定期間の時系列の予測誤差から推定評価し、推定評価した予測誤差が誤差基準を超えると、現在の予測モデルを無効として新たに初期予測モデルを生成させるようにしたので、時系列入出力データの特性が変わっても、予測モデルの予測精度を保てる効果がある。
【図面の簡単な説明】
【図１】本発明の一実施例としての、予測装置の構成を示すブロック図
【図２】同じく、ニューラルネットワークの入力候補実績データと出力候補実績データ間の相関係数と、この相関係数を求める両実績データ相互の時間差との関係を示すイメージ図
【図３】同じく、ニューラルネットワークの学習に用いる実績データのモデル学習に用いる期間分と学習モデルの評価に用いる期間分との配分を示すイメージ図
【図４】同じく、初期予測モデル生成の処理手順を示すフロー図
【図５】同じく、逐次予測、予測モデル逐次更新の処理手順を示すフロー図
【符号の説明】
１０      データ入出力部
２０      逐次予測部
３０      学習部
１０１      データ入力部
１０２      データ出力部
２０１      データ加工部
２０２      予測モデル逐次更新部
２０３      予測計算部
２０４      モデル評価部
３０１      データ解析部
３０２      モデル生成部
３０３      モデル学習部
３０４      モデル選択部
３０５      初期予測モデル生成部
【図１】
0003743247.tif 000007
【図２】
0003743247.tif 000008
【図３】
0003743247.tif 000009
【図４】
0003743247.tif 000010
【図５】
0003743247.tif 000011