Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import keras
- from keras.layers import Input, Conv2D, MaxPool2D, Dense, Flatten, Dropout, Reshape, UpSampling2D
- from keras.models import Model
- from keras.datasets import mnist
- from sklearn.datasets import fetch_olivetti_faces
- from tensorflow.keras.utils import to_categorical
- import numpy as np
- import matplotlib.pyplot as plt
- import seaborn as sns
- from sklearn.model_selection import train_test_split
- (x_train, y_train), (x_test, y_test) = mnist.load_data()
- x_train = np.reshape(x_train, (len(x_train), 28, 28, 1))
- x_test = np.reshape(x_test, (len(x_test), 28, 28, 1))
- x_train / 255.0
- x_test / 255.0
- y_train = np.reshape(y_train, (len(y_train), 1, 1, 1))
- y_test = np.reshape(y_test, (len(y_test), 1, 1, 1))
- y_train.shape
- input_layer = Input(shape=(28, 28, 1))
- conv1 = Conv2D(256, (1,1), activation='relu')(input_layer)
- pool1 = MaxPool2D()(conv1)
- conv2 = Conv2D(128, (1,1), activation='elu')(pool1)
- pool2 = MaxPool2D()(conv2)
- encoded = Dense(1,activation='softmax')(pool2)
- input_layer2 = Input(shape=(28, 28, 1))
- x = Conv2D(128, (1,1), activation='relu')(input_layer2)
- x = MaxPool2D()(x)
- x = Conv2D(256, (1,1),activation='elu')(x)
- x = MaxPool2D()(x)
- decoded = Dense(1, activation='softmax')(x)
- encoder = Model(input_layer, encoded)
- decoder = Model(input_layer2, decoded)
- autoencoder = Model(input_layer, decoder(encoder(input_layer)))
- autoencoder.compile(optimizer='adam', loss='binary_crossentropy')
- autoencoder.fit(x_train, y_train, epochs=2,
- batch_size=64, validation_data=[x_test, y_test])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement