以下、図面を参照しながら、機器の異常診断方法および機器の異常診断システムの実施形態について詳細に説明する。
図1の符号1は、本実施形態の機器の異常診断システムである。この異常診断システム1は、発電プラントなどの施設に設けられる機器としての回転機2の異常を診断するシステムである。なお、回転機2とは、例えば、ポンプまたは送風機などに搭載されるモータである。
例えば、回転機2に故障などの異常がある場合、または異常の兆候がある場合には、その振動の加速度振幅または特定の周波数成分が、正常時と比較して異なるものとなる。正常時と異常時との差異が大きなものであれば、異常の発見がし易いが、その差異が微小なものであれば、異常の発見が困難である。また、機器としての回転機2の運転中に生じる現象に関するデータは、膨大な量となり、これら大量のデータを人手で解析することは困難である。
近年、機械学習および人工知能に関する技術の発達に伴い、大量のデータから有用な情報を取り出すことが可能になっている。このようなデータ解析のアルゴリズムとしては、例えば、位相的データ解析(TDA:Topological Data Analysis)またはクラスタ解析(Clustering)がある。本実施形態の異常診断システム1では、大量のデータを扱うことができるアルゴリズムを用いて、回転機2(機器)の異常の診断を行う。
従来の解析技術では、大規模、多次元のデータを扱う場合に次元の削減の処理が必要である。例えば、統計的手法による次元削減では、データ中の情報が失われてしまうといった課題がある。また、教師あり学習を用いた異常診断についても、異常となるデータラベルが少ないと学習モデルを構築することが難しいという課題がある。
そこで、本実施形態では、教師なしでデータ分析ができ、かつデータ群のトポロジカルな特徴に着目したデータ解析技術を用いて、データ群の中から異常の診断を行うようにする。
例えば、従来の位相的データ解析では、分析のためのパラメータ設定または分析結果の解釈に人手による判断が必要である。これに対して、本実施形態では、位相的データ解析で用いる分析パラメータをスイープし、それに対する出力結果(例えば、データ数、エッジ数、ノード群数)を分析することで特徴のあるデータ(異常データ)を抽出することができる。また、どのパラメータが異常事象に寄与しているかを推定することができる。
図1に示すように、異常診断システム1の使用者は、プラントに設けられた回転機2に点検用センサ3(例えば、振動計)を取り付けて、回転機2の振動データの取得を行う。なお、回転機2の運転中の状態を示すデータであるモニタリングデータとしては、振動データの他にも、動作音を収集するセンサ、サーモグラフィなどのデータがある。なお、点検用センサ3は、常設のものであっても良いし、測定の都度、設置するものでも良い。
モニタリングデータは、機器としての回転機2に取り付けられた点検用センサ3から発生する信号の時間波形と周波数スペクトルとのうちの少なくとも1つのデータである。また、モニタリングデータは、信号の時間波形または周波数スペクトルの絶対値でも良いし、信号の特徴を代表する量またはその組み合わせであっても良い。
なお、振動データで対象となる状態量としては、例えば、変位、速度、加速度などがある。また、サンプリング点数または周波数の範囲など、任意の測定条件を使用者が選択可能である。このようにすれば、点検用センサ3で容易に取得できる振動データに基づいて、回転機2の異常の診断を行うことができる。
モニタリングデータとしては、例えば、点検用センサ3で計測された振動データを例示する。なお、モニタリングデータには、常時、回転機2の状態をモニタリングしている連続的なデータの他に、定期的に測定した断続的なデータも含まれる。以下の説明では、振動データを例に説明するが、その他のデータでも良い。
なお、モニタリングデータには、回転機2が動作することで達成される主目的の事象を示す1次データの他に、回転機2が動作することで生じる副次的な2次データが含まれる。例えば、回転機2の場合には、その回転数が1次データとなる。そして、その回転動作により生じる主目的の事象以外の振動データが2次データとなる。本実施形態では、2次データを用いて回転機2の異常の診断を行う態様を例示する。なお、1次データを用いて回転機2の異常の診断を行っても良い。
そして、このモニタリングデータを異常診断システム1に入力して解析を行う。例えば、モニタリングデータは、インターネット4に接続されたユーザ端末5(例えば、PC)を介して異常診断システム1に入力される。なお、モニタリングデータは、異常診断システム1に直接入力されても良い。
この異常診断システム1は、プラント外のクラウドサーバに実装されても良いし、プラント内のパーソナルコンピュータまたはサーバに実装されても良い。また、モニタリングデータを、サーバなどの電気機器または所定のメモリに収集した後に、これら収集したデータを異常診断システム1に転送しても良い。
点検用センサ3は、例えば、X軸、Y軸、Z軸の3軸方向の加速度を検出する。これにより、回転機2の加速度の振動(データ)波形を取得することができる。
次に、異常診断システム1のシステム構成を図1から図8に示すブロック図を参照して説明する。
図1に示すように、異常診断システム1は、メイン制御部6と情報入力部7と通信部8と表示出力部9と解析処理ユニット10とを備える。これらは、メモリまたはHDDに記憶されたプログラムがCPUによって実行されることで実現される。
さらに、異常診断システム1は、モニタリングデータベース11とプロセスデータベース12とスペックデータベース13と異常原因データベース14とを備える。これらは、メモリまたはHDDに記憶され、検索または蓄積ができるよう整理された情報の集まりである。
本実施形態の異常診断システム1は、CPU、ROM、RAM、HDDなどのハードウェア資源を有し、CPUが各種プログラムを実行することで、ソフトウェアによる情報処理がハードウェア資源を用いて実現されるコンピュータで構成される。さらに、本実施形態の異常診断方法は、プログラムをコンピュータに実行させることで実現される。
メイン制御部6は、異常診断システム1を統括的に制御する。
情報入力部7は、異常診断システム1を使用する使用者の操作に応じて所定の情報が入力される。この情報入力部7には、マウスまたはキーボードなどの入力装置が含まれる。つまり、これら入力装置の操作に応じて所定の情報が情報入力部7に入力される。この情報入力部7には、モニタリングデータなどの所定の情報が入力される。
通信部8は、インターネット4などの通信回線を介してユーザ端末5などの電子機器と通信を行う。この通信部8は、無線通信装置に搭載されても良い。また、通信部8は、所定のネットワーク機器、例えば、無線LANアクセスポイントまたはアンテナに搭載されても良い。なお、通信部8は、WAN(Wide Area Network)または携帯通信網を介してユーザ端末5と通信を行っても良い。
表示出力部9は、解析結果を示す各種情報を表示する。例えば、クラスタ表示(図12参照)、時系列表示(図13参照)などの画面が表示される。つまり、表示出力部9は、分析結果を表示するためのグラフィックユーザインターフェース(GUI)である。
本実施形態の異常診断システム1には、解析結果の出力を行うディスプレイなどの表示装置が含まれる。つまり、表示出力部9は、ディスプレイに表示される画面の制御を行う。なお、ディスプレイはコンピュータ本体と別体であっても良いし、一体であっても良い。さらに、ネットワークを介して接続される他のコンピュータが備えるディスプレイに表示される画面の制御を表示出力部9が行っても良い。
なお、本実施形態では、表示装置としてディスプレイを例示するが、その他の態様であっても良い。例えば、ヘッドマウントディスプレイまたはプロジェクタを用いて情報の表示を行っても良い。さらに、紙媒体に情報を印字するプリンタをディスプレイの替りとして用いても良い。つまり、表示出力部9が制御する対象としてヘッドマウントディスプレイ、プロジェクタまたはプリンタが含まれても良い。
解析処理ユニット10は、特定次元数のデータを扱うアルゴリズムを用いてモニタリングデータに含まれる対象データまたは過去データの解析を行う(図2参照)。なお、本実施形態では、回転機2の運転中の状態を示すデータとして、モニタリングデータを例示しているが、モニタリングデータとプロセスデータを合せて作成されたデータセットが、回転機2の運転中の状態を示すデータであっても良い。以下の説明において、モニタリングデータという用語には、プロセスデータが含まれる場合がある。
ここで、本実施形態の特定次元数は、4次元以上である。なお、例えば、解析処理ユニット10は、位相的データ解析とクラスタ解析とのうち少なくともいずれか一方を用いて解析を行う。このようにすれば、特定次元数のデータを扱った解析を行うことができる。
対象データとは、モニタリングデータに含まれる診断の対象となるデータである。なお、モニタリングデータと同時期または前後の時期に取得したプロセスデータも対象データに含まれる場合がある。
過去データとは、モニタリングデータに含まれる異常の有無が既知のデータである。例えば、現在運転中の回転機2から取得されたモニタリングデータは、異常の有無が未知である。
このモニタリングデータは、対象データとして異常の有無の診断の対象となる。また、数カ月前または数年前に回転機2から取得されたモニタリングデータは、そのデータが取得された後に、実際に回転機2が正常に動作したか、それとも異常な状態となったかが把握できている。このようなモニタリングデータは、過去データとして扱われる。なお、過去のモニタリングデータと同時期または前後の時期に取得したプロセスデータも過去データに含まれる場合がある。
モニタリングデータベース11は、使用者が点検用センサ3を用いて回転機2から取得したモニタリングデータが記憶される。
プロセスデータベース12は、回転機2に関連するプロセスを示すプロセスデータが記憶される。プロセスデータには、例えば、回転数、流量、圧力、温度、電流などの運転条件と、運転期間、使用期間などの使用条件などが含まれる。なお、このプロセスデータは、使用者が記憶させても良いし、予め記憶されているものでも良い。
スペックデータベース13は、回転機2のスペックを示すスペックデータが記憶される。スペックデータには、例えば、回転機2の場合は、型式、メーカー、サイズ、揚程、流量種別、軸受形式、羽数などの情報が含まれる。なお、このスペックデータは、使用者が記憶させても良いし、予め記憶されているものでも良い。
異常原因データベース14は、解析処理ユニット10の解析に基づいて抽出された対象データの特徴量と、回転機2の異常原因との対応関係を示す原因情報(異常原因データ)が記憶される。原因情報は、異常の特徴量と異常原因との相関関係を示すものである。
なお、この原因情報は、使用者が相関関係を入力、設定しても良いし、予め記憶されているものでも良い。このようにすれば、特徴量と異常原因との対応関係に基づいて、回転機2の異常原因の推定を容易に行うことができる。
図2に示すように、解析処理ユニット10は、データ取得部15とデータ前処理部16と処理設定部17とデータ解析部18とパラメータチューニング部19と結果整理部20と結果表示制御部21と表示調整部22と異常原因分析部23と原因情報取得部24と原因表示制御部25とを備える。
データ取得部15は、モニタリングデータベース11とプロセスデータベース12とスペックデータベース13とから各種データを取得する。なお、以下の説明において、モニタリングデータという用語には、データ取得部15が取得したプロセスデータまたはスペックデータが含まれる場合がある。
データ前処理部16は、モニタリングデータから、対象データまたは過去データなどの解析に用いるデータを抽出し、データ解析部18で解析される前に、これらデータの前処理を行う(図3参照)。ここで、対象データまたは過去データの次元数が特定次元数になるように調整される。なお、対象データと過去データとは、同一の特定次元数になるように調整される。
処理設定部17は、データ解析部18で解析を行うときに用いる各種設定または解析用のアルゴリズムの設定を行う(図4参照)。
データ解析部18は、特定次元数に調整された対象データまたは過去データを、特定次元数のデータを扱うアルゴリズムである位相的データ解析とクラスタ解析とのうち少なくともいずれか一方を用いて解析する。このデータ解析部18は、モニタリングデータに含まれる対象データの中から、異常な状態を示す対象データを検出することができる。
パラメータチューニング部19は、データ解析部18で解析を行うときに用いる各種設定または解析用のアルゴリズムの設定のチューニングを行う(図5参照)。
結果整理部20は、データ解析部18により得られたデータの解析結果が最適なものであるか否かを整理する。つまり、データ解析部18で分析した結果について、分析パラメータと分析結果との対応関係を整理する。
ここで、データの解析結果が最適でない場合は、パラメータチューニング部19にて設定のチューニングが行われる。つまり、データ解析部18によるデータの解析に基づいて、回転機2の異常の有無を識別可能な態様で対象データを表示可能な解析結果が得られるまで、パラメータチューニング部19によるチューニングとデータ解析部18によるデータの解析とが繰り返される。
結果表示制御部21は、データ解析部18により得られたデータの解析結果を示す画面であって、回転機2の異常の有無を識別可能な態様の画面を表示出力部9に表示させる制御を行う(図6参照)。例えば、クラスタ表示(図12参照)、時系列表示(図13参照)などの画面を表示出力部9に表示させる制御を行う。
ここで、本実施形態の異常の有無を識別可能な態様は、例えば、3次元以下のグラフである。例えば、クラスタ表示(図12参照)を2次元のグラフとして例示する。このクラスタ表示が3次元のグラフであっても良い。このようにすれば、通常の表示技術では可視化できない4次元以上の対象データを、3次元以下のグラフとして可視化し、回転機2の異常の有無の判定に用いることができる。なお、時系列表示(図13参照)は、異常の有無を識別可能な態様に含まれる。
位相的データ解析を用いる場合において、結果表示制御部21は、ノード数、エッジ数、入力したデータの総数、ノードの中に含まれるユニークなデータ数、ノード群数などを含む異常検出結果の整理を行う。なお、以下の説明では、ノード群をクラスタと称する場合がある。また、結果表示制御部21は、距離のメトリック、フィルター関数、インターバル、オーバーラップ、クラスタリングの手法などを含む位相的データ解析の分析パラメータの整理も行う。
表示調整部22は、使用者の操作に応じて表示出力部9に表示させる画面の制御を行う(図7参照)。
異常原因分析部23は、データ解析部18により得られたデータの解析結果に基づいて、対象データに異常がある場合に、その異常原因の分析を行う(図8参照)。
原因情報取得部24は、異常原因データベース14から原因情報を取得する。この原因情報に基づいて、異常原因分析部23にて分析が行われる。
原因表示制御部25は、異常原因分析部23により得られたデータの解析結果を示す画面であって、回転機2の異常原因を使用者が診断可能な態様の画面を表示出力部9に表示させる制御を行う。
図3に示すように、データ前処理部16は、対象データ調整部26と過去データ調整部27と欠損情報補間部28とデータラベル付与部29とデータスケーリング部30とスペクトル解析部31と振幅値算出部32とデータフォーマット変換部33とを備える。
対象データ調整部26は、モニタリングデータまたはプロセスデータに含まれる診断の対象となる対象データの次元数が特定次元数になるように対象データを調整する。
過去データ調整部27は、モニタリングデータまたはプロセスデータに含まれる異常の有無が既知の過去データの次元数が特定次元数になるように過去データを調整する。
なお、本実施形態の「特定次元数になるようにデータを調整する」とは、任意の次元になるように、使用者がデータを間引く、または、次元圧縮することが含まれ得る。さらに、回転機2の振動に対する物理的な知識に基づいて、分析対象のデータの中から、異常に寄与し易いデータのみを抜き出すことが含まれる。例えば、2000次元の周波数のデータがある場合に、その中から異常に寄与し易い48次元のデータのみを抽出する(次元を調整する)前処理を行っても良い。
欠損情報補間部28は、対象データまたは過去データを特定次元数にしたときに、それぞれの次元数の情報のうち一部の次元数の情報が欠損する場合に、その欠損した情報を補間する。このようにすれば、対象データまたは過去データのそれぞれの次元数の情報を揃えて、特定次元数のデータを扱うアルゴリズムで解析可能な対象データまたは過去データを作成することができる。
データラベル付与部29は、特定次元数が調整された対象データまたは過去データに所定のラベルを付与する。例えば、過去に分析したデータ、または、データ収集の際に有意な特徴が観測されたデータに関しては、正常のときのデータか、異常が有るときのデータかが既知ものがある。このような過去データには、異常の有無を識別可能な情報としてのラベルLが付与される(図9および図10参照)。つまり、過去データには、異常の有無を識別可能なラベルLが対応付けられる。なお、対象データは、ラベルLをブランクにする。
データスケーリング部30は、モニタリングデータを正規化または標準化する処理を行う。この処理により、次元毎でスケールの異なるデータのスケールを揃えることができる。例えば、正規化処理を行うと、特徴量の値の範囲が一定の範囲に収まるようになる。主に[0,1]か、[−1,1]の範囲内に収めることが多い。また、標準化では特徴量の平均を0、分散を1にする変換を行う。
スペクトル解析部31は、振動データから任意の周波数成分を抽出する。この解析に基づいて、対象データまたは過去データになる振動スペクトルデータを生成することができる。このスペクトル解析部31は、例えば、高速フーリエ変換(FFT:Fast Fourier Transform)を用いて、モニタリングデータの特定の周波数成分を抽出したり、包絡線処理を行い、特定の周期的な周波数成分を抽出したりする。
振幅値算出部32は、モニタリングデータに含まれる振幅値を解析する。なお、この解析に基づいて、対象データまたは過去データになる振幅値データを作成することができる。
つまり、本実施形態では、モニタリングデータに基づいて、回転機2の振動に関する情報である振幅値データまたは振動スペクトルデータが取得可能である。
データフォーマット変換部33は、データ解析部18で用いるアルゴリズムに合わせたデータフォーマットになるように、対象データまたは過去データのデータフォーマットを変換する。なお、データフォーマットの変換とは、異常分析を行うためにデータの形状を調整することである。
図4に示すように、処理設定部17は、前処理条件設定部34とアルゴリズム設定部35とを備える。
前処理条件設定部34は、前処理の条件を設定する。例えば、前述の補間または規格化の処理などの設定が変更される。
アルゴリズム設定部35は、データ解析部18で扱うアルゴリズムの設定を行う。例えば、位相的データ解析を用いるか、クラスタ解析を用いるか、それとも両解析を用いるかの設定を行う。またそれらのアルゴリズムのハイパーパラメータの設定を行う。このハイパーパラメータの設定により、例えば、位相的解析を用いる場合は、フィルター関数、オーバーラップ率などが変更される。
図5に示すように、パラメータチューニング部19は、特定次元数設定部36とパラメータ最適化部38とを備える。
特定次元数設定部36は、対象データまたは過去データの解析を行うときに用いる特定次元数の設定を行う。このようにすれば、異常の有無を識別可能な態様になるように特定次元数の設定を行うことができる。なお、特定次元数の設定は、前処理条件設定部34またはアルゴリズム設定部35で行っても良い。
また、解析後に得られる対象データまたは過去データの表示が、異常の有無を識別可能な態様になるように特定次元数の設定が繰り返される。このようにすれば、異常の有無を識別可能な態様になるまで、特定次元数の設定を繰り返し行うことができる。この設定は、人手で行っても良いし、自動的に行っても良い。
パラメータ最適化部38は、結果整理部20で整理された分析パラメータと分析結果との対応関係に基づいて、データ解析部18にて分析に用いるパラメータの設定をチューニングする。このチューニングでは、解析後に得られる対象データまたは過去データの表示が、異常の有無を識別可能な態様になるように、パラメータの変更を繰り返し、パラメータの最適化を行う。
図6に示すように、結果表示制御部21は、クラスタ表示制御部39と時系列表示制御部40とを備える。
クラスタ表示制御部39は、データ解析部18により得られたデータの解析結果に基づいて、クラスタ表示(図12参照)の画面を表示出力部9に表示させる制御を行う。なお、クラスタ表示は、対象データをノードNとして表示した画面である。このようにすれば、対象データをクラスタ表示として視覚化できるため、回転機2の異常の有無の識別が行い易くなる。
時系列表示制御部40は、データ解析部18により得られたデータの解析結果を示す時系列表示(図13参照)の画面を表示出力部9に表示させる制御を行う。なお、時系列表示は、対象データをモニタリングされた時系列順に表示し、かつ対象データが含まれるノードNを識別可能な態様で表示した画面である。このようにすれば、対象データを時系列に並べて表示できるため、回転機2の異常の有無の識別が行い易くなる。
図7に示すように、表示調整部22は、ノード選択受付部41と対象情報表示部42とを備える。
ノード選択受付部41は、クラスタ表示された画面上のノードNまたはクラスタCの選択を受け付ける処理を行う。
対象情報表示部42は、ノード選択受付部41により受け付けられ、選択されたノードNに含まれる内訳情報Bを表示する(図12参照)。この内訳情報Bには、選択されたノードNに含まれる対象データの対象情報が含まれる。このようにすれば、ノードNに対応する対象データの情報を容易に得ることができる。
図8に示すように、異常原因分析部23は、特徴量抽出部43と異常原因推定部44とを備える。
特徴量抽出部43は、データ解析部18で解析された後の対象データの特徴量を抽出する。
異常原因推定部44は、特徴量抽出部43にて抽出された特徴量に基づいて、異常原因を推定する。つまり、特徴量抽出部43にて抽出された特徴量に基づいて、異常原因を診断可能な態様で対象データを表示可能な状態になるようにデータを整理する。このようにすれば、回転機2に異常が発見された場合に、その原因を推定することができる。
次に、データ解析部18で解析される対象データまたは過去データについて図9および図10を用いて説明する。
図9は、データ前処理部16にて前処理された後の加速度振幅のデータの一例を含むテーブルである。このテーブルでは、モニタリングされた日付(測定日、データ収集日時)に対応付けて、特定次元数の加速度振幅が登録されている。なお、加速度振幅の特定次元数は、任意の数を選択可能である。ここで、最新の日付のデータが、異常の有無の診断の対象となる対象データTとなっている。
なお、特定次元数の加速度振幅の列Sが複数設けられている。これら列Sの数がデータの次元数となっている。図9のテーブルでは、所定の日付(測定日、データ収集日時)に対応付けて、5次元以上、例えば、50次元の加速度振幅が登録されている。また、過去データPに対応付けて、異常の有無を識別可能なラベルLが登録される。例えば、正常であった過去データPに「A」のラベルLが登録され、異常であった過去データPに「B」のラベルLが登録されている。
図10は、データ前処理部16にて前処理された後の振動スペクトルデータの一例を含むテーブルである。このテーブルでは、モニタリングされた日付に対応付けて、特定次元数ごとの振動値が登録されている。なお、周波数の特定次元数は、任意の数を選択可能である。ここで、最新の日付のデータが、異常の有無の診断の対象となる対象データTとなっている。
なお、特定次元数の周波数の列Fが複数設けられている。これら列Fの数がデータの次元数となっている。図10のテーブルでは、所定の日付に対応付けて、5次元以上、例えば、50次元の加速度スペクトルが登録される。また、過去データPに対応付けて、異常の有無を識別可能なラベルLが登録される。例えば、正常であった過去データPに「A」のラベルLが登録され、異常であった過去データPに「B」のラベルLが登録されている。
図9および図10において、対象データおよび過去データの特定次元数は統一される。ここで、それぞれの日付に対応付けて、次元数のそれぞれに当てはまるデータが抽出できない場合がある。例えば、50次元のデータのうち、数次元分のデータが欠損する場合がある。この欠損したデータは、欠損情報補間部28により補間される。なお、補間されるデータの値は、ゼロであっても良いし、欠損した項目と同じ行に含まれているデータの平均値でも良いし、この平均値の前後のデータをもとに内挿または外挿したものでも良いし、欠損した項目と同じ列に含まれているデータの平均値でも良いし、この平均値の前後のデータをもとに内挿また外挿したものでも良いし、その他の任意に定めた値であっても良い。
なお、本実施形態の過去データとしては、異常の診断対象となる回転機2から取得されたデータを用いる形態を例示するが、その他の態様であっても良い。例えば、メーカー、スペック、型式が同一構成の回転機2がある場合には、この他の回転機2から取得されたデータを、異常の診断対象となる回転機2の過去データとして用いても良い。
なお、特定次元数は、全ての日付で同一の次元数となるように、データ前処理部16においてデータ補完およびフォーマット変換が行われる。なお、データ前処理部16の処理は、自動的に行っても良いし、人手により任意に設定しても良い。
従来の機械学習を用いた統計的手法では、統計的な解析をベースにしており、取り扱うデータが正規分布などの何らかの分布に従っていることを前提としている。そのため、個別データの特徴に応じた解析手法の構築が必要ある。また、大規模、多次元のデータを扱う場合には、データの次元の削減などの処理が必要である。このような統計的手法による次元削減では、データ中の情報が失われてしまうといった課題がある。本実施形態は、このような課題を解決することができる。
次に、本実施形態で用いる位相的データ解析、所謂トポロジカルデータアナリシス(以下「TDA」という。)について説明する。TDAは、大規模な多次元データに対して、統計的な特徴ではなく、データの位相幾何学的な情報(データの形)に注目して、データの特徴を分析する手法である。このTDAには、パーシステントホモロジー(Persistent homology)と、マッパー(Mapper)という2種類の手法がある。
パーシステントホモロジーは、幾何学的な不変量をとらえることができる手法で、データ形状の詳細を定量的に評価することができる。また、マッパーは、幾何学的情報を把握できるシンプルなグラフで、高次元のデータを表現する手法である。
本実施形態では、TDA Mapperを用いる形態を例示する。なお、その他の解析技術を用いても良い。
TDA Mapperにより、高次元数(特定次元数)のデータを、3次元以下のグラフとして可視化することができる。また、データを把握する上で重要な部分を、まとめて1つのノードNとして表現することができる。例えば、連続しているデータを持つノードN同士をエッジEで繋ぎ、データの集合をグラフに変換する(図12参照)。
なお、本実施形態の「可視化」とは、人間が形状を認識できる態様のことを示す。例えば、ディスプレイに表示された3次元のグラフは、2次元の画像であるが、人間はその立体的な形状を認識することが可能である。
なお、TDA Mapperには、対象データの座標系に解析結果が依存しにくいという特徴があり、選択した座標系に依存せず、異なる座標系のデータを比較可能であるという特徴がある。また、TDA Mapperには、小さな変位に対しては不変という特徴がある。例えば、ノイズの影響を受け難いという特徴がある。
また、TDA Mapperには、多次元のデータを低次元に圧縮して、そのデータの形状を表現可能であるという特徴がある。例えば、数千点のデータのセットを入力した場合に、13の頂点と12のエッジを持つネットワークとして表現できる。
TDA Mapperでは、多次元のデータを入力し、入力したデータの距離メトリックを設定する。次に、距離を設定したデータを低次元に写像するためのフィルター関数を設定する。フィルター関数は1つまたは複数設定可能である。例えば、ユーグリッド距離をメトリックとしたデータをY軸に投影する関数をフィルターとして用いることができる。次に、投影されたデータについて、インターバルを決めてビンに分けていく。インターバル(間隔)とインターバル同士の重なり率(オーバーラップ)が、後述するノードとエッジの関係において重要となる。次に、インターバル毎に、その中に含まれているデータをクラスタリングしていく。クラスタリングのアルゴリズムとしては、例えば、k−means法がある。この場合は、クラスタ数kもパラメータとなる。インターバル毎のクラスタが、可視化した際のノードとなる。クラスタの中のデータが重複している場合、ノード同士の間に線を引く。この線をエッジと呼び、ノード間に繋がりがあることを意味している。
以上のような処理の過程で、使用者が設定可能な(設定する必要がある)Mapperのハイパーパラメータとしては、例えば、以下のものがある。
・メトリック:距離の定義。
・フィルター関数:密度、離心率、グラフラプラシアン、各軸への投影、SVD(特異値分解、singular value decomposition)、Isolation forest。
・インターバル:インターバル数を大きくすると、クラスタリング処理した際のクラスタ数は大きくなる。ただし、空のクラスタが多く作られる可能性がある(クラスタあたりのデータの数が少ない)。
・オーバーラップ:オーバーラップ数を大きくすると、ノード間の接続(エッジ)が増える。
・クラスタリング手法:階層型クラスタリング、k−means、その他の手法。
パラメータチューニング部19と結果整理部20では、これらの制御パラメータと分析結果との相関を整理する(図11参照)。そして、注目しているデータ点がグラフのノードにプロットされるまでパラメータチューニング部19で分析パラメータをスイープする。
このパラメータチューニング操作によって、注目しているデータ点が、必ずノード上に表現されるようになる。次に、注目しているデータ点を含むノードが、別の測定日のデータ点を含むか、また別のノードとの関係があるか、すなわちエッジで結ばれているかを確認する。この際、別の測定日のデータが正常のラベルLを有していれば、注目しているデータも正常の可能性が高いと判定される。一方で正常のデータとの繋がりがない場合は、注目したデータは正常でない(異常の可能性が高い)と判定される。
以上の手順によって、使用者が分析パラメータの設定をすることなく、異常の有無を自動で判定することが可能となる。
図12に示すように、データ解析部18で生成され、TDA Mapperの結果であるクラスタ表示(グラフ)がディスプレイに表示される。なお、クラスタ表示の制御は、結果表示制御部21のクラスタ表示制御部39にて行われる。
このクラスタ表示には、ノードNおよびクラスタCが表示されるグラフ表示領域Gと、ノードNに含まれる内訳情報Bが表示する内訳情報表示領域Dと、ノードNの色分けの態様を示す色ラベルコンターRとが設けられている。
図12の例では、グラフ表示領域Gに、ノードNが丸印で表示されている。例えば、1つのノードNに含まれている対象データまたは過去データの数が多いほど、大きい丸印として表示される。また、複数のノードNがエッジEで繋がれている。このエッジEで繋がれたノード群がクラスタCである。そして、正常なデータを含むノードNのクラスタC1と、異常なデータを含むノードNのクラスタC2,C3,C4とが分けられて表示される。
例えば、正常なデータを含むクラスタC1が1つ表示され、異常なデータを含むクラスタC2が3つ表示されている。なお、本実施形態のクラスタCとは、原則、複数のノードNがエッジEで繋がれたものを示すが、単独のノードNであっても他のクラスタCと離間されている場合には、1つのクラスタCとして扱うものとする。
クラスタ表示は、対象データおよび過去データの双方に基づいて生成されたグラフが表示されている。なお、所定の1つのノードNに対象データおよび過去データの両方が含まれている場合がある。
使用者は、グラフ表示領域Gに表示された所定のノードNをマウスカーソルMで選択することで、選択されたノードNに含まれる内訳情報Bを、内訳情報表示領域Dに表示させることができる。
例えば、選択されたノードNに複数の対象データが含まれる場合には、それぞれの対象データが対応する日付(測定日、データ収集日時)が表示される。なお、選択されたノードNに含まれる対象データのデータ数、データラベルなどの属性情報を、内訳情報表示領域Dに表示させても良い。また、ノードNに含まれる統計量を、内訳情報表示領域Dに表示させても良い。
なお、マウスカーソルMで選択するものは、クラスタCでも良い。その場合には、選択されたクラスタCに含まれる内訳情報Bを、内訳情報表示領域Dに表示させることができる。
色ラベルコンターRは、ノードNの表示色の設定内容が表示される。例えば、正常を示す「A」のラベルLが登録された過去データを含むノードNを黄色で表示し、異常を示す「B」のラベルLが登録された過去データを含むノードNを青色で表示する。このようにすれば、過去データの解析に基づいて、対応付けられたラベルLが識別可能な態様で、過去データを表示することができる。
なお、使用者が確認を希望するノードNごとに色分けをしても良いし、それぞれのノードNに対応する周波数で色分けをしても良い。また、例えば、回転機2の分解点検が行われたものと、分解点検が行われていないものというラベルをデータに付けておき、色分けをしても良い。また、解析時に影響を受けたパラメータごとにノードNの色分けしても良い。
また、クラスタ表示では、注目されるデータが異常の可能性が高いと判定された場合は、特異ノード強調表示機能で、異常を有する対象データを含むノードNをGUI上で強調表示(異常可能性表示)させることができる。
図13に示すように、データ解析部18で生成され、TDA Mapperの結果である時系列表示がディスプレイに表示される。なお、時系列表示の制御は、結果表示制御部21の時系列表示制御部40にて行われる。
この時系列表示では、クラスタ表示にてグラフ化されていたデータが時系列順に表示される。例えば、時系列表示には、モニタリングされた日付(測定日、データ収集日時)の列K1と、それぞれ日付に対応するノードNの列K2と、それぞれノードNに対応するクラスタCの列K3と、それぞれのノードNまたはクラスタCの異常可能性を示す列K4とが設けられている。
使用者は、この時系列表示を参照することで、それぞれのノードNまたはクラスタCの異常可能性の有無を表示することができる。なお、例えば、正常を示す「A」のラベルLが登録された過去データを含むノードNに対応して「正常」を表示し、異常を示す「B」のラベルLが登録された過去データを含むノードNに対応して「異常」を表示する。
つまり、結果表示制御部21は、対象データの解析に基づいて、異常の有無を識別可能な態様(例えば、時系列表示)で対象データを表示する。さらに、過去データの解析に基づいて、対応付けられたラベルLが識別可能な態様で過去データを表示する。このようにすれば、過去データの表示態様を参照して、対象データの異常の有無を識別することができる。
なお、クラスタ表示(図12参照)と時系列表示(図13参照)とは、使用者の操作により任意に切り換えることができる。
異常原因分析部23では、異常データの特徴量抽出機能を用いて、異常可能性があると判定されたデータの特徴量を抽出する。
ここで、分析対象と分析したデータを周波数成分データとした場合について説明する。例えば、異常と判定されたデータと、正常ラベルがついたデータに関して、各周波数成分の差を算出し、各周波数成分の差が大きい周波数を抽出する。この抽出した周波数と周波数成分の差を異常データの特徴量とする。差の大きい周波数成分の定義は、予め設定した閾値を超えるもの、または、上位の数%の差を抽出するなどの任意の抽出方法を選択することができる。そして、抽出した特徴量(周波数、周波数成分の差)を異常原因分析部23に入力する。
本実施形態では、異常原因分析部23に特徴量が入力されることで、異常原因への特徴量の影響度が分かり、異常原因を推定することが可能となる。また、異常検知に必要なパラメータチューニングを自動化することで、異常検知を人手によるチューニングを行わないで、異常原因を推定することが可能となる。また、異常検知の結果から異常の原因を推定することが可能となる。
次に、回転機2の異常診断方法について図14のフローチャートを用いて説明する。なお、図1から図13を適宜参照する。
図14に示すように、まず、ステップS11において、異常診断システム1の使用者は、回転機2に点検用センサ3を取り付ける。
次のステップS12において、使用者は、回転機2に取り付けた点検用センサ3を用いて、回転機2の運転中の状態をモニタリングしてモニタリングデータを得る。
次のステップS13において、使用者は、点検用センサ3を用いて取得したモニタリングデータを、ユーザ端末5を用いて異常診断システム1のモニタリングデータベース11に入力する。
次のステップS14において、使用者は、診断対象となる回転機2のプロセスデータを、ユーザ端末5を用いて異常診断システム1のプロセスデータベース12に入力する。
次のステップS15において、使用者は、診断対象となる回転機2のスペックデータまたはプロセスデータを、ユーザ端末5を用いて異常診断システム1のスペックデータベース13に入力する。
次のステップS16において、使用者は、診断対象となる回転機2の異常原因データを、ユーザ端末5を用いて異常診断システム1の異常原因データベース14に入力する。
次のステップS17において、使用者は、異常原因データの設定であって、解析処理ユニット10の解析に基づいて抽出され得る対象データの特徴量と、回転機2の異常原因との関係性の設定を行う。つまり、異常原因データベース14には、抽出され得る対象データの特徴量と異常原因との対応関係が予め記憶される。
次のステップS18において、使用者は、異常診断システム1を用いて、モニタリングデータに含まれる対象データまたは過去データの解析を行う。
次のステップS19において、使用者は、解析結果を異常診断システム1のディスプレイに解析結果を表示させる所定の操作を行う。使用者は、例えば、クラスタ表示の画面を表示させる操作、時系列表示の画面を表示させる操作、ノードNまたはクラスタCの選択をする操作、異常原因分析結果を示す画面を表示させる操作を行う。
次のステップS20において、使用者は、異常診断システム1のディスプレイに表示された情報に基づいて、回転機2の異常の有無の識別を行う。
次のステップS21において、使用者は、異常診断システム1のディスプレイに表示された情報に基づいて、回転機2の異常原因の特定を行う。そして、異常診断方法を終了する。
次に、解析処理ユニット10が実行する異常診断処理について図15のフローチャートを用いて説明する。なお、図1から図13を適宜参照する。
図15に示すように、まず、ステップS31において、解析処理ユニット10のデータ取得部15は、モニタリングデータベース11に記憶されたモニタリングデータを取得する。ここで、プロセスデータベース12に記憶されたプロセスデータ、およびスペックデータベース13に記憶されたスペックデータの取得を行っても良い。
次のステップS32において、解析処理ユニット10の処理設定部17の前処理条件設定部34は、データ前処理部16にて実行される前処理条件の設定を行う。ここで、パラメータチューニング部19の特定次元数設定部36は、前処理条件設定部34の設定に基づいて、対象データまたは過去データの特定次元数の設定を行う。また、処理設定部17のアルゴリズム設定部35は、データ解析部18で用いられるアルゴリズムの設定を行う。アルゴリズムとしては、例えば、TDA Mapperを用いる。
次のステップS33において、解析処理ユニット10のデータ前処理部16は、データ前処理を実行する。
次のステップS34において、解析処理ユニット10のデータ解析部18は、データ解析処理を実行する。ここで、特定次元数に調整された対象データを、特定次元数のデータを扱うアルゴリズムを用いて解析する。さらに、特定次元数に調整された過去データを、アルゴリズムを用いて解析する。
なお、アルゴリズムとしてTDA Mapperを用いる場合には、データ解析部18のデータ解析処理において、データ入力処理とマッピング処理とカバー化処理とクラスタリング・ノード化処理とグラフ化処理が実行される。
次のステップS35において、解析処理ユニット10の結果整理部20は、解析結果整理処理を実行する。ここで、データ解析部18により得られたデータの解析結果が最適なものであるか否かを整理する。
次のステップS36において、結果整理部20は、解析結果が最適であるか否かを判定する。なお、最適であるか否かの判定は、例えば、対象データの表示が異常の有無を識別可能な態様になるか否かに基づいて設定される。ここで、解析結果が最適である場合(ステップS36がYES)は、後述のステップS38に進む。一方、解析結果が最適でない場合(ステップS36がNO)は、ステップS37に進む。
ステップS37において、解析処理ユニット10のパラメータチューニング部19は、パラメータチューニング処理を実行する。ここで、データ解析部18で解析を行うときに用いる各種設定または解析用のアルゴリズムの設定のチューニングが行われる。そして、前述のステップS33に戻る。つまり、本実施形態では、対象データの表示が異常の有無を識別可能な態様になるように特定次元数の設定を繰り返す。
ステップS38において、解析処理ユニット10の異常原因分析部23は、異常原因分析処理を実行する。ここで、特徴量抽出部43は、データ解析部18で解析された後の対象データの特徴量を抽出する。また、異常原因推定部44は、特徴量抽出部43にて抽出された特徴量に基づいて、異常原因を推定し、その異常原因を診断可能な態様で対象データを表示可能な状態になるようにデータを整理する。
次のステップS39において、解析処理ユニット10の表示調整部22は、表示調整処理を実行する。ここで、表示調整部22は、使用者の操作に基づいて、ディスプレイに表示される画面の制御を行う。そして、異常診断処理を終了する。
次に、データ前処理部16が実行するデータ前処理について図16のフローチャートを用いて説明する。なお、図1から図13を適宜参照する。
図16に示すように、まず、ステップS41において、データ前処理部16の対象データ調整部26は、モニタリングデータに含まれる診断の対象となる対象データの次元数が特定次元数になるように対象データを調整する処理を行う。
次のステップS42において、データ前処理部16の過去データ調整部27は、モニタリングデータに含まれる異常の有無が既知の過去データの次元数が特定次元数になるように過去データを調整する処理を行う。
次のステップS43において、データ前処理部16の欠損情報補間部28は、対象データを特定次元数にしたときに、それぞれの次元数の情報のうち一部の次元数の情報が欠損する場合に、その欠損した情報を補間する処理を行う。
次のステップS44において、データ前処理部16のデータラベル付与部29は、特定次元数に調整された過去データに、異常の有無を識別可能なラベルLを対応付ける処理を行う。
次のステップS45において、データ前処理部16は、その他の処理を実行する。例えば、データスケーリング部30がデータを規格化する。スペクトル解析部31がスペクトル成分を算出する。振幅値算出部32が振幅値を算出する。データフォーマット変換部33がデータフォーマットを変換する。そして、データ前処理を終了する。
次に、表示調整部22が実行する表示調整処理について図17のフローチャートを用いて説明する。なお、図1から図13を適宜参照する。
図17に示すように、まず、ステップS51において、表示調整部22は、ディスプレイにクラスタ表示(グラフ)の画面が表示中であるか否かを判定する。ここで、グラフが表示中でない場合(ステップS51がNO)は、後述のステップS54に進む。一方、グラフが表示中である場合(ステップS51がYES)は、ステップS52に進む。
ステップS52において、表示調整部22のノード選択受付部41は、クラスタ表示された画面上のノードNまたはクラスタCの選択を受け付けたか否かを判定する。ここで、ノードNまたはクラスタCの選択を受け付けていない場合(ステップS52がNO)は、ステップS54に進む。一方、ノードNまたはクラスタCの選択を受け付けた場合(ステップS52がYES)は、ステップS53に進む。
ステップS53において、表示調整部22の対象情報表示部42は、選択されたノードNまたはクラスタCに含まれる対象データまたは過去データの内訳情報B(対象情報)を内訳情報表示領域Dに表示する処理を行う。そして、ステップS54に進む。
ステップS54において、表示調整部22は、時系列表示の画面をディスプレイに表示させる操作を受け付けたか否かを判定する。ここで、時系列表示の表示操作の受け付けがない場合(ステップS54がNO)は、後述のステップS56に進む。一方、時系列表示の表示操作の受け付けがある場合(ステップS54がYES)は、ステップS55に進む。
ステップS55において、表示調整部22の処理に基づいて、結果表示制御部21の時系列表示制御部40が、時系列表示の画面をディスプレイに表示させる。この時系列表示制御部40は、対象データをモニタリングされた時系列順に表示し、かつ対象データが含まれるノードを識別可能な態様で表示する。なお、時系列表示制御部40は、過去データの解析に基づいて、対応付けられたラベルLが識別可能な態様で過去データを表示する。例えば、異常可能性を示す表示を行う(図13参照)。そして、ステップS56に進む。
ステップS56において、表示調整部22は、クラスタ表示の画面をディスプレイに表示させる操作を受け付けたか否かを判定する。ここで、クラスタ表示の表示操作の受け付けがない場合(ステップS56がNO)は、後述のステップS58に進む。一方、クラスタ表示の表示操作の受け付けがある場合(ステップS56がYES)は、ステップS57に進む。
ステップS57において、表示調整部22の処理に基づいて、結果表示制御部21のクラスタ表示制御部39が、クラスタ表示の画面をディスプレイに表示させる。このクラスタ表示制御部39は、対象データの解析に基づいて、異常の有無を識別可能な態様で対象データを表示する。なお、クラスタ表示制御部39は、過去データの解析に基づいて、対応付けられたラベルLが識別可能な態様で過去データを表示する。例えば、異常可能性に応じてノードNを色分けして表示する(図12参照)。そして、ステップS58に進む。
ステップS58において、表示調整部22は、異常原因分析結果を示す画面をディスプレイに表示させる操作を受け付けたか否かを判定する。ここで、異常原因分析結果の表示操作の受け付けがない場合(ステップS58がNO)は、後述のステップS60に進む。一方、異常原因分析結果の表示操作の受け付けがある場合(ステップS58がYES)は、ステップS59に進む。
ステップS59において、表示調整部22の処理に基づいて、原因表示制御部25が、異常原因分析結果を示す画面をディスプレイに表示させる。そして、ステップS60に進む。
ステップS60において、表示調整部22は、ディスプレイに表示中の解析結果を示す画面の表示を終了させる操作を受け付けたか否かを判定する。ここで、表示を終了させる操作の受け付けがない場合(ステップS60がNO)は、前述のステップS51に進む。一方、表示を終了させる操作の受け付けがある場合(ステップS60がYES)は、ステップS61に進む。
ステップS61において、表示調整部22の処理に基づいて、結果表示制御部21または原因表示制御部25は、ディスプレイに表示中の解析結果を示す画面の表示を終了する。そして、表示調整処理を終了する。
なお、本実施形態のフローチャートにおいて、各ステップが直列に実行される形態を例示しているが、必ずしも各ステップの前後関係が固定されるものでなく、一部のステップの前後関係が入れ替わっても良い。また、一部のステップが他のステップと並列に実行されても良い。
本実施形態のシステムは、専用のチップ、FPGA(Field Programmable Gate Array)、GPU(Graphics Processing Unit)、またはCPU(Central Processing Unit)などのプロセッサを高集積化させた制御装置と、ROM(Read Only Memory)またはRAM(Random Access Memory)などの記憶装置と、HDD(Hard Disk Drive)またはSSD(Solid State Drive)などの外部記憶装置と、ディスプレイなどの表示装置と、マウスまたはキーボードなどの入力装置と、通信インターフェースとを備える。このシステムは、通常のコンピュータを利用したハードウェア構成で実現できる。
なお、本実施形態のシステムで実行されるプログラムは、ROMなどに予め組み込んで提供される。もしくは、このプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM、CD−R、メモリカード、DVD、フレキシブルディスク(FD)などのコンピュータで読み取り可能な非一過性の記憶媒体に記憶されて提供するようにしても良い。
また、このシステムで実行されるプログラムは、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせて提供するようにしても良い。また、このシステムは、構成要素の各機能を独立して発揮する別々のモジュールを、ネットワークまたは専用線で相互に接続し、組み合わせて構成することもできる。
なお、本実施形態では、異常の有無を識別可能な態様として、位相的データ解析を用いたクラスタ表示を例示しているが、その他の態様であっても良い。例えば、異常の有無を識別可能な態様としては、階層型のクラスタ解析に基づく階層型のクラスタ表示であっても良いし、非階層型のクラスタ解析に基づく非階層型のクラスタ表示であっても良い。非階層型のクラスタ解析では、例えば、K−means法などの手法を用いても良い。
以下、図18、図19、図20を用いて階層型クラスタリングを用いた場合の変形例を説明する。
例えば、階層型クラスタリングがクラスタリングされていないN個の入力データについて、類似度の高い順に融合して次第に大きなクラスタを作る。そして、最終的にはN個データを1つのクラスタに統合していく手法で、データまたはクラスタを統合していく過程を、樹状図と呼ばれる木の形で表現する。
ここで、階層型クラスタリングのパラメータとしては、データの類似度を測る尺度と方法がある類似度を測る尺度は、ユーグリッド距離、ミンコフスキー距離などがある。また、クラスタ間の距離の測定方法としては、ウォード法または群平均法などがある。これらのパラメータは、パラメータチューニング部19で最適化される。
また、パラメータチューニングを行い最適化する際の指標としては、例えば、クラスタの距離とコーフエン行列との相関係数(コーフエン相関係数)がある。
図18は、階層型クラスタによる表示結果を示している。例えば、データ前処理部16で処理した分析対象データを、データ解析部18に入力し、階層型クラスタリング手法を用いて分析し、分析結果を表示出力部9で表示させる。その結果のうち、クラスタ表示した結果である。ここでは、k次元からなる57個の振幅値データを入力している。57個の振幅値データのうち、正常の範囲にあるものと、異常を示すものとがある。
例えば、図18において、個々の個別のデータをノードNとすると、複数のノードN、または、少なくとも1つのノードNが含まれるノード群をクラスタCと定義することができる。この階層型クラスタリングを用いた場合も、前述のTDAと同様に、正常なデータを含むノードNのクラスタC5,C6と、異常なデータを含むノードNのクラスタC7とに分けて表示させることが可能である。
図19に示すように、階層型クラスタリングでは、各種データ、クラスタが融合されていく過程においては、正常データは、平均的な分岐の態様となる。これに対して図20に示すように、異常データは、上層部において分岐されて表示される。なお、前述の説明は、正常データ数が異常データ数に対して多い場合を例示しているが、正常データ数が異常データ数に対して少ない場合も有り得る。
以上説明した実施形態によれば、特定次元数に調整された対象データを、特定次元数のデータを扱うアルゴリズムを用いて解析するステップを含むことにより、エンジニアの技能に依存せずに診断を行うことができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更、組み合わせを行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。