(57)【要約】【課題】時系列パターンを用いて、リアルタイムな事象の動向の予測が可能なデータを生成する。【解決手段】時系列データ処理装置は、時系列パターンを高速に検索するためのインデックス、及び複数の時系列パターン間の遷移を示す状態遷移データを生成するデータ生成部を含み、データ生成部は、生成条件及び履歴情報に基づいて、複数の時系列パターンを生成し、複数の時系列パターンの各々を識別する第１の識別子を生成し、生成条件に基づいて時系列パターンを統合することによって複数の統合時系列パターンを生成し、複数の統合時系列パターンの各々を識別する第２の識別子を生成し、第１の識別子及び第２の識別子を対応づけてインデックスを生成し、統合時系列パターンが遷移する遷移先の統合時系列パターンを特定し、時系列パターンから遷移先の統合時系列パターンへの遷移確率を算出することによって状態遷移データを生成する。【選択図】図２
2017068782.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサ、前記プロセッサに接続される主記憶装置、及び前記プロセッサに接続されるインタフェースを有し、所定の時間幅における時系列データの値の遷移を示す時系列パターンを用いた処理を実行する時系列データ処理装置であって、
過去の時系列データを管理する履歴情報を格納する記憶装置と接続し、
将来の時系列データの値の遷移を示す予測パターンの検索時に、現在の時系列パターンに類似する時系列パターンを高速に検索するためのインデックス、及び複数の時系列パターン間の遷移を示す状態遷移データを生成する状態遷移データ生成部と、
前記インデックス及び前記状態遷移データの生成時に用いる生成条件を受け付け、前記生成条件に基づいて前記状態遷移データ生成部に前記インデックス及び前記状態遷移データの生成を指示する生成指示部と、を含み、
前記状態遷移データ生成部は、
前記生成条件及び前記履歴情報に基づいて、複数の時系列パターンを生成し、前記複数の時系列パターンの各々を識別する第１の識別子を生成し、
前記生成条件に基づいて、所定の数の前記時系列パターンを統合することによって複数の統合時系列パターンを生成し、前記複数の統合時系列パターンの各々を識別する第２の識別子を生成し、
前記第１の識別子及び前記第２の識別子を対応づけることによって前記インデックスを生成し、
前記複数の統合時系列パターンの各々について、前記統合時系列パターンが遷移する遷移先の統合時系列パターンを特定し、前記時系列パターンから前記遷移先の統合時系列パターンへの遷移確率を算出し、
前記統合時系列パターンの前記第２の識別子、前記遷移先の統合時系列パターンの前記第２の識別子、及び前記遷移確率を対応付けることによって前記状態遷移データを生成し、
前記インデックス及び前記状態遷移データに関する評価結果を生成することを特徴とする時系列データ処理装置。
【請求項２】
請求項１に記載の時系列データ処理装置であって、
前記生成条件は、前記インデックス及び前記状態遷移データを用いた前記予測パターンの検索に要する応答時間を指定する第１の条件を含み、
前記評価結果は、前記インデックス及び前記状態遷移データを用いた前記予測パターンの検索時間の推定値を示す推定応答時間を含み、
前記状態遷移データ生成部は、
前記インデックス及び前記状態遷移データが生成された後、前記推定応答時間を算出し、
前記推定応答時間が前記第１の条件に含まれる応答時間より大きいか否かを判定し、
前記推定応答時間が前記第１の条件に含まれる応答時間より大きいと判定された場合、前記生成条件の内容を変更することによって新たなインデックス及び新たな状態遷移データを生成することを特徴とする時系列データ処理装置。
【請求項３】
請求項１に記載の時系列データ処理装置であって、
前記生成条件は、前記インデックス及び前記状態遷移データのデータサイズを指定する第２の条件を含み、
前記評価結果は、前記インデックス及び前記状態遷移データを合計したデータサイズを示す第１のデータサイズを含み、
前記状態遷移データ生成部は、
前記インデックス及び前記状態遷移データが生成された後、前記インデックス及び前記状態遷移データを合計したデータサイズを示す第２のデータサイズを算出し、
前記第２のデータサイズが前記第１のデータサイズより大きいか否かを判定し、
前記第２のデータサイズが前記第１のデータサイズより大きいと判定された場合、前記生成条件の内容を変更することによって新たなインデックス及び新たな状態遷移データを生成することを特徴とする時系列データ処理装置。
【請求項４】
請求項２又は請求項３に記載の時系列データ処理装置であって、
前記生成条件は、前記第１の識別子の類似判定結果に基づいて前記時系列パターンを統合するための第３の条件と、前記第３の条件を変更するための第１の調整パラメタを含み、
前記状態遷移データ生成部は、
前記生成条件の内容を変更する場合に、前記第１の調整パラメタに基づいて前記第３の条件の内容を変更し、
新たな第３の条件に基づいて前記複数の時系列パターンの統合を行うことを特徴とする時系列データ処理装置。
【請求項５】
請求項４に記載の時系列データ処理装置であって、
前記生成条件は、前記複数の時系列パターンの各々を区別するための区別情報を生成するための第４の条件を含み、
前記状態遷移データ生成部は、
前記統合時系列パターンの生成時に、前記第３の条件、及び前記第４の条件に基づいて生成された前記区別情報に基づいて、統合可能な複数の時系列パターンを抽出し、
前記抽出された複数の時系列パターンから一つの前記統合時系列パターンを生成することを特徴とする時系列データ処理装置。
【請求項６】
請求項２又は請求項３に記載の時系列データ処理装置であって、
前記生成条件は、一つの前記統合時系列パターンの前記遷移先の統合時系列パターンの数を調整するための第５の条件を含み、
前記状態遷移データ生成部は、
前記遷移確率が算出された後、前記第５の条件に基づいて、削除可能な前記遷移先の統合時系列パターンを特定し、
前記インデックスと、前記削除可能な遷移先の統合時系列パターンが除かれた前記状態遷移データと、を用いて前記評価結果を生成し、
前記インデックス、及び前記削除可能な遷移先の時系列パターンが削除された前記状態遷移データを前記主記憶装置に格納することを特徴とする時系列データ処理装置。
【請求項７】
請求項１に記載の時系列データ処理装置であって、
前記生成条件は、前記時系列パターンを生成するための第６の条件を含み、
前記状態遷移データ生成部は、前記第６の条件及び前記履歴情報に基づいて、前記複数の時系列データの値と、前記複数の時系列データの値の遷移の特徴を示す指標とを含む前記時系列パターンを生成することを特徴とする時系列データ処理装置。
【請求項８】
請求項２又は請求項３に記載の時系列データ処理装置であって、
前記主記憶装置に格納される前記インデックス及び前記状態遷移データを用いて前記予測パターンを検索する予測部を備え、
前記予測部は、
現在の時系列データを用いて前記現在の時系列パターンを生成し、
前記現在の時系列パターンの前記第１の識別子を生成し、
前記現在の時系列パターンの前記第１の識別子に基づいて前記インデックスを参照して、前記現在の時系列パターンと類似する前記統合時系列パターンを検索し、
前記状態遷移データを参照して、前記検索された統合時系列パターンの前記遷移先の統合時系列パターンを特定し、
前記特定された遷移先の統合時系列パターンを前記予測パターンとして表示するための情報を生成することを特徴とする時系列データ処理装置。
【請求項９】
所定の時間幅における時系列データの値の遷移を示す時系列パターンを用いた処理を実行する時系列データ処理装置における時系列データ処理方法であって、
前記時系列データ処理装置は、
プロセッサ、前記プロセッサに接続される主記憶装置、及び前記プロセッサに接続されるインタフェースを有し、
過去の時系列データを管理する履歴情報を格納する記憶装置と接続し、
将来の時系列データの値の遷移を示す予測パターンの検索時に、現在の時系列パターンに類似する時系列パターンを高速に検索するためのインデックス、及び複数の時系列パターン間の遷移を示す状態遷移データを生成する状態遷移データ生成部と、
前記インデックス及び前記状態遷移データの生成時に用いる生成条件を受け付け、前記生成条件に基づいて前記状態遷移データ生成部に前記インデックス及び前記状態遷移データの生成を指示する生成指示部と、を含み、
前記時系列データ処理方法は、
前記状態遷移データ生成部が、前記生成条件及び前記履歴情報に基づいて、複数の時系列パターンを生成し、前記複数の時系列パターンの各々を識別する第１の識別子を生成する第１のステップと、
前記状態遷移データ生成部が、前記生成条件に基づいて、所定の数の前記時系列パターンを統合することによって複数の統合時系列パターンを生成し、前記複数の統合時系列パターンの各々を識別する第２の識別子を生成する第２のステップと、
前記状態遷移データ生成部が、前記第１の識別子及び前記第２の識別子を対応づけることによって前記インデックスを生成する第３のステップと、
前記状態遷移データ生成部が、前記複数の統合時系列パターンの各々について、前記統合時系列パターンが遷移する遷移先の統合時系列パターンを特定し、前記時系列パターンから前記遷移先の統合時系列パターンへの遷移確率を算出する第４のステップと、
前記状態遷移データ生成部が、前記統合時系列パターンの前記第２の識別子、前記遷移先の統合時系列パターンの前記第２の識別子、及び前記遷移確率を対応付けることによって前記状態遷移データを生成する第５のステップと、
前記状態遷移データ生成部が、前記インデックス及び前記状態遷移データに関する評価結果を生成する第６のステップと、を含むことを特徴とする時系列データ処理方法。
【請求項１０】
請求項９に記載の時系列データ処理方法であって、
前記生成条件は、前記インデックス及び前記状態遷移データを用いた前記予測パターンの検索に要する応答時間を指定する第１の条件を含み、
前記評価結果は、前記インデックス及び前記状態遷移データを用いた前記予測パターンの検索時間の推定値を示す推定応答時間を含み、
前記時系列データ処理方法は、
前記状態遷移データ生成部が、前記インデックス及び前記状態遷移データが生成された後、前記推定応答時間を算出する第７のステップと、
前記推定応答時間が前記第１の条件に含まれる応答時間より大きいか否かを判定する第８のステップと、
前記状態遷移データ生成部が、前記推定応答時間が前記第１の条件に含まれる応答時間より大きいと判定された場合、前記生成条件の内容を変更することによって新たなインデックス及び新たな状態遷移データを生成する第９のステップと、を含むことを特徴とする時系列データ処理方法。
【請求項１１】
請求項９に記載の時系列データ処理方法であって、
前記生成条件は、前記インデックス及び前記状態遷移データのデータサイズを指定する第２の条件を含み、
前記評価結果は、前記インデックス及び前記状態遷移データを合計したデータサイズを示す第１のデータサイズを含み、
前記時系列データ処理方法は、
前記状態遷移データ生成部が、前記インデックス及び前記状態遷移データが生成された後、前記インデックス及び前記状態遷移データを合計したデータサイズを示す第２のデータサイズを算出する第１０のステップと、
前記状態遷移データ生成部が、前記第２のデータサイズが前記第１のデータサイズより大きいか否かを判定する第１１のステップと、
前記状態遷移データ生成部が、前記第２のデータサイズが前記第１のデータサイズより大きいと判定された場合、前記生成条件の内容を変更することによって新たなインデックス及び新たな状態遷移データを生成する第１２のステップと、を含むことを特徴とする時系列データ処理方法。
【請求項１２】
請求項１０又は請求項１１に記載の時系列データ処理方法であって、
前記生成条件は、前記第１の識別子の類似判定結果に基づいて前記時系列パターンを統合するための第３の条件と、前記第３の条件を変更するための第１の調整パラメタを含み、
前記時系列データ処理方法は、前記状態遷移データ生成部が、前記生成条件の内容を変更する場合に、前記第１の調整パラメタに基づいて前記第３の条件の内容を変更するステップを含み、
前記第２のステップは、新たな第３の条件に基づいて前記複数の時系列パターンの統合を行うステップを含むことを特徴とする時系列データ処理方法。
【請求項１３】
請求項１２に記載の時系列データ処理方法であって、
前記生成条件は、前記複数の時系列パターンの各々を区別するための区別情報を生成するための第４の条件を含み、
前記第２のステップは、
前記第３の条件、及び前記第４の条件に基づいて生成された前記区別情報に基づいて、統合可能な複数の時系列パターンを抽出するステップと、
前記抽出された複数の時系列パターンから一つの前記統合時系列パターンを生成するステップと、を含むことを特徴とする時系列データ処理方法。
【請求項１４】
請求項１０又は請求項１１に記載の時系列データ処理方法であって、
前記生成条件は、一つの前記統合時系列パターンの前記遷移先の統合時系列パターンの数を調整するための第５の条件を含み、
前記状態遷移データ生成部は、
前記第５のステップは、前記第５の条件に基づいて、削除可能な前記遷移先の統合時系列パターンを特定するステップを含み、
前記第６のステップは、前記インデックスと、前記削除可能な遷移先の統合時系列パターンが除かれた前記状態遷移データと、を用いて前記評価結果を生成するステップを含み、
前記時系列データ処理方法は、
前記状態遷移データ生成部が、前記インデックス、及び前記削除可能な遷移先の時系列パターンが削除された前記状態遷移データを前記主記憶装置に格納するステップを含むことを特徴とする時系列データ処理方法。
【請求項１５】
請求項９に記載の時系列データ処理方法であって、
前記生成条件は、前記時系列パターンを生成するための第６の条件を含み、
前記第１のステップは、前記第６の条件及び前記履歴情報に基づいて、前記複数の時系列データの値と、前記複数の時系列データの値の遷移の特徴を示す指標とを含む前記時系列パターンを生成するステップを含むことを特徴とする時系列データ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時系列データの時間遷移を示す時系列パターンを用いたデータ処理を行う装置、及び方法に関する。
【背景技術】
【０００２】
金融トレンド、電力需要、及びネットワークトラフィック等、様々な時系列データの履歴データを用いて、ある事象の将来の動向（時系列パターン）をリアルタイムに予測したいという要望がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２０１４／１５５６４１号
【特許文献２】国際公開第２０１２／０７３５２６号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
リアルタイムな事象の動向の予測を行うためには、アクセス速度が高速な主記憶装置に処理に必要なデータを格納し、かつ、当該データを用いた各種処理の時間を短くする必要がある。
【０００５】
そこで、類似するデータを統合することによってデータサイズを小さくする方法を用いることが考えられる。しかし、統合後のデータ数が多い場合、類似するデータの検索処理に時間を要する。また、類似するデータを単純に統合した場合、予測精度が低下するという問題がある。そのため、予測精度が高く、かつ、リアルタイムな事象の予測が困難になるという問題がある。
【０００６】
本発明は、予測精度が高く、かつ、リアルタイムな事象の動向の予測可能なデータを生成する装置及び方法を実現することを目的とする。
【課題を解決するための手段】
【０００７】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、プロセッサ、前記プロセッサに接続される主記憶装置、及び前記プロセッサに接続されるインタフェースを有し、所定の時間幅における時系列データの値の遷移を示す時系列パターンを用いた処理を実行する時系列データ処理装置であって、過去の時系列データを管理する履歴情報を格納する記憶装置と接続し、将来の時系列データの値の遷移を示す予測パターンの検索時に、現在の時系列パターンに類似する時系列パターンを高速に検索するためのインデックス、及び複数の時系列パターン間の遷移を示す状態遷移データを生成する状態遷移データ生成部と、前記インデックス及び前記状態遷移データの生成時に用いる生成条件を受け付け、前記生成条件に基づいて前記状態遷移データ生成部に前記インデックス及び前記状態遷移データの生成を指示する生成指示部と、を含み、前記状態遷移データ生成部は、前記生成条件及び前記履歴情報に基づいて、複数の時系列パターンを生成し、前記複数の時系列パターンの各々を識別する第１の識別子を生成し、前記生成条件に基づいて、所定の数の前記時系列パターンを統合することによって複数の統合時系列パターンを生成し、前記複数の統合時系列パターンの各々を識別する第２の識別子を生成し、前記第１の識別子及び前記第２の識別子を対応づけることによって前記インデックスを生成し、前記複数の統合時系列パターンの各々について、前記統合時系列パターンが遷移する遷移先の統合時系列パターンを特定し、前記時系列パターンから前記遷移先の統合時系列パターンへの遷移確率を算出し、前記統合時系列パターンの前記第２の識別子、前記遷移先の統合時系列パターンの前記第２の識別子、及び前記遷移確率を対応付けることによって前記状態遷移データを生成し、前記インデックス及び前記状態遷移データに関する評価結果を生成することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、予測精度が高く、かつ、リアルタイムな事象の動向の予測に必要なデータを生成できる。当該データを用いることによってリアルタイムな事象の動向の予測が可能となる。前述した以外の課題、構成及び効果は、以下の実施例の説明によって明らかにされる。
【図面の簡単な説明】
【０００９】
【図１】実施例１の計算機システムの構成例を示す図である。
【図２】実施例１の各装置の構成、及び各構成間のデータの入出力関係の一例を示す説明図である。
【図３】実施例１の履歴情報の一例を示す図である。
【図４】実施例１の特徴量テーブルの一例を示す図である。
【図５】実施例１の時系列パターンの特徴量の算出方法の一例を示す図である。
【図６Ａ】実施例１の状態遷移データの一例を示す図である。
【図６Ｂ】実施例１の状態遷移データの一例を示す図である。
【図７Ａ】実施例１のインデックスの一例を示す図である。
【図７Ｂ】実施例１のインデックスの一例を示す図である。
【図７Ｃ】実施例１のインデックスの一例を示す図である。
【図７Ｄ】実施例１のインデックスの一例を示す図である。
【図８Ａ】実施例１の判定方法管理情報の一例を示す図である。
【図８Ｂ】実施例１の判定方法管理情報の一例を示す図である。
【図８Ｃ】実施例１の判定方法管理情報の一例を示す図である。
【図９】実施例１の表示部によって表示される設定画面の一例を示す図である。
【図１０Ａ】実施例１の生成指示部が実行する処理の一例を説明するフローチャートである。
【図１０Ｂ】実施例１の生成指示部が実行する処理の一例を説明するフローチャートである。
【図１１】実施例１の特徴量テーブル生成部が実行する処理の一例を説明するフローチャートである。
【図１２】実施例１のバッファに格納されるデータの一例を示す図である。
【図１３Ａ】実施例１の状態遷移データ生成部が実行する処理の一例を説明するフローチャートである。
【図１３Ｂ】実施例１の状態遷移データ生成部が実行する処理の一例を説明するフローチャートである。
【図１４】実施例１の予測部が実行する処理の一例を説明するフローチャートである。
【図１５】実施例１の予測部が実行する処理の一例を説明するフローチャートである。
【図１６】実施例２の表示部によって表示される設定画面の一例を示す図である。
【図１７Ａ】実施例２の生成指示部が実行する処理の一例を説明するフローチャートである。
【図１７Ｂ】実施例２の生成指示部が実行する処理の一例を説明するフローチャートである。
【図１７Ｃ】実施例２の生成指示部が実行する処理の一例を説明するフローチャートである。
【発明を実施するための形態】
【００１０】
時系列データの予測に必要なデータのデータサイズを小さくする方法として特許文献１に記載された技術が知られている。特許文献１には、「ユーザインタフェースからの対象となる事例の選択を受け付けるステップと、ストレージに保存されている時系列データから、選択された事例に対応する事象を抽出し、抽出した事象に対して頂点の情報を生成するステップと、前記時系列データの時間の情報、および前記ストレージに保存されている前記時系列データの源の関係性の情報に基づいて前記頂点の辺の情報を生成するステップと、前記頂点間の類似性から複数の前記頂点の情報を統合するステップと、を有する」ことが記載されている。
【００１１】
時系列パターンを高速に検索する方法として特許文献２に記載された技術が知られている。特許文献２には、「時間経過に伴って生成されるデータである時系列データと、前記時系列データの特徴を示す情報である特徴情報と、を保持するストレージ装置と、前記時系列データから時系列データ群を抽出し、前記時系列データ群について、データ値の推移に関する前記特徴情報である第一の特徴情報を生成し、前記第一の特徴情報を、前記時系列データ群単位で前記時系列データと関連付けて前記ストレージ装置に記録する特徴情報生成部と、を備えるデータ処理装置と、を有する」ことが記載されている。
【００１２】
特許文献１及び特許文献２に記載の発明から、類似する特徴情報を持つ時系列データ群を統合し、時系列データ群の遷移関係を辺とする確率遷移グラフを用いて、将来の事象の動向を予測する装置が考えられる。
【００１３】
しかし、統合後の時系列データ群の数が多い場合、現在の時系列データ群に一致する時系列データ群の検索時間が長くなる。また、予測精度を向上させるためには、長期間の時系列データ群を考慮する必要があり、データサイズが大きくなる。そのため、検索処理の高速化、及びデータサイズの縮小化の両立が困難である。
【００１４】
そこで、本発明では、時系列データを処理する装置が、予測時間及びデータサイズの少なくともいずれかに関連する条件を受け付け、当該条件に基づいて複数の時系列データ群のデータ値の遷移を示す時系列パターンを生成する。また、装置は、複数の時系列パターンを統合し、統合された時系列パターンを高速に検索するためのインデックスを生成する。さらに、装置は、統合された時系列パターン間の遷移を管理するデータを生成する。前述したインデックス及びデータを用いることによって、予測精度が高く、かつ、リアルタイムな事象の動向の予測が可能となる。以下、本発明の実施例を図面に基づいて説明する。
【実施例１】
【００１５】
図１は、実施例１の計算機システムの構成例を示す図である。
【００１６】
実施例１の計算機システムは、時系列データ処理装置１００、管理計算機１０１、クライアント計算機１０２、及びストレージ装置１０４から構成される。
【００１７】
時系列データ処理装置１００及び管理計算機１０１は、それぞれ、ネットワーク１２０−１を介してデータソース１１０と接続する。時系列データ処理装置１００は、管理計算機１０１及びストレージ装置１０４と接続する。また、時系列データ処理装置１００は、ネットワーク１２０−２を介してクライアント計算機１０２と接続する。
【００１８】
ネットワーク１２０−１、１２０−２は、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、及びＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等が考えられる。
【００１９】
なお、本発明は、各構成の接続形式に限定されない。例えば、時系列データ処理装置１００は、ネットワークを介して管理計算機１０１と接続してもよいし、また、ＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を介してストレージ装置１０４と接続してもよい。また、時系列データ処理装置１００は、直接、データソース１１０と接続してもよいし、直接、クライアント計算機１０２と接続してもよい。
【００２０】
データソース１１０は、時系列データ処理装置１００が処理する時系列データの取得元となる装置、及びシステム等を示す。時系列データは、時間の経過に伴って連続的又は断続的に発生するデータであり、少なくとも値及び時刻を含む。時系列データは、例えば、電力プラントの設備が有するセンサが取得する電力情報、通信機器が取得するネットワークトラフィック、並びに、取引、為替、及び株価等の金融情報等が考えられる。なお、本発明は、データソース１１０から取得される時系列データの種別に限定されない。
【００２１】
データソース１１０において発生した時系列データは、ネットワーク１２０−１を経由して時系列データ処理装置１００に入力される。また、管理計算機１０１に、一旦時系列データを入力し、管理計算機１０１に一定量の時系列データが蓄積された後、時系列データ処理装置１００に蓄積された時系列データを入力してもよい。
【００２２】
ストレージ装置１０４は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）及びＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置であり、履歴情報２２０（図２参照）等の各種データを格納する。ストレージ装置１０４は、永続的にデータを保存可能な装置であればどのような装置であってもよい。なお、ストレージ装置１０４の代わりに、コントローラ及び複数のストレージ装置１０４を備えるストレージシステムを用いてもよい。
【００２３】
時系列データ処理装置１００は、時系列データが入力された場合、当該時系列データに対して所定の処理を実行した後、ストレージ装置１０４に時系列データを保存する。また、時系列データ処理装置１００は、履歴情報２２０（図２参照）及び管理計算機１０１から入力された条件に基づいて、複数の時系列パターンの状態遷移グラフ（状態遷移データ２１５）及びインデックス２１６を生成する。また、時系列データ処理装置１００は、クライアント計算機１０２から予測要求２６１を受信した場合、インデックス２１６、状態遷移データ２１５、及びデータソース１１０から現在取得された時系列データを用いて予測パターンを検索し、検索された予測パターンに関する情報をクライアント計算機１０２に送信する。
【００２４】
ここで、時系列パターンは、所定の時間幅における時系列データの値の遷移を示すデータであり、一般的には波形データとして表現される。また、予測パターンは、将来の時系列データの値の遷移を示すデータ（時系列パターン）である。また、状態遷移グラフは、状態を示すノード間の遷移確率を表すグラフデータである。例えば、第１ノードが第２ノードに遷移し、かつ、遷移確率がＰである場合、第１ノード及び第２ノードは一つの辺で接続され、当該辺の重みとして遷移確率「Ｐ」が与えたグラフデータとなる。本実施例では、時系列パターンがノードに対応する。
【００２５】
管理計算機１０１は、時系列データ処理装置１００を制御する計算機である。管理計算機１０１は、必要に応じて時系列データ処理装置１００に各種情報を入力する。
【００２６】
クライアント計算機１０２は、時系列データ処理装置１００に対して予測パターンの検索を要求する予測要求２６１を送信する。クライアント計算機１０２を操作するユーザは、時系列データ処理装置１００から受信した予測パターンの情報に基づいて、株取引、ネットワーク設定の変更等のリアルタイムな対応が可能となる。
【００２７】
なお、クライアント計算機１０２上で自動制御プログラムが自動制御を行う構成でもよい。例えば、自動制御プログラムが、時系列データ処理装置１００に要求を送信し、入力された予測パターンの情報に基づいて自動制御を行う。また、時系列データ処理装置１００が周期的に予測パターンの情報を送信する場合、自動制御プログラムは、入力された予測パターンの情報に基づいて自動制御を行う。
【００２８】
図２は、実施例１の各装置の構成、及び各構成間のデータの入出力関係の一例を示す説明図である。
【００２９】
時系列データ処理装置１００のハードウェア構成及びソフトウェア構成について説明する。
【００３０】
時系列データ処理装置１００は、プロセッサ２００、主記憶装置２０１、管理用Ｉ／Ｆ２０２、クライアント用Ｉ／Ｆ２０３、ディスクインタフェース２０４、及び入出力装置２０５を備える。前述した各ハードウェア構成は、内部バス等を介して互いに接続される。
【００３１】
プロセッサ２００は、主記憶装置２０１に格納されるプログラムを実行する。プロセッサ２００がプログラムを実行することによって、時系列データ処理装置１００が有する機能を実現できる。以下の説明では、機能を主語に処理を説明する場合、プロセッサ２００が当該機能を実現するプログラムを実行していることを示す。
【００３２】
主記憶装置２０１は、ストレージ装置１０４より高速にアクセス可能な記憶装置であり、プロセッサ２００が実行するプログラム及び情報を格納する。また、主記憶装置２０１は、プログラムが一時的に使用するバッファ２１７を含む。主記憶装置２０１は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等が考えられる。
【００３３】
管理用Ｉ／Ｆ２０２は、管理計算機１０１と接続するためのインタフェースである。クライアント用Ｉ／Ｆ２０３は、クライアント計算機１０２と接続するためのインタフェースである。管理用Ｉ／Ｆ２０２及びクライアント用Ｉ／Ｆ２０３は、例えば、ネットワークインタフェース等が考えられる。
【００３４】
ディスクインタフェース２０４は、ストレージ装置１０４と接続するためのインタフェースである。入出力装置２０５は、データの入力及び出力を行う装置である。入出力装置２０５は、キーボード、マウス、タッチパネル、及びディスプレイ等を含む。
【００３５】
本実施例の主記憶装置２０１は、生成指示部２１０、特徴量テーブル生成部２１１、状態遷移データ生成部２１２、予測部２１３、及び表示部２１４を実現するプログラムを格納する。また、主記憶装置２０１は、状態遷移データ２１５及びインデックス２１６を格納する。
【００３６】
生成指示部２１０は、管理計算機１０１から入力された条件に基づいて、特徴量テーブル生成部２１１及び状態遷移データ生成部２１２に処理の開始を指示する。特徴量テーブル生成部２１１は、特徴量テーブル２２１を生成する。状態遷移データ生成部２１２は、状態遷移データ２１５及びインデックス２１６を生成する。
【００３７】
予測部２１３は、周期的に又はクライアント計算機１０２から要求を受信した場合、現在の時系列データ、並びに、状態遷移データ２１５及びインデックス２１６を用いて予測パターンを生成する。また、予測部２１３は、生成された予測パターンをクライアント計算機１０２に送信する。
【００３８】
表示部２１４は、時系列データ処理装置１００に対する条件を設定するための各種情報を表示する。例えば、表示部２１４は、時系列データ処理装置１００に入力する条件の設定画面等を表示する。表示部２１４によって表示される画面については図９を用いて説明する。
【００３９】
本実施例では、生成指示部２１０、特徴量テーブル生成部２１１、及び状態遷移データ生成部２１２を別々の構成として記載しているが、これに限定されない。例えば、生成指示部２１０、特徴量テーブル生成部２１１、及び状態遷移データ生成部２１２を一つの構成として実現してもよい。また、特徴量テーブル生成部２１１及び状態遷移データ生成部２１２を一つの構成として実現してもよい。また、予測部２１３は、時系列データ処理装置１００とは異なる装置に存在してもよい。この場合、時系列データ処理装置１００は、予測部２１３を有する計算機に状態遷移データ２１５及びインデックス２１６を送信すればよい。
【００４０】
状態遷移データ２１５は、統合された複数の時系列パターンに関する情報、及び統合された複数の時系列パターン間の遷移確率に関する情報を格納する。インデックス２１６は、統合された時系列パターンを高速に検索するための識別子（識別情報）を格納する。
【００４１】
状態遷移データ２１５の詳細は図６Ｂを用いて説明する。インデックス２１６の詳細は図７Ｂ及び図７Ｄを用いて説明する。
【００４２】
ストレージ装置１０４は、履歴情報２２０、特徴量テーブル２２１、システム環境情報２２２、判定方法管理情報２２３、状態遷移データ２２４、及びインデックス２２５を格納する。
【００４３】
履歴情報２２０は、時系列データ処理装置１００がデータソース１１０から取得した時系列データの履歴である。時系列データ処理装置１００は、データソース１１０から時系列データを取得した場合、履歴情報２２０に当該時系列データを登録する。
【００４４】
特徴量テーブル２２１は、状態遷移データ２１５を生成するためのテンポラリデータである。特徴量テーブル２２１の詳細は、図４を用いて説明する。システム環境情報２２２は、時系列データ処理装置１００のハードウェア構成及びソフトウェア構成等のシステム環境に関する情報である。システム環境情報２２２には、プロセッサ２００の性能、主記憶装置２０１の容量、主記憶装置２０１のアクセスレイテイシ、ストレージ装置１０４のアクセスレイテイシ、及び時系列データ処理装置１００上で稼働するプログラム等が含まれる。判定方法管理情報２２３は、条件に基づく各種判定方法に関する情報を格納する。判定方法管理情報２２３の詳細は、図８Ａ、図８Ｂ、及び図８Ｃを用いて説明する。
【００４５】
状態遷移データ２２４及びインデックス２２５は、状態遷移データ生成部２１２によって生成されるデータである。時系列データ処理装置１００は、所定の条件を満たすと判定されるまでの間、ストレージ装置１０４に状態遷移データ２２４及びインデックス２２５を格納する。所定の条件を満たすと判定された場合、時系列データ処理装置１００は、状態遷移データ２２４及びインデックス２２５を、状態遷移データ２１５及びインデックス２１６として主記憶装置２０１に格納する。このとき、時系列データ処理装置１００は、必要に応じてデータの変換を行う。
【００４６】
状態遷移データ２２４の詳細は図６Ａを用いて説明する。インデックス２２５の詳細は図７Ａ及び図７Ｃを用いて説明する。
【００４７】
管理計算機１０１及びクライアント計算機１０２は、時系列データ処理装置１００と同様に、プロセッサ、主記憶装置、及びネットワークインタフェース等を備える。
【００４８】
ここで、時系列データ処理装置１００、管理計算機１０１、及びクライアント計算機１０２間の入出力について説明する。
【００４９】
（１）状態遷移データ及びインデックスの生成時には、以下のような処理が実行される。
【００５０】
管理計算機１０１は、表示部２１４に表示された画面を操作することによって、生成条件２５１を含む生成要求を時系列データ処理装置１００に送信する。なお、時系列データ処理装置１００が管理計算機１０１を介してデータソース１１０の時系列データを取得する場合、管理計算機１０１は、時系列データ２５２を時系列データ処理装置１００に送信する。
【００５１】
時系列データ処理装置１００は、管理計算機１０１から受信した生成要求に含まれる生成条件２５１に基づいて状態遷移データ２２４及びインデックス２２５を生成する。また、時系列データ処理装置１００は、生成された状態遷移データ２２４及びインデックス２２５に関する評価結果２５３を管理計算機１０１に応答する。
【００５２】
管理計算機１０１は、評価結果２５３に基づいて、状態遷移データ２２４及びインデックス２２５を再度生成する必要があるか否かを判定する。管理計算機１０１は、状態遷移データ２２４及びインデックス２２５を再度生成する必要があると判定した場合、新たな生成条件２５１を含む生成要求を時系列データ処理装置１００に送信する。また、管理計算機１０１は、状態遷移データ２２４及びインデックス２２５を再度生成する必要がないと判定した場合、完了通知を時系列データ処理装置１００に送信する。
【００５３】
時系列データ処理装置１００は、再度、生成要求を受信した場合、当該生成要求に含まれる生成条件２５１に基づいて、状態遷移データ２２４及びインデックス２２５を生成し、また、評価結果２５３を管理計算機１０１に応答する。時系列データ処理装置１００は、完了通知を受信した場合、ストレージ装置１０４に格納される状態遷移データ２２４及びインデックス２２５を、状態遷移データ２１５及びインデックス２１６として主記憶装置２０１に格納する。
【００５４】
（２）予測パターンの検索時には、以下のような処理が実行される。
【００５５】
クライアント計算機１０２は、時系列データ処理装置１００に対して予測要求２６１を送信する。時系列データ処理装置１００は、状態遷移データ２１５及びインデックス２１６、並びに、データソース１１０から取得された現在の時系列データを用いて予測パターン２６２を検索する。時系列データ処理装置１００は、クライアント計算機１０２に対して検索された予測パターン２６２に関する情報を送信する。
【００５６】
図３は、実施例１の履歴情報２２０の一例を示す図である。
【００５７】
履歴情報２２０は、一つの時系列データに対応するエントリを一つ以上含む。エントリは、Ｔｉｍｅ３０１及びＶａｌｕｅ３０２から構成される。Ｔｉｍｅ３０１は、時系列データの発生時刻である。Ｖａｌｕｅ３０２は、時系列データのデータ値である。なお、エントリには、時系列データの発生元を示す情報、及び時系列データの定義情報等が含まれてもよい。
【００５８】
本実施例では、１分間隔で、データソース１１０から時系列データが取得されるものとする。
【００５９】
図４は、実施例１の特徴量テーブル２２１の一例を示す図である。図５は、実施例１の時系列パターンの特徴量の算出方法の一例を示す図である。
【００６０】
特徴量テーブル２２１は、一つの時系列パターンに対応するエントリを一つ以上含む。エントリは、ＩＤ４０１、特徴量４０２、ラベル４０３、区別情報４０４、遷移先ＩＤ４０５、及び遷移確率４０６から構成される。
【００６１】
ＩＤ４０１は、時系列パターンを一意に識別するための識別子である。特徴量４０２は、時系列パターンの特徴を示すデータである。本実施例では、特徴量４０２は、時系列ベクトル４１１、ｍｖａ（１０分）４１２、及びｍｖａ（３０分）４１３を含む。
【００６２】
時系列ベクトル４１１は、時系列パターンの具体的な波形を示す。一つの行が一つの時系列データの値を示す。一番左側のカラムが時系列パターンの始点となる時系列データを表す。
【００６３】
本実施例では、始点に対応する時系列データを原点とした相対値を用いる。これによって、データの値の大きさに依存することなく、普遍的な時系列パターンを表現できる。また、本実施例では、始点となる時系列データの発生時刻から４分後の時刻までの間に発生した時系列データのデータ値を時系列ベクトル４１１として定義する。１分毎にデータソース１１０から時系列データが取得されるため、時系列ベクトル４１１は、５つのデータ値から構成されることになる。すなわち、時系列ベクトル４１１には、左から順に、相対時刻が０分、相対時刻が１分、相対時刻が２分、相対時刻が３分、相対時刻が４分の時系列データの値が羅列される。
【００６４】
図４に示す例では、ＩＤ４０１が「０」の時系列パターンは、対象となる時系列データ群の中でＴｉｍｅ３０１が最も過去の時系列データが始点となる時系列パターンである。また、ＩＤ４０１が「１」の時系列パターンは、対象となる時系列データ群の中でＴｉｍｅ３０１が２番目に古い時系列データが始点となる時系列パターンである。
【００６５】
ｍｖａ（１０分）４１２は、１０分移動平均を示す。ｍｖａ（３０分）４１３は、３０分移動平均を示す。
【００６６】
時系列ベクトル４１１に含まれるデータ値が少ない場合、過去の時系列パターンの変化が不明なため、予測パターンに基づく事象の動向の予測精度が低くなる。そのため、一般的に、時系列ベクトル４１１の成分の数は多い方が望ましい。しかし、時系列ベクトル４１１の成分数が多い場合、一つの時系列パターンのデータサイズが大きくなる。
【００６７】
そこで、本実施例では、予測精度を保ち、かつ、時系列パターンのデータサイズを小さくするために、ｍｖａ（１０分）４１２及びｍｖａ（３０分）４１３の二種類の移動平均を付加情報として時系列パターンの特徴量に含めている。移動平均は、過去のデータの遷移状態を評価する指標として用いることができることが知られている。特に、金融業界では、現在の値と移動平均とを用いて株価の先行きを判断するグランビルの法則が知られている。本実施例では、移動平均を用いて過去のデータの遷移状態を表現し、将来のデータの予測を行う例を示す。
【００６８】
ｍｖａ（１０分）４１２及びｍｖａ（３０分）４１３の二つの移動平均を特徴量４０２に含めることよって、時系列パターンのデータサイズを小さくし、かつ、予測パターンに基づく事象の動向の予測精度を高くすることができる。
【００６９】
なお、特徴量４０２に含まれる付加情報は一例であって、システムの管理者が適宜変更できる。例えば、ｍｖａ（１０分）４１２又はｍｖａ（３０分）４１３の少なくともいずれかを特徴量４０２に含めてもよい。また、移動平均の代わりにクロス角度、及び一目均衡表等を特徴量４０２に含めてもよい。
【００７０】
なお、時系列パターンのデータサイズを小さくする必要がない場合、時系列ベクトル４１１の成分数を多くすれば、ｍｖａ（１０分）４１２及びｍｖａ（３０分）４１３は必ずしも必要ない。
【００７１】
図５に示すように、時刻が「２８分」である時系列データを時系列パターンの始点とする場合、時刻が２８分から３２分までに含まれる五つの時系列データの値が時系列ベクトル４１１として設定される。また、直線５０１と１０分移動平均線との交点の値がｍｖａ（１０分）４１２に設定され、また、直線５０１と３０分移動平均線との交点の値がｍｖａ（３０分）４１３に設定される。
【００７２】
ラベル４０３は、時系列パターンを高速に検索するための符号である。本実施例では、ＳＡＸ（Ｓｙｍｂｏｌｉｃ  Ａｇｇｒｅｇａｔｅ  ＡｐｐｒｏＸｉｍａｔｉｏｎ）法を用いて算出される符号を用いる。
【００７３】
ＳＡＸ法では、以下のようにして時系列データが符号化される。まず、時間軸が等間隔に分割され、また、時系列データの値（値域）を示す軸が所定の間隔で分割され、値域の各区間に文字が割り当てられる。各時間の区間における時系列パターンの値が含まれる値域の区間が特定され、さらに、値が特定された区間に対応する文字に変換される。すべての時間の区間ついて同様の処理を実行することによって、一つの時系列パターンが文字列に変換される。これによって、時系列パターンを固定長の文字列として表現できる。
【００７４】
区別情報４０４は、状態遷移データ２１５及びインデックス２１６の生成時に、類似又は一致する時系列パターンを区別する場合に使用される識別情報である。ある二つの時系列パターンにおいて、ラベル４０３が同一であるが、区別情報４０４が異なる場合、異なる時系列パターンとして扱われる。
【００７５】
本実施例では、時系列パターンにおける時系列データの値が最小となる相対時刻に基づいて決定される。例えば、ＩＤ４０１が「０」、「２」、「４」の時系列パターンの場合、相対時刻が「４分」である時系列データが最も値が小さいため、区別情報４０４には「４」が設定される。なお、区別情報４０４に設定する識別情報の設定方法は一例であってこれに限定されない。
【００７６】
遷移先ＩＤ４０５は、遷移先の時系列パターンの識別子である。遷移先ＩＤ４０５には、遷移先の時系列パターンのＩＤ４０１が設定される。遷移確率４０６は、遷移先ＩＤ４０５に対応する時系列パターンに遷移する確率である。
【００７７】
ここで、時系列パターンを一つのノードとして考える。本実施例では、５分幅のウィンドウを１分間隔でシフトすることによって時系列パターンが生成される。そのため、時系列パターンの生成時では、状態遷移グラフは、あるノードが次のノードに連結した直線的なグラフとして表現できる。したがって、特徴量テーブル２２１が生成された時点では、遷移先ＩＤ４０５には、エントリのＩＤ４０１に「１」が加算された識別子が設定される。また、当該エントリの遷移確率４０６には「１」が設定される。
【００７８】
図６Ａ及び図６Ｂは、実施例１の状態遷移データ２２４及び状態遷移データ２１５の一例を示す図である。
【００７９】
図６Ａに示す状態遷移データ２２４は、統合された一つのノード（時系列パターン）に対応するエントリを複数含む。エントリは、統合ＩＤ６０１、特徴量６０２、遷移先ＩＤ６０３、遷移確率６０４、及び消去フラグ６０５から構成される。ここで、統合されたノードとは、状態遷移データ生成部２１２によって統合処理が実行されたノードのことを示す。以下、統合処理が実行されたノードを統合ノードとも記載し、また、統合処理が実行された時系列パターンを統合時系列パターンとも記載する。
【００８０】
統合ＩＤ６０１は、統合時系列パターンを一意に識別するための識別子である。特徴量６０２は、統合時系列パターンの特徴量である。特徴量６０２には、特徴量４０２と同様の値が設定される。より具体的には、複数の時系列パターンが統合された統合時系列パターンの場合、特徴量６０２には、複数の時系列パターンの各相対時間の値の重心が設定される。一つの時系列パターンに対応する統合時系列パターンの場合、特徴量６０２には特徴量４０２と同一の値が設定される。
【００８１】
図６Ａ及び図６Ｂでは、ラベル４０３及び区別情報４０４が同一であるノードが統合された例を示す。具体的には、ＩＤ４０１が「２」及び「４」であるノードが、統合ＩＤ６０２が「２」である統合ノードとして統合されている。
【００８２】
遷移先ＩＤ６０３は、遷移先の統合時系列パターンの識別子である。遷移先ＩＤ６０３には、遷移先の時系列パターンの統合ＩＤ６０１が設定される。遷移確率６０４は、遷移先の統合時系列パターンに遷移する確率である。
【００８３】
図６Ａに示す例では、統合ＩＤ６０２が「２」の統合時系列パターンは、ＩＤ４０１が「２」及び「４」のノード（時系列パターン）が統合された統合ノードである。したがって、当該エントリの一つの遷移先６０３には、ＩＤ４０１が「２」のノードの遷移先のノードのＩＤ４０１である「３」が設定され、また、もう一つの遷移先６０３には、ＩＤ４０１が「４」のノードの遷移先のノードのＩＤ４０１である「５」が設定される。また、それぞれの遷移確率６０４には「０．５」が設定される。
【００８４】
消去フラグ６０５は、削除可能な遷移先の統合時系列パターンを示すフラグである。例えば、削除可能な遷移先の統合時系列パターンの消去フラグ６０５には、「ＯＮ」が設定される。例えば、遷移確率６０４が所定の閾値より小さい場合、消去フラグ６０５に「ＯＮ」が設定される。また、一つの統合時系列パターンの遷移先の統合時系列パターンの数が閾値より大きい場合、所定の数の消去フラグ６０５に「ＯＮ」が設定される。
【００８５】
本実施例では、説明の簡単のために、遷移先ＩＤ６０３、遷移確率６０４及び消去フラグ６０５の組が、予め一定の数だけ設定されたテーブル形式の状態遷移データ２１５を用いる。なお、当該組の数は、任意に設定できる。また、時系列パターンを統合する場合に、組が追加されてもよい。なお、遷移先の時系列パターンの数は一意に定まらないため、時系列データ処理装置１００は、テーブル形式ではなくリスト形式の状態遷移データ２１５を保持してもよい。
【００８６】
図６Ｂに示す状態遷移データ２１５は、統合ノード（統合時系列パターン）毎に一つのエントリを含む。当該エントリは、統合ＩＤ６０１、特徴量６０２、遷移先ＩＤ６０３、及び遷移確率６０４から構成される。状態遷移データ２１５は、消去フラグ６０５を含まない。主記憶装置２０１に格納される時点では、消去フラグ６０５に基づく処理が完了しており、必要ないためである。
【００８７】
図７Ａ、図７Ｂ、図７Ｃ、及び図７Ｄは、実施例１のインデックス２２５及びインデックス２１６の一例を示す図である。
【００８８】
図７Ａ及び図７Ｃに示すインデックス２２５は、ラベル及び区別情報の組合せ毎に一つのエントリを含む。エントリは、ラベル７０１、区別情報７０２、統合ＩＤ７０３、及び元ＩＤ７０４から構成される。図７Ａ、図７Ｂ、図７Ｃ、及び図７Ｄに示すエントリは、ラベル及び区別情報の順にソートされている。
【００８９】
ラベル７０１及び区別情報７０２は、ラベル４０３及び区別情報４０４と同一のものである。統合ＩＤ７０３は、ラベル７０１に対応する時系列パターンの統合ＩＤ６０１である。元ＩＤ７０４は、統合前の時系列パターンのＩＤ４０１である。
【００９０】
時系列パターンが統合されていない場合、元ＩＤ７０４には一つの時系列パターンのＩＤ４０１が設定される。複数の時系列パターンが統合されている場合、元ＩＤ７０４には複数の時系列パターンのＩＤ４０１が設定される。
【００９１】
なお、元ＩＤ７０４に設定されるＩＤ４０１の数は一意に定まらないため、時系列データ処理装置１００は、テーブル形式ではなくリスト形式の元ＩＤ７０４を保持してもよい。
【００９２】
図７Ｂ及び図７Ｄに示すインデックス２１６は、ラベル及び区別情報の組合せ毎に一つのエントリを含む。エントリは、ラベル７０１、区別情報７０２、及び統合ＩＤ７０３から構成される。インデックス２１６は、元ＩＤ７０４を含まない。元ＩＤ７０４は、インデックス２１６の生成時に使用される情報であり、当該データが生成された後は必要ないためである。
【００９３】
図７Ａ及び図７Ｂは、ラベル４０３が同一であり、かつ、時系列パターンにおける時系列データの値が最小となる相対時刻が同一である時系列パターンが統合された場合のインデックス２２５、２１６を表す。
【００９４】
具体的には、ＩＤ４０１が「２」及び「４」のノードは、ラベル４０３が同一、かつ、区別情報４０４が同一であるため統合される。一方、ＩＤ４０１が「５」及び「６」のノードは、ラベル４０３は同一であるが、区別情報４０４が異なるため統合されず、別々の統合ノードとして登録される。
【００９５】
図７Ｃ及び図７Ｄは、ラベル４０３が類似し、かつ、時系列パターンにおける時系列データの値が最小となる相対時刻が同一である時系列パターンが統合された場合のインデックス２２５、２１６を表す。ラベル４０３の類似の判定方法は様々考えられる。
【００９６】
例えば、二つのラベル間の距離が一定の閾値より小さい場合、二つのラベル４０３が類似であると判定できる。この場合、ラベル７０１が「ｂｂｃｃｄｈ」の時系列パターンとラベル７０１が「ｂｄｄｄｂｆ」の時系列パターンとは、状態遷移データ２２４、２１５では一つの時系列パターンに統合される。しかし、ラベルが異なる時系列パターンを統合すると予測パターンの検索時に時系列パターン間の距離を算出する必要があり、高速に時系列パターンを検索できない。そのため、インデックス２２５、２１６では、類似するラベルは、別々のエントリとして管理される。
【００９７】
図８Ａ、図８Ｂ、及び図８Ｃは、実施例１の判定方法管理情報２２３の一例を示す図である。本実施例では、判定方法管理情報２２３は、予め、ストレージ装置１０４に格納されているものとする。なお、システム管理者が、管理計算機１０１を操作して設定し、また、更新してもよい。
【００９８】
判定方法管理情報２２３には、区別判定方法情報８００、類似判定方法情報８１０、及び足切り方法情報８２０を含む。
【００９９】
図８Ａに示す区別判定方法情報８００は、ラベルとは異なる観点で時系列パターンを区別するための判定方法を管理する情報であり、判定方法毎に一つのエントリを含む。エントリは、ＩＤ８０１、条件８０２、及び区別方法８０３を含む。
【０１００】
ＩＤ８０１は、区別方法を一意に識別するための識別子である。条件８０２は、区別方法を適用するための条件である。区別方法８０３は、具体的な時系列パターンの区別方法に関する情報である。ここでは、説明のわかりやすさのため、区別方法８０３の内容を文書として記載しているが、実際には、時系列データ処理装置１００が実行するプログラム又は命令等が格納される。
【０１０１】
ＩＤ８０１が「１」の区別方法では、時系列パターンにおける時系列データの値が最大となる相対時刻が異なる時系列パターン群は、異なる時系列パターンとして扱われる。ＩＤ８０１が「２」の区別方法では、時系列パターンにおける時系列データの値が最小となる相対時刻が異なる時系列パターンは、異なる時系列パターンとして扱われる。ＩＤ８０１が「３」の区別方法では、一つの時系列パターンの最大変動値と他の時系列パターンの最大変動値との差が「５」以上の場合、異なる時系列パターンとして扱われる。ＩＤ８０１が「４」の区別方法では、時系列パターンの始点の時系列データが取得された時刻、すなわち、Ｔｉｍｅ３０１が午前の時系列パターンと、Ｔｉｍｅ３０１が午後の時系列パターンとでは、異なる時系列パターンとして扱われる。
【０１０２】
前述した区別方法は一例であって、本発明はこれに限定されない。対象の事象に応じて様々な区別方法を設定することができる。
【０１０３】
後述するように、時系列データ処理装置１００は、管理計算機１０１から入力された生成条件２５１に基づいて区別判定方法情報８００を参照し、適用する区別方法を特定する。
【０１０４】
図８Ｂに示す類似判定方法情報８１０は、類似する時系列パターンの判定方法を管理する情報であり、判定方法毎に一つのエントリを含む。エントリは、ＩＤ８１１、条件８１２、及び類似判定方法８１３を含む。
【０１０５】
ＩＤ８１１は、類似判定方法を一意に識別するための識別子である。条件８１２は、類似判定方法を適用するための条件である。類似判定方法８１３は、具体的な時系列パターンの類似判定方法に関する情報である。ここでは、説明のわかりやすさのため、類似判定方法８１３の内容を文書として記載しているが、実際には、時系列データ処理装置１００が実行するプログラム又は命令等が格納される。
【０１０６】
ＩＤ８１１が「１」の類似判定方法では、ラベルが一致する時系列パターン群が統合される。ＩＤ８１１が「２」の類似判定方法では、ラベルの距離がパラメタより小さい時系列パターン群が統合される。ＩＤ８１１が「３」の類似判定方法では、ラベルの距離に基づいて五つのクラスタが生成され、各クラスタに含まれる時系列パターン群が統合される。
【０１０７】
前述した類似判定方法は一例であって、本発明はこれに限定されない。対象の事象に応じて様々な区別方法を設定することができる。
【０１０８】
後述するように、時系列データ処理装置１００は、管理計算機１０１から入力された生成条件２５１に基づいて類似判定方法情報８１０を参照し、適用する類似判定方法を特定する。
【０１０９】
図８Ｃに示す足切り方法情報８２０は、遷移先の統合時系列パターンの数を削減するための足切り方法を管理する情報であり、足切り判定方法毎に一つのエントリを含む。エントリは、ＩＤ８２１、条件８２２、及び足切り方法８２３を含む。足切り方法は、状態遷移グラフにおける辺の数の削減方法に対応する。遷移先の統合時系列パターンの数を削減することによって、高速に予測パターンを検索できる。
【０１１０】
ＩＤ８２１は、足切り方法を一意に識別するための識別子である。条件８２２は、足切り方法を適用するための条件である。足切り方法８２３は、具体的な遷移先の統合時系列パターンの削減方法に関する情報である。ここでは、説明のわかりやすさのため、足切り方法８２３の内容を文書として記載しているが、実際には、時系列データ処理装置１００が実行するプログラム又は命令等が格納される。
【０１１１】
ＩＤ８２１が「１」の足切り方法では、一つのエントリの遷移確率６０４の合計値がパラメタより大きい場合、当該合計値がパラメタ以下になるように、遷移確率６０４の値が小さい順に消去フラグ６０５に「ＯＮ」が設定される。ＩＤ８２１が「２」の足切り方法では、一つのエントリにおいて、ある遷移先の時系列パターンの遷移確率６０４の値がパラメタより小さい場合、当該時系列パターンの消去フラグ６０５に「ＯＮ」が設定される。ＩＤ８２１が「３」の足切り方法では、一つのエントリにおいて、遷移先の時系列パターンの数がパラメタより大きい場合、遷移先の時系列パターンの数がパラメタ以下になるように、遷移確率６０４の値が小さい順に消去フラグ６０５に「ＯＮ」が設定される。
【０１１２】
前述した足切り方法は一例であって、本発明はこれに限定されない。対象の事象に応じて様々な足切り方法を設定することができる。
【０１１３】
後述するように、時系列データ処理装置１００は、管理計算機１０１から入力された生成条件２５１に基づいて足切り方法情報８２０を参照し、適用する足切り方法を特定する。
【０１１４】
図９は、実施例１の表示部２１４によって表示される設定画面９００の一例を示す図である。
【０１１５】
設定画面９００は、表示部２１４によって入出力装置２０５又は管理計算機１０１を介して表示される。設定画面９００は、時系列データ処理装置１００に入力する生成条件２５１の設定に必要な項目、及び処理結果等を表示する。
【０１１６】
設定画面９００は、システム環境欄９０１、生成指定欄９０２、及び評価欄９０３の三つの欄を含む。
【０１１７】
システム環境欄９０１は、時系列データ処理装置１００のシステム環境を表示する欄である。システム環境欄９０１は、主記憶容量欄９１１、及び稼働プログラム欄９１２を含む。
【０１１８】
主記憶容量欄９１１は、時系列データ処理装置１００の主記憶装置２０１の容量を表示する欄である。稼働プログラム欄９１２は、時系列データ処理装置１００上で稼働するプログラムの一覧を表示する欄である。
【０１１９】
生成指定欄９０２は、状態遷移データ２１５及びインデックス２１６の生成時に入力される生成条件２５１を指定するための各種項目を表示する欄である。生成指定欄９０２は、特徴量算出条件欄９２１、パターン区別条件欄９２２、状態遷移生成方法欄９２３、及び動作条件欄９２４を含む。また、生成指定欄９０２は、生成ボタン９２５、及び生成完了ボタン９２６を含む。
【０１２０】
特徴量算出条件欄９２１は、特徴量テーブル２２１を算出するための条件を指定する項目の値を入力するための欄である。特徴量算出条件欄９２１に基づいて、特徴量４０２等が算出される。特徴量算出条件欄９２１は、開始時間刻み欄９３１、区間幅欄９３２、及び付加情報欄９３３を含む。
【０１２１】
開始時間刻み欄９３１は、対象の時系列データの時刻の幅を入力する欄である。区間幅欄９３２は、時系列パターンとして抽出する時系列データ群の時間幅を入力する欄である。
【０１２２】
例えば、開始時間刻み欄９３１に「１ｍｉｎ」が設定された場合、１分間隔の時系列データを用いることを示す。また、区間幅欄９３２に「５ｍｉｎ」が設定された場合、始点となる時系列データから５分の時間幅に含まれる時系列データを一つの時系列パターンとして生成することを示す。なお、開始時間刻み欄９３１及び区間幅欄９３２には「５ｍｓ」、「１０ｓｅｃ」等、任意の値を設定できる。
【０１２３】
付加情報欄９３３は、時系列パターンの特徴量４０２に含める付加情報を指定する欄である。付加情報欄９３３は、数欄９３４、種類欄９３５、パラメタ欄９３６、及び絶対／相対欄９３７を含む。
【０１２４】
数欄９３４は、特徴量４０２に含める付加情報欄９３３の数を入力する欄である。数欄９３４に入力された値に応じて、種類欄９３５、パラメタ欄９３６、及び絶対／相対欄９３７の組が追加される。種類欄９３５は、付加情報の種類を入力する欄である。例えば、種類欄９３５には「移動平均」、「クロス角度」等の情報が入力される。パラメタ欄９３６は、種類欄９３５に対応する付加情報に必要なパラメタを入力する欄である。例えば、種類欄９３５に「移動平均」が設定された場合、パラメタ欄９３６には「１０ｍｉｎ」等が入力される。この場合、１０分移動平均を付加情報として特徴量４０２に含めることを示す。絶対／相対欄９３７は、絶対値及び相対値のどちらを使用するかを指定する欄である。
【０１２５】
パターン区別条件欄９２２は、ラベル等とは別に、時系列パターンを区別するための条件を指定する項目の値を入力するための欄である。後述するように、パターン区別条件欄９２２に基づいて区別情報４０４が設定される。パターン区別条件欄９２２は、数欄９４１、第１条件欄９４２、第２条件欄９４３、及び第３条件欄９４４を含む。
【０１２６】
数欄９４１は、指定する条件の数を入力する欄である。数欄９４１に入力された値に応じて、第１条件欄９４２、第２条件欄９４３、及び第３条件欄９４４の組が追加される。第１条件欄９４２、第２条件欄９４３、及び第３条件欄９４４は、時系列パターンを区別するための条件を入力する欄である。なお、パターン区別条件欄９２２に含まれる条件の入力欄の数は任意に設定できる。
【０１２７】
例えば、第１条件欄９４２に「最大値」、第２条件欄９４３に「相対時刻」、及び第３条件欄９４４に「異なる」が入力された場合、ＩＤ８０１が「１」の区別方法８０３が適用される。第１条件欄９４２に「最小値」、第２条件欄９４３に「相対時刻」、及び第３条件欄９４４に「異なる」が入力された場合、ＩＤ８０１が「２」の区別方法８０３が適用される。
【０１２８】
状態遷移生成方法欄９２３は、状態遷移データ２１５の生成時に用いられる条件を指定する項目の値を入力するための欄である。状態遷移生成方法欄９２３は、類似判定方法欄９５１、及び足切り方法欄９５７を含む。
【０１２９】
類似判定方法欄９５１は、時系列パターンの類似判定に用いるラベルの生成方法を入力する欄である。類似判定方法欄９５１には「ＳＡＸ法」、「ＤＴＷ法」等が入力される。類似判定方法欄９５１は、第１パラメタ欄９５２、第２パラメタ欄９５３、及び類似尺度欄９５４を含む。
【０１３０】
第１パラメタ欄９５２及び第２パラメタ欄９５３は、類似判定方法欄９５１に入力された方法に基づいてラベルを生成するために必要なパラメタを入力する欄である。
【０１３１】
類似尺度欄９５４は、時系列パターンの統合時にラベル間の類否を判定するための条件を指定する欄である。類似尺度欄９５４は、種類欄９５５及びパラメタ欄９５６を含む。種類欄９５５は、類似判定方法の種類を入力する欄である。パラメタ欄９５６は種類欄９５５に応じて類似判定方法に用いるパラメタを入力する欄である。
【０１３２】
種類欄９５５に「一致」が入力された場合、ＩＤ８１１が「１」の類似判定方法８１３が適用される。種類欄９５５に「距離」が入力された場合、ＩＤ８１１が「２」の類似判定方法８１３が適用される。種類欄９５５に「クラスタリング」が入力された場合、ＩＤ８１１が「３」の類似判定方法８１３が適用される。
【０１３３】
足切り方法欄９５７は、消去フラグ６０５を設定する条件を入力する欄である。足切り方法欄９５７は、種類欄９５８及びパラメタ欄９５９を含む。
【０１３４】
種類欄９５８は、削除対象の遷移先の時系列パターンを指定する消去フラグ６０５を設定するか否かを判定するための指標を入力する欄である。パラメタ欄９５９は、種類欄９５８に入力された指標について判定基準となるパラメタを入力する欄である。種類欄９５８には、例えば、「確率合計値」、「最小確率」、及び「ｏｕｔ次数」等が設定される。
【０１３５】
種類欄９５８に「確率合計値」が入力された場合、ＩＤ８２１が「１」の足切り方法８２３が適用される。種類欄９５８に「最小確率」が入力された場合、ＩＤ８２１が「２」の足切り方法８２３が適用される。種類欄９５８に「ｏｕｔ次数」が入力された場合、ＩＤ８２１が「３」の足切り方法８２３が適用される。
【０１３６】
生成ボタン９２５は、時系列データ処理装置１００に対して状態遷移データ２１５及びインデックス２１６の生成を指示するための操作ボタンである。生成完了ボタン９２６は、時系列データ処理装置１００に対して状態遷移データ２１５及びインデックス２１６の生成が完了した旨を通知する操作ボタンである。時系列データ処理装置１００は、完了通知を受け付けた後、主記憶装置２０１に状態遷移データ２１５及びインデックス２１６を格納する。
【０１３７】
動作条件欄９２４は、生成される状態遷移データ２１５及びインデックス２１６に関する条件を指定する項目の値を入力するための欄である。動作条件欄９２４は、要求データサイズ欄９６１、要求最大応答時間欄９６２、及び要求平均応答時間欄９６３を含む。
【０１３８】
要求データサイズ欄９６１は、状態遷移データ２１５及びインデックス２１６の合計データサイズを入力する欄である。要求最大応答時間欄９６２及び要求平均応答時間欄９６３は、状態遷移データ２１５及びインデックス２１６を用いた予測パターンの検索時間の最大値及び平均値を入力する欄である。
【０１３９】
以下の説明では、特徴量算出条件欄９２１の入力された値を特徴量算出条件と記載し、パターン区別条件欄９２２の入力された値をパターン区別条件と記載し、状態遷移生成方法欄９２３に入力された値をデータ条件とも記載し、また、動作条件欄９２４に入力された値を動作条件とも記載する。
【０１４０】
評価欄９０３は、生成された状態遷移データ２２４及びインデックス２２５に関する各種評価値を表示する欄である。評価欄９０３は、合計データサイズ欄９７１、推定最大応答時間欄９７４、推定平均応答時間欄９７５、状態数欄９７６、平均ｏｕｔ次数欄９７７、最大ｏｕｔ次数欄９７８、遷移確率最小値欄９７９、及びインデックスエントリ数欄９８０を含む。
【０１４１】
合計データサイズ欄９７１は、状態遷移データ２２４及びインデックス２２５の合計したデータサイズを表示する欄である。合計データサイズ欄９７１は、さらに、状態遷移データ欄９７２及びインデックス欄９７３を含む。状態遷移データ欄９７２は、状態遷移データ２２４のデータサイズを表示する欄であり、インデックス欄９７３は、インデックス２２５のデータサイズを表示する欄である。
【０１４２】
推定最大応答時間欄９７４は、予測パターンの検索時間の予測値の最大値を表示する欄である。推定平均応答時間欄９７５は、予測パターンの検索時間の予測値の平均値を表示する欄である。
【０１４３】
状態数欄９７６は、状態遷移データ２２４のエントリの数を表示する欄である。平均ｏｕｔ次数欄９７７及び最大ｏｕｔ次数欄９７８は、一つの統合時系列パターンに対応するノードから出力されるエッジの数を表示する欄である。具体的には、平均ｏｕｔ次数欄９７７は、状態遷移データ２２４におけるエッジの数の平均値を表示する欄である。最大ｏｕｔ次数欄９７８は、状態遷移データ２２４におけるエッジの数の最大値を表示する欄である。遷移確率最小値欄９７９は、状態遷移データ２２４の遷移確率６０４に設定される確率の最小値を表示する欄である。インデックスエントリ数欄９８０は、インデックス２２５のエントリの数を表示する欄である。
【０１４４】
図９に示す設定画面９００の各項目は一例であってこれに限定されない。設定画面９００には、少なくとも、データ条件を入力する欄、及び状態遷移データ２１５及びインデックス２１６を評価するための情報を表示する欄が含まれればよい。
【０１４５】
図９に示す設定画面９００を用いることによって、特徴量算出条件、パターン区別条件、データ条件、及び動作条件を含む生成条件２５１を時系列データ処理装置１００に入力できる。
【０１４６】
なお、値を入力できる全ての項目に値が入力される必要はない。例えば、足切り方法欄９５７の種類欄９５８及びパラメタ欄９５９には値を入力しなくてもよい。
【０１４７】
図１０Ａ及び図１０Ｂは、実施例１の生成指示部２１０が実行する処理の一例を説明するフローチャートである。
【０１４８】
時系列データ処理装置１００は、生成条件２５１を含む生成要求又は完了通知を、メッセージとして受信した場合、生成指示部２１０を呼び出す。呼び出された生成指示部２１０は、以下の処理を開始する。
【０１４９】
生成指示部２１０は、受信したメッセージが完了通知であるか否かを判定する（ステップＳ１００１）。
【０１５０】
受信したメッセージが完了通知でないと判定された場合、生成指示部２１０は、受信した生成要求が再生成要求であるか否かを判定する（ステップＳ１００２）。
【０１５１】
例えば、生成要求に再生成を示す情報が含まれるか否かを判定する方法が考えられる。また、ストレージ装置１０４に状態遷移データ２２４及びインデックス２２５が存在するか否かを判定する方法が考えられる。ストレージ装置１０４に状態遷移データ２２４及びインデックス２２５が存在する場合、生成指示部２１０は、受信した生成要求が再生成指示であると判定する。
【０１５２】
受信した生成要求が再生成要求でないと判定された場合、生成指示部２１０は、特徴量テーブル生成部２１１を呼び出す（ステップＳ１００３）。生成指示部２１０は、特徴量テーブル生成部２１１から処理の完了通知を受け付けた場合、状態遷移データ生成部２１２を呼び出す（ステップＳ１００４）。
【０１５３】
このとき、生成指示部２１０は、特徴量テーブル生成部２１１及び状態遷移データ生成部２１２のそれぞれに、生成条件２５１を含む生成指示を入力する。なお、生成指示部２１０は、生成要求に含まれる生成条件２５１を主記憶装置２０１に一時的に保持する。
【０１５４】
生成指示部２１０は、状態遷移データ生成部２１２から完了通知を受け付けた場合、評価結果２５３を生成し（ステップＳ１００５）、管理計算機１０１に評価結果２５３を送信する。その後、生成指示部２１０は、処理を終了する。ここで、ステップＳ１００５の処理の一例について説明する。
【０１５５】
状態遷移データ２１５のデータサイズの推定値を算出する場合、生成指示部２１０は、消去フラグ６０５に「ＯＮ」が設定された組は考慮しない。すなわち、生成指示部２１０は、消去フラグ６０５が設定された組はデータが存在しないものとして、状態遷移データ２２４のデータサイズを状態遷移データ２１５のデータサイズの推定値として算出する。また、生成指示部２１０は、インデックス２２５のデータサイズをインデックス２１６のデータサイズの推定値として算出する。
【０１５６】
また、生成指示部２１０は、算出された二つの推定値を足し合わせることによって状態遷移データ２１５及びインデックス２１６のデータサイズの合計値を算出する。
【０１５７】
生成指示部２１０は、状態遷移データ２２４の各組の値に基づいて、状態数、ｏｕｔ次数の平均値、ｏｕｔ次数の最大値、及び遷移確率の最小値等を算出する。このとき、生成指示部２１０は、消去フラグ６０５に「ＯＮ」が設定された組については考慮しない。生成指示部２１０は、インデックス２２５に基づいて、エントリ数を算出する。
【０１５８】
生成指示部２１０は、応答時間を算出する。例えば、以下のような算出方法が考えられる。
【０１５９】
状態遷移データ２１５及びインデックス２１６のデータサイズの合計値が主記憶装置２０１の容量以下の場合、生成指示部２１０は、ｏｕｔ次数の最大値と主記憶装置２０１のアクセスレイテイシとを乗算することによって推定最大応答時間を算出し、また、ｏｕｔ次数の平均値と主記憶装置２０１のアクセスレイテイシとを乗算することによって推定平均応答時間を算出する。
【０１６０】
合計データサイズが主記憶装置２０１の容量より大きい場合、生成指示部２１０は、ｏｕｔ次数の最大値とストレージ装置１０４のアクセスレイテイシとを乗算することによって推定最大応答時間を算出し、また、ｏｕｔ次数の平均値とストレージ装置１０４のアクセスレイテイシとを乗算することによって推定平均応答時間を算出する。
【０１６１】
生成指示部２１０は、算出された各種値を含む評価結果２５３を生成する。以上がステップＳ１００５の処理の一例の説明である。
【０１６２】
ステップＳ１００２において、受信した生成要求が再生成要求であると判定された場合、生成指示部２１０は、再生成要求に含まれる生成条件２５１と前回の生成条件２５１とが同一であるか否かを判定する（ステップＳ１００６）。具体的には、生成指示部２１０は、主記憶装置２０１に一時的に保持される生成条件２５１と、再生成要求に含まれる生成条件２５１とを比較する。
【０１６３】
再生成要求に含まれる生成条件２５１と前回の生成条件２５１とが同一であると判定された場合、生成指示部２１０は、処理を終了する。
【０１６４】
再生成要求に含まれる生成条件２５１と前回の生成条件２５１とが同一でないと判定された場合、生成指示部２１０は、再生成要求に含まれる生成条件２５１と前回の条件との差異を抽出する（ステップＳ１００７）。その後、生成指示部２１０は、ステップＳ１００３に進む。
【０１６５】
ステップＳ１００３及びステップＳ１００４では、生成指示部２１０は、抽出された条件の差異を含む再生成要求を、特徴量テーブル生成部２１１及び状態遷移データ生成部２１２のそれぞれに入力する。なお、生成指示部２１０は、再生成要求に含まれる生成条件２５１を比較用のデータとして主記憶装置２０１に一時的に保持する。
【０１６６】
ステップＳ１００１において、受信したメッセージが完了通知であると判定された場合、生成指示部２１０は、特徴量テーブル２２１を削除する（ステップＳ１００８）。
【０１６７】
次に、生成指示部２１０は、主記憶装置２０１に格納する状態遷移データ２１５及びインデックス２１６を生成する（ステップＳ１００９）。
【０１６８】
具体的には、生成指示部２１０は、消去フラグ６０５に「ＯＮ」が設定された組のデータを削除する。また、生成指示部２１０は、各組の消去フラグ６０５の欄を削除する。以上の処理によって、状態遷移データ２１５が生成される。また、生成指示部２１０は、インデックス２２５から元ＩＤ７０４を削除することによって、インデックス２１６を生成する。
【０１６９】
次に、生成指示部２１０は、状態遷移データ２１５及びインデックス２１６を主記憶装置２０１に格納する（ステップＳ１０１０）。生成指示部２１０は、主記憶装置２０１に保存された生成条件２５１を予測部２１３に入力する（ステップＳ１０１１）。その後、生成指示部２１０は、処理を終了する。
【０１７０】
ここで、生成条件２５１の設定方法、及び評価結果２５３に基づく生成条件２５１の変更方法について説明する。まず、初期の生成条件２５１の設定方法について説明する。
【０１７１】
管理計算機１０１を操作するシステム管理者は、システム環境欄９０１に表示される情報に基づいて、状態遷移データ２１５及びインデックス２１６を主記憶装置２０１に格納するために必要なデータサイズの上限値を算出する。システム管理者は、動作条件欄９２４の要求データサイズ欄９６１に算出された上限値を入力する。なお、システム管理者は、設定画面９００とは別の画面を用いて前述した上限値を算出するための操作を行ってもよい。
【０１７２】
システム管理者は、管理計算機１０１を操作して、クライアント計算機１０２上で稼働するプログラム、又はクライアント計算機１０２を操作するユーザ等から要求応答時間を取得する。システム管理者は、取得した要求応答時間に基づいて、動作条件欄９２４の要求最大応答時間欄９６２及び要求平均応答時間欄９６３に値を入力する。
【０１７３】
システム管理者は、クライアント計算機１０２の処理内容に応じて、特徴量算出条件欄９２１、パターン区別条件欄９２２、及び状態遷移生成方法欄９２３に値を入力する。
【０１７４】
システム管理者は、生成ボタン９２５を操作して、時系列データ処理装置１００に生成条件２５１を含む生成要求を送信する。
【０１７５】
次に、評価結果２５３に基づく生成条件２５１の変更方法について説明する。
【０１７６】
システム管理者は、設定画面９００の評価欄９０３に表示される評価結果２５３を参照する。合計データサイズ欄９７１が要求データサイズ欄９６１より大きい場合、推定最大応答時間欄９７４が要求最大応答時間欄９６２より大きい場合、又は、推定平均応答時間欄９７５が要求平均応答時間欄９６３より大きい場合、システム管理者は、条件を変更し、生成ボタン９２５を再度操作する。例えば、以下のような変更指針が考えられる。
【０１７７】
（１）合計データサイズ欄９７１が要求データサイズ欄９６１より大きい場合、以下のような変更指針が考えられる。
【０１７８】
この場合、状態遷移データ２１５のデータサイズ、及びインデックス２１６のデータサイズの少なくともいずれかを小さくすればよい。
【０１７９】
状態遷移データ２１５のデータサイズは、統合時系列パターンの数と、平均ｏｕｔ次数とを乗算した値に比例する。そこで、システム管理者は、平均ｏｕｔ次数欄９７７及び最大ｏｕｔ次数欄９７８の値が想定値より大きいと判断した場合、足切り方法欄９５７のパラメタ欄９５９に、現在の値より小さい値を入力する。また、システム管理者は、状態数欄９７６の値が想定値より大きいと判断した場合、開始時間刻み欄９３１及び区間幅欄９３２に現在の値より大きい値を入力する。また、システム管理者は、類似判定方法欄９５１の第１パラメタ欄９５２、第２パラメタ欄９５３、又は、類似尺度欄９５４のパラメタ欄９５６等の値を変更してもよい。
【０１８０】
インデックス２２５のデータサイズは、エントリ数に比例する。そこで、システム管理者は、類似判定方法欄９５１の入力値を変更する。
【０１８１】
（２）推定最大応答時間欄９７４が要求最大応答時間欄９６２より大きい場合、又は、推定平均応答時間欄９７５が要求平均応答時間欄９６３より大きい場合、以下のような変更指針が考えられる。
【０１８２】
この場合、システム管理者は、平均ｏｕｔ次数欄９７７、最大ｏｕｔ次数欄９７８、遷移確率最小値欄９７９の値が小さくなるように、足切り方法欄９５７のパラメタ欄９５９の入力値を変更する。また、システム管理者は、状態数欄９７６の値が小さくなるように、開始時間刻み欄９３１及び区間幅欄９３２に現在の値より大きい値を入力し、又は、類似判定方法欄９５１の第１パラメタ欄９５２、第２パラメタ欄９５３、若しくは、類似尺度欄９５４のパラメタ欄９５６等の入力値を変更する。
【０１８３】
図１１は、実施例１の特徴量テーブル生成部２１１が実行する処理の一例を説明するフローチャートである。図１２は、実施例１のバッファ２１７に格納されるデータの一例を示す図である。
【０１８４】
特徴量テーブル生成部２１１は、生成指示部２１０から呼び出される場合、以下で説明する処理を開始する。なお、特徴量テーブル生成部２１１は、入力された指示によって処理内容が異なる。まず、生成指示が入力された場合について説明する。
【０１８５】
特徴量テーブル生成部２１１は、生成指示に含まれる生成条件２５１を設定し、また、生成条件２５１に含まれる特徴量算出条件に基づいて主記憶装置２０１にバッファ２１７を確保する（ステップＳ１１０１）。例えば、付加情報欄９３３に３０分移動平均に関する情報が入力された場合、３０分間の時系列データ群を格納可能なサイズのバッファ２１７が確保される。
【０１８６】
このとき、特徴量テーブル生成部２１１は、確保されたバッファ２１７に時系列データ格納テーブル１２００及び登録用エントリ１２１０を生成し、時系列データ格納テーブル１２００及び登録用エントリ１２１０を初期化する。時系列データ格納テーブル１２００に登録可能なエントリの数は、特徴量算出条件に基づいて決定される。例えば、付加情報として３０分移動平均を用いる場合、始点となる時系列データの時刻から３０分間の時間幅に含まれる時系列データ群を格納できるようにエントリ数が決定される。
【０１８７】
図１２に示す例では、特徴量算出条件欄９２１の開始時間刻み欄９３１に「１ｍｉｎ」、区間幅欄９３２に「１ｍｉｎ」、付加情報欄９３３に１０分移動平均及び３０分移動平均が入力された場合の時系列データ格納テーブル１２００及び登録用エントリ１２１０を示す。
【０１８８】
時系列データ格納テーブル１２００は、Ｔｉｍｅ１２０１、Ｖａｕｌｅ１２０２、ｍｖａ（１０分）１２０３、及びｍｖａ（３０分）１２０４を含む。ｍｖａ（１０分）１２０３には、エントリのＴｉｍｅ１２０１から１０分前の時系列データ群を用いて算出される１０分移動平均が格納される。ｍｖａ（３０分）１２０４には、エントリのＴｉｍｅ１２０１から３０分前の時系列データ群を用いて算出される３０分移動平均が格納される。登録用エントリ１２１０は、特徴量１２１１、ラベル１２１２、及び区別情報１２１３を含む。
【０１８９】
なお、ステップＳ１１０１の時点では、時系列データ格納テーブル１２００及び登録用エントリ１２１０は空である。
【０１９０】
次に、特徴量テーブル生成部２１１は、履歴情報２２０から、Ｔｉｍｅ３０１が古い順に時系列データ群を読み出し、確保されたバッファ２１７に読み出された時系列データ群を格納する（ステップＳ１１０２）。
【０１９１】
具体的には、特徴量テーブル生成部２１１は、履歴情報２２０から、バッファ２１７に格納可能な数だけ時系列データ群を読み出す。また、特徴量テーブル生成部２１１は、読み出された時系列データ群を時系列データ格納テーブル１２００に登録する。このとき、全てのエントリのｍｖａ（１０分）１２０３及びｍｖａ（３０分）１２０４は空である。
【０１９２】
なお、ステップＳ１１０８からステップＳ１１０２に戻る場合、特徴量テーブル生成部２１１は、ステップＳ１１０８において削除された時系列データの数だけ時系列データ群を履歴情報２２０から読み出す。
【０１９３】
次に、特徴量テーブル生成部２１１は、生成条件２５１に含まれる特徴量算出条件に基づいて、時系列パターンを生成し、時系列パターンの特徴量を算出する（ステップＳ１１０３）。具体的には、以下のような処理が実行される。
【０１９４】
特徴量テーブル生成部２１１は、時系列データ群から時系列ベクトルを生成する。本実施例では、始点となる時系列データのＴｉｍｅから５分の時間幅に含まれる時系列データ群の値から一つの時系列ベクトルを生成する。すなわち、五つの時系列データ群の値を成分とする時系列ベクトルが生成される。
【０１９５】
特徴量テーブル生成部２１１は、付加情報欄９３３に入力された値に基づいて、付加情報を算出する。本実施例では、１０分移動平均及び３０分移動平均が算出される。特徴量テーブル生成部２１１は、算出された１０分移動平均及び３０分移動平均を各エントリのｍｖａ（１０分）１２０３及びｍｖａ（３０分）１２０４に格納する。
【０１９６】
特徴量テーブル生成部２１１は、時系列ベクトル及び付加情報に基づいて、登録用エントリ１２１０の特徴量１２１１に値を設定する。以上がステップＳ１１０３の処理の説明である。特徴量１２１１が時系列パターンを示す値となる。
【０１９７】
次に、特徴量テーブル生成部２１１は、生成条件２５１に含まれるデータ条件に基づいて、時系列パターンのラベルを算出する（ステップＳ１１０４）。
【０１９８】
具体的には、特徴量テーブル生成部２１１は、類似判定方法欄９５１に入力された値に基づいて時系列パターンのラベルを算出し、算出されたラベルを登録用エントリ１２１０のラベル１２１２に格納する。例えば、類似判定方法欄９５１にＳＡＸ法が入力されている場合、特徴量テーブル生成部２１１は、ＳＡＸ法に基づいて、登録用エントリ１２１０に登録された時系列パターンのラベルを算出する。
【０１９９】
次に、特徴量テーブル生成部２１１は、生成条件２５１に含まれるパターン区別条件に基づいて、時系列パターンの区別情報を算出する（ステップＳ１１０５）。
【０２００】
具体的には、特徴量テーブル生成部２１１は、パターン区別条件欄９２２に入力された値に基づいて区別判定方法情報８００を参照して適用する区別方法を特定し、特定された区別方法に基づいて区別情報を算出する。
【０２０１】
例えば、第１条件欄９４２に「最小値」、第２条件欄９４３に「相対時刻」、第３条件欄９４４に「異なる」が入力された場合、特徴量テーブル生成部２１１は、ＩＤ８０１が「２」の区別方法８０３に基づいて区別情報を算出する。この場合、特徴量テーブル生成部２１１は、時系列ベクトルが成分のうち、値が最小となる相対時刻を求める。図４のＩＤ４０１が「１」の時系列パターンの場合、相対時刻が３分の成分が時系列ベクトルの最小値となるため、特徴量テーブル生成部２１１は、区別情報として「３」を算出する。また、特徴量テーブル生成部２１１は、算出された区別情報の「３」を登録用エントリ１２１０の区別情報１２１３に格納する。
【０２０２】
ステップＳ１１０１からステップＳ１１０５までの処理によって、バッファ２１７は図１２に示すような状態となる。
【０２０３】
次に、特徴量テーブル生成部２１１は、特徴量テーブル２２１にエントリを登録する（ステップＳ１１０６）。具体的には、以下のような処理が実行される。
【０２０４】
特徴量テーブル生成部２１１は、特徴量テーブル２２１にエントリを追加し、追加されたエントリのＩＤ４０１に所定の識別子を設定する。特徴量テーブル生成部２１１は、登録用エントリ１２１０の特徴量１２１１、ラベル１２１２、及び区別情報１２１３を、それぞれ、追加されたエントリの特徴量４０２、ラベル４０３、及び区別情報４０４に設定する。
【０２０５】
特徴量テーブル生成部２１１は、特徴量テーブル２２１に、追加されたエントリの他にエントリが存在するか否かを判定する。特徴量テーブル２２１に、追加されたエントリの他にエントリが存在しないと判定された場合、ステップＳ１１０６の処理を終了する。
【０２０６】
特徴量テーブル２２１に、追加されたエントリの他にエントリが存在すると判定された場合、特徴量テーブル生成部２１１は、追加されたエントリの一つ上のエントリの遷移先ＩＤ４０５に、追加されたエントリのＩＤ４０１に設定された識別情報を設定する。また、特徴量テーブル生成部２１１は、追加されたエントリの一つ上のエントリの遷移確率４０６に「１」を設定する。
【０２０７】
例えば、ＩＤ４０１が「１」のエントリが登録された特徴量テーブル２２１にエントリを追加する場合、特徴量テーブル生成部２１１は、ＩＤ４０１が「２」のエントリを追加し、ＩＤ４０１が「１」のエントリの遷移先ＩＤ４０５に「２」を設定し、また、当該エントリの遷移確率４０６に「１」を設定する。
【０２０８】
なお、特徴量テーブル生成部２１１が、遷移先ＩＤ４０５及び遷移確率４０６を設定しなくてもよい。この場合、状態遷移データ生成部２１２によって遷移先ＩＤ４０５及び遷移確率４０６が設定される。以上がステップＳ１１０６の処理の説明である。
【０２０９】
次に、特徴量テーブル生成部２１１は、履歴情報２２０に読み出し可能な時系列データが存在するか否かを判定する（ステップＳ１１０７）。
【０２１０】
履歴情報２２０に読み出し可能な時系列データが存在すると判定された場合、特徴量テーブル生成部２１１は、バッファ２１７からＴｉｍｅが最も古い時系列データを削除する（ステップＳ１１０８）。その後、特徴量テーブル生成部２１１は、ステップＳ１１０２に戻り、同様の処理を実行する。
【０２１１】
履歴情報２２０に読み出し可能な時系列データが存在しないと判定された場合、特徴量テーブル生成部２１１は、処理を終了する。
【０２１２】
以上が、生成指示が入力された場合に実行される処理の説明である。次に、再生成指示が入力された場合に実行される処理について説明する。
【０２１３】
特徴量テーブル生成部２１１は、再生成指示に含まれる生成条件２５１と前回入力された生成条件２５１との差異に基づいて、ステップＳ１１０１からステップＳ１１０８までの処理を実行する。なお、特徴量テーブル生成部２１１は、前回入力された生成条件２５１から変更された条件に関連する処理のみを再度実行すればよい。
【０２１４】
例えば、パターン区別条件欄９２２のみが変更された場合、特徴量テーブル生成部２１１は、ステップＳ１１０５の処理のみを再度実行し、実行結果を特徴量テーブル２２１に設定する。
【０２１５】
また、例えば、特徴量算出条件欄９２１の付加情報欄９３３のみが変更された場合、特徴量テーブル生成部２１１は、ステップＳ１１０３の処理のみを再度実行し、実行結果を特徴量テーブル２２１に設定する。
【０２１６】
また、例えば、状態遷移生成方法欄９２３の類似判定方法欄９５１のみが変更された場合、特徴量テーブル生成部２１１は、ステップＳ１１０４の処理のみを再度実行し、実行結果を特徴量テーブル２２１に設定する。この場合、特徴量テーブル生成部２１１は、時系列データをバッファ２１７に読み出す必要なく、特徴量テーブル２２１の特徴量４０２を参照して、ラベルを算出すればよい。
【０２１７】
図１３Ａ及び図１３Ｂは、実施例１の状態遷移データ生成部２１２が実行する処理の一例を説明するフローチャートである。
【０２１８】
状態遷移データ生成部２１２は、生成指示部２１０から呼び出される場合、以下で説明する処理を開始する。なお、状態遷移データ生成部２１２は、入力された指示によって処理内容が異なる。まず、生成指示が入力された場合について説明する。
【０２１９】
状態遷移データ生成部２１２は、インデックス２２５を初期化する（ステップＳ１３０１）。このとき、インデックス２２５は空である。
【０２２０】
次に、状態遷移データ生成部２１２は、特徴量テーブル２２１を参照し、統合可能な時系列パターン群を抽出する（ステップＳ１３０２）。時系列パターンの組合せの抽出方法は、生成条件２５１に含まれるデータ条件によって異なる。
【０２２１】
具体的には、状態遷移データ生成部２１２は、状態遷移生成方法欄９２３の類似尺度欄９５４の入力値に基づいて、類似判定方法情報８１０を参照し、適用する類似判定方法を特定する。状態遷移データ生成部２１２は、特定された類似判定方法に基づいて、統合可能な時系列パターン群を抽出する。ここで、ステップＳ１３０２における時系列パターンの抽出方法の一例について説明する。
【０２２２】
（１）種類欄９５５に「一致」が入力されている場合、以下のような時系列パターン群が抽出される。
【０２２３】
状態遷移データ生成部２１２は、類似判定方法情報８１０を参照し、ＩＤ８１１が「１」の類似判定方法を特定する。この場合、状態遷移データ生成部２１２は、特徴量テーブル２２１を参照し、ラベル４０３及び区別情報４０４が同一であるエントリを検索することによって、統合可能な時系列パターン群を抽出する。なお、ラベル４０３及び区別情報４０４が一致する時系列パターンが存在しない場合、状態遷移データ生成部２１２は、一つの時系列パターンを一つの時系列パターン群として抽出する。
【０２２４】
また、状態遷移データ生成部２１２は、抽出された時系列パターン群を識別する統合ＩＤを生成する。例えば、時系列パターン群に含まれる時系列パターンの中で、ＩＤ４０１の値が最も小さいものを統合ＩＤとして生成する方法が考えられる。
【０２２５】
（２）種類欄９５５に「距離」が入力され、第１パラメタ欄９５２に値が入力されている場合、以下のような時系列パターン群が抽出される。
【０２２６】
状態遷移データ生成部２１２は、類似判定方法情報８１０を参照し、ＩＤ８１１が「２」の類似判定方法を特定する。この場合、状態遷移データ生成部２１２は、区別情報４０４が同一の時系列パターンの距離を算出する。時系列パターンの距離としては、例えば、二つの時系列パターンの対応する相対時刻の値を表す各文字間の距離の自乗和を用いることが考えられる。状態遷移データ生成部２１２は、算出された距離が第１パラメタ欄９５２に入力された値より小さい時系列パターンの組合せを、統合可能な時系列パターン群として抽出する。区別情報４０４が同一、かつ、時系列パターン間の距離が第１パラメタ欄９５２に入力された値より小さい時系列パターンの組合せが存在しない場合、状態遷移データ生成部２１２は、一つの時系列パターンを一つの時系列パターン群として抽出する。
【０２２７】
また、状態遷移データ生成部２１２は、抽出された時系列パターン群を識別する統合ＩＤを生成する。例えば、時系列パターン群に含まれる時系列パターンの中で、ＩＤ４０１の値が最も小さいものを統合ＩＤとして生成する方法が考えられる。
【０２２８】
（３）種類欄９５５に「クラスタリング」が入力され、第１パラメタ欄９５２に値が入力されている場合、以下のような時系列パターン群が抽出される。
【０２２９】
状態遷移データ生成部２１２は、類似判定方法情報８１０を参照し、ＩＤ８１１が「３」の類似判定方法を特定する。この場合、状態遷移データ生成部２１２は、区別情報４０４が同一の時系列パターンの距離を算出する。状態遷移データ生成部２１２は、算出された距離に基づいて、第１パラメタ欄９５２に入力された値の数だけクラスタを生成する。一つのクラスタが一つの統合可能な時系列パターン群に対応する。クラスタリングは、例えば、Ｋ−ｍｅａｎｓ法又はデンドログラム法等を用いることが考えられる。
【０２３０】
また、状態遷移データ生成部２１２は、抽出された時系列パターン群を識別する統合ＩＤを生成する。例えば、時系列パターン群に含まれる時系列パターンの中で、ＩＤ４０１の値が最も小さいものを統合ＩＤとして生成する方法が考えられる。
【０２３１】
以上が時系列パターン群の抽出方法の一例の説明である。
【０２３２】
次に、状態遷移データ生成部２１２は、抽出された時系列パターン群をインデックス２２５に登録する（ステップＳ１３０３）。インデックス２２５への時系列パターン群の登録方法は、状態遷移生成方法欄９２３の類似尺度欄９５４に入力値によって異なる。ここで、ステップＳ１３０３の処理の一例について説明する。
【０２３３】
（１）種類欄９５５に「一致」が入力されている場合、以下のようにしてインデックス２２５に時系列パターン群が登録される。
【０２３４】
状態遷移データ生成部２１２は、統合可能な時系列パターン群を一つ選択し、インデックス２２５に一つのエントリを追加する。状態遷移データ生成部２１２は、追加されたエントリのラベル７０１及び区別情報７０２に、選択された時系列データ群に含まれる一つの時系列パターンのラベル４０３及び区別情報４０４を設定する。種類欄９５５が「一致」の場合、時系列パターン群に含まれる時系列パターンのラベル４０３及び区別情報４０４は全て同一であるため、どの時系列パターンのものを用いてもよい。
【０２３５】
状態遷移データ生成部２１２は、追加されたエントリの統合ＩＤ７０３にステップＳ１３０２において生成された統合ＩＤを設定する。また、状態遷移データ生成部２１２は、追加されたエントリの元ＩＤ７０４に時系列パターン群に含まれる各時系列パターンのＩＤ４０１を設定する。
【０２３６】
状態遷移データ生成部２１２は、全ての統合可能な時系列パターン群に対して前述した処理を実行する。
【０２３７】
（２）種類欄９５５に「距離」が入力され、第１パラメタ欄９５２に値が入力されている場合、以下のようにしてインデックス２２５に時系列パターン群が登録される。
【０２３８】
状態遷移データ生成部２１２は、統合可能な時系列パターン群を一つ選択する。状態遷移データ生成部２１２は、選択された時系列パターン群に含まれる時系列パターンのラベル４０３の種類の数だけインデックス２２５にエントリを追加する。すなわち、ラベル４０３間の距離が第１パラメタ欄９５２の値より小さい場合でも、ラベル４０３が完全に一致しない時系列パターンは、別々のエントリとして登録される。
【０２３９】
状態遷移データ生成部２１２は、選択された時系列パターン群のラベル４０３の中から一つのラベル４０３を選択し、エントリのラベル７０１に当該ラベル４０３を設定する。状態遷移データ生成部２１２は、エントリの区別情報７０２に選択されたラベル４０３の時系列パターン群の区別情報４０４を設定する。
【０２４０】
状態遷移データ生成部２１２は、エントリの統合ＩＤ７０３にステップＳ１３０２において生成された統合ＩＤを設定する。また、状態遷移データ生成部２１２は、エントリの元ＩＤ７０４に選択されたラベル４０３の時系列パターン群に含まれる各時系列パターンのＩＤ４０１を設定する。状態遷移データ生成部２１２は、全ての種類のラベル４０３に対して前述した処理を実行する。
【０２４１】
状態遷移データ生成部２１２は、全ての統合可能な時系列パターン群に対して前述した処理を実行する。
【０２４２】
（３）種類欄９５５に「クラスタリング」が入力され、第１パラメタ欄９５２に値が入力されている場合、以下のようにしてインデックス２２５に時系列パターン群が登録される。
【０２４３】
状態遷移データ生成部２１２は、一つのクラスタを選択する。状態遷移データ生成部２１２は、選択されたクラスタに含まれる時系列パターンのラベル４０３の種類の数だけインデックス２２５にエントリを追加する。後の処理は上記（２）と同一の処理であるため説明を省略する。
【０２４４】
以上がステップＳ１３０３の処理の一例である。以上の処理によって、図７Ａ又は図７Ｃに示すようなインデックス２２５が生成される。ステップＳ１３０１からステップＳ１３０３までの処理によって、状態遷移グラフのノードが定義される。
【０２４５】
次に、状態遷移データ生成部２１２は、インデックス２２５のエントリをラベル７０１及び区別情報７０２の順にソートする（ステップＳ１３０４）。状態遷移データ生成部２１２は、状態遷移データ２２４を初期化する（ステップＳ１３０５）。このとき、状態遷移データ２２４は空である。
【０２４６】
次に、状態遷移データ生成部２１２は、特徴量テーブル２２１から対象のエントリ（時系列パターン）を選択する（ステップＳ１３０６）。このとき、状態遷移データ生成部２１２は、選択されたエントリのＩＤ４０１及び遷移先ＩＤ４０５を取得する。以下の説明では、ＩＤ４０１に対応する時系列パターンを第１の時系列パターンと記載し、遷移先ＩＤ４０５に対応する時系列パターンを第２の時系列パターンとも記載する。
【０２４７】
次に、状態遷移データ生成部２１２は、インデックス２２５を参照し、第１の時系列パターンが統合された統合時系列パターンの統合ＩＤ７０３及び第２の時系列パターンが統合された統合時系列パターンの統合ＩＤ７０３を取得する（ステップＳ１３０７）。以下の説明では、第１の時系列パターンが統合された統合時系列パターンを第１の統合時系列パターンと記載し、第２の時系列パターンが統合された統合時系列パターンを第２の統合時系列パターンと記載する。
【０２４８】
具体的には、状態遷移データ生成部２１２は、元ＩＤ７０４に取得されたＩＤ４０１が設定されるエントリを検索し、また、元ＩＤ７０４に取得された遷移先ＩＤ４０５が設定されるエントリを検索する。状態遷移データ生成部２１２は、検索されたそれぞれのエントリの統合ＩＤ７０３を取得する。
【０２４９】
次に、状態遷移データ生成部２１２は、第１の統合時系列パターンに対応するエントリが状態遷移データ２２４に登録されているか否かを判定する（ステップＳ１３０８）。
【０２５０】
具体的には、状態遷移データ生成部２１２は、統合ＩＤ６０１が第１の統合時系列パターンの統合ＩＤ７０３と一致するエントリが存在するか否かを判定する。
【０２５１】
第１の統合時系列パターンに対応するエントリが状態遷移データ２２４に登録されていないと判定された場合、状態遷移データ生成部２１２は、状態遷移データ２２４に一つのエントリを追加する（ステップＳ１３０９）。このとき、状態遷移データ生成部２１２は、追加されたエントリの統合ＩＤ６０１に第１の統合時系列パターンの統合ＩＤ７０３を設定する。
【０２５２】
次に、状態遷移データ生成部２１２は、追加されたエントリの遷移先ＩＤ６０３及び遷移確率６０４に値を設定する（ステップＳ１３１０）。その後、状態遷移データ生成部２１２は、ステップＳ１３１３に進む。
【０２５３】
具体的には、状態遷移データ生成部２１２は、追加されたエントリの遷移先ＩＤ６０３、遷移確率６０４、消去フラグ６０５の組のうち、空欄である最も左の組の遷移先ＩＤ６０３に第２の統合時系列パターンの統合ＩＤ７０３を設定し、また、当該組の遷移確率６０４に「１」を設定する。
【０２５４】
ステップＳ１３０８において、第１の統合時系列パターンに対応するエントリが状態遷移データ２２４に登録されていると判定された場合、状態遷移データ生成部２１２は、当該エントリの遷移先ＩＤ６０３に第２の統合時系列パターンが登録されているか否かを判定する（ステップＳ１３１１）。
【０２５５】
具体的には、状態遷移データ生成部２１２は、第１の時系列パターンに対応するエントリの遷移先ＩＤ６０３に第２の統合時系列パターンの統合ＩＤ７０３が設定された組が存在するか否かを判定する。
【０２５６】
第１の統合時系列パターンに対応するエントリの遷移先ＩＤ６０３に第２の統合時系列パターンが登録されていないと判定された場合、状態遷移データ生成部２１２は、ステップＳ１３１０に進む。
【０２５７】
第１の統合時系列パターンに対応するエントリの遷移先ＩＤ６０３に第２の統合時系列パターンが登録されていると判定された場合、状態遷移データ生成部２１２は、遷移確率６０４を更新する（ステップＳ１３１２）。その後、状態遷移データ生成部２１２は、ステップＳ１３１３に進む。
【０２５８】
具体的には、状態遷移データ生成部２１２は、遷移先ＩＤ６０３に第２の統合時系列パターンの識別子が設定された組の遷移確率６０４に「１」を加算する。
【０２５９】
ステップＳ１３１３では、状態遷移データ生成部２１２は、特徴量テーブル２２１に登録された全ての時系列パターンについて処理が完了したか否かを判定する（ステップＳ１３１３）。
【０２６０】
特徴量テーブル２２１に登録された全ての時系列パターンについて処理が完了していないと判定された場合、状態遷移データ生成部２１２は、ステップＳ１３０６に戻り、同様の処理を実行する。
【０２６１】
特徴量テーブル２２１に登録された全ての時系列パターンについて処理が完了したと判定された場合、状態遷移データ生成部２１２は、各統合時系列パターンの特徴量を算出する（ステップＳ１３１４）。例えば、以下のような処理が実行される。
【０２６２】
状態遷移データ生成部２１２は、状態遷移データ２２４から対象の統合時系列パターンを選択する。状態遷移データ生成部２１２は、インデックス２２５を参照し、統合ＩＤ７０３が選択された統合時系列パターンの統合ＩＤ６０１と一致するエントリを検索する。
【０２６３】
状態遷移データ生成部２１２は、検索されたエントリの元ＩＤ７０４を参照して統合された時系列パターン群を特定し、さらに、特徴量テーブル２２１から特定された時系列パターン群の特徴量４０２を取得する。状態遷移データ生成部２１２は、取得された特徴量４０２を用いて、時系列パターン群の特徴量（ベクトルの各成分）の重心を算出する。
【０２６４】
状態遷移データ生成部２１２は、選択された統合時系列パターンに対応するエントリの特徴量６０２に算出された特徴量の重心を設定する。
【０２６５】
状態遷移データ生成部２１２は、全ての統合時系列パターンについて前述した処理を実行する。以上がステップＳ１３１４の処理の一例である。ステップＳ１３０４からステップＳ１３１４までの処理によって、状態遷移グラフのノードの状態が決定され、また、ノード間を接続する辺が決定される。
【０２６６】
次に、状態遷移データ生成部２１２は、各統合時系列パターンについて、遷移確率を算出する（ステップＳ１３１５）。
【０２６７】
具体的には、状態遷移データ生成部２１２は、状態遷移データ２２４から対象の統合時系列パターンを選択する。状態遷移データ生成部２１２は、対象の統合時系列パターンに対応するエントリの全ての組の遷移確率６０４の合計値を算出する。状態遷移データ生成部２１２は、各組の遷移確率６０４を合計値で除算し、算出された値を各組の遷移確率６０４に設定する。すなわち、各組の遷移確率６０４は、以下のような数式（１）を用いて算出される。ここで、Ｐｉは左からｉ番目の組の遷移確率６０４を示す。
【０２６８】
【数１】
2017068782.tif 000003
【０２６９】
以上の処理によって図６Ａに示すような状態遷移データ２２４が生成される。ステップＳ１３１５の処理によって、ノード間を接続する辺の重みが決定される。
【０２７０】
次に、状態遷移データ生成部２１２は、生成条件２５１に含まれるデータ条件に基づいて、消去フラグ６０５を設定する（ステップＳ１３１６）。その後、状態遷移データ生成部２１２は、処理を終了する。消去フラグ６０５の設定方法は、状態遷移生成方法欄９２３の足切り方法欄９５７に入力された値によって異なる。ここで、ステップＳ１３１６の処理の一例について説明する。
【０２７１】
（１）種類欄９５８に「確率合計値」が入力され、パラメタ欄９５９に値が入力されている場合、以下のようにして消去フラグ６０５が設定される。
【０２７２】
状態遷移データ生成部２１２は、足切り方法情報８２０を参照し、ＩＤ８２１が「１」の足切り方法を特定する。この場合、以下のような処理が実行される。
【０２７３】
状態遷移データ生成部２１２は、状態遷移データ２２４から対象の統合時系列パターンを選択し、選択された統合時系列パターンの各組の遷移確率６０４の合計値を算出する。状態遷移データ生成部２１２は、算出された合計値がパラメタ欄９５９に入力された値より大きいか否かを判定する。
【０２７４】
算出された合計値がパラメタ欄９５９に入力された値以下の場合、状態遷移データ生成部２１２は、他の統合時系列パターンを選択し、同様の処理を実行する。
【０２７５】
算出された合計値がパラメタ欄９５９に入力された値より大きい場合、状態遷移データ生成部２１２は、消去フラグ６０５が設定された組を除く組の遷移確率６０４の合計値がパラメタ欄９５９に入力された値以下になるように、任意の数の組の消去フラグ６０５に「ＯＮ」を設定する。このとき、状態遷移データ生成部２１２は、遷移確率６０４の値が小さい組から順に消去フラグ６０５に「ＯＮ」を設定する。
【０２７６】
（２）種類欄９５８に「最小確率」が入力され、パラメタ欄９５９に値が入力されている場合、以下のようにして消去フラグ６０５が設定される。
【０２７７】
状態遷移データ生成部２１２は、足切り方法情報８２０を参照し、ＩＤ８２１が「２」の足切り方法を特定する。この場合、以下のような処理が実行される。
【０２７８】
状態遷移データ生成部２１２は、状態遷移データ２２４から対象の統合時系列パターンを選択し、選択された統合時系列パターンの各組の遷移確率６０４を参照し、遷移確率６０４がパラメタ欄９５９に設定された値より小さい組を検索する。状態遷移データ生成部２１２は、遷移確率６０４がパラメタ欄９５９に入力された値より小さい組の消去フラグ６０５に「ＯＮ」を設定する。
【０２７９】
（３）種類欄９５８に「足切りｏｕｔ次数」が入力され、パラメタ欄９５９に値が入力されている場合、以下のようにして消去フラグ６０５が設定される。
【０２８０】
状態遷移データ生成部２１２は、足切り方法情報８２０を参照し、ＩＤ８２１が「３」の足切り方法を特定する。この場合、以下のような処理が実行される。
【０２８１】
状態遷移データ生成部２１２は、状態遷移データ２２４から対象の統合時系列パターンを選択し、当該統合時系列パターンの値が設定される組の数を算出する。すなわち、選択された統合時系列パターンに対応するノードの遷移先のノードの数（ｏｕｔ次数）が算出される。状態遷移データ生成部２１２は、算出されたｏｕｔ次数がパラメタ欄９５９に入力された値より大きいか否かを判定する。
【０２８２】
算出されたｏｕｔ次数がパラメタ欄９５９に入力された値以下の場合、状態遷移データ生成部２１２は、他の統合時系列パターンを選択し、同様の処理を実行する。
【０２８３】
算出されたｏｕｔ次数がパラメタ欄９５９に入力された値より大きい場合、状態遷移データ生成部２１２は、消去フラグ６０５が設定された組を除く組の数がパラメタ欄９５９に入力された値以下になるように、任意の数の組の消去フラグ６０５に「ＯＮ」を設定する。このとき、状態遷移データ生成部２１２は、遷移確率６０４の値が小さい組から順に消去フラグ６０５に「ＯＮ」を設定する。
【０２８４】
以上がステップＳ１３１６の処理の一例である。
【０２８５】
以上が、生成指示が入力された場合に実行される処理の説明である。次に、再生成指示が入力された場合に実行される処理について説明する。
【０２８６】
状態遷移データ生成部２１２は、再生成指示に含まれる生成条件２５１と前回入力された生成条件２５１との差異に基づいて、ステップＳ１３０１からステップＳ１３１６までの処理を実行する。なお、状態遷移データ生成部２１２は、前回入力された生成条件２５１から変更された条件に関連する処理のみを再度実行すればよい。
【０２８７】
特徴量算出条件欄９２１、パターン区別条件欄９２２、類似判定方法欄９５１、及び類似尺度欄９５４の少なくともいずれかが変更されている場合、状態遷移データ生成部２１２は、ステップＳ１３０１からステップＳ１３１６の処理を全て実行する。
【０２８８】
足切り方法欄９５７のみが変更されている場合、状態遷移データ生成部２１２は、ステップＳ１３１５、ステップＳ１３１６の処理のみを再度実行する。
【０２８９】
図１４及び図１５は、実施例１の予測部２１３が実行する処理の一例を説明するフローチャートである。
【０２９０】
予測部２１３は、生成指示部２１０から生成条件２５１が入力された場合、図１４に示す処理を開始する。
【０２９１】
予測部２１３は、生成条件２５１を設定し、また、生成条件２５１に含まれる特徴量算出条件に基づいて主記憶装置２０１にバッファ２１７を確保する（ステップＳ１４０１）。ステップＳ１４０１の処理はステップＳ１１０１と同一の処理である。
【０２９２】
次に、予測部２１３は、データソース１１０から時系列データを受信したか否かを判定する（ステップＳ１４０２）。
【０２９３】
データソース１１０から時系列データを受信していないと判定された場合、予測部２１３は、時系列データが受信されるまで、待ち状態となる。
【０２９４】
データソース１１０から時系列データを受信したと判定された場合、予測部２１３は、バッファ２１７に受信した時系列データを格納する（ステップＳ１４０３）。
【０２９５】
具体的には、予測部２１３は、時系列データ格納テーブル１２００に受信した時系列データを登録する。なお、時系列データ格納テーブル１２００に登録可能な時系列データの数だけ時系列データが登録されている場合、予測部２１３は、Ｔｉｍｅ１２０１が最も古い時系列データを時系列データ格納テーブル１２００から削除した後、受信した時系列データを時系列データ格納テーブル１２００に登録する。
【０２９６】
次に、予測部２１３は、生成条件２５１に含まれる特徴量算出条件に基づいて、時系列パターンを生成し、時系列パターンの特徴量を算出する（ステップＳ１４０４）。ステップＳ１４０４の処理はステップＳ１１０３の処理と同一である。なお、登録用エントリ１２１０には、受信した時系列データに基づいて生成された時系列パターンが登録される。
【０２９７】
次に、予測部２１３は、時系列パターンのラベルを算出する（ステップＳ１４０５）。予測部２１３は、時系列パターンの区別情報を算出する（ステップＳ１４０６）。その後、予測部２１３は、ステップＳ１４０２に戻り、次の時系列パターンを受信するまで待ち状態となる。ステップＳ１４０５の処理はステップＳ１１０４の処理と同一であり、また、ステップＳ１４０６の処理はステップＳ１１０５の処理と同一である。
【０２９８】
なお、生成指示部２１０から新たに生成条件２５１が入力された場合、予測部２１３は、バッファ２１７を削除した後、再度ステップＳ１４０１の処理から開始する。
【０２９９】
予測部２１３は、クライアント計算機１０２から予測要求２６１を受信した場合、図１５に示す処理を開始する。なお、予測部２１３は、周期的に図１５に示す処理を実行してもよい。
【０３００】
予測部２１３は、現在、バッファ２１７に格納される時系列パターンのラベル及び区別情報を取得する（ステップＳ１５０１）。
【０３０１】
具体的には、予測部２１３は、バッファ２１７の登録用エントリ１２１０のラベル１２１２及び区別情報１２１３を取得する。
【０３０２】
次に、予測部２１３は、取得されたラベル及び区別情報に基づいてインデックス２１６を参照し、現在の時系列パターンに一致又は類似する統合時系列パターンの統合ＩＤを取得する（ステップＳ１５０２）。
【０３０３】
具体的には、予測部２１３は、区別情報７０２が現在の時系列パターンの区別情報に一致し、かつ、ラベル７０１が現在の時系列パターンのラベルと一致又は類似するエントリを検索する。予測部２１３は、検索されたエントリの統合ＩＤ７０３を取得する。
【０３０４】
次に、予測部２１３は、取得された統合ＩＤに基づいて状態遷移データ２１５を参照し、遷移先の統合時系列パターンの特徴量及び遷移確率を取得する（ステップＳ１５０３）。具体的には、以下のような処理が実行される。
【０３０５】
予測部２１３は、統合ＩＤ６０１が取得された統合ＩＤ７０３に一致するエントリを検索する。予測部２１３は、検索されたエントリの各組の遷移先ＩＤ６０３及び遷移確率６０４を取得する。
【０３０６】
予測部２１３は、状態遷移データ２１５を参照し、統合ＩＤ６０１が取得された遷移先ＩＤ６０３と一致するエントリを検索する。予測部２１３は、検索されたエントリの特徴量６０２を取得する。以上がステップＳ１５０３の処理の説明である。
【０３０７】
次に、予測部２１３は、検索された統合時系列パターンに関する情報を生成し、当該情報をクライアント計算機１０２に応答する（ステップＳ１５０４）。その後、予測部２１３は、処理を終了する。
【０３０８】
予測パターンの検索結果に含める情報は、様々な形態が考えられる。例えば、遷移確率が最も大きい遷移先の統合時系列パターンの特徴量及び遷移確率を含む情報が考えられる。また、遷移確率が大きい遷移先の所定数又は全ての統合時系列パターンの特徴量及び遷移確率含む情報が考えられる。
【０３０９】
なお、予測パターンの検索結果に含める情報には、現在の時系列パターンと一致又は類似する統合時系列パターンの情報が含まれてもよい。
【０３１０】
なお、予測パターンの検索結果に含める情報は、遷移先の統合時系列パターンの波形を表すデータでもよい。
【０３１１】
なお、統合時系列パターンの特徴量は、時系列ベクトル４１１に該当する部分のみを出力するようにしてもよい。
【０３１２】
本実施例では、状態遷移データ生成部２１２は、付加情報を特徴量に含めることによって、成分数の少ない時系列パターンを生成する。また、状態遷移データ生成部２１２は、ラベル及び区別情報に基づいて、時系列パターンを統合する。
【０３１３】
時系列パターンの特徴量の成分数が少ないとラベルの長さは短い。そのため、ラベルのデータサイズが小さく、また、ラベルの種類も少ない。したがって、インデックス２１６のデータサイズは十分小さい。また、インデックス２１６のエントリ数は少ないため、類似する統合時系列パターンの検索時間が短くなる。
【０３１４】
また、ラベル、及びラベル以外の指標に基づいて、類似する時系列パターンを検索できるため、予測精度を高めることができる。さらに、足切り方法に基づいて、遷移先の統合時系列パターンの数を削減されるため、予測パターンを検索時間が短くなる。
【０３１５】
このように、予測部２１３は、インデックス２１６を用いることによって、統合時系列パターンの特徴量を参照することなく、現在の時系列パターンに一致又は類似する統合時系列パターンの検索、及び予測パターンの検索を高速に行うことができる。
【０３１６】
実施例１によれば、時系列データ処理装置１００は、入力された生成条件２５１に基づいて時系列パターンを統合することによって、リアルタイムな事象の動向の予測が可能な状態遷移データ２１５及びインデックス２１６を生成できる。
【０３１７】
より具体的には、時系列データ処理装置１００は、生成条件２５１に基づいて、過去のデータの遷移状態を評価する指標を特徴量に含む時系列パターンを生成する。これによって、時系列パターンのデータサイズを小さくし、かつ、予測精度を高めることができる。
【０３１８】
また、時系列データ処理装置１００は、生成条件２５１に基づいて、複数の時系列パターンを統合し、ラベルと統合時系列パターンの識別子とを対応付けたインデックス２１６を生成する。これによって、ラベルに基づいて現在の時系列パターンと類似する時系列パターンを高速に検索できる。
【０３１９】
また、時系列データ処理装置１００は、統合時系列パターン間の遷移関係及び遷移確率を示す状態遷移データ２１５を生成する。これによって、現在の時系列パターンが遷移する統合時系列パターンを高速に検索できる。
【０３２０】
なお、時系列データ処理装置１００、管理計算機１０１、及びクライアント計算機１０２は、汎用的な計算機を用いて実現してもよい。例えば、時系列データ処理装置１００の機能を実現する時系列データ処理部を有する計算機によって実現できる。
【実施例２】
【０３２１】
実施例２では、時系列データ処理装置１００が、動的に生成条件２５１を変更して、要求された性能を満たすように状態遷移データ２１５及びインデックス２１６を生成する。以下、実施例１との差異を中心に、実施例２について説明する。
【０３２２】
実施例２の計算機システムの構成は実施例１の計算機システムと同一の構成であるため説明を省略する。実施例２の装置構成は、実施例１の装置構成と同一であるため説明を省略する。また、実施例２の時系列データ処理装置１００及びストレージ装置１０４に格納されるデータは、実施例１のデータと同一であるため説明を省略する。
【０３２３】
実施例２では、表示部２１４によって表示される設定画面９００の内容が一部異なる。図１６は、実施例２の表示部２１４によって表示される設定画面９００の一例を示す図である。
【０３２４】
実施例２のシステム環境欄９０１、及び評価欄９０３は実施例１のものと同一である。実施例２では、生成指定欄９０２の内容が一部異なる。より具体的には、実施例２の生成指定欄９０２は、特徴量算出条件欄９２１、及び生成指定欄９０２の内容が一部異なる。
【０３２５】
実施例２の特徴量算出条件欄９２１は、開始時間刻み欄９３１、及び区間幅欄９３２のそれぞれに、サイズ調整欄１６０１、及び時間調整欄１６０２が含まれる点が実施例１の特徴量算出条件欄９２１と異なる。
【０３２６】
サイズ調整欄１６０１は、状態遷移データ２１５及びインデックス２１６のデータサイズを調整するための調整パラメタを入力する欄である。また、時間調整欄１６０２は、予測パターンの応答時間を調整するための調整パラメタを入力する欄である。例えば、サイズ調整欄１６０１及び時間調整欄１６０２には、優先順位、上限値等のパラメタ、及び調整幅等を示す値が入力される。
【０３２７】
実施例２の状態遷移生成方法欄９２３は、第１パラメタ欄９５２、第２パラメタ欄９５３、パラメタ欄９５６、及びパラメタ欄９５９のそれぞれに、サイズ調整欄１６０１及び時間調整欄１６０２を含む。
【０３２８】
また、実施例２の生成指定欄９０２は、サイズ調整ボタン１６０５、回数欄１６０６、時間調整ボタン１６０７、及び回数欄１６０８を含む。
【０３２９】
サイズ調整ボタン１６０５は、サイズ調整欄１６０１に入力された調整パラメタに基づいて、データサイズが小さくなるように、状態遷移データ２１５及びインデックス２１６の再生成を行うための操作ボタンである。回数欄１６０６は、前述した再生成を行う回数を入力する欄である。
【０３３０】
サイズ調整ボタン１６０５が操作された場合、生成条件２５１及び各項目のサイズ調整欄１６０１に入力された調整パラメタ、及び回数欄１６０６に入力された回数を含む再生成指示が時系列データ処理装置１００に送信される。この場合、時系列データ処理装置１００は、優先順位が最も高く設定された項目のサイズ調整欄１６０１に入力された調整パラメタを用いて、状態遷移データ２１５及びインデックス２１６を再度生成する。指定されたデータサイズの条件を満たさない場合、時系列データ処理装置１００は、２番目に優先順位が高い項目のサイズ調整欄１６０１に入力された調整パラメタを用いて、状態遷移データ２１５及びインデックス２１６を再度生成する。時系列データ処理装置１００は、回数欄１６０６に入力された回数だけ、前述した再生成を行うことができる。
【０３３１】
なお、前述した再生成の手順は一例であって、例えば、時系列データ処理装置１００は、複数の項目のサイズ調整欄１６０１の組合せを生成し、一つの組合せを用いて状態遷移データ２１５及びインデックス２１６を再度生成してもよい。例えば、時系列データ処理装置１００は、優先順位が高い項目のパラメタを、調整幅に基づいて１回だけ調整し、状態遷移データ２１５及びインデックス２１６を再度生成する。動作条件を満たさない場合、時系列データ処理装置１００は、次に優先順位が高い項目のパラメタについて同様の処理を実行する。
【０３３２】
時間調整ボタン１６０７は、時間調整欄１６０２に入力された調整パラメタに基づいて、予測パターンの検索時間（応答時間）が短くなるように、状態遷移データ２１５及びインデックス２１６の再生成を行うための操作ボタンである。回数欄１６０８は、前述した再生成を行う回数を設定する欄である。
【０３３３】
時間調整ボタン１６０７が操作された場合、生成条件２５１及び各項目の時間調整欄１６０２に入力された調整パラメタ、及び回数欄１６０８に入力された回数を含む再生成指示が時系列データ処理装置１００に送信される。この場合、時系列データ処理装置１００は、優先順位が最も高く設定された項目の時間調整欄１６０２に入力された調整パラメタを用いて、状態遷移データ２１５及びインデックス２１６を再度生成する。指定された応答時間の条件を満たさない場合、時系列データ処理装置１００は、２番目に優先順位が高い項目の時間調整欄１６０２に入力された調整パラメタを用いて、状態遷移データ２１５及びインデックス２１６を再度生成する。時系列データ処理装置１００は、回数欄１６０８に入力された回数だけ、前述した再生成を行うことができる。
【０３３４】
実施例２では、システム管理者は、動的に、状態遷移データ２１５及びインデックス２１６を生成する場合、少なくとも一つの項目のサイズ調整欄１６０１及び時間調整欄１６０２に値を入力する。また、システム管理者は、回数欄１６０６に値を入力し、サイズ調整ボタン１６０５を操作し、又は、回数欄１６０８に値を入力し、時間調整ボタン１６０７を操作する。なお、全ての項目のサイズ調整欄１６０１及び時間調整欄１６０２に値を入力する必要はない。
【０３３５】
実施例２では、生成指示部２１０が実行する処理が一部異なる。図１７Ａ、図１７Ｂ及び図１７Ｃは、実施例２の生成指示部２１０が実行する処理の一例を説明するフローチャートである。以下、実施例１の処理との差異を中心に説明する。
【０３３６】
ステップＳ１００２において、受信したメッセージが再生成指示であると判定された場合、生成指示部２１０は、再生成指示に調整パラメタが含まれるか否かを判定する（ステップＳ１７０１）。再生成指示に調整パラメタが含まれないと判定された場合、生成指示部２１０は、ステップＳ１００６に進む。
【０３３７】
再生成指示に調整パラメタが含まれると判定された場合、生成指示部２１０は、試行回数を示す変数ｋに初期値「１」を設定する（ステップＳ１７０２）。次に、生成指示部２１０は、調整パラメタが設定される項目のなかに、選択可能な項目が存在するか否かを判定する（ステップＳ１７０３）。具体的には、生成指示部２１０は、上限値まで調整されていない項目、又は、下限値まで調整されていない項目が存在するか否かを判定する。
【０３３８】
ステップＳ１７０３において、選択可能な項目が存在しないと判定された場合、生成指示部２１０は、これまでに算出された評価結果２５３を管理計算機１０１に送信し、その後、処理を終了する。
【０３３９】
ステップＳ１７０３において、選択可能な項目が存在すると判定された場合、生成指示部２１０は、調整する項目を選択する（ステップＳ１７０４）。ここでは、優先順位に基づいて一つの項目が選択されるものとする。より具体的には、選択可能な項目の中から優先順位の高い順に項目が選択される。
【０３４０】
次に、生成指示部２１０は、選択された項目に設定される調整パラメタに基づいて、生成条件２５１を変更できるか否かをする（ステップＳ１７０５）。
【０３４１】
具体的には、サイズ調整欄１６０１に入力された調整パラメタが設定された項目が選択された場合、生成指示部２１０は、調整パラメタにしたがって当該項目の値を変更できるか否かを判定する。また、時間調整欄１６０２に入力された調整パラメタが設定された項目が選択された場合、生成指示部２１０は、調整パラメタにしたがって当該項目の値を変更できるか否かを判定する。
【０３４２】
例えば、調整パラメタとして正の値又は負の値の調整幅が入力された場合、生成指示部２１０は、当該項目の値を前回使用した値に調整パラメタを加算することによって変更する。生成指示部２１０は、変更後の値が調整パラメタとして指定された上限値より大きい場合、又は、変更後の値が調整パラメタとして指定された下限値より小さい場合、生成条件２５１を変更できないと判定する。
【０３４３】
ステップＳ１７０５において、選択された項目に設定される調整パラメタに基づいて、生成条件２５１を変更できないと判定された場合、生成指示部２１０は、ステップＳ１７０３に戻る。このとき、生成指示部２１０は、選択された項目を選択可能な項目から除外する。
【０３４４】
ステップＳ１７０５において、選択された項目に設定される調整パラメタに基づいて、生成条件２５１を変更できると判定された場合、生成指示部２１０は、選択された項目に設定された調整パラメタに基づいて、生成条件２５１を変更する（ステップＳ１７０６）。例えば、生成指示部２１０は、選択された項目の値を、前回使用した値に調整パラメタを加算することによって変更する。
【０３４５】
次に、生成指示部２１０は、特徴量テーブル生成部２１１を呼び出す（ステップＳ１７０７）。生成指示部２１０は、特徴量テーブル生成部２１１から処理の完了通知を受け付けた場合、状態遷移データ生成部２１２を呼び出す（ステップＳ１７０８）。
【０３４６】
このとき、生成指示部２１０は、特徴量テーブル生成部２１１及び状態遷移データ生成部２１２のそれぞれに、変更された生成条件２５１を含む生成指示を入力する。
【０３４７】
次に、生成指示部２１０は、状態遷移データ生成部２１２から完了通知を受け付けた場合、評価結果２５３を生成し（ステップＳ１７０９）、動作条件を満たすか否を判定する（ステップＳ１７１０）。例えば、以下のような処理が考えられる。
【０３４８】
再生成指示にデータサイズに関する調整パラメタが含まれている場合、生成指示部２１０は、状態遷移データ２１５及びインデックス２１６のデータサイズの合計値が要求データサイズ欄９６１に入力された値より小さいか否かを判定する。当該合計値が要求データサイズ欄９６１に入力された値より小さい場合、生成指示部２１０は、動作条件を満たすと判定する。再生成指示に応答時間に関する調整パラメタが含まれる場合、生成指示部２１０は、予測パターンの推定最大応答時間が要求最大応答時間欄９６２に入力された値より小さいか否かを判定する。当該時間が要求最大応答時間欄９６２に入力された値より小さい場合、生成指示部２１０は、動作条件を満たすと判定する。
【０３４９】
ステップＳ１７１０において、動作条件を満たすと判定された場合、生成指示部２１０は、生成された評価結果２５３を管理計算機１０１に送信し、その後、処理を終了する。
【０３５０】
ステップＳ１７１０において、動作条件を満たさないと判定された場合、生成指示部２１０は、変数ｋの値が回数欄１６０６、１６０８に入力された値（ｋｍａｘ）以上であるか否かを判定する（ステップＳ１７１１）。
【０３５１】
変数ｋの値がｋｍａｘ以上であると判定された場合、生成指示部２１０は、生成された評価結果２５３を管理計算機１０１に送信し、その後、処理を終了する。
【０３５２】
変数ｋの値がｋｍａｘより小さいと判定された場合、生成指示部２１０は、変数ｋの値に「１」を加算し（ステップＳ１７１２）、その後、ステップＳ１７０３に戻る。
【０３５３】
なお、回数欄１６０６、１６０８に無限大を示す値が入力された場合、ステップＳ１７０２、ステップＳ１７１１、及びステップＳ１７１２の処理を省略することができる。この場合、動作条件が満たされるか（ステップＳ１７１０がＹＥＳ）、又は、選択可能な項目が存在しなくなるまで（ステップＳ１７０３がＮＯ）、処理が繰り返し実行されることになる。
【０３５４】
実施例２の特徴量テーブル生成部２１１及び状態遷移データ生成部２１２が実行する処理は実施例１の処理と同一であるため説明を省略する。
【０３５５】
実施例２によれば、時系列データ処理装置１００が、自動的に、動作条件が満たされる状態遷移データ２１５及びインデックス２１６を生成できる。これによって、システム管理者の操作負担を低減することができる。
【０３５６】
本実施例では、状態遷移データ２１５及びインデックス２１６を主記憶装置２０１に格納する例を説明したが、本発明はこれに限定されない。例えば、プロセッサ２００が大容量のキャッシュメモリを有する場合、当該キャッシュメモリに格納するためのデータサイズ等を指定することもできる。
【０３５７】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
【０３５８】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるＣＰＵが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。
【０３５９】
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、Ｃ／Ｃ＋＋、ｐｅｒｌ、Ｓｈｅｌｌ、ＰＨＰ、Ｊａｖａ（登録商標）等の広範囲のプログラム又はスクリプト言語で実装できる。
【０３６０】
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はＣＤ−ＲＷ、ＣＤ−Ｒ等の記憶媒体に格納し、コンピュータが備えるＣＰＵが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
【０３６１】
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
【符号の説明】
【０３６２】
１００  時系列データ処理装置
１０１  管理計算機
１０２  クライアント計算機
１０４  ストレージ装置
１１０  データソース
２１０  生成指示部
２１１  特徴量テーブル生成部
２１２  状態遷移データ生成部
２１３  予測部
２１４  表示部
２１５、２２４  状態遷移データ
２１６、２２５  インデックス
２１７  バッファ
２２０  履歴情報
２２１  特徴量テーブル
２２２  システム環境情報
２２３  判定方法管理情報
【図１】
2017068782.tif 000004
【図２】
2017068782.tif 000005
【図３】
2017068782.tif 000006
【図４】
2017068782.tif 000007
【図５】
2017068782.tif 000008
【図６Ａ】
2017068782.tif 000009
【図６Ｂ】
2017068782.tif 000010
【図７Ａ】
2017068782.tif 000011
【図７Ｂ】
2017068782.tif 000012
【図７Ｃ】
2017068782.tif 000013
【図７Ｄ】
2017068782.tif 000014
【図８Ａ】
2017068782.tif 000015
【図８Ｂ】
2017068782.tif 000016
【図８Ｃ】
2017068782.tif 000017
【図９】
2017068782.tif 000018
【図１０Ａ】
2017068782.tif 000019
【図１０Ｂ】
2017068782.tif 000020
【図１１】
2017068782.tif 000021
【図１２】
2017068782.tif 000022
【図１３Ａ】
2017068782.tif 000023
【図１３Ｂ】
2017068782.tif 000024
【図１４】
2017068782.tif 000025
【図１５】
2017068782.tif 000026
【図１６】
2017068782.tif 000027
【図１７Ａ】
2017068782.tif 000028
【図１７Ｂ】
2017068782.tif 000029
【図１７Ｃ】
2017068782.tif 000030