(57)【要約】      （修正有）【課題】入力された波形データを正しく抽出する。【解決手段】波形セグメンテーション装置１は、入力された波形データの状態レベルを推定する状態レベル推定部２と、状態レベル推定部で推定された状態レベルに基づいて、波形データを複数のセグメンテーション点で区分けするセグメンテーション同定部３とを備える。波形セグメンテーション装置１は、入力された波形データを抽出する処理を行い、波形データの特徴量を抽出する。状態レベル推定部２は、入力された波形データの状態レベルを推定し、入力された波形データがどの状態レベルに属するかを推定する。そしてセグメンテーション同定部３は、状態レベル推定部２で推定された状態レベルに基づいて、波形データを複数のセグメンテーション点で区分けし、波形データに含まれる特徴量を区切りとして、時間軸方向に複数のセグメンテーション点を同定する。【選択図】図１
2020193847.tif 000002
【特許請求の範囲】
【請求項１】
入力された波形データの状態レベルを推定する状態レベル推定部と、
前記状態レベル推定部で推定された状態レベルに基づいて、前記波形データを複数のセグメンテーション点で区分けするセグメンテーション同定部と、を備える、波形セグメンテーション装置。
【請求項２】
前記セグメンテーション同定部は、隣接する２つの前記セグメンテーション点の間に前記波形データの特徴量が含まれるように、前記複数のセグメンテーション点を同定する、請求項１に記載の波形セグメンテーション装置。
【請求項３】
前記入力された波形データの値に基づいて、前記波形データを複数のグループに区分けするグルーピング部を備え、
前記状態レベル推定部は、前記複数のグループのうち一部のグループを統合又は分割した後の各グループの代表値に基づいて前記状態レベルを推定する、請求項１又は２に記載の波形セグメンテーション装置。
【請求項４】
前記グルーピング部は、前記波形データの値及び頻度に基づいて、前記波形データを前記複数のグループに区分けする、請求項３に記載の波形セグメンテーション装置。
【請求項５】
前記状態レベル推定部にて推定された状態レベルに基づいて、前記波形データを変換する波形データ変換部と、
前記波形データ変換部で変換された波形データの状態レベルが変化する状態変化点を検出する状態変化点検出部と、を備え、
前記セグメンテーション同定部は、前記状態変化点に基づいて、前記複数のセグメンテーション点を同定する、請求項１乃至４のいずれか一項に記載の波形セグメンテーション装置。
【請求項６】
前記波形データを前記複数のセグメンテーション点で区分けして得られる複数の部分波形データに基づいて前記複数の部分波形データの状態レベルを推定し、推定された状態レベルに基づいて前記状態レベル推定部で推定された状態レベルを更新するとともに、前記複数のセグメンテーション点の位置を調整する第１セグメンテーション調整部を備える、請求項１乃至５のいずれか一項に記載の波形セグメンテーション装置。
【請求項７】
波形群に属する複数の波形データの中から選択される代表波形データを区分けするための複数の代表セグメンテーション点に基づいて、前記入力された波形データを区分けするための前記複数のセグメンテーション点を調整する第２セグメンテーション調整部を備える、請求項１乃至５のいずれか一項に記載の波形セグメンテーション装置。
【請求項８】
入力された複数の波形データのそれぞれについての前記複数のセグメンテーション点に基づいて、前記代表波形データ及び前記複数の代表セグメンテーション点を決定するセグメンテーション決定部を備え、
前記第２セグメンテーション調整部は、前記セグメンテーション決定部にて決定された前記複数の代表セグメンテーション点に基づいて、前記入力された複数の波形データのそれぞれについて前記複数のセグメンテーション点を調整する、請求項７に記載の波形セグメンテーション装置。
【請求項９】
前記第２セグメンテーション調整部は、前記代表波形データを前記複数の代表セグメンテーション点で分割した複数の代表部分波形データと、前記入力された複数の波形データのそれぞれを前記複数のセグメンテーション点で分割した複数の部分波形データとのパターンマッチングにより、前記複数のセグメンテーション点を調整する、請求項８に記載の波形セグメンテーション装置。
【請求項１０】
前記セグメンテーション決定部は、前記入力された複数の波形データのうち少なくとも一つの波形長さが他の波形データと相違している場合には、前記複数の波形データの時間長さを揃える処理を行った上で、前記代表波形データ及び前記複数の代表セグメンテーション点を決定する、請求項８又は９に記載の波形セグメンテーション装置。
【請求項１１】
前記第２セグメンテーション調整部は、前記入力された複数の波形データのそれぞれについての前記複数のセグメンテーション点のうち、前記複数の代表セグメンテーション点に近接した位置のセグメンテーション点を残し、前記複数の代表セグメンテーション点から離れた位置のセグメンテーション点を削除する、請求項８乃至１０のいずれか一項に記載の波形セグメンテーション装置。
【請求項１２】
前記代表波形データ及び前記複数の代表セグメンテーション点と、前記入力された波形データ及び前記複数のセグメンテーション点とを可視化する可視化部を備える、請求項８乃至１１のいずれか一項に記載の波形セグメンテーション装置。
【請求項１３】
前記可視化部が可視化した前記複数のセグメンテーション点を評価する評価部を備える、請求項１２に記載の波形セグメンテーション装置。
【請求項１４】
前記入力された波形データが異常である可能性を示す値を出力する異常検知モデルを生成するモデル生成部と、
前記入力された波形データを区分けする前記複数のセグメンテーション点の位置を複数通りに変更させた場合に、前記異常検知モデルの出力値に基づいて前記複数のセグメンテーション点の位置を調整する第３セグメンテーション調整部と、を備える、請求項１乃至５のいずれか一項に記載の波形セグメンテーション装置。
【請求項１５】
入力された波形データを時系列順に記憶する波形データ記憶部を備え、
前記状態レベル推定部は、前記波形データ記憶部から読み出した波形データの状態レベルを推定する、請求項１乃至１４のいずれか一項に記載のセグメンテーション装置。
【請求項１６】
入力された波形データの状態レベルを推定する状態レベル推定部と、
前記状態レベル推定部で推定された状態レベルに基づいて、前記波形データを複数のセグメンテーション点で区分けするセグメンテーション同定部と、
前記セグメンテーション同定部で分割された前記複数のセグメンテーション点を評価する評価部と、を備える、波形セグメンテーション装置。
【請求項１７】
入力された波形データの状態レベルを推定し、
前記推定された状態レベルに基づいて、前記波形データを複数のセグメンテーション点で区分けする、波形セグメンテーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、波形セグメンテーション装置及び波形セグメンテーション方法に関する。
【背景技術】
【０００２】
生産工場やプラントなどは、故障予知や、故障分類、異常検出等のために多数のセンサを設置している。これらセンサから時系列に出力される大量の検知データは、アナログの波形データであり、Ａ／Ｄ変換して記憶装置に記憶された後に、波形の特徴量を抽出して異常検出等を行うのが一般的である。
【０００３】
しかしながら、各センサの波形データは、スパーク状のノイズや振幅レベルの不定期な変動などにより、複雑な波形を有する。このため、検知データの波形から有効な特徴量を抽出するのは容易ではない。
【０００４】
検知データの波形を複数の部分波形に自動的に区分けして、各部分波形から特徴量を抽出する手法がある。その際、各部分波形に含まれるノイズ成分を除去する波形整形を行ってから正常波形と比較することも考えられるが、各部分波形の波形整形を行うと、正常波形との差異が小さくなり、異常検出を正しく行えなくなるおそれがある。
【０００５】
また、波形データを複数の部分波形に自動的に区分けする際に、誤って特徴量を別々の部分波形に分けてしまうおそれもある。この場合、部分波形から特徴量を抽出するのが困難になる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第５１７６５３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の一態様は、入力された波形データを正しく抽出できる波形セグメンテーション装置及び波形セグメンテーション方法を提供するものである。
【課題を解決するための手段】
【０００８】
本実施形態によれば、入力された波形データの状態レベルを推定する状態レベル推定部と、
前記状態レベル推定部で推定された状態レベルに基づいて、前記波形データを複数のセグメンテーション点で区分けするセグメンテーション同定部と、を備える波形セグメンテーション装置が提供される。
【図面の簡単な説明】
【０００９】
【図１】第１の実施形態による波形セグメンテーション装置１の概略構成を示すブロック図。
【図２】図１の波形セグメンテーション装置の処理動作の一例を示すフローチャート。
【図３】図２のステップＳ１〜Ｓ６の単一波形セグメンテーション部の処理動作を説明する図。
【図４】図３に続く処理動作を説明する図。
【図５】図４に続く処理動作を説明する図。
【図６】図２のステップＳ７〜Ｓ１１の波形群セグメンテーション部の処理動作を模式的に示す図。
【図７】ＧＵＩ画面の一例を示す図。
【図８Ａ】第２の実施形態による第２セグメンテーション調整部の処理動作を説明する図。
【図８Ｂ】第２の実施形態による第２セグメンテーション調整部の処理動作を説明する図。
【図９】第３の実施形態による波形セグメンテーション装置１の概略構成を示すブロック図。
【図１０】複数の波形データを有する波形群が入力された例を示す図。
【図１１】セグメンテーション点を１０%単位でずらした場合の異常検知モデルの出力値の一例を示す図。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、波形セグメンテーション装置の実施形態について説明する。以下では、波形セグメンテーション装置の主要な構成部分を中心に説明するが、波形セグメンテーション装置には、図示又は説明されていない構成部分や機能が存在しうる。以下の説明は、図示又は説明されていない構成部分や機能を除外するものではない。
【００１１】
（第１の実施形態）
図１は第１の実施形態による波形セグメンテーション装置１の概略構成を示すブロック図である。図１の波形セグメンテーション装置１は、入力された波形データを抽出する処理を行う。より具体的には、図１の波形セグメンテーション装置１は、入力された波形データの特徴量を抽出する。特徴量とは、例えば波形の特徴的な形状である。図１の波形セグメンテーション装置１に入力される波形データは、例えば生産工場やプラントなどに設置される各種のセンサの検知データである。なお、センサの種類は問わない。また、図１の波形セグメンテーション装置１は、センサの検知データ以外の種々の波形データの特徴量を抽出する目的で利用することができる。
【００１２】
図１の波形セグメンテーション装置１は、必要最小限の構成として、状態レベル推定部２と、セグメンテーション同定部３とを備えている。
【００１３】
状態レベル推定部２は、入力された波形データの状態レベルを推定する。状態レベルとは、例えば波形データの値（例えば振幅値）に応じたレベルである。状態レベル推定部２は、入力された波形データがどの状態レベルに属するかを推定する。
【００１４】
セグメンテーション同定部３は、状態レベル推定部２で推定された状態レベルに基づいて、波形データを複数のセグメンテーション点で区分けする。本実施形態では、隣接する２つのセグメンテーション点の間の波形を部分波形と呼ぶ。部分波形は、少なくとも一つの特徴量を含んでいる。このように、セグメンテーション同定部３は、波形データに含まれる特徴量を区切りとして、時間軸方向に複数のセグメンテーション点を同定する。
【００１５】
セグメンテーション同定部３は、特徴量登録部４に登録された特徴量に基づいて、波形データに含まれる特徴量を把握してもよい。特徴量登録部４に登録される特徴量は、例えば、波形の状態レベル、振幅、状態推移、アンダーシュート、オーバーシュート、スパイクなどである。なお、波形の特徴量の具体的な種類は任意である。
【００１６】
図１の波形セグメンテーション装置１は、波形データ変換部５と状態変化点検出部６を備えていてもよい。波形データ変換部５は、状態レベル推定部２にて推定された状態レベルに基づいて波形データを変換する。例えば、波形データ変換部５は、波形データに含まれるアンダーシュートやオーバーシュート、スパイクなどを除去する変換を行ってもよい。状態変化点検出部６は、波形データ変換部５で変換された波形データの状態レベルが変化する状態変化点を検出する。セグメンテーション同定部３は、状態変化点に基づいてセグメンテーション点を同定してもよい。
【００１７】
図１の波形セグメンテーション装置１は、波形データデータベース（以下、波形データＤＢ）７を備えていてもよい。波形データＤＢ７は、各種のセンサの検知データ等の波形データを時系列順に記憶する。また、波形データＤＢ７は、センサの検知データ等の波形データを記憶するだけでなく、図１の波形セグメンテーション装置１で正常波形又は異常波形と判断された波形データを記憶してもよい。波形データＤＢ７は、複数のＤＢに分かれていてもよく、例えば、センサごとに別個のＤＢに波形データを記憶してもよい。また、波形データＤＢ７に波形データのリンク先情報を記憶してもよい。この場合、波形データＤＢ７から読み出したリンク先情報に基づくリンク先から波形データを読み出すことになる。
【００１８】
図１の波形セグメンテーション装置１は、グルーピング部８を備えていてもよい。グルーピング部８は、波形データの値に基づいて、波形データを複数のグループに区分けする。グルーピング部８は、入力された波形データをそのまま利用して複数のグループに区分けしてもよいし、あるいは、入力された波形データを波形データ変換部５で変換してから、複数のグループに区分けしてもよい。グルーピング部８には、センサ等からの波形データが直接入力されてもよいし、波形データＤＢ７から読み出された波形データが入力されてもよい。
【００１９】
図１の波形セグメンテーション装置１は、第１セグメンテーション調整部９を備えていてもよい。第１セグメンテーション調整部９は、単一の波形データについてのセグメンテーション点の調整を行う。より具体的には、第１セグメンテーション調整部９は、波形データを複数のセグメンテーション点で区分けして得られる複数の部分波形データに基づいて複数の部分波形データの状態レベルを推定し、推定された状態レベルに基づいて状態レベル推定部２で推定された状態レベルを更新するとともに、複数のセグメンテーション点の位置を調整する。このように、第１セグメンテーション調整部９は、セグメンテーション同定部３が同定したセグメンテーション点が妥当であるか否かを確認し、妥当でない場合はセグメンテーション点を調整する。
【００２０】
図１の波形セグメンテーション装置１は、セグメンテーション評価部１０を備えていてもよい。セグメンテーション評価部１０は、セグメンテーション同定部３で同定された複数のセグメンテーション点、又は第１セグメンテーション調整部９で調整されたセグメンテーション点が妥当か否かを評価する。セグメンテーション評価部１０は、後述するように波形データを複数のセグメンテーション点で区分けした結果を可視化する可視化部を利用して、上述した評価を行ってもよい。可視化部は、例えば、代表波形データ及び複数の代表セグメンテーション点と、調整対象波形データ及びその複数のセグメンテーション点とを可視化する。より具体的には、可視化部は、代表波形データ及び複数の代表セグメンテーション点と、調整対象波形データ及びその複数のセグメンテーション点とを表示部１８に表示させる表示制御部１９を有する。セグメンテーション評価部１０は、可視化部が可視化した複数のセグメンテーション点を評価してもよい。あるいは、セグメンテーション評価部１０は、異常検知モデルから出力される判定精度を用いて上述した評価を行ってもよい。ここで、代表波形データとは、波形群に属する複数の波形データの中から選択される代表的な波形データである。代表波形データは波形群に属する複数の波形データを用いて新規に生成されても良い。
【００２１】
図１の波形セグメンテーション装置１における上述したグルーピング部８、状態レベル推定部２、セグメンテーション同定部３、及び第１セグメンテーション調整部９は、単一の波形データのセグメンテーションを行うものであり、本実施形態では、単一波形セグメンテーション部１１と呼ぶ。
【００２２】
これに対して、図１の波形セグメンテーション装置１は、波形群のセグメンテーションを行う波形群セグメンテーション部１２を備えていてもよい。波形群セグメンテーション部１２は、部分波形数算出部１３と、セグメンテーション決定部１４と、第２セグメンテーション調整部１５とを有する。
【００２３】
部分波形数算出部１３は、波形群に含まれる各波形データを区分けするのに必要な部分波形数を算出する。部分波形数は、波形群に含まれる各波形データの部分波形数から算出した数でもよいし、予めユーザが設定した数でもよい。波形群に含まれる各波形データの部分波形数から必要な部分波形数を算出する場合、例えば、波形群における部分波形数の頻度を算出し、頻度が最大の部分波形数を必要な部分波形数とする。
【００２４】
セグメンテーション決定部１４は、波形群に含まれる全波形データのセグメンテーション点を用いて、代表波形データ及び代表セグメンテーション点を決定する。代表セグメンテーション点を決定するのにクラスタリング手法を用いることができる。この場合、波形群に含まれる各波形データごとにｎグループに区分けし、そのうちの一つの波形データを代表波形データとして、その代表波形データのグループ分けに基づいて代表セグメンテーション点を設定する。
【００２５】
第２セグメンテーション調整部１５は、代表波形データを区分けするための複数の代表セグメンテーション点に基づいて、入力された波形データを区分けするための複数のセグメンテーション点を調整する。このように、第２セグメンテーション調整部１５は、複数の代表セグメンテーション点に基づいて、波形群の各波形データのセグメンテーション点を調整する。
【００２６】
より具体的には、第２セグメンテーション調整部１５は、代表波形データを複数の代表セグメンテーション点で分割した複数の代表部分波形データと、入力された複数の波形データのそれぞれを複数のセグメンテーション点で区分けした複数の部分波形データとのパターンマッチングにより、複数のセグメンテーション点を調整する。セグメンテーション決定部１４は、入力された複数の波形データのうち少なくとも一つの波形長さが他の波形データと相違している場合には、複数の波形データの時間長さを揃える処理を行った上で、代表波形データ及び複数の代表セグメンテーション点を決定してもよい。
【００２７】
また、第２セグメンテーション調整部１５は、入力された複数の波形データのそれぞれについての複数のセグメンテーション点のうち、複数の代表セグメンテーション点に近接した位置のセグメンテーション点を残し、複数の代表セグメンテーション点から離れた位置のセグメンテーション点を削除してもよい。
【００２８】
図１の波形セグメンテーション装置１は、セグメンテーション記憶部１６を備えていてもよい。セグメンテーション記憶部１６は、セグメンテーションデータを記憶する。セグメンテーションデータとは、波形データの状態レベル、波形データを複数のセグメンテーション点で区分けした場合の部分波形数、各部分波形の開始点及び終了点、各部分波形に含まれる特徴量などを記憶する。各部分波形の開始点と終了点の代わりに、部分波形の長さを記憶してもよい。
【００２９】
図２は図１の波形セグメンテーション装置１の処理動作の一例を示すフローチャートである。図２のステップＳ１〜Ｓ６は単一波形セグメンテーション部１１の処理動作を示し、ステップＳ７〜Ｓ１１は波形群セグメンテーション部１２の処理動作を示している。このように、入力された各波形データのセグメンテーション点の同定が終了した後に、複数の波形データを含む波形群のセグメンテーションの処理が行われる。
【００３０】
まず、グルーピング部８は波形データＤＢ７からの波形データの入力を受け付ける（ステップＳ１）。上述したように、グルーピング部８は、センサ等から出力された波形データを直接取得してもよい。グルーピング部８は、入力された波形データを複数のグループに分ける（ステップＳ２）。
【００３１】
次に、状態レベル推定部２は、グルーピング部８が分けた複数のグループのうち、一部のグループを統合したり分割するなどして、グループ分けを更新し、更新後の各グループの代表値を状態レベルとして推定する（ステップＳ３）。一つしか状態レベルがない場合は、ステップＳ３にて図２の処理を終了してもよい。
【００３２】
次に、波形データ変換部５は、ステップＳ３で推定された状態レベルを用いて波形データを変換する（ステップＳ４）。次に、状態変化点検出部６は、変換後の波形データに基づいて、状態変化点を検出する。セグメンテーション同定部３は、検出された状態変化点をセグメンテーション点の候補とし、隣接する２つのセグメンテーション点の間の部分波形に１つ以上の特徴量が含まれるようにセグメンテーション点を同定する（ステップＳ５）。また、このステップＳ５では、第１セグメンテーション調整部９によるセグメンテーション点の調整も行われる。
【００３３】
次に、波形データＤＢ７内の対象となる全波形データのセグメンテーション点の同定及び調整が終了したか否かを判定する（ステップＳ６）。まだ、セグメンテーション点の同定及び調整が終わっていない波形データが存在する場合には、ステップＳ１以降の処理を繰り返す。
【００３４】
全波形データのセグメンテーション点の同定及び調整が終了した場合には、波形群のセグメンテーションの処理を開始する。まず、部分波形数算出部１３は、ステップＳ１〜Ｓ６でセグメンテーションを行った複数の波形データを含む波形群の部分波形数を決定するために、波形群内の各波形データの部分波形数を検出して（ステップＳ７）、最も頻度の高い部分波形数を各波形データの部分波形数として決定する（ステップＳ８）。
【００３５】
次に、波形群に含まれる各波形データについて、ステップＳ８で決定した部分波形数になるように、複数のセグメンテーション点で区分けして、複数の部分波形データを生成する（ステップＳ９）。次に、各波形データごとに、各波形データ内の各部分波形データの代表値を決定する（ステップＳ１０）。次に、各部分波形データの代表値に基づいて、各波形データのセグメンテーション点を調整する（ステップＳ１１）。
【００３６】
図３〜図５は図２のステップＳ１〜Ｓ６の単一波形セグメンテーション部１１の処理動作を説明する図である。図３の波形ｗ１はグルーピング部８に入力される波形データの一例である。状態レベル推定部２は、波形ｗ１の状態レベルを１５５、１７０、１８０と推定する。次に、推定された状態レベルに基づいて部分波形データＡとＢに区分けする。次に、各部分波形データごとに、状態レベルを推定する。この結果、波形ｗ３に示すように、部分波形データＡでは状態レベル１１０、１６２、１８０が推定され、部分波形データＢでは状態レベル１５０、１５８、１７０が推定される。波形データ変換部５は、状態レベル１５８と１６２が近接しているため、状態レベル１５８と１６２を同一のグループに割り当てて、このグループの代表値を１６０とする。この結果、波形ｗ４に示すように、波形変換を行った波形データが生成される。以降は、波形ｗ４の波形データに基づいてセグメンテーションが行われる。
【００３７】
図４は、波形データｗ４に対してグメンテーションを行う例を示している。波形データｗ４がグルーピング部８に入力されると、グルーピング部８は、波形ｗ５に示すように、波形データｗ４についてカーネル密度量を推定して、波形データｗ５を生成する。波形データｗ６は、９個の山と１０個の谷を含んでいる。谷の箇所でカーネル密度量を分けると、９つのデータグループが得られる。各データグループに含まれる元の波形データの量は、２０%、１５%、８%、７%、４７%、０．７５%、０．７５%、０．７５%、０．７５%である。
【００３８】
状態レベル推定部２は、カーネル密度推定量が小さい山のグループ、例えば図４の右側の山を除く。すなわち、波形データのスパイクを除く。このため、全波形データにおける望ましい数（例えば、９５％ぐらい）分まで、高い山から順次データグループを選択する。不安定波形あるいは非常に変動する波形の場合は、多数の小さい山が出る可能性があるため、データグループを選択するときは、そのデータグループに全データの閾値以上（例１０％以上）が入っているかどうかをチェックする。
【００３９】
全データの閾値（例えば１０％）以上が入っていない場合、そのグループを除く。本例では、４７％、２０％、１５％、８％、７％のデータグループを順次に選択する。グルーピング部８は各山の両方側の谷で区切って、その範囲に入っている元の波形データは同じグループとする。次に、各グループから外れ値を除く。
【００４０】
次に、各データグループの平均値あるいは中央値を算出し、その平均値あるいは中央値を状態レベルとする。本例では、全波形データの平均値±３×標準偏差の範囲以外の値は外れ値として処理した。この結果、図４の波形ｗ６に示すように、本例において推定された状態レベルは１１０、１５０、１６０、１７０、１８０となる。
【００４１】
次に、波形データ変換部５は、図５の波形ｗ８に示すように、状態レベルを用いて波形データを変換する。また、状態変化点検出部６は、変換後の波形データの状態変換点を検出する。セグメンテーション同定部３は、状態変化点をセグメンテーション候補として同定する。図５の波形ｗ９は、１３個のセグメンテーション点候補が存在する例を示している。セグメンテーション点候補で波形を区切ると小さい部分波形が数多く出る可能性があるため、第１セグメンテーション調整部９は、まず、部分波形の長さでセグメンテーション点を調整する。ある部分波形の長さが全波形長さのｘ％以下の場合はその部分波形のセグメンテーション点をセグメンテーション点候補から除く。次に、残ったセグメンテーション点候補で波形を区切って、左側から順次に各部分波形にカーネル密度推定・クラスタリングに基づいて状態レベルを推定する。
【００４２】
もし、ある部分波形では二つの状態レベルが存在しない、あるいはある状態レベルに属する値数が全波形のその状態レベルの値数のｙ％未満である場合、左あるいは右側の部分波形と統合する。また、あるセグメントでは二つの状態レベルが存在するが、最後のセグメントに一つしか状態レベルが存在しない場合、そのセグメントと最後のセグメントを統合する。この結果、最終的に、波形ｗ１０に示すように、４つの部分波形Ａ〜Ｄに区分けされる５つのセグメンテーション点が得られる。
【００４３】
図６は図２のステップＳ７〜Ｓ１１の波形群セグメンテーション部１２の処理動作を模式的に示す図である。まず、図２のＳ１〜Ｓ６の単一波形セグメンテーション部１１の処理で設定された波形群に含まれる複数の波形データのセグメンテーションデータを取得する。セグメンテーションデータとは、各波形データの部分波形数や、各セグメンテーション点の位置などであり、例えば図６の表１０１が得られる。
【００４４】
部分波形数算出部１３は、図２のＳ１〜Ｓ６の単一波形セグメンテーション部１１の処理で得られた波形群１０２に属する各波形データのセグメンテーション点に基づいて、各波形データの部分波形数の頻度を検出する。部分波形数の頻度は例えばヒストグラム１０３で表される。図６の例では、部分波形数が４の場合の頻度が最も高いため、部分波形数を４として、５つのセグメンテーション点を設ける。
【００４５】
次に、波形群に属する各波形データを５つのクラスタ（部分波形）に分けて、各クラスタの代表値を決める。図６の例では、ヒストグラム１０４に示すように、各クラスタの代表値は、０、１２５、２５０、４５５、６０５である。
【００４６】
次に、第２セグメンテーション調整部１５は、各クラスタの代表値を用いて、各波形データのセグメンテーション点を調整する。図６の例では、波形群１０５に示すように、波形群１０５に属する全波形データの部分波形数が４になるように、一部の波形データにセグメンテーション点が追加される。
【００４７】
図１の波形セグメンテーション装置１は、ＧＵＩ画面１７を表示部１８に表示させる表示制御部１９を備えていてもよい。ユーザは、図７のＧＵＩ画面１７に基づいて、波形群のセグメンテーション結果の確認や調整を行うことができる。また、図７のＧＵＩ画面１７では、単一波形データを複数のセグメンテーション点で区分けして得られる複数の部分波形を可視化でき、各部分波形が一つ以上の特徴量を含んでいるか否かを目視で確認できる。ユーザはＧＵＩ画面１７内の任意のボタンをマウス等でクリックすることで、選択指示を行うことができる。なお、図７のＧＵＩ画面は一例であり、ＧＵＩ画面の具体的な構成は任意である。
【００４８】
ユーザがＧＵＩ画面１７にて部分波形を確認した結果、波形データのセグメンテーションが正しく行われていないと判断した場合、部分波形ごとにセグメンテーションのやり直しを指示したり、部分波形の状態レベルに基づいて波形データ全体のセグメンテーションのやり直しを指示できるようにしてもよい。また、波形群に含まれる各波形データのセグメンテーション点が代表セグメンテーション点に一致するように指示できるようにしてもよい。さらに、図７のＧＵＩ画面１７にて波形データの特徴量抽出を指示できるようにしてもよい。これにより、後述するように異常検知モデルを構築する際の学習用の教師データを容易に生成できる。
【００４９】
図７のＧＵＩ画面１７は、波形データが記憶されている場所を指定する波形ディレクトリ入力領域１７ａと、ディレクトリ選択ボタン１７ｂと、波形セグメンテーションの実行を選択するラジオボタン１７ｃと、特徴量抽出の実行を選択するラジオボタン１７ｄとを備えていてもよい。また、図７のＧＵＩ画面１７は、波形データの出力ファイル名を入力する領域１７ｅと、ファイル選択ボタン１７ｆと、操作実行ボタン１７ｇと、波形調整ボタン１７ｈとを備えていてもよい。
【００５０】
また、図７のＧＵＩ画面１７は、代表波形データ及び代表セグメンテーション位置を表示する領域１７ｉと、部分波形及び特徴量リストを表示する領域１７ｊとを備えていてもよい。また、図７のＧＵＩ画面１７は、セグメンテーション対象である調整対象波形リストを選択する領域１７ｋと、調整対象波形可視化ボタン１７ｍと、調整対象波形データ及びそのセグメンテーション位置を表示する領域１７ｎと、波形群内の各波形データの部分波形数の頻度情報を表示する領域１７ｐとを備えていてもよい。また、図７のＧＵＩ画面１７は、調整対象波形のセグメンテーションの調整を指示するボタン１７ｑと、特徴量に波形ラベルを付けることを指示するボタン１７ｒと、波形ラベルのファイル名を入力する領域１７ｓと、ラベルファイル選択ボタン１７ｔとを備えていてもよい。
【００５１】
図７のＧＵＩ画面１７において、例えば、波形セグメンテーションの実行を選択するラジオボタン１７ｃを選択して、操作実行ボタン１７ｇをクリックすると、一つ以上の波形のセグメンテーションが行われる。代表波形データのセグメンテーション結果は領域１７ｉに表示され、調整対象波形データのセグメンテーション結果は領域１７ｎに表示される。
【００５２】
波形群のうち、部分波形数が４の場合の頻度が最も高い場合には、４つの部分波形数を有する波形データが代表波形データとして領域１７ｉに表示される。調整対象波形リスト１７ｋは、最頻度以外の部分波形数の波形データのリストを保持する。調整対象波形リスト１７ｋから一つの波形ＩＤを選択して調整対象波形可視化ボタン１７ｍをクリックすると、調整対象波形データのセグメンテーション結果が領域１７ｎに表示される。
【００５３】
図７のＧＵＩ画面１７にて、代表波形データと調整対象波形データのセグメンテーション結果を比較することで、調整対象波形データのセグメンテーションを調整する必要があるか否かを容易に判断できる。調整対象波形データのセグメンテーションの調整が必要と判断された場合、調整対象波形調整ボタン１７ｈをクリックすることで、頻度が最大の部分波形数にて調整対象波形データのセグメンテーションが自動的に行われる。
【００５４】
部分波形／特徴量リスト１７ｊには、代表波形データのセグメンテーションに関する情報が掲載されている。図７の例では、部分波形／特徴量リスト１７ｊが、代表波形データの時間長、セグメンテーション点の数、第１番目の代表部分波形データの状態レベル、第２番目の代表部分波形データの状態レベル、第１番目の代表部分波形データの振幅などを含む例を示している。
【００５５】
状態レベルの推定が正しく行われない場合は、波形調整ボタン１７ｈをクリックすれば、各部分波形ごとに再度、状態レベル推定と波形セグメンテーションが行われる。もし、元のセグメントで推定した状態レベルとセグメンテーション点が新たに推定した状態レベルとセグメンテーション点が異なる場合、状態レベルとセグメンテーション点の調整が行われる。
【００５６】
波形セグメンテーションが正しく行われている場合は、波形特徴量を抽出して特徴量にラベルを付けることもできる。すなわち、異常検知モデルを構築するために波形特徴量とその波形のラベルの教師データを生成することができる。この場合、まず、ラベルファイル選択ボタン１７ｔをクリックしてラベルファイルを選択する。次に、特徴量に波形ラベル付けるボタン１７ｒをクリックすると波形特徴量にラベルが付けられて、出力ファイルとして指定したファイルの入力領域１７ｓに書き込まれる。
【００５７】
図７のＧＵＩ画面１７は、調整対象波形データのセグメンテーションが適切か否かをユーザが目視で確認した結果を入力するボタン１７ｕ，１７ｖを備えていてもよい。ユーザがボタン１７ｕをクリックすると、調整対象波形データのセグメンテーションは適切であると判断され、その情報が波形データＤＢ７に記憶されてもよい。また、ユーザがボタン１７ｖをクリックすると、調整対象波形データのセグメンテーションは不適切であると判断され、波形調整ボタン１７ｈをクリックした場合と同様に、調整対象波形データのセグメンテーションをやり直してもよい。
【００５８】
このように、第１の実施形態では、入力された波形データの状態レベルを推定し、推定した状態レベルに基づいて波形データを複数のセグメンテーション点で区分けする。例えば、隣接する２つのセグメンテーション点の間の部分波形データに必ず特徴量が含まれるように区分けすることで、特徴量の抽出が容易になる。
【００５９】
本実施形態によれば、センサの検知データのように、波形形状が複雑に変化する波形データを自動的にセグメンテーション点で区分けすることで、複数の波形データの特徴点同士を容易に比較でき、異常検出等を精度よく高速に行うことができる。
【００６０】
また、本実施形態では、いったんセグメンテーション点を設定した後に、状態レベルを推定し直してセグメンテーション点の位置を調整することができ、特徴点の抽出精度を向上できる。
【００６１】
さらに、本実施形態では、各波形データのセグメンテーションが終了した後、複数の波形データを含む波形群について、波形データ同士のセグメンテーション点の数や位置を揃えて部分波形データ同士を比較するため、波形群に含まれる各波形データ同士の特徴点が一致するか否かを精度よく判定できる。
【００６２】
また、本実施形態では、ＧＵＩ画面１７を設けて、代表波形のセグメンテーションと調整対象波形のセグメンテーションとをユーザが目視で比較できるようにしたため、調整対象波形のセグメンテーションが正しく行われたか否かを目視で確認でき、正しく行われていない場合は、セグメンテーションの調整指示を行うことができる。
【００６３】
（第２の実施形態）
第２の実施形態による波形セグメンテーション装置１は、図１と同様のブロック構成を備えているが、第２セグメンテーション調整部１５の処理動作が第１の実施形態とは異なっている。
【００６４】
部分波形数算出部１３は第１の実施形態と同様に部分波形数（例えばｎ個）を算出する。セグメンテーション決定部１４は、セグメンテーション点を決定し、ｎ個の部分波形を持つ波形群を抽出して、抽出した波形群を用いて各部分波形の代表部分波形を生成する。このため、セグメンテーション決定部１４は、波形群における二つのセグメンテーション点の間の全ての部分波形の中の最長あるいは最短の部分波形を代表波形として選択できる。あるいは、その最長あるいは最短の部分波形を用いて線形補間あるいはＤＴＷ（Dynamic Time Warping）手法にて他の部分波形の長さを調整して、部分波形の各点で平均を取って代表部分波形を生成することができる。さらに、セグメンテーション決定部１４は、二つのセグメンテーション点の間の全ての部分波形に対して、ＤＢＡ（Dynamic Time Warping Barycenter Averaging）手法により代表部分波形を生成してもよい。
【００６５】
第２セグメンテーション調整部１５は、セグメンテーション決定部１４で生成された代表部分波形を用いて、調整対象波形群のセグメンテーション点を調整する。そのため、最初に各調整対象波形の部分波形と代表部分波形との間でパターンマッチングが行われる。具体的には、調整対象波形の部分波形数と代表部分波形数の範囲内で、調整対象波形の一つ以上の部分波形と代表波形の一つ以上の部分波形とのパターンマッチングが行われる。ここで、一つの例を挙げる。
【００６６】
調整対象波形の部分波形はＳｅ＝｛Ｓｅ１，Ｓｅ２，Ｓｅ３｝であり、代表部分波形はＳｒ＝｛Ｓｒ１，Ｓｒ２，Ｓｒ３，Ｓｒ４｝であるとする。調整対象部分波形Ｓｅの部分波形数は代表部分波形Ｓｒより小さいので、調整対象部分波形Ｓｅと代表部分波形Ｓｒとのマッピングを行う。最初に、代表部分波形Ｓｒと比較する部分波形数ｋｍａｘを決める。この場合、ｋｍａｘ＝４である。したがって、代表部分波形Ｓｒの部分波形群は｛Ｓｒ１｝、｛Ｓｒ２｝、｛Ｓｒ３｝、｛Ｓｒ４｝、｛Ｓｒ１＋Ｓｒ２｝、｛Ｓｒ２＋Ｓｒ３｝、｛Ｓｒ３＋Ｓｒ４｝、｛Ｓｒ１＋Ｓｒ２＋Ｓｒ３｝、｛Ｓｒ２＋Ｓｒ３＋Ｓｒ４｝、｛Ｓｒ１＋Ｓｒ２＋Ｓｒ３＋Ｓｒ４｝となる。
【００６７】
まず、調整対象部分波形Ｓｅ１に対して代表部分波形群の各代表部分波形と比較し、一番似ている代表部分波形が選択される。例えば、調整対象部分波形Ｓｅ１は、代表部分波形Ｓｒ１と非常に似ている場合、調整対象部分波形Ｓｅ１は代表部分波形Ｓｒ１にマッピングされる。
【００６８】
次に、調整対象部分波形Ｓｅ１と代表部分波形Ｓｒ１がマッピングしているので、調整対象部分波形Ｓｅ２に対して代表部分波形Ｓｒの代表部分波形群は｛Ｓｒ２｝、｛Ｓｒ３｝、｛Ｓｒ４｝、｛Ｓｒ２＋Ｓｒ３｝、｛Ｓｒ３＋Ｓｒ４｝、｛Ｓｒ２＋Ｓｒ３＋Ｓｒ４｝となり、一番似ている部分波形が選択される。例えば、調整対象部分波形Ｓｅ２は｛Ｓｒ２＋Ｓｒ３｝と似ているとしてマッピングされる。すなわち、調整対象部分波形Ｓｅ２は、代表部分波形の二つの部分波形｛Ｓｒ２＋Ｓｒ３｝と似ているとしてマッピングされる。
【００６９】
次に、調整対象部分波形Ｓｅ３に対して代表部分波形Ｓｒの代表部分波形群｛Ｓｒ４｝が対応づけられ、調整対象部分波形Ｓｅ３と代表部分波形Ｓｒ４がマッピングされる。
【００７０】
上述したように、調整対象部分波形Ｓｅ２は代表部分波形群｛Ｓｒ２＋Ｓｒ３｝と似ているので、代表部分波形Ｓｒ２とＳｒ３を用いて調整対象部分波形Ｓｅ２のセグメンテーションが行われる。調整対象部分波形Ｓｅ２の左側から代表部分波形Ｓｒ２、調整対象部分波形Ｓｅ２の右側から代表部分波形Ｓｒ３が順次にマッチングされる。
【００７１】
調整対象部分波形Ｓｅ２の各点において累積類似度が算出される。代表部分波形Ｓｒ２との累積類似度が代表部分波形Ｓｒ３との累積類似度より大きくなる点の前の点でセグメンテーションが行われる。ここで、一つの例を挙げる。
【００７２】
調整対象部分波形Ｓｅに１０個の点｛ｐ１，ｐ２，ｐ３，ｐ４，ｐ５，ｐ６，ｐ７，ｐ８，ｐ９，ｐ１０｝があるとする。それぞれの点で代表部分波形Ｓｒ２との累積類似度は１，１，２，２，３，８，１４，１５，１８，１９、代表部分波形Ｓｒ３との累積類似度は２５，１９，１５，１２，１０，４，２，２，１，１であるとする。ｐ６での代表部分波形Ｓｒ２との累積類似度＝８は、Ｓｒ３との累積類似度＝４より大きいので、ｐ５でセグメンテーションを行うと決定する。すなわち、マッピングは以下の通りとなる。
【００７３】
Ｓｅ１−−＞Ｓｒ１，Ｓｅ２（ｐ１〜ｐ５）−−＞Ｓｒ２，Ｓｅ２（ｐ６〜ｐ１０）−−＞Ｓｒ３，Ｓｅ３−−＞Ｓｒ４となる。
【００７４】
図８Ａ及び図８Ｂは第２の実施形態による第２セグメンテーション調整部１５の処理動作を説明する図である。
【００７５】
図８Ａは、代表波形１１１が代表部分波形Ａ〜Ｄに区分けされ、調整対象波形１１２が部分波形Ａ、Ｂに区分けされている例を示している。この場合、第２セグメンテーション調整部１５は、調整対象波形１１２の部分波形Ａが代表部分波形Ａに類似し、調整対象波形１１２の部分波形Ｂ、Ｄが代表部分波形Ｂ、Ｄにそれぞれ類似し、調整対象波形１１２には代表部分波形Ｃが存在しないと判断する。
【００７６】
そこで、第２セグメンテーション調整部１５は、図８Ａの調整対象波形１１３に示すように、調整対象波形１１２の部分波形ＢとＤの間に、振幅ゼロの部分波形Ｃ’を追加する。この部分波形Ｃ’は、代表部分波形Ｃが存在しない異常データであることを示している。
【００７７】
一方、図８Ｂの場合、調整対象波形１１３に示すように、代表波形が代表部分波形ＡとＢに区分けされ、調整対象波形が部分波形Ａ〜Ｄに区分けされている例を示している。この場合、波形群１１４に示すように、第２セグメンテーション調整部１５は、調整対象波形の部分波形Ｂの一部が代表部分波形ＢとＤに類似していると判断し、代表部分波形Ｂ〜Ｄを統合して代表部分波形Ｂとする。
【００７８】
このように、第２の実施形態では、代表波形と部分波形数が異なる調整対象波形については、代表波形に含まれる各代表部分波形と、調整対象波形に含まれる各部分波形とをマッチングさせて類似度を算出し、類似度の累積結果に基づいて、調整対象波形のセグメンテーションを調整する。これにより、代表波形に含まれる特徴量が調整対象波形にも含まれるか否かを精度よく検出できる。したがって、調整対象波形が複雑に変動している場合であっても、調整対象波形の特徴量を正確かつ迅速に抽出できる。
【００７９】
（第３の実施形態）
図９は第３の実施形態による波形セグメンテーション装置１の概略構成を示すブロック図である。図９の波形セグメンテーション装置１は、図１の構成に加えて、特徴量抽出部２１と、モデル生成部２２と、第３セグメンテーション調整部２３とを備えている。
【００８０】
特徴量抽出部２１は、入力された波形データの特徴量を抽出する。モデル生成部２２は、特徴量抽出部２１で抽出された特徴量に基づいて、入力された波形データが異常である可能性を数値化した値を出力する異常検知モデルを生成する。本明細書では、異常検知モデルの出力値を分類精度とも呼ぶ。生成する異常検知モデルの具体的な種類は問わないが、例えば、機械学習の分類器であるＳＶＭ（Support Vector Machine）、Logistic Regression、ｋ近傍法などのモデルが例示される。
【００８１】
第３セグメンテーション調整部２３は、入力された波形データを区分けする複数のセグメンテーション点の位置を複数通りに変更させた場合に、それぞれの異常検知モデルの出力値に基づいて複数のセグメンテーションの位置を調整する。
【００８２】
図１０は複数の波形データｗ１１〜ｗ１５を有する波形群１１５が入力された例を示している。特徴量抽出部２１は、波形群１１５の特徴量を抽出して、例えば図１０のようなリスト１１６を生成する。このリスト１１６には、例えば、各波形データに含まれる各部分波形ごとに、部分波形の長さ、振幅、アンダーシュートの大きさ等の情報が含まれている。
【００８３】
モデル生成部２２が異常検知モデルを生成した後（符号１１７）、第３セグメンテーション調整部２３は、各波形データのセグメンテーション位置、すなわち状態変化点を１０%から１００%まで、１０%単位でずらした場合の異常検知モデルの出力を取得する、すなわち分類精度を算出する（符号１１８）。第３セグメンテーション調整部２３は、異常検知モデルの出力（分類精度）が最も大きい場合、すなわち、異常検知モデルが最も正常である可能性が高いと判断した場合のセグメンテーション位置に基づいて、セグメンテーション点を調整する。
【００８４】
図１１は、セグメンテーション点を１０%単位でずらした場合の異常検知モデルの出力値の一例を示す図である。図１１の例では、セグメンテーション点を５０%ずらした場合に異常検知モデルの出力値が最大になっている。よって、第３セグメンテーション調整部２３は、セグメンテーション点を５０%ずらす調整を行う。
【００８５】
なお、二つの状態変化点の間に多数の細かい状態変化がある場合、遺伝的アルゴリズム等の組合せ最適手法を用いて最良のセグメンテーション点を選択してもよい。
【００８６】
このように、第３の実施形態では、波形データのセグメンテーション点の位置をずらしながら異常検知モデルの出力値を確認し、異常検知モデルで最も正常に近いと判断されたセグメンテーション位置を最終的に選択するため、簡易な処理手順でセグメンテーション位置の最適化を行うことができる。
【００８７】
上述した第１〜第３の実施形態による波形セグメンテーション装置１の少なくとも一部の構成部分をチップ化してもよい。また、例えばエッジデバイスなどのＳｏＣ（System on Chip）の内部に、第１〜第３の実施形態による波形セグメンテーション装置１の少なくとも一部の構成部分を組み込んでもよい。この場合、波形データＤＢ７やセグメンテーション記憶部１６はＳｏＣの外部に設けて、所定のインタフェース機器を介してアクセスできるようにしてもよい。エッジデバイスは、複数のネットワーク間で通信を行うため、各種のセンサから出力された波形データの特徴量を迅速かつ正確に抽出して、抽出した特徴量を複数のネットワーク間で共有することが容易に行えるようになる。
【００８８】
上述した実施形態で説明した波形セグメンテーション装置１の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、波形セグメンテーション装置１の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやＣＤ−ＲＯＭ等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
【００８９】
また、波形セグメンテーション装置１の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線（無線通信も含む）を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【００９０】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００９１】
１  波形セグメンテーション装置、２  状態レベル推定部、３  セグメンテーション同定部、４  特徴量登録部、５  波形データ変換部、６  状態変化点検出部、７  波形データＤＢ、８  グルーピング部、９  第１セグメンテーション調整部、１０  セグメンテーション評価部、１１  単一波形セグメンテーション部、１２  波形群セグメンテーション部、１３  部分波形数算出部、１４  セグメンテーション決定部、１５  第２セグメンテーション調整部、１６  セグメンテーション記憶部、１７  ＧＵＩ画面、１８  表示部、１９  表示制御部、２１  特徴量抽出部、２２  モデル生成部、２３  第３セグメンテーション調整部
【図１】
2020193847.tif 000003
【図２】
2020193847.tif 000004
【図３】
2020193847.tif 000005
【図４】
2020193847.tif 000006
【図５】
2020193847.tif 000007
【図６】
2020193847.tif 000008
【図７】
2020193847.tif 000009
【図８Ａ】
2020193847.tif 000010
【図８Ｂ】
2020193847.tif 000011
【図９】
2020193847.tif 000012
【図１０】
2020193847.tif 000013
【図１１】
2020193847.tif 000014