(57)【要約】  本発明によるデータ要約システムは、逐次発生するデータを取得した逐次データを関数を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータを、前記逐次データの要約結果として求めるデータ要約手段を備え、前記データ要約手段は、データを取得すると、該取得したデータに基づいて前記近似に用いる関数を更新することを特徴とする。
2010131417.tif 000002
【特許請求の範囲】
【請求項１】
逐次発生するデータを取得した逐次データを関数を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータを、前記逐次データの要約結果として求めるデータ要約手段を備え、
前記データ要約手段は、データを取得すると、該取得したデータに基づいて前記近似に用いる関数を更新する
ことを特徴とするデータ要約システム。
【請求項２】
データ要約手段は、
関数パラメータとして、逐次データの近似に用いる関数の関数式を特定可能な関数式特定パラメータを求め、
新たなデータを取得すると、該新たに取得したデータの値と前記関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の切り替え判定用閾値と、の比較に応じて、前記逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定し、
新たな関数に切り替えると判定した場合に、前記関数式特定パラメータを新たに算出することによって、前記逐次データの近似に用いる関数を新たな関数に切り替える
請求項１記載のデータ要約システム。
【請求項３】
データ要約手段は、
関数パラメータとして、逐次データの近似に用いる関数の定義域を求め、
新たなデータを取得すると、該新たに取得したデータの値と前記関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の切り替え判定用閾値と、の比較に応じて、前記逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定し、
新たな関数に切り替えないと判定した場合に、前記逐次データの近似に用いている関数の定義域を拡大する
請求項２記載のデータ要約システム。
【請求項４】
データ要約手段は、
関数パラメータとして、逐次データの近似に用いる関数の関数式を特定可能な関数式特定パラメータと定義域とを求め、
新たなデータを取得すると、該新たに取得したデータの値と前記関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の補正判定用閾値と、の比較に応じて、前記逐次データの近似に用いている関数を補正するか否かを判定し、
補正すると判定した場合に、前記新たに取得したデータと、前記逐次データの近似に用いている関数の定義域に含まれるデータとに基づいて、前記関数式特定パラメータを算出し直すことによって、前記逐次データの近似に用いている関数を補正する
請求項２又は請求項３記載のデータ要約システム。
【請求項５】
逐次データを一時記憶するデータ一時記憶手段と、
前記データ一時記憶手段に記憶されているデータが前記逐次データの近似に用いている関数の定義域に含まれるデータとなるように制御するデータ一時記憶制御手段とを備え、
データ要約手段は、前記データ一時記憶手段に記憶されているデータを用いて、前記逐次データの近似に用いている関数を補正する
請求項４記載のデータ要約システム。
【請求項６】
ユーザの選択操作に従って、逐次データを要約する際のデータ要約の精度を選択し、該選択したデータ要約の精度に応じて、前記逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定する関数切り替え判定用閾値設定手段を備えた
請求項２から請求項５のうちのいずれか１項に記載のデータ要約システム。
【請求項７】
逐次データを統計処理する監視手段と、
前記監視手段が統計処理した結果に基づく前記逐次データの傾向に応じて、前記逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定する関数切り替え判定用閾値自動設定手段とを備えた
請求項２から請求項５のうちのいずれか１項に記載のデータ要約システム。
【請求項８】
データ要約手段が求めた関数パラメータを記憶する関数パラメータ記憶手段を備え、
前記関数パラメータ記憶手段は、関数パラメータとして、少なくとも逐次データの近似に用いる関数の定義域を記憶し、
監視手段は、前記関数パラメータ記憶手段に記憶されている関数の定義域の長さを統計処理する
請求項７記載のデータ要約システム。
【請求項９】
逐次データの要約処理に用いる情報処理装置のリソースの空き容量を監視するリソース監視手段と、
前記情報処理装置のリソースの空き容量に応じて、前記逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定するリソース用関数切り替え判定用閾値自動設定手段とを備えた
請求項２から請求項５のうちのいずれか１項に記載のデータ要約システム。
【請求項１０】
所定の解析処理を行う解析手段と、
データ要約手段が求めた関数パラメータに基づいて、前記逐次データを再現した再現データを求める再現データ算出手段とを備え、
前記解析手段は、前記再現データ算出手段が求めた前記再現データに基づいて解析処理を行う
請求項１から請求項９のうちのいずれか１項に記載のデータ要約システム。
【請求項１１】
逐次発生するデータを取得した逐次データを関数を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータを、前記逐次データの要約結果として求めるデータ要約ステップを含み、
前記データ要約ステップにおいて、データを取得すると、該取得したデータに基づいて前記近似に用いる関数を更新する
ことを特徴とするデータ要約方法。
【請求項１２】
データ要約ステップにおいて、
関数パラメータとして、逐次データの近似に用いる関数の関数式を特定可能な関数式特定パラメータを求め、
新たなデータを取得すると、該新たに取得したデータの値と前記関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の切り替え判定用閾値と、の比較に応じて、前記逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定し、
新たな関数に切り替えると判定した場合に、前記関数式特定パラメータを新たに算出することによって、前記逐次データの近似に用いる関数を新たな関数に切り替える
請求項１１記載のデータ要約方法。
【請求項１３】
コンピュータに、
逐次発生するデータを取得した逐次データを関数を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータを、前記逐次データの要約結果として求めるデータ要約処理を実行させ、
前記データ要約処理において、データを取得すると、該取得したデータに基づいて前記近似に用いる関数を更新する処理を
実行させるためのデータ要約プログラム。
【請求項１４】
コンピュータに、
データ要約処理において、
関数パラメータとして、逐次データの近似に用いる関数の関数式を特定可能な関数式特定パラメータを求める処理と、
新たなデータを取得すると、該新たに取得したデータの値と前記関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の切り替え判定用閾値と、の比較に応じて、前記逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定する処理と、
新たな関数に切り替えると判定した場合に、前記関数式特定パラメータを新たに算出することによって、前記逐次データの近似に用いる関数を新たな関数に切り替える処理とを実行させる
請求項１３記載のデータ要約プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、逐次的に発生するデータを要約して情報量を削減するデータ要約システム、データ要約方法、及びデータ要約プログラムに関する。
【背景技術】
【０００２】
逐次的に発生するデータを圧縮して情報量を削減する関連技術として、例えば、特許文献１には、データの特徴や要求された条件に応じて圧縮方法を動的に選択しながらデータの圧縮を行う計測データ圧縮装置が記載されている。図２９は、特許文献１に記載された計測データ圧縮装置の構成例を示すブロック図である。図２９に示すように、特許文献１に記載された計測データ圧縮装置は、データの特徴を抽出する特徴抽出手段と、圧縮結果を推定する圧縮結果推定手段と、圧縮されたデータに対する条件を設定する条件設定手段とを備える。特許文献１に記載された計測データ圧縮装置は、特徴抽出手段で抽出されたデータの特徴から圧縮方法を選択し、圧縮結果推定手段で圧縮結果を推定する。そして、推定された圧縮結果が、条件設定手段で設定された条件を満たすか否かを判断し、条件を満たさない場合には別の圧縮方法を選択して圧縮方法を変更する。そのように構成することによって、ある程度、圧縮結果が希望する条件を満たすように圧縮処理を行うことができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１６３７７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１に記載された関連技術では、逐次的に発生するデータを計測データ蓄積部に蓄積してからまとめてデータの圧縮処理を行う。そのため、逐次的に発生するデータを逐次的に要約し圧縮することができないという問題がある。従って、データが一定量蓄積されるまでの間にはデータを圧縮することはできず、圧縮されたデータを用いて解析を行う場合に解析が始まるまでにライムラグが生じてしまい、リアルタイムな解析を行うことができない。【０００５】
そこで、本発明は、逐次的に発生するデータを逐次的に要約することができ、解析が始まるまでのタイムラグをなくし、リアルタイムな解析を行うことができるデータ要約システム、データ要約方法、及びデータ要約プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明によるデータ要約システムは、逐次発生するデータを取得した逐次データを関数を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータを、逐次データの要約結果として求めるデータ要約手段を備え、データ要約手段は、データを取得すると、該取得したデータに基づいて近似に用いる関数を更新することを特徴とする。【０００７】
本発明によるデータ要約方法は、逐次発生するデータを取得した逐次データを関数を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータを、逐次データの要約結果として求めるデータ要約ステップを含み、データ要約ステップにおいて、データを取得すると、該取得したデータに基づいて近似に用いる関数を更新することを特徴とする。【０００８】
本発明によるデータ要約プログラムは、コンピュータに、逐次発生するデータを取得した逐次データを関数を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータを、逐次データの要約結果として求めるデータ要約処理を実行させ、データ要約処理において、データを取得すると、該取得したデータに基づいて近似に用いる関数を更新する処理を実行させるためのものである。
【発明の効果】
【０００９】
本発明によれば、逐次的に発生するデータを逐次的に要約することができ、解析が始まるまでのタイムラグをなくし、リアルタイムな解析を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】本発明によるデータ要約システムの構成例を示すブロック図である。
【図２】データ発生手段から出力されるデータの一例を示す説明図である。
【図３】データ発生手段から出力されるデータを、横軸を時間とし縦軸を値としてグラフにプロットした場合の例を示す説明図である。
【図４】データ発生手段から出力されるデータを１次関数を用いて近似した場合の例を示す説明図である。
【図５】関数切り替え手段が関数の切り替えを行う一例を示した説明図である。
【図６】実値と計算値との差が関数切り替えパラメータより小さいと判断した場合の例を示す説明図である。
【図７】実値と計算値との差が関数切り替えパラメータ以上であると判断した場合の例を示す説明図である。
【図８】関数パラメータ記憶手段が記憶している関数パラメータの一例を示す説明図である。
【図９】解析手段が関数パラメータ記憶手段に出力する要求と、関数パラメータ記憶手段が要求に応じて回答するデータとの一例を示す説明図である。
【図１０】関数パラメータ記憶手段がデータを再現して回答する一例を示した説明図である。
【図１１】データ要約システムが実行する処理の例を示すフローチャートである。
【図１２】データ要約のステップにおいて、データを要約する処理の例を示すフローチャートである。
【図１３】第２の実施形態におけるデータ要約システムの構成例を示すブロック図である。
【図１４】データ一時記憶手段が記憶しているデータの一例を示す説明図である。
【図１５】データ一時記憶管理手段によって、データ一時記憶手段に記憶されているデータを管理する例を示す説明図である。
【図１６】関数補正手段が関数の補正を行っている例を示す説明図である。
【図１７】第２の実施形態におけるデータ要約システムが実行する処理の例を示すフローチャートである。
【図１８】第２の実施形態におけるデータ要約のステップにおいて、データを要約する処理の例を示すフローチャートである。
【図１９】第３の実施形態におけるデータ要約システムの構成例を示すブロック図である。
【図２０】関数切り替えルール設定手段が記憶しているテーブルの一例を示す説明図である。
【図２１】第４の実施形態におけるデータ要約システムの構成例を示すブロック図である。
【図２２】関数パラメータ監視手段が監視する関数パラメータと監視結果との一例を示す説明図である。
【図２３】第４の実施形態におけるデータ要約システムが実行する処理の例を示すフローチャートである。
【図２４】第４の実施形態における関数切り替えパラメータ自動設定のステップの処理例を示すフローチャートである。
【図２５】第５の実施形態におけるデータ要約システムの構成例を示すブロック図である。
【図２６】計算機リソース監視手段が監視した現在の監視結果と、関数切り替えルール自動設定手段が記憶している前回の監視結果とを示す説明図である。
【図２７】第５の実施形態における関数切り替えパラメータ自動設定のステップの処理例を示すフローチャートである。
【図２８】データ要約システムの最小の構成例を示すブロック図である。
【図２９】特許文献１に記載された計測データ圧縮装置の構成例を示すブロック図である。
【発明を実施するための形態】
【００１１】
実施形態１．
以下、本発明の第１の実施形態を図面を参照して説明する。図１は、本発明によるデータ要約システムの構成例を示すブロック図である。図１に示すように、データ要約システムは、データ発生手段１１と、関数切り替え手段２１と、関数切り替えルール記憶手段２２と、関数パラメータ記憶手段２３と、解析手段３１とを備える。
【００１２】
なお、本実施形態において、データ要約システムは、例えば、データ発生源（逐次的にログデータを発生するＷｅｂサーバ、温度センサや湿度センサ）と、データ発生源が出力するデータを解析する解析サーバとによって実現される。また、これらのＷｅｂサーバや解析サーバは、具体的には、プログラムに従って動作するパーソナルコンピュータ等の情報処理装置によって実現される。また、解析サーバは、１つのデータ発生源に限らず、複数のデータ発生源が出力するデータを解析するものであってもよい。
【００１３】
本実施形態では、データ要約システムは、データ発生源が逐次的に発生するデータを要約する処理を行う。なお、本実施形態において、「データを要約する」とは、後述するように、逐次的に発生するデータの値を近似する関数を特定するために必要なパラメータ（以下、関数パラメータという）を求めることである。
【００１４】
なお、本実施形態において、データ要約システムは、例えば、Ｗｅｂデータが発生するログデータに基づいて、Ｗｅｂアクセスの動線解析を行う用途に適用できる。また、データ要約システムは、例えば、交通情報（例えば、道路上の自動車の位置情報）を収集し、道路上の渋滞箇所を検出して提供する渋滞情報提供システムの用途に適用できる。また、例えば、データ要約システムは、株価の変動を監視し、株価の変動と事前入力した売買ルールとをマッチングして、株式の自動売買を行うアルゴリズムトレードの用途に適用できる。すなわち、データ要約システムは、大量のデータが逐次的に発生し、最新のデータをリアルタイムに反映しながら解析を行うあらゆるシステムに適用可能である。
【００１５】
データ発生手段１１は、逐次的にデータを発生させるデータ発生源であり、例えば、プログラムに従って動作するＷｅｂサーバによって実現される。また、データ発生手段１１は、例えば、温度センサや湿度センサ等によって実現される。データ発生手段１１は、何らかの順序をもち逐次的に発生するデータを出力する機能を備える。なお、本実施形態では、時系列に逐次的に発生するデータを入力する場合を示しているが、何らかの順序性をもつデータであれば、例えば、距離が近い順や遠い順等の位置的な順序性をもったデータを逐次的に入力して解析を行う場合にも適用できる。また、短い時間間隔（例えば、数秒間隔）で連続して発生されるデータに限らず、逐次的に発生するデータであれば、例えば、数時間や数日等の長い時間間隔で発生するデータや、発生間隔が一定しないようなデータを入力して解析を行う場合にも適用できる。
【００１６】
本実施形態では、データ発生手段１１は、少なくともデータが発生した時刻と値とを含むデータを出力する。図２は、温度センサがデータ発生源である場合のデータの一例を示す説明図である。図２に示すように、データ発生手段１１は、時刻Ｔ００１と値Ｔ００２とを含むデータを出力する。時刻Ｔ００１は、データ発生手段１１が出力するデータが発生した時刻である。また、値Ｔ００２は、データが発生した時刻におけるそのデータの値（図２に示す例では、温度）である。以降、本実施形態では、データ発生手段１１が温度センサによって実現される場合の例を説明する。
【００１７】
なお、データ発生手段１１は、新たなデータが発生すると、その新たに発生したデータを一旦データベース装置等に蓄積するのではなく、データが発生したタイミングでリアルタイムに関数切り替え手段２１に対して逐次出力する。
【００１８】
関数切り替えルール記憶手段２２は、具体的には、解析サーバが備えるメモリや、磁気ディスク装置、光ディスク装置等の記憶装置によって実現される。関数切り替えルール記憶手段２２は、関数切り替え手段２１がデータ発生手段１１から出力されたデータを近似するための関数を切り替えるか否かを判断するために必要なパラメータ（以下、関数切り替えパラメータという）を予め記憶する。関数切り替えパラメータは、１つの閾値であり、例えば、ユーザの登録操作に従って、関数切り替えルール記憶手段２２に予め登録されるようにすればよい。
【００１９】
関数切り替え手段２１は、具体的には、プログラムに従って動作する解析サーバのＣＰＵによって実現される。関数切り替え手段２１は、データ発生手段１１から出力されるデータを関数を用いて近似する処理を実行する機能を備える。
【００２０】
図３は、データ発生手段１１から出力されるデータを、横軸を時間とし縦軸を値としてグラフにプロットした場合の例を示す説明図である。図３において、点群Ｆ００１は、データ発生手段１１から出力された各データを示している。関数切り替え手段２１は、図３に示すデータＦ００１を関数を用いて近似する処理を実行する。
【００２１】
図４は、図３に示したデータＦ００１を１次関数（ｙ＝ａｘ＋ｂ）を用いて近似した場合の処理例を示す説明図である。図４に示す例では、関数切り替え手段２１は、データＦ００１を３つの１次関数Ｆ００２、Ｆ００３、及びＦ００４を用いて近似している。なお、関数切り替え手段２１は、具体的には、１次関数を特定するために必要な関数パラメータ（傾きａ、切片ｂ、定義域）を、１次関数Ｆ００２，Ｆ００３，Ｆ００４毎にそれぞれ求める。
【００２２】
また、関数切り替え手段２１は、１次関数Ｆ００２、Ｆ００３、及びＦ００４それぞれについて定義域を求める。具体的には、関数切り替え手段２１は、逐次的に発生するデータの全範囲のうち、ある１次関数を用いて近似することが可能な範囲を、その１次関数の定義域と求める。
【００２３】
図４に示す例では、例えば、関数Ｆ００３を用いれば、点Ｆ００５から点Ｆ００６までの間の範囲のデータを近似可能であり、関数切り替え手段２１は、点Ｆ００５を関数Ｆ００３の始点と定義し、点Ｆ００６を関数Ｆ００３の終点と定義することによって、関数Ｆ００３の定義域を求める。なお、関数切り替え手段２１は、他の関数Ｆ００２及びＦ００４についても同様に定義域を求めることができる。
【００２４】
以上のことから、本実施形態では、関数切り替え手段２１は、データ発生手段１１から出力されるデータを関数を用いて近似する処理を２通りの方法で行う場合がある。例えば、データ発生手段１１から新たなデータが出力された場合、出力データの変化パターンが大きく変化しなければ、現在近似に用いている関数そのまま用いて、その新たな出力データも近似できる。そこで、関数切り替え手段２１は、そのように出力データの変化パターンが大きく変化しない場合には、近似に用いる関数そのものの切り替えを行うことなく、現在近似に用いている関数の定義域を拡大するように処理を実行する。一方、出力データの変化パターンが大きく変化する場合には、現在近似に用いている関数をそのまま用いても、その新たな出力データを近似できないことになる。そこで、関数切り替え手段２１は、そのように出力データの変化パターンが大きく変化する場合には、新たに関数パターメータのうちの傾きａ及び切片ｂを求めて、近似に用いる関数の切り替えを行う。
【００２５】
なお、関数パラメータのうち、定義域は、その関数を適用可能な範囲（その関数を用いて近似可能な範囲）を示すパラメータであるのに対して、傾きａ及び切片ｂは、関数式そのものを特定可能なパラメータである。従って、以下、傾きａ及び切片ｂのことを関数式特定パラメータともいう。
【００２６】
なお、本実施形態では、関数切り替え手段２１がデータを近似する関数として１次関数を用いる場合の例を示しているが、関数切り替え手段２１がデータを近似する関数として利用する関数は１次関数に限られない。例えば、関数切り替え手段２１は、２次以上の高次の関数を用いてデータを近似する処理を行ってもよいし、三角関数等を含む関数を用いてデータを近似する処理を行ってもよい。
【００２７】
また、図３では予めグラフにデータＦ００１がプロットされ、図４では３つの１次関数（Ｆ００２，Ｆ００３，Ｆ００４）を用いてデータＦ００１を近似している例を示しているが、実際には、データ発生手段１１が逐次的にデータを発生しているので、関数切り替え手段２１は、関数を用いたデータの近似処理も逐次的に行う必要がある。つまり、関数切り替え手段２１は、予め入力されているデータを関数を用いて近似する処理を行うのではなく、逐次的に入力されるデータを、データが入力される毎にリアルタイムに評価して近似に用いる関数を逐次的に決定していく必要がある。
【００２８】
例えば、図４に示す例では、関数Ｆ００４は、時間的に一番新しく関数式特定パラメータが求められた関数（以下、最新の関数という）であり、既に過去に発生しているデータを用いて状態が暫定的に判断されている関数である。関数切り替え手段２１は、データ発生手段１１から新しいデータが入力されるまでは、次のデータがどのような値をもっているのか分からないので、今後、関数Ｆ００４の定義域を拡大してくのか、それとも関数式特定パラメータを更新して新たな関数に切り替えるのかを、新たなデータが入力されたときに見直しする。
【００２９】
関数切り替え手段２１は、もし次のデータが関数Ｆ００４を用いて近似した場合に近似誤差がそれほど大きくならないような値のデータであれば、関数Ｆ００４の定義域を拡大する処理を行えばよい。また、関数切り替え手段２１は、次のデータが関数Ｆ００４を用いて近似した場合に近似誤差が大きくなるような値のデータであれば、関数Ｆ００４を用いて近似するのをやめて、関数式特定パラメータ（傾きａ及び切片ｂ）を新たに算出し、新たな関数に切り替える処理を行えばよい。
【００３０】
以上のように、関数切り替え手段２１は、データ発生手段１１から逐次的に入力されるデータを、データが入力される毎に評価して、近似に用いる関数を逐次的に決定していく。また、関数切り替え手段２１は、最新の関数（図４の例で示す関数Ｆ００４）については、今後、定義域を拡大させるかもしれない暫定の状態のものであり、データ発生手段１１から入力されるデータによって状態が変化（具体的には、定義域を拡大）させる。一方、最新の関数以外の関数（図４の例で示す関数Ｆ００２と関数Ｆ００３）については、既に関数の定義域が確定された状態であり、以後、関数切り替え手段２１によって変化されることはない。
【００３１】
具体的には、関数切り替え手段２１は、データ発生手段１１から出力される現在時刻のデータと、関数切り替えルール記憶手段２２に記憶されている関数切り替えパラメータと、関数パラメータ記憶手段２３に記憶されている関数パラメータのうち時間的に最も新しい関数パラメータとに基づいて、データの近似に用いる関数の切り替えを行う。そして、関数切り替え手段２１は、更新した最新の関数パラメータを関数パラメータ記憶手段２３に記憶させる。
【００３２】
次に、関数切り替え手段２１がデータの近似に用いる関数を切り替える方法について、図５、図６、及び図７を参照して具体的に説明する。図５、図６、及び図７は、関数切り替え手段２１が関数の切り替えを行う一例を示す説明図である。図５において、点Ｆ１０１は、データ発生手段１１から新たに出力される現在時刻のデータの値（以下、実値という）を示している。また、直線Ｆ１０３は、最新の関数（現在近似に用いている関数）を示している。また、点線Ｆ１０４は、最新の関数Ｆ１０３の定義域を、１つ前のデータの点から現在時刻まで拡大した場合を示している。また、点Ｆ１０２は、最新の関数に、新たなデータを取得した現在時刻を入力して計算される値（すなわち、現在近似に用いている関数Ｆ１０３をそのまま用いた場合に、現在時刻において推定されるデータの値。以下、計算値という）を示している。また、Ｆ１０５は、実値と計算値との差を示している。
【００３３】
関数切り替え手段２１は、データ発生手段１１から実値Ｆ１０１を取得（入力）する。すると、関数切り替え手段２１は、関数パラメータ記憶手段２３に記憶されている最新の関数式特定パラメータを抽出し、その関数式特定パラメータで特定される関数に現在時刻を入力することによって計算値Ｆ１０２を算出する。
【００３４】
次いで、関数切り替え手段２１は、実値Ｆ１０１と計算値Ｆ１０２との差Ｆ１０５を計算する。また、関数切り替え手段２１は、実値と計算値との差Ｆ１０５を、関数切り替えルール記憶手段２２に記憶されている関数切り替えパラメータ（閾値）と比較する。
【００３５】
実値と計算値との差Ｆ１０５が関数切り替えパラメータより小さいと判断した場合には、関数切り替え手段２１は、最新の関数Ｆ１０３を用いて実値Ｆ１０１を近似しても近似誤差が少ないと判断する。そのため、関数切り替え手段２１は、最新の関数Ｆ１０３の定義域を現在時刻まで拡大する処理を行い（具体的には、定義域の終点を現在時刻に更新し）、同じ関数Ｆ１０３をそのまま用いて近似する処理を行う。
【００３６】
図６は、実値と計算値との差Ｆ１０５が関数切り替えパラメータより小さいと判断した場合の例を示している。図６に示すように、実値と計算値との差Ｆ１０５が関数切り替えパラメータの値以下であると判断した場合には、関数切り替え手段２１は、最新の関数の定義域を現在時刻まで拡大する処理を行う。図６において、直線Ｆ１０６は、図５における最新の関数Ｆ１０３の定義域を現在時刻まで拡大させた関数を示している。
【００３７】
また、実値と計算値との差Ｆ１０５が関数切り替えパラメータ以上であると判断した場合には、関数切り替え手段２１は、最新の関数Ｆ１０３をそのまま用いて実値Ｆ１０１を近似してしまうと近似誤差が大きくなると判断する。そのため、関数切り替え手段２１は、実値Ｆ１０１と最新の関数Ｆ１０３の定義域の終点における値とを直線で結んだ新たな関数を、新たに近似に用いるように処理を行う。具体的には、関数切り替え手段２１は、実値Ｆ１０１と関数Ｆ１０３の定義域の終点とに基づいて、新たに近似に用いる関数を特定可能な関数式特定パラメータ（傾きａ、切片ｂ）を求める。
【００３８】
図７は、実値と計算値との差Ｆ１０５が関数切り替えパラメータ以上であると判断した場合の例を示している。図７に示すように、実値と計算値との差Ｆ１０５が関数切り替えパラメータよりも大きいと判断した場合には、関数切り替え手段２１は、実値Ｆ１０１と最新の関数Ｆ１０３の定義域の終点における値とを直線で結んだ新たな関数の関数式特定パラメータを求める。図７において、直線Ｆ１０７は、実値Ｆ１０１と最新の関数Ｆ１０３の定義域の終点における値とを直線で結んだ新たな関数を示している。そして、以降、関数切り替え手段２１は、関数Ｆ１０３に代えて新たな最新の関数Ｆ１０７を用いて、逐次的に入力されるデータを近似する処理を行う。新たな関数Ｆ１０７の関数式特定パラメータが算出されると、関数Ｆ１０３の状態（具体的には、定義域の範囲）が確定され、以後、入力データによって関数Ｆ１０３の状態が変化することはなくなる。
【００３９】
関数パラメータ記憶手段２３は、具体的には、プログラムに従って動作する解析サーバのＣＰＵ、及び解析サーバが備えるメモリや、磁気ディスク装置、光ディスク装置等の記憶装置によって実現される。関数パラメータ記憶手段２３は、関数切り替え手段２１が算出し更新した関数パラメータを記憶装置に記憶する。図８は、関数パラメータ記憶手段２３が記憶している関数パラメータの一例を示す説明図である。図８に示すように、関数パラメータ記憶手段２３は、関数パラメータとして、１次関数（ｙ＝ａｘ＋ｂ）の傾きを表すパラメータａ（Ｔ１０１）と、切片を表すパラメータｂ（Ｔ１０２）と、近似に用いる関数の定義域の始点（ｆｒｏｍ）（Ｔ１０３）と、定義域の終点（ｔｏ）（Ｔ１０４）とを記憶する。これら傾きａＴ１０１、切片Ｔ１０２、定義域の始点Ｔ１０３、及び定義域の終点Ｔ１０４の４つのパラメータの組が１つの関数パラメータとなる。
【００４０】
なお、図８では、関数切り替え手段２１がデータの近似に１次関数を用いる場合の例を示したが、逐次的に出力されるデータの近似に用いる関数は１次関数に限られない。例えば、関数切り替え手段２１は、データの近似に用いる関数として２次関数以上の高次の関数を用いてもよいし、三角関数等を含む関数を用いてもよい。そのような場合であっても、関数パラメータ記憶手段２３は、近似に用いる関数を表現するための関数式特定パラメータ（１次関数の例におけるａ，ｂに相当するもの。三角関数の場合には位相等であってもよい。）と、関数の定義域の始点（ｆｒｏｍ）と、定義域の終点（ｔｏ）との組を１つの関数パラメータとして記憶する。
【００４１】
なお、関数切り替え手段２１によって時間軸に沿って逐次的に関数を切り替える処理が行われるので、関数パラメータのテーブルＴ１００は、図８に示すように、時間に関して時系列に整列した状態で関数パラメータ記憶手段２３に記憶される。つまり、関数パラメータのテーブルＴ１００のｋ番目（ｋは自然数）のレコードにおけるｆｒｏｍ（Ｔ１０３）とｔｏ（Ｔ１０４）とは、ｋ＋１番目のレコードにおけるｆｒｏｍ（Ｔ１０３）とｔｏ（Ｔ１０４）とより古い時間になるように整列した状態で関数パラメータ記憶手段２３に記憶されている。
【００４２】
また、関数パラメータ記憶手段２３は、解析手段３１の要求に応じて、解析手段３１によって指定された範囲を含む関数パラメータを、データ発生手段１１から逐次的に入力されたデータの要約結果として解析手段３１に回答（出力）する機能を備える。
【００４３】
図９は、解析手段３１が関数パラメータ記憶手段２３に対して解析に用いる範囲のデータを要求し、関数パラメータ記憶手段２３がその要求に応じて、指定された範囲を含む関数パラメータを解析手段３１に回答する例を示す説明図である。このうち、図９（ａ）は、解析手段３１からの解析要求の例を示している。また、図９（ｂ）は、関数パラメータ記憶手段２３が出力する要約結果の例を示している。
【００４４】
図９（ａ）に示すように、解析手段３１は、関数パラメータ記憶手段２３に対して、解析に用いる範囲のデータ（要約結果）を要求する。具体的には、解析手段３１は、図９に示す出力要求Ｃ１００を関数パラメータ記憶手段２３に対して出力する。なお、図９（ａ）に示す例では、説明を分かりやすくするために、自然言語に近い表現で出力要求Ｃ１００を表現しているが、実際に計算機で実装する場合には、解析手段３１は、ＳＱＬ言語等の計算機言語を用いて作成したクエリとして出力要求Ｃ１００を出力する。
【００４５】
図９（ａ）に示すように、解析手段３１は、要求する範囲の始点を表すパラメータＣ１０１と、要求する範囲の終点を表すパラメータＣ１０２とを含む出力要求Ｃ１００を、関数パラメータ記憶手段２３に対して出力する。そして、関数パラメータ記憶手段２３は、出力要求Ｃ１００に含まれる２つのパラメータＣ１０１及びＣ１０２を用いて、関数パラメータのテーブルＴ１００から該当する関数パラメータを検索し抽出する。
【００４６】
まず、関数パラメータ記憶手段２３は、関数パラメータのテーブルＴ１００の中に、解析手段３１が要求するデータが存在するか否かを調べるために、テーブルＴ１００の最初のレコードの始点（ｆｒｏｍ）（Ｔ１０３）の値と、パラメータＣ１０２の値とを比較する。このとき、テーブルＴ１００の最初のレコードの始点（ｆｒｏｍ）（Ｔ１０３）の値の方が、パラメータＣ１０２の値よりも時間的に新しい値であると判断した場合には、要求されたデータが存在しないことになるので、関数パラメータ記憶手段２３は、解析手段３１に該当データがない旨の通知情報を出力する。
【００４７】
次に、関数パラメータ記憶手段２３は、テーブルＴ１００の最後のレコードの終点（ｔｏ）（Ｔ１０４）の値と、パラメータＣ１０１の値とを比較する。このとき、テーブルＴ１００の最後のレコードの終点（ｔｏ）（Ｔ１０４）の値の方が、パラメータＣ１０１の値よりも時間的に古い値であると判断した場合には、要求されたデータが存在しないことになるので、関数パラメータ記憶手段２３は、解析手段３１に該当データがない旨の通知情報を出力する。
【００４８】
上記の始点と終点における２つの比較処理においていずれも該当データなしとの判断結果にならなかった場合には、テーブルＴ１００の中に、解析手段３１が要求するデータが存在することになる。そのため、次に、関数パラメータ記憶手段２３は、該当するデータの検索を行う。
【００４９】
まず、関数パラメータ記憶手段２３は、パラメータＣ１０１と終点（ｔｏ）（Ｔ１０４）の値とを、テーブルＴ１００の１つ目の値から順番に比較する処理を行う。そして、関数パラメータ記憶手段２３は、終点（ｔｏ）（Ｔ１０４）の値が、初めてパラメータＣ１０１より時間的に新しい値になるレコードを探して特定する。
【００５０】
次に、関数パラメータ記憶手段２３は、パラメータＣ１０２と終点（ｔｏ）（Ｔ１０４）の値とを、テーブルＴ１００の１つ目の値から順番に比較する処理を行う。そして、関数パラメータ記憶手段２３は、終点（ｔｏ）（Ｔ１０４）の値が、初めてパラメータＣ１０２より時間的に新しい値になるレコードを探して特定する。
【００５１】
次いで、関数パラメータ記憶手段２３は、パラメータＣ１０１と終点（ｔｏ）（Ｔ１０４）とを比較して検索したレコードと、パラメータＣ１０２と終点（ｔｏ）（Ｔ１０４）とを比較して検索したレコードとの間にあるレコードを特定する。そして、関数パラメータ記憶手段２３は、その特定したレコードの値を、要求された関数パラメータとして、解析手段３１に回答（出力）する。
【００５２】
なお、関数パラメータ記憶手段２３は、パラメータＣ１０２と始点（ｆｒｏｍ）（Ｔ１０３）の値とをテーブルＴ１００の１つ目の値から順番に比較したときに、該当するレコードが見つからない場合には、パラメータＣ１０１と終点（ｔｏ）（Ｔ１０４）とを比較して検索したレコードと、テーブルＴ１００の最後のレコードとの間にあるレコードを特定する。そして、関数パラメータ記憶手段２３は、その特定したレコードの値を、要求された関数パラメータとして、解析手段３１に回答（出力）する。
【００５３】
図９（ｂ）に示す例では、関数パラメータ記憶手段２３は、解析手段３１からの要求Ｃ１００に応じて、指定された範囲を含む３つのレコードに含まれる関数パラメータＴ１０５を、解析手段３１に回答（出力）する場合が示されている。
【００５４】
また、解析手段３１は、データ（要約結果）を要求した際に、関数パラメータを回答されるよりも、データ発生手段１１が発生したデータと同じ形式の再現データを回答された方が、解析処理を行う上で都合がよい場合が多い。そのため、関数パラメータ記憶手段２３は、解析手段３１の要求に応じて、指定された範囲の再現データの値を、記憶されている関数パラメータにより特定される関数を用いて計算により再現し、その再現データを解析手段３１に回答（出力）する機能を有していてもよい。
【００５５】
「データの値の再現」とは、具体的には、関数パラメータ記憶手段２３に記憶されている関数パラメータによって特定される関数に時刻を入力して、その時刻に対応する値を算出して再現データを求めることである。従って、この場合、関数パラメータ記憶手段２３は、データ発生手段１１から入力した実データそのものを再現するのではなく、関数を用いた近似データを再現データとして求め、解析手段３１に出力する。
【００５６】
図１０は、関数パラメータ記憶手段２３が、解析手段３１の要求に応じて、解析手段３１によって指定された範囲のデータの値を再現し、解析手段３１に回答する例を示す説明図である。図１０（ａ）において、関数Ｆ２０１は、関数パラメータ記憶手段２３が記憶している関数パラメータによって特定される関数を示す（なお、図１０（ａ）に示す例では、３本の直線で示される関数をまとめて関数Ｆ２０１と表現する）。また、点Ｆ２０２は、解析手段３１が要求する範囲の始点を示す。また、点Ｆ２０３は、解析手段３１が要求する範囲の終点を示す。また、点群Ｆ２０４は、解析手段３１が要求する範囲で関数パラメータ記憶手段２３によって再現されたデータを示している。
【００５７】
図１０（ｂ）において、テーブルＴ２００は、関数パラメータ記憶手段２３によって再現されたデータの値をテーブル形式で示したものである。図１０（ｂ）のテーブルＴ２００に示すように、関数パラメータ記憶手段２３は、少なくとも時間Ｔ２０１と値Ｔ２０２とを含む再現データを算出し、解析手段３１に出力する。この場合、関数パラメータ記憶手段２３は、記憶している関数パラメータによって特定される関数Ｆ２０１に、解析手段３１が要求する範囲（点Ｆ１０２から点Ｆ１０３までの範囲）の各時刻を入力し、各時刻に対応する値（点群Ｆ２０４）を算出する。そして、関数パラメータ記憶手段２３は、算出した値を含むテーブルＴ２００を解析手段３１に回答（出力）する。
【００５８】
なお、図１０に示す例では、秒単位でデータを再現する場合を示しているが、データを再現する時間の単位は秒に限られない。例えば、関数パラメータ記憶手段２３は、分単位や時単位等、任意の単位時間間隔で再現データを算出してもよい。また、データを再現する時間の単位は、ユーザが予め設定するようにしてもよいし、解析手段３１がデータを要求する毎に時間の単位を指定してもよい。
【００５９】
解析手段３１は、具体的には、プログラムに従って動作する解析サーバのＣＰＵによって実現され、様々な解析を行う手段である。解析手段３１は、解析に用いる範囲のデータを関数パラメータ記憶手段２３に要求する機能を備える。また、解析手段３１は、要求に応じて関数パラメータ記憶手段２３によって回答（出力）される関数パラメータや再現されたデータに基づいて、様々な解析を行う機能を備える。
【００６０】
例えば、解析手段３１は、Ｗｅｂサーバが発生するログデータを再現した再現データに基づいて、Ｗｅｂアクセスの動線解析を行う。また、例えば、解析手段３１は、交通情報（例えば、道路上の自動車の位置情報）の収集データの再現データに基づいて、道路上の渋滞箇所を解析して検出する。また、例えば、解析手段３１は、株価の変動データの再現データに基づいて、株価の変動と事前入力した売買ルールとをマッチングして、株式の売買タイミングとなったか否かを解析する。
【００６１】
解析手段３１は、関数パラメータ記憶手段２３に対して、指定した範囲を含む関数パラメータを回答するように要求する場合には、図９に示すように、指定した範囲の始点を表すパラメータＣ１０１と、指定した範囲の終点を表すパラメータＣ１０２とを含む要求Ｃ１００を、関数パラメータ記憶手段２３に出力する。そして、解析手段３１は、要求Ｃ１００に応じて回答（出力）された関数パラメータＴ１０５に基づいて解析を行う。
【００６２】
また、解析手段３１は、関数パラメータ記憶手段２３に対して、再現データを回答するように要求する場合には、指定した範囲の始点を表すパラメータＣ１０１と、指定した範囲の終点を表すパラメータＣ１０２とを含む要求Ｃ１００を、関数パラメータ記憶手段２３に出力する。そして、解析手段３１は、要求Ｃ１００に応じて再現されたデータＴ２００を関数パラメータ記憶手段２３から入力し、入力した再現データＴ２００に基づいて解析を行う。なお、解析手段３１は、関数パラメータ記憶手段２３に対して、再現データを回答するように要求する場合には、データを再現する時間の単位を指定してもよい。
【００６３】
なお、本実施形態において、データ要約システムを実現する解析サーバの記憶装置（図示せず）は、逐次的に発生するデータを要約するための各種プログラムを記憶している。例えば、解析サーバの記憶装置は、コンピュータに、逐次発生するデータである逐次発生データを関数を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータを、逐次発生データの要約結果として求めるデータ要約処理を実行させ、データ要約処理において、新たなデータが発生すると、該新たに発生したデータに基づいて近似に用いる関数を更新する処理を実行させるためのデータ要約プログラムを記憶している。
【００６４】
次に、動作について説明する。図１１は、データ要約システムが実行する処理の例を示すフローチャートである。図１１に示すように、本実施形態において、データ要約システムの動作ステップは、データ発生のステップ（ステップＳ１００）と、データ要約のステップ（ステップＳ２００）と、データ解析のステップ（ステップＳ３００）とを含む。
【００６５】
データ発生のステップでは、データ発生手段１１は、データを逐次発生し、発生したデータを関数切り替え手段２１に出力する（ステップＳ１００）。また、データ要約のステップでは、データ要約システム（具体的には、関数切り替え手段２１、関数切り替えルール記憶手段２２、及び関数パラメータ記憶手段２３）は、データ発生手段１１から入力したデータを要約する処理を随時実行する（ステップＳ２００）。また、データ解析ステップでは、解析手段３１は、要約結果に基づいて各種の解析を行う（ステップＳ３００）。
【００６６】
以下、データ要約のステップ（ステップＳ２００）について具体的に説明する。なお、図１１では、データの流れに着目して、各ステップ（ステップＳ１００、ステップＳ２００、及びステップＳ３００）がシーケンシャルに実行されるように示しているが、実際には、データ発生手段１１は、データを逐次的に随時発生して出力している。そのため、実際には、データ要約システムは、各ステップＳ１００〜Ｓ３００の処理を並列的に実行している。よって、例えば、データ解析のステップ（ステップＳ３００）において１つ前までのデータに基づく解析処理が終了しなくても、データ発生手段１１は、データ発生のステップ（ステップＳ１００）を実行して次のデータを発生し続けている。また、例えば、データ要約のステップ（ステップＳ２００）において次のデータに基づく要約処理を実行中であっても、解析手段３１は、データ解析のステップ（ステップＳ３００）において１つ前までのデータに基づく解析処理を並列的に実行してもよい。
【００６７】
図１２は、データ要約のステップ（ステップＳ２００）において、データを要約する処理の例を示すフローチャートである。図１２に示すように、まず、関数切り替え手段２１は、データ発生手段１１が発生するデータを取得（入力）する（ステップＳ２０１）。すると、関数切り替え手段２１は、関数パラメータ記憶手段２３に記憶されている最新の関数式特定パラメータによって特定される関数に、データを取得（入力）した現在時刻を入力し、計算値を算出する（ステップＳ２０２）。
【００６８】
次に、関数切り替え手段２１は、データ発生手段１１から取得（入力）した現在時刻のデータの実際の値（実値）と、ステップＳ２０２で算出した計算値とを比較する。この場合、関数切り替え手段２１は、実値と計算値との差が、関数切り替えルール記憶手段２２に記憶されている関数切り替えパラメータＴ１（閾値）より小さいか否かを判定する（ステップＳ２０３）。
【００６９】
ここで、実値と計算値との差が関数切り替えパラメータＴ１よりも小さいと判断した場合には、関数切り替え手段２１は、最新の関数パラメータの定義域の終点（ｔｏ）を、データを入力した現在時刻に更新する（ステップＳ２０４）。また、実値と計算値との差が関数切り替えパラメータ以上であると判断した場合には、関数切り替え手段２１は、データ発生手段１１から取得（入力）した現在時刻のデータの値と、最新の関数の定義域の終点（ｔｏ）における値とを用いて、新たな関数式特定パラメータ（傾きａ、切片ｂ）を算出し、近似に用いる関数の切り替え処理を行う（ステップＳ２０５）。
【００７０】
すなわち、データ発生手段１１から取得（入力）した現在時刻のデータを最新の関数を用いて近似しても、近似による誤差がそれほど大きくならないと判断した場合には、関数切り替え手段２１は、図６に示すように、最新の関数の定義域の終点（ｔｏ）の値を現在時刻まで拡大する。また、近似による誤差が一定以上大きくなると判断した場合には、関数切り替え手段２１は、図７に示すように、データ発生手段１１から取得（入力）した現在時刻のデータの値と、最新の関数の終点（ｔｏ）における値とを直線で結んだ関数に、近似に用いる関数を切り替える処理を行う。
【００７１】
次いで、関数切り替え手段２１は、ステップＳ２０４やステップＳ２０５で更新した関数パラメータ（傾きａや、切片ｂ、定義域）を、関数パラメータ記憶手段２３に記憶させて反映させる（ステップＳ２０６）。
【００７２】
そして、データ解析のステップ（ステップＳ３００）では、解析手段３１は、ステップＳ２０６で更新された関数パラメータを用いて、様々な解析を行う。
【００７３】
なお、図１２のフローチャートには示されていないが、初期の状態（すなわち、関数パラメータ記憶手段２３に関数パラメータがまだ１つも記憶されていない状態）のときは、関数切り替え手段２１は、データ発生手段１１が発生するデータをいくつか溜まるまでバッファリングしておく。そして、関数切り替え手段２１は、バッファリングしたいくつかのデータに対して最小二乗法等の手法を用いて、近似に用いる最初の関数の関数パラメータを求めるようにすればよい。
【００７４】
以上のように、本実施形態によれば、関数切り替え手段２１は、サーバが出力するログデータやセンサが出力するデータ等、逐次的に発生するデータを、データが発生する毎に評価する。そして、関数切り替え手段２１は、評価結果に基づいて、近似に用いる関数を切り替えながらデータを要約する処理を行う。そのようにすることによって、逐次的なデータを要約することが可能となり、解析手段３１による解析処理が開始されるまでのタイムラグをなくし、リアルタイムな解析を行うことができる。
【００７５】
また、本実施形態によれば、逐次的にデータが発生する状況において、データが発生する毎に、発生したデータの実値と、最新の近似用の関数から計算される計算値とを比較して、近似する関数を動的に切り替える処理を行う。そのため、逐次的に発生するデータを逐次的に要約し、情報量を削減することができる。
【００７６】
例えば、図３及び図４に示す例では、関数を用いて近似しない場合、データの数が１３個であり、それぞれのデータには時間と値とのパラメータが含まれるので、合計２６（１３×２＝２６）個の情報を記憶しておく必要がある。これに対して、関数を用いて近似する場合、３つの１次関数を用いて近似することが可能であり、それぞれの関数には１次関数の傾きのパラメータ、切片のパラメータ、関数の定義域の始点、及び定義域の終点の４つのパラメータが含まれるので、合計１２（３×４）個の情報を記憶しておくだけで済む。
【００７７】
なお、図３及び図４に示す例では、情報量２６個から１２個への要約率であるが、実際には、さらに多くのデータを１つの関数を用いて近似することも可能である。例えば、１００個のデータを３つの１次関数を用いて近似することができた場合、合計２００（１００×２）個の情報を、合計１２（３×４）個の情報に要約することができる。
【００７８】
また、本実施形態によれば、データの値の変化が小さい箇所については同じ関数を用いて長い期間データを要約し、データの値の変化が大きい箇所については複数の関数を切り替えながらデータを要約するように動作する。そのため、データの変化パターンの変動の小さい箇所では大きく情報量を削減でき、データの変化パターンの変動の大きい箇所では細かく関数を切り替えることによって、要約の精度を高く保ちながらデータを要約することができる。
【００７９】
実施形態２．
次に、本発明の第２の実施形態を図面を参照して説明する。図１３は、第２の実施形態におけるデータ要約システムの構成例を示すブロック図である。図１３に示すように、本実施形態において、データ要約システムは、図１に示した構成要素に加えて、さらに、データ一時記憶手段２４と、データ一時記憶管理手段２５と、関数補正手段２６とを備える点で、第１の実施形態と異なる。
【００８０】
なお、関数切り替え手段２１がデータを関数を用いて近似する方法は、第１の実施形態で示した方法と同様である。すなわち、関数切り替え手段２１は、データ発生手段１１から出力されるデータの値によって、最新の関数の定義域の終点（ｔｏ）を現在時刻まで拡大するか、又は新たな関数式特定パラメータを算出して、近似に用いる関数を切り替える。
【００８１】
ここで、新たな関数式特定パラメータを算出して、近似に用いる関数を切り替える場合、関数切り替え手段２１は、データ発生手段１１から出力される現在時刻のデータの値と、最新の関数の定義域の終点（ｔｏ）における値とを直線で結んだ関数を特定するための関数式特定パラメータを算出する。つまり、関数切り替え手段２１がデータの近似に用いる関数は、必ず関数切り替え点から最初の２点を結ぶ直線になる。これは、新たな関数に切り替えられる時点では、その新たな関数に含まれる点が２点しかない状態なので、関数切り替え手段２１は、このように関数を切り替える処理を行う。この場合、関数切り替え手段２１は、次に新たな関数に切り替えるまでは、現在の関数の定義域の終点（ｔｏ）を拡大していくのであるが、前述したように、必ず最初の２点を結ぶ直線であるため、必ずしも近似誤差の少ないよい近似ができるとは限らない。そのため、データ要約の精度を向上させるため、改善の余地があるといえる。
【００８２】
一般的にいくつかの複数データを関数を用いて近似する場合、データ全体を見て最小二乗法等の手法を用いて近似に用いる関数を決定した方が、近似誤差の少ないよい近似ができるといえる。そこで、本実施形態では、関数の定義域の終点（ｔｏ）を拡大させたり、新たな関数式特定パラメータを算出して関数を切り替える処理に加えて、関数補正手段２６が、現在時刻までに取得（入力）したデータ全体を見て、関数の補正を行う処理を行う。そのようにすることによって、本実施形態では、データ要約の精度を向上させる。関数の補正方法や、関数補正手段２６が行う具体的な処理については、後述する。
【００８３】
以上のことから、本実施形態では、データ発生手段１１から出力されるデータを関数を用いて近似する処理には、第１の実施形態で示した２つの方法（現在の関数の定義域を拡大する方法、新たに関数式特定パラメータを算出して関数を切り替える方法）に加えて、関数の補正を行う方法がある。
【００８４】
以下、第１の実施形態と同様の構成及び処理を行う部分については記載を省略し、主として、第１の実施形態と異なる部分（すなわち、関数の補正を行うために新たに加わった構成）について説明する。
【００８５】
データ一時記憶手段２４は、具体的には、解析サーバが備えるメモリ等の一時記憶装置によって実現される。データ一時記憶手段２４は、データ発生手段１１から発生したデータのうち、最新の関数の現在時刻までの定義域に含まれるデータを一時的に記憶する。また、データ一時記憶手段２４が記憶するデータは、関数補正手段２６の要求に応じて抽出される。
【００８６】
図１４は、データ一時記憶手段２４が記憶しているデータの一例を示す説明図である。図１４（ａ）において、直線Ｆ３０１は、最新の関数を示している。また、点群Ｆ３０２は、データ発生手段１１から発生したデータのうち、最新の関数Ｆ３０１の現在時刻までの定義域に含まれるデータを示している。
【００８７】
図１４（ｂ）において、テーブルＴ３００は、点群Ｆ３０２で示されるデータをテーブル形式で表したものであり、時間Ｔ３０１と値Ｔ３０２とを含む。本実施形態では、データ一時記憶手段２４は、図１４（ｂ）に示すテーブルＴ３００を一時記憶しておけばよい。また、データ一時記憶手段２４が記憶するデータ発生手段１１から発生した現在時刻のデータは、関数切り替え手段２１によって抽出される。
【００８８】
データ一時記憶管理手段２５は、具体的には、プログラムに従って動作する解析サーバのＣＰＵによって実現される。データ一時記憶管理手段２５は、データ一時記憶手段２４が記憶しているデータが、最新の関数の現在時刻までの定義域に含まれるデータになるように制御する機能を備える。具体的には、データ一時記憶管理手段２５は、関数切り替え手段２１によって新たな関数式特定パラメータの算出が行われると、新たな関数式特定パラメータの算出が行われたことを知らせる通知情報を、関数切り替え手段２１から受け取る（入力する）。すると、データ一時記憶管理手段２５は、データ一時記憶手段２４に記憶されているデータのうち、新たな関数式特定パラメータが算出された時刻以前のデータを削除させる。
【００８９】
図１５は、データ一時記憶管理手段２５によって、データ一時記憶手段２４に記憶されているデータが、最新の関数の現在時刻までの定義域に含まれるデータになるように制御される例を示す説明図である。図１５（ａ）に示すように、関数切り替え手段２１は、データ発生手段１１から発生したデータＦ４０１を取得（入力）し、新たな関数Ｆ４０２の関数式特定パラメータを算出して関数の切り替えを行う。すると、データ一時記憶管理手段２５は、新たな関数式特定パラメータの算出が行われたことを知らせる通知情報を、関数切り替え手段２１から受け取る（入力する）。そして、データ一時記憶管理手段２５は、図１５（ｂ）に示すように、データ一時記憶手段２４がそれまでに記憶していたデータＴ４００のうち、新たな関数式特定パラメータが算出された時刻以前のデータＴ４０３を削除させる。
【００９０】
また、本実施形態では、関数切り替えルール記憶手段２２は、第１の実施形態で示した関数切り替えパラメータＴ１に加えて、関数切り替え手段２１がデータ発生手段１１から出力されたデータの近似に用いる関数を補正するか否かを判断するために必要なパラメータとして、新たにもう１つの関数切り替えパラメータＴ２を記憶する。
【００９１】
本実施形態では、関数切り替え手段２１は、関数切り替えルール記憶手段２２に記憶されている第１の関数切り替えパラメータＴ１を用いて、近似に用いる関数の定義域の終点（ｔｏ）を拡大するか否かを判断する。また、関数切り替え手段２１は、定義域の終点を拡大しないと判断した場合に、新たに追加した第２の関数切り替えパラメータＴ２を用いて、近似に用いる関数を補正するか、又は新たな関数式特定パラメータを算出して関数を切り替えるかを判断する。
【００９２】
関数補正手段２６は、具体的には、プログラムに従って動作する解析サーバのＣＰＵによって実現される。関数補正手段２６は、関数切り替え手段２１によって、データ発生手段１１から出力される現在時刻のデータと、関数切り替えルール記憶手段２２に記憶されている関数切り替えパラメータと、最新の関数パラメータとに基づいて、関数の補正を行うと判断された場合に、現在の関数を補正する機能を備える。この場合、関数補正手段２６は、関数切り替え手段２１から、データ発生手段１１が出力した現在時刻のデータを受け取り（入力し）、現在時刻のデータと、データ一時記憶手段２４に記憶されているデータとに基づいて、関数の補正を行う。
【００９３】
本実施形態において、関数の補正とは、具体的には、データ発生手段１１から出力される現在時刻のデータと、データ一時記憶手段２４に記憶されているデータとに対して、最小二乗法等を用いて、現在近似に用いている関数を作り直す（関数式特定パラメータを算出し直す）処理である。すなわち、当初定義域の始点から２つのデータのみを用いて求められた関数式特定パラメータを、さらに現在時刻までのより多くのデータを用いて、より最適な関数式特定パラメータとなるように計算し直す。
【００９４】
図１６は、関数補正手段２６が関数の補正を行っている例を示す説明図である。図１６において、点Ｆ５０３は、データ発生手段１１から出力された現在時刻のデータを示している。また、点群Ｆ５０４は、データ一時記憶手段２４に記憶されているデータを示している。また、点線Ｆ５０１は、１つ前までのデータを用いて関数式特定パラメータが算出された補正前の関数であり、関数切り替え手段２１が現在時刻のデータＦ５０３を新たに取得（入力）するまでは最新の関数であったものである。
【００９５】
また、図１６において、直線Ｆ５０２は、関数補正手段２６によって補正された補正後の関数である。図１６に示す例では、まず、関数切り替え手段２１は、現在時刻のデータＦ５０３を取得（入力）した後に、関数の補正を行うと判断する。そして、関数補正手段２６は、現在時刻のデータＦ５０３と、データ一時記憶手段２４に記憶されているデータＦ５０４とに対して、最小二乗法等を用いて関数を作り直し、関数５０１から関数Ｆ５０２に補正する。
【００９６】
なお、関数切り替え手段２１が、関数の定義域の終点（ｔｏ）の拡大を行うのか、新たな関数に切り替えるのか、関数の補正を行うのかを判断する判断手順等の具体的な動作については後述する。
【００９７】
また、関数切り替え手段２１は、新たに関数式特定パラメータを算出して関数の切り替えを行った場合には、新たな関数式特定パラメータを算出したことを示す通知情報を、データ一時記憶管理手段２５に出力する機能を備える。なお、この通知情報には、新たな関数式特定パラメータを算出が行われたこと示すパラメータと、新たな関数式特定パラメータを算出が行われた時刻とが含まれていればよい。
【００９８】
次に、動作について説明する。図１７は、第２の実施形態におけるデータ要約システムが実行する処理の例を示すフローチャートである。図１７に示すように、本実施形態において、データ要約システムの動作ステップは、データ発生のステップ（ステップＳ１００）と、データ要約のステップ（ステップＳ２００）と、データ要約のステップＳ２００で新たな関数式特定パラメータが算出されたか否かを判断するステップ（ステップＳ５００）と、データ一時記憶手段２４によるデータ管理のステップ（ステップＳ４００）と、データ解析のステップ（ステップＳ３００）とを含む。
【００９９】
なお、図１７においても、第１の実施形態で示したフローチャート（図１１参照）と同様に、各ステップ（ステップＳ１００、ステップＳ２００、ステップＳ３００、ステップＳ４００、及びステップＳ５００）がシーケンシャルに実行されるように示しているが、実際には、データ要約システムは、各ステップＳ１００〜Ｓ５００の処理を並列的に実行している。
【０１００】
データ発生のステップでは、データ発生手段１１は、データを逐次発生し、発生されたデータがデータ一時記憶手段２４に逐次記憶される。また、データ要約のステップでは、データ要約システム（具体的には、関数切り替え手段２１、関数切り替えルール記憶手段２２、関数パラメータ記憶手段２３、及び関数補正手段２６）は、データ発生手段１１から入力したデータを要約する処理を随時実行する（ステップＳ２００）。
【０１０１】
また、データ一時記憶管理手段２５は、新たな関数式特定パラメータが算出されたか否かを判断する（ステップＳ５００）。そして、データ管理のステップでは、関数切り替え手段２１によって新たな関数式特定パラメータが算出された場合に、データ一時記憶管理手段２５は、データ一時記憶手段２４に記憶されているデータのうち、新たな関数式特定パラメータが算出された時刻以前のデータを削除させる（ステップＳ４００）。そのようにすることによって、データ一時記憶管理手段２４に記憶されているデータが、最新の関数の定義域に含まれるデータになるように制御される。また、データ解析ステップでは、データ解析手段３１は、要約結果に基づいて各種の解析を行う（ステップＳ３００）。
【０１０２】
以下、データ要約のステップ（ステップＳ２００）について具体的に説明する。図１８は、第２の実施形態におけるデータ要約のステップ（ステップＳ２００）において、データを要約する処理の例を示すフローチャートである。なお、図１８において、第１の実施形態と同様の処理を行う部分については、図１２と同じステップ番号を付すとともに説明を省略し、以下、主として、第１の実施形態と異なる処理について説明する。
【０１０３】
まず、データ発生手段１１によってデータが逐次発生される毎に、新たに発生されたデータが逐次データ一時記憶手段２４に記憶される。ここでは、データ一時記憶手段２４は、取得したデータを逐次一時的に記憶しておくだけである。
【０１０４】
また、関数切り替え手段２１は、データ一時記憶手段２４が記憶するデータを逐次入力する（ステップ２０９）。すると、関数切り替え手段２１は、最新の関数式特定パラメータによって特定される関数を用いて計算値を算出する（ステップＳ２０２）。
【０１０５】
次いで、関数切り替え手段２１は、データ一時記憶手段２４から入力した実値と、ステップＳ２０２で算出した計算値とを比較する（ステップＳ２０３）。この場合、関数切り替え手段２１は、実値と計算値との差が、関数切り替えルール記憶手段２２に記憶されている第１の関数切り替えパラメータＴ１（閾値）より小さいか否かを判定する。
【０１０６】
ここで、実値と計算値の差が第１の切り替えパラメータＴ１より小さいと判断した場合には、関数切り替え手段２１は、最新の関数パラメータの定義域の終点（ｔｏ）の値を、データを入力した現在時刻に更新する（ステップＳ２０４）。また、実値と計算値との差が、関数切り替えルール記憶手段２２に記憶されている第１の関数切り替えパラメータＴ１以上であると判断した場合には、次に、関数切り替え手段２１は、実値と計算値との差が、関数切り替えルール記憶手段２２に記憶されている第２の関数切り替えパラメータＴ２より小さいか否かを判定する（ステップＳ２０７）。
【０１０７】
ここで、実値と計算値の差が関数切り替えパラメータＴ２以上であると判断した場合には、関数切り替え手段２１は、新たな関数式特定パラメータを算出して関数の切り替えを行う（ステップＳ２０５）。また、実値と計算値との差が関数切り替えパラメータＴ２より小さいと判断した場合には、関数切り替え手段２１は、現在用いている関数の補正を行うと判断し、データ一時記憶手段２４から入力した現在時刻のデータを関数補正手段２６に渡す（出力する）。
【０１０８】
次いで、関数補正手段２６は、関数切り替え手段２１から現在時刻のデータを受ける（入力する）と、現在時刻のデータと、データ一時記憶手段２４に記憶されているデータとを用いて、最新の関数の補正を行う（ステップＳ２０８）。具体的には、関数補正手段２６は、ステップＳ２０８において、現時刻のデータと、データ一時記憶手段２４に記憶されているデータとに対して、最小二乗法等を用いて、近似に用いる関数を作り直す（関数式特定パラメータを算出し直す）処理を実行することによって、補正を行う。
【０１０９】
次いで、ステップＳ２０４やステップＳ２０５で更新した関数パラメータ（傾きａや、切片ｂ、定義域）を、関数パラメータ記憶手段２３に記憶させて反映させる（ステップＳ２０６）。又は、関数補正手段２６は、ステップＳ２０８で更新した関数パラメータ（補正後の傾きａや切片ｂ）を、関数パラメータ記憶手段２３に記憶させて反映させる（ステップＳ２０６）。
【０１１０】
そして、データ解析のステップ（ステップＳ３００）では、解析手段３１は、ステップＳ２０６で更新された関数パラメータを用いて、様々な解析を行う。
【０１１１】
また、ステップＳ２０５で新たな関数式特定パラメータが算出された場合、ステップＳ４００において、データ一時記憶管理手段２５は、データ一時記憶管理手段２４に記憶されているデータが最新の関数の定義域に含まれるデータになるように制御する。
【０１１２】
以上のように、本実施形態によれば、第１の実施形態の効果に加えて、関数を補正する処理を加えることにより、データ要約の精度を向上させることができる。
【０１１３】
なお、本実施形態では、最新の関数のみを補正する場合を示したが、最新の関数だけでなく、最新の関数よりも前に用いた関数についても、新たなデータを入力したタイミングで補正するように構成してもよい。この場合、データ一時記憶手段２４は、例えば、最新の関数の定義域に含まれるデータのみを記憶するのではなく、最新の関数の定義域よりも以前のデータを記憶するようにしてもよい。そして、関数補正手段２６は、それらのデータを用いて最小二乗法等により、最新の関数だけでなく、最新の関数よりも以前に用いた関数も補正するようにしてもよい。なお、この場合、関数補正手段２６は、最新の関数よりも以前の全ての関数を補正してもよく、いずれか１つの関数を補正してもよい。また、関数補正手段２６は、最新の関数よりも以前のいずれか複数の関数を補正してもよい。
【０１１４】
実施形態３．
次に、本発明の第３の実施形態を図面を参照して説明する。図１９は、第３の実施形態におけるデータ要約システムの構成例を示すブロック図である。図１９に示すように、本実施形態において、データ要約システムは、図１３に示した構成要素に加えて、さらに、関数切り替えルール設定手段２７を備える点で、第２の実施形態と異なる。
【０１１５】
第２の実施形態で示したデータ要約システムでは、関数を用いた近似を行う場合に、データ要約の精度を高めることとデータ要約率を高めることとはトレードオフの関係にある。すなわち、データ要約の精度を上げようとするとデータ要約率が下がり、逆にデータ要約率を上げようとするとデータ要約の精度が下がってしまう。そのため、解析手段３１が行う解析の種類に応じて、解析の精度が多少低くなってもデータ要約率を上げたい場合や、データ要約率が多少低くなっても解析の精度を高く保ちたい場合等、様々な状況に応じて、データ要約の精度とデータ要約率とのバランスを調整できることが望ましい。
【０１１６】
データ要約の精度とデータ要約率とのバランス調整は、関数切り替えパラメータＴ１及びＴ２を調整することによって行うことができる。具体的には、データ要約システムは、関数切り替えパラメータＴ１及びＴ２の値が小さいほど、新たな関数式特定パラメータを頻繁に算出するように動作する。そのため、関数切り替えパラメータＴ１及びＴ２の値を小さくすると、データ要約の精度を向上させることができる代わりに、データ要約率が低下する。逆に、関数切り替えパラメータＴ１及びＴ２の値が大きいほど、新たな関数式特定パラメータを算出する頻度が低下する。そのため、関数切り替えパラメータＴ１及びＴ２の値を大きくすると、データ要約率を向上させることができる代わりに、データ要約の精度が低下する。
【０１１７】
このように、関数切り替えパラメータＴ１及びＴ２の値を調整することによって、データ要約の精度とデータ要約率とのバランスを調整することが可能であるが、一般的なユーザが関数切り替えパラメータＴ１及びＴ２の値を直接入力操作して適切に調整することは困難である。そこで、本実施形態では、関数切り替えルール設定手段２７によって、ユーザが関数切り替えパラメータＴ１及びＴ２を容易に調整できるようにする。
【０１１８】
関数切り替えルール設定手段２７は、具体的には、プログラムに従って動作する解析サーバのＣＰＵ、解析サーバが備えるメモリや、磁気ディスク装置、光ディスク装置等の記憶装置、及びキーボードやマウス等の入力デバイスによって実現される。関数切り替えルール設定手段２７は、ユーザの入力総裁に従って、関数切り替えパラメータＴ１，Ｔ２の値を調整する処理を行う機能を備える。
【０１１９】
具体的には、関数切り替えルール設定手段２７は、データ要約の精度とそのデータ要約精度に応じた関数切り替えパラメータとを含むテーブルを予め記憶装置に記憶している。また、関数切り替えルール設定手段２７は、ユーザの選択操作に従って、予め記憶するテーブルから、選択操作されたデータ要約の精度に応じた関数切り替えパラメータを抽出する。そして、関数切り替えルール設定手段２７は、抽出した関数切り替えパラメータを関数切り替えルール記憶手段２２に記憶させる。すなわち、関数切り替えルール設定手段２７は、ユーザの選択操作に応じて、関数切り替えルール記憶手段２２が記憶する関数切り替えパラメータＴ１，Ｔ２を更新する処理を行う。
【０１２０】
図２０は、関数切り替えルール設定手段２７が記憶している、データ要約の精度とそのデータ要約精度に応じた関数切り替えパラメータとを含むテーブルの一例を示す説明図である。図２０に示すように、関数切り替えルール設定手段２７は、データ要約の精度を表すフィールド（Ｔ５０１、Ｔ５０２、Ｔ５０３）と、関数切り替えパラメータを表すフィールド（Ｔ５０４、Ｔ５０５）とを含むテーブルＴ５００を記憶している。
【０１２１】
図２０に示す例では、関数切り替えルール設定手段２７は、データ要約の精度としてＨｉｇｈ（Ｔ５０１）、Ｍｉｄ（Ｔ５０２）、Ｌｏｗ（Ｔ５０３）の３種類を含むテーブルＴ５００を記憶している。例えば、関数切り替えルール設定手段２７は、ユーザ操作に従って、Ｈｉｇｈ（Ｔ５０１）を選択した場合には、テーブルＴ５００から、関数切り替えパラメータＴ１の値として１．０を抽出し、関数切り替えパラメータＴ２の値として２．０を抽出する。そして、関数切り替えルール設定手段２７は、抽出した関数切り替えパラメータＴ１とＴ２との値によって、関数切り替えルール記憶手段２２が記憶する関数切り替えパラメータを更新させる。なお、図２０において、Ｈｉｇｈとは要約精度が最も高い場合を示し、Ｍｉｄとは要約精度が中程度である場合を示し、Ｌｏｗとは要約精度が最も低い場合を示している。
【０１２２】
なお、図２０に示す例では、ユーザが選択操作できるデータ要約の精度の種類がＨｉｇｈ、Ｍｉｄ、及びＬｏｗの３種類である場合を示しているが、要約精度の種類は、３種類である場合に限られない。例えば、関数切り替えルール設定手段２７は、２種類の要約精度から選択可能に構成されていてもよいし、さらに多くの要約精度の種類から選べるように構成されていてもよい。
【０１２３】
また、本実施形態では、関数切り替えルール記憶手段２２は、関数切り替えルール設定手段２７から渡される（出力される）関数切り替えパラメータを記憶する。
【０１２４】
次に、動作について説明する。本実施形態では、関数切り替えルール設定手段２７は、上記に示した処理に従って、関数切り替えパラメータを設定する処理を実行する。なお、その処理以外の処理については、データ要約システムは、図１７や図１８に示す第２の実施形態と同様の処理（図１７及び図１８参照）を実行するので、説明を省略する。
【０１２５】
以上のように、本実施形態によれば、第２の実施形態の効果に加えて、関数切り替えルール設定手段２７によってデータ要約の精度を選択操作することによって、関数切り替えパラメータＴ１、Ｔ２の値を設定することができる。そのため、ユーザが関数切り替えパラメータに関する知識をもっていなくても、容易にデータ要約の精度とデータ要約率とのバランスを調整することができる。
【０１２６】
実施形態４．
次に、本発明の第４の実施形態を図面を参照して説明する。図２１は、第４の実施形態におけるデータ要約システムの構成例を示すブロック図である。図２１に示すように、本実施形態において、データ要約システムは、図１９に示した関数切り替えルール設定手段２７に代えて、関数切り替えルール自動設定手段２８を含む点で、第３の実施形態と異なる。また、本実施形態において、データ要約システムは、図１９に示した構成要素に加えて、さらに、関数パラメータ監視手段２９を備える点で、第３の実施形態と異なる。
【０１２７】
第１の実施形態、第２の実施形態、及び第３の実施形態では、ユーザが手動で関数切り替えパラメータを設定操作する場合を示したが、関数切り替えパラメータを自動的に設定できれば、ユーザの操作負担を減らすことができる。また、データ発生手段１１から出力されるデータの傾向は、時間によって異なる場合がある（例えば、あまり大きく変動しない時間帯や、大きく変動する時間帯がある）。そのため、データの傾向に合わせて関数切り替えパラメータを動的に再設定することができれば、適切なデータ要約の精度とデータ要約率とを自動的に調整することができる。そこで、本実施形態では、関数切り替えルール自動設定手段２８によって関数切り替えパラメータを自動的に設定し、ユーザが関数切り替えパラメータを設定操作する手間を省き、かつ、データの傾向に合わせて適切なデータ要約の精度とデータ要約率とのバランスを自動調整できるようにする。
【０１２８】
以下、第３の実施形態と同様の構成及び処理を行う部分については記載を省略し、主として、関数切り替えパラメータを自動的に設定するために新たに加えた構成要素について説明する。
【０１２９】
関数パラメータ監視手段２９は、具体的には、プログラムに従って動作する解析サーバのＣＰＵによって実現される。関数パラメータ監視手段２９は、データ発生手段１１が逐次的に発生するデータの傾向を統計処理して監視する機能を備える。具体的には、関数パラメータ監視手段２９は、関数パラメータ記憶手段２３に記憶されている関数パラメータのうち、関数の定義域の始点（ｆｒｏｍ）と関数の定義域の終点（ｔｏ）との値を監視し、監視結果を関数切り替えルール自動設定手段２８に渡す（出力する）。
【０１３０】
関数パラメータ監視手段２９は、監視結果として、例えば、一定区間内に含まれる複数の関数パラメータの関数の定義域の始点（ｆｒｏｍ）から関数の定義域の終点（ｔｏ）までの時間（１つの関数で近似した範囲）の平均値を求めて出力してもよい。また、関数パラメータ監視手段２９は、監視結果として、例えば、一定区間内に含まれる複数の関数パラメータの関数の定義域の始点（ｆｒｏｍ）から関数の定義域の終点（ｔｏ）までの時間の最大値や最小値等を求めて出力してもよい。また、関数パラメータ監視手段２９は、例えば、関数パラメータ記憶手段２３に記憶されている関数の定義域の長さを統計処理して、監視結果として出力してもよい。なお、「一定区間」とは、任意の時間幅の区間であってもよいし、任意個数の関数パラメータが含まれる区間であってもよい。また、監視のタイミングについては、関数パラメータ監視手段２９は、一定時間毎に関数パラメータの監視を行ってもよいし、ユーザの指示操作に従って、任意のタイミングで関数パラメータの監視を行うようにしてもよい。
【０１３１】
図２２は、関数パラメータ監視手段２９が監視する関数パラメータと、関数切り替えルール自動設定手段２８に渡す監視結果との一例を示す説明図である。図２２に示す例では、関数パラメータ監視手段２９は、一定区間として、最新の５個の関数パラメータが含まれる区間を監視するものとする。また、関数パラメータ監視手段２９は、監視結果として、関数の定義域の始点（ｆｒｏｍ）から関数の定義域の終点（ｔｏ）までの時間の平均値を渡す（出力する）ものとする。
【０１３２】
図２２（ａ）に示すように、関数パラメータ監視手段２９は、関数パラメータ記憶手段２３に記憶されている関数パラメータＴ６００のうち、最新の５個の関数パラメータＴ６０１の関数の定義域の始点（ｆｒｏｍ）から関数の定義域の終点（ｔｏ）までの時間をそれぞれ算出し、平均値を計算する。また、関数パラメータ監視手段２９は、図２２（ｂ）に示すように、計算した平均値を、監視結果Ｔ７００として、関数切り替えルール自動設定手段２８に渡す（出力する）。図２２に示す例では、関数パラメータ監視手段２９は、一定区間Ｔ６０１で示される５個の関数パラメータの関数の定義域の始点（ｆｒｏｍ）から関数の定義域の終点（ｔｏ）までの時間の平均値を８２．８秒と求めて出力する。つまり、関数パラメータ監視手段２９は、データ発生手段１１から出力されるデータの近似に用いた関数のうち、最新の５個の関数を、平均８２．８秒分のデータを１つの関数を用いて近似していることになる。以下、関数パラメータ監視手段２９が監視結果として平均値を渡す（出力する）場合を例に説明する。
【０１３３】
関数切り替えルール自動設定手段２８は、具体的には、プログラムに従って動作する解析サーバのＣＰＵ、及び解析サーバが備えるメモリや、磁気ディスク装置、光ディスク装置等の記憶装置によって実現される。関数切り替えルール自動設定手段２８は、関数パラメータ監視手段２９から入力した監視結果に基づいて、関数切り替えパラメータを調整する機能を備える。
【０１３４】
具体的には、関数切り替えルール自動設定手段２８は、関数パラメータ監視手段２９から入力した現在の監視結果を、以前に入力した前回の監視結果と比較し、前回の監視結果より値が大きくなっているか否かを判定する。値が大きくなっていると判定した場合には、１つの関数を用いてより多くのデータを近似している（データ要約率が以前より高くなっている）ことになるので、関数切り替えルール自動設定手段２８は、データ要約率を下げて、データ要約の精度が高くなるように関数切り替えパラメータの値を調整する。また、１つ前の監視結果より値が小さくなっていると判定した場合には、１つの関数でより少ないデータを近似している（データ要約率が以前より低くなっている）ことになるので、関数切り替えルール自動設定手段２８は、データ要約の精度を下げて、データ要約率が高くなるように関数切り替えパラメータの値を調整する。
【０１３５】
なお、関数切り替えルール自動設定手段２８は、関数切り替えパラメータの値の調整を行う際に、一回の調整量を固定の値として調整を行ってもよいし、監視結果の変動の大きさに応じて異なる値の分だけ調整してもよい。つまり、関数切り替えルール自動設定手段２８は、監視結果の変動が大きければ、関数切り替えパラメータの値を大きく変更し、監視結果の変動が小さければ、関数切り替えパラメータの値を小さく変更するようにしてもよい。なお、関数切り替えルール自動設定手段２８は、関数切り替えパラメータの調整後、前回の監視結果を削除して、新たに入力した監視結果を記憶装置に記憶しておく。
【０１３６】
なお、関数切り替えルール自動設定手段２８は、関数パラメータ監視手段２９から初めて監視結果を入力したときには、前回の監視結果をまだ記憶していないので、関数切り替えパラメータの調整を行わず、監視結果を記憶装置に記憶しておく処理だけを行う。そして、関数切り替えルール自動設定手段２８は、２回目以降に監視結果を入力するときから、監視結果を入力する毎に関数切り替えパラメータの調整を行う。また、関数パラメータ自動設定手段２８が関数切り替えパラメータの調整を始める前の最初の１回目の関数パラメータの設定を行う場合には、データ要約システムは、ユーザの設定操作に従って、初期の関数切り替えパラメータを手動で設定する。
【０１３７】
次に、動作について説明する。図２３は、第４の実施形態におけるデータ要約システムが実行する処理の例を示すフローチャートである。図２３に示すように、本実施形態において、データ要約システムの動作ステップは、データ発生のステップ（ステップＳ１００）と、データ要約のステップ（ステップＳ２００）と、データ要約のステップＳ２００で新たな関数式特定パラメータが算出されたか否かを判断するステップ（ステップＳ５００）と、データ一時記憶手段２４によるデータ管理のステップ（ステップＳ４００）と、関数切り替えパラメータ自動設定のステップ（ステップＳ６００）と、データ解析のステップ（ステップＳ３００）とを含む。
【０１３８】
なお、図２３においても、第１の実施形態や第２の実施形態で示したフローチャート（図１１、図１７参照）と同様に、各ステップ（ステップＳ１００、ステップＳ２００、ステップＳ３００、ステップＳ４００、ステップＳ５００、及びステップＳ６００）がシーケンシャルに実行されるように示しているが、実際には、データ要約システムは、各ステップＳ１００〜Ｓ６００の処理を並列的に実行している。
【０１３９】
また、本実施形態において、ステップＳ１００、ステップＳ２００、ステップＳ３００、ステップＳ４００、及びステップＳ５００については、第２の実施形態で示したそれらの処理と同様であるので、説明を省略する。従って、以下、関数切り替えパラメータ自動設定のステップ（ステップＳ６００）について具体的に説明する。図２４は、第４の実施形態における関数切り替えパラメータ自動設定のステップ（ステップＳ６００）の処理例を示すフローチャートである。
【０１４０】
まず、関数パラメータ監視手段２９は、関数パラメータ記憶手段２３に記憶されている関数パラメータを監視し、監視結果を関数切り替えパラメータ自動設定手段２８に渡す（出力する）（ステップＳ６０１）。
【０１４１】
次に、関数切り替えパラメータ自動設定手段２８は、関数パラメータ監視手段２９から入力した現在の監視結果の値と、関数パラメータ自動設定手段２８内に記憶している前回の監視結果の値とを比較する（ステップＳ６０２）。
【０１４２】
ここで、現在の監視結果の値の方が前回の監視結果の値よりも大きいと判断した場合には、１つの関数でより多くのデータを近似している（データ要約率が以前より高くなっている）ことになる。そのため、関数切り替えルール自動設定手段２８は、データ要約率を下げて、データ要約の精度が高くなるように、関数切り替えパラメータＴ１，Ｔ２の値をより小さい値に設定する（ステップＳ６０３）。逆に、現在の監視結果の値の方が前回の監視結果の値よりも小さいと判断した場合には、１つの関数でより少ないデータを近似している（データ要約率が以前より低くなっている）ことになる。そのため、関数切り替えルール自動設定手段２８は、データ要約の精度を下げて、データ要約率が高くなるように、関数切り替えパラメータＴ１，Ｔ２の値をより大きい値に設定する（ステップＳ６０４）。
【０１４３】
そして、関数切り替えパラメータの設定が終わると、関数切り替えパラメータ自動設定手段２８は、前回の監視結果を削除し、現在の監視結果を記憶装置に記憶しておく（ステップＳ６０５）。
【０１４４】
以上のように、本実施形態によれば、第２の実施形態の効果に加えて、関数切り替えパラメータを自動的に設定できるので、ユーザの操作負担を減らすことができる。また、データ発生手段１１から出力されるデータの傾向に合わせて関数切り替えパラメータを動的に再設定することができるので、適切なデータ要約の精度とデータ要約率とを、自動的に調整することができる。
【０１４５】
実施形態５．
次に、本発明の第５の実施形態を図面を参照して説明する。図２５は、第５の実施形態におけるデータ要約システムの構成例を示すブロック図である。図２５に示すように、本実施形態において、データ要約システムは、図２１に示した関数パラメータ監視手段２９に代えて、計算機リソース監視手段４１を含む点で、第４の実施形態と異なる。また、本実施形態において、関数切り替えルール自動設定手段２８Ａの機能が、第４の実施形態で示した関数切り替えルール自動設定手段２８の機能と異なる。
【０１４６】
第４の実施形態では、関数パラメータ記憶手段２３に記憶されている関数パラメータを監視し、監視結果に基づいて、関数切り替えパラメータを自動的に設定する構成について説明した。これに対して、本実施形態では、第４の実施形態と監視する項目が異なり、データ要約システムが動作する計算機のメモリの空き容量を監視する。本実施形態では、メモリの空き容量に合わせて、関数切り替えパラメータを調整することで、指定した期間のデータを、メモリの記憶容量に収まるように適切な要約率で要約することができる。
【０１４７】
以下、第４の実施形態と同様の構成及び処理を行う部分については記載を省略し、主として、メモリの空き容量を監視しながら、関数切り替えパラメータを自動的に設定するために新たに加えた構成要素や変更された点について説明する。
【０１４８】
計算機リソース監視手段４１は、具体的には、プログラムに従って動作する解析サーバのＣＰＵによって実現される。計算機リソース監視手段４１は、データ要約システムを実現する計算機（例えば、解析サーバ）のメモリの空き容量を監視し、監視結果を関数切り替えルール自動設定手段２８に渡す（出力する）機能を備える。例えば、計算機リソース監視手段４１は、監視結果として、現在時刻と、現在時刻におけるメモリの空き容量とを出力するようにすればよい。また、監視のタイミングについては、計算機リソース監視手段４１は、一定時間毎にメモリの空き容量の監視を行ってもよいし、ユーザの指示操作に従って、任意のタイミングでメモリの空き容量の監視を行うようにしてもよい。
【０１４９】
本実施形態では、関数切り替えルール自動設定手段２８Ａは、計算機リソース監視手段４１から入力した監視結果に基づいて、関数切り替えパラメータを調整する機能を備える。
【０１５０】
具体的には、関数切り替えルール自動設定手段２８Ａは、計算機リソース監視手段４１から入力した現在時刻におけるメモリの空き容量と、前回監視結果として入力したメモリの空き容量との差（一回の監視間隔の間に使用されたメモリ量）を求める。また、関数切り替えルール自動設定手段２８は、求めたメモリの空き容量の差と、監視間隔とに基づいて、残りのメモリ空き容量であとどの程度の期間のデータを要約できるかを逆算する。そして、関数切り替えルール自動設定手段２８Ａは、逆算して求めたデータ量よりももっと長い期間のデータを要約したい場合には、データ要約の精度を下げて、データ要約率が高くなるように関数切り替えパラメータを調整する。また、関数切り替えルール自動設定手段２８Ａは、もっと短い期間のデータだけを要約できればよい場合には、データ要約率を下げて、データ要約の精度が高くなるように関数切り替えパラメータを調整する。
【０１５１】
なお、関数切り替えルール自動設定手段２８Ａは、関数切り替えパラメータの調整後、前回の監視結果を削除して、新たに入力した監視結果を記憶装置に記憶しておく。なお、関数切り替えルール自動設定手段２８Ａは、監視間隔を、新たな監視結果を入力した現在時刻と、前回監視結果を入力したときの時間とに基づいて、算出することができる。
【０１５２】
図２６は、計算機リソース監視手段４１から関数切り替えルール自動設定手段２８Ａに渡される現在の監視結果と、関数切り替えルール自動設定手段２８が記憶している前回の監視結果とを示す説明図である。図２６（ａ）に示すように、関数切り替えルール自動設定手段２８Ａは、計算機リソース監視手段４１から、現在の監視結果Ｔ８００として、監視を行った現在時刻Ｔ８０１と、メモリの空き容量Ｔ８０２とを含む情報を入力する。
【０１５３】
また、関数切り替えルール自動設定手段２８Ａは、図２６（ｂ）に示すように、前回の監視結果Ｔ９００を記憶装置に記憶している。関数切り替えルール自動設定手段２８Ａは、計算機リソース監視手段４１から入力した現在の監視結果Ｔ８００と、記憶する前回の監視結果Ｔ９００とに基づいて、残りのメモリ空き容量であとどの程度の期間のデータを要約できるかを逆算する。
【０１５４】
具体的には、関数切り替えルール自動設定手段２８Ａは、前回の監視結果Ｔ９００のメモリの空き容量Ｔ９０２が１０００ＭＢであり、現在の監視結果Ｔ８００のメモリの空き容量Ｔ８０２が９９５ＭＢであるで、前回から現在までの間に１０００ＭＢ−９９５ＭＢ＝５ＭＢのメモリ容量が使用されたと求める。また、関数切り替えルール自動設定手段２８Ａは、前回監視を行った時刻Ｔ９０１が「2008/12/16/13:00:00 」であり、現在監視を行った時刻Ｔ８０１が「2008/12/16/14:00:00 」であるので、監視間隔を１時間と求める。つまり、１時間分の要約後のデータのサイズが５ＭＢであったということになる。
【０１５５】
関数切り替えルール自動設定手段２８Ａは、現在時刻における残りのメモリ空き容量Ｔ８０２が９９５ＭＢであるので、現在の要約率でデータの要約を進めた場合、９９５／５＝１９９の演算を行って、残り１９９時間分のデータをメモリに記憶可能であると見積もる（求める）ことができる。ここで、関数切り替えルール自動設定手段２８Ａは、もっと長い期間のデータを要約したい場合には、データ要約の精度を下げて、データ要約率が高くなるように関数切り替えパラメータを調整する。また、関数切り替えルール自動設定手段２８Ａは、もっと短い期間のデータだけを要約できればよい場合には、データの要約率を下げて、データ要約の精度が高くなるように関数切り替えパラメータを調整する。
【０１５６】
なお、どの程度の期間のデータをメモリに記憶可能なように要約できればよいかという指標については、関数切り替えルール自動設定手段２８Ａが、ユーザ操作に従って、予め設定しておけばよい。例えば、２週間分のデータをメモリに記憶可能なように要約できればよいと設定した場合には、関数切り替えルール自動設定手段２８Ａは、２週間分のデータがメモリに収まるように関数切り替えパラメータの値を調整しながらデータを要約する。
【０１５７】
また、関数切り替えルール自動設定手段２８Ａは、関数切り替えパラメータの値の調整量を行う際に、一回の調整量を固定の値として調整を行ってもよいし、現在の要約率でメモリに記憶可能な残りの期間と、メモリに記憶させたい期間との差に応じて異なる値の分だけ調整してもよい。つまり、関数切り替えルール自動設定手段２８Ａは、現在の要約率でメモリに記憶可能な残り期間とメモリに記憶させたい期間との差が大きければ、関数切り替えパラメータの値を大きく変更し、現在の要約率でメモリに記憶可能な残り期間とメモリに記憶させたい期間との差が小さければ、関数切り替えパラメータの値を小さく変更するようにしてもよい。
【０１５８】
また、図２６に示す例では、監視間隔が１時間である場合を示したが、計算機リソース監視手段４１は、もっと短い監視時間毎にメモリの空き容量を監視してもよいし、もっと長い監視時間毎にメモリの空き容量を監視してもよい。また、計算機リソース監視手段４１は、ユーザの指示操作に従って、任意のタイミングでメモリの空き容量を監視するようにしてもよい。
【０１５９】
なお、関数切り替えルール自動設定手段２８Ａは、計算機リソース監視手段４１から初めて監視結果を入力したときには、前回の監視結果をまだ記憶していないので、関数切り替えパラメータの調整を行わず、監視結果を記憶装置に記憶しておく処理だけを行う。そして、関数切り替えルール自動設定手段２８Ａは、２回目以降に監視結果を入力するときから、監視結果を入力する毎に関数切り替えパラメータの調整を行う。また、関数パラメータ自動設定手段２８Ａが関数切り替えパラメータの調整を始める前の最初の１回目の関数パラメータの設定を行う場合には、データ要約システムは、ユーザの設定操作に従って、初期の関数切り替えパラメータを手動で設定する。
【０１６０】
次に、動作について説明する。本実施形態において、データ要約システムが実行する処理は、第４の実施形態で示した処理（図２３参照）と同様であるが、関数切り替えパラメータ自動設定のステップ（ステップＳ６００）における具体的な処理内容が、第４の実施形態と異なる。ステップＳ１００、ステップＳ２００、ステップＳ３００、ステップＳ４００、及びステップＳ５００については、第２の実施形態で示したそれらの処理と同様であるので、説明を省略する。以下、主として、関数切り替えパラメータ自動設定のステップＳ６００の処理について具体的に説明する。図２７は、第５の実施形態における関数切り替えパラメータ自動設定のステップ（ステップＳ６００）の処理例を示すフローチャートである。
【０１６１】
まず、計算機リソース監視手段４１は、メモリの空き容量を監視し、監視結果を関数切り替えパラメータ自動設定手段２８に渡す（出力する）（ステップＳ６０６）。
【０１６２】
次に、関数切り替えパラメータ自動設定手段２８Ａは、現在の監視結果の値と、関数切り替えパラメータ自動設定手段２８内に記憶している前回の監視結果の値とに基づいて、メモリに記憶可能な残りの期間の見積もり値を算出する（ステップＳ６０７）。
【０１６３】
次に、関数切り替えルール自動設定手段２８Ａは、ステップＳ６０７で算出したメモリに記憶可能な残りの期間と、ユーザ操作によって予め設定されたデータ要約の期間とを比較する（ステップＳ６０８）。メモリに記憶可能な残りの期間の方が、ユーザ操作によって予め設定されたデータ要約の期間より長いと判断した場合（つまり、メモリの空き容量に余裕があると判断した場合）には、関数切り替えルール自動設定手段２８Ａは、データ要約率を下げて、データ要約の精度が高くなるように、関数切り替えパラメータＴ１，Ｔ２の値をより小さい値に設定する（ステップＳ６０９）。逆に、メモリの空き容量に余裕がないと判断した場合には、関数切り替えルール自動設定手段２８Ａは、データ要約の精度を下げて、データ要約率が高くなるように、関数切り替えパラメータＴ１，Ｔ２の値をより大きい値に設定する（ステップＳ６１０）。
【０１６４】
そして、関数切り替えパラメータの設定が終わると、関数切り替えパラメータ自動設定手段２８Ａは、前回の監視結果を削除し、現在の監視結果を記憶装置に記憶する（ステップＳ６１１）。
【０１６５】
以上のように、本実施形態によれば、第２の実施形態の効果に加えて、関数切り替えパラメータを自動的に設定できるので、ユーザの操作負担を減らすことができる。また、メモリの空き容量に合わせて、関数切り替えパラメータを調整することによって、指定した期間のデータを、メモリに収まるように適切な要約率で要約することができる。
【０１６６】
次に、本発明によるデータ要約システムの最小構成について説明する。図２８は、データ要約システムの最小の構成例を示すブロック図である。図２８に示すように、データ要約システムは、最小の構成要素として、関数切り替え手段２１を含む。
【０１６７】
図２８において、関数切り替え手段２１は、逐次発生するデータを取得した逐次データを関数を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータを、逐次データの要約結果として求める機能を備える。また、関数切り替え手段２１は、データを取得すると、該取得したデータに基づいて近似に用いる関数を更新する機能を備える。
【０１６８】
図２８に示す最小構成のデータ要約システムによれば、逐次的に発生するデータを逐次的に要約することができ、解析が始まるまでのタイムラグをなくし、リアルタイムな解析を行うことができる。
【０１６９】
なお、上記に示した各実施形態では、以下の（１）〜（２０）に示すようなデータ要約システムの特徴的構成が示されている。
【０１７０】
（１）データ要約システムは、逐次発生するデータを取得した逐次データ（例えば、Ｗｅｂサーバが出力するログデータ、温度センサや湿度センサが出力するデータ）を関数（例えば、１次関数）を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータ（例えば、傾きａ、切片ｂ、定義域）を、逐次データの要約結果として求めるデータ要約手段（例えば、関数切り替え手段２１によって実現される）を備え、データ要約手段は、データを取得すると、該取得したデータに基づいて近似に用いる関数を更新することを特徴とする。
【０１７１】
（２）また、データ要約システムにおいて、データ要約手段は、関数パラメータとして、逐次データの近似に用いる関数の関数式を特定可能な関数式特定パラメータ（例えば、傾きａ、切片ｂ）を求め、新たなデータを取得すると、該新たに取得したデータの値と関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の切り替え判定用閾値（例えば、関数切り替えパラメータＴ１）と、の比較に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定し、新たな関数に切り替えると判定した場合に、関数式特定パラメータを新たに算出することによって、逐次データの近似に用いる関数を新たな関数に切り替えるように構成されていてもよい。
【０１７２】
（３）また、データ要約システムにおいて、データ要約手段は、関数パラメータとして、逐次データの近似に用いる関数の定義域を求め、新たなデータを取得すると、該新たに取得したデータの値と関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の切り替え判定用閾値と、の比較に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定し、新たな関数に切り替えないと判定した場合に、逐次データの近似に用いている関数の定義域を拡大するように構成されていてもよい。
【０１７３】
（４）また、データ要約システムにおいて、データ要約手段（例えば、関数補正手段２６）は、関数パラメータとして、逐次データの近似に用いる関数の関数式を特定可能な関数式特定パラメータと定義域とを求め、新たなデータを取得すると、該新たに取得したデータの値と関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の補正判定用閾値（例えば、関数切り替えパラメータＴ２）と、の比較に応じて、逐次データの近似に用いている関数を補正するか否かを判定し、補正すると判定した場合に、新たに取得したデータと、逐次データの近似に用いている関数の定義域に含まれるデータとに基づいて、関数式特定パラメータを算出し直すことによって、逐次データの近似に用いている関数を補正するように構成されていてもよい。
【０１７４】
（５）また、データ要約システムは、逐次データを一時記憶するデータ一時記憶手段（例えば、データ一時記憶手段２４によって実現される）と、データ一時記憶手段に記憶されているデータが逐次データの近似に用いている関数の定義域に含まれるデータとなるように制御するデータ一時記憶制御手段（例えば、データ一時記憶管理手段２５によって実現される）とを備え、データ要約手段は、データ一時記憶手段に記憶されているデータを用いて、逐次データの近似に用いている関数を補正するように構成されていてもよい。
【０１７５】
（６）また、データ要約システムは、ユーザの選択操作に従って、逐次データを要約する際のデータ要約の精度を選択し、該選択したデータ要約の精度に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定する関数切り替え判定用閾値設定手段（例えば、関数切り替えルール設定手段２７によって実現される）を備えるように構成されていてもよい。
【０１７６】
（７）また、データ要約システムは、逐次データを統計処理する監視手段（例えば、関数パラメータ監視手段２９によって実現される）と、監視手段が統計処理した結果に基づく逐次データの傾向に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定する関数切り替え判定用閾値自動設定手段（例えば、関数切り替えルール自動設定手段２８によって実現される）とを備えるように構成されていてもよい。
【０１７７】
（８）また、データ要約システムは、データ要約手段が求めた関数パラメータを記憶する関数パラメータ記憶手段（例えば、関数パラメータ記憶手段２３によって実現される）を備え、関数パラメータ記憶手段は、関数パラメータとして、少なくとも逐次データの近似に用いる関数の定義域を記憶し、監視手段は、関数パラメータ記憶手段に記憶されている関数の定義域の長さを統計処理するように構成されていてもよい。
【０１７８】
（９）また、データ要約システムは、逐次データの要約処理に用いる情報処理装置（例えば、データ要約システムを実現する解析サーバ）のリソースの空き容量を監視するリソース監視手段（例えば、計算機リソース監視手段４１によって実現される）と、情報処理装置のリソースの空き容量に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定するリソース用関数切り替え判定用閾値自動設定手段（例えば、関数切り替えルール自動設定手段２８Ａによって実現される）とを備えるように構成されていてもよい。
【０１７９】
（１０）また、データ要約システムは、所定の解析処理を行う解析手段（例えば、解析手段３１によって実現される）と、データ要約手段が求めた関数パラメータに基づいて、逐次データを再現した再現データを求める再現データ算出手段（例えば、関数パラメータ記憶手段２３によって実現される）とを備え、解析手段は、再現データ算出手段が求めた再現データに基づいて解析処理を行うように構成されていてもよい。
【０１８０】
（１１）また、データ要約システムは、逐次発生するデータを取得した逐次データを関数を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータを、前記逐次データの要約結果として求めるデータ要約部を備え、前記データ要約部は、データを取得すると、該取得したデータに基づいて前記近似に用いる関数を更新するように構成されていてもよい。
【０１８１】
（１２）また、データ要約システムにおいて、データ要約部は、関数パラメータとして、逐次データの近似に用いる関数の関数式を特定可能な関数式特定パラメータを求め、新たなデータを取得すると、該新たに取得したデータの値と前記関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の切り替え判定用閾値と、の比較に応じて、前記逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定し、新たな関数に切り替えると判定した場合に、前記関数式特定パラメータを新たに算出することによって、前記逐次データの近似に用いる関数を新たな関数に切り替えるように構成されていてもよい。
【０１８２】
（１３）また、データ要約システムにおいて、データ要約部は、関数パラメータとして、逐次データの近似に用いる関数の定義域を求め、新たなデータを取得すると、該新たに取得したデータの値と前記関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の切り替え判定用閾値と、の比較に応じて、前記逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定し、新たな関数に切り替えないと判定した場合に、前記逐次データの近似に用いている関数の定義域を拡大するように構成されていてもよい。
【０１８３】
（１４）また、データ要約システムにおいて、データ要約部は、関数パラメータとして、逐次データの近似に用いる関数の関数式を特定可能な関数式特定パラメータと定義域とを求め、新たなデータを取得すると、該新たに取得したデータの値と前記関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の補正判定用閾値と、の比較に応じて、前記逐次データの近似に用いている関数を補正するか否かを判定し、補正すると判定した場合に、前記新たに取得したデータと、前記逐次データの近似に用いている関数の定義域に含まれるデータとに基づいて、前記関数式特定パラメータを算出し直すことによって、前記逐次データの近似に用いている関数を補正するように構成されていてもよい。
【０１８４】
（１５）また、データ要約システムは、逐次データを一時記憶するデータ一時記憶部と、前記データ一時記憶部に記憶されているデータが前記逐次データの近似に用いている関数の定義域に含まれるデータとなるように制御するデータ一時記憶制御部とを備え、データ要約部は、前記データ一時記憶部に記憶されているデータを用いて、前記逐次データの近似に用いている関数を補正するように構成されていてもよい。
【０１８５】
（１６）また、データ要約システムは、ユーザの選択操作に従って、逐次データを要約する際のデータ要約の精度を選択し、該選択したデータ要約の精度に応じて、前記逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定する関数切り替え判定用閾値設定部を備えるように構成されていてもよい。
【０１８６】
（１７）また、データ要約システムは、逐次データを統計処理する監視部と、前記監視部が統計処理した結果に基づく前記逐次データの傾向に応じて、前記逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定する関数切り替え判定用閾値自動設定部とを備えるように構成されていてもよい。
【０１８７】
（１８）また、データ要約システムは、データ要約部が求めた関数パラメータを記憶する関数パラメータ記憶部を備え、前記関数パラメータ記憶部は、関数パラメータとして、少なくとも逐次データの近似に用いる関数の定義域を記憶し、監視部は、前記関数パラメータ記憶部に記憶されている関数の定義域の長さを統計処理するように構成されていてもよい。
【０１８８】
（１９）また、データ要約システムは、逐次データの要約処理に用いる情報処理装置のリソースの空き容量を監視するリソース監視部と、前記情報処理装置のリソースの空き容量に応じて、前記逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定するリソース用関数切り替え判定用閾値自動設定部とを備えるように構成されていてもよい。
【０１８９】
（２０）また、データ要約システムは、所定の解析処理を行う解析部と、データ要約部が求めた関数パラメータに基づいて、前記逐次データを再現した再現データを求める再現データ算出部とを備え、前記解析部は、前記再現データ算出部が求めた前記再現データに基づいて解析処理を行うように構成されていてもよい。
【０１９０】
また、上記に示した各実施形態では、以下の（２１）〜（３０）に示すようなデータ要約方法の特徴的構成が示されている。
【０１９１】
（２１）データ要約方法は、逐次発生するデータを取得した逐次データを関数を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータを、逐次データの要約結果として求めるデータ要約ステップを含み、データ要約ステップにおいて、データを取得すると、該取得したデータに基づいて近似に用いる関数を更新することを特徴とする。
【０１９２】
（２２）また、データ要約方法は、データ要約ステップにおいて、関数パラメータとして、逐次データの近似に用いる関数の関数式を特定可能な関数式特定パラメータを求め、新たなデータを取得すると、該新たに取得したデータの値と関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の切り替え判定用閾値と、の比較に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定し、新たな関数に切り替えると判定した場合に、関数式特定パラメータを新たに算出することによって、逐次データの近似に用いる関数を新たな関数に切り替えるように構成されていてもよい。
【０１９３】
（２３）また、データ要約方法は、データ要約ステップにおいて、関数パラメータとして、逐次データの近似に用いる関数の定義域を求め、新たなデータを取得すると、該新たに取得したデータの値と関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の切り替え判定用閾値と、の比較に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定し、新たな関数に切り替えないと判定した場合に、逐次データの近似に用いている関数の定義域を拡大するように構成されていてもよい。
【０１９４】
（２４）また、データ要約方法は、データ要約ステップにおいて、関数パラメータとして、逐次データの近似に用いる関数の関数式を特定可能な関数式特定パラメータと定義域とを求め、新たなデータを取得すると、該新たに取得したデータの値と関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の補正判定用閾値と、の比較に応じて、逐次データの近似に用いている関数を補正するか否かを判定し、補正すると判定した場合に、新たに取得したデータと、逐次データの近似に用いている関数の定義域に含まれるデータとに基づいて、関数式特定パラメータを算出し直すことによって、逐次データの近似に用いている関数を補正するように構成されていてもよい。
【０１９５】
（２５）また、データ要約方法は、逐次データをデータ一時記憶手段に一時記憶するデータ一時記憶ステップと、データ一時記憶手段に記憶されているデータが逐次データの近似に用いている関数の定義域に含まれるデータとなるように制御するデータ一時記憶制御ステップとを含み、データ要約ステップにおいて、データ一時記憶手段に記憶されているデータを用いて、逐次データの近似に用いている関数を補正するように構成されていてもよい。
【０１９６】
（２６）また、データ要約方法は、ユーザの選択操作に従って、逐次データを要約する際のデータ要約の精度を選択し、該選択したデータ要約の精度に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定する関数切り替え判定用閾値設定ステップを含むように構成されていてもよい。
【０１９７】
（２７）また、データ要約方法は、逐次データを統計処理する監視ステップと、統計処理した結果に基づく逐次データの傾向に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定する関数切り替え判定用閾値自動設定ステップとを含むように構成されていてもよい。
【０１９８】
（２８）また、データ要約方法は、求めた関数パラメータを関数パラメータ記憶手段に記憶する関数パラメータ記憶ステップを含み、関数パラメータ記憶ステップにおいて、関数パラメータとして、少なくとも逐次データの近似に用いる関数の定義域を関数パラメータ記憶手段に記憶し、監視ステップにおいて、関数パラメータ記憶手段に記憶されている関数の定義域の長さを統計処理するように構成されていてもよい。
【０１９９】
（２９）また、データ要約方法は、逐次データの要約処理に用いる情報処理装置のリソースの空き容量を監視するリソース監視ステップと、情報処理装置のリソースの空き容量に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定するリソース用関数切り替え判定用閾値自動設定ステップとを含むように構成されていてもよい。
【０２００】
（３０）また、データ要約方法は、所定の解析処理を行う解析ステップと、求めた関数パラメータに基づいて、逐次データを再現した再現データを求める再現データ算出ステップとを含み、解析ステップにおいて、求めた再現データに基づいて解析処理を行うように構成されていてもよい。
【０２０１】
さらに、上記に示した各実施形態では、以下の（３１）〜（４０）に示すようなデータ要約プログラムの特徴的構成が示されている。
【０２０２】
（３１）データ要約プログラムは、コンピュータに、逐次発生するデータを取得した逐次データを関数を用いて近似し、該近似に用いる関数を特定可能なパラメータである関数パラメータを、逐次データの要約結果として求めるデータ要約処理を実行させ、データ要約処理において、データを取得すると、該取得したデータに基づいて近似に用いる関数を更新する処理を実行させるものである。
【０２０３】
（３２）また、データ要約プログラムは、コンピュータに、データ要約処理において、関数パラメータとして、逐次データの近似に用いる関数の関数式を特定可能な関数式特定パラメータを求める処理と、新たなデータを取得すると、該新たに取得したデータの値と関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の切り替え判定用閾値と、の比較に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定する処理と、新たな関数に切り替えると判定した場合に、関数式特定パラメータを新たに算出することによって、逐次データの近似に用いる関数を新たな関数に切り替える処理とを実行させるものであってもよい。
【０２０４】
（３３）また、データ要約プログラムは、コンピュータに、データ要約処理において、関数パラメータとして、逐次データの近似に用いる関数の定義域を求める処理と、新たなデータを取得すると、該新たに取得したデータの値と関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の切り替え判定用閾値と、の比較に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定する処理と、新たな関数に切り替えないと判定した場合に、逐次データの近似に用いている関数の定義域を拡大する処理とを実行させるものであってもよい。
【０２０５】
（３４）また、データ要約プログラムは、コンピュータに、データ要約処理において、関数パラメータとして、逐次データの近似に用いる関数の関数式を特定可能な関数式特定パラメータと定義域とを求める処理と、新たなデータを取得すると、該新たに取得したデータの値と関数式特定パラメータによって特定される関数式を用いて求められる計算値との差と、所定の補正判定用閾値と、の比較に応じて、逐次データの近似に用いている関数を補正するか否かを判定する処理と、補正すると判定した場合に、新たに取得したデータと、逐次データの近似に用いている関数の定義域に含まれるデータとに基づいて、関数式特定パラメータを算出し直すことによって、逐次データの近似に用いている関数を補正する処理とを実行させるものであってもよい。
【０２０６】
（３５）また、データ要約プログラムは、コンピュータに、逐次データをデータ一時記憶手段に一時記憶するデータ一時記憶処理と、データ一時記憶手段に記憶されているデータが逐次データの近似に用いている関数の定義域に含まれるデータとなるように制御するデータ一時記憶制御処理とを実行させ、データ要約処理において、データ一時記憶手段に記憶されているデータを用いて、逐次データの近似に用いている関数を補正する処理を実行させるものであってもよい。
【０２０７】
（３６）また、データ要約プログラムは、コンピュータに、ユーザの選択操作に従って、逐次データを要約する際のデータ要約の精度を選択し、該選択したデータ要約の精度に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定する関数切り替え判定用閾値設定処理を実行させるものであってもよい。
【０２０８】
（３７）また、データ要約プログラムは、コンピュータに、逐次データを統計処理する監視処理と、統計処理した結果に基づく逐次データの傾向に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定する関数切り替え判定用閾値自動設定処理とを実行させるものであってもよい。
【０２０９】
（３８）また、データ要約プログラムは、コンピュータに、求めた関数パラメータを関数パラメータ記憶手段に記憶する関数パラメータ記憶処理を実行させ、関数パラメータ記憶処理において、関数パラメータとして、少なくとも逐次データの近似に用いる関数の定義域を関数パラメータ記憶手段に記憶させる処理を実行させ、監視処理において、関数パラメータ記憶手段に記憶されている関数の定義域の長さを統計処理する処理を実行させるものであってもよい。
【０２１０】
（３９）また、データ要約プログラムは、コンピュータに、逐次データの要約処理に用いる情報処理装置のリソースの空き容量を監視するリソース監視処理と、情報処理装置のリソースの空き容量に応じて、逐次データの近似に用いる関数を新たな関数に切り替えるか否かを判定するための所定の切り替え判定用閾値を設定するリソース用関数切り替え判定用閾値自動設定処理とを実行させるものであってもよい。
【０２１１】
（４０）また、データ要約プログラムは、コンピュータに、所定の解析を行う解析処理と、求めた関数パラメータに基づいて、逐次データを再現した再現データを求める再現データ算出処理とを実行させ、解析処理において、求めた再現データに基づいて解析を行う処理とを実行させるものであってもよい。
【０２１２】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０２１３】
この出願は、２００９年５月１４日に出願された日本特許出願２００９−１１８０３２を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０２１４】
本発明は、サーバが出力するログデータやセンサが出力するデータ等、逐次的に発生するデータを逐次的に要約し、情報量を削減する必要のあるシステムに好適に適用可能である。
【符号の説明】
【０２１５】
１１  データ発生手段
２１  関数切り替え手段
２２  関数切り替えルール記憶手段
２３  関数パラメータ記憶手段
２４  データ一時記憶手段
２５  データ一時記憶管理手段
２６  関数補正手段
２７  関数切り替えルール設定手段
２８，２８Ａ  関数切り替えルール自動設定手段
２９  関数パラメータ監視手段
３１  解析手段
４１  計算機リソース監視手段
【図１】
2010131417.tif 000003
【図２】
2010131417.tif 000004
【図３】
2010131417.tif 000005
【図４】
2010131417.tif 000006
【図５】
2010131417.tif 000007
【図６】
2010131417.tif 000008
【図７】
2010131417.tif 000009
【図８】
2010131417.tif 000010
【図９】
2010131417.tif 000011
【図１０】
2010131417.tif 000012
【図１１】
2010131417.tif 000013
【図１２】
2010131417.tif 000014
【図１３】
2010131417.tif 000015
【図１４】
2010131417.tif 000016
【図１５】
2010131417.tif 000017
【図１６】
2010131417.tif 000018
【図１７】
2010131417.tif 000019
【図１８】
2010131417.tif 000020
【図１９】
2010131417.tif 000021
【図２０】
2010131417.tif 000022
【図２１】
2010131417.tif 000023
【図２２】
2010131417.tif 000024
【図２３】
2010131417.tif 000025
【図２４】
2010131417.tif 000026
【図２５】
2010131417.tif 000027
【図２６】
2010131417.tif 000028
【図２７】
2010131417.tif 000029
【図２８】
2010131417.tif 000030
【図２９】
2010131417.tif 000031
【国際調査報告】
2010131417.tif 000032
2010131417.tif 000033
2010131417.tif 000034
2010131417.tif 000035
2010131417.tif 000036