In [ ]:
import pickle
import matplotlib.pyplot as plt
import numpy as np
import sys
sys.path.append("../") # go to parent dir
from autoencoder.mlp import Network
test_data = np.load('test.npy')
train_data = np.load('train.npy')
In [ ]:
batch_size = 32
learning_rate = 0.2
l2 = 0.0
epochs = 5
hidden=100
results = []
for size in [1,2,4,5,8,10,16,20,32,40,60]:
print("Size = {}".format(size * 1000))
mlp = Network(100)
mlp.drop = 0
train = train_data[:, :size * 1000]
mlp.train(train, learning_rate, epochs, batch_size, l2, test_data)
results.append(mlp)
mlp.hidden_weights = np.random.randn(hidden, 784) / np.sqrt(784)
mlp.output_weights = np.random.randn(784, hidden) / np.sqrt(hidden)
mlp.hidden_bias = np.ones(shape=(hidden, 1))
mlp.output_bias = np.ones(shape=(784, 1))
In [ ]:
In [ ]: