高周波エンジニアのためのAI・機械学習入門(GPU編26)異常検知として、良品のみで学習して不良品を見つける畳み込みオートエンコーダー(Convolutional Autoencoder)をPythonとKerasでバンドパスフィルタを題材にやってみる。
前回はDNN系のオートエンコーダをやってみた。今回はCNN系のをやってみよう。
コードはこちら。
import os
os.environ["KERAS_BACKEND"] = "jax"
import keras
import numpy as np
import matplotlib.pyplot as plt
from jax import config
config.update("jax_enable_x64", False)
plt.rcParams['font.family'] = 'Noto Sans CJK JP'
data_label = np.load("G_NG.npz")
data = data_label["data"].reshape(-1,200,5,1)
label = data_label["label"]
# GとNGを分割
g_data = data[label[:, 0] == 1]
ng_data = data[label[:, 0] == 0]
# Convolutional Autoencoder
inputs = keras.Input(shape=(200, 5, 1))
x = keras.layers.Conv2D(64, kernel_size=(10, 2), activation="relu", padding="same")(inputs)
x = keras.layers.Conv2D(32, kernel_size=(10, 2), activation="relu", padding="same")(x)
x = keras.layers.Conv2D(16, kernel_size=(10, 2), activation="relu", padding="same")(x)
x = keras.layers.Conv2D(32, kernel_size=(10, 2), activation="relu", padding="same")(x)
x = keras.layers.Conv2D(64, kernel_size=(10, 2), activation="relu", padding="same")(x)
outputs = keras.layers.Conv2D(1, kernel_size=(10, 2), activation="linear", padding="same")(x)
model = keras.Model(inputs=inputs, outputs=outputs)
model.compile(loss = 'mean_squared_error' ,optimizer=keras.optimizers.Adam())
model.summary()
# 学習
epochs = 1000
keras.utils.set_random_seed(1)
history = model.fit(
g_data, g_data,
batch_size=128,
epochs=epochs,
validation_split=0.15,
verbose=1
)
# 予測
g_pred = model.predict(g_data)
ng_pred = model.predict(ng_data)
# MSEの計算
loss = keras.losses.MeanSquaredError(reduction = "none")
# GとNGのMSEを計算
ng_accuracy = loss(ng_data, ng_pred).mean(axis=1).mean(axis = 1)
g_accuracy = loss(g_data, g_pred).mean(axis=1).mean(axis = 1)[:ng_accuracy.shape[0]]
# MSEの分布の可視化
plt.figure(figsize=(10, 6))
plt.hist(np.log10(ng_accuracy), bins=50, alpha=0.5, label="NG")
plt.hist(np.log10(g_accuracy), bins=50, alpha=0.5, label="G")
plt.legend()
plt.xlabel("log10(MSE)")
plt.ylabel("Frequency")
plt.title("Distribution of MSE for G and NG")
plt.show()
|
良品で予測したときの誤差と、不良品で予測した時の誤差をヒストグラムにしたものが出てくる。
重なっている部分はあるものの、閾値を-6.42とかにすると不良品が検知できそうだ。なるほど。
« 高周波・RFニュース 2026年5月29日 Qorvoが5G向け広帯域高アイソレーションスイッチ発表、BroadcomとSamsungが協業で5GとWi-Fi 8のFWAプラットホーム発表、アンリツが4ch対応のパワーメータ発表、u-bloxがNordicと協業でEdge ML対応モジュール発表など | トップページ | 特別展 北野天神@京都国立博物館を観てきた。国宝の北野天神縁起絵巻(承久本)がすごかった。その他の複数バージョンも展示で話を覚える(耳から蛇、口から柘榴で火とか)。菅原道真が怨霊から学問の神様になった経緯もわかる。源氏の重刀(髭切、膝丸)は写真OKでした。 »
「パソコン・インターネット」カテゴリの記事
- RF Weekly Digest (Gemini 3.5 Flash・Google AI Studio BuildによるAIで高周波・RF情報の週刊まとめアプリ)2026/5/31-6/7(2026.06.07)
- RF Weekly Digest (Gemini 3.1 Pro・Google AI Studio BuildによるAIで高周波・RF情報の週刊まとめアプリ)2026/5/24-5/31(2026.05.31)
- RF Weekly Digest (Gemini 3.1 Pro・Google AI Studio BuildによるAIで高周波・RF情報の週刊まとめアプリ)2026/5/17-5/24(2026.05.24)
- Microsoft 365 Copilot Chat(GPT-5.5 Think Deeper)でサザエさんじゃんけん予測アプリをいろいろな予測アルゴリズムを扱えるように作り直してもらう。5/24は勾配ブースティング系だけがパーを出すと予測、ランダムフォレストやLSTM、マルコフ連鎖などは全てチョキと予想。(2026.05.24)
- ExcelのCopilotのPlanモードで、サザエさんじゃんけんの次回の予測をやってもらう。予測法はいろいろ挙げてもらって推奨のランダムフォレストにしてもらった。次回はチョキと予測(Codexはパーと予測)。(2026.05.21)
「学問・資格」カテゴリの記事
- RF Weekly Digest (Gemini 3.5 Flash・Google AI Studio BuildによるAIで高周波・RF情報の週刊まとめアプリ)2026/5/31-6/7(2026.06.07)
- 高周波・RFニュース 2026年6月4日 Qualcommが6Gウェビナー開催、Next G Allianceが5G ISACイニシアティブ立ち上げ、Keysightが新RFシグナルアナライザ発表、アンリツが5G LTM評価環境構築(2026.06.04)
- 高周波・RFニュース 2026年6月3日 BroadcomがブロードバンドエッジAIポートフォリオ発表、Marvellが102.4Tbpsスイッチ発表、Mini-CircuitsがLTCC・MMICフィルタのカスケード接続解説、ASUSのミニPCにSnapdragon X2 Elite、KeysightとNTTドコモ・NTTが6Gシミュレーション協業(2026.06.03)
- 高周波・RFニュース 2026年6月2日 QualcommがSnapdragon C発表&6G解説記事、アンリツが140Gbaudバイアスティ内蔵 広帯域リニアアンプ発売、SONY Xperia 10 VII分解動画など(2026.06.02)
- RF Weekly Digest (Gemini 3.1 Pro・Google AI Studio BuildによるAIで高周波・RF情報の週刊まとめアプリ)2026/5/24-5/31(2026.05.31)
「日記・コラム・つぶやき」カテゴリの記事
- RF Weekly Digest (Gemini 3.5 Flash・Google AI Studio BuildによるAIで高周波・RF情報の週刊まとめアプリ)2026/5/31-6/7(2026.06.07)
- 高周波・RFニュース 2026年6月4日 Qualcommが6Gウェビナー開催、Next G Allianceが5G ISACイニシアティブ立ち上げ、Keysightが新RFシグナルアナライザ発表、アンリツが5G LTM評価環境構築(2026.06.04)
- 高周波・RFニュース 2026年6月3日 BroadcomがブロードバンドエッジAIポートフォリオ発表、Marvellが102.4Tbpsスイッチ発表、Mini-CircuitsがLTCC・MMICフィルタのカスケード接続解説、ASUSのミニPCにSnapdragon X2 Elite、KeysightとNTTドコモ・NTTが6Gシミュレーション協業(2026.06.03)
- 高周波・RFニュース 2026年6月2日 QualcommがSnapdragon C発表&6G解説記事、アンリツが140Gbaudバイアスティ内蔵 広帯域リニアアンプ発売、SONY Xperia 10 VII分解動画など(2026.06.02)
- RF Weekly Digest (Gemini 3.1 Pro・Google AI Studio BuildによるAIで高周波・RF情報の週刊まとめアプリ)2026/5/24-5/31(2026.05.31)
« 高周波・RFニュース 2026年5月29日 Qorvoが5G向け広帯域高アイソレーションスイッチ発表、BroadcomとSamsungが協業で5GとWi-Fi 8のFWAプラットホーム発表、アンリツが4ch対応のパワーメータ発表、u-bloxがNordicと協業でEdge ML対応モジュール発表など | トップページ | 特別展 北野天神@京都国立博物館を観てきた。国宝の北野天神縁起絵巻(承久本)がすごかった。その他の複数バージョンも展示で話を覚える(耳から蛇、口から柘榴で火とか)。菅原道真が怨霊から学問の神様になった経緯もわかる。源氏の重刀(髭切、膝丸)は写真OKでした。 »



コメント