IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社東芝の特許一覧 ▶ 東芝メモリ株式会社の特許一覧

特許7324050波形セグメンテーション装置及び波形セグメンテーション方法
<>
  • 特許-波形セグメンテーション装置及び波形セグメンテーション方法 図1
  • 特許-波形セグメンテーション装置及び波形セグメンテーション方法 図2
  • 特許-波形セグメンテーション装置及び波形セグメンテーション方法 図3
  • 特許-波形セグメンテーション装置及び波形セグメンテーション方法 図4
  • 特許-波形セグメンテーション装置及び波形セグメンテーション方法 図5
  • 特許-波形セグメンテーション装置及び波形セグメンテーション方法 図6
  • 特許-波形セグメンテーション装置及び波形セグメンテーション方法 図7
  • 特許-波形セグメンテーション装置及び波形セグメンテーション方法 図8A
  • 特許-波形セグメンテーション装置及び波形セグメンテーション方法 図8B
  • 特許-波形セグメンテーション装置及び波形セグメンテーション方法 図9
  • 特許-波形セグメンテーション装置及び波形セグメンテーション方法 図10
  • 特許-波形セグメンテーション装置及び波形セグメンテーション方法 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-01
(45)【発行日】2023-08-09
(54)【発明の名称】波形セグメンテーション装置及び波形セグメンテーション方法
(51)【国際特許分類】
   G01R 13/20 20060101AFI20230802BHJP
【FI】
G01R13/20 Z
G01R13/20 P
【請求項の数】 13
(21)【出願番号】P 2019098815
(22)【出願日】2019-05-27
(65)【公開番号】P2020193847
(43)【公開日】2020-12-03
【審査請求日】2022-03-14
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(73)【特許権者】
【識別番号】318010018
【氏名又は名称】キオクシア株式会社
(74)【代理人】
【識別番号】100091982
【弁理士】
【氏名又は名称】永井 浩之
(74)【代理人】
【識別番号】100091487
【弁理士】
【氏名又は名称】中村 行孝
(74)【代理人】
【識別番号】100105153
【弁理士】
【氏名又は名称】朝倉 悟
(74)【代理人】
【識別番号】100107582
【弁理士】
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100118843
【弁理士】
【氏名又は名称】赤岡 明
(74)【代理人】
【識別番号】100103263
【弁理士】
【氏名又は名称】川崎 康
(72)【発明者】
【氏名】ポール トポン
(72)【発明者】
【氏名】西川 武一郎
【審査官】島田 保
(56)【参考文献】
【文献】国際公開第2016/120959(WO,A1)
【文献】特開2011-106827(JP,A)
【文献】特開昭59-083197(JP,A)
【文献】特開2010-122912(JP,A)
【文献】特開2006-069699(JP,A)
【文献】特開2013-210945(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01R 13/00-13/42
(57)【特許請求の範囲】
【請求項1】
入力された波形データの状態レベルを推定する状態レベル推定部と、
前記状態レベル推定部で推定された状態レベルに基づいて、前記波形データを複数のセグメンテーション点で区分けするセグメンテーション同定部と、
前記入力された波形データの値に基づいて、前記波形データを複数のグループに区分けするグルーピング部と、
波形群に属する複数の波形データの中から選択される代表波形データを区分けするための複数の代表セグメンテーション点に基づいて、前記入力された波形データを区分けするための前記複数のセグメンテーション点を調整する第1調整部と、を備え、
前記セグメンテーション同定部は、隣接する2つの前記セグメンテーション点の間に前記波形データの特徴量が含まれるように、前記複数のセグメンテーション点を同定し、
前記状態レベル推定部は、前記複数のグループのうち一部のグループを統合又は分割した後の各グループの代表値に基づいて前記状態レベルを推定する、波形セグメンテーション装置。
【請求項2】
前記グルーピング部は、前記波形データの値及び頻度に基づいて、前記波形データを前記複数のグループに区分けする、請求項に記載の波形セグメンテーション装置。
【請求項3】
前記状態レベル推定部にて推定された状態レベルに基づいて、前記波形データを変換する波形データ変換部と、
前記波形データ変換部で変換された波形データの状態レベルが変化する状態変化点を検出する状態変化点検出部と、を備え、
前記セグメンテーション同定部は、前記状態変化点に基づいて、前記複数のセグメンテーション点を同定する、請求項1又は2に記載の波形セグメンテーション装置。
【請求項4】
前記波形データを前記複数のセグメンテーション点で区分けして得られる複数の部分波形データに基づいて前記複数の部分波形データの状態レベルを推定し、推定された状態レベルに基づいて前記状態レベル推定部で推定された状態レベルを更新するとともに、前記複数のセグメンテーション点の位置を調整する第2調整部を備える、請求項1乃至のいずれか一項に記載の波形セグメンテーション装置。
【請求項5】
入力された複数の波形データのそれぞれについての前記複数のセグメンテーション点に基づいて、前記代表波形データ及び前記複数の代表セグメンテーション点を決定するセグメンテーション決定部を備え、
前記第1調整部は、前記セグメンテーション決定部にて決定された前記複数の代表セグメンテーション点に基づいて、前記入力された複数の波形データのそれぞれについて前記複数のセグメンテーション点を調整する、請求項1乃至4のいずれか一項に記載の波形セグメンテーション装置。
【請求項6】
前記第1調整部は、前記代表波形データを前記複数の代表セグメンテーション点で分割した複数の代表部分波形データと、前記入力された複数の波形データのそれぞれを前記複数のセグメンテーション点で分割した複数の部分波形データとのパターンマッチングにより、前記複数のセグメンテーション点を調整する、請求項に記載の波形セグメンテーション装置。
【請求項7】
前記セグメンテーション決定部は、前記入力された複数の波形データのうち少なくとも一つの波形長さが他の波形データと相違している場合には、前記複数の波形データの時間長さを揃える処理を行った上で、前記代表波形データ及び前記複数の代表セグメンテーション点を決定する、請求項又はに記載の波形セグメンテーション装置。
【請求項8】
前記第1調整部は、前記入力された複数の波形データのそれぞれについての前記複数のセグメンテーション点のうち、前記複数の代表セグメンテーション点に近接した位置のセグメンテーション点を残し、前記複数の代表セグメンテーション点から離れた位置のセグメンテーション点を削除する、請求項乃至のいずれか一項に記載の波形セグメンテーション装置。
【請求項9】
前記代表波形データ及び前記複数の代表セグメンテーション点と、前記入力された波形データ及び前記複数のセグメンテーション点とを可視化する可視化部を備える、請求項乃至のいずれか一項に記載の波形セグメンテーション装置。
【請求項10】
前記可視化部が可視化した前記複数のセグメンテーション点を評価する評価部を備える、請求項に記載の波形セグメンテーション装置。
【請求項11】
前記入力された波形データが異常である可能性を示す値を出力する異常検知モデルを生成するモデル生成部と、
前記入力された波形データを区分けする前記複数のセグメンテーション点の位置を複数通りに変更させた場合に、前記異常検知モデルの出力値に基づいて前記複数のセグメンテーション点の位置を調整する第3調整部と、を備える、請求項1乃至10のいずれか一項に記載の波形セグメンテーション装置。
【請求項12】
入力された波形データを時系列順に記憶する波形データ記憶部を備え、
前記状態レベル推定部は、前記波形データ記憶部から読み出した波形データの状態レベルを推定する、請求項1乃至11のいずれか一項に記載のセグメンテーション装置。
【請求項13】
入力された波形データの状態レベルを推定し、
前記推定された状態レベルに基づいて、前記波形データを複数のセグメンテーション点で区分けし、
前記入力された波形データの値に基づいて、前記波形データを複数のグループに区分けし、
波形群に属する複数の波形データの中から選択される代表波形データを区分けするための複数の代表セグメンテーション点に基づいて、前記入力された波形データを区分けするための前記複数のセグメンテーション点を調整し、
隣接する2つの前記セグメンテーション点の間に前記波形データの特徴量が含まれるように、前記複数のセグメンテーション点を同定し、
前記複数のグループのうち一部のグループを統合又は分割した後の各グループの代表値に基づいて前記状態レベルを推定する、波形セグメンテーション方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、波形セグメンテーション装置及び波形セグメンテーション方法に関する。
【背景技術】
【0002】
生産工場やプラントなどは、故障予知や、故障分類、異常検出等のために多数のセンサを設置している。これらセンサから時系列に出力される大量の検知データは、アナログの波形データであり、A/D変換して記憶装置に記憶された後に、波形の特徴量を抽出して異常検出等を行うのが一般的である。
【0003】
しかしながら、各センサの波形データは、スパーク状のノイズや振幅レベルの不定期な変動などにより、複雑な波形を有する。このため、検知データの波形から有効な特徴量を抽出するのは容易ではない。
【0004】
検知データの波形を複数の部分波形に自動的に区分けして、各部分波形から特徴量を抽出する手法がある。その際、各部分波形に含まれるノイズ成分を除去する波形整形を行ってから正常波形と比較することも考えられるが、各部分波形の波形整形を行うと、正常波形との差異が小さくなり、異常検出を正しく行えなくなるおそれがある。
【0005】
また、波形データを複数の部分波形に自動的に区分けする際に、誤って特徴量を別々の部分波形に分けてしまうおそれもある。この場合、部分波形から特徴量を抽出するのが困難になる。
【先行技術文献】
【特許文献】
【0006】
【文献】特許第5176534号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明の一態様は、入力された波形データを正しく抽出できる波形セグメンテーション装置及び波形セグメンテーション方法を提供するものである。
【課題を解決するための手段】
【0008】
本実施形態によれば、入力された波形データの状態レベルを推定する状態レベル推定部と、
前記状態レベル推定部で推定された状態レベルに基づいて、前記波形データを複数のセグメンテーション点で区分けするセグメンテーション同定部と、を備える波形セグメンテーション装置が提供される。
【図面の簡単な説明】
【0009】
図1】第1の実施形態による波形セグメンテーション装置1の概略構成を示すブロック図。
図2図1の波形セグメンテーション装置の処理動作の一例を示すフローチャート。
図3図2のステップS1~S6の単一波形セグメンテーション部の処理動作を説明する図。
図4図3に続く処理動作を説明する図。
図5図4に続く処理動作を説明する図。
図6図2のステップS7~S11の波形群セグメンテーション部の処理動作を模式的に示す図。
図7】GUI画面の一例を示す図。
図8A】第2の実施形態による第2セグメンテーション調整部の処理動作を説明する図。
図8B】第2の実施形態による第2セグメンテーション調整部の処理動作を説明する図。
図9】第3の実施形態による波形セグメンテーション装置1の概略構成を示すブロック図。
図10】複数の波形データを有する波形群が入力された例を示す図。
図11】セグメンテーション点を10%単位でずらした場合の異常検知モデルの出力値の一例を示す図。
【発明を実施するための形態】
【0010】
以下、図面を参照して、波形セグメンテーション装置の実施形態について説明する。以下では、波形セグメンテーション装置の主要な構成部分を中心に説明するが、波形セグメンテーション装置には、図示又は説明されていない構成部分や機能が存在しうる。以下の説明は、図示又は説明されていない構成部分や機能を除外するものではない。
【0011】
(第1の実施形態)
図1は第1の実施形態による波形セグメンテーション装置1の概略構成を示すブロック図である。図1の波形セグメンテーション装置1は、入力された波形データを抽出する処理を行う。より具体的には、図1の波形セグメンテーション装置1は、入力された波形データの特徴量を抽出する。特徴量とは、例えば波形の特徴的な形状である。図1の波形セグメンテーション装置1に入力される波形データは、例えば生産工場やプラントなどに設置される各種のセンサの検知データである。なお、センサの種類は問わない。また、図1の波形セグメンテーション装置1は、センサの検知データ以外の種々の波形データの特徴量を抽出する目的で利用することができる。
【0012】
図1の波形セグメンテーション装置1は、必要最小限の構成として、状態レベル推定部2と、セグメンテーション同定部3とを備えている。
【0013】
状態レベル推定部2は、入力された波形データの状態レベルを推定する。状態レベルとは、例えば波形データの値(例えば振幅値)に応じたレベルである。状態レベル推定部2は、入力された波形データがどの状態レベルに属するかを推定する。
【0014】
セグメンテーション同定部3は、状態レベル推定部2で推定された状態レベルに基づいて、波形データを複数のセグメンテーション点で区分けする。本実施形態では、隣接する2つのセグメンテーション点の間の波形を部分波形と呼ぶ。部分波形は、少なくとも一つの特徴量を含んでいる。このように、セグメンテーション同定部3は、波形データに含まれる特徴量を区切りとして、時間軸方向に複数のセグメンテーション点を同定する。
【0015】
セグメンテーション同定部3は、特徴量登録部4に登録された特徴量に基づいて、波形データに含まれる特徴量を把握してもよい。特徴量登録部4に登録される特徴量は、例えば、波形の状態レベル、振幅、状態推移、アンダーシュート、オーバーシュート、スパイクなどである。なお、波形の特徴量の具体的な種類は任意である。
【0016】
図1の波形セグメンテーション装置1は、波形データ変換部5と状態変化点検出部6を備えていてもよい。波形データ変換部5は、状態レベル推定部2にて推定された状態レベルに基づいて波形データを変換する。例えば、波形データ変換部5は、波形データに含まれるアンダーシュートやオーバーシュート、スパイクなどを除去する変換を行ってもよい。状態変化点検出部6は、波形データ変換部5で変換された波形データの状態レベルが変化する状態変化点を検出する。セグメンテーション同定部3は、状態変化点に基づいてセグメンテーション点を同定してもよい。
【0017】
図1の波形セグメンテーション装置1は、波形データデータベース(以下、波形データDB)7を備えていてもよい。波形データDB7は、各種のセンサの検知データ等の波形データを時系列順に記憶する。また、波形データDB7は、センサの検知データ等の波形データを記憶するだけでなく、図1の波形セグメンテーション装置1で正常波形又は異常波形と判断された波形データを記憶してもよい。波形データDB7は、複数のDBに分かれていてもよく、例えば、センサごとに別個のDBに波形データを記憶してもよい。また、波形データDB7に波形データのリンク先情報を記憶してもよい。この場合、波形データDB7から読み出したリンク先情報に基づくリンク先から波形データを読み出すことになる。
【0018】
図1の波形セグメンテーション装置1は、グルーピング部8を備えていてもよい。グルーピング部8は、波形データの値に基づいて、波形データを複数のグループに区分けする。グルーピング部8は、入力された波形データをそのまま利用して複数のグループに区分けしてもよいし、あるいは、入力された波形データを波形データ変換部5で変換してから、複数のグループに区分けしてもよい。グルーピング部8には、センサ等からの波形データが直接入力されてもよいし、波形データDB7から読み出された波形データが入力されてもよい。
【0019】
図1の波形セグメンテーション装置1は、第1セグメンテーション調整部9を備えていてもよい。第1セグメンテーション調整部9は、単一の波形データについてのセグメンテーション点の調整を行う。より具体的には、第1セグメンテーション調整部9は、波形データを複数のセグメンテーション点で区分けして得られる複数の部分波形データに基づいて複数の部分波形データの状態レベルを推定し、推定された状態レベルに基づいて状態レベル推定部2で推定された状態レベルを更新するとともに、複数のセグメンテーション点の位置を調整する。このように、第1セグメンテーション調整部9は、セグメンテーション同定部3が同定したセグメンテーション点が妥当であるか否かを確認し、妥当でない場合はセグメンテーション点を調整する。
【0020】
図1の波形セグメンテーション装置1は、セグメンテーション評価部10を備えていてもよい。セグメンテーション評価部10は、セグメンテーション同定部3で同定された複数のセグメンテーション点、又は第1セグメンテーション調整部9で調整されたセグメンテーション点が妥当か否かを評価する。セグメンテーション評価部10は、後述するように波形データを複数のセグメンテーション点で区分けした結果を可視化する可視化部を利用して、上述した評価を行ってもよい。可視化部は、例えば、代表波形データ及び複数の代表セグメンテーション点と、調整対象波形データ及びその複数のセグメンテーション点とを可視化する。より具体的には、可視化部は、代表波形データ及び複数の代表セグメンテーション点と、調整対象波形データ及びその複数のセグメンテーション点とを表示部18に表示させる表示制御部19を有する。セグメンテーション評価部10は、可視化部が可視化した複数のセグメンテーション点を評価してもよい。あるいは、セグメンテーション評価部10は、異常検知モデルから出力される判定精度を用いて上述した評価を行ってもよい。ここで、代表波形データとは、波形群に属する複数の波形データの中から選択される代表的な波形データである。代表波形データは波形群に属する複数の波形データを用いて新規に生成されても良い。
【0021】
図1の波形セグメンテーション装置1における上述したグルーピング部8、状態レベル推定部2、セグメンテーション同定部3、及び第1セグメンテーション調整部9は、単一の波形データのセグメンテーションを行うものであり、本実施形態では、単一波形セグメンテーション部11と呼ぶ。
【0022】
これに対して、図1の波形セグメンテーション装置1は、波形群のセグメンテーションを行う波形群セグメンテーション部12を備えていてもよい。波形群セグメンテーション部12は、部分波形数算出部13と、セグメンテーション決定部14と、第2セグメンテーション調整部15とを有する。
【0023】
部分波形数算出部13は、波形群に含まれる各波形データを区分けするのに必要な部分波形数を算出する。部分波形数は、波形群に含まれる各波形データの部分波形数から算出した数でもよいし、予めユーザが設定した数でもよい。波形群に含まれる各波形データの部分波形数から必要な部分波形数を算出する場合、例えば、波形群における部分波形数の頻度を算出し、頻度が最大の部分波形数を必要な部分波形数とする。
【0024】
セグメンテーション決定部14は、波形群に含まれる全波形データのセグメンテーション点を用いて、代表波形データ及び代表セグメンテーション点を決定する。代表セグメンテーション点を決定するのにクラスタリング手法を用いることができる。この場合、波形群に含まれる各波形データごとにnグループに区分けし、そのうちの一つの波形データを代表波形データとして、その代表波形データのグループ分けに基づいて代表セグメンテーション点を設定する。
【0025】
第2セグメンテーション調整部15は、代表波形データを区分けするための複数の代表セグメンテーション点に基づいて、入力された波形データを区分けするための複数のセグメンテーション点を調整する。このように、第2セグメンテーション調整部15は、複数の代表セグメンテーション点に基づいて、波形群の各波形データのセグメンテーション点を調整する。
【0026】
より具体的には、第2セグメンテーション調整部15は、代表波形データを複数の代表セグメンテーション点で分割した複数の代表部分波形データと、入力された複数の波形データのそれぞれを複数のセグメンテーション点で区分けした複数の部分波形データとのパターンマッチングにより、複数のセグメンテーション点を調整する。セグメンテーション決定部14は、入力された複数の波形データのうち少なくとも一つの波形長さが他の波形データと相違している場合には、複数の波形データの時間長さを揃える処理を行った上で、代表波形データ及び複数の代表セグメンテーション点を決定してもよい。
【0027】
また、第2セグメンテーション調整部15は、入力された複数の波形データのそれぞれについての複数のセグメンテーション点のうち、複数の代表セグメンテーション点に近接した位置のセグメンテーション点を残し、複数の代表セグメンテーション点から離れた位置のセグメンテーション点を削除してもよい。
【0028】
図1の波形セグメンテーション装置1は、セグメンテーション記憶部16を備えていてもよい。セグメンテーション記憶部16は、セグメンテーションデータを記憶する。セグメンテーションデータとは、波形データの状態レベル、波形データを複数のセグメンテーション点で区分けした場合の部分波形数、各部分波形の開始点及び終了点、各部分波形に含まれる特徴量などを記憶する。各部分波形の開始点と終了点の代わりに、部分波形の長さを記憶してもよい。
【0029】
図2図1の波形セグメンテーション装置1の処理動作の一例を示すフローチャートである。図2のステップS1~S6は単一波形セグメンテーション部11の処理動作を示し、ステップS7~S11は波形群セグメンテーション部12の処理動作を示している。このように、入力された各波形データのセグメンテーション点の同定が終了した後に、複数の波形データを含む波形群のセグメンテーションの処理が行われる。
【0030】
まず、グルーピング部8は波形データDB7からの波形データの入力を受け付ける(ステップS1)。上述したように、グルーピング部8は、センサ等から出力された波形データを直接取得してもよい。グルーピング部8は、入力された波形データを複数のグループに分ける(ステップS2)。
【0031】
次に、状態レベル推定部2は、グルーピング部8が分けた複数のグループのうち、一部のグループを統合したり分割するなどして、グループ分けを更新し、更新後の各グループの代表値を状態レベルとして推定する(ステップS3)。一つしか状態レベルがない場合は、ステップS3にて図2の処理を終了してもよい。
【0032】
次に、波形データ変換部5は、ステップS3で推定された状態レベルを用いて波形データを変換する(ステップS4)。次に、状態変化点検出部6は、変換後の波形データに基づいて、状態変化点を検出する。セグメンテーション同定部3は、検出された状態変化点をセグメンテーション点の候補とし、隣接する2つのセグメンテーション点の間の部分波形に1つ以上の特徴量が含まれるようにセグメンテーション点を同定する(ステップS5)。また、このステップS5では、第1セグメンテーション調整部9によるセグメンテーション点の調整も行われる。
【0033】
次に、波形データDB7内の対象となる全波形データのセグメンテーション点の同定及び調整が終了したか否かを判定する(ステップS6)。まだ、セグメンテーション点の同定及び調整が終わっていない波形データが存在する場合には、ステップS1以降の処理を繰り返す。
【0034】
全波形データのセグメンテーション点の同定及び調整が終了した場合には、波形群のセグメンテーションの処理を開始する。まず、部分波形数算出部13は、ステップS1~S6でセグメンテーションを行った複数の波形データを含む波形群の部分波形数を決定するために、波形群内の各波形データの部分波形数を検出して(ステップS7)、最も頻度の高い部分波形数を各波形データの部分波形数として決定する(ステップS8)。
【0035】
次に、波形群に含まれる各波形データについて、ステップS8で決定した部分波形数になるように、複数のセグメンテーション点で区分けして、複数の部分波形データを生成する(ステップS9)。次に、各波形データごとに、各波形データ内の各部分波形データの代表値を決定する(ステップS10)。次に、各部分波形データの代表値に基づいて、各波形データのセグメンテーション点を調整する(ステップS11)。
【0036】
図3図5図2のステップS1~S6の単一波形セグメンテーション部11の処理動作を説明する図である。図3の波形w1はグルーピング部8に入力される波形データの一例である。状態レベル推定部2は、波形w1の状態レベルを155、170、180と推定する。次に、推定された状態レベルに基づいて部分波形データAとBに区分けする。次に、各部分波形データごとに、状態レベルを推定する。この結果、波形w3に示すように、部分波形データAでは状態レベル110、162、180が推定され、部分波形データBでは状態レベル150、158、170が推定される。波形データ変換部5は、状態レベル158と162が近接しているため、状態レベル158と162を同一のグループに割り当てて、このグループの代表値を160とする。この結果、波形w4に示すように、波形変換を行った波形データが生成される。以降は、波形w4の波形データに基づいてセグメンテーションが行われる。
【0037】
図4は、波形データw4に対してグメンテーションを行う例を示している。波形データw4がグルーピング部8に入力されると、グルーピング部8は、波形w5に示すように、波形データw4についてカーネル密度量を推定して、波形データw5を生成する。波形データw6は、9個の山と10個の谷を含んでいる。谷の箇所でカーネル密度量を分けると、9つのデータグループが得られる。各データグループに含まれる元の波形データの量は、20%、15%、8%、7%、47%、0.75%、0.75%、0.75%、0.75%である。
【0038】
状態レベル推定部2は、カーネル密度推定量が小さい山のグループ、例えば図4の右側の山を除く。すなわち、波形データのスパイクを除く。このため、全波形データにおける望ましい数(例えば、95%ぐらい)分まで、高い山から順次データグループを選択する。不安定波形あるいは非常に変動する波形の場合は、多数の小さい山が出る可能性があるため、データグループを選択するときは、そのデータグループに全データの閾値以上(例10%以上)が入っているかどうかをチェックする。
【0039】
全データの閾値(例えば10%)以上が入っていない場合、そのグループを除く。本例では、47%、20%、15%、8%、7%のデータグループを順次に選択する。グルーピング部8は各山の両方側の谷で区切って、その範囲に入っている元の波形データは同じグループとする。次に、各グループから外れ値を除く。
【0040】
次に、各データグループの平均値あるいは中央値を算出し、その平均値あるいは中央値を状態レベルとする。本例では、全波形データの平均値±3×標準偏差の範囲以外の値は外れ値として処理した。この結果、図4の波形w6に示すように、本例において推定された状態レベルは110、150、160、170、180となる。
【0041】
次に、波形データ変換部5は、図5の波形w8に示すように、状態レベルを用いて波形データを変換する。また、状態変化点検出部6は、変換後の波形データの状態変換点を検出する。セグメンテーション同定部3は、状態変化点をセグメンテーション候補として同定する。図5の波形w9は、13個のセグメンテーション点候補が存在する例を示している。セグメンテーション点候補で波形を区切ると小さい部分波形が数多く出る可能性があるため、第1セグメンテーション調整部9は、まず、部分波形の長さでセグメンテーション点を調整する。ある部分波形の長さが全波形長さのx%以下の場合はその部分波形のセグメンテーション点をセグメンテーション点候補から除く。次に、残ったセグメンテーション点候補で波形を区切って、左側から順次に各部分波形にカーネル密度推定・クラスタリングに基づいて状態レベルを推定する。
【0042】
もし、ある部分波形では二つの状態レベルが存在しない、あるいはある状態レベルに属する値数が全波形のその状態レベルの値数のy%未満である場合、左あるいは右側の部分波形と統合する。また、あるセグメントでは二つの状態レベルが存在するが、最後のセグメントに一つしか状態レベルが存在しない場合、そのセグメントと最後のセグメントを統合する。この結果、最終的に、波形w10に示すように、4つの部分波形A~Dに区分けされる5つのセグメンテーション点が得られる。
【0043】
図6図2のステップS7~S11の波形群セグメンテーション部12の処理動作を模式的に示す図である。まず、図2のS1~S6の単一波形セグメンテーション部11の処理で設定された波形群に含まれる複数の波形データのセグメンテーションデータを取得する。セグメンテーションデータとは、各波形データの部分波形数や、各セグメンテーション点の位置などであり、例えば図6の表101が得られる。
【0044】
部分波形数算出部13は、図2のS1~S6の単一波形セグメンテーション部11の処理で得られた波形群102に属する各波形データのセグメンテーション点に基づいて、各波形データの部分波形数の頻度を検出する。部分波形数の頻度は例えばヒストグラム103で表される。図6の例では、部分波形数が4の場合の頻度が最も高いため、部分波形数を4として、5つのセグメンテーション点を設ける。
【0045】
次に、波形群に属する各波形データを5つのクラスタ(部分波形)に分けて、各クラスタの代表値を決める。図6の例では、ヒストグラム104に示すように、各クラスタの代表値は、0、125、250、455、605である。
【0046】
次に、第2セグメンテーション調整部15は、各クラスタの代表値を用いて、各波形データのセグメンテーション点を調整する。図6の例では、波形群105に示すように、波形群105に属する全波形データの部分波形数が4になるように、一部の波形データにセグメンテーション点が追加される。
【0047】
図1の波形セグメンテーション装置1は、GUI画面17を表示部18に表示させる表示制御部19を備えていてもよい。ユーザは、図7のGUI画面17に基づいて、波形群のセグメンテーション結果の確認や調整を行うことができる。また、図7のGUI画面17では、単一波形データを複数のセグメンテーション点で区分けして得られる複数の部分波形を可視化でき、各部分波形が一つ以上の特徴量を含んでいるか否かを目視で確認できる。ユーザはGUI画面17内の任意のボタンをマウス等でクリックすることで、選択指示を行うことができる。なお、図7のGUI画面は一例であり、GUI画面の具体的な構成は任意である。
【0048】
ユーザがGUI画面17にて部分波形を確認した結果、波形データのセグメンテーションが正しく行われていないと判断した場合、部分波形ごとにセグメンテーションのやり直しを指示したり、部分波形の状態レベルに基づいて波形データ全体のセグメンテーションのやり直しを指示できるようにしてもよい。また、波形群に含まれる各波形データのセグメンテーション点が代表セグメンテーション点に一致するように指示できるようにしてもよい。さらに、図7のGUI画面17にて波形データの特徴量抽出を指示できるようにしてもよい。これにより、後述するように異常検知モデルを構築する際の学習用の教師データを容易に生成できる。
【0049】
図7のGUI画面17は、波形データが記憶されている場所を指定する波形ディレクトリ入力領域17aと、ディレクトリ選択ボタン17bと、波形セグメンテーションの実行を選択するラジオボタン17cと、特徴量抽出の実行を選択するラジオボタン17dとを備えていてもよい。また、図7のGUI画面17は、波形データの出力ファイル名を入力する領域17eと、ファイル選択ボタン17fと、操作実行ボタン17gと、波形調整ボタン17hとを備えていてもよい。
【0050】
また、図7のGUI画面17は、代表波形データ及び代表セグメンテーション位置を表示する領域17iと、部分波形及び特徴量リストを表示する領域17jとを備えていてもよい。また、図7のGUI画面17は、セグメンテーション対象である調整対象波形リストを選択する領域17kと、調整対象波形可視化ボタン17mと、調整対象波形データ及びそのセグメンテーション位置を表示する領域17nと、波形群内の各波形データの部分波形数の頻度情報を表示する領域17pとを備えていてもよい。また、図7のGUI画面17は、調整対象波形のセグメンテーションの調整を指示するボタン17qと、特徴量に波形ラベルを付けることを指示するボタン17rと、波形ラベルのファイル名を入力する領域17sと、ラベルファイル選択ボタン17tとを備えていてもよい。
【0051】
図7のGUI画面17において、例えば、波形セグメンテーションの実行を選択するラジオボタン17cを選択して、操作実行ボタン17gをクリックすると、一つ以上の波形のセグメンテーションが行われる。代表波形データのセグメンテーション結果は領域17iに表示され、調整対象波形データのセグメンテーション結果は領域17nに表示される。
【0052】
波形群のうち、部分波形数が4の場合の頻度が最も高い場合には、4つの部分波形数を有する波形データが代表波形データとして領域17iに表示される。調整対象波形リスト17kは、最頻度以外の部分波形数の波形データのリストを保持する。調整対象波形リスト17kから一つの波形IDを選択して調整対象波形可視化ボタン17mをクリックすると、調整対象波形データのセグメンテーション結果が領域17nに表示される。
【0053】
図7のGUI画面17にて、代表波形データと調整対象波形データのセグメンテーション結果を比較することで、調整対象波形データのセグメンテーションを調整する必要があるか否かを容易に判断できる。調整対象波形データのセグメンテーションの調整が必要と判断された場合、調整対象波形調整ボタン17hをクリックすることで、頻度が最大の部分波形数にて調整対象波形データのセグメンテーションが自動的に行われる。
【0054】
部分波形/特徴量リスト17jには、代表波形データのセグメンテーションに関する情報が掲載されている。図7の例では、部分波形/特徴量リスト17jが、代表波形データの時間長、セグメンテーション点の数、第1番目の代表部分波形データの状態レベル、第2番目の代表部分波形データの状態レベル、第1番目の代表部分波形データの振幅などを含む例を示している。
【0055】
状態レベルの推定が正しく行われない場合は、波形調整ボタン17hをクリックすれば、各部分波形ごとに再度、状態レベル推定と波形セグメンテーションが行われる。もし、元のセグメントで推定した状態レベルとセグメンテーション点が新たに推定した状態レベルとセグメンテーション点が異なる場合、状態レベルとセグメンテーション点の調整が行われる。
【0056】
波形セグメンテーションが正しく行われている場合は、波形特徴量を抽出して特徴量にラベルを付けることもできる。すなわち、異常検知モデルを構築するために波形特徴量とその波形のラベルの教師データを生成することができる。この場合、まず、ラベルファイル選択ボタン17tをクリックしてラベルファイルを選択する。次に、特徴量に波形ラベル付けるボタン17rをクリックすると波形特徴量にラベルが付けられて、出力ファイルとして指定したファイルの入力領域17sに書き込まれる。
【0057】
図7のGUI画面17は、調整対象波形データのセグメンテーションが適切か否かをユーザが目視で確認した結果を入力するボタン17u,17vを備えていてもよい。ユーザがボタン17uをクリックすると、調整対象波形データのセグメンテーションは適切であると判断され、その情報が波形データDB7に記憶されてもよい。また、ユーザがボタン17vをクリックすると、調整対象波形データのセグメンテーションは不適切であると判断され、波形調整ボタン17hをクリックした場合と同様に、調整対象波形データのセグメンテーションをやり直してもよい。
【0058】
このように、第1の実施形態では、入力された波形データの状態レベルを推定し、推定した状態レベルに基づいて波形データを複数のセグメンテーション点で区分けする。例えば、隣接する2つのセグメンテーション点の間の部分波形データに必ず特徴量が含まれるように区分けすることで、特徴量の抽出が容易になる。
【0059】
本実施形態によれば、センサの検知データのように、波形形状が複雑に変化する波形データを自動的にセグメンテーション点で区分けすることで、複数の波形データの特徴点同士を容易に比較でき、異常検出等を精度よく高速に行うことができる。
【0060】
また、本実施形態では、いったんセグメンテーション点を設定した後に、状態レベルを推定し直してセグメンテーション点の位置を調整することができ、特徴点の抽出精度を向上できる。
【0061】
さらに、本実施形態では、各波形データのセグメンテーションが終了した後、複数の波形データを含む波形群について、波形データ同士のセグメンテーション点の数や位置を揃えて部分波形データ同士を比較するため、波形群に含まれる各波形データ同士の特徴点が一致するか否かを精度よく判定できる。
【0062】
また、本実施形態では、GUI画面17を設けて、代表波形のセグメンテーションと調整対象波形のセグメンテーションとをユーザが目視で比較できるようにしたため、調整対象波形のセグメンテーションが正しく行われたか否かを目視で確認でき、正しく行われていない場合は、セグメンテーションの調整指示を行うことができる。
【0063】
(第2の実施形態)
第2の実施形態による波形セグメンテーション装置1は、図1と同様のブロック構成を備えているが、第2セグメンテーション調整部15の処理動作が第1の実施形態とは異なっている。
【0064】
部分波形数算出部13は第1の実施形態と同様に部分波形数(例えばn個)を算出する。セグメンテーション決定部14は、セグメンテーション点を決定し、n個の部分波形を持つ波形群を抽出して、抽出した波形群を用いて各部分波形の代表部分波形を生成する。このため、セグメンテーション決定部14は、波形群における二つのセグメンテーション点の間の全ての部分波形の中の最長あるいは最短の部分波形を代表波形として選択できる。あるいは、その最長あるいは最短の部分波形を用いて線形補間あるいはDTW(Dynamic Time Warping)手法にて他の部分波形の長さを調整して、部分波形の各点で平均を取って代表部分波形を生成することができる。さらに、セグメンテーション決定部14は、二つのセグメンテーション点の間の全ての部分波形に対して、DBA(Dynamic Time Warping Barycenter Averaging)手法により代表部分波形を生成してもよい。
【0065】
第2セグメンテーション調整部15は、セグメンテーション決定部14で生成された代表部分波形を用いて、調整対象波形群のセグメンテーション点を調整する。そのため、最初に各調整対象波形の部分波形と代表部分波形との間でパターンマッチングが行われる。具体的には、調整対象波形の部分波形数と代表部分波形数の範囲内で、調整対象波形の一つ以上の部分波形と代表波形の一つ以上の部分波形とのパターンマッチングが行われる。ここで、一つの例を挙げる。
【0066】
調整対象波形の部分波形はSe={Se1,Se2,Se3}であり、代表部分波形はSr={Sr1,Sr2,Sr3,Sr4}であるとする。調整対象部分波形Seの部分波形数は代表部分波形Srより小さいので、調整対象部分波形Seと代表部分波形Srとのマッピングを行う。最初に、代表部分波形Srと比較する部分波形数kmaxを決める。この場合、kmax=4である。したがって、代表部分波形Srの部分波形群は{Sr1}、{Sr2}、{Sr3}、{Sr4}、{Sr1+Sr2}、{Sr2+Sr3}、{Sr3+Sr4}、{Sr1+Sr2+Sr3}、{Sr2+Sr3+Sr4}、{Sr1+Sr2+Sr3+Sr4}となる。
【0067】
まず、調整対象部分波形Se1に対して代表部分波形群の各代表部分波形と比較し、一番似ている代表部分波形が選択される。例えば、調整対象部分波形Se1は、代表部分波形Sr1と非常に似ている場合、調整対象部分波形Se1は代表部分波形Sr1にマッピングされる。
【0068】
次に、調整対象部分波形Se1と代表部分波形Sr1がマッピングしているので、調整対象部分波形Se2に対して代表部分波形Srの代表部分波形群は{Sr2}、{Sr3}、{Sr4}、{Sr2+Sr3}、{Sr3+Sr4}、{Sr2+Sr3+Sr4}となり、一番似ている部分波形が選択される。例えば、調整対象部分波形Se2は{Sr2+Sr3}と似ているとしてマッピングされる。すなわち、調整対象部分波形Se2は、代表部分波形の二つの部分波形{Sr2+Sr3}と似ているとしてマッピングされる。
【0069】
次に、調整対象部分波形Se3に対して代表部分波形Srの代表部分波形群{Sr4}が対応づけられ、調整対象部分波形Se3と代表部分波形Sr4がマッピングされる。
【0070】
上述したように、調整対象部分波形Se2は代表部分波形群{Sr2+Sr3}と似ているので、代表部分波形Sr2とSr3を用いて調整対象部分波形Se2のセグメンテーションが行われる。調整対象部分波形Se2の左側から代表部分波形Sr2、調整対象部分波形Se2の右側から代表部分波形Sr3が順次にマッチングされる。
【0071】
調整対象部分波形Se2の各点において累積類似度が算出される。代表部分波形Sr2との累積類似度が代表部分波形Sr3との累積類似度より大きくなる点の前の点でセグメンテーションが行われる。ここで、一つの例を挙げる。
【0072】
調整対象部分波形Seに10個の点{p1,p2,p3,p4,p5,p6,p7,p8,p9,p10}があるとする。それぞれの点で代表部分波形Sr2との累積類似度は1,1,2,2,3,8,14,15,18,19、代表部分波形Sr3との累積類似度は25,19,15,12,10,4,2,2,1,1であるとする。p6での代表部分波形Sr2との累積類似度=8は、Sr3との累積類似度=4より大きいので、p5でセグメンテーションを行うと決定する。すなわち、マッピングは以下の通りとなる。
【0073】
Se1-->Sr1,Se2(p1~p5)-->Sr2,Se2(p6~p10)-->Sr3,Se3-->Sr4となる。
【0074】
図8A及び図8Bは第2の実施形態による第2セグメンテーション調整部15の処理動作を説明する図である。
【0075】
図8Aは、代表波形111が代表部分波形A~Dに区分けされ、調整対象波形112が部分波形A、Bに区分けされている例を示している。この場合、第2セグメンテーション調整部15は、調整対象波形112の部分波形Aが代表部分波形Aに類似し、調整対象波形112の部分波形B、Dが代表部分波形B、Dにそれぞれ類似し、調整対象波形112には代表部分波形Cが存在しないと判断する。
【0076】
そこで、第2セグメンテーション調整部15は、図8Aの調整対象波形113に示すように、調整対象波形112の部分波形BとDの間に、振幅ゼロの部分波形C’を追加する。この部分波形C’は、代表部分波形Cが存在しない異常データであることを示している。
【0077】
一方、図8Bの場合、調整対象波形113に示すように、代表波形が代表部分波形AとBに区分けされ、調整対象波形が部分波形A~Dに区分けされている例を示している。この場合、波形群114に示すように、第2セグメンテーション調整部15は、調整対象波形の部分波形Bの一部が代表部分波形BとDに類似していると判断し、代表部分波形B~Dを統合して代表部分波形Bとする。
【0078】
このように、第2の実施形態では、代表波形と部分波形数が異なる調整対象波形については、代表波形に含まれる各代表部分波形と、調整対象波形に含まれる各部分波形とをマッチングさせて類似度を算出し、類似度の累積結果に基づいて、調整対象波形のセグメンテーションを調整する。これにより、代表波形に含まれる特徴量が調整対象波形にも含まれるか否かを精度よく検出できる。したがって、調整対象波形が複雑に変動している場合であっても、調整対象波形の特徴量を正確かつ迅速に抽出できる。
【0079】
(第3の実施形態)
図9は第3の実施形態による波形セグメンテーション装置1の概略構成を示すブロック図である。図9の波形セグメンテーション装置1は、図1の構成に加えて、特徴量抽出部21と、モデル生成部22と、第3セグメンテーション調整部23とを備えている。
【0080】
特徴量抽出部21は、入力された波形データの特徴量を抽出する。モデル生成部22は、特徴量抽出部21で抽出された特徴量に基づいて、入力された波形データが異常である可能性を数値化した値を出力する異常検知モデルを生成する。本明細書では、異常検知モデルの出力値を分類精度とも呼ぶ。生成する異常検知モデルの具体的な種類は問わないが、例えば、機械学習の分類器であるSVM(Support Vector Machine)、Logistic Regression、k近傍法などのモデルが例示される。
【0081】
第3セグメンテーション調整部23は、入力された波形データを区分けする複数のセグメンテーション点の位置を複数通りに変更させた場合に、それぞれの異常検知モデルの出力値に基づいて複数のセグメンテーションの位置を調整する。
【0082】
図10は複数の波形データw11~w15を有する波形群115が入力された例を示している。特徴量抽出部21は、波形群115の特徴量を抽出して、例えば図10のようなリスト116を生成する。このリスト116には、例えば、各波形データに含まれる各部分波形ごとに、部分波形の長さ、振幅、アンダーシュートの大きさ等の情報が含まれている。
【0083】
モデル生成部22が異常検知モデルを生成した後(符号117)、第3セグメンテーション調整部23は、各波形データのセグメンテーション位置、すなわち状態変化点を10%から100%まで、10%単位でずらした場合の異常検知モデルの出力を取得する、すなわち分類精度を算出する(符号118)。第3セグメンテーション調整部23は、異常検知モデルの出力(分類精度)が最も大きい場合、すなわち、異常検知モデルが最も正常である可能性が高いと判断した場合のセグメンテーション位置に基づいて、セグメンテーション点を調整する。
【0084】
図11は、セグメンテーション点を10%単位でずらした場合の異常検知モデルの出力値の一例を示す図である。図11の例では、セグメンテーション点を50%ずらした場合に異常検知モデルの出力値が最大になっている。よって、第3セグメンテーション調整部23は、セグメンテーション点を50%ずらす調整を行う。
【0085】
なお、二つの状態変化点の間に多数の細かい状態変化がある場合、遺伝的アルゴリズム等の組合せ最適手法を用いて最良のセグメンテーション点を選択してもよい。
【0086】
このように、第3の実施形態では、波形データのセグメンテーション点の位置をずらしながら異常検知モデルの出力値を確認し、異常検知モデルで最も正常に近いと判断されたセグメンテーション位置を最終的に選択するため、簡易な処理手順でセグメンテーション位置の最適化を行うことができる。
【0087】
上述した第1~第3の実施形態による波形セグメンテーション装置1の少なくとも一部の構成部分をチップ化してもよい。また、例えばエッジデバイスなどのSoC(System on Chip)の内部に、第1~第3の実施形態による波形セグメンテーション装置1の少なくとも一部の構成部分を組み込んでもよい。この場合、波形データDB7やセグメンテーション記憶部16はSoCの外部に設けて、所定のインタフェース機器を介してアクセスできるようにしてもよい。エッジデバイスは、複数のネットワーク間で通信を行うため、各種のセンサから出力された波形データの特徴量を迅速かつ正確に抽出して、抽出した特徴量を複数のネットワーク間で共有することが容易に行えるようになる。
【0088】
上述した実施形態で説明した波形セグメンテーション装置1の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、波形セグメンテーション装置1の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやCD-ROM等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
【0089】
また、波形セグメンテーション装置1の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線(無線通信も含む)を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【0090】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0091】
1 波形セグメンテーション装置、2 状態レベル推定部、3 セグメンテーション同定部、4 特徴量登録部、5 波形データ変換部、6 状態変化点検出部、7 波形データDB、8 グルーピング部、9 第1セグメンテーション調整部、10 セグメンテーション評価部、11 単一波形セグメンテーション部、12 波形群セグメンテーション部、13 部分波形数算出部、14 セグメンテーション決定部、15 第2セグメンテーション調整部、16 セグメンテーション記憶部、17 GUI画面、18 表示部、19 表示制御部、21 特徴量抽出部、22 モデル生成部、23 第3セグメンテーション調整部
図1
図2
図3
図4
図5
図6
図7
図8A
図8B
図9
図10
図11