Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

診断特徴デザイナーを使用したアンサンブル データの調査と特徴の比較

診断特徴デザイナー アプリを使うと、多機能グラフィカル インターフェイスを使用して、予知保全ワークフローの特徴設計の部分を実行できるようになります。特徴を対話的に設計して比較します。次に、定格システムと故障システムからのデータなど、異なるグループからのデータを区別するために最も適した特徴を決定します。故障に至るまで実行されたデータがある場合、残存耐用期間 (RUL) を決定するのに最も適した特徴はどれかを評価することもできます。最も効果的な特徴が、最終的に故障の診断と予知のための状態インジケーターとなります。

次の図は、予知保全のワークフローと診断特徴デザイナーの機能との関係を示しています。

End-to-End workflow for Predictive Maintenance. The diagram on the top illustrates the general workflow. From left to right, the phases are "Acquire Data", "Preprocess Data", "Develop Detection or Prediction Model", and "Deploy and Integrate". The "Develop Detection or Prediction Model" block contains two lower level phases, "Identify "Condition Indicators" and "Train Models". The diagram on the bottom illustrates the workflow for Diagnostic Feature Designer. This workflow overlaps the "Preprocess Data" and Identify Condition Indicators" phases of the general workflow. The phases are "Clean up and Format Data", "Import Data", "Process Data", "Extract Features","Rank Features", "Export Top Features" and "Generate Code". The rightmost block is the next step after the app workflow, Classification Learner.

アプリはアンサンブル データを処理します。アンサンブル データには、類似した複数のマシンや、日または年などの時間間隔でデータがセグメント化されている単一のマシンなど、複数メンバーからのデータ測定値が含まれています。データには、アンサンブル メンバーの故障状態または動作状態を記述する状態変数が含まれることもあります。状態変数は通常、"ラベル" と呼ばれる定義済みの値をもちます。データ アンサンブルの詳細については、状態監視と予知保全のためのデータ アンサンブルを参照してください。

アプリ内のワークフローは、既に次の状態にあるデータのインポート時に開始されます。

  • クリーンアップ機能により前処理されている

  • 個々のデータ ファイルか、またはすべてのアンサンブル メンバーを含むか参照する単一のアンサンブル データ ファイルに整理されている

診断特徴デザイナー内のワークフローには、データをさらに処理し、データから特徴を抽出して、これらの特徴を有効度でランク付けするために必要な手順が含まれています。ワークフローの最後に、最も効果的な特徴を選択し、これらの特徴をモデルの学習用に分類学習器アプリにエクスポートします。

ワークフローにはオプションとして、MATLAB® コードの生成手順が含まれます。選択した特徴の計算が記述されたコードを生成すれば、異なる工場にある類似のマシンなど、より多くのメンバーが含まれる、より大規模な測定データセットのために、これらの計算を自動化できます。結果として得られる特徴セットは、分類学習器に対して追加の学習入力を提供します。

診断特徴デザイナーを使った予知保全タスクの実行

次のイメージは、診断特徴デザイナーの基本的な機能を示しています。データと結果を操作するには、図に示されている [特徴デザイナー] タブなどのタブにあるコントロールを使用します。インポートおよび導出した変数、特徴、およびデータセットを [データ ブラウザー] で表示します。結果をプロット領域で可視化します。

統合アンサンブル データセットへのインポート データの変換

アプリを使用する際の最初の手順は、新規セッションを作成してデータをインポートすることです。データは table、timetable、cell 配列、または行列からインポートできます。また、アプリが外部のデータ ファイルを操作できるようにする情報の含まれた、アンサンブル データストアをインポートすることもできます。ファイルには、実際の、またはシミュレートされた時間領域測定データ、スペクトル モデルまたはスペクトル データ、変数名、状態変数と動作変数、および前に生成した特徴を含めることができます。診断特徴デザイナーはメンバー データをすべて単一のアンサンブル データセットに組み合わせます。このデータセットでは各変数が、個々のメンバーの値をすべて含む集合的信号あるいは集合的モデルとなります。

複数のセッションで同じデータを使用するには、初期セッションをセッション ファイルに保存することができます。セッション データには、インポートされた変数と、計算した追加の変数および特徴がすべて含まれます。後続のセッションでセッション ファイルを開き、インポート データや派生データの処理を続けることができます。

データの準備とインポートの詳細については、以下を参照してください。

インポート処理自体の詳細については、診断特徴デザイナーでのアンサンブル データのインポートと可視化を参照してください。

データの可視化

インポートした、または処理ツールで生成した信号やスペクトルをプロットするには、プロット ギャラリーから選択を行います。次の図は一般的な信号トレースを示しています。対話的なプロット ツールによって、ピークの位置やピーク間距離をパン、ズーム、表示したり、アンサンブル内の統計的な変化を表示することができます。プロット内のデータを状態ラベルでグループ化すると、メンバー データがたとえば定格システムと故障システムのどちらに由来するのかを明確に示すことができます。

アプリ内でのプロットの詳細については、診断特徴デザイナーでのアンサンブル データのインポートと可視化を参照してください。

新しい変数の計算

データを調査して特徴抽出のために準備するには、データ処理ツールを使用します。処理ツールを適用するたびにアプリは新しい派生変数を作成し、これに、ソース変数と直近で使用された処理手順の両方を含む名前を付けます。以下に例を示します。

  • 変数 Vibration/Data に対し TSA 処理を適用した場合、新しい派生変数の名前は Vibration_tsa/Data になります。

  • 次に Vibration_tsa/Data からパワー スペクトルを計算した場合、新しい変数の名前は Vibration_ps/SpectrumData になります。この新しい名前には、直近の処理 ps と、変数が信号ではなくスペクトルであるという事実の両方が反映されています。

  • 新しいスペクトルのツールヒントには、処理手順を表わすソース Vibration/Data->Vibration_tsa/Data が表示されます。

すべての信号のデータ処理のオプションには、アンサンブルレベルの統計値、信号残差、フィルター処理、およびパワー スペクトルと次数スペクトルが含まれます。独立変数での同一間隔でメンバー サンプルが発生しない場合は、データを等間隔グリッドに内挿することもできます。

回転機から得たデータの場合、タコメーター出力または定格 rpm に基づいて時間同期信号平均化 (TSA) を実行できます。TSA 信号から、TSA 残差や差分信号などの追加の信号を生成できます。TSA から導出したこれらの信号は、高調波と側波帯を保持または破棄することでシステム内の物理コンポーネントを分離し、それらは多くのギア状態の特徴のベースとなります。

処理オプションの多くは独立して使用できます。オプションには、シーケンスとして実行できる、あるいは実行しなければならないものもあります。前に説明した回転機と TSA 信号に加え、もう 1 つの例として任意の信号の残差生成があります。次のことが可能です。

  1. [アンサンブル統計] を使用して、アンサンブル全体を特徴付ける平均や最大値など、単一メンバーの統計的変数を生成します。

  2. [基準信号の減算] を使用して、アンサンブルレベルの値を減算することで各メンバーの残差信号を生成します。これらの残差は信号間の変動を表し、アンサンブルの残りの部分から逸脱する信号をより明確に示します。

  3. これらの残差信号を、追加の処理オプションあるいは特徴生成のソースとして使用します。

アプリ内におけるデータ処理オプションの詳細については、診断特徴デザイナーでのデータの処理と特徴の調査を参照してください。

計算のオプション

アプリには、信号のセグメント化、アンサンブル データストア値のローカル アプリ内バッファリング、および並列処理のためのオプションが用意されています。

既定では、アプリは一度の操作で信号全体を処理します。信号をセグメント化して個々のフレームを処理することもできます。フレームベースの処理は、アンサンブルのメンバーが非定常動作、時変動作、または周期的動作を示す場合に特に便利です。フレームベースの処理は、特徴値の時系列履歴も提供しているため、予知ランク付けもサポートしています。

メンバー データをアプリにインポートする場合、アプリはローカル アンサンブルを作成し、そのアンサンブルに新しい変数と特徴を書き込みます。代わりにアンサンブル データストア オブジェクトをインポートする場合、アプリは既定で、オブジェクトにリストされている外部ファイルを使用します。アプリによる外部ファイルへの書き込みが望ましくない場合は、アプリでローカル アンサンブルを作成してそこに結果を書き込ませるよう選択できます。望ましい結果を得たなら、アンサンブルを MATLAB ワークスペースにエクスポートできます。そこから、コマンド ラインのアンサンブル データストア関数を使用して、保持する変数と特徴をソース ファイルに書き戻すことができます。アンサンブル データストアの詳細については、状態監視と予知保全のためのデータ アンサンブルを参照してください。

Parallel Computing Toolbox™ がある場合は並列処理を使用できます。アプリは同じ処理をすべてのメンバーに対し個別に行うことが多いため、並列処理によって計算時間を大幅に改善することができます。

特徴の生成

元の信号と導出された信号およびスペクトルから、特徴を計算してその有効性を評価することができます。どの特徴が最もよく機能するか既にわかっている場合もあれば、該当するすべての特徴を使って実験することが望ましい場合もあります。利用できる特徴は、一般的な信号統計から、故障の正確な位置を特定できる特殊なギア状態メトリクス、そして無秩序動作を強調する非線形の特徴までさまざまです。

一連の特徴を計算するたびに、アプリはそれらを特徴テーブルに追加して、メンバー全体を通した値の分布のヒストグラムを生成します。次の図は、2 つの特徴のヒストグラムを示しています。ヒストグラムは、各特徴がデータをどの程度うまく区別するかを表しています。たとえば、図にあるように、状態変数が faultCode で、状態 0 が定格システムのデータ、状態 1 が故障システムのデータを示すとします。ヒストグラムでは、定格状態と故障状態のグループ化の結果、区別の明確なヒストグラム ビンとなるか、あるいは混合したヒストグラム ビンとなるかを確認できます。特徴のヒストグラムすべてを一度に表示したり、どの特徴をアプリがヒストグラム プロットのセットに含めるかを選択することもできます。

Histogram displayed in the app that shows Kurtosis on the left and CrestFactor on the right. FaultCode has the color blue for a value of 0 and orange for a value of 1. The Kurtosis histogram bins are primarily a dark orange that is a mix between blue and orange, indicating intermixing. The CrestFactor bins are either pure blue or pure orange, which indicates good differentiation.

すべての特徴の値を一緒に比較するには、特徴テーブル ビューと特徴トレース プロットを使用します。特徴テーブル ビューには、全アンサンブル メンバーの特徴値すべてのテーブルが表示されます。特徴トレースはこれらの値をプロットします。このプロットは、アンサンブル内における特徴値の逸脱を可視化するもので、ある特徴値が表す特定のメンバーを識別することができます。

アプリでの特徴の生成とヒストグラムの解釈の詳細については、以下を参照してください。

特徴のランク付け

ヒストグラムによって特徴の有効度の初期評価を実行できます。より厳密な相対評価を行うには、専用の統計的手法を使用して特徴をランク付けすることができます。このアプリは "分類ランク付け""予知ランク付け" の 2 つのタイプのランク付けを提供します。

  • 分類ランク付け手法は、定格動作と故障動作間など、データ グループ間の区別をする能力によって特徴にスコアを与え、ランク付けを行います。分類ランク付けには、データ グループを特徴付けるラベルを含む状態変数が必要です。

  • 予知ランク付け手法は、劣化を追跡する能力に基づいて特徴にスコアを与え、ランク付けします。これにより、残存耐用期間 (RUL) の予測が可能になります。予知ランク付けには、故障に至るまで実行されたデータまたは故障進行データの実データまたはシミュレーション データが必要であり、状態変数は使用されません。

次の図は分類ランク付けの結果を示しています。複数のランク付け方法を試行して、各方法の結果を一緒に表示できます。ランク付けの結果によって、効果のない特徴を排除し、派生した変数や特徴を計算する際にパラメーター調整のランク付けの効果を評価することができます。

特徴のランク付けの詳細については、以下を参照してください。

分類学習器への特徴のエクスポート

特徴候補のセットを定義したら、それらを Statistics and Machine Learning Toolbox™ の分類学習器アプリにエクスポートできます。分類学習器は、特徴セットにより各種のモデルをテストする自動化された方法を使用して、データの分類をモデルに学習させます。そうすることで、分類学習器は最適なモデルと最も効果的な特徴を決定します。予知保全の場合、分類学習器を使用する目的は、健全なシステムのデータと故障状態のシステムのデータを区別するモデルを選択し、学習させることです。このモデルを故障の検出と予測のアルゴリズムに組み込むことができます。アプリから分類学習器へのエクスポートの例は、ポンプ診断用の特徴の解析と選択を参照してください。

特徴とデータセットを MATLAB ワークスペースにエクスポートすることもできます。これにより、コマンド ラインの関数や他のアプリを使用して元のアンサンブル データおよび導出したアンサンブル データを可視化し、処理できるようになります。コマンド ラインでは、選択した特徴と変数を、(アンサンブル データストアで参照されるファイルを含めた) ファイルに保存することもできます。

エクスポートの詳細については、診断特徴デザイナーでの特徴のランク付けとエクスポートを参照してください。

特徴に対する MATLAB コードの生成

MATLAB 関数を使用して特徴の計算を自動化するために、選択した特徴のコードを生成します。たとえば、多数のメンバーをもつ大規模な入力データセットがあるものの、考えられる特徴を対話的に調査するときに、まずはそのデータのサブセットを使用してアプリの応答時間を短縮するとします。アプリを使用して最も効果的な特徴を特定したら、コードを生成します。その後、生成されたコードを使用して、それらの特徴に対するものと同じ計算をすべてのメンバーのデータセットに適用できます。メンバー セットが大規模になるほど、学習入力として分類学習器に提示できるサンプル数も多くなります。

Generate Function for Features dialog box that lets you specify the Feature Table name, the ranking algorithm, and the number of top features.

function [featureTable,outputTable] = diagnosticFeatures(inputData)
%DIAGNOSTICFEATURES recreates results in Diagnostic Feature Designer.
%
詳細については、以下を参照してください。

参考

関連する例

詳細