予知保全: 畳み込みニューラル ネットワーク (CNN) を使用したセンサー障害の検出

予知保全: 畳み込みニューラル ネットワーク (CNN) を使用したセンサー障害の検出

[[266977]]

機械学習では、予知保全のトピックが時間の経過とともにますます人気が高まっています。

この記事では、分類の問題について見ていきます。 Keras を使用して畳み込みニューラル ネットワーク (CNN) モデルを作成し、その結果を直感的に解釈できるようにします。

データセット

私は、常緑の UCI リポジトリ (油圧システムの状態監視) から機械学習データセットを取得することにしました。

テストベンチは、オイルタンクを介して接続された一次作業回路と二次冷却およびフィルタリング回路で構成されています。システムは、一定の負荷サイクル(持続時間 60 秒)を周期的に繰り返し、4 つの油圧コンポーネント(クーラー、バルブ、ポンプ、アキュムレーター)の状態を定量的に変化させながら、圧力、体積流量、温度などのプロセス値を測定します。

パイプ内の流体の変化により、定期的にパルスを受信する油圧パイプシステムを想像することができます。この現象は 60 秒間続き、異なる Hz 周波数のセンサーを使用して測定されます (センサー物理量単位サンプリング レート、PS1 圧力バー、PS2 圧力バー、PS3 圧力バー、PS4 圧力バー、PS5 圧力バー、PS6 圧力バー、EPS1 モーター電力、FS1 体積流量、FS2 体積流量、TS1 温度、TS2 温度、TS3 温度、TS4 温度、VS1 振動、VS1 振動、CE 冷却効率、CP 冷却電力、SE 効率係数)。

私たちの目標は、パイプラインを構成する 4 つの油圧コンポーネントの状態を予測することです。これらのターゲット条件値は、整数値(エンコードしやすい)の形式で注釈が付けられ、各サイクルで特定のコンポーネントが故障に近いかどうかを示します。

データの読み取り

各センサーによって測定された値は、特定の txt ファイルで利用でき、各行は時系列形式で 1 ​​つの期間を占めます。

私は、1 Hz (1 サイクルあたり 60 回の観測) で測定する温度センサー (TS1、TS2、TS3、TS4) からのデータを考慮することにしました。

  1. ラベル = pd.read_csv( 'profile.txt' 、 sep= ' ' 、 ヘッダー=なし)
  2. データ = [ 'TS1.txt' , 'TS2.txt' , 'TS3.txt' , 'TS4.txt' ]
  3. df = pd.データフレーム()
  4. 読む データを連結する
  5. データ内のtxtの場合:
  6. read_df = pd.read_csv(txt, sep= ' ' , ヘッダー=なし)
  7. df = df.append(read_df)
  8. #スケールデータ
  9. 定義スケール(df):
  10. (df - df.mean(axis=0))/df.std(axis=0)を返します
  11. df = df.apply(スケール)

最初の期間では、温度センサーから次の時系列を取得します。

TS1 TS2 TS3 TS4 からのセル1の温度シリーズ

機械学習モデル

興味深い特徴と明らかでない相関関係を捉えるために、1D 畳み込みニューラル ネットワーク (CNN) を採用することにしました。このタイプの機械学習モデルは、センサーの時系列を分析するのに適しており、短い固定長セグメントでデータの再形成を強制します。

Keras の Web サイトで説明されているように、畳み込みニューラル ネットワーク (CNN) を選択し、パラメータを更新しました。この機械学習モデルは、配列形式の温度時系列(各サイクルの t_period x n_sensor)のみを入力として受け取り、冷凍要素の状態を分類するために構築されています。

  1. n_センサー、t_期間 = 4、60
  2. モデル = シーケンシャル()
  3. モデルを追加します(Conv1D(100, 6, activation= 'relu' , input_shape=(t_periods, n_sensors)))
  4. モデルを追加します(Conv1D(100, 6, アクティベーション = 'relu' ))
  5. モデルを追加する(MaxPooling1D(3))
  6. モデルを追加します(Conv1D(160, 6, アクティベーション = 'relu' ))
  7. モデルを追加します(Conv1D(160, 6, アクティベーション = 'relu' ))
  8. モデルを追加します(GlobalAveragePooling1D())
  9. model.add(ドロップアウト(0.5))
  10. model.add (Dense(3, activation= 'softmax' ))
  11. model.compile(損失= 'categorical_crossentropy' 、オプティマイザー= 'adam' 、メトリック=[ 'accuracy' ])
  12. BATCH_SIZE、EPOCHS = 16、10
  13. 履歴 = model.fit(X_train, y_train, バッチサイズ=BATCH_SIZE,
  14. エポック=EPOCHS、検証分割=0.2、詳細=1)

この場合、わずか 10 エポックで驚くべき結果を達成することができました。

機械学習モデルは、テストデータを予測する際に 0.9909 の精度を達成しました。

この方法により、システムで起こり得る障害を検出し、防止することができるからです。

結果を視覚化する

システムの状態を全体的に把握したい場合は、グラフで表すと役立つかもしれません。これを実現するために、上で構築した畳み込みニューラル ネットワーク (CNN) を再利用してデコーダーを作成し、各サイクルの時系列から特徴を抽出します。 keras を使用すると、これを 1 行の Python コードで実現できます。

  1. emb_model = モデル(入力=model.input、出力=model.get_layer( 'global_average_pooling1d_1' ) .output )

新しいモデルは、分類タスクで使用される NN と同じ形式 (各単一サイクルの t_period x n_sensor) で入力データを受け取り、相対次元 (各サイクルの 160 個の埋め込み変数) を持つ GlobalAveragePooling1D レイヤーからの埋め込みの形式で「予測」を返すデコーダーです。

エンコーダーを使用してテスト データの予測を計算し、次元を削減する手法 (PCA や T-SNE など) を適用して結果をプロットすると、次のことがわかります。

  1. tsne = TSNE(n_components=2、ランダム状態=42、n_iter=300、パープレキシティ=5)
  2. T = tsne.fit_transform(テストサイクルemb)
  3. 図、ax = plt.subplots(図サイズ=(16,9))
  4. colors = {0: '赤' 、1: '青' 、2: '黄' }
  5. ax.scatter(TT[0], TT[1], c=[colors[i] for i in y_test])
  6. plt.show()

テストデータの再帰埋め込みのためのTSNE

各ポイントはテスト セット内のサイクルを表し、相対的な色は Cooler 条件のターゲット クラスを表します。冷却コンポーネントの目標値間の違いが明確に定義されていることがわかります。このアプローチは、当社のモデルのパフォーマンスを示す重要な指標です。

やっと

この記事では、CNN を使用した時系列分類タスクの形で予測メンテナンスの問題に対処します。結果を直感的に表現します。

<<:  機械学習と脳科学が次の10年間の教育発展をリードする

>>:  今後5年間のAI技術の発展と影響を展望する

ブログ    
ブログ    
ブログ    

推薦する

情報理論に基づくキャリブレーション技術により、マルチモーダル機械学習の信頼性が向上

マルチモーダル機械学習は、さまざまなシナリオで目覚ましい進歩を遂げています。しかし、マルチモーダル学...

中国の博士が強化学習を使ってSpaceXのロケットを回収

[[435329]]この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI...

...

...

会話型 AI とは何ですか?

「会話型 AI」という用語には確かに重みがありますが、最終的にはそれがビジネスに実際にどのような影...

...

AI を使って AI を修正しますか?これらの検出ツールを理解する

生成型AI作成ロボットの登場以来、各界はロボットを使って記事や学術論文を書くようになりました。この状...

「人工知能+教育」はどのような機会と課題をもたらすのでしょうか?

人工知能がどのような新しい形で登場するかが話題になっている一方で、教育分野では新たな一連の変化が起こ...

人工知能技術はビッグデータに基づいていますか?

Googleの人工知能AlphaGOが囲碁界の無敗の将軍になって以来、AI(Artificial ...

量子コンピューティングとブロックチェーンの未来

量子コンピューティングはブロックチェーンを破壊するのか、それともより安全にするのか? 01 序文コン...

...

ChatGPT 技術製品の実装: 技術アーキテクチャから実際のアプリケーションまで

導入この共有では、ChatGPTテクノロジー製品の実装についてお話ししたいと思います。技術アーキテク...

Google X 中国博士がロボットシミュレーターSimGANをリリース、ICLR2021が出版

[[407004]]工学部の学生は、さまざまなシミュレーターから切り離すことはできません。シミュレー...

人工知能を理解していないかもしれませんが、次の3つのポイントを知っておく必要があります

人工知能は人間の弱点を補うものであり、人間に代わるものではない多くの人が「人工知能が人間に取って代わ...

人工知能は第4世代に入り、人工直感が開発の次のステップとなる

AI はこれまでに開発された最も強力なテクノロジーの 1 つですが、すでに 4 回の進化を経ています...