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

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

▶ 株式会社日立製作所の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-08
(45)【発行日】2023-12-18
(54)【発明の名称】異常度算出システムおよび方法
(51)【国際特許分類】
   G05B 23/02 20060101AFI20231211BHJP
   G06N 3/04 20230101ALI20231211BHJP
【FI】
G05B23/02 302R
G06N3/04
【請求項の数】 16
(21)【出願番号】P 2020102909
(22)【出願日】2020-06-15
(65)【公開番号】P2021196865
(43)【公開日】2021-12-27
【審査請求日】2023-03-06
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000279
【氏名又は名称】弁理士法人ウィルフォート国際特許事務所
(72)【発明者】
【氏名】川口 洋平
【審査官】今井 貞雄
(56)【参考文献】
【文献】国際公開第2020/031570(WO,A1)
【文献】米国特許出願公開第2019/0228312(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 23/02
G06N 3/04
(57)【特許請求の範囲】
【請求項1】
対象装置の異常度を算出する異常度算出システムであって、
前記対象装置の振動に由来する入力信号から特徴量ベクトルを生成して出力する特徴量ベクトル抽出部と、
前記特徴量ベクトルと前記対象装置の種類を表す装置種類ベクトルとの組を入力として符号ベクトルを出力するニューラルネットワークである符号化部と、
前記符号ベクトルと前記装置種類ベクトルを入力として復号ベクトルを出力するニューラルネットワークである復号化部と、
前記特徴量ベクトル抽出部からの前記特徴量ベクトルと前記符号化部からの前記符号ベクトルと前記復号化部からの前記復号ベクトルとの関数として定義される所定の損失関数を最小化するように、前記符号化部のニューラルネットワークのパラメタと前記復号化部のニューラルネットワークのパラメタとを学習する学習部と、
前記特徴量ベクトル抽出部からの前記特徴量ベクトルと前記符号化部からの前記符号ベクトルと前記復号化部からの前記復号ベクトルとの関数として定義される異常度を算出する異常度算出部とを備える
異常度算出システム。
【請求項2】
前記特徴量ベクトル抽出部は、前記入力信号の特徴量ベクトルのうち所定の中間領域の中間特徴量ベクトルを除外した欠損後特徴量ベクトルを特徴量ベクトルとして前記符号化部へ出力し、前記除外された中間特徴量ベクトルを特徴量ベクトルとして出力するものであり、
前記符号化部は、前記欠損後特徴量ベクトルと前記種類ベクトルとの組を入力として、前記除外された中間特徴量ベクトルを復元可能な符号ベクトルを出力し、
前記復号化部は、前記符号化部からの符号ベクトルと前記装置種類ベクトルを入力として、復元された中間特徴量ベクトルを復号ベクトルとして出力する、
請求項1に記載の異常度算出システム。
【請求項3】
前記所定の中間領域とは、前記入力信号の特徴量ベクトルの時間軸上の中央を中心とする前後所定時間の領域、前記入力信号の特徴量ベクトルの全体の時間長さのうち中央を中心とする前後所定割合の領域、または、前記対象装置の状態が変化する場合の状態変化直前の信号または状態変化直後の信号のいずれか一つを含む領域、のいずれか一つである、
請求項2に記載の異常度算出システム。
【請求項4】
前記装置種類ベクトルは、前記対象装置の型式を示す装置型式ベクトルを含む、
請求項1に記載の異常度算出システム。
【請求項5】
前記装置種類ベクトルは、前記装置型式ベクトルと、前記対象装置の属するカテゴリを示す装置カテゴリベクトルとを含む、
請求項4に記載の異常度算出システム。
【請求項6】
前記装置型式ベクトルと前記装置カテゴリベクトルとは、ベクトルを構成する全要素のうち一つの要素だけが「1」に設定され、それ以外の要素は「0」に設定されるOne Hotベクトルとして表現されている、
請求項5に記載の異常度算出システム。
【請求項7】
前記学習部は、前記符号化部のニューラルネットワークのパラメタと前記復号化部のニューラルネットワークのパラメタとを学習する反復処理の中で、前記装置型式ベクトルのうち「0」に設定された要素を所定の確率にしたがって「1」に設定すると共に、前記装置型式ベクトルのうち「1」に設定された要素を他の所定の確率にしたがって「0」に設定する、
請求項6に記載の異常度算出システム。
【請求項8】
前記装置型式ベクトルは、既存の装置型式に対応する既存型式対応部と、追加可能な未知の装置型式に対応する未知型式対応部とを備える、
請求項4に記載の異常度算出システム。
【請求項9】
既存型式の装置の正常音の特徴量ベクトルを擬似的に生成する疑似正常音特徴量ベクトル生成部をさらに備え、
前記学習部は、前記疑似正常音特徴量ベクトル生成部により生成された疑似正常音特徴量ベクトルと、前記未知型式の装置の特徴量ベクトルとを用いることにより、前記符号化部のニューラルネットワークのパラメタと前記復号化部のニューラルネットワークのパラメタとをファインチューニングする、
請求項8に記載の異常度算出システム。
【請求項10】
前記疑似正常音特徴量ベクトル生成部は、既存型式の装置の特徴量ベクトルによって学習済の復号化部に対して、所定の分布にしたがって確率的に発生させた符号ベクトルと、前記既存型式対応部の全要素のうち、前記確率的に発生させた符号ベクトルに対応する一つの要素に「1」が設定された装置型式ベクトルとを与えることにより、前記疑似正常音特徴量ベクトルを生成する、
請求項9に記載の異常度算出システム。
【請求項11】
対象装置の異常度を計算機により算出する異常度算出方法であって、
特徴量ベクトル抽出部により、前記対象装置の振動に由来する入力信号から特徴量ベクトルを生成して出力させ、
ニューラルネットワークである符号化部により、前記特徴量ベクトルと前記対象装置の種類を表す装置種類ベクトルとの組を入力として符号ベクトルを出力させ、
ニューラルネットワークである復号化部により、前記符号ベクトルと前記装置種類ベクトルを入力として復号ベクトルを出力させ、
前記特徴量ベクトルと前記符号ベクトルと前記復号ベクトルとの関数として定義される所定の損失関数を最小化するように、前記符号化部のニューラルネットワークのパラメタと前記復号化部のニューラルネットワークのパラメタとを学習部により学習させ、
前記特徴量ベクトルと前記符号ベクトルと前記復号ベクトルとの関数として定義される異常度を算出させる、
異常度算出方法。
【請求項12】
前記特徴量ベクトル抽出部は、前記入力信号の特徴量ベクトルのうち所定の中間領域の中間特徴量ベクトルを除外した欠損後特徴量ベクトルを特徴量ベクトルとして前記符号化部へ出力し、前記除外された中間特徴量ベクトルを特徴量ベクトルとして出力するものであり、
前記符号化部は、前記欠損後特徴量ベクトルと前記種類ベクトルとの組を入力として、前記除外された中間特徴量ベクトルを復元可能な符号ベクトルを出力し、
前記復号化部は、前記符号化部からの符号ベクトルと前記装置種類ベクトルを入力として、復元された中間特徴量ベクトルを復号ベクトルとして出力する、
請求項11に記載の異常度算出方法。
【請求項13】
前記装置種類ベクトルは、前記対象装置の型式を示す装置型式ベクトルを含む、
請求項11に記載の異常度算出方法。
【請求項14】
前記装置種類ベクトルは、前記装置型式ベクトルと、前記対象装置の属するカテゴリを示す装置カテゴリベクトルとを含む、
請求項13に記載の異常度算出方法。
【請求項15】
前記装置型式ベクトルは、既存の装置型式に対応する既存型式対応部と、追加可能な未知の装置型式に対応する未知型式対応部とを備える、
請求項14に記載の異常度算出方法。
【請求項16】
前記装置型式ベクトルと前記装置カテゴリベクトルとは、それぞれ装置型式を入力とするハッシュ関数が生成する固定長ビット系列と装置カテゴリを入力とするハッシュ関数が生成する固定長ビット系列とで表現されている、
請求項5に記載の異常度算出システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、異常度算出システムおよび方法に関する。
【背景技術】
【0002】
一般に、設備の異常または故障予兆などの状態は、設備の発する音として現れることが多いため、設備の稼動音に基づく異常音検知は重要である。異常音検知は、異常度算出システムによって音から算出される異常度が閾値を超えたかどうかに基づいて行う。しかし、複数の機械型式について高精度に異常度を算出するためには、機械型式ごとに膨大な学習データが必要である。したがって、複数の機械型式について高精度に異常度を算出することができ、かつ、機械型式あたりに必要な学習データのサンプル数が少なくてすむ異常度算出が求められる。
【0003】
特許文献1には、「異常の検知対象となるコンテンツ変数と、前記コンテンツ変数が得られた条件を示すコンテキスト変数とを含む基準データと、前記コンテンツ変数と前記コンテキスト変数とを含む判定対象データに含まれる前記コンテキスト変数の値に基づき、前記判定対象データの異常検知を行うときに使用するコンテキスト変数を前記コンテキスト変数から選択する、変数選択部を備えた」技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2019-121162号公報
【文献】特開2018-95429公報
【文献】特開2020-73366公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1で開示された発明の実施例の一つは、「コンテキスト変数」と呼ばれる稼動条件の組と、「コンテンツ変数」と呼ばれる異常検知対象のセンサデータの組とを入力し、異常検知を行う。特許文献1に記載はないが、もしも特許文献1において、稼動音に対して算出される特徴量の時系列を「コンテンツ変数」として入力できるとするならば、設備の異常音を検知することもできるかもしれない。ただし、この記載は、特許文献1を設備の異常な稼働音(異常音)の検知に適用できると述べているわけではなく、単なる仮定にすぎないことに留意すべきである。
【0006】
しかし、上述の仮定がもしも成り立つとしても、複数の機械型式について高精度な異常度算出であって、かつ、必要な学習データの機械型式あたりのサンプル数が少ない異常度算出は実現できない。なぜならば、複数の機械型式にわたる正常音は多様であり、複雑に分布しているので、その正常音の分布を学習するためには機械型式あたり大量のサンプルの学習データが必要だからである。
【0007】
また、もしも、特許文献1において、「コンテキスト変数」として機械の型式を入力できたとしても、複数の機械型式にわたって高精度な異常度算出であって、かつ、必要な学習データの機械型式あたりのサンプル数が少ない異常度算出は実現できない。なぜならば、この方法は、機械の型式ごとに、コンテキスト変数の軸の異なる位置に独立した別の分布を割り当てて正常音をモデル化するものだからである。音 (「コンテンツ変数」) だけでは正常と異常が分けられないサンプルに、機械の型式という軸 (「コンテキスト変数」) を新たに追加することはできるが、機械の型式の数だけ独立した別のモデルを用意することと等価となり、大量のサンプルの学習データが必要となる。
【0008】
特許文献2と特許文献3も、条件毎に独立した別のモデルを用意する技術であるため、特許文献1について述べたと同様に、複数の機械型式にわたって高精度な異常度算出であって、かつ、必要な学習データの機械型式あたりのサンプル数が少ない異常度算出は実現できない。
【0009】
本発明は、上記問題に鑑みてなされたもので、その目的は、複数種類の対象装置について、対象装置の振動に由来する信号に基づいて異常度を算出できるようにした異常度算出システムおよび方法を提供することにある。
【課題を解決するための手段】
【0010】
上記課題を解決すべく、本発明の一つの観点に従う異常度算出システムは、対象装置の異常度を算出する異常度算出システムであり、対象装置の振動に由来する入力信号から特徴量ベクトルを生成して出力する特徴量ベクトル抽出部と、特徴量ベクトルと対象装置の種類を表す装置種類ベクトルとの組を入力として符号ベクトルを出力するニューラルネットワークである符号化部と、符号ベクトルと装置種類ベクトルを入力として復号ベクトルを出力するニューラルネットワークである復号化部と、特徴量ベクトル抽出部からの特徴量ベクトルと符号化部からの符号ベクトルと復号化部からの復号ベクトルとの関数として定義される所定の損失関数を最小化するように、符号化部のニューラルネットワークのパラメタと復号化部のニューラルネットワークのパラメタとを学習する学習部と、特徴量ベクトル抽出部からの特徴量ベクトルと符号化部からの符号ベクトルと復号化部からの復号ベクトルとの関数として定義される異常度を算出する異常度算出部とを備える。
【発明の効果】
【0011】
本発明によれば、複数種類の対象装置について、その振動に由来する信号から異常度を算出することができる。
【図面の簡単な説明】
【0012】
図1】本実施例の全体概要を示す説明図。
図2】異常度算出システムのブロック構成図。
図3】特徴量ベクトル、符号ベクトル、復号ベクトルなどの関係を示す説明図。
図4】異常度算出装置のハードウェアおよびソフトウェア構成図。
図5】学習サブシステムのブロック構成図。
図6】学習サブシステムの処理フロー。
図7】ニューラルネットワークへ入力されるベクトルの作成方法を示す説明図。
図8】異常度算出サブシステムのブロック構成図。
図9】異常度算出サブシステムの処理フロー。
図10】第2実施例に係り、特徴量ベクトルの生成方法を示す説明図。
図11】学習サブシステムのブロック構成図。
図12】学習サブシステムの処理フロー。
図13】異常度算出サブシステムのブロック構成図。
図14】異常度算出サブシステムの処理フロー。
図15】第3実施例に係り、特徴量ベクトル、符号ベクトル、復号ベクトルなどの関係を示す説明図。
図16】装置型式ベクトルと装置カテゴリベクトルの関係を示す説明図。
図17】学習サブシステムのブロック構成図。
図18】学習サブシステムの処理フロー。
図19】異常度算出サブシステムのブロック構成図。
図20】異常度算出サブシステムの処理フロー。
図21】学習サブシステムの精度をさらに高める変形例の説明図。
図22】第4実施例に係り、異常度算出システムのブロック構成図。
図23】特徴量ベクトル、符号ベクトル、復号ベクトルなどの関係を示す説明図。
図24】ニューラルネットワークへ入力されるベクトルの作成方法を示す説明図。
図25】第5実施例に係り、異常度算出システムのブロック構成図。
図26】特徴量ベクトル、符号ベクトル、復号ベクトルなどの関係を示す説明図。
図27】学習サブシステムのブロック構成図。
図28図27内の機能の詳細を示すブロック図。
図29】学習サブシステムの処理フロー。
【発明を実施するための形態】
【0013】
以下、図面に基づいて、本発明の実施の形態を説明する。本実施形態に係る異常度算出システムは、例えば、対象装置の振動に由来する信号D0を入力として特徴量ベクトルD1を出力する特徴量ベクトル抽出部11と、特徴量ベクトルD1と対象装置3の型式を表す装置型式ベクトルD4との組を入力として符号ベクトルD2を出力するニューラルネットワークである符号化部12と、符号ベクトルD2と対象装置3の型式を表す装置型式ベクトルD4を入力として復号ベクトルD3を出力するニューラルネットワークである復号化部13と、特徴量ベクトルD1、符号ベクトルD2、復号ベクトルD3の関数で定義される損失関数を最小化するように符号化部12のニューラルネットワークのパラメタと復号化部13のニューラルネットワークのパラメタとを更新させる学習部15と、特徴量ベクトルD1、符号ベクトルD2、復号ベクトルD3の関数である異常度を算出する異常度算出部16を備える。以下では、異常度の算出対象である装置3を装置3と略記する場合がある。学習部15は、例えば、ニューラルネットワークパラメタ更新部と呼ぶこともできる。
【0014】
本実施形態によれば、装置型式ベクトルD4が符号化部12と復号部13の両方に入力されるので、装置型式ベクトルD4の情報が符号ベクトルD2に残っていない場合でも、復号ベクトルD3を精度よく予測できる。
【0015】
したがって、学習部15が学習処理を反復するに従って、符号ベクトルD2の圧縮効率が次第に向上し、符号ベクトルD2から装置型式ベクトルD4の情報が消滅し、その結果、符号ベクトルD2が装置3の型式に依らない共通の分布となるように、符号化部12のパラメタと復号化部13のパラメタが学習される。
【0016】
本実施形態では、符号ベクトルD2が装置3の型式に依らず共通の分布となる。このため、本実施形態では、装置型式間で共通する音の特徴を表現するために、ニューラルネットワーク内の写像もできる限り共有されるので、学習処理で探索が必要なパラメタ空間のサイズを小さくすることができる。これにより、本実施形態によれば、学習処理の最適化が進みやすくなる。
【0017】
本実施形態では、装置3の発する振動に由来する信号に基づいて、装置3の異常度を算出し、算出された異常度から装置3に異常が生じているかを判定することができる。振動に由来する信号には、振動の信号と音の信号とが含まれる。本実施例で使用するセンサ端末2をマイクロフォンから加速度センサまたは変位センサに代えることにより、本実施例の異常度算出システム1は振動の信号から異常度を算出できる。
【0018】
対象装置3は、例えば、バルブ、摺動装置、ロボット、ポンプ、送風機、シリンダ、コンベア、原動機、トランスミッションなどである。装置3は、機械、工場設備または家庭電気製品などである。本実施形態では、突発的に正常音が変化しうる装置3についても、その異常度を算出できる。
【実施例1】
【0019】
図1図9を用いて第1実施例を説明する。図1は、本実施例の全体概要を示す説明図である。異常度算出システム1の構成の詳細は後述する。ここでは先に全体構成を簡単に説明する。
【0020】
異常度算出システム1は、例えば、複数種類の対象装置3の発する音の信号D0をセンサ端末2により検出し、特徴量ベクトル抽出部11へ入力する。特徴量ベクトル抽出部11は、入力された信号D0から特徴量ベクトルD1を抽出して出力する。
【0021】
符号化部12は、特徴量ベクトル抽出部11から入力された特徴量ベクトルD1と装置型式ベクトル生成部4から入力された装置型式ベクトルD4とに基づいて、符号化ベクトルD2を生成する。符号化ベクトルD2は、一例として「潜在表現ベクトル」と呼ぶこともできる。
【0022】
装置型式ベクトルD4とは、対象装置3の種類を識別する装置種類ベクトルの一種であり、装置3の型式から生成されるOne-Hotベクトルである。One-Hotベクトルとは、ベクトルの全要素のうち所定の一つの要素のみが「1」となっており、他の要素が「0」となっているベクトル表記法である(図7参照)。後述する他の実施例で明らかとなるように、装置種類ベクトルは、装置型式ベクトルD4のほかに、装置カテゴリベクトルD7を含むこともできる。装置カテゴリとは、同一種類の装置に属する型式を含む上位概念であり、装置3の分類である。
【0023】
装置型式ベクトルD4にOne-Hotベクトルを用いることで、型式の順序関係に伴う精度低下を防ぐ効果がある。たとえば、型式の順序関係が単に型式を登録した順序である場合、型式1と型式2とは番号が隣り合っており、型式1と型式7とは番号が離れているが、型式7の音よりも型式2の音の方が型式1の音と類似しているとは限らない。しかし、装置型式ベクトルD4にOne-Hotベクトルではなく順序関係に依存したベクトルを使用すると、型式7よりも型式2の方が型式1と類似するというバイアスがかかった処理がなされる可能性が高く、学習処理の最適化が難しくなる。それに対し、One-Hotベクトルを使用することで、互いの型式の間のベクトルの距離が等しくなるため、型式を順序関係によらず平等に扱うことができる。
【0024】
同様に、装置カテゴリベクトルD7にOne-Hotベクトルを用いることで、装置カテゴリの順序関係に伴う精度低下を防ぐ効果がある。たとえば、装置カテゴリの順序関係が単に装置カテゴリを登録した順序である場合、装置カテゴリ1と装置カテゴリ2とは番号が隣り合っており、装置カテゴリ1と装置カテゴリ7とは番号が離れているが、装置カテゴリ7の音よりも装置カテゴリ2の音の方が装置カテゴリ1の音と類似しているとは限らない。しかし、装置カテゴリベクトルD7にOne-Hotベクトルではなく順序関係に依存したベクトルを使用すると、装置カテゴリ7よりも装置カテゴリ2の方が装置カテゴリ1と類似するというバイアスがかかった処理がなされる可能性が高く、学習処理の最適化が難しくなる。それに対し、One-Hotベクトルを使用することで、互いの装置カテゴリの間のベクトルの距離が等しくなるため、装置カテゴリを順序関係によらず平等に扱うことができる。
【0025】
装置型式ベクトルD4は、One-Hotベクトルではない各要素が0か1をとるバイナリのベクトルであってよい。このとき、0と1の順列が装置3の各型式と対応する。たとえば、装置型式ベクトルD4の次元数を3とし、1番目の型式に対応する装置型式ベクトルD4を(0、0、1)、2番目の型式に対応する装置型式ベクトルD4を(0、1、0)、3番目の型式に対応する装置型式ベクトルD4を(0、1、1)、4番目の型式に対応する装置型式ベクトルD4を(1、0、0)、5番目の型式に対応する装置型式ベクトルD4を(1、0、1)、6番目の型式に対応する装置型式ベクトルD4を(1、1、0)、7番目の型式に対応する装置型式ベクトルD4を(1、1、1)、とする。符号化部の入力層で装置型式ベクトルD4の入力を受け付ける素子の個数と復号化部の入力層で装置型式ベクトルD4の入力を受け付ける素子の個数がOne-Hotベクトルの場合の対数オーダで抑えられるため、装置型式の個数が非常に多い場合には、ニューラルネットワークのパラメタの個数とともに、実行に必要なメモリ量を削減する効果がある。また、装置型式の名称や番号などを入力とする適当なハッシュ関数が生成する固定長ビット系列を装置型式ベクトルD4としてもよい。ハッシュ関数は剰余ハッシュなどの公知のハッシュ関数でよい。この場合、型式の順序関係に伴う精度低下を軽減することができる。
【0026】
装置型式ベクトルD4と同様に、装置カテゴリベクトルD7も、One-Hotベクトルではない各要素が0か1をとるバイナリのベクトルであってよい。このとき、0と1の順列が装置3の各装置カテゴリと対応する。たとえば、装置カテゴリベクトルD7の次元数を3とし、1番目の装置カテゴリに対応する装置カテゴリベクトルD7を(0、0、1)、2番目の装置カテゴリに対応する装置カテゴリベクトルD7を(0、1、0)、3番目の装置カテゴリに対応する装置カテゴリベクトルD7を(0、1、1)、4番目の装置カテゴリに対応する装置カテゴリベクトルD7を(1、0、0)、5番目の装置カテゴリに対応する装置カテゴリベクトルD7を(1、0、1)、6番目の装置カテゴリに対応する装置カテゴリベクトルD7を(1、1、0)、7番目の装置カテゴリに対応する装置カテゴリベクトルD7を(1、1、1)、とする。符号化部の入力層で装置カテゴリベクトルD7の入力を受け付ける素子の個数と復号化部の入力層で装置カテゴリベクトルD7の入力を受け付ける素子の個数がOne-Hotベクトルの場合の対数オーダで抑えられるため、装置カテゴリの個数が非常に多い場合には、ニューラルネットワークのパラメタの個数とともに、実行に必要なメモリ量を削減する効果がある。また、装置カテゴリの名称や番号などを入力とする適当なハッシュ関数が生成する固定長ビット系列を装置カテゴリベクトルD7としてもよい。ハッシュ関数は剰余ハッシュなどの公知のハッシュ関数でよい。この場合、装置カテゴリの順序関係に伴う精度低下を軽減することができる。
【0027】
復号化部13は、符号化部12から出力された符号ベクトルD2と装置型式ベクトル生成部14の生成した装置型式ベクトルD4とに基づいて、復号ベクトルD3を生成して出力する。
【0028】
異常度算出部16は、特徴量ベクトルD1と符号ベクトルD2と復号ベクトルD3とから、装置3の異常度を算出する。算出された異常度は、例えば、異常検出システム、診断システム、生産管理システムなどの他のシステムへ提供することもできる。
【0029】
学習部15は、特徴量ベクトル抽出部11からの特徴量ベクトルD1と符号化部12からの符号ベクトルD2と復号化部13からの復号ベクトルD3との関数として定義される所定の損失関数を最小化するように、符号化部12のニューラルネットワークのパラメタD5Eと復号化部13のニューラルネットワークのパラメタD5Dとを学習する。
【0030】
図2は、異常度算出システム1の全体を示すブロック構成図である。異常度算出システム1は、学習サブシステムLSSと異常度算出サブシステムDSSとに大別することができる。学習サブシステムLSSは、符号化部12のニューラルネットワークのパラメタD5Eと復号化部13のニューラルネットワークのパラメタD5Dとを学習し(S1)、学習用データベースDB2へ記憶させる。異常度算出サブシステムDSSは、学習用データベースDB2から読み出したパラメタを用いて、異常度を算出する(S2)。
【0031】
図3は、特徴量ベクトルD1、符号ベクトルD2、復号ベクトルD3の関係を示す説明図である。
【0032】
図7に示すように、特徴量ベクトル抽出部11からの特徴量ベクトルD1と装置型式ベクトル生成部14からの装置型式ベクトルD4とは連結されて一つのベクトルとなり、符号化部12へ入力される。
【0033】
図3に戻る。符号化部12により生成された符号ベクトルD2は、復号化部13へ入力される。そして、復号化部13には、符号化部12と同様、装置型式ベクトルD4も入力される。復号化部13は、復号ベクトルD3を生成して出力する。
【0034】
図4は、異常度算出装置100のハードウェアおよびソフトウェア構成図である。計算機に所定のコンピュータプログラムを実行させることにより、その計算機を異常度算出装置100として用いることができる。図4では、一つの計算機から異常度算出装置100を構成する例を示すが、これに代えて、複数の計算機から一つまたは複数の異常度算出装置100を形成してもよい。計算機は仮想的な計算機でもよい。
【0035】
異常度算出装置100は、一つまたは複数のセンサ端末2と通信ネットワークCNを介して接続されている。
【0036】
センサ端末2は、例えば、可搬型の録音端末として構成される。センサ端末2と異常度算出装置1とを一体化してもよい。例えば、録音機能を有する異常度算出装置1を可搬型の装置として構成してもよい。この場合は、センサ端末2が不要となる。
【0037】
異常度算出装置100は、例えば、演算部1001と、主記憶装置1002と、補助記憶装置1003と、入力部1004と、出力部1005と、通信部1006とを備える計算機である。
【0038】
演算部1001は、一つまたは複数のマイクロプロセッサを含んでおり、補助記憶装置1003に記憶された所定のコンピュータプログラムを主記憶装置1002に読み出して実行することにより、図1で述べたような特徴量ベクトル抽出部11、符号化部12、復号化部13、装置型式ベクトル生成部14、学習部15および異常度算出部16といった機能を実現する。
【0039】
入力部1004は、例えば、キーボード、タッチパネル、ポインティングデバイスなどを含むことができ、異常度算出装置100を使用するユーザからの入力を受け付ける。出力部1005は、例えば、モニタディスプレイ、スピーカー、プリンタなどを含むことができ、ユーザへ情報を提供する。
【0040】
通信部1006は、通信ネットワークCNを介して、センサ端末2と通信する。通信部1006は、図示せぬ他のコンピュータと通信することもできる。
【0041】
記憶媒体MMは、例えば、フラッシュメモリまたはハードディスク等の記憶媒体であり、異常度算出装置100へコンピュータプログラムまたはデータを転送して記憶させたり、異常度算出装置100からコンピュータプログラムまたはデータを読み出して記憶したりする。記憶媒体MMは、異常度算出装置100に直接的に接続されてもよいし、通信ネットワークCNを介して異常度算出装置100に接続されてもよい。
【0042】
センサ端末2の構成を説明する。センサ端末2は、例えば、センサ部21と、制御部22と、記憶部23と、通信部24とを備える。
【0043】
センサ部21は、対象装置3の音を検出するマイクロフォンである。したがって、以下では、センサ部21をマイクロフォン21と呼ぶ場合がある。センサ部21により検出された音のデータは記憶部23に記憶される。センサ端末2を制御する制御部22は、記憶部23に記憶された音データを異常度算出装置100へ向けて送信する。
【0044】
なお、センサ部21をマイクロフォンから加速度センサなどに変更することにより、センサ端末2は対象装置3の振動を検出することができる。そして、異常度算出装置100は、対象装置3の振動に基づいて異常度を算出することができる。
【0045】
図5は、学習サブシステムLSSのブロック構成図である。図6は、学習サブシステムLSSの処理フローである。図5および図6を参照して説明する。変分オートエンコーダ (Variational auto-encoder:VAE) 型の構成については、後述する。
【0046】
まず最初に特徴量ベクトル抽出部11の構成を説明する。入力音取得部101は、マイクロフォン21から入力されたアナログ入力信号をA/D(アナログ/デジタル)変換器によってデジタル入力信号に変換し(S101)、訓練用デジタル入力信号データベースDB1へ格納する(S102)。
【0047】
フレーム分割部102は、訓練用デジタル入力信号データベースDB1から取り出したデジタル入力信号に対して、規定した時間ポイント数 (以下、フレームサイズ) 毎にデジタル入力信号を分割し、フレーム信号を出力する(S104)。フレーム間はオーバーラップしてもよい。
【0048】
窓関数乗算部103は、入力されたフレーム信号っsに窓関数を乗算することにより、窓関数乗算信号を出力する(S105)。窓関数には、例えばハニング窓を用いる。
【0049】
周波数領域信号計算部104は、入力された窓関数乗算後信号に短時間フーリエ変換を施することにより、周波数領域信号を出力する(S106)。周波数領域信号は、フレームサイズがNであれば、(N/2+1)=M個の周波数ビンそれぞれに1個の複素数が対応する、M個の複素数の組である。周波数領域信号計算部104は、短時間フーリエ変換の代わりに、constant Q変換(CQT)などの周波数変換手法を用いることもできる。
【0050】
パワースペクトログラム計算部105は、入力された周波数領域信号に基づいて、そのパワースペクトログラムを出力する(S107)。フィルタバンク乗算部106は、入力されたパワースペクトログラムにメルフィルタバンクを乗算することにより、メルパワースペクトログラムを出力する(S108)。フィルタバンク乗算部106は、メルフィルタバンクの代わりに、1/3オクターブバンドフィルタなどのフィルタバンクを用いてもよい。
【0051】
瞬時特徴量計算部107は、入力されたメルパワースペクトログラムに対数を施すことにより、対数メルパワースペクトログラムを出力する(S109)。なお、対数メルパワースペクトログラムの代わりに、メル周波数ケプストラム係数(MFCC)を計算してもよい。その場合、フィルタバンク乗算部106と対数計算部107の代わりに、パワースペクトログラムの対数値を計算し、フィルタバンクを乗算し、離散コサイン変換を施し、MFCCを出力する。
【0052】
特徴量時系列算出部108は、入力された対数メルパワースペクトログラムに対して、あるいは、MFCCに対して、隣接するLフレームを連結させて特徴量ベクトルD1を出力する(S110)。対数メルパワースペクトログラム、あるいは、MFCCの代わりに、それらの時間差分あるいは時間微分の時系列(デルタ)を入力し、隣接するLフレームを連結させて特徴量ベクトルD1を出力してもよい。
【0053】
時間差分あるいは時間微分の時系列の時間差分あるいは時間微分の時系列(デルタデルタ)を入力することにより、隣接するLフレームを連結させて特徴量ベクトルD1を出力してもよい。さらに、これらのいずれかの組み合わせを選んで特徴量軸方向に連結したものに対して、隣接するLフレームを連結させて特徴量ベクトルD1を出力してもよい。特徴量ベクトル抽出部11の生成する特徴量ベクトルD1は、符号化部12と学習部15とに入力される。
【0054】
本実施例では、装置型式ベクトル生成部14により、装置型式ベクトルD4が生成され、符号化部12と復号化部13へ入力される(S111)。
【0055】
符号化部12は、特徴量ベクトルD1と装置型式ベクトル生成部14からの装置型式ベクトルD4とに基づいて符号ベクトルD2を生成する。生成された符号ベクトルD2は、復号化部13へ入力される。
【0056】
復号化部13は、符号ベクトルD2と装置型式ベクトルD4とに基づいて復号ベクトルD3を生成する。
【0057】
学習部15は、特徴量ベクトルD1と符号ベクトルD2と復号ベクトルD3の関数として定義される所定の損失関数の値が最小となるように、符号化部12のニューラルネットワークのパラメタD5Eと復号化部13のニューラルネットワークのパラメタD5Dとを繰り返し学習させる(S112~S115)。それらパラメタD5E,D5Dは、学習用データベースDB2へ記憶される(S116)。
【0058】
すなわち、学習部15は、収束条件を満たすか、または本処理の反復回数C1が上限値ThCを超えたかを判定する(S112)。
【0059】
収束条件を満たさない場合、または反復回数C1が上限値ThC以下の場合、学習部15は、ニューラルネットワークのパラメタD5E,D5Dを更新し(S113)、収束条件を計算し(S114)、反復回数C1を1つインクリメントさせてステップS112へ戻る。
【0060】
学習部15は、ニューラルネットワークのパラメタD5E,D5Dを学習用データベースDB2へ保存させる(S116)。
【0061】
図8は、異常度算出サブシステムDSSのブロック構成図である。図9は、異常度算出サブシステムDSSの処理フローである。図8および図9を参照して説明する。
【0062】
異常度算出サブシステムDSSは、学習部15の代わりに異常度算出部16を有しており、訓練用データベースDB1を使用しない。
【0063】
入力信号D0から抽出された特徴量ベクトルD1の異常度を算出するに際して、符号化部12は学習用データベースDB2からパラメタD5Eを読み込み、復号化部13は同じく学習用データベースDB2からパラメタD5Dを読み込む(S201)。
【0064】
ステップS101~S111の内容は既に述べたので、重複した説明は割愛する。これらのステップS101~S111では、対象装置3から検出された音信号D0についての特徴量ベクトルD1を生成し、対象装置3の装置型式ベクトルD4と共に符号化部12のニューラルネットワークへ入力される。なお、以下の記載においても、重複した説明は省略する。
【0065】
符号化部12は、特徴量ベクトルD1と装置型式ベクトルD4とから符号ベクトルD2を生成し、その符号ベクトルD2を復号化部13へ入力する(S202)。復号化部13は、装置型式ベクトルD4と符号ベクトルD2とから復号ベクトルD3を生成して異常度算出部16へ出力する(S203)。
【0066】
異常度算出部16は、特徴量ベクトルD1と符号ベクトルD2と復号ベクトルD3とに基づいて、対象装置3の音信号D0の異常度を算出し、その計算結果D6を出力する(S204)。
【0067】
ここで、変分オートエンコーダ (Variational auto-encoder:VAE) 型の構成を開示する。符号化部12は、多層ニューラルネットワークであって、その入力層は特徴量ベクトルの次元数と装置型式ベクトルの次元数を足した個数の素子からなり、それらの素子が、特徴量ベクトルと装置型式ベクトルを連結したベクトルの各要素を受け付ける。入力層は、非線形の活性化関数 (たとえばランプ関数) を挟み、適当な個数 (たとえば入力層の素子数と同数) の素子からなる第2層に連結されている。そして、第2層も、非線形の活性化関数を挟み、適当な個数 (たとえば入力層の素子数と同数) の素子からなる第3層に連結されている。このように多層的に連結される第2層以降のことを中間層と呼ぶ。符号化部の中間層の最後は、符号ベクトルの次元数Qの2倍の2Q個の素子からなる。それらの素子をQ個ずつ半分に分け、素子の出力値を、
【0068】
μ_1, μ_2, …, μ_Q, σ_1, σ_2, …, σ_Q
と定義する。ここで、μ_1, μ_2, …, μ_Qを各要素に持つ列ベクトルをμと定義し、σ_1, σ_2, …, σ_Qを対角成分の各要素に持つ対角行列をΣと定義する。そして、符号化部の最終層は、μを平均、Σを共分散行列とする多次元正規分布N(z; μ, Σ) に従って、次元数Qの符号ベクトルzを確率的に生成する。
【0069】
復号化部13は、多層ニューラルネットワークであって、その入力層は符号ベクトルの次元数Qと装置型式ベクトルの次元数を足した個数の素子からなり、それらの素子が、符号ベクトルと装置型式ベクトルを連結したベクトルの各要素を受け付ける。入力層は、非線形の活性化関数 (たとえばランプ関数) を挟み、適当な個数 (たとえば入力層の素子数と同数) の素子からなる第2層に連結されている。そして、第2層も、非線形の活性化関数を挟み、適当な個数 (たとえば入力層の素子数と同数) の素子からなる第3層に連結されている。このように、符号化部同様に、多層的に連結される中間層を有する。復号化部の最終層は、特徴量ベクトルの次元数と同じ個数の素子からなり、素子の出力値を復号ベクトルと呼ぶ。
【0070】
学習部15は、特徴量ベクトルD1と符号ベクトルD2および復号ベクトルD3の関数で定義される損失関数を最小化するように、符号化部12と復号化部13のニューラルネットワークのパラメタを更新する。評価関数として、特徴量ベクトルD1と復号ベクトルD3の間の誤差の大きさ、および、符号ベクトルD2の分布と或る定めた分布との非類似度に或る正の定数βを乗算した値、の和を用いる。
【0071】
特徴量ベクトルD1と復号ベクトルD3の間の誤差として、たとえば、二乗誤差、L1ノルム、Lpノルムなどを用いてよい。符号ベクトルの分布との非類似度を測定する分布として、たとえばベクトル0を平均とする標準偏差1の等方正規分布や、ベクトル0を平均とする標準偏差1のラプラス分布、を用いてよい。分布の非類似度として、カルバック・ライブラー (KL) ダイバージェンスに-1を乗算した値を用いてよい。
【0072】
損失関数の最小化は、例えばSGD、Momentum SGD、AdaGrad、RMSprop、AdaDelta、Adamなどの公知の最適化アルゴリズムによって行うことができる。
【0073】
このように構成される本実施例によれば、装置型式ベクトルD4が符号化部12と復号部13の両方に入力されるので、装置型式ベクトルD4の情報が符号ベクトルD2に残っていない場合でも、復号ベクトルD3を精度よく予測できる。したがって、学習部15が学習処理を反復するに従って、符号ベクトルD2の圧縮効率が次第に向上し、符号ベクトルD2から装置型式ベクトルD4の情報が消滅し、符号ベクトルD2が装置3の型式に依らない共通の分布となるように、符号化部12のパラメタと復号化部13のパラメタが学習される。本実施例では、符号ベクトルD2が装置3の型式に依らず共通の分布となり、装置型式間で共通する音の特徴を表現するためにニューラルネットワーク内の写像もできる限り共有されるため、学習処理で探索が必要なパラメタ空間のサイズを小さくすることができる。したがって、本実施例によれば、学習処理の最適化が進みやすくなる。
【実施例2】
【0074】
図10図14を用いて第2実施例を説明する。本実施例を含む以下の各実施例では、第1実施例との相違を中心に述べる。
【0075】
図10は、特徴量ベクトルの生成方法を示す説明図である。図11は、学習サブシステムLSSのブロック構成図である。図12は、学習サブシステムLSSの処理フローである。図13は、異常度算出サブシステムDSSのブロック構成図である。図14は、異常度算出サブシステムDSSの処理フローである。
【0076】
本実施例の異常度算出システム1(2)の特徴量ベクトル抽出部11(2)は、特徴量時系列算出部108により算出された特徴量ベクトルD1から、所定領域(例えば中間時刻)の複数フレームD1M(以下、中間特徴量ベクトルD1M)を取り除いた特徴量ベクトルD1L(以下、欠損後特徴量ベクトルD1L)を算出する中間特徴量ベクトル除外部111を有する。
【0077】
なお、所定領域とは、入力信号D0の特徴量ベクトルD1の時間軸上の中央を中心とする前後所定時間の領域、または、入力信号D0の特徴量ベクトルD1の全体の時間長さのうち中央を中心とする前後所定割合の領域、または、対象装置3の状態が変化する場合の状態変化直前の信号または状態変化直後の信号のいずれか一つを含む領域、のいずれか一つであってもよい。
【0078】
以下では、変分補間深層ニューラルネットワーク (VIDNN) 型の構成を開示する。中間特徴量ベクトル除外部111は、入力された特徴量時系列D1の中間時刻の複数フレームである、中間特徴量ベクトルD1Mを取り除いて、欠損後特徴量ベクトルD1Lを出力する(図12のステップS117)。
【0079】
ここで、中間特徴量ベクトルD1Mとして、特徴量時系列において厳密に中央のK個の隣接フレームを選んでもよく、中央から前後にずらしたK個の隣接フレームを選んでもよい。また、Kフレームを一つのクラスタとして、2個以上のC個のクラスタを欠損させてもよい。その場合、Lフレームのうち、CKフレームが欠損し、(L-CK)フレームが入力特徴量として残ることになる。いずれにしても前後のフレームを入力特徴量D1Lとして残すことで、たとえ正常音の特徴量ベクトルD1の時間変化が突発的であったとしても、中間特徴量ベクトルD1Mの予測が可能であるようにする。
【0080】
K=1であっても異常検知は十分に機能する。ただし、K=1の場合、装置3の正常/異常にかかわらず前後のフレームの情報だけで中間特徴量ベクトルD1Mを高精度に補間ができる可能性が高い。それに対して、Kを2以上に設定すると、K=1の場合に比べて前後のフレームだけから予測することが難しいので、中間特徴量ベクトルD1Mの予測値は、学習した正常状態の特徴量の分布に強く依存することになる。したがって、もし装置3が正常であれば、中間特徴量ベクトルD1Mの予測値と真値の両方が、学習した正常状態の特徴量の分布に従うので、予測値と真値の間の誤差が小さくなる。それに対して、もし装置3が異常であれば、中間特徴量ベクトルD1Mの予測値は学習した正常状態の特徴量の分布に従うが、中間特徴量ベクトルD1Mの真値は正常状態の特徴量の分布に従わないので、予測値と真値の間の誤差が大きくなる。したがって、K=1の場合に比べてKが2以上の場合の方が異常検知の精度が高い。そのため、Kは2以上に設定することが望ましい。
【0081】
図11に示す本実施例の符号化部12(2)は、多層ニューラルネットワークであって、その入力層は欠損後特徴量ベクトルD1Lの次元数と装置型式ベクトルD4の次元数を足した個数の素子からなり、それらの素子が、欠損後特徴量ベクトルD1Lと装置型式ベクトルD4を連結したベクトルの各要素を受け付ける。
【0082】
その入力層は、非線形の活性化関数(たとえばランプ関数)を挟み、適当な個数(例えば入力層の素子数と同数)の素子からなる第2層に連結されている。第2層も、非線形の活性化関数を挟み、適当な個数(例えば入力層の素子数と同数)の素子からなる第3層に連結されている。このように多層的に連結される第2層以降のことを中間層と呼ぶ。符号化部の中間層の最後は、符号ベクトルの次元数Qの2倍の2Q個の素子からなる。それらの素子をQ個ずつ半分に分け、素子の出力値を、
【0083】
μ_1, μ_2, …, μ_Q, σ_1, σ_2, …, σ_Q
と定義する。ここで、μ_1, μ_2, …, μ_Qを各要素に持つ列ベクトルをμと定義し、σ_1, σ_2, …, σ_Qを対角成分の各要素に持つ対角行列をΣと定義する。符号化部の最終層は、μを平均、Σを共分散行列とする多次元正規分布N(z; μ, Σ) に従って、次元数Qの符号ベクトルzを確率的に生成する。
【0084】
本実施例の復号化部13は、多層ニューラルネットワークであって、その入力層は符号ベクトルD2の次元数Qと装置型式ベクトルD4の次元数を足した個数の素子からなり、それらの素子が、符号ベクトルD2と装置型式ベクトルD4を連結したベクトルの各要素を受け付ける。入力層は、非線形の活性化関数(例えばランプ関数)を挟み、適当な個数(例えば入力層の素子数と同数)の素子からなる第2層に連結されている。そして、第2層も、非線形の活性化関数を挟み、適当な個数 (例えば入力層の素子数と同数)の素子からなる第3層に連結されている。このように、復号化部13(2)は、符号化部12(2)同様に、多層的に連結される中間層を有する。復号化部13(2)の最終層は、中間特徴量ベクトルD1Mの次元数と同じ個数の素子からなり、それら素子の出力値を復号ベクトルD3と呼ぶ。
【0085】
本実施例の学習部15(2)は、中間特徴量ベクトルD1Mと符号ベクトルD2および復号ベクトルD3の関数で定義される損失関数を最小化するように、符号化部12(2)のニューラルネットワークのパラメタと復号化部13(2)のニューラルネットワークのパラメタとを更新する。
【0086】
評価関数として、中間特徴量ベクトルD1Mと復号ベクトルD3の間の誤差の大きさ、および、符号ベクトルD2の分布と或る定めた分布との非類似度に或る正の定数βを乗算した値、の和を用いる。
【0087】
中間特徴量ベクトルD1Mと復号ベクトルD3の間の誤差として、例えば、二乗誤差、L1ノルム、Lpノルムなどを用いてよい。符号ベクトルD2の分布との非類似度を測定する分布として、例えばベクトル0を平均とする標準偏差1の等方正規分布や、ベクトル0を平均とする標準偏差1のラプラス分布、を用いてよい。また、分布の非類似度として、カルバック・ライブラー (KL) ダイバージェンスに-1を乗算した値を用いてよい。
【0088】
損失関数の最小化は、例えば、SGD、Momentum SGD、AdaGrad、RMSprop、AdaDelta、Adamなどの公知の最適化アルゴリズムによって行う。
【0089】
図12の学習サブシステムLSSの処理フローでは、特徴量ベクトル抽出部11(2)が特徴量ベクトルD1を算出した後で(S110)、中間特徴量ベクトル除外部111は、中間特徴量ベクトルD1Mを除外して欠損後特徴量ベクトルD1Lを生成し、欠損後特徴量ベクトルD1Lと中間特徴量ベクトルD1Mとを出力する(S117)。
【0090】
図13および図14に示す異常度算出サブシステムDSSのブロック構成と処理フローでは、異常度算出部6(2)に対し、符号化部12(2)から出力される符号ベクトルD2と(S202)、復号化部13(2)から出力される復号ベクトルD3と(S203)と、中間特徴量ベクトル除外部111から出力される中間特徴量ベクトルD1Mとが(S117)入力される。そして、異常度算出部6(2)は、これらの入力に基づいて異常度を算出する。
【0091】
このように構成される本実施例も第1実施例と同様の作用効果を奏する。さらに、本実施例では、特徴量ベクトル(特徴量時系列)D1から中間特徴量ベクトル(中間特徴量時系列)D1Mを除外して欠損後特徴量ベクトル(欠損後特徴量時系列)D1Lを生成し、除外された中間特徴量時系列(中間特徴量ベクトル)D1Mを補間する。したがって、本実施例によれば、音の時間変化が大きい装置3に対しても、装置型式あたりの必要な学習データ数が少なくてすみ、かつ、複数の装置型式について高精度に異常度を算出することができる。
【実施例3】
【0092】
図15図21を用いて第3実施例を説明する。本実施例では、装置型式ベクトルD4に加えて、装置カテゴリベクトルD7を使用する。
【0093】
図15は、特徴量ベクトルD1、装置型式ベクトルD4、装置カテゴリベクトルD7、符号ベクトルD2、復号ベクトルD3の関係を示す説明図である。
【0094】
本実施例に係る異常度算出システム1(3)では、符号化器12が、音の特徴量ベクトルD1と装置型式ベクトルD4だけでなく、装置型式の上位概念である装置カテゴリを表すOne-Hotベクトル(装置カテゴリベクトル)D7を入力として受け付ける。
【0095】
復号化器13は、符号ベクトルD2と装置型式ベクトルD4だけでなく、装置カテゴリベクトルD7を入力として受け付ける。
【0096】
図16は、装置型式ベクトルD4と装置カテゴリベクトルD7との関係を示す説明図である。異常度算出システム1(3)の対象となり得る装置3の型式として、例えば、ポンプPa、ポンプPb、ポンプPc、送風機Ba、送風機Bb、バルブVa、バルブVbがあると仮定する。
【0097】
ポンプPa、ポンプPb、ポンプPcは、いずれもカテゴリ「ポンプ」に属する装置である。同様に、送風機Baと送風機Bbはカテゴリ「送風機」に属し、バルブVaとバルブVbはカテゴリ「バルブ」に属する。
【0098】
図17は、学習サブシステムLSSのブロック構成図である。図18は、学習サブシステムLSSの処理フローである。
【0099】
装置カテゴリベクトルD7は、装装置型式ベクトル生成部14(3)によって装置カテゴデータベースDB3から読み出されて、装置型式ベクトルD4に連結される(D4+D7)。そして、装置型式ベクトルD4と装置カテゴリベクトルD7は、符号化部12と復号化部13とに入力される(S111(3))。
【0100】
図19は異常度算出サブシステムDSSのブロック構成図である。図20は、異常度算出サブシステムDSSの処理フローである。
【0101】
学習サブシステムLSSで述べたと同様に、装置カテゴリベクトルD7は装置型式ベクトルD4に連結されて(D4+D7)、装置型式ベクトル生成部14(3)から符号化部12と復号化部13とに入力される(S111(3))。
【0102】
このように構成される本実施例も第1実施例と同様の作用効果を奏する。さらに、本実施例では、装置型式ベクトルD4だけでなく装置カテゴリベクトルD7も使用するため、装置カテゴリが同一の装置群では、装置型式が異なっていても、ニューラルネットワークの写像ができる限り共通化される。これにより、本実施例によれば、探索が必要なパラメタ空間のサイズが小さくなって学習の最適化が容易となり、高精度の異常検知を実現することができる。
【0103】
さらに、本実施例によれば、装置型式あたりの必要な学習データが少なくなる。例えば、「ポンプPc」のデータが少なくても、「ポンプ」に共通する特徴が、同一カテゴリ「ポンプ」に属する他の装置型式の学習データによって学習される。
【0104】
図21は、学習サブシステムLSSの変形例を示す説明図である。本変形例では、学習部15がニューラルネットワークのパラメタを更新する際に、装置型式ベクトルD4を確率的に無効化して符号化部12へ入力する(S111(3-1))。
【0105】
すなわち、ニューラルネットワークパラメタを更新する反復処理の間に、装置型式ベクトルD4について、「0」である要素は或る定めた確率で「1」に置き換え、「1」である要素は別の或る定めた確率で「0」に置き換えられて、符号化部12に入力される。
【0106】
例えば、図19の下側に示すように、装置カテゴリベクトルD7では「ポンプ」カテゴリにのみ「1」をセットし、「ポンプ」カテゴリに属する装置型式ベクトルD4では、「ポンプ」カテゴリに属する各要素をランダムに選択する。
【0107】
本変形例では、装置型式ベクトルD4だけが確率的に時々無効化されるので、同一の装置カテゴリに含まれる複数の装置型式に対する写像が類似するようにニューラルネットワークのパラメタが学習される。
【0108】
したがって、本変形例では、探索が必要なパラメタ空間のサイズが小さくなるため、学習の最適化が容易となり、異常検知が高精度化する。また、型式あたりの必要な学習データが少なくなる。
【実施例4】
【0109】
図22図24を用いて第4実施例を説明する。本実施例では、将来の管理対象として追加されるかもしれない未知の装置型式にも対応する。図22は、本実施例に係る異常度算出システム1(4)のブロック構成図である。
【0110】
異常度算出システム1(4)では、学習サブシステムLSSと異常度算出サブシステムDSSとの間に、ファインチューニングサブシステムFTSが設けられている。ファインチューニングサブシステムFTSは、学習用データベースDB2から事前学習済のニューラルネットワークのパラメータを受け取ってファインチューニングを実施し、ファインチューニング済のニューラルネットワークのパラメータを別の学習用データベースDB4へ格納させる(S3)。
【0111】
図23は、特徴量ベクトルD1、符号ベクトルD2、復号ベクトルD3、装置型式ベクトルD4、装置カテゴリベクトルD7の関係を示す説明図である。図24は、符号化部12と復号化部13に入力されるベクトルの作成方法を示す。図24では、装置カテゴリベクトルD7の記載を省略している。
【0112】
本実施例では、装置型式ベクトルD4は、既存の装置型式に対応する既存型式対応部D4Eと、追加可能な未知の装置型式に対応する未知型式対応部D4Nとを備える。未知の装置型式の装置を管理点検対象として追加する場合、その未知の装置型式に対して未知型式対応部D4Nの要素を一つ割り当てる。
【0113】
このように構成される本実施例も第1実施例と同様の作用効果を奏する。さらに、本実施例では、未知の装置型式を予約できるように装置型式ベクトルD4を構成したため、既存の装置型式についての学習データを再利用できなくても、学習済モデルが表現する既存の装置型式の特性を利用して、未知の装置型式の特性を効率的に学習できる。
【0114】
さらに、後述の実施例で明らかとなるが、装置型式ベクトルD4内に、既存の装置型式に対応する領域D4Eと未知の装置型式に対応する領域D4Nとを用意しておくことにより、後日に既知の装置型式について再学習することができる。
【実施例5】
【0115】
図25図29を用いて第5実施例を説明する。本実施例は第4実施例をさらに改善した異常度算出システム1(5)を提供する。本実施例では、未知の装置型式についての追加学習をGenerative replayによって行う。
【0116】
図25は、本実施例による異常度算出システム1(5)のブロック構成図である。図26は、特徴量ベクトルD1、符号ベクトルD2、復号ベクトルD3、装置型式ベクトルD4、装置カテゴリベクトルD7の関係を示す説明図である。図27は、学習サブシステムLSSのブロック構成図である。図28は、図27に示す疑似正常音特徴量ベクトル生成部17の詳細を示すブロック構成図である。図29は、学習サブシステムLSSの処理フローである。
【0117】
図25に示すように、異常度算出システム1(5)は、第4実施例で述べた異常度算出システム1(4)と同様に、学習サブシステムLSS、異常度算出サブシステムDSS、事前学習済の学習モデルのデータベースDB2、ファインチューニング済の学習モデルのデータベースDB4、ファインチューニングサブシステムFTS(5)を備える。
【0118】
図26図27図28に示すように、本実施例の異常度算出システム1(5)は、図27にも示すように、疑似正常音特徴量ベクトルD1Fを生成させる疑似正常音特徴量ベクトル生成部17を備える。
【0119】
図28に示すように、疑似正常音特徴量ベクトル生成部17は、既存の装置型式のデータにより学習済の復号化部173を用いる。等方ガウス分布などの所定の分布によって、符号化部172が確率的に生成した符号ベクトルD2と、ベクトル生成部171により生成された既存の装置型式のベクトルD4(5)とは、復号化部173に入力される。
【0120】
既存の装置型式ベクトル生成部171は、既存の装置型式ベクトルD4の全要素のうち一つの要素だけを「1」にした装置型式ベクトルD7を生成し、復号化部173に入力させる。
【0121】
これにより、既存の装置型式について学習済の復号化部173は、既存の装置型式に関する擬似的な正常音の特徴量ベクトルD1Fを生成する。
【0122】
疑似正常音特徴量ベクトルD1Fは、特徴量ベクトルD1として符号化部12へ入力される。未知の装置型式(新たに追加された装置型式)の学習データから抽出された特徴量ベクトルD1Nも、特徴量ベクトルD1として符号化部12へ入力される。
【0123】
図27は、学習サブシステムLSSのブロック構成図である。図28は、図27に示す疑似正常音特徴量ベクトル生成部17の詳細を示すブロック構成図である。図29は、学習サブシステムLSSの処理フローである。
【0124】
本実施例では、既存の装置型式についての疑似正常音特徴量ベクトルD1Fと、未知の装置型式の学習データから抽出された特徴量ベクトルD1Nとを用いて、学習済みモデルをファインチューニングする。
【0125】
ファインチューニングでは、既存の装置型式の疑似正常音特徴量ベクトルD1Fを復号化部173へ入力するときに、対応する装置型式の要素を「1」とする装置型式ベクトルD4(5)、および、対応する装置カテゴリの要素を「1」とする装置カテゴリベクトルD7(5)も復号化部173へ入力する。
【0126】
このように構成される本実施例も第1実施例、第3実施例と同様の作用効果を奏する。さらに、本実施例では、既存の装置型式について学習済の復号化部173を用いることにより、既存の装置型式に関する擬似的な正常音の特徴量ベクトルD1Fを生成させることができる。したがって、本実施例によれば、既存の装置型式の学習データを保持しなくても、いわゆる破壊的忘却を防止することができる。
【0127】
すなわち、既知の装置型式の学習データを保存し続けるのは、データベース容量などの点でコストが増大する。一方、未知の装置型式の学習データのみを用いてファインチューニングを行うと、次第に既存の装置型式の性質を忘却するため、汎化精度が低下する。そこで、本実施例では、既存の装置型式の特徴量ベクトルD1Fを疑似生成する (Generative replay)。これにより、本実施例では、既知の装置型式の学習データを保存し続けなくても、既存の装置型式の性質を忘却を防ぐことができ、汎化精度を保つことができる。
【0128】
なお、本発明は上述の実施例に限定されず、様々な変形例が含まれる。例えば、上述の実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【0129】
本発明は、例えば、セキュリティ分野などにも適用可能である。家庭やオフィス、各種施設の通常状態の音を正常音として学習し、正常音以外の突発的な音(例えば、銃声、人または物体の倒れる音、悲鳴、警報など)を異常音として検出することができる。
【0130】
さらに、本発明は、音に代えて振動から異常か否かを検出することもできる。上述のように、センサ部21として振動センサ(加速度センサなど)を用いればよい。
【0131】
さらに、特徴量ベクトルD1から中間特徴量ベクトルD3を欠損させる代わりに、特徴量ベクトルD1のうち所定の中間領域についての演算結果に重みをつける構成でもよい。
【0132】
上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
【0133】
制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【0134】
本発明の各構成要素は、任意に取捨選択することができ、取捨選択した構成を具備する発明も本発明に含まれる。さらに特許請求の範囲に記載された構成は、特許請求の範囲で明示している組合せ以外にも組合せることができる。
【符号の説明】
【0135】
1:異常度算出システム、2:センサ端末、3:対象装置、11特徴量ベクトル抽出部、12:符号化部、13:復号化部、14:装置型式ベクトル生成部、15:学習部、16:異常度算出部、17:疑似正常音特徴量ベクトル生成部、101:入力音取得部、102:フレーム分割部、103:窓関数乗算部、104:周波数領域信号計算部、105:パワースペクトログラム計算部、106:フィルタバンク乗算部、107:瞬時特徴量計算部、108:特徴量ベクトル算出部、111:中間特徴量ベクトル除外部、LSS:学習サブシステム、DSS:異常度算出サブシステム、FTS:ファインチューニングサブシステム
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29