val_dataset = supervised_dataset.SupervisedDataset(X_val, y_val) train_iterator = train_dataset.iterator(mode='random_uniform', batch_size=64, num_batches=31000) val_iterator = val_dataset.iterator(mode='random_uniform', batch_size=64, num_batches=31000) # Do data augmentation (crops, flips, rotations, scales, intensity) data_augmenter = util.DataAugmenter2(crop_shape=(96, 96), flip=True, gray_on=True) normer = util.Normer3(filter_size=5, num_channels=1) module_list_train = [data_augmenter, normer] module_list_val = [normer] preprocessor_train = util.Preprocessor(module_list_train) preprocessor_val = util.Preprocessor(module_list_val) print('Training Model') for x_batch, y_batch in train_iterator: x_batch = preprocessor_train.run(x_batch) monitor.start() log_prob, accuracy = model.train(x_batch, y_batch) monitor.stop(1 - accuracy) if monitor.test: monitor.start() x_val_batch, y_val_batch = val_iterator.next() x_val_batch = preprocessor_val.run(x_val_batch) val_accuracy = model.eval(x_val_batch, y_val_batch) monitor.stop_test(1 - val_accuracy)
print std train_dataset = supervised_dataset.SupervisedDataset(X_train, y_train) val_dataset = supervised_dataset.SupervisedDataset(X_val, y_val) train_iterator = train_dataset.iterator(mode='random_uniform', batch_size=64, num_batches=31000) val_iterator = val_dataset.iterator(mode='random_uniform', batch_size=64, num_batches=31000) # Create object to local contrast normalize a batch. # Note: Every batch must be normalized before use. normer = util.Normer3(filter_size=5, num_channels=1) module_list = [normer] preprocessor = util.Preprocessor(module_list) print('Training Model') for x_batch, y_batch in train_iterator: #x_batch = preprocessor.run(x_batch) x_batch = (x_batch - mean) / std # loop over batch for i in range(len(x_batch)): # hide patch for an image x_batch[i] = hide_patch(x_batch[i]) monitor.start() log_prob, accuracy = model.train(x_batch, y_batch) monitor.stop(1 - accuracy) # monitor takes error instead of accuracy
test_dataset = supervised_dataset.SupervisedDataset(X_test, y_test) train_iterator = train_dataset.iterator(mode='random_uniform', batch_size=64, num_batches=31000) test_iterator = test_dataset.iterator(mode='random_uniform', batch_size=64, num_batches=31000) # Do data augmentation (crops, flips, rotations, scales, intensity) data_augmenter = util.DataAugmenter2(crop_shape=(96, 96), flip=True, gray_on=True) normer = util.Normer3(filter_size=5, num_channels=1) module_list_train = [data_augmenter, normer] module_list_test = [normer] preprocessor_train = util.Preprocessor(module_list_train) preprocessor_test = util.Preprocessor(module_list_test) print('Training Model') for x_batch, y_batch in train_iterator: x_batch = preprocessor_train.run(x_batch) monitor.start() log_prob, accuracy = model.train(x_batch, y_batch) monitor.stop(1 - accuracy) if monitor.test: monitor.start() x_test_batch, y_test_batch = test_iterator.next() x_test_batch = preprocessor_test.run(x_test_batch) test_accuracy = model.eval(x_test_batch, y_test_batch) monitor.stop_test(1 - test_accuracy)