
8.12
ノイズ除去オートエンコーダ
195
noise_factor = 0.50
X_train_AE_noisy = X_train_AE.copy() + noise_factor * \
np.random.normal(loc=0.0, scale=1.0, size=X_train_AE.shape)
X_test_AE_noisy = X_test_AE.copy() + noise_factor * \
np.random.normal(loc=0.0, scale=1.0, size=X_test_AE.shape)
8.12
ノイズ除去オートエンコーダ
元の歪んでいないデータセットの場合と比べると、ノイズを含んだクレジットカード不正データセッ
トに過剰適合してしまった場合の害ははるかに大きい。データセットにノイズが十分に含まれているの
で、ノイズを含んだデータに過剰適合してしまうと、不正トランザクションを通常のトランザクション
と分離することが難しくなるからだ。
これは明らかだろう。われわれが必要としているのは、観測点の大半を再構成できる程度にはデー
タに適合しているが、間違ってノイズまでも再現してしまうほどには適合していないオートエンコーダ
だ。つまり、背後にある構造は学習するが、データ内のノイズは忘れるようなオートエンコーダが欲し
いのだ。
これまでに試してうまくいった方法をいくつか試してみよう。まず、線形活性化関数と
1
層
27
ノード
の隠れ層を持つ未完備オートエンコーダ、次に、