pythonマシンラーニングライブラリkeras-AutoEncoderセルフコーディング、フィーチャー圧縮


全スタックエンジニア開発マニュアル(著者:栾鵬)
pythonチュートリアルの全解
kerasは深さネットワークを用いて自己符号化を実現し,すなわち各サンプルのn次元特徴に対してkを特徴として表し,符号化圧縮を実現する機能を実現する.特徴選択の機能も実現した.例えば、手書き体は754画素、つまり754個の特徴を含み、2つの特徴で表したい場合.2 Dマトリクスで手書き数字を認識するにはどうすればいいのでしょうか.
セルフエンコーダは無監督の学習です.それは1種の擬人脳の特徴に対して層ごとに抽象的に抽出する過程で、学習過程の中で2点があります:1つは監督学習がなくて、つまり訓練データに対してラベル化の表示を行う必要がなくて、このような学習はデータの内容の組織形式に対する学習で、抽出するのは頻繁に現れる特徴です;二つ目は層ごとに抽象的で、特徴は絶えず抽象的である必要がある.
オートエンコーダー(AutoEncoder)は、自身の高次特徴を用いて自己符号化することができ、自己符号化器も実はニューラルネットワークであり、その入力と出力は一致しており、疎符号化の考え方を借りて、疎の高次特徴を再結合して自己を再構築することを目標としている.
ここでは,手書き読み書きpyファイルと手書きデータファイルを用いた.
参考github:https://github.com/626626cdllp/kears/tree/master/AutoEncoder
import numpy as np
import MNIST
np.random.seed(1337)  # for reproducibility

from keras.datasets import mnist
from keras.models import Model  #     
from keras.layers import Dense, Input
import matplotlib.pyplot as plt

X_train, Y_train = MNIST.get_training_data_set(60000, True,False)  #          , o