def sgd_optimize_logreg(datasets): x = T.matrix('x') # the data is presented as rasterized images y = T.ivector('y') # the labels are presented as 1D vector of [int] labels classifier = LogisticRegression(input=x, n_in=28 * 28, n_out=10) trainer = SGDTrainer(classifier, datasets) trainer.build(x, y) return trainer.train()
def sgd_optimize_mlp(datasets): x = T.matrix('x') # the data is presented as rasterized images y = T.ivector('y') # the labels are presented as 1D vector of [int] labels classifier = MLP(input=x, n_in=28 * 28, n_out=10, n_hiddens=[1500]) trainer = SGDTrainer(classifier, datasets, learning_rate=0.01, L1_reg=0.0001, L2_reg=0.001, n_epochs=500, batch_size=20) trainer.build(x, y) return trainer.train()
def sgd_optimize_lenet(datasets): x = T.matrix('x') # the data is presented as rasterized images y = T.ivector('y') # the labels are presented as 1D vector of [int] labels classifier = LeNet(input=x, nkerns=[20, 50], filter_shapes=[[5, 5], [5, 5]], image_shapes=[[28, 28], [12, 12]], batch_size=500, n_hidden=[500], n_out=10) trainer = SGDTrainer(classifier, datasets, learning_rate=0.01, L1_reg=0.0001, L2_reg=0.001, n_epochs=100, batch_size=classifier.batch_size) trainer.build(x, y) return trainer.train()