pip install pylearn2
python
import numpy as np
import matplotlib.pyplot as plt
from pylearn2.datasets import mnist
from pylearn2.models import mlp
from pylearn2.training_algorithms import sgd
from pylearn2.train import Train
python
trainset = mnist.MNIST(which_set='train', start=0, stop=50000)
validset = mnist.MNIST(which_set='train', start=50000, stop=60000)
testset = mnist.MNIST(which_set='test')
python
input_size = 784
hidden_size = 500
output_size = 10
model = mlp.MLP(layers=[mlp.Sigmoid(layer_name='h', dim=hidden_size),
mlp.Softmax(layer_name='y', n_classes=output_size)],
nvis=input_size)
python
learning_rate = 0.1
batch_size = 100
max_epochs = 10
train_algo = sgd.SGD(learning_rate=learning_rate, batch_size=batch_size)
trainer = Train(model=model, dataset=trainset, algorithm=train_algo,
extensions=None, save_path=None, save_freq=0)
python
trainer.main_loop(max_epochs=max_epochs)
python
test_error = 1.0 - trainer.model.score(testset)
print("Test Error: %f" % test_error)