(57)【要約】【課題】精度のよい特徴量を抽出することを課題とする。【解決手段】特徴量抽出装置は、周期的な性質を有する時系列データからアトラクタを生成し、アトラクタをパーシステントホモロジ変換することにより、パーシステントダイアグラムを生成する。特徴量抽出装置は、パーシステントダイアグラムに対して、パーシステントホモロジ変換により生成される穴の生存時間または穴の発生時刻に基づき、パーシステントダイアグラムの各データの影響度を変更する。特徴量抽出装置は、影響度が変更された変更後のパーシステントダイアグラムから、時系列データの特徴量を抽出する。【選択図】図１７
2020166440.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが、
周期的な性質を有する時系列データからアトラクタを生成し、
前記アトラクタをパーシステントホモロジ変換することにより、パーシステントダイアグラムを生成し、
前記パーシステントダイアグラムに対して、前記パーシステントホモロジ変換により生成される穴の生存時間または穴の発生時刻に基づき、前記パーシステントダイアグラムの各データの影響度を変更し、
前記影響度が変更された変更後のパーシステントダイアグラムから、前記時系列データの特徴量を抽出する
処理を実行することを特徴とする特徴量抽出方法。
【請求項２】
前記変更する処理は、前記生存時間が一定値以下では徐々に０に近づくとともに、前記生存時間が前記一定値以上であれば所定値となる重みを、前記パーシステントダイアグラムの各データに設定して前記影響度を変更し、
前記抽出する処理は、前記影響度が変更された変更後のパーシステントダイアグラムからバーコードデータを生成し、前記バーコードデータに基づきベッチ系列を生成することを特徴とする請求項１に記載の特徴量抽出方法。
【請求項３】
前記変更する処理は、前記発生時刻が閾値以下の穴に対応する、前記パーシステントダイアグラム上のデータに対して１未満の重みを設定して、前記影響度を変更し、
前記抽出する処理は、前記影響度が変更された変更後のパーシステントダイアグラムからバーコードデータを生成し、前記バーコードデータに基づきベッチ系列を生成することを特徴とする請求項１または２に記載の特徴量抽出方法。
【請求項４】
前記変更する処理は、前記生存時間が一定値以下では徐々に０に近づくとともに、前記生存時間が前記一定値以上であれば所定値となる重みを、前記パーシステントダイアグラムの各データに設定して前記影響度を変更し、
前記抽出する処理は、前記影響度が変更された変更後のパーシステントダイアグラムから、前記変更後のパーシステントダイアグラムにおける各データの生存時間の和を、前記特徴量として抽出することを特徴とする請求項１に記載の特徴量抽出方法。
【請求項５】
ユーザに設定されたセンサから前記時系列データを随時取得し、
随時取得される前記時系列データの特徴量を表示し、
前記時系列データの特徴量の変化を検出する、処理を前記コンピュータがさらに実行することを特徴とする請求項１から４のいずれか一つに記載の特徴量抽出方法。
【請求項６】
コンピュータに、
周期的な性質を有する時系列データからアトラクタを生成し、
前記アトラクタをパーシステントホモロジ変換することにより、パーシステントダイアグラムを生成し、
前記パーシステントダイアグラムに対して、前記パーシステントホモロジ変換により生成される穴の生存時間または穴の発生時刻に基づき、前記パーシステントダイアグラムの各データの影響度を変更し、
前記影響度が変更された変更後のパーシステントダイアグラムから、前記時系列データの特徴量を抽出する
処理を実行させることを特徴とする特徴量抽出プログラム。
【請求項７】
周期的な性質を有する時系列データからアトラクタを生成する生成部と、
前記アトラクタをパーシステントホモロジ変換することにより、パーシステントダイアグラムを生成する生成部と、
前記パーシステントダイアグラムに対して、前記パーシステントホモロジ変換により生成される穴の生存時間または穴の発生時刻に基づき、前記パーシステントダイアグラムの各データの影響度を変更する変更部と、
前記影響度が変更された変更後のパーシステントダイアグラムから、前記時系列データの特徴量を抽出する抽出部と
を有することを特徴とする特徴量抽出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特徴量抽出方法、特徴量抽出プログラムおよび特徴量抽出装置に関する。
【背景技術】
【０００２】
脳波や加速度などの時系列データを解析してデータの異常に対応した変化を検知する技術として、トポロジカルデータ解析（ＴＤＡ：Topological  Data  Analysis）を用いた解析手法が知られている。例えば、時系列データを入力とし、小区分に区切ったデータから有限個のアトラクタである疑似アトラクタと呼ばれる図形に変換する。そして、図形の特徴をパーシステントホモロジ変換（ＰＨ変換）により抽出する際に、特徴となる穴の生成（発生）と消失をプロットしたパーシステントダイアグラムを生成し、パーシステントダイアグラムからバーコードデータを生成した後、最終的にベッチ数を算出する。
【０００３】
このようにして生成されたベッチ数を用いたベッチ系列を特徴ベクトルとして機械学習を実行して学習モデルを生成する。その後、学習済みの学習モデルを用いて、時系列データから異常を検出する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２００６／１３７１４２号
【特許文献２】特開平１１−１４２４２５号公報
【特許文献３】特開２０１８−９２３４９号公報
【特許文献４】特開２０１７−９７６４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、パーシステントダイアグラムのすべてのデータを用いてベッチ系列を生成する場合、生成と消滅のタイミングが近い、すなわち生存時間が短いノイズの情報が含まれる。このため、パーシステントダイアグラムから生存時間が短い情報を除去してベッチ系列を生成することで、時系列データの特徴量の抽出精度を高めることが考えられる。
【０００６】
しかしながら、生存時間が短い情報を完全に除去してしまうと、すべてが除去条件に該当する時系列データが複数発生した場合に、それらが区別できない。また、振幅が小さい時系列データの場合、生存時間が短くはない範囲にノイズ成分が出現することがあり、特徴量抽出に悪影響を与えてしまう。
【０００７】
一つの側面では、精度のよい特徴量を抽出することができる特徴量抽出方法、特徴量抽出プログラムおよび特徴量抽出装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
第１の案では、特徴量抽出方法は、コンピュータが、周期的な性質を有する時系列データからアトラクタを生成し、前記アトラクタをパーシステントホモロジ変換することにより、パーシステントダイアグラムを生成する処理を実行する。特徴量抽出方法は、コンピュータが、前記パーシステントダイアグラムに対して、前記パーシステントホモロジ変換により生成される穴の生存時間または穴の発生時刻に基づき、前記パーシステントダイアグラムの各データの影響度を変更する処理を実行する。特徴量抽出方法は、コンピュータが、前記影響度が変更された変更後のパーシステントダイアグラムから、前記時系列データの特徴量を抽出する処理を実行する。
【発明の効果】
【０００９】
一実施形態によれば、精度のよい特徴量を抽出することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例１にかかる特徴量抽出装置を説明する図である。
【図２】図２は、特徴抽出装置を学習処理および推論処理に適用した場合の全体図を説明する図である。
【図３】図３は、実施例１にかかる特徴量抽出装置の機能構成を示す機能ブロック図である。
【図４】図４は、時系列データの一例を示す図である。
【図５】図５は、時系列データの一例を示す図である。
【図６】図６は、パーシステントホモロジについて説明するための図である。
【図７】図７は、バーコードデータと生成される連続データとの関係について説明するための図である。
【図８】図８は、パーシステントダイアグラムを説明する図である。
【図９】図９は、一般的なノイズ除去を説明する図である。
【図１０】図１０は、一般的なノイズ除去の問題点を説明する図である。
【図１１】図１１は、生存時間が短い情報がノイズは限らない理由を説明する図である。
【図１２】図１２は、振幅が小さいデータのノイズ除去を説明する図である。
【図１３】図１３は、発生が早い成分がノイズとなる理由１を説明する図である。
【図１４】図１４は、発生が早い成分がノイズとなる理由２を説明する図である。
【図１５】図１５は、実施例１の重み設定を説明する図である。
【図１６】図１６は、重み設定の一例を説明する図である。
【図１７】図１７は、重み設定前後のベッチ系列の変化を説明する図である。
【図１８】図１８は、処理の流れを示すフローチャートである。
【図１９】図１９は、人の動作分類に適用した学習時の例を説明する図である。
【図２０】図２０は、人の動作分類に適用した推論時の例を説明する図である。
【図２１】図２１は、実施例２にかかる手法を説明する図である。
【図２２】図２２は、実施例２による手法を異常検知に適用した例を説明する図である。
【図２３】図２３は、実施例２による手法を異常検知に適用した例を説明する図である。
【図２４】図２４は、ハードウェア構成例を説明する図である。
【発明を実施するための形態】
【００１１】
以下に、本願の開示する特徴量抽出方法、特徴量抽出プログラムおよび特徴量抽出装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
【実施例１】
【００１２】
［特徴量抽出装置の説明］
図１は、実施例１にかかる特徴量抽出装置１０を説明する図である。図１に示すように、特徴量抽出装置１０は、時系列データである入力データに対して、複数の擬似アトラクタを生成し、複数の疑似アトラクタそれぞれにパーシステントホモロジ変換（ＰＨ変換）を実行して、穴の発生と消滅とを特定する。そして、特徴量抽出装置１０は、穴の発生時刻（Birth）と消滅時刻（Death）とをプロットしたパーシステントダイアグラム（以下では、単に「ダイアグラム」と記載する場合がある）を生成し、生存時間が０を示す対角線からの距離により各穴の生存時間を抽出する。
【００１３】
その後、特徴量抽出装置１０は、生存時間や発生時刻に対して重みを設定して重要度を変更した後、バーコードデータの生成およびベッチ系列の生成を実行する。このようにして生成されたベッチ系列は、入力データの特徴量として、各データの特徴量を学習する学習処理、学習済みモデルを用いた推論処理、特徴量を用いた異常検知などを行う分析処理などに利用される。
【００１４】
ここで、特徴量抽出装置１０を学習処理および推論処理に適用した例を説明する。図２は、特徴量抽出装置１０を学習処理および推論処理に適用した場合の全体図を説明する図である。
【００１５】
図２に示すように、学習フェーズでは、特徴量抽出装置１０は、「ラベルＡ」が付与された「単位時間分の時系列データ」などのように、ラベル付きの入力データに対して、アトラクタ生成、ＰＨ変換、ダイアグラム生成、重み設定、ベッチ系列の生成を実行する。そして、特徴量抽出装置１０は、ラベル付きの入力データに対応するラベル付きのベッチ系列（特徴量）を生成する。その後、特徴量抽出装置１０は、ラベル付きのベッチ系列を機械学習へ入力し、ベッチ系列からラベルを推定するモデルを学習する。
【００１６】
また、推論フェーズでは、特徴量抽出装置１０は、測定データである「単位時間分の時系列データ」などのラベルなしの入力データに対して、アトラクタ生成、ＰＨ変換、ダイアグラム生成、重み設定、ベッチ系列の生成を実行する。そして、特徴量抽出装置１０は、ラベルなしの入力データに対応するベッチ系列（特徴量）を生成し、学習済みモデルに入力して、学習済みモデルの出力結果を取得する。その後、特徴量抽出装置１０は、学習済みモデルの出力結果に基づき、入力データのラベルを特定する。
【００１７】
なお、ここでは、特徴量抽出装置１０が学習処理と類推処理とを実行する例を説明したが、あくまで一例であり、特徴量抽出処理、学習処理、類推処理のそれぞれが別々の装置で実行されていてもよい。
【００１８】
［機能構成］
図３は、実施例１にかかる特徴量抽出装置１０の機能構成を示す機能ブロック図である。図３に示すように、特徴量抽出装置１０は、通信部１１、記憶部１２、制御部２０を有する。
【００１９】
通信部１１は、他の装置の間の通信を制御する処理部であり、例えば通信インタフェースなどである。例えば、通信部１１は、脳波測定器が測定した脳波データ、ウェアラブルセンサなどで取得された加速度データなどの時系列データを、入力データとして各測定器から受信する。
【００２０】
記憶部１２は、データや制御部２０が実行するプログラムなどを記憶する記憶装置の一例であり、例えばメモリやハードディスクなどである。この記憶部１２は、入力データＤＢ１３、ＰＨ情報ＤＢ１４、重み設定ＤＢ１５、特徴量ＤＢ１６を記憶する。
【００２１】
入力データＤＢ１３は、特徴量抽出の対象である時系列データを記憶するデータベースである。ここでは、入力データとしては、心拍数の変化を示す時系列データなどの周期的な性質を有する時系列データを用いて説明する。図４は、時系列データの一例を示す図である。図４は心拍数の変化を示す時系列データであり、縦軸が心拍数（Beats  Per  Minute）を表し、横軸は時間を表す。
【００２２】
なお、ここでは連続データとして心拍数の時系列データを例示したが、このような時系列データに限られるわけではない。例えば、心拍数以外の生体データ（脳波、脈拍或いは体温などの時系列データ）、ウェアラブルセンサのデータ（ジャイロセンサ、加速度センサ或いは地磁気センサなどの時系列データ）等であってもよい。また、金融データ（金利、物価、国際収支或いは株価などの時系列データ）、自然環境のデータ（気温、湿度或いは二酸化炭素濃度などの時系列データ）、又は社会データ（労働統計或いは人口統計などのデータ）等であってもよい。
【００２３】
ＰＨ情報ＤＢ１４は、アトラクタ生成やＰＨ変換などで生成される情報を記憶するデータベースである。例えば、ＰＨ情報ＤＢ１４は、疑似アトラクタの点群の各座標、ＰＨ変換で生成される各穴の発生時刻と消滅時刻、各穴の生存時間などを記憶する。
【００２４】
重み設定ＤＢ１５は、パーシステントダイアグラムに与える重み情報を記憶するデータベースである。例えば、重み設定ＤＢ１５は、穴が生成された時刻である発生時刻（生存値）や、穴の発生時刻と消滅時刻との差分である生存時間などに対応付けて、設定する重みを記憶する。
【００２５】
特徴量ＤＢ１６は、制御部２０によって生成された特徴量を記憶するデータベースである。例えば、特徴量ＤＢ１６は、重みが設定されたバーコードデータに関する情報や、学習処理や類推処理などで特徴量として利用されるベッチ系列に関する情報を記憶する。
【００２６】
制御部２０は、特徴量抽出装置１０全体の処理を司る処理部であり、例えばプロセッサなどである。この制御部２０は、ＰＨ処理部２１、ダイアグラム生成部２２、重み設定部２３、特徴量抽出部２４、特徴量処理部２５を有する。なお、ＰＨ処理部２１、ダイアグラム生成部２２、重み設定部２３、特徴量抽出部２４、特徴量処理部２５は、プロセッサなどが有する電子回路やプロセッサなどが実行するプロセスの一例である。
【００２７】
ＰＨ処理部２１は、入力データに対してアトラクタの生成およびＰＨ変換を実行する処理部である。具体的には、ＰＨ処理部２１は、入力データＤＢ１３に記憶される入力データを読み出し、入力データから疑似アトラクタを生成する。そして、ＰＨ処理部２１は、疑似アトラクタに対してパーシステントホモロジ変換を実行して、穴の発生時刻と消滅時刻とを抽出し、ＰＨ情報ＤＢ１４に格納する。
【００２８】
まず、図５と図６を用いて、特開２０１７−９７６４３号公報と同様の手法によるベッチ系列の生成を簡単に説明する。なお、ここでは、０次元、１次元、２次元の穴次元について説明するが、このうち、実施例１では０次元の穴と１次元の穴を対象とする。特開２０１７−９７６４３号公報では、ベッチ数を計算する半径の区間［ｒｍｉｎ，ｒｍａｘ］をｍ−１等分し、各半径ｒｉ（ｉ＝１，・・・，ｍ）におけるベッチ数Ｂ（ｒｉ）を計算し、ベッチ数を並べた［Ｂ（ｒ１），Ｂ（ｒ２），Ｂ（ｒ３），・・・，Ｂ（ｒｍ）］のベッチ系列を生成する。
【００２９】
図５は、時系列データの一例を示す図である。図６は、パーシステントホモロジについて説明するための図である。図５を用いて、疑似アトラクタの生成について説明する。例えば図５に示すような、関数ｆ（ｔ）（ｔは時間を表す）で表される連続データを考える。そして、実際の値としてｆ（１），ｆ（２），ｆ（３），・・・，ｆ（Ｔ）が与えられているとする。本実施の形態における疑似アトラクタは、連続データから遅延時間τ（τ≧１）毎に取り出されたＮ点の値を成分とする、Ｎ次元空間上の点の集合である。ここで、Ｎは埋め込み次元を表し、一般的にはＮ＝３又は４である。例えばＮ＝３且つτ＝１である場合、（Ｔ−２）個の点を含む以下の疑似アトラクタが生成される。
【００３０】
疑似アトラクタ＝｛（ｆ（１），ｆ（２），ｆ（３））、（ｆ（２），ｆ（３），ｆ（４））、（ｆ（３），ｆ（４），ｆ（５））、・・・、（ｆ（Ｔ−２），ｆ（Ｔ−１），ｆ（Ｔ））｝
【００３１】
続いて、ＰＨ処理部２１は、疑似アトラクタを生成し、パーシステントホモロジ変換を用いて穴の発生と消滅を抽出した後、最終的にベッチ系列への変換が実行される。なお、ここで生成されるアトラクタは、有限個の点集合であることから「疑似アトラクタ」と呼ぶこととする。
【００３２】
ここで、「ホモロジ」とは、対象の特徴をｍ（ｍ≧０）次元の穴の数によって表現する手法である。ここで言う「穴」とはホモロジ群の元のことであり、０次元の穴は連結成分であり、１次元の穴は穴（トンネル）であり、２次元の穴は空洞である。各次元の穴の数はベッチ数と呼ばれる。そして、「パーシステントホモロジ」とは、対象（ここでは、点の集合（Point  Cloud））におけるｍ次元の穴の遷移を特徴付けるための手法であり、パーシステントホモロジによって点の配置に関する特徴を調べることができる。この手法においては、対象における各点が球状に徐々に膨らまされ、その過程において各穴が発生した時刻（発生時の球の半径で表される）と消滅した時刻（消滅時の球の半径で表される）とが特定される。
【００３３】
図６を用いて、パーシステントホモロジをより具体的に説明する。ルールとして、１つの球が接した場合には２つの球の中心が線分で結ばれ、３つの球が接した場合には３つの球の中心が線分で結ばれる。ここでは、連結成分及び穴だけを考える。図６（ａ）のケース（半径ｒ＝０）においては、連結成分のみが発生し、穴は発生していない。図６（ｂ）のケース（半径ｒ＝ｒ1）においては、穴が発生しており、連結成分の一部が消滅している。図６（ｃ）のケース（半径ｒ＝ｒ2）においては、さらに多くの穴が発生しており、連結成分は１つだけ持続している。図６（ｄ）のケース（半径ｒ＝ｒ3）においては、連結成分の数は１のままであり、穴が１つ消滅している。
【００３４】
パーシステントホモロジの計算過程において、ホモロジ群の元（すなわち穴）の発生半径と消滅半径とが計算される。穴の発生半径と消滅半径とを使用することで、バーコードデータを生成することができる。バーコードデータは穴次元毎に生成されるので、複数の穴次元のバーコードデータを統合することで１塊のバーコードデータが生成できる。連続データは、パーシステントホモロジにおける球の半径（すなわち時間）とベッチ数との関係を示すデータである。
【００３５】
なお、ここで、一般的なバーコードデータの生成について簡単に説明する。図７は、バーコードデータと生成される連続データとの関係について説明するための図である。図７の上段のグラフはバーコードデータから生成されるグラフであり、横軸が半径を表す。下段のグラフは連続データ（ベッチ系列と記載する場合がある）から生成されるグラフであり、縦軸はベッチ数を表し、横軸は時間を表す。上で述べたように、ベッチ数は穴の数を表しており、例えば上段のグラフにおいて破線に対応する半径の時には存在している穴の数が１０であるので、下段のグラフにおいては破線に対応するベッチ数も１０である。ベッチ数は、ブロック毎に計数される。なお、下段のグラフは疑似的な時系列データのグラフであるので、横軸の値自体が意味を持つわけではない。
【００３６】
図３に戻り、ダイアグラム生成部２２は、ＰＨ処理部２１の処理結果を用いて、パーシステントダイアグラムを生成する処理部である。具体的には、ダイアグラム生成部２２は、ＰＨ情報ＤＢ１４から、ＰＨ変換で得られた各穴の発生時刻と消滅時刻とを取得し、パーシステントダイアグラムを生成する。そして、ダイアグラム生成部２２は、パーシステントダイアグラムのプロット結果からバーコードデータを生成し、その結果をＰＨ情報ＤＢ１４に格納する。
【００３７】
図８は、パーシステントダイアグラムを説明する図である。図８に示すように、ダイアグラム生成部２２は、横軸を発生時刻（Birth）、縦軸を消滅時刻（Death）とするダイアグラムを生成する。このダイアグラムの対角線は、発生してすぐに消滅した穴が該当し、生存時間がおおよそ０に近い穴が該当する。なお、本実施例では、ＰＨ処理で生成される０次元と１次元の穴についてプロットし、０次元の穴は白丸で記載し、１次元の穴は黒丸で示す。
【００３８】
ここで、パーシステントダイアグラムについて説明する。パーシステントダイアグラムは、パーシステントホモロジの計算によって求められる発生半径と消滅半径とに基づき生成された図である。
【００３９】
このようなパーシステントダイアグラムを本実施例に採用した場合、パーシステントダイアグラムにおける各点（本実施例では、データや穴データと記載する場合がある）は、パーシステントホモロジ変換で抽出される穴を示し、ある軸上に穴の発生パラメータである発生軸を、他の軸上に穴の消滅パラメータである消滅軸をとることにより、時系列データの特徴を抽出する。具体的には、パーシステントダイアグラムでは、穴の生成と消滅の時間間隔をみることが可能であり、ダイアグラム中央の対角線は、穴の発生と消滅の時間間隔が０であることを示し、穴の発生と消滅の時間間隔が小さい場合は、対角線付近にダイアグラムが生成され、その穴をノイズとみなすことができる。例えば、振幅の大きな波形から構成される心電波の場合、穴の発生から消滅までの時間間隔が大きくなるため、ダイアグラムが対角線から遠い位置に生成される。また、心電波形よりも振幅が小さくなる脳波の場合、穴の発生から消滅までの時間間隔が小さくなるため、ダイアグラムが対角線から離れた位置に生成される。
【００４０】
重み設定部２３は、ダイアグラム生成部２２により生成されたパーシステントダイアグラムに重みを設定する処理部である。具体的には、重み設定部２３は、生存時間が閾値以下のデータと生成のタイミング（発生時刻）が閾値よりも早いデータに対して、ノイズの可能性が高いと判定して、それらの重みを軽くして重要度を下げる。
【００４１】
（一般的なノイズ除去の問題点）
ここで、一般的なノイズ除去としては、生存時間が短いデータを一律に除去する手法が知られている。なぜなら、微小振動や高周波成分などのノイズ成分の影響があるとアトラクタとして孤立点となり、生存時間が短くなることが多いからである。図９は、一般的なノイズ除去を説明する図である。図９に示すように、一般的なノイズ除去では、パーシステントダイアグラムのプロット結果のうち対角線から一定距離以下にあるデータ、すなわち対角線付近に出現する生存時間が短い領域（ａ）に該当するデータを削除する手法である。
【００４２】
しかし、生存時間が短いデータが意味を持つ場合もあるので、完全に影響度を０としてしまうと不都合が生じる場合がある。図１０は、一般的なノイズ除去の問題点を説明する図である。図１０の（Ａ）と（Ｂ）は、別々の時系列データから生成されたパーシステントダイアグラムを示している。これらは、パーシステントダイアグラムのプロット結果全体からは異なるデータの異なる特徴量として抽出することができるが、生存時間が短い領域（ａ）に該当するデータを削除すると、ほとんど同じデータとなり、区別することが難しい。
【００４３】
これは、入力データに高周波成分が多く存在すると、生存時間が短いデータが増大するからである。図１１は、生存時間が短い情報がノイズは限らない理由を説明する図である。図１１に示すように、低周波成分が多い場合、値の動きが緩やかであるので、すぐ消滅する対角線付近の小さな穴ができにくい。一方、高周波成分が多い場合、値の動きが激しいので、すぐ消滅する対角線付近の小さな穴ができやすい。このため、高周波成分が多い入力データに対して、一般的な手法により、対角線付近に出現する生存時間が短いデータを一律に削除すると、入力データの特徴の一つである高周波成分が削除されてしまい、その入力データの特徴量の抽出精度が劣化する。
【００４４】
また、振幅が小さいデータはノイズの影響を受けやすいので、上記一般的なノイズ除去では、ノイズを除去することが難しい。図１２は、振幅が小さいデータのノイズ除去を説明する図である。図１２に示すように、振幅が小さいデータは、発生時刻が早く、かつ、生存時間が短いことから、一般的なノイズ除去により通常は除去されるが、ノイズの影響で生存時間が少し長くなり、除去対象外となることがある。
【００４５】
ここで、発生が早い成分がノイズとなる理由を説明する。図１３は、発生が早い成分がノイズとなる理由１を説明する図であり、図１４は、発生が早い成分がノイズとなる理由２を説明する図である。図１３に示すように、ノイズの変動により、穴の発生時刻や生存時間が影響を受けることがあるが、大まかな形状に与える影響は小さく、細かな形状に与える影響が大きい。つまり、同じノイズ成分であっても、元の振幅が小さい、発生時刻が早い穴の方が影響を受けやすい。また、図１４に示すように、一般的には、高周波のアトラクタは疎となる傾向にあるが、特定周波数の成分のみが支配的な場合、同じ軌跡上に点が継続して発生するので、点同士が近くなり、穴の発生時刻が早くなる。
【００４６】
（重み設定の例）
そこで、重み設定部２３は、パーシステントダイアグラムに対して、生存時間が短いデータの影響を抑えられるように重み付けを行うとともに、発生時刻が早い部分についても影響が抑えられるように重み付けを行う。
【００４７】
図１５は、実施例１の重み設定を説明する図である。図１５に示すように、重み設定部２３は、生存時間または発生時刻が一定値以下では徐々に重みを０に近づけ、生存時間または発生時刻が一定値以上では重みを一律な値に設定する。このようにすることで、重み設定部２３は、パーシステントダイアグラムの対角線から所定距離以下の範囲である領域（ａ）と、発生時刻が所定値以下の範囲である領域（ｂ）の重みを変更することで、これらの領域に含まれるデータの影響度を小さくする。
【００４８】
図１６は、重み設定の一例を説明する図である。上述した図１５の条件を踏まえて、実施例１では、図１６に示す情報を重み設定ＤＢ１５等に格納する。図１６に示すように、重み設定ＤＢ１５に記憶される情報は、「条件１（生存値）、条件２（生存時間）、重み」が対応付けられる。「条件１」は、発生時刻の条件を示し、「条件２」は、生存時間の条件を示し、「重み」は、設定する重みを示す。
【００４９】
図１６の例では、発生時刻（生存値）が０から０．５の範囲にあるデータに対しては、生存時間に関わらず、重み「０」を設定する。また、生存時間が１．５以上であるデータに対しては、生存値に関わらず、重み「１」を設定し、生存時間が１．０以上かつ１．５未満であるデータに対しては、生存値に関わらず、重み「０．５」を設定し、生存時間が０．５以上かつ１．０未満であるデータに対しては、生存値に関わらず、重み「０．２５」を設定し、生存時間が０．５未満であるデータに対しては、生存値に関わらず、重み「０．１」を設定する。
【００５０】
そして、重み設定部２３は、図１６に示した重み設定の情報にしたがって、ダイアグラム生成部２２により生成されたパーシステントダイアグラムに対して重みを設定する。その後、重み設定部２３は、重み付けされたパーシステントダイアグラムを特徴量抽出部２４に出力する。
【００５１】
図３に戻り、特徴量抽出部２４は、重み設定部２３により重みが設定されたパーシステントダウアグラムを用いて、時系列データの特徴量を抽出する処理部である。具体的には、特徴量抽出部２４は、ＰＨ情報ＤＢ１４に記憶されるパーシステントダイアグラムの情報を用いて、バーコードデータを生成する。そして、特徴量抽出部２４は、バーコードデータからベッチ数を抽出し、ベッチ数を並べたベッチ系列を、時系列データの特徴量として生成する。その後、特徴量抽出部２４は、ベッチ系列を特徴量ＤＢ１６に格納する。
【００５２】
図１７は、重み設定前後のベッチ系列の変化を説明する図である。図１７では、同じ時系列データから生成されたパーシステントダイアグラムに基づくバーコードデータを示している。図１７の（ａ）が一般的なベッチ系列への変換を示し、図１７の（ｂ）が重みを考慮したベッチ系列のへの変換を示す。
【００５３】
一般的な手法の場合、図１７の（ａ）に示すように、ｔ１でベッチ数「１」、ｔ２でベッチ数「２」、ｔ３でベッチ数「３」、ｔ４でベッチ数「２」、ｔ５でベッチ数「３」、ｔ６でベッチ数「４」のように、ベッチ系列が生成される。
【００５４】
一方、図１７の（ｂ）に示すように、特徴量抽出部２４は、重み設定部２３により生成れた重み付けパーシステントダイアグラムからバーコードデータを生成する際に、設定される重みに基づいて、ベッチ数を変化させることができる。例を挙げると、特徴量抽出部２４は、重みが０．５のバーコードを１ではなく０．５とカウントする。
【００５５】
例えば、特徴量抽出部２４は、ｔ１で重み「０．５」が設定された穴が出現するのでベッチ数「０．５」を算出し、ｔ２で重み「１」の穴がさらに出現するのでベッチ数「１．５」を算出し、ｔ３で重み「１」の穴がさらに出現するのでベッチ数「２．５」を算出する。また、特徴量抽出部２４は、ｔ４で重み「０．５」の穴が消滅するのでベッチ数「２．０」を算出し、ｔ５で重み「１」の穴がさらに出現するのでベッチ数「３．０」を算出し、ｔ６で重み「０．５」の穴および「０．２５」の穴が出現するとともに重み「１」の穴が消滅するのでベッチ数「２．７５」を算出する。このようにして、特徴量抽出部２４は、重みが考慮されたベッチ系列を算出するので、図１７の（ａ）とは異なる形のベッチ系列を生成することができる。
【００５６】
図３に戻り、特徴量処理部２５は、特徴量抽出部２４に生成された特徴量を用いて、各種処理を実行する処理部である。例えば、特徴量処理部２５は、特徴量ＤＢ１６に記憶される各時系列データの特徴量と、当該特徴量に対応付けられるラベルとを用いて、機械学習を実行して学習モデルを生成する。また、特徴量処理部２５は、特徴量ＤＢ１６に記憶される各時系列データの特徴量を、学習済みのモデルに入力して、時系列データの分類処理を実行する。
【００５７】
［処理の流れ］
図１８は、処理の流れを示すフローチャートである。図１８に示すように、処理開始が指示されると（Ｓ１０１：Ｙｅｓ）、ＰＨ処理部２１は、入力データＤＢ１３から入力データを読み込み（Ｓ１０２）、疑似アトラクタを生成する（Ｓ１０３）。
【００５８】
続いて、ダイアグラム生成部２２は、疑似トラクタを用いてＴＤＡ処理を実行してパーシステントダイアグラムを生成する（Ｓ１０４）。そして、重み設定部２３は、穴の生存時間に基づき重みを設定するとともに（Ｓ１０５）、穴の発生時刻に基づき重みを設定する（Ｓ１０６）。なお、Ｓ１０５とＳ１０６は、順不同である。
【００５９】
その後、特徴量抽出部２４は、重み付けされたパーシステントダイアグラムからバーコードデータを生成し（Ｓ１０７）、バーコードデータに基づきベッチ系列を生成する（Ｓ１０８）。
【００６０】
［効果］
上述したように、特徴量抽出装置１０は、時系列データから疑似アトラクタを生成し、生成した疑似アトラクタからパーシステントダイアグラムを生成する際に、パーシステントダイアグラムのうち、生存時間が閾値以下のデータと発生時刻が閾値よりも早いデータの重みを軽くする。そして、特徴量抽出装置１０は、重み付けしたパーシステントダイアグラムを用いて、時系列データの特徴量を抽出する。したがって、特徴量抽出装置１０は、ＴＤＡを用いた特徴量の抽出において、生存時間が短いデータについても影響を残しつつ特徴を抽出できるので、特徴が弱いデータ間での比較も行えることができる。また、特徴量抽出装置１０は、発生時刻が早いノイズ成分の影響を抑えることが出来るので、より精度の良い特徴抽出を実現することができる。
【００６１】
［適用例］
次に、実施例１による手法を人の動作分類に適用した例を説明する。図１９は、人の動作分類に適用した学習時の例を説明する図であり、図２０は、人の動作分類に適用した推論時の例を説明する図である。
【００６２】
ここでは、ユーザが装着するウェアラブルセンサから、ユーザが移動する際に測定された時系列データの一例である時間波形を収集し、各時間波形に人の動作を示すラベルを設定する。例えば、ラベル「歩く」と対応する時間波形、ラベル「走る」と対応する時間波形、ラベル「乗り物」と対応する時間波形、ラベル「座る」と対応する時間波形との各組を学習データとして生成する。図１９に示すように、乗り物と座る動作は、あまり揺れない動作であることから、時間波形が類似する傾向にある。このとき、一般的なノイズ除去では、区別できない事象が発生する可能性が高い。
【００６３】
そこで、実施例１にかかる特徴量抽出装置１０を用いることで、各学習データからベッチ系列を生成する際に、生存時間や発生時刻に対して重みを設定してベッチ系列を生成することができるので、各学習データを正確に区別して学習をすることができ、学習モデルの学習精度も向上させることができる。
【００６４】
その後、ユーザのウェアラブルセンサから取得される時間波形を学習済みモデルに入力することで、ユーザの動作を類推することができる。例えば、ウェアラブルセンサが取得した朝から寝るまでの一日の時間波形を、所定時間で分割して学習済みモデルに入力する。この結果、特徴量抽出装置１０は、ユーザのその一日の動作を類推した結果やグラフをディスプレイ等に表示するので、ユーザや管理者は、各動作の占める割合を把握することができ、健康診断や運動不足の解消などに役立てることができる。また、ウェアラブルセンサが取得した時間波形を随時学習済みモデルに入力することで、ユーザの現在の動作を類推ことができ、ユーザの仕事状況などを管理することができる。
【実施例２】
【００６５】
ところで、実施例１では、重み付けしたパーシステントダイアグラムからバーコードデータの生成した後にベッチ系列の生成を行うことで、時系列データの特徴量を抽出する例を説明したが、これに限定されるものではない。例えば、重み付けしたパーシステントダイアグラムから生存時間の和を用いて、直接スコア化することもできる。
【００６６】
図２１は、実施例２にかかる手法を説明する図である。図２１に示すように、特徴量抽出装置１０の重み設定部２３は、パーシステントダイアグラムに対して、重み設定ＤＢ１５に記憶される情報に基づいて、生存時間に対して重みを設定する。すなわち、重み設定部２３は、パーシステントダイアグラムの対角線からの距離に基づき、重みを設定する。重みの設定は、実施例１と同様、図１５や図１６の手法を用いることができる。なお、ここでは、発生時刻に対する重みは省略したが、同様に、設定することができる。
【００６７】
図２１の例では、データＡの生存時間がａ、データＢの生存時間がｂ、データＣの生存時間がｃ、データＤの生存時間がｄであり、対角線から除去対象である範囲に属するデータＡに対して重み「０．８」、データＤに対して重み「０．５」が設定された例を示している。この場合、特徴量抽出部２４は、「０．８×ａ＋ｂ＋ｃ＋０．５×ｄ」をスコア（特徴量）として抽出する。
【００６８】
次に、図２１の手法を用いた異常検知の例を説明する。図２２と図２３は、実施例２による手法を異常検知に適用した例を説明する図である。図２２に示すように、滑車や歯車のような工業製品の部品は、正常な状態から徐々に劣化した後に故障が発生することが一般的である。ここでは、各状態に対応した加速度データを収集して、スコアに基づき状態変化を特定することで、早期の故障検出を実現する例を説明する。
【００６９】
例えば、正常な状態で測定される加速度データは、測定器などによるノイズが重畳されるが、波形に大きな影響を与えるものではない。また、ひび割れなどの故障前の劣化状態で測定される加速度データは、ノイズに似ているが実は小さな異常を示す振幅の小さな波形が現れるので、パーシステントダイアグラムでは除去対象の範囲に出現するデータが多くなる。また、ひび割れなどの故障時に測定される加速度データは、正常時とは明らかに異なる波形であってピーク間隔が短い波形が現れるので、パーシステントダイアグラムでは除去対象の範囲に出現するデータが非常に多くなるとともに高周波成分に対応する生存時間の長いデータが頻出する。
【００７０】
そこで、図２３に示すように、特徴量抽出装置１０は、随時計測される波形を、図２１による重み付けした生存時間の和でスコア化してスコアを時系列に表示し、スコアの大きさで段階的に警告灯の色を変えてアラームを上げる。
【００７１】
この結果、特徴量抽出装置１０は、正常時のノイズを正確に除去することができるので、正常時にノイズでスコアが少し大きくなっている（ａ）の状態も、正確に正常と判定することができる。また、特徴量抽出装置１０は、ノイズ除去範囲のデータが増える（ｂ）のタイミングでは、一律に除去すると正常と判断されるが、重み付けしてスコア化することで、異常が発生しつつある状態と判定することができる。さらに、管理者などは、スコアの変化を随時確認することができるので、閾値などを設けることで、部分欠損などの深刻な異常が発生する前に、異常状態を検出することができる。
【実施例３】
【００７２】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
【００７３】
［特徴量の利用］
上記実施例では、特徴量抽出装置１０が特徴量を使用して学習等を利用する例を説明したが、これに限定されるものではなく、特徴量抽出装置１０が特徴量を抽出して記憶したり、他の装置に提供したりすることもできる。また、実施例１による手法で抽出した特徴量を用いて、図２３のような異常検知を行うこともできる。
【００７４】
［重み設定］
上記実施例では、生存時間の長さに基づく重み設定と、発生時刻に基づく重み設定との両方を実行する例を説明したが、これに限定されるものではなく、いずれか一方のみを実行することもできる。また、重みの値も一例であり、図１５に示す領域（ａ）や領域（ｂ）に属するデータの重要度が低くなるような重みであれば、任意に設定変更することができる。
【００７５】
［数値等］
また、上記実施例で用いた数値、重みの設定値、疑似アトラクタの次元数等は、あくまで一例であり、任意に変更することができる。また、入力データや学習方法などもあくまで一例であり、任意に変更することができる。なお、特徴量も一例であり、ベッチ系列の特徴を示す情報であれば、他の情報を用いることもできる。また、学習モデルには、ニューラルネットワークなど様々な手法を採用することができる。
【００７６】
［システム］
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００７７】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【００７８】
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００７９】
［ハードウェア］
図２４は、ハードウェア構成例を説明する図である。図２４に示すように、特徴量抽出装置１０は、通信装置１０ａ、ＨＤＤ（Hard  Disk  Drive）１０ｂ、メモリ１０ｃ、プロセッサ１０ｄを有する。また、図２４に示した各部は、バス等で相互に接続される。
【００８０】
通信装置１０ａは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。ＨＤＤ１０ｂは、図３に示した機能を動作させるプログラムやＤＢを記憶する。
【００８１】
プロセッサ１０ｄは、図３に示した各処理部と同様の処理を実行するプログラムをＨＤＤ１０ｂ等から読み出してメモリ１０ｃに展開することで、図３等で説明した各機能を実行するプロセスを動作させる。例えば、このプロセスは、特徴量抽出装置１０が有する各処理部と同様の機能を実行する。具体的には、プロセッサ１０ｄは、ＰＨ処理部２１、ダイアグラム生成部２２、重み設定部２３、特徴量抽出部２４、特徴量処理部２５等と同様の機能を有するプログラムをＨＤＤ１０ｂ等から読み出す。そして、プロセッサ１０ｄは、ＰＨ処理部２１、ダイアグラム生成部２２、重み設定部２３、特徴量抽出部２４、特徴量処理部２５等と同様の処理を実行するプロセスを実行する。
【００８２】
このように、特徴量抽出装置１０は、プログラムを読み出して実行することで特徴量抽出方法を実行する情報処理装置として動作する。また、特徴量抽出装置１０は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、特徴量抽出装置１０によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【符号の説明】
【００８３】
１０  特徴量抽出装置
１１  通信部
１２  記憶部
１３  入力データＤＢ
１４  ＰＨ情報ＤＢ
１５  重み設定ＤＢ
１６  特徴量ＤＢ
２０  制御部
２１  ＰＨ処理部
２２  ダイアグラム生成部
２３  重み設定部
２４  特徴量抽出部
２５  特徴量処理部
【図１】
2020166440.tif 000003
【図２】
2020166440.tif 000004
【図３】
2020166440.tif 000005
【図４】
2020166440.tif 000006
【図５】
2020166440.tif 000007
【図６】
2020166440.tif 000008
【図７】
2020166440.tif 000009
【図８】
2020166440.tif 000010
【図９】
2020166440.tif 000011
【図１０】
2020166440.tif 000012
【図１１】
2020166440.tif 000013
【図１２】
2020166440.tif 000014
【図１３】
2020166440.tif 000015
【図１４】
2020166440.tif 000016
【図１５】
2020166440.tif 000017
【図１６】
2020166440.tif 000018
【図１７】
2020166440.tif 000019
【図１８】
2020166440.tif 000020
【図１９】
2020166440.tif 000021
【図２０】
2020166440.tif 000022
【図２１】
2020166440.tif 000023
【図２２】
2020166440.tif 000024
【図２３】
2020166440.tif 000025
【図２４】
2020166440.tif 000026