def test_cifar(data_path): print 'loading data' dl = CIFAR10DataLoader(cifar_file_path=data_path, load_dtype='float32') dp = LabeledMemoryDataProvider(data_loader=dl, batch_size=batch_size, max_gpu_train_samples=max_gpu_samples, max_gpu_valid_samples=max_gpu_samples, is_test=False, epochwise_shuffle=False, nvalid_samples=5000) opt = optimizers.SGD_Momentum_Optimizer() mlp = MLP(batch_size = batch_size, seed=seed, network_structure=mlp_ns, network_cost=mlp_cost) mlp.fit(data_provider=dp, optimizer=opt, train_epoch=training_epochs, early_stop=10, dump_freq=(50000//100+1)*10, train_mean=dp.get_data_stats(), batch_mean_subtraction=True) mlp.save('alex_cifar_26_model.joblib') # mlp.load('alex_cifar_26_model.joblib') # f = open(os.path.join(data_path,'test_batch'), 'rb') data = cPickle.load(f) f.close() test_set = data['data'] test_y = data['labels'] test_set = numpy.asarray(test_set, dtype='float32') tm = dp.get_data_stats() test_set -= tm pred = mlp.predict_from_memory_data(test_set) print 'Error: ', numpy.mean(pred!=test_y) dp = LabeledMemoryDataProvider(data_loader=dl, batch_size=batch_size, max_gpu_train_samples=max_gpu_samples, max_gpu_valid_samples=max_gpu_samples, is_test=True, epochwise_shuffle=False, nvalid_samples=0) pred = mlp.predict_from_data_provider(dp, train_mean=tm, batch_mean_subtraction=True) print 'Error: ', numpy.mean(pred!=test_y)
def test_finetune(): dl = MNISTDataLoader('/data/Research/datasets/mnist/mnist.pkl') dp = LabeledMemoryDataProvider(data_loader=dl, batch_size=batch_size, max_gpu_train_samples=max_gpu_samples, max_gpu_valid_samples=max_gpu_samples, is_test=False, epochwise_shuffle=False, nvalid_samples=10000) opt = optimizers.SGD_Rms_Optimizer() init_params = hickle.load('testmodel_ae.joblib') mlp = MLP(batch_size = batch_size, seed=seed, network_structure=mlp_ns, network_cost=mlp_cost, init_params=init_params) mlp.fit(data_provider=dp, optimizer=opt, train_epoch=finetune_epochs, early_stop=False, dump_freq=(50000//100+1)*10) mlp.save('mnist_mlp_model.joblib') f = open('/data/Research/datasets/mnist/mnist.pkl', 'rb') _, _, test_set = cPickle.load(f) f.close() pred = mlp.predict_from_memory_data(test_set[0]) print 'Error: ', numpy.mean(pred!=test_set[1]) dp = LabeledMemoryDataProvider(data_loader=dl, batch_size=batch_size, max_gpu_train_samples=max_gpu_samples, max_gpu_valid_samples=max_gpu_samples, is_test=True, epochwise_shuffle=False, nvalid_samples=0) pred = mlp.predict_from_data_provider(dp) print 'Error: ', numpy.mean(pred!=test_set[1])