状態モニター

このチュートリアルは、機械からの状態情報の監視と、故障状態の認識および予測の問題に焦点を当てています。

データは架空のシミュレーションから作成され、時間経過とともに測定された複数の連結された系列で構成されています。 各レコードはマシンに関するスナップショットレポートであり、以下のフィールドを含みます:

  • Time 整数。
  • Power 整数。
  • Temperature 整数。
  • Pressure. 0 (正常の場合)、 1 (一時的な圧力警告の場合)。
  • Uptime 最後にサービスされてからの時間。
  • Status 通常は 0で、エラー (101202、または 303) が発生すると、エラー・コードが変更されます。
  • Outcome この時系列に表示されるエラー・コード、またはエラーが発生しなかった場合は 0 。 (これらのコードは、後々使用可能になります)。

次の過程は、ほとんどのデータ・マイニングのプロジェクトにおいて一般的に行われます。

  • データを検証し、関心のある状態の予測または認識に関連する可能性のある属性を特定する。
  • これらの属性を保持するか (既に含まれている場合)、あるいは必要であればこれらの属性を派生させてデータに追加します。
  • 結果として作成されたデータを、ルールとニューラル・ネットの学習に使用します。
  • 独立したテストデータを使用して、訓練済みシステムをテストする。

チュートリアルのプレビュー

< このチュートリアルの手順をプレビューするには、この動画をご覧ください。 動画に表示されているユーザーインターフェースには、若干の違いがある可能性があります。 この動画は、書面によるチュートリアルを補完するものです。 この動画は、このドキュメントに記載されているコンセプトとタスクを視覚的に学ぶ方法を提供します。

チュートリアルを試してみてください

このチュートリアルでは、以下のタスクを完了します:

サンプルモデラーのフローとデータセット

このチュートリアルでは、サンプルプロジェクト内の「 状態監視 」フローを使用します。 使用されるデータファイルは. です cond1n.csv。 以下の図はサンプル・モデラーのフローを示しています。

図1: サンプルモデラーフロー
サンプルモデラーフロー

各時系列データには、正常動作期間の記録に続いて故障に至る期間の記録が連続して存在します。下図に示す通りです:

図2: サンプルデータセット
サンプルデータセット

タスク1: サンプルプロジェクトを開く

サンプルプロジェクトには、いくつかのデータセットとサンプルモデラーフローが含まれています。 サンプルプロジェクトをまだお持ちでない場合は、 チュートリアルのトピックを参照してサンプルプロジェクトを作成してください。 次に、サンプルプロジェクトを開くには以下の手順に従ってください:

  1. ナビゲーションメニュー から、 watsonx[プロジェクト] > ナビゲーション・メニュー [すべてのプロジェクト] を選択します。
  2. SPSS Modeler プロジェクトをクリックしてください。
  3. タブをクリック 資産 すると、データセットとモデラーフローが表示されます。

チェックポイントアイコン 進捗を確認してください

次の画像は資産のアセットタブを示しています。 これで、このチュートリアルに関連するサンプルモデラーフローを使用する準備が整いました。

サンプルプロジェクト

トップへ戻る

タスク2: データ資産を検証する

状態監視モデラーのフローには複数のノードが含まれます。 次の手順に従ってノード データ資産 を検査してください:

  1. タブ 資産 から 状態監視 モデラーフローを開き、キャンバスの読み込みを待ちます。
  2. ノード cond1n.csv をダブルクリックします。 このノードは、プロジェクト内のファイル cond1n.csv を指すノード データ資産 です。
  3. ファイル形式のプロパティを確認してください。
  4. パレットの「 記録操作 」セクションから、 選択ノードをキャンバス上にドラッグします。 ノードにカーソルを合わせ、をクリックし タイトル編集、をに名前 Select (101)を変更します。 データ資産ノード cond1n.csv に接続してください。 Select ノードをダブルクリックし、Conditionに Outcome == 101 値を入力します。
  5. 保存をクリックしてください
  6. 次に、パレットの 「グラフ 」セクションから、 プロットノードをキャンバス上にドラッグします。 ノードにカーソルを合わせ、ボタンを タイトル編集 クリックし、名前を次のように変更します: 時間対 Power 対 温度(101)。 次に、それを Select ノードに接続します。
  7. プロットノードをダブルクリックし、 3Dグラフボタンをクリックしてプロットに第三の軸を追加します。 リストから、3Dグラフに表示するフィールドを選択してください。 この場合: Time, Power および Temperature.
  8. プロットノードにカーソルを合わせ、 実行アイコン をクリックします。
  9. 出力とモデル ペインから、名前が「 Time v.」の出力結果をクリックします。 Power 対 温度 (101) を表示して結果を確認する。

    図3: 時間対 Power 対 温度チャート
    時間対 Power 対 温度チャート

    このグラフは、上昇する温度と時間経過に伴うPower変動における101のエラーを示しています。 他のエラー条件を選択して試行し、他のプロットを表示する。

    これらのグラフに基づくと、 Powerと電力の両方における存在と変化率、ならびに存在と変動の程度は、故障の予測と判別に重要である。 これらの属性は、学習システムを適用する前にデータに追加することができます。

  10. オプション: ユーザーが後でフローを実行する際に発生する可能性のあるエラーを回避するため、Select ノードと Plot ノードを削除してください。

チェックポイントアイコン 進捗を確認してください

以下の図は流れを示しています。 データの準備が整いました。

モデラーフロー

トップへ戻る

タスク3: データの準備

以下のフローはデータの検討結果に基づいて、関連するデータを導出し、障害を予測するための学習を行います。

この例では、製品と共にインストールされるサンプルプロジェクトで利用可能な「 Condition Monitoring 」という名前のフローを使用しています。 データ・ファイルは cond1n.csv および cond2n.csv です。

このフローでは、モデリング用のデータを準備するために複数の導出ノードを使用します。
  • データ・アセット・インポート・ノード。 データ・ファイル cond1n.csv を読み取ります。
  • 圧力の警告 (フィールド作成)。 瞬間の圧力の警告数のカウント。 時間が 0 に戻るとリセットされます。
  • 温度上昇 (フィールド作成)。 温度変化の瞬間的な速度を計算する @DIFF1
  • 電力量上昇 (フィールド作成)。 を使用して瞬時Power変化率 @DIFF1を計算する。
  • 電力量の変動 (フィールド作成)。 これはフラグであり、1 つ前のレコードから該当するレコードになった際に電力量がその変化の方向を変えたときに真 (true) となります。つまり電力量の最高点あるいは最小点を示します。
  • 電力量状態 (フィールド作成)Stable (安定状態) から始まり、電力量の変動が 2 回連続して検出されると、Fluctuating (変動状態) に切り替わります。 5つの時間間隔にわたってPowerフラックスが存在しない場合、またはが Time リセットされた場合にのみ Stable 、に切り替わる。
  • 電力量変化 (フィールド作成)。 過去5つの時間区間における PowerInc 平均値。
  • 温度変化 (フィールド作成)。 過去5つの時間区間における TempInc 平均値。
  • 初期値の破棄 (選択)。 境界点における Power および Temperature の大きな(誤った)ジャンプを回避するため、各時系列の最初のレコードを破棄する。
  • フィールドの破棄 (フィルター)。 レコードを、 StatusOutcomePressure WarningsPowerStatePowerChangeUptime、、に TempChange切り詰める。
  • タイプ。 をターゲット (予測対象 Outcome のフィールド)として定義します。 さらに、測定レベルを 「名義 Outcome 」として定義し、 「連続 Pressure Warnings 」として定義し、「 フラグ」 として PowerState 定義する。

チェックポイントアイコン 進捗を確認してください

以下の図は、 導出ノードを示しています。 モデルをトレーニングする準備が整いました。

PowerChange ノード

トップへ戻る

タスク4: モデルの学習

フローを実行すると、C5.0 ルールとニューラル・ネットワーク (ネット) の学習が行われます。 ネットワークの学習には時間がかかる可能性があるが、妥当な結果を生成するネットワークを保存するために、学習を早期に中断することが可能である。 学習が完了すると、モデルナゲットが生成される:一つはニューラルネットワークを表し、もう一つはルールを表す。

図4: C5.0 およびニューラルネットワークのモデルナゲットプロパティ
C5.0 およびニューラルネットワークのモデルナゲットプロパティ

これらのモデルナゲットにより、システムのテストやモデル結果のエクスポートが可能になります。 この例では、モデルの結果をテストします。 モデルをトレーニングするには、次の手順に従ってください:

  1. 「すべて実行」 をクリックし、 C5.0 とニューラルネットワークモデルの両方を生成します。
  2. 各モデルを表示する。 「結果( C5.0 ) 」モデルをダブルクリックし、 「モデルを表示」 をクリックして結果を確認します。 この手順を結果(ニューラルネット) モデルに対して繰り返します。

チェックポイントアイコン 進捗を確認してください

以下の画像はモデルの結果を示しています。 モデルをテストする準備が整いました。

ルールとニューラルネットワーク

トップへ戻る

タスク5: モデルのテスト

モデルをテストするには、次の手順に従ってください:

  1. ナゲットを再配置し、 Type ノードがニューラルネットナゲットに接続され、それがnugget C5.0 に接続されるようにします。
  2. パレットの 「出力 」セクションから 「分析」 ノードをキャンバス上にドラッグし、ナゲット C5.0 に接続します。
  3. ノード データ資産 をダブルクリックします。
    1. クリックしてください データ資産を変更する
    2. 選択してください データ資産 > cond2n.csv
    3. 選択をクリックしてください。
    4. 保存をクリックしてください。
  4. 分析ノードにカーソルを合わせ、 実行アイコン をクリックします。 そうすると、学習済みのネットワークとルールの精度を表す数値が生成されます。
  5. 出力とモデル ペインから、 Analysis という名前の出力結果をクリックして結果を表示します。
  6. 結果を確認し、各モデルの分析を比較する。

    図 5. 出力表示:[結果]の分析
    出力表示:[結果]の分析

チェックポイントアイコン 進捗を確認してください

以下の図は、完成したフローを示しています。

完了したモデラーフロー

トップへ戻る

サマリー

この例では、故障状態の認識と予測に関連する問題について、機械からの状態情報を監視する方法を示しました。 連のDeriveノードを使用してデータを準備し、その後 C5.0 モデルを構築しました。

次のステップ

他の SPSS® Modeler チュートリアルを試す準備が整いました。