(57)【要約】【課題】将来の現象をより精度良く予測することを目的とする。【解決手段】一実施形態に係る予測システムは時系列データに対する機械学習を実行することで、将来の時期における現象の予測を示す予測データを生成する予測部を備える。時系列データは、過去の個々の時点における現象を示す複数の測定レコードと、測定レコードに対応付けられたラベルとを含む。ラベルは、第１現象から第２現象への遷移を示す開始ラベルと、第２現象から第１現象への遷移を示す終了ラベルと、第１現象または第２現象の継続を示す継続ラベルとを少なくとも含むラベル群から選択される。【選択図】図２
2019105979.tif 000002
【特許請求の範囲】
【請求項１】
時系列データに対する機械学習を実行することで、将来の時期における現象の予測を示す予測データを生成する予測部を備え、
前記時系列データが、過去の個々の時点における現象を示す複数の測定レコードと、前記測定レコードに対応付けられたラベルとを含み、
前記ラベルが、第１現象から第２現象への遷移を示す開始ラベルと、前記第２現象から前記第１現象への遷移を示す終了ラベルと、前記第１現象または前記第２現象の継続を示す継続ラベルとを少なくとも含むラベル群から選択される、
予測システム。
【請求項２】
前記継続ラベルが、前記第１現象の継続を示す第１継続ラベルと、前記第２現象の継続を示す第２継続ラベルとを含む、
請求項１に記載の予測システム。
【請求項３】
前記機械学習が、前記ラベル群に対応する複数のニューラルネットワークを用いる処理であり、
前記予測部が、前記時系列データから選択された１以上の前記測定レコードで構成される入力ベクトルで示されるラベルに基づいて、該入力ベクトルを処理する一つのニューラルネットワークを前記複数のニューラルネットワークから選択する、
請求項１または２に記載の予測システム。
【請求項４】
前記時系列データにおいて、前記開始ラベルが付与された前記測定レコードの個数の第１比率と、前記終了ラベルが付与された前記測定レコードの個数の第２比率とが上がるように、前記複数の測定レコードの一部に対して複製および間引きの少なくとも一方が実行されることで、前記時系列データにおける各ラベルの比率が調整され、
前記予測部が、各ラベルの比率が調整された前記時系列データに対する前記機械学習を実行する、
請求項１〜３のいずれか一項に記載の予測システム。
【請求項５】
将来の第１時期における現象を予測する場合よりも、該第１時期よりも現在から遠い将来の第２時期における現象を予測する場合において、前記第１比率および前記第２比率の上昇度が低くなるように、前記時系列データにおける各ラベルの比率が調整される、
請求項４に記載の予測システム。
【請求項６】
前記現象が降水に関し、前記第１現象が降水のない状態であり、前記第２現象が降水のある状態である、
請求項１〜５のいずれか一項に記載の予測システム。
【請求項７】
前記時系列データのデータ項目が感雨および降水強度を含み、
前記予測部が、前記将来の時期における前記感雨および前記降水強度を予測し、該予測された感雨および降水強度に基づいて降水指数を求める、
請求項６に記載の予測システム。
【請求項８】
少なくとも一つのプロセッサを備える予測システムにより実行される予測方法であって、
時系列データに対する機械学習を実行することで、将来の時期における現象の予測を示す予測データを生成する予測ステップを含み、
前記時系列データが、過去の個々の時点における現象を示す複数の測定レコードと、前記測定レコードに対応付けられたラベルとを含み、
前記ラベルが、第１現象から第２現象への遷移を示す開始ラベルと、前記第２現象から前記第１現象への遷移を示す終了ラベルと、前記第１現象または前記第２現象の継続を示す継続ラベルとを少なくとも含むラベル群から選択される、
予測方法。
【請求項９】
時系列データに対する機械学習を実行することで、将来の時期における現象の予測を示す予測データを生成する予測ステップをコンピュータシステムに実行させ、
前記時系列データが、過去の個々の時点における現象を示す複数の測定レコードと、前記測定レコードに対応付けられたラベルとを含み、
前記ラベルが、第１現象から第２現象への遷移を示す開始ラベルと、前記第２現象から前記第１現象への遷移を示す終了ラベルと、前記第１現象または前記第２現象の継続を示す継続ラベルとを少なくとも含むラベル群から選択される、
予測プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の一側面は、ニューラルネットワークを用いた予測システム、予測方法、および予測プログラムに関する。
【背景技術】
【０００２】
従来から、ニューラルネットワークを用いて将来の現象を予測する手法が知られている。例えば、特許文献１には、ニューロコンピュータに大気状態を推測させる気象予測システムが記載されている。この気象予測システムは、ニューロコンピュータに大気状態の変化の様子を学習させる第１の制御手段と、任意の大気状態の変化の様子を基に、ニューロコンピュータに以降の大気状態を推測させる第２の制御手段とを備える。また、特許文献２には、ガスタービンの燃焼器で発生する燃焼振動を数式モデルにより予測する燃焼振動予測装置が記載されている。この装置は、プラントデータおよび気象データから内圧変動を説明する数式モデルを構築し、構築した数式モデルに基づいて燃焼振動の発生し易い領域と発生しにくい領域とを求める。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平６−３４７５６３号公報
【特許文献２】特開２００２−５４４６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
時間の経過により変化する現象の中には、ある時間帯において断続的に発生するものがある。例えば、ガスタービンの燃焼器は、運転条件または環境条件の変化に伴い、燃焼振動が発生していない状態から燃焼振動が発生した状態へと移行するか、または燃焼振動が発生している状態から燃焼振動が発生しない状態へと移行する。気象を例にとると、晴れまたは曇りの状態から降水（例えば降雨または降雪）の状態に移行し、その後降水が止んで晴れまたは曇りの状態に移行する。従来の予測手法では、現象の本来の開始または終了と、現象の中断または再開とを区別することができない。そのため、将来の現象をより精度良く予測することが望まれている。
【課題を解決するための手段】
【０００５】
本発明の一側面に係る予測システムは、時系列データに対する機械学習を実行することで、将来の時期における現象の予測を示す予測データを生成する予測部を備え、時系列データが、過去の個々の時点における現象を示す複数の測定レコードと、測定レコードに対応付けられたラベルとを含み、ラベルが、第１現象から第２現象への遷移を示す開始ラベルと、第２現象から第１現象への遷移を示す終了ラベルと、第１現象または第２現象の継続を示す継続ラベルとを少なくとも含むラベル群から選択される。
【０００６】
本発明の一側面に係る予測方法は、少なくとも一つのプロセッサを備える予測システムにより実行される予測方法であって、時系列データに対する機械学習を実行することで、将来の時期における現象の予測を示す予測データを生成する予測ステップを含み、時系列データが、過去の個々の時点における現象を示す複数の測定レコードと、測定レコードに対応付けられたラベルとを含み、ラベルが、第１現象から第２現象への遷移を示す開始ラベルと、第２現象から第１現象への遷移を示す終了ラベルと、第１現象または第２現象の継続を示す継続ラベルとを少なくとも含むラベル群から選択される。
【０００７】
本発明の一側面に係る予測プログラムは、時系列データに対する機械学習を実行することで、将来の時期における現象の予測を示す予測データを生成する予測ステップをコンピュータシステムに実行させ、時系列データが、過去の個々の時点における現象を示す複数の測定レコードと、測定レコードに対応付けられたラベルとを含み、ラベルが、第１現象から第２現象への遷移を示す開始ラベルと、第２現象から第１現象への遷移を示す終了ラベルと、第１現象または第２現象の継続を示す継続ラベルとを少なくとも含むラベル群から選択される。
【０００８】
このような側面においては、機械学習への入力として用いられる時系列データに開始ラベル、終了ラベル、または継続ラベルが付与される。このラベル付けにより機械学習において現象の変化が考慮されるので、将来の現象をより精度良く予測することが可能になる。
【０００９】
他の側面に係る予測システムでは、継続ラベルが、第１現象の継続を示す第１継続ラベルと、第２現象の継続を示す第２継続ラベルとを含んでもよい。より詳細なラベル付けにより、将来の現象をより精度良く予測できる。
【００１０】
他の側面に係る予測システムでは、機械学習が、ラベル群に対応する複数のニューラルネットワークを用いる処理であり、予測部が、時系列データから選択された１以上の測定レコードで構成される入力ベクトルで示されるラベルに基づいて、該入力ベクトルを処理する一つのニューラルネットワークを複数のニューラルネットワークから選択してもよい。現象の遷移または継続に応じて複数のニューラルネットワークを用意し、測定データで示される現象に応じてニューラルネットワークを切り替えながら機械学習を行うことで、将来の現象をより精度良く予測できる。
【００１１】
他の側面に係る予測システムでは、時系列データにおいて、開始ラベルが付与された測定レコードの個数の第１比率と、終了ラベルが付与された測定レコードの個数の第２比率とが上がるように、複数の測定レコードの一部に対して複製および間引きの少なくとも一方が実行されることで、時系列データにおける各ラベルの比率が調整され、予測部が、各ラベルの比率が調整された時系列データに対する機械学習を実行してもよい。現象の変化を示すラベルの個数が現象の継続を示すラベルの個数と比べてかなり少ないと、機械学習において現象の変化が適切に捕捉されないために予測の精度が下がる可能性がある。現象の変化を示すラベルの個数と現象の継続を示すラベルの個数との差を小さくするように時系列データにおける各ラベルの比率を調整することで、将来の現象をより精度良く予測できる。
【００１２】
他の側面に係る予測システムでは、将来の第１時期における現象を予測する場合よりも、該第１時期よりも現在から遠い将来の第２時期における現象を予測する場合において、第１比率および第２比率の上昇度が低くなるように、時系列データにおける各ラベルの比率が調整されてもよい。予測の対象となる時期に応じて各ラベルの比率を調整することで、将来の現象をより精度良く予測できる。
【００１３】
他の側面に係る予測システムでは、現象が降水に関し、第１現象が降水のない状態であり、第２現象が降水のある状態であってもよい。この場合には、将来の降水の状況をより精度良く予測することが可能になる。
【００１４】
他の側面に係る予測システムでは、時系列データのデータ項目が感雨および降水強度を含み、予測部が、将来の時期における感雨および降水強度を予測し、該予測された感雨および降水強度に基づいて降水指数を求めてもよい。感雨および降水強度を総合的に考慮した指数を導入することで、人の直感に合うように将来の降水の状況を予測することができる。
【発明の効果】
【００１５】
本発明の一側面によれば、将来の現象をより精度良く予測することができる。
【図面の簡単な説明】
【００１６】
【図１】実施形態に係る予測システムで用いられるコンピュータのハードウェア構成を示す図である。
【図２】実施形態に係る予測システムの機能構成を示す図である。
【図３】気象データ（時系列データ）の例を示す図である。
【図４】実施形態に係る予測システムの動作を示すフローチャートである。
【図５】気象データに対するラベル付けの例を示す図である。
【図６】気象データの各ラベルの比率を調整する例を示す図である。
【図７】実施形態に係る予測システムで用いられるニューラルネットワークの例を示す図である。
【図８】実施形態に係る予測システムで用いられるニューラルネットワークの例を示す図である。
【図９】予測データの一例である降水指数を示す図である。
【図１０】実施形態に係る予測プログラムの構成を示す図である。
【図１１】複数の予測手法の精度を示すグラフである。
【発明を実施するための形態】
【００１７】
以下、添付図面を参照しながら本発明の実施形態を詳細に説明する。なお、図面の説明において同一または同等の要素には同一の符号を付し、重複する説明を省略する。
【００１８】
［システムの構成］
実施形態に係る予測システム１０は、将来の現象を予測するコンピュータシステムである。「現象」とは、人間が知覚することができる物事、または何らかのセンサを用いて知覚することができる物事である。予測システム１０が予測する現象は限定されない。例えば、予測システム１０は自然界での現象を予測してもよく、例えば気象を予測してもよい。あるいは、予測システム１０は人工物で起こる現象を予測してもよく、例えばガスタービンの振動を予測してもよい。あるいは、予測システム１０は人間の社会生活から生じる現象、すなわち社会現象を予測してもよく、例えば、交通渋滞を予測してもよい。一例として、本実施形態では予測システム１０は気象の一種である降水を予測する。降水とは、大気中の水蒸気が地上に落下する現象であり、例えば雨、雪、雹などである。
【００１９】
図１は予測システム１０を構成するコンピュータ１００の一般的なハードウェア構成を示す。例えば、コンピュータ１００はプロセッサ１０１、主記憶部１０２、補助記憶部１０３、通信制御部１０４、入力装置１０５、および出力装置１０６を備える。プロセッサ１０１はオペレーティングシステムおよびアプリケーション・プログラムを実行する。主記憶部１０２は例えばＲＯＭおよびＲＡＭで構成される。補助記憶部１０３は例えばハードディスクまたはフラッシュメモリで構成され、一般に主記憶部１０２よりも大量のデータを記憶する。通信制御部１０４は例えばネットワークカードまたは無線通信モジュールで構成される。入力装置１０５は例えばキーボード、マウス、タッチパネルなどで構成される。出力装置１０６は例えばモニタおよびスピーカで構成される。
【００２０】
予測システム１０の各機能要素は、プロセッサ１０１または主記憶部１０２の上に所定のソフトウェア（例えば、後述する予測プログラムＰ１）を読み込ませてそのソフトウェアを実行させることで実現される。プロセッサ１０１はそのソフトウェアに従って、通信制御部１０４、入力装置１０５、または出力装置１０６を動作させ、主記憶部１０２または補助記憶部１０３におけるデータの読み出しおよび書き込みを行う。処理に必要なデータまたはデータベースは主記憶部１０２または補助記憶部１０３内に格納される。
【００２１】
予測システム１０は１台のコンピュータで構成されてもよいし、複数台のコンピュータで構成されてもよい。複数台のコンピュータを用いる場合には、これらのコンピュータがインターネットやイントラネットなどの通信ネットワークを介して接続されることで、論理的に一つの予測システム１０が構築される。
【００２２】
図２は予測システム１０の機能構成を示す。予測システム１０は機能的構成要素として取得部１１、前処理部１２、および予測部１３を備える。予測システム１０はインターネットやイントラネットなどの通信ネットワークを介してデータベース２０にアクセスすることができる。
【００２３】
データベース２０は、予測システム１０からの任意のデータ操作（例えば、抽出、追加、削除、上書きなど）に対応できるように時系列データを記憶する機能要素または装置である。データベースの実装方法は限定されないが、例えばデータベース管理システム（ＤＢＭＳ）が用いられてもよい。データベース２０の管理主体および設置場所は限定されない。例えば、データベース２０は、予測システム１０とは異なるコンピュータシステムにより管理されてもよいし、予測システム１０の一部であってもよい。データベース２０は、予測システム１０の運営者が他の機関から提供された時系列データを記憶してもよいし、該運営者が自身で収集した時系列データを記憶してもよい。「時系列データ」とは、過去の個々の時点において実際に発生した現象を示す複数の測定レコードを時間の経過に沿って並べることで得られるデータである。「測定レコード」は、１時点において発生した現象を示す１以上の値の集合である。
【００２４】
本実施形態では、予測システム１０は、データベース２０に記憶された気象データを用いて将来の気象（具体的には降水）を予測する。気象データは、１以上の観測地点において所定の単位時間間隔で（例えば１０分間隔で）観測された気象の記録であり、時系列データの一例である。なお、気象データを得るための装置（気象観測装置）の種類は何ら限定されず、例えばアメダス（ＡＭｅＤＡＳ）、気象レーダなどであってもよい。
【００２５】
図３は、データベース２０および気象データの構成の例を模式的に示す。本実施形態では、気象データは複数の地点での気象の記録（観測記録）であり、データ項目として時点、気温、圧力（海面圧力）、湿度、感雨、風向、風速、および降水強度を含む。「時点」とは、気温および圧力などの測定値が得られた日時であり、測定時点ということもできる。「感雨」とは降水があるかないかを示す指標であり、降水強度とは単位時間当たりの降水量である。個々の地点の気象データは、複数の時点（ｔ１，ｔ２など）における測定レコードを含む。図３は、一つの地点Ｐａに関する気象データを特に示す。
【００２６】
気象データの構成は図３の例に限定されない。例えば、気象データに対して任意の正規化または冗長化が為されてもよい。あるいは、気象データが日照などの他のデータ項目を含んでもよいし、図３に記載のデータ項目の少なくとも一つが省略されてもよい。
【００２７】
予測システム１０では、取得部１１が気象データを取得し、前処理部１２がその気象データを前処理（編集）し、予測部１３が前処理（編集）された気象データに対して機械学習を実行することで予測データを生成する。
【００２８】
取得部１１は、気象データを取得する機能要素である。取得部１１は、予測に関する指示の入力に応じて、その指示に対応する気象データをデータベース２０から読み出す。
【００２９】
前処理部１２は、予測を実行する前に、取得された気象データを前処理（編集）する機能要素である。本実施形態では、前処理部１２は正規化と、ラベル付けと、各ラベルの比率の調整とを実行する。したがって、前処理部１２はラベリング部および調整部としても機能する。
【００３０】
「正規化」とは、気象データの各データ項目の値を所定の数値範囲内で変形する処理であり、この処理により気象データが無次元化される。例えば、各データ項目の値が０から１の範囲内に収まるように正規化が行われてもよい。
【００３１】
「ラベル付け」とは、個々の測定レコードにラベルを付与する処理である。「ラベル」とは、測定レコードを複数のグループに分類するために気象データ（時系列データ）に追加されるデータ項目である。「測定レコードにラベルを付与する」とは、測定レコードからそのラベルが特定できるように、該測定レコードと該ラベルとを対応付ける処理である。本実施形態では、このラベルは気象データの更なる編集と、利用するニューラルネットワークの選択とのために用いられ、ラベルの利用により予測の精度の向上が期待できる。
【００３２】
経時的に発生と消滅とを繰り返す系で特定の現象（注目現象）を予測する場合には、該注目現象が発生していない状況を「第１現象」とし、該注目現象が発生している状況を「第２現象」とみなすことができる。本実施形態で付与されるラベルは、第１現象または第２現象の継続を示す継続ラベルと、これら二つの現象の一方から他方への遷移を示す遷移ラベルとを含む。本実施形態では、第１現象の継続を示すラベルを「第１継続ラベル」といい、第２現象の継続を示すラベルを「第２継続ラベル」という。また、第１現象から第２現象への遷移を示すラベルを「開始ラベル」といい、第２現象から第１現象への遷移を示すラベルを「終了ラベル」という。
【００３３】
「各ラベルの比率の調整」とは、ラベル毎の測定レコードの個数の比率を変える処理である。あるいは、「各ラベルの比率の調整」とは、ラベル毎の学習機会の比率を調整する処理であるともいえる。前処理部１２は、ラベルが付与された時系列データの少なくとも一部を複製するかまたは間引くことで、その比率を調整する。現象が時間の経過と共に変化する場合、一般には、現象がある状態から別の状態に変わる期間の長さは、現象がある状態を継続する期間の長さよりも短い。そのため、時系列データ上では、現象の変化を示すラベルの個数は、現象の継続を示すラベルの個数より少ない。現象の変化を示すラベルの個数が現象の継続を示すラベルの個数と比べてかなり少ないと、機械学習において現象の変化が適切に捕捉されないために予測の精度が下がる可能性がある。そこで、前処理部１２は、現象の変化を示すラベルの個数と現象の継続を示すラベルの個数との差を小さくするように、気象データにおける各ラベルの比率を調整する。
【００３４】
予測部１３は、前処理（編集）された気象データに対する機械学習を実行することで予測データを生成する機能要素である。「機械学習」とは、与えられた情報に基づいて反復的に学習することで、法則またはルールを自律的に見つけ出す手法である。「予測データ」とは、将来の特定の時期における現象の予測を示すデータである。予測データで示される将来の時期はいつでもよく、例えば１秒後、１分後、１０分後、１時間後、１日後、１ヶ月後、または１年後でもよい。本実施形態では、予測データは降水に関する情報を示す。本実施形態では、予測部１３は深層学習により予測データを生成する。「深層学習」とは多層構造のニューラルネットワーク（深層ニューラルネットワーク（ＤＮＮ））を用いた機械学習である。「ニューラルネットワーク」とは、人間の脳神経系の仕組みを模した情報処理のモデルである。
【００３５】
予測部１３は、前処理された気象データの一部である学習データを処理しながらニューラルネットワークの重みの更新を重ねることで、最も予測精度が高いと推定される最良のニューラルネットワーク（以下では、単に「最良のニューラルネットワーク」という）を生成する。このステップをニューラルネットワークの学習と呼ぶ。なお、ニューラルネットワークの学習により得られた「最良のニューラルネットワーク」が“現実に最良である”とは限らないことに留意されたい。予測部１３は前処理された気象データの残りを検証データとして用い、最良のニューラルネットワークを用いてその検証データを処理し、学習により得られた「最良のニューラルネットワーク」による予測データと、検証データとの差異を検証し、そのニューラルネットワークを定量的に評価する。このステップをニューラルネットワーク検証と呼ぶ。ニューラルネットワーク検証のステップにおいて、予測部１３は、評価結果を含む予測データを出力してもよいし、評価結果を含まない予測データを出力してもよい。
【００３６】
［システムの動作］
予測システム１０の動作を説明するとともに本実施形態に係る予測方法について説明する。以下、予測システム１０に含まれるニューラルネットワークの学習のステップと、ニューラルネットワークの検証のステップとを含む動作を記載する。図４は予測システム１０の動作を示すフローチャートであり、より具体的には、ある１地点における将来の降水を予測するための処理を示す。複数の地点の降水を予測する場合には、図４で示される処理が複数回実行される。
【００３７】
ステップＳ１１では、取得部１１がデータベース２０から気象データ（時系列データ）を取得する（取得ステップ）。取得部１１は予測システム１０のオペレータにより入力された指示に応じて、その指示に対応する時系列データを取得してもよいし、スケジューラに設定されたタイミングで、所定の条件に対応する時系列データを取得してもよい。取得部１１はある１地点（予測地点）での降水を予測するために、該予測地点の気象データのみを取得してもよい。あるいは、取得部１１は一つの予測地点での降水を予測するために、該予測地点の気象データと、該予測地点の周辺にある１以上の地点の気象データとを取得してもよい。
【００３８】
取得部１１は気象データの値をそのまま後続の処理（前処理部１２および予測部１３）に流してもよい。あるいは、取得部１１は気象データ中の各時点の値を、一つ前の時点からの差分（勾配）に変換した上で、変換された気象データを後続の処理に流してもよい。
【００３９】
続いて、前処理部１２がデータベース２０から読み出された気象データを前処理（編集）する。ステップＳ１２では、前処理部１２は気象データの各データ項目の値（気象データの各測定レコードの各値）を正規化する。正規化で用いられる数値範囲は限定されないが、例えば前処理部１２は０以上１以下の範囲で各要素を正規化してもよい。正規化の具体的な規則は限定されず、またその正規化方法はデータ項目ごとに異なってもよい。例えば、前処理部１２は値を二値（０または１）に変換してもよいし、０から１の間の任意の実数に変換してもよい。
【００４０】
ステップＳ１３では、前処理部１２は気象データに対するラベル付けを実行する（ラベリングステップ）。本実施形態では、前処理部１２は予め定められた規則に従って各測定レコードに「感雨なし（０）」、「降り途中（１）」、「降り始め（２）」、および「降り終わり（３）」という４種類のラベルのいずれか一つを付与する。例えば、前処理部１２は、時点ｔｋにおける観測記録を示す測定レコードＲｋのラベル付けを下記の規則Ｑａ〜Ｑｄに従って実行する。下記の測定レコードＲｋ−１は、時点ｔｋの一つ前の時点ｔｋ−１における観測記録を示す。
【００４１】
・規則Ｑａ：測定レコードＲｋのデータ項目「感雨」が「感雨なし」であり、かつ測定レコードＲｋ−１におけるデータ項目「感雨」が「感雨なし」である場合には、ラベルは「感雨なし（０）」である。
・規則Ｑｂ：測定レコードＲｋでの「感雨」が「感雨あり」であり、かつ測定レコードＲｋ−１での「感雨」が「感雨あり」である場合には、ラベルは「降り途中（１）」である。
・規則Ｑｃ：測定レコードＲｋでの「感雨」が「感雨あり」であり、かつ測定レコードＲｋ−１での「感雨」が「感雨なし」である場合には、ラベルは「降り始め（２）」である。
・規則Ｑｄ：測定レコードＲｋでの「感雨」が「感雨なし」であり、かつ測定レコードＲｋ−１での「感雨」が「感雨あり」である場合には、ラベルは「降り終わり（３）」である。
【００４２】
本実施形態では、降水がない状態を第１現象とし、降水がある状態を第２現象とする。したがって、「感雨なし（０）」は第１継続ラベルであり、「降り途中（１）」は第２継続ラベルであり、「降り始め（２）」は開始ラベル（遷移ラベル）であり、「降り終わり（３）」は終了ラベル（遷移ラベル）である。
【００４３】
図５は、図３に示す地点Ｐａの気象データに対するラベル付けの例を示す。図５ではラベルを数値のみで示しており、０は「感雨なし」、１は「降り途中」、２は「降り始め」、３は「降り終わり」を示す。
【００４４】
ステップＳ１４では、前処理部１２が、ラベル付けされた気象データを学習データと検証データとに分割する。学習データはニューラルネットワークの学習のステップで使用するデータである。検証データはニューラルネットワークの検証のステップで使用するデータである。前処理部１２は気象データを前半と後半の二つに分ける。前半の気象データは、測定時点が相対的に古い測定レコードの群であり、予測システム１０はこの群を学習データとして用いる。後半の気象データは、測定時点が相対的に新しい測定レコードの群であり、予測システム１０はこの群を検証データとして用いる。学習データと検証データとの間の測定レコードの個数の比率は限定されない。例えば、前処理部１２は気象データを半々に分けることで学習データおよび検証データを得てもよい。
【００４５】
ステップＳ１５では、前処理部１２はラベルが付与された学習データの少なくとも一部を複製するかまたは間引くことで、ラベル毎の測定レコードの個数の比率を調整する（調整ステップ）。降水を例に取ると、降水の始まりまたは終わりに対応する期間の長さは、降水がない期間または降水が続く期間の長さよりもだいぶ短い。したがって、「降り始め（２）」または「降り終わり（３）」が付与された測定レコードの個数は、「感雨なし（０）」または「降り途中（１）」というラベルが付与された測定レコードの個数よりもかなり少ない。そのため、ラベルが付与されたデータをそのまま用いると、降水の開始および終了を精度良く予測することが難しくなる。そこで、前処理部１２は気象データにおける各ラベルの比率を調整する。
【００４６】
例えば、前処理部１２は、継続ラベル（例えば、「感雨なし（０）」または「降り途中（１）」）が付与された測定レコードを間引くことで当該測定レコードの個数を減らしてもよい。あるいは、前処理部１２は遷移ラベル（例えば、「降り始め（２）」または「降り終わり（３）」）が付与された測定レコードを複製することで当該測定レコードの個数を増やしてもよい。あるいは、前処理部１２は間引きおよび複製の双方を実行してもよい。
【００４７】
前処理部１２は、現象の開始および終了に対応する測定レコードのみを複製してもよい。具体的には、前処理部１２は、遷移ラベル（「降り始め（２）」または「降り終わり（３）」）が付与された測定レコードのうち、実際に降水が始まったまたは終わったと推定される時点に対応する測定レコードを複製する。例えば、前処理部１２は、時点ｔｋにおける観測記録を示す測定レコードＲｋが下記の条件Ｃａ，Ｃｂのいずれかを満たす場合にその測定レコードＲｋを複製する。
【００４８】
・条件Ｃａ：付与されたラベルが「降り始め（２）」（開始ラベル）であり、かつ、時点ｔｋの直前の所定の時間帯（例えば６０分間）における測定レコードのラベルがすべて「感雨なし（０）」（第１継続ラベル）である。
・条件Ｃｂ：付与されたラベルが「降り終わり（３）」（終了ラベル）であり、かつ、時点ｔｋの直後の所定の時間帯（例えば６０分間）における測定レコードのラベルが「感雨なし（０）」（第１継続ラベル）である。
【００４９】
図６は各ラベルの比率の調整の例を示す。この例では、前処理部１２は、直前の所定の時間帯（例えば時点ｔ１〜ｔ６）がすべて「感雨なし（０）」である時点ｔ７の測定レコードを２個複製して時点ｔ７，ｔ８の間にその複製を挿入している。さらに、前処理部１２は、直後の所定の時間帯（例えば時点ｔ１７〜ｔ２２）がすべて「感雨なし（０）」である時点ｔ１６の測定レコードを２個複製して、時点ｔ１６，ｔ１７の間にその複製を挿入している。
【００５０】
間引きまたは複製する測定レコードの個数は限定されない。例えば、前処理部１２は継続ラベルと遷移ラベルとの比率が所定値（例えば５：１）になるように各ラベルの比率を調整してもよい。
【００５１】
比率の調整の程度も限定されない。例えば、前処理部１２は、将来の第１時期における現象を予測する場合よりも、該第１時期よりも現在から遠い将来の第２時期における現象を予測する場合において、遷移ラベルの比率の上昇度が低くなるように、時系列データにおける各ラベルの比率を調整してもよい。すなわち、前処理部１２は、短期予測では遷移ラベルの比率の上昇度を高くし、長期予測ではその上昇度を短期予測の場合よりも低くしてもよい。ここで、遷移ラベルの比率とは、開始ラベルの比率（第１比率）と終了ラベルの比率（第２比率）とを含む概念である。
【００５２】
続いて、予測部１３がラベル付けされた気象データに対する機械学習を実行するニューラルネットワークの学習のステップについて記載する。ステップＳ１６では、予測部１３は、調整された学習データを用いた学習を実行してニューラルネットワークの重みを更新することで、最良のニューラルネットワークを自律的に生成する。予測部１３は時点ｔｉから時点ｔｉ＋ｊまでの測定レコードで構成される入力ベクトルｘをニューラルネットワークに入力することで、時点ｔｉ＋ｊ＋ｎにおける予測を示す出力ベクトルｙを求める。予測時点の設定方法は任意であり、例えば、予測時点はｔｉ＋ｊ＋１（ｎ＝１）、でもｔｉ＋ｊ＋３（ｎ＝３）でもよい。ニューラルネットワークは予測時点の設定に応じて生成されるので、予測時点を変えるのであれば別途ニューラルネットワークを生成する必要がある。予測部１３は時点ｔｉ＋ｊ＋ｎにおける実際の測定結果（すなわち、教師データ）ｔに対する出力ベクトルｙの誤差を示す誤差関数Ｅを求め、この誤差関数Ｅに基づいてニューラルネットワークの重みを更新する。例えば、予測部１３はバックプロパゲーション（誤差逆伝播法）を用いて重みを更新してもよい。バックプロパゲーションは、出力側から入力側に向かって進みながら、各ニューロンの重みを局所誤差が小さくなるように修正する手法である。予測部１３は入力ベクトルｘの期間を１単位時間ずつシフトさせながら学習を繰り返すことで、最適な重みが設定されたニューラルネットワーク（すなわち、最良のネットワーク）を得る。
【００５３】
図７は、一つのデータ項目（例えば降水強度）を予測するために用いるニューラルネットワーク３０の例を示す。ニューラルネットワーク３０は６層の深層ニューラルネットワーク（ＤＮＮ）である。入力層Ｌ１、中間層Ｌ２、および中間層Ｌ３はデータ項目（気温、圧力、湿度、感雨、風向、風速、および降水強度）毎に用意された複数のブロックで構成され、したがって、これら３層では各データ項目が他のデータ項目とは独立して処理される。ニューラルネットワーク３０の最初の３層は、気象データのデータ項目の個数のブロックＢ１〜Ｂｎで構成される。中間層Ｌ４ではこれらのブロックＢ１〜Ｂｎの出力が合成されて処理され、これは、複数のデータ項目を総合的に判断することに相当する。中間層Ｌ５および出力層Ｌ６で更なる演算が行われて最終結果が得られる。
【００５４】
本実施形態では、予測部１３は、６時点にわたって８地点（一つの予測地点と、該予測地点の周辺の７地点）で測定された観測結果を示す４８個の測定レコードで構成される入力ベクトルをニューラルネットワーク３０に入力する。したがって、各ブロックＢ１〜Ｂｎの入力層Ｌ１は４８個のノードから成る。本実施形態では、各ブロックＢ１〜Ｂｎの中間層Ｌ２，Ｌ３はそれぞれ５０個のノードから成り、中間層Ｌ４は３００個のノードからなり、中間層Ｌ５は２００個のノードから成る。本実施形態では、過学習を避けるために、中間層のノードのいくつかを無効にして学習を行うドロップアウト（ｄｒｏｐｏｕｔ）を採用しているので、中間層Ｌ４，Ｌ５のノード数は入力層Ｌ１のノードの総数より少ない。なお、各層のノードの個数は図７の例に限定されず、任意に定めてよい。
【００５５】
図８は、感雨を予測するために用いるニューラルネットワークの例を示す。本実施形態では、予測部１３は４種類のラベルに対応する４個のニューラルネットワーク４１〜４４を用いて感雨を予測する。ニューラルネットワーク４１〜４４の構成はニューラルネットワーク３０と基本的に同じである。したがって、前半の３層では個々のデータ項目が独立に処理され、後半の３層では、前半の結果が合成された上で演算が行われる。
【００５６】
ニューラルネットワーク４１は、予測対象の地点における直近の測定レコードのラベル（以下ではこれを「直近ラベル」という）が「感雨なし（０）」である場合に用いられる。ニューラルネットワーク４２は直近ラベルが「降り途中（１）」である場合に用いられる。ニューラルネットワーク４３は直近ラベルが「降り始め（２）」である場合に用いられる。ニューラルネットワーク４４は直近ラベルが「降り終わり（３）」である場合に用いられる。ニューラルネットワーク４１〜４４の出力はいずれも、「感雨なし」または「感雨あり」のいずれかである。
【００５７】
時点ｔｉから時点ｔｉ＋５までの６時点にわたって８地点で測定された観測結果を示す４８個の測定レコードから成る入力ベクトルが与えられた場合を例に、データ項目「感雨」の予測について説明する。この場合、直近ラベルは予測地点での時点ｔｉ＋５における測定レコードのラベルである。直近ラベルが「感雨なし（０）」であれば、予測部１３はニューラルネットワーク４１にその入力ベクトルを入力することで、時点ｔｉ＋５＋ｎにおける「感雨」の予測を示す出力ベクトルを求める。そして、予測部１３はその出力ベクトルの誤差を示す誤差関数に基づくニューラルネットワーク４１の重みを調整する。直近ラベルが「降り途中（１）」であれば、予測部１３はニューラルネットワーク４２にその入力ベクトルを入力することで、時点ｔｉ＋５＋ｎにおける「感雨」の予測を示す出力ベクトルを求める。そして、予測部１３はその出力ベクトルの誤差を示す誤差関数に基づきニューラルネットワーク４２の重みを調整する。直近ラベルが「降り始め（２）」であれば、予測部１３はニューラルネットワーク４３にその入力ベクトルを入力することで、時点ｔｉ＋５＋ｎにおける「感雨」の予測を示す出力ベクトルを求める。そして、予測部１３はその出力ベクトルの誤差を示す誤差関数に基づきニューラルネットワーク４３の重みを調整する。直近ラベルが「降り終わり（３）」であれば、予測部１３はニューラルネットワーク４４にその入力ベクトルを入力することで、時点ｔｉ＋５＋ｎにおける「感雨」の予測を示す出力ベクトルを求める。そして、予測部１３はその出力ベクトルの誤差を示す誤差関数に基づきニューラルネットワーク４４の重みを調整する。
【００５８】
複製された測定レコードが含まれる場合は、予測部１３は、その複製により連続して並んでいる測定レコードを一つだけ選択して入力ベクトルを構成する。一例として、時系列に沿って見た場合に、時点ｔｉ＋５に続く時点ｔ’ｉ＋５における測定レコードが，時点ｔｉ＋５における測定レコードの複製である場合を考える。この場合、予測部１３は、オリジナルである時点ｔｉ＋５の測定レコードを除いた、直近の過去６時点にわたる測定レコードから成る入力ベクトルを構成する。すなわち、予測部１３は６個の時点［ｔｉ，ｔｉ＋１，ｔｉ＋２，ｔｉ＋３，ｔｉ＋４，ｔ’ｉ＋５］における測定レコードから成る入力ベクトルを構成する。この入力ベクトルは，時点ｔｉから時点ｔｉ＋５にわたる６時点の測定レコードで構成される入力ベクトルと一致する。一方、ｔｉ＋４の次の時点ｔ’ｉ＋４における測定レコードが時点ｔｉ＋４における測定レコードの複製である場合は、予測部１３は時点ｔ’ｉ＋４を除いた６個の時点［ｔｉ，ｔｉ＋１，ｔｉ＋２，ｔｉ＋３，ｔｉ＋４，ｔｉ＋５］における測定レコードから成る入力ベクトルを構成する。このように、複製された測定レコードが含まれる場合には、その複製により連続して並ぶ測定レコードが直近に位置する場合にのみ、予測部１３は複製された測定レコードを直近とする入力ベクトルを重複して（言い換えると、複数回にわたり）学習する。
【００５９】
測定レコードの一部が間引かれた場合は、予測部１３は、間引かれた測定レコードを直近とする入力ベクトルの学習を行わない。一例として、時点ｔｉ＋５における測定レコードが間引かれた場合は、予測部１３は時点［ｔｉ−１，ｔｉ，ｔｉ＋１，ｔｉ＋２，ｔｉ＋３，ｔｉ＋４］における測定レコードで構成される入力ベクトルと、時点［ｔｉ＋１，ｔｉ＋２，ｔｉ＋３，ｔｉ＋４，ｔｉ＋５，ｔｉ＋６］における測定レコードで構成される入力ベクトルとについては学習を行う。しかし、予測部１３は、時点［ｔｉ，ｔｉ＋１，ｔｉ＋２，ｔｉ＋３，ｔｉ＋４，ｔｉ＋５］の測定レコードで構成される入力ベクトルについては学習を行わない。
【００６０】
続いて、ニューラルネットワークの検証のステップについて記載する。ステップＳ１７では、予測部１３は検証データを用いて予測データを生成する（予測ステップ）。検証データで示される期間が時点ｔｉ，ｔｉ＋１，ｔｉ＋２，…，ｔｉ＋Ｍであるとし、ｔｉ＋Ｍが検証データの中で最も新しい測定時点であるとする。検証を行うニューラルネットワークを用いて予測データを得たい将来の時期（以下ではこれを「対象時期」という）ｔｙが現時点ｔｊ、単位時間ｋ、および自然数Ｎを用いてｔｙ＝ｔｊ＋Ｎｋで表されるとする。すなわち、検証を行うニューラルネットワークは、直近の測定時点から時間Ｎｋ後の予測を行うニューラルネットワークである。上記のように、予測部１３は、時系列の測定レコードで構成される入力ベクトルを処理して予測データ（出力ベクトル）を生成する。すなわち、予測部１３は、所定の時間の範囲の測定レコードを検証データから抽出して入力ベクトルを構成し、ニューラルネットワークにより出力ベクトルを生成する。
【００６１】
生成される出力ベクトルは、入力ベクトルを構成する測定レコードのうち最も直近の測定から、時間Ｎｋ後の現象を予測するデータである。ニューラルネットワークの検証のステップでは、予測部１３は、入力ベクトルを構成する測定レコードの時間範囲をずらしながら時系列の出力ベクトルを得る。得られる時系列の出力ベクトルは、検証データに対応する時点の予測をするデータである。すなわち、検証データは出力ベクトルが予測した時点における測定レコードを含む。予測部１３は、時系列の出力ベクトルと、対応する時点の測定レコードとの差異を検証する。例えば、予測部１３は評価の指標として適中率および捕捉率を求める。なお、時系列の出力ベクトルの時間間隔は等しくなくてもよい。
【００６２】
予測部１３は、ニューラルネットワークの学習および検証のステップを経た後に運用を行う。運用のステップは、入力ベクトルを構成する時系列データを測定により更新し、将来の時点を予測する出力ベクトル（予測データ）を出力するステップである。運用のステップは学習のステップと検証のステップとを含んでもよい。
【００６３】
運用のステップにおける学習のステップとは、将来の時点を予測する出力ベクトルと、該将来の時点に達したときに実際に測定した測定結果とを用いて、バックプロパゲーション（誤差逆伝播法）などによりニューラルネットワークの重みを更新するステップである。予測部１３は、運用のステップにおける学習を、時間の経過により逐次実行してもよいし、所定の時間間隔の測定データが蓄積された後に一度に実行してもよい。
【００６４】
運用のステップにおける検証のステップとは、運用のステップにおいて蓄積した測定データと、ニューラルネットワークにより予測した出力ベクトルとの差異を検証するステップである。予測部１３は、主記憶部１０２または補助記憶部１０３に、学習前後のニューラルネットワークの重みを記録してもよい。この場合には、予測部１３は、検証の結果、過学習の発生を認識した場合に、学習前のニューラルネットワークの重みを主記憶部１０２または補助記憶部１０３から読み込んで学習やり直すことができる。
【００６５】
予測部１３は、予測結果を用いて入力ベクトルを作成して、さらに先の将来の時点を予測してもよい。予測システム１０は、単位時間をｋとして最大でＮｋ先の将来の時点を予測するニューラルネットワークを含む場合に、予測結果を用いて入力ベクトルを作成することで、その時点Ｎｋよりさらに先の将来の時点の現象を予測することができる。予測システム１０が、入力ベクトルの直近の時点に対して、単位時間ｋ先の将来を予測するニューラルネットワークを含むとする。また、そのニューラルネットワークは、測定レコードを構成する各パラメータを予測できるとする。予測部１３は現在から対象時期に向かって、単位期間が経過した時点での出力ベクトルを順番に求める。現時点をｔＣとし、便宜的に、将来の時期（ｔＣ＋１ｋ）における出力ベクトルを求めるための測定レコードの集合（すなわち、入力ベクトル）ＶをＶ＝｛ｖ１，ｖ２，…，ｖＭ｝とすると、予測部１３はこの集合Ｖをニューラルネットワークに入力することで、将来の時期（ｔＣ＋１ｋ）における現象の予測を示す出力ベクトルｖ´１を得る。
【００６６】
続いて、予測部１３は集合Ｖの中で最も古い測定レコードｖ１を除き、代わりにその出力ベクトルｖ´１を集合Ｖに加える。この結果、測定レコードの集合Ｖは｛ｖ２，…，ｖＭ，ｖ´１｝に変わる。予測部１３はこの集合Ｖをニューラルネットワークに入力することで、将来の時期（ｔＣ＋２ｋ）における現象の予測を示す出力ベクトルｖ´２を得る。
【００６７】
続いて、予測部１３は集合Ｖの中で最も古い測定レコードｖ２を除き、代わりにその出力ベクトルｖ´２を集合Ｖに加えることで、測定レコードの集合Ｖ＝｛ｖ３，…，ｖＭ、ｖ´１，ｖ´２｝を得る。予測部１３はこの集合Ｖをニューラルネットワークに入力することで、将来の時期（ｔＣ＋３ｋ）における現象の予測を示す出力ベクトルｖ´３を得る。
【００６８】
このように、予測部１３は測定レコードの集合で示される期間を将来に向かってシフトさせながら出力ベクトルを求め続け、最終的に、対象時期ｔｙ（＝ｔＣ＋Ｎｋ）における出力ベクトルｖ´Ｎを求める。そして、予測部１３は、これらの出力ベクトルｖ´１〜ｖ´Ｎの少なくとも一つを用いて、将来の特定の時点または時間帯における現象の推移を示す予測データを生成する。
【００６９】
予測部１３は、入力ベクトルの直近の時点から見た場合の予測時点が異なる複数のニューラルネットワークを組み合わせて予測を実行してもよい。時間Ｎ１ｋだけ先の将来を予測する第１のニューラルネットワークと、時間Ｎ２ｋだけ先の将来を予測する第２のニューラルネットワークを用いる例を説明する（ただし、Ｎ１＜Ｎ２）。第１のニューラルネットワークは、Ｍ１個の時系列の測定レコードからなる入力ベクトルを入力し、時間Ｎ１ｋだけ先の将来を予測するニューラルネットワークであるとする。第２のニューラルネットワークは、Ｍ２個の時系列の測定レコードからなる入力ベクトルを入力し、時間Ｎ２ｋだけ先の将来を予測するニューラルネットワークであるとする。
【００７０】
予測部１３は、第１のニューラルネットワークと第２のニューラルネットワークとを用いて、時間（Ｎ２ｋ＋Ｎ１ｋ）だけ先の将来を予測する。すなわち、予測部１３は、現時点をｔＣとして、そのｔＣ以前の測定レコードを用いて出力ベクトルを作成する。予測部１３は、第２のニューラルネットワークに入力する入力ベクトルとして、時点ｔＣから時点｛ｔＣ−（Ｎ２−Ｎ１＋１）｝までの期間に対応する（Ｎ２−Ｎ１＋１）個の入力ベクトルを生成する。予測部１３はこの（Ｎ２−Ｎ１＋１）個の入力ベクトルを第２のニューラルネットワークに入力することで、時点（ｔＣ＋Ｎ２ｋ）から時点｛ｔＣ＋（Ｎ１−１）ｋ｝までの出力ベクトルを得る。同様に、予測部１３は、時点（ｔＣ＋Ｎ１ｋ）から時点｛ｔＣ−Ｍ＋（Ｎ２−Ｎ１＋１）｝までの期間に対応する｛Ｍ１−（Ｎ２−Ｎ１＋１）｝個の入力ベクトルを生成する。予測部１３はこの｛Ｍ−（Ｎ２−Ｎ１＋１）｝個の入力ベクトルを第１のニューラルネットワークに入力することで、時点（ｔＣ＋Ｎ１ｋ）から時点｛ｔＣ＋（Ｎ２−Ｍ１）ｋ｝までの出力ベクトルを得る。予測部１３は、これにより得られた時点（ｔＣ＋Ｎ２）から時点｛ｔＣ＋（Ｎ２−Ｍ１）ｋ｝の出力ベクトルに基づいて入力ベクトルを構成し、その入力ベクトルを第１のニューラルネットワークに入力することで、時点（ｔＣ＋Ｎ２ｋ＋Ｎ１ｋ）について予測する。この例では、予測部１３は第２のニューラルネットワークにより｛ｔＣ＋（Ｎ１＋１）ｋ｝までの時点を予測するが、予測部１３は時点｛ｔＣ＋（Ｎ１＋１）ｋ｝より前の時点まで予測してもよい。また、予測部１３は３以上のニューラルネットワークを用いてもよい。
【００７１】
本実施形態では、予測部１３は最良のニューラルネットワーク３０に検証データを入力することで降水強度の予測データを生成する。加えて、予測部１３は最良のニューラルネットワーク４１〜４４を用いて検証データを処理することで感雨（降水の有無、開始、または終了）の予測データを生成する。感雨を予測する際には、予測部１３は、入力ベクトルで示される直近ラベルに基づいてニューラルネットワーク４１〜４４から一つのニューラルネットワークを選択し、該選択したニューラルネットワークを用いて出力ベクトルを求める。すなわち、予測部１３は入力ベクトルの直近ラベルに応じてニューラルネットワーク４１〜４４を使い分ける。
【００７２】
本実施形態において、予測部１３は降水強度の予測データと感雨の予測データとから降水指数を求めてもよい。「降水指数」とは、人の直感に合うように将来の降水の程度を示す指標であり、これも予測データである。例えば、降水指数は下記の式（１）により得られてもよい。
【００７３】
【数１】
2019105979.tif 000003
ここで、ｓｏｆｔｍａｘ関数は、スコア（ベクトル）を、最小値が０であり最大値が１であり合計が１である確率分布に変換する関数である。降水強度の予測値の単位はｍｍ／ｈである。
【００７４】
降水指数は０から１までの範囲の実数を取る。雨の場合でいうと、降水指数が０．５未満であれば、人が雨を気にしない状況（雨が降っていないかまたはごく弱い雨が降っている状況）にあるといえる。降水指数が０．５以上であれば、人が雨を気にする状況（一定以上の雨が降っている状況）にあるといえる。降水指数が１に近ければ本降りであるといえる。図９は感雨および降水強度の予測データと、これらのデータから得られる降水指数との例を示すグラフである。このグラフから分かるように、降水指数は感雨および降水強度を総合的に考慮することで得られる値である。
【００７５】
ステップＳ１８では、予測部１３は予測データを出力する。予測データの出力方法は限定されない。例えば、予測部１３は予測データを、モニタ上に表示してもよいし、所定のデータベースに格納してもよいし、他のコンピュータシステムに送信してもよい。予測データの表現方法も任意であり、例えば、予測部１３が予測データをモニタ上に表示するのであれば、テキスト、表、グラフ、イラストなどの任意の手法で予測データを表現してもよい。気象データはステップＳ１２で正規化されているので、予測部１３は予測データの出力に際して正規化の逆変換を行わなくてもよい。予測部１３は降水指数、感雨の予測データ、および降水強度の予測データのうちの少なくとも一つを出力してもよい。このように予測データの出力方法および表現方法は何ら限定されないが、いずれにしても、予測システム１０のユーザは予測データを参照することで、気象が今後どのように変化するかの見当を付けることができる。
【００７６】
［プログラム］
図１０を参照しながら、少なくとも１台のコンピュータを予測システム１０として機能させるための予測プログラムＰ１を説明する。図１０は予測プログラムＰ１の構成を示す図である。
【００７７】
予測プログラムＰ１はメインモジュールＰ１０、取得モジュールＰ１１、前処理モジュールＰ１２、および予測モジュールＰ１３を含む。メインモジュールＰ１０は予測処理を統括的に管理する部分である。取得モジュールＰ１１、前処理モジュールＰ１２、および予測モジュールＰ１３を実行することで、取得部１１、前処理部１２、および予測部１３が実現する。
【００７８】
予測プログラムＰ１は、例えば、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリなどの有形の記録媒体に固定的に記録された上で提供されてもよい。あるいは、予測プログラムＰ１は、搬送波に重畳されたデータ信号として通信ネットワークを介して提供されてもよい。
【００７９】
［効果］
以上説明したように、本発明の一側面に係る予測システムは、時系列データに対する機械学習を実行することで、将来の時期における現象の予測を示す予測データを生成する予測部を備え、時系列データが、過去の個々の時点における現象を示す複数の測定レコードと、測定レコードに対応付けられたラベルとを含み、ラベルが、第１現象から第２現象への遷移を示す開始ラベルと、第２現象から第１現象への遷移を示す終了ラベルと、第１現象または第２現象の継続を示す継続ラベルとを少なくとも含むラベル群から選択される。
【００８０】
本発明の一側面に係る予測方法は、少なくとも一つのプロセッサを備える予測システムにより実行される予測方法であって、時系列データに対する機械学習を実行することで、将来の時期における現象の予測を示す予測データを生成する予測ステップを含み、時系列データが、過去の個々の時点における現象を示す複数の測定レコードと、測定レコードに対応付けられたラベルとを含み、ラベルが、第１現象から第２現象への遷移を示す開始ラベルと、第２現象から第１現象への遷移を示す終了ラベルと、第１現象または第２現象の継続を示す継続ラベルとを少なくとも含むラベル群から選択される。
【００８１】
本発明の一側面に係る予測プログラムは、時系列データに対する機械学習を実行することで、将来の時期における現象の予測を示す予測データを生成する予測ステップをコンピュータシステムに実行させ、時系列データが、過去の個々の時点における現象を示す複数の測定レコードと、測定レコードに対応付けられたラベルとを含み、ラベルが、第１現象から第２現象への遷移を示す開始ラベルと、第２現象から第１現象への遷移を示す終了ラベルと、第１現象または第２現象の継続を示す継続ラベルとを少なくとも含むラベル群から選択される。
【００８２】
このような側面においては、機械学習への入力として用いられる時系列データに開始ラベル、終了ラベル、または継続ラベルが付与される。このラベル付けにより機械学習において現象の変化が考慮されるので、将来の現象をより精度良く予測することが可能になる。特に、現象の変化の予測の精度を上げることができる。
【００８３】
他の側面に係る予測システムでは、継続ラベルが、第１現象の継続を示す第１継続ラベルと、第２現象の継続を示す第２継続ラベルとを含んでもよい。より詳細なラベル付けにより、将来の現象をより精度良く予測できる。
【００８４】
他の側面に係る予測システムでは、機械学習が、ラベル群に対応する複数のニューラルネットワークを用いる処理であり、予測部が、時系列データから選択された１以上の測定レコードで構成される入力ベクトルで示されるラベルに基づいて、該入力ベクトルを処理する一つのニューラルネットワークを複数のニューラルネットワークから選択してもよい。現象の遷移または継続に応じて複数のニューラルネットワークを用意し、測定データで示される現象に応じてニューラルネットワークを切り替えながら機械学習を行うことで、将来の現象をより精度良く予測できる。
【００８５】
他の側面に係る予測システムでは、時系列データにおいて、開始ラベルが付与された測定レコードの個数の第１比率と、終了ラベルが付与された測定レコードの個数の第２比率とが上がるように、複数の測定レコードの一部に対して複製および間引きの少なくとも一方が実行されることで、時系列データにおける各ラベルの比率が調整され、予測部が、各ラベルの比率が調整された時系列データに対する機械学習を実行してもよい。現象の変化を示すラベルの個数が現象の継続を示すラベルの個数と比べてかなり少ないと、機械学習において現象の変化が適切に捕捉されないために予測の精度が下がる可能性がある。現象の変化を示すラベルの個数と現象の継続を示すラベルの個数との差を小さくするように時系列データにおける各ラベルの比率を調整することで、将来の現象をより精度良く予測できる。
【００８６】
他の側面に係る予測システムでは、将来の第１時期における現象を予測する場合よりも、該第１時期よりも現在から遠い将来の第２時期における現象を予測する場合において、第１比率および第２比率の上昇度が低くなるように、時系列データにおける各ラベルの比率が調整されてもよい。予測の対象となる時期に応じて各ラベルの比率を調整することで、将来の現象をより精度良く予測できる。
【００８７】
他の側面に係る予測システムでは、現象が降水に関し、第１現象が降水のない状態であり、第２現象が降水のある状態であってもよい。この場合には、将来の降水の状況をより精度良く予測することが可能になる。
【００８８】
他の側面に係る予測システムでは、時系列データのデータ項目が感雨および降水強度を含み、予測部が、将来の時期における感雨および降水強度を予測し、該予測された感雨および降水強度に基づいて降水指数を求めてもよい。感雨および降水強度を総合的に考慮した指数を導入することで、人の直感に合うように将来の降水の状況を予測することができる。
【００８９】
［実施例］
以下、実施例に基づいて本発明を具体的に説明するが、本発明はそれらに何ら限定されるものではない。
【００９０】
共通の時系列データに対していくつかの手法で将来の現象を予測し、その結果を比較した。実験では下記の６種類の手法を用いた。
・上記実施形態に相当する深層ニューラルネットワークを用いた深層学習（ＤＮＮ）
・ランダムフォレスト（ＲａｎｄｏｍＦｏｒｅｓｔ）
・ＲＢＦカーネルを用いたサポートベクターマシン（Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ）（ＳＶＭ（ｒｂｆ））
・多項式カーネルを用いたサポートベクターマシン（ＳＶＭ（ｐｏｌｙ））
・オウム返し法
・ｋ−近傍法
【００９１】
時系列データとして、ＰＯＴＥＫＡ（登録商標）という超高密度気象観測システムから得られる観測値を用いた。観測値は、気温、湿度、海面気圧、現地気圧、感雨、降水量、風向、風速を含み、１分毎に連続して記録されたものである。
【００９２】
図１１は上記６種類の手法の精度を示すグラフである。グラフ（ａ）は、現在からどのくらい先の時点かを示す予測時点（分）と雨に関するスコアとの関係を示す。グラフ（ｂ）は、雨および晴の適中率と雨の捕捉率との関係を示す。ここで、それぞれの値は下記式で得られる。
・適中率＝（Ａ＋Ｄ）／（Ａ＋Ｂ＋Ｃ＋Ｄ）
・雨の捕捉率＝Ａ／（Ａ＋Ｂ）
・スコア＝（２＊適中率＊捕捉率）／（適中率＋捕捉率）
変数Ａ〜Ｄの意味は以下の通りである。
Ａ：予測および実況（正解）の双方が「雨」であった予測の個数。
Ｂ：予測が「晴」で実況が「雨」であった予測の個数。
Ｃ：予測が「雨」で実況が「晴」であった予測の個数。
Ｄ：予測および実況の双方が「晴」であった予測の個数。
【００９３】
［変形例］
以上、本発明をその実施形態および実施例に基づいて詳細に説明した。しかし、本発明は上記の実施形態および実施例に限定されるものではない。本発明は、その要旨を逸脱しない範囲で様々な変形が可能である。
【００９４】
上記実施形態では機械学習として深層学習を用いるが、機械学習の具体的な手法は限定されない。例えば、予測部はパターンマッチング、ランダムフォレスト、サポートベクターマシンなどの他の手法を用いてもよい。深層学習においてラベルの種類に応じて複数のニューラルネットワークを用いることは必須ではない。
【００９５】
時系列データ（複数の測定レコード）に付与するラベルの種類は上記実施形態に限定されず、現象の特性に応じて任意に定めてよい。例えば、第１現象の継続と第２現象の継続とが「継続ラベル」という一つのラベルで示されてもよい。
【００９６】
上記実施形態では前処理部１２が正規化と各ラベルの比率の調整とを実行するが、これら２種類の処理のうちの少なくとも一方が省略されてもよい。
【００９７】
上記実施形態では予測システム１０が降水を予測するが、上述したように、予測する現象は何ら限定されない。例えば、予測システムは日照、波浪、暴風などの他の気象を予測してもよい。あるいは、予測システムは気象に基づく様々な指数（例えば不快指数）を予測してもよい。あるいは、予測システムは他の自然現象を予測してもよいし、人工物で起こる現象を予測してもよいし、社会現象を予測してもよい。
【００９８】
上記実施形態では予測システム１０が取得部１１、前処理部（ラベリング部および調整部）１２、および予測部１３を備えるが、予測システムの構成はこれに限定されない。例えば、予測システムは取得部、ラベリング部、および調整部を備えることなく予測部を備えてもよい。この場合には、予測システムは、過去の個々の時点における現象を示す複数の測定レコードと、該測定レコードに対応付けられ且つ調整されたラベルとを含む時系列データの入力を他のコンピュータシステムから受け付ける。予測部は、受け付けられた時系列データに対する機械学習を実行することで、将来の時期における現象の予測を示す予測データを生成する。上記実施形態と同様に、ラベルは、第１現象から第２現象への遷移を示す開始ラベルと、第２現象から第１現象への遷移を示す終了ラベルと、第１現象または第２現象の継続を示す継続ラベルとを少なくとも含むラベル群から選択される。あるいは、予測システムは取得部およびラベリング部を備えることなく調整部および予測部を備えてもよい。この場合には、予測システムは、過去の個々の時点における現象を示す複数の測定レコードと、該測定レコードに対応付けられ且つ未調整のラベルとを含む時系列データの入力を他のコンピュータシステムから受け付ける。調整部は、上記実施形態での前処理部１２と同様に、受け付けられた時系列データにおける各ラベルの比率を調整する。予測部は、その比率が調整された時系列データに対する機械学習を実行することで、将来の時期における現象の予測を示す予測データを生成する。
【００９９】
少なくとも一つのプロセッサにより実行される予測方法の処理手順は上記実施形態での例に限定されない。例えば、上述したステップ（処理）の一部が省略されてもよいし、別の順序で各ステップが実行されてもよい。また、上述したステップのうちの任意の２以上のステップが組み合わされてもよいし、ステップの一部が修正又は削除されてもよい。あるいは、上記の各ステップに加えて他のステップが実行されてもよい。
【０１００】
予測システム内で二つの数値の大小関係を比較する際には、「以上」および「よりも大きい」という二つの基準のどちらを用いてもよく、「以下」および「未満」という二つの基準のうちのどちらを用いてもよい。このような基準の選択は、二つの数値の大小関係を比較する処理についての技術的意義を変更するものではない。
【産業上の利用可能性】
【０１０１】
本発明の一側面によれば、将来の現象をより精度良く予測することができる。
【符号の説明】
【０１０２】
１０  予測システム
１１  取得部
１２  前処理部（ラベリング部、調整部）
１３  予測部
２０  データベース
３０、４１〜４４  ニューラルネットワーク
Ｐ１  予測プログラム
Ｐ１０  メインモジュール
Ｐ１１  取得モジュール
Ｐ１２  前処理モジュール
Ｐ１３  予測モジュール
【図１】
2019105979.tif 000004
【図２】
2019105979.tif 000005
【図３】
2019105979.tif 000006
【図４】
2019105979.tif 000007
【図５】
2019105979.tif 000008
【図６】
2019105979.tif 000009
【図７】
2019105979.tif 000010
【図８】
2019105979.tif 000011
【図９】
2019105979.tif 000012
【図１０】
2019105979.tif 000013
【図１１】
2019105979.tif 000014