予知保全: 畳み込みニューラル ネットワーク (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技術の発展と影響を展望する

ブログ    
ブログ    
ブログ    

推薦する

GPT-4はMITの学位を取得できない、MITの研究チームは「不正行為」と反応したが、ネットユーザーはそれを信じない

数日前、「大規模言語モデルを使用した MIT 数学および EECS カリキュラムの調査」と題された論...

...

...

AI市場は2024年までに5000億ドルを超えると予想

インターナショナル・データ・コーポレーション(IDC)が発表した最新の半期ごとの世界人工知能(AI)...

ドイツメディア:EUは人工知能の乱用を制限する法律制定を計画

専門家は、人工知能も気候変動への取り組みにおいて重要な役割を果たすことができると考えている。しかし一...

...

...

マッキンゼーの「2020年人工知能の現状」レポート:AIは企業の収益成長に大きく貢献した

[[354345]]マッキンゼーの最新の AI 調査レポート「2020 年の AI の現状」によると...

マイクロソフト、物議を醸す顔認識機能を廃止へ

マイクロソフトは、動画や写真から対象者の感情を識別できると主張するツールを含む、人工知能による顔分析...

...

フロントエンドの一般的な暗号化アルゴリズムについてお話ししましょう

情報セキュリティの重要性が高まるにつれ、さまざまなフロントエンド暗号化がますます重要になっています。...

世界初、AIによる豚のクローン作成に成功!南開大学がやった

超AI制御により、機械が自動的に人間の胚のクローンを作成し、培養用の栄養プールに送り込み、人間のバッ...

...

ConvNet と Transformer のどちらが優れていますか? Metaが4つの主要な視覚モデルを評価、LeCunが好評価

特定のニーズに基づいてビジュアル モデルを選択するにはどうすればよいでしょうか? ConvNet/V...

週刊「ニュース速報」 | AIエリートは数百万ドルを稼ぐ? !李開復氏がAI業界のチャンスを明かす!

AIエリートが100万以上稼ぐ!マスク氏が設立したOpenAIが誤って給与情報を公開4月23日のニ...