(57)【要約】【課題】疑似アトラクタの生成過程が機械学習に与える悪影響を抑制することを課題とする。【解決手段】学習装置は、周期的な性質を有する入力データの基本周期から、サイン波を生成する。学習装置は、前記サイン波から生成されたアトラクタの真円度に基づきサンプリング周期を特定する。学習装置は、特定されたサンプリング周期で、入力データをサンプリングして擬似アトラクタを生成する。学習装置は、擬似アトラクタを用いて、機械学習を実行する。【選択図】図１
2020086796.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが、
周期的な性質を有する入力データの基本周期から、サイン波を生成し、
前記サイン波から生成されたアトラクタの真円度に基づきサンプリング周期を特定し、
特定されたサンプリング周期で、前記入力データをサンプリングして擬似アトラクタを生成し、
前記擬似アトラクタを用いて、機械学習を実行する、
処理を実行することを特徴とする機械学習方法。
【請求項２】
データを抽出する各間隔を設定し、
前記各間隔それぞれを用いて、前記サイン波からデータを抽出して、抽出された各データを用いて各アトラクタを生成する処理を前記コンピュータが実行し、
前記特定する処理は、前記各間隔に対応する前記各アトラクタの真円度に基づき、前記サンプリング周期を特定することを特徴とする請求項１に記載の機械学習方法。
【請求項３】
前記特定する処理は、前記各間隔に対応する前記各アトラクタの半径の分散値を算出し、前記分散値が最小となる間隔を、前記サンプリング周期と特定することを特徴とする請求項２に記載の機械学習方法。
【請求項４】
コンピュータに、
周期的な性質を有する入力データの基本周期から、サイン波を生成し、
前記サイン波から生成されたアトラクタの真円度に基づきサンプリング周期を特定し、
特定されたサンプリング周期で、前記入力データをサンプリングして擬似アトラクタを生成し、
前記擬似アトラクタを用いて、機械学習を実行する、
処理を実行させることを特徴とする機械学習プログラム。
【請求項５】
周期的な性質を有する入力データの基本周期から、サイン波を生成する生成部と、
前記サイン波から生成されたアトラクタの真円度に基づきサンプリング周期を特定する特定部と、
特定されたサンプリング周期で、前記入力データをサンプリングして擬似アトラクタを生成する生成部と、
前記擬似アトラクタを用いて、機械学習を実行する学習部と、
を有することを特徴とする機械学習装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械学習方法、機械学習プログラムおよび機械学習装置に関する。
【背景技術】
【０００２】
時系列データを解析してデータの異常に対応した変化を検知する技術として、ＴＤＡ（Topological  Data  Analysis）を用いた解析手法が知られている。例えば、時系列データを入力とし、小区分に区切ったデータから有限個のアトラクタである疑似アトラクタにパーシステントホモロジ変換（ＰＨ変換）を実行してベッチ数を算出する。そして、ベッチ数を用いたベッチ系列を特徴ベクトルとして機械学習を実行して学習モデルを生成する。その後、学習済みの学習モデルを用いて、時系列データから異常を検出する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２００６／１３７１４２号
【特許文献２】特開平１１−１４２４２５号公報
【特許文献３】特開２０１８−９２３４９号公報
【特許文献４】特開２０１７−９７６４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一般的に、時系列データをセンサなどから取得する場合、対象とする現象の特徴を漏らさず捉えられるよう、サンプリング周期を短くすることが多い。ところが、時系列データから疑似アトラクタに変換するときには、着目したい現象に対してサンプリングが細かすぎても粗すぎても有益な特徴を抽出することができず、特徴ベクトルの作成に悪影響を与える。
【０００５】
具体的には、疑似アトラクタを生成するデータのサンプリング周期が短すぎる場合、疑似アトラクタがつぶれた形状となり、ＰＨ変換を用いて生成されるベッチ系列が特徴を正確に表すことができず、正常なデータと異常なデータとで差が生じない。
【０００６】
図１５Ａ、図１５Ｂ、図１５Ｃは、オーバーサンプリング時の問題を説明する図である。図１５Ａに示すように、サンプリング周期が短い場合、オーバーサンプリングされるので、同じようなデータが集中し、疑似アトラクタの形状が直線状になる。つまり、疑似アトラクタは、ある時刻ｔと次の時刻ｔ＋１とさらに次の時刻ｔ＋２を次元とすることから、オーバーサンプリングされる場合は、各時刻で同じようなデータが抽出されることとなる。したがって、疑似アトラクタの形状が直線状になると、図１５Ｂに示すように、ＰＨ変換時に、データ点群はすぐに結合し、穴はすぐに潰れ、特徴が正確に抽出できない。また、オーバーサンプリング時は、図１５Ｃに示すように、データ群が直線で穴ができにくく、特徴が正確に抽出できない。
【０００７】
なお、人手による繰り返し作業によって、適切なサンプリング間隔を探索することも考えられるが、不作為な作業となり、時間がかかるので、現実的ではない。
【０００８】
一つの側面では、疑似アトラクタの生成過程が機械学習に与える悪影響を抑制することができる機械学習方法、機械学習プログラムおよび機械学習装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の案では、機械学習方法は、コンピュータが、周期的な性質を有する入力データの基本周期から、サイン波を生成する。機械学習方法は、コンピュータが、前記サイン波から生成されたアトラクタの真円度に基づきサンプリング周期を特定する。機械学習方法は、コンピュータが、特定されたサンプリング周期で、前記入力データをサンプリングして擬似アトラクタを生成する。機械学習方法は、コンピュータが、前記擬似アトラクタを用いて、機械学習を実行する。
【発明の効果】
【００１０】
一実施形態によれば、疑似アトラクタの生成過程が機械学習に与える悪影響を抑制することができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施例１にかかる学習装置を説明する図である。
【図２】図２は、実施例１にかかる学習装置の機能構成を示す機能ブロック図である。
【図３】図３は、時系列データの一例を示す図である。
【図４】図４は、主となる周波数の求め方を説明する図である。
【図５】図５は、適切な間引き間隔の探索を説明する図である。
【図６】図６は、適切な間引き間隔の探索を説明する図である。
【図７】図７は、学習対象とする時系列データの一例を示す図である。
【図８】図８は、パーシステントホモロジについて説明するための図である。
【図９】図９は、バーコードデータと生成される連続データとの関係について説明するための図である。
【図１０】図１０は、全体的な処理の流れを示すフローチャートである。
【図１１】図１１は、間引き間隔の算出処理の流れを示すフローチャートである。
【図１２Ａ】図１２Ａは、効果を説明する図である。
【図１２Ｂ】図１２Ｂは、効果を説明する図である。
【図１２Ｃ】図１２Ｃは、効果を説明する図である。
【図１３】図１３は、非周期的なデータ例を示す図である。
【図１４】図１４は、ハードウェア構成例を説明する図である。
【図１５Ａ】図１５Ａは、オーバーサンプリング時の問題を説明する図である。
【図１５Ｂ】図１５Ｂは、オーバーサンプリング時の問題を説明する図である。
【図１５Ｃ】図１５Ｃは、オーバーサンプリング時の問題を説明する図である。
【発明を実施するための形態】
【００１２】
以下に、本願の開示する機械学習方法、機械学習プログラムおよび機械学習装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
【実施例１】
【００１３】
［学習装置の説明］
図１は、実施例１にかかる学習装置１０を説明する図である。図１に示す学習装置１０は、機械学習を実行するコンピュータ装置の一例である。具体的には、学習装置１０は、周期的な性質を有するデータの一例である時系列データを入力データとして、適切な間隔で入力データからデータを間引き、学習データを生成する。そして、学習装置１０は、学習データに対してパーシステントホモロジ変換を実行して、疑似アトラクタの生成およびベッチ系列の生成を実行する。
【００１４】
その後、学習装置１０は、ベッチ系列を特徴量として機械学習や深層学習（ディープラーニング（ＤＬ）・Deep  Learning）などを用いた学習処理を実行して、学習データを事象ごとに正しく判別（分類）できるように、ニューラルネットワーク（ＮＮ：Neural  Network）などを学習する。
【００１５】
例えば、学習装置１０は、複数の時系列データそれぞれからベッチ系列を生成し、ベッチ系列に基づいて、他の時系列データから事象が変化した時系列データを抽出する。そして、学習装置１０は、通常の時系列データに対応する事象と、変化が検出された時系列データに対応する事象とが判別できるように学習する。その後、学習装置１０は、学習完了後の判別時には、判別対象データに対しても同様の間引きを実行した後、学習結果を適用した学習モデルに入力することで、判別対象データの正確な事象（ラベル）の推定を実現する。
【００１６】
このような学習装置１０は、基本的な波形から疑似アトラクタの特徴を効果的に表現するための周波数とサンプリング周期の関係を求める。そして、学習装置１０は、解析対象とするデータの支配的な周波数成分などから、解析対象のデータで着目する周波数を決定する。その後、学習装置１０は、決定した周波数と求めた関係から、必要なサンプリング周期を算出することで、自動で最適なサブサンプリングの間隔を決定することができる。
【００１７】
この結果、学習装置１０は、オーバーサンプリングを抑制し、疑似アトラクタの生成過程が機械学習に与える悪影響を抑制することができる。なお、実施例１では、学習装置１０が、学習モデルを生成する学習処理と学習モデルを使用する判別処理との両方を実行する例を説明するが、学習処理と判別処理とは別々の装置で実現することもできる。
【００１８】
［学習装置の機能構成］
図２は、実施例１にかかる学習装置１０の機能構成を示す機能ブロック図である。図２に示すように、学習装置１０は、通信部１１、記憶部１２、制御部２０を有する。
【００１９】
通信部１１は、他の装置の間の通信を制御する処理部であり、例えば通信インタフェースなどである。例えば、通信部１１は、入力データである時系列データや判別対象データを管理装置などから受信し、学習結果や判別結果などを管理装置などに送信する。
【００２０】
記憶部１２は、データや制御部２０が実行するプログラムなどを記憶する記憶装置の一例であり、例えばメモリやハードディスクなどである。この記憶部１２は、入力データＤＢ１３、学習データＤＢ１４、設定値ＤＢ１５、学習結果ＤＢ１６を記憶する。
【００２１】
入力データＤＢ１３は、周期的な性質を有する入力データを記憶するデータベースである。例えば、入力データＤＢ１３は、一例として心拍数の変化を示す時系列データを記憶する。図３は、時系列データの一例を示す図である。図３は心拍数の変化を示す時系列データであり、縦軸が心拍数（beats  per  minute）を表し、横軸は時間を表す。
【００２２】
なお、ここでは連続データとして心拍数の時系列データを例示したが、このような時系列データに限られるわけではない。例えば、心拍数以外の生体データ（脳波、脈拍或いは体温などの時系列データ）、ウェアラブルセンサのデータ（ジャイロセンサ、加速度センサ或いは地磁気センサなどの時系列データ）等であってもよい。また、金融データ（金利、物価、国際収支或いは株価などの時系列データ）、自然環境のデータ（気温、湿度或いは二酸化炭素濃度などの時系列データ）、又は社会データ（労働統計或いは人口統計などのデータ）等であってもよい。
【００２３】
学習データＤＢ１４は、学習モデルの学習に使用される学習データを記憶するデータベースである。例えば、学習データＤＢ１４は、入力データＤＢ１３に記憶される時系列データから、適切な間隔でサンプリングされたサンプリング後のデータ、言い換えると間引き後のデータを記憶する。
【００２４】
設定値ＤＢ１５は、学習に使用される各種設定値を記憶するデータベースである。例えば、設定値ＤＢ１５は、対象とする対象周期（Ｔ）、アトラクタの次元数（ＤＮ）、乱数の発生数（Ｎ）などを記憶する。
【００２５】
学習結果ＤＢ１６は、学習結果を記憶するデータベースである。例えば、学習結果ＤＢ１６は、制御部２０による学習データの判別結果（分類結果）、機械学習やディープラーニングによって学習された各種パラメータを記憶する。
【００２６】
制御部２０は、学習装置１０全体の処理を司る処理部であり、例えばプロセッサなどである。この制御部２０は、間引き実行部２１、系列生成部２２、学習部２３、判別部２４を有する。なお、間引き実行部２１、系列生成部２２、学習部２３、判別部２４は、プロセッサなどが有する電子回路やプロセッサなどが実行するプロセスの一例である。
【００２７】
間引き実行部２１は、オーバーサンプリングを抑制するために適切な間引き間隔を特定し、特定した間引き間隔で入力データからデータの間引きを実行して、学習データを生成する処理部である。具体的には、間引き実行部２１は、周期的な性質を有する入力データの基本周期を用いてサイン波を生成し、サイン波から生成されたアトラクタの真円度に基づきサンプリング周期を特定する。そして、間引き実行部２１は、特定したサンプリング周期にしたがってデータの間引きを実行する。
【００２８】
ここで、サイン波の場合、形状の特徴を最も良く表すのはアトラクタが真円になる場合である。サイン波の式を式（１）とすると、アトラクタを真円にするためには、任意のｔに対して式（２）となる点群が要求される。なお、アトラクタを３次元とする場合、方程式としては球だが、サイン波での点群は中心を通る断面の円周上となる。
【００２９】
【数１】
2020086796.tif 000003
【数２】
2020086796.tif 000004
【００３０】
そして、間引き実行部２１は、式（１）と式（２）を組み合わせることで、周波数と最適な間引き間隔（ｄｔ）との関係を求めることができる。例えば、間引き実行部２１は、複数のｔに対して、アトラクタから構成される円の半径（ｒ）の２乗を求めた際にもっとも半径の２乗（ｒ２）の分散が小さくなる間隔（ｄｔ）を探索する手法や解析的に算出する手法を採用することができる。なお、式（１）におけるＡは振幅であり、ωは角周波数であり、「ω＝（２π）／Ｔ」などと表すこともできる。また、ｔは、時間である。
【００３１】
より詳細には、間引き実行部２１は、解析対象である入力データに周期的なデータが含まれている場合、周波数分析を行うことで、データに含まれる周波数成分の強弱を特定する。そして、間引き実行部２１は、その中で主となる周波数と、式（１）と式（２）との関係式とからサンプリング周期を算出することで、適切な間引き間隔を算出する。
【００３２】
図４は、主となる周波数の求め方を説明する図である。図４に示すように、間引き実行部２１は、主となる周波数を求める際、アトラクタを記載する時系列の小区間ごとに周波数スペクトルを算出して最も強度の強い周波数を求め、求めた周波数を全小区間で平均し、平均値を主となる周波数とすることもできる。そして、間引き実行部２１は、算出した周波数にしたがって、サイン波を生成する。
【００３３】
続いて、間引き実行部２１は、ｘｔのアトラクタが真円になるようなｄｔを算出する。具体的には、間引き実行部２１は、０≦ｔ＜Ｔとなるような規定値Ｎ個（例えば１０００個）の乱数ｔ０からｔＮを生成し、サンプリングするデータを選択する。
【００３４】
そして、間引き実行部２１は、各ｔについて、アトラクタの次元数ＤＮを用いた式（３）を計算し、アトラクタの半径（ｒ）の２乗を算出する。続いて、間引き実行部２１は、各ｔについて算出したｒｔ２の分散値Ｖを算出する。そして、間引き実行部２１は、この分散値Ｖが前回算出されたＶよりも小さくなるまで繰り返し、分散値Ｖが一つ前の分散値Ｖよりも小さくなったとき、その一つ前の分散値Ｖに使用されるｄｔを間引き間隔と特定する。
【００３５】
【数３】
2020086796.tif 000005
【００３６】
ここで、図５と図６を用いて、上述した間引き間隔の探索について説明する。図５と図６は、適切な間引き間隔の探索を説明する図である。図５に示すように、間引き実行部２１は、入力データから生成したサイン波から、間引き間隔（ｄｔ）でデータを抽出し、ｘｔ、ｘｔ＋ｄｔ、ｘｔ＋２ｄｔを各次元とするアトラクタの半径ｒの２乗（ｒ２）を算出する。続いて、間引き実行部２１は、間引き間隔を（ｄｔ）から（２ｄｔ）に変更して、サイン波からデータを抽出し、ｘｔ、ｘｔ＋ｄｔ、ｘｔ＋２ｄｔを各次元とするアトラクタの半径ｒの２乗（ｒ２）を算出する。
【００３７】
このようにして、間引き実行部２１は、サイン波から間引き間隔（ｄｔ）を変更しながら、半径ｒを用いてアトラクタから構成される円の形状を推定する。図６に示すように、この半径ｒは、間引き間隔（ｄｔ）を長くすることで、徐々に真円の半径へと近づき、いずれかのタイミングで真円の半径から離れていく。そこで、間引き実行部２１は、各ｄｔにおける半径ｒの２乗（ｒ２）の分散を算出し、分散値を前回の分散値と比較することで、真円となる間引き間隔（ｄｔ）を特定する。
【００３８】
その後、間引き実行部２１は、特定された間引き間隔（ｄｔ）にしたがって、入力データからデータを間引いて学習データを生成し、学習データＤＢ１４に格納する。
【００３９】
図２に戻り、系列生成部２２は、ＴＤＡにより、学習に使用される特徴量であるベッチ系列を生成する処理部である。具体的には、系列生成部２２は、学習データＤＢ１４に記憶される学習データを読み出し、学習データから複数の擬似アトラクタを生成し、複数の疑似アトラクタそれぞれをパーシステントホモロジ変換して得られたベッチ数による複数のベッチ系列を生成する。そして、系列生成部２２は、生成した各ベッチ系列を学習部２３に出力する。
【００４０】
例えば、系列生成部２２は、一般的な手法を用いてベッチ系列を生成することができる。一例を挙げると、系列生成部２２は、ベッチ数を計算する半径の区間［ｒｍｉｎ，ｒｍａｘ］をｍ−１等分し、各半径ｒｉ（ｉ＝１，・・・，ｍ）におけるベッチ数Ｂ（ｒｉ）を計算し、ベッチ数を並べた［Ｂ（ｒ１），Ｂ（ｒ２），Ｂ（ｒ３），・・・，Ｂ（ｒｍ）］のベッチ系列を生成する。
【００４１】
図７は、学習対象とする時系列データの一例を示す図である。図８は、パーシステントホモロジについて説明するための図である。図９は、バーコードデータと生成される連続データとの関係について説明するための図である。
【００４２】
図７を用いて、疑似アトラクタの生成について説明する。例えば図７に示すような、関数ｆ（ｔ）（ｔは時間を表す）で表される連続データを考える。そして、実際の値としてｆ（１），ｆ（２），ｆ（３），・・・，ｆ（Ｔ）が与えられているとする。本実施の形態における疑似アトラクタは、連続データから遅延時間τ（τ≧１）毎に取り出されたＮ点の値を成分とする、Ｎ次元空間上の点の集合である。ここで、Ｎは埋め込み次元を表し、一般的にはＮ＝３又は４である。例えばＮ＝３且つτ＝１である場合、（Ｔ−２）個の点を含む以下の疑似アトラクタが生成される。
【００４３】
疑似アトラクタ＝｛（ｆ（１），ｆ（２），ｆ（３））、（ｆ（２），ｆ（３），ｆ（４））、（ｆ（３），ｆ（４），ｆ（５））、・・・、（ｆ（Ｔ−２），ｆ（Ｔ−１），ｆ（Ｔ））｝
【００４４】
続いて、系列生成部２２は、疑似アトラクタを生成し、パーシステントホモロジ変換を用いてベッチ系列へ変換する。なお、ここで生成されるアトラクタは、有限個の点集合であることから「疑似アトラクタ」と呼ぶこととする。
【００４５】
ここで、「ホモロジ」とは、対象の特徴をｍ（ｍ≧０）次元の穴の数によって表現する手法である。ここで言う「穴」とはホモロジ群の元のことであり、０次元の穴は連結成分であり、１次元の穴は穴（トンネル）であり、２次元の穴は空洞である。各次元の穴の数はベッチ数と呼ばれる。そして、「パーシステントホモロジ」とは、対象（ここでは、点の集合（Point  Cloud））におけるｍ次元の穴の遷移を特徴付けるための手法であり、パーシステントホモロジによって点の配置に関する特徴を調べることができる。この手法においては、対象における各点が球状に徐々に膨らまされ、その過程において各穴が発生した時刻（発生時の球の半径で表される）と消滅した時刻（消滅時の球の半径で表される）とが特定される。
【００４６】
図８を用いて、パーシステントホモロジをより具体的に説明する。ルールとして、１つの球が接した場合には２つの球の中心が線分で結ばれ、３つの球が接した場合には３つの球の中心が線分で結ばれる。ここでは、連結成分及び穴だけを考える。図８（ａ）のケース（半径ｒ＝０）においては、連結成分のみが発生し、穴は発生していない。図８（ｂ）のケース（半径ｒ＝ｒ1）においては、穴が発生しており、連結成分の一部が消滅している。図８（ｃ）のケース（半径ｒ＝ｒ２）においては、さらに多くの穴が発生しており、連結成分は１つだけ持続している。図８（ｄ）のケース（半径ｒ＝ｒ３）においては、連結成分の数は１のままであり、穴が１つ消滅している。
【００４７】
パーシステントホモロジの計算過程において、ホモロジ群の元（すなわち穴）の発生半径と消滅半径とが計算される。穴の発生半径と消滅半径とを使用することで、バーコードデータを生成することができる。バーコードデータは穴次元毎に生成されるので、複数の穴次元のバーコードデータを統合することで１塊のバーコードデータが生成できる。連続データは、パーシステントホモロジにおける球の半径（すなわち時間）とベッチ数との関係を示すデータである。
【００４８】
図９を用いて、バーコードデータと生成される連続データとの関係について説明する。上段のグラフはバーコードデータから生成されるグラフであり、横軸が半径を表す。下段のグラフは連続データ（ベッチ系列と記載する場合がある）から生成されるグラフであり、縦軸はベッチ数を表し、横軸は時間を表す。上で述べたように、ベッチ数は穴の数を表しており、例えば上段のグラフにおいて破線に対応する半径の時には存在している穴の数が１０であるので、下段のグラフにおいては破線に対応するベッチ数も１０である。ベッチ数は、ブロック毎に計数される。なお、下段のグラフは疑似的な時系列データのグラフであるので、横軸の値自体が意味を持つわけではない。
【００４９】
学習部２３は、系列生成部２２により生成されたベッチ系列を入力として、学習処理を実行して、学習モデルを生成する処理部である。例えば、学習部２３は、ベッチ系列のベッチ数に基づき、時系列データの異常候補を抽出することで、時系列データの事象が判別できるように学習する。つまり、学習部２３は、時系列データを事象Ａ、時系列データを事象Ｂなどのように分類したり、時系列データの中から他とは異なるイベントの発生箇所を検出したりする。
【００５０】
そして、学習部２３は、時系列データの特徴量から事象が分類できるようにＤＬ等によって学習し、学習結果を学習結果ＤＢ１６に格納する。学習の結果は、分類結果（すなわちＤＬ学習の出力）を含み、入力から出力を計算する際のニューラルネットワークの各種パラメータが含まれていてもよい。
【００５１】
また、学習手法は、教師無学習、教師有学習、半教師学習など各種の手法を採用することができる。教師無学習の場合、ＳＶＭ（Support  Vector  Machine）などを用いることができる。教師有学習の場合、時系列データもしくは各周期に対応する時系列データと、事象Ａなどのラベルとを対応付けておき、生成されるベッチ系列にベッチ系列の生成元となったデータに付与されるラベルを設定し、ベッチ系列とラベルとを入力として、教師有学習を実行することもできる。
【００５２】
判別部２４は、学習済みの学習モデルを用いて、判別対象データの判別を実行する処理部である。例えば、判別部２４は、学習結果ＤＢ１６から学習結果のパラメータ等を読み込んで、学習済みの学習モデルを構築する。そして、判別部２４は、判別対象データに対して、上述した間引き間隔の特定処理および間引き処理を実行して、間引き後のデータを生成する。その後、判別部２４は、間引き後のデータを、学習済みの学習モデルに入力し、出力結果に基づいて判別対象データを判別する。例えば、判別部２４は、出力結果が事象Ａと事象Ｂのうち事象Ａに属する場合は事象Ａに分類し、出力結果として得られる事象Ａの確率と事象Ｂの確率のうち事象Ａの確率の方が高い場合は事象Ａに分類する。なお、判別部２４は、判別結果をディスプレイなどの表示部に表示したり、管理装置に送信したりする。
【００５３】
［全体的な処理の流れ］
図１０は、全体的な処理の流れを示すフローチャートである。図１０に示すように、処理開始時が指示されると（Ｓ１０１：Ｙｅｓ）、間引き実行部２１は、入力データを読み込み（Ｓ１０２）、間引き間隔の算出処理を実行する（Ｓ１０３）。
【００５４】
続いて、間引き実行部２１は、間引き間隔の算出結果を用いて、入力データからデータを間引いて、学習データを生成する（Ｓ１０４）。
【００５５】
その後、系列生成部２２は、ＴＤＡによる特徴ベクトルを生成して（Ｓ１０５）、学習部２３は、ＴＤＡによる特徴ベクトルを用いて学習処理を実行して学習モデルを生成する（Ｓ１０６）。
【００５６】
［間引き間隔の算出処理］
図１１は、間引き間隔の算出処理の流れを示すフローチャートである。なお、この処理は、図１０のＳ１０３で実行される処理である。
【００５７】
図１１に示すように、間引き実行部２１は、間引き間隔（ｄｔ）の初期値にサンプリング周期（ＤＴ）を設定する（Ｓ２０１）。続いて、間引き実行部２１は、指定された周期（Ｔ）のサイン波の式（例えば式（１））を生成する（Ｓ２０２）。
【００５８】
そして、間引き実行部２１は、０≦ｔ＜Ｎとなるような規定値Ｎ個の乱数ｔ０からｔｎを生成する（Ｓ２０３）。続いて、間引き実行部２１は、各ｔについて、式（３）を用いた半径の２乗を算出し（Ｓ２０４）、半径の２乗の分散値Ｖを算出する（Ｓ２０５）。
【００５９】
そして、間引き実行部２１は、分散値の算出が１回目、または、算出された分散値Ｖが前回の分散値Ｖｐｒｅよりも大きい場合（Ｓ２０６：Ｎｏ）、今回算出された分散値Ｖを新たなＶｐｒｅに更新し（Ｓ２０７）、間引き間隔（ｄｔ）を「ｄｔ＝ｄｔ＋ＤＴ」で更新し（Ｓ２０８）、Ｓ２０３以降を繰り返す。
【００６０】
一方、間引き実行部２１は、分散値の算出が２回目以降、かつ、算出された分散値Ｖが前回の分散値Ｖｐｒｅよりも小さい場合（Ｓ２０６：Ｙｅｓ）、間引き間隔（ｄｔ）を「ｄｔ＝ｄｔ−ＤＴ」で更新し（Ｓ２０９）、更新後のｄｔを間引き間隔に設定する。
【００６１】
［効果］
上述したように、学習装置１０は、人手による繰り返し作業を行わずに、適切なサンプリング間隔を抽出できるので、疑似アトラクタの生成過程が機械学習に与える悪影響を抑制することができ、分析も高速化することができる。また、学習装置１０は、着目する周波数に対する適切なサンプリング間隔を提示するので、データのサンプリング周期が適切であるか否かを判別することもできる。
【００６２】
図１２Ａ、図１２Ｂ、図１２Ｃは、効果を説明する図である。図１２Ａに示すように、間引き間隔が適切である場合、オーバーサンプリングが抑制されるので、同じようなデータの集中が抑制され、疑似アトラクタの形状が円状になる。つまり、疑似アトラクタは、ある時刻ｔと次の時刻ｔ＋１とさらに次の時刻ｔ＋２を次元としており、適切なサンプリング時は、各時刻で同じようなデータが抽出されることを抑制できる。したがって、疑似アトラクタの形状が円状になると、図１２Ｂに示すように、ＰＨ変換時に、データ点群はの穴の変化を適切に抽出することができるので、特徴を正確に抽出することができる。また、実施例１による手法では、図１２Ｃに示すように、データ群が円状に分布するので、特徴を正確に抽出することができる。
【実施例２】
【００６３】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
【００６４】
［データ種別］
上記実施例では、周期的なデータを用いた例を説明したが、これに限定されるものではない。図１３は、非周期的なデータ例を示す図である。図１３に示すような、周期的なデータでなく、電流等で時間的な変動がある値で安定するような場合でも、例えば時定数τを用いて、目安となる周波数ｆ＝１／（２τ）が算出できるので、間引き間隔も求めることができる。
【００６５】
［数値等］
また、上記実施例で用いた数値、ラベルの設定内容、各種設定値、疑似アトラクタの次元数等は、あくまで一例であり、任意に変更することができる。また、入力データや学習方法などもあくまで一例であり、任意に変更することができる。
【００６６】
［システム］
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００６７】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、学習処理と判別処理とを別々の装置で実現することもできる。
【００６８】
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００６９】
［ハードウェア］
図１４は、ハードウェア構成例を説明する図である。図１４に示すように、学習装置１０は、通信装置１０ａ、ＨＤＤ（Hard  Disk  Drive）１０ｂ、メモリ１０ｃ、プロセッサ１０ｄを有する。また、図１４に示した各部は、バス等で相互に接続される。
【００７０】
通信装置１０ａは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。ＨＤＤ１０ｂは、図２に示した機能を動作させるプログラムやＤＢを記憶する。
【００７１】
プロセッサ１０ｄは、図２に示した各処理部と同様の処理を実行するプログラムをＨＤＤ１０ｂ等から読み出してメモリ１０ｃに展開することで、図２等で説明した各機能を実行するプロセスを動作させる。すなわち、このプロセスは、学習装置１０が有する各処理部と同様の機能を実行する。具体的には、プロセッサ１０ｄは、間引き実行部２１、系列生成部２２、学習部２３、判別部２４等と同様の機能を有するプログラムをＨＤＤ１０ｂ等から読み出す。そして、プロセッサ１０ｄは、間引き実行部２１、系列生成部２２、学習部２３、判別部２４等と同様の処理を実行するプロセスを実行する。
【００７２】
このように学習装置１０は、プログラムを読み出して実行することで学習方法を実行する情報処理装置として動作する。また、学習装置１０は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、学習装置１０によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【符号の説明】
【００７３】
１０  学習装置
１１  通信部
１２  記憶部
１３  入力データＤＢ
１４  学習データＤＢ
１５  設定値ＤＢ
１６  学習結果ＤＢ
２０  制御部
２１  間引き実行部
２２  系列生成部
２３  学習部
２４  判別部
【図１】
2020086796.tif 000006
【図２】
2020086796.tif 000007
【図３】
2020086796.tif 000008
【図４】
2020086796.tif 000009
【図５】
2020086796.tif 000010
【図６】
2020086796.tif 000011
【図７】
2020086796.tif 000012
【図８】
2020086796.tif 000013
【図９】
2020086796.tif 000014
【図１０】
2020086796.tif 000015
【図１１】
2020086796.tif 000016
【図１２Ａ】
2020086796.tif 000017
【図１２Ｂ】
2020086796.tif 000018
【図１２Ｃ】
2020086796.tif 000019
【図１３】
2020086796.tif 000020
【図１４】
2020086796.tif 000021
【図１５Ａ】
2020086796.tif 000022
【図１５Ｂ】
2020086796.tif 000023
【図１５Ｃ】
2020086796.tif 000024