import logistic import rectified_linear # Layers import fullyconnected_layer import input_layer import mnist_loader_with_pickle as loader if __name__ == '__main__': # Load training data and test data training_data, validation_data, test_data = \ loader.load_data_wrapper() # Create layers input_layer = input_layer.InputLayer(784) input_layer.setData(training_data) full1 = fullyconnected_layer.FullyConnectedLayer( \ 784, 40, logistic.LogisticFunction(), 0.1, 0.9, 0.0) full2 = fullyconnected_layer.FullyConnectedLayer( \ 40, 10, logistic.LogisticFunction(), 0.1, 0.6, 0.0) # Create network net = network.Network() net.appendLayer(input_layer) net.appendLayer(full1) net.appendLayer(full2) # Training start epoch = 50 net.train(epoch, test_data=test_data)
# Layers import fullyconnected_layer import convolution_layer import maxpooling_layer import input_layer import mnist_loader_with_pickle as loader if __name__ == '__main__': # Load training data and test data training_data, validation_data, test_data = \ loader.load_data_wrapper() # Create layers input_layer = input_layer.InputLayer(784) input_layer.setData(training_data[:1000]) conv1 = convolution_layer.ConvolutionLayer( \ (28, 28, 1), (4, 4, 6), (24, 24, 6), logistic.LogisticFunction(), 0.1) pool1 = maxpooling_layer.MaxPoolingLayer( \ (24, 24, 6), (2, 2), (12, 12, 6)) conv2 = convolution_layer.ConvolutionLayer( \ (12, 12, 6), (4, 4, 14), (8, 8, 14), logistic.LogisticFunction(), 0.1) pool2 = maxpooling_layer.MaxPoolingLayer( \ (8, 8, 14), (2, 2), (4, 4, 14)) full1 = fullyconnected_layer.FullyConnectedLayer( \ 224, 100, logistic.LogisticFunction(), 0.1, 1.0, 0.0) full2 = fullyconnected_layer.FullyConnectedLayer( \ 100, 10, logistic.LogisticFunction(), 0.1, 1.0, 0.0) # Create network net = network.Network()
labels = [] labels_vec = [] for x, y in logic_and: data.append(np.array(x).reshape(-1, 1)) test_data.append(np.array(x).reshape(-1, 1)) label = np.zeros((2, 1)) label[y] = 1. labels_vec.append(label) labels.append(y) inputs = zip(data, labels_vec) test_inputs= zip(test_data, labels) #### # Create layers input_layer = input_layer.InputLayer(2) input_layer.setData(inputs) full1 = fullyconnected_layer.FullyConnectedLayer( \ 2, 3, logistic.LogisticFunction(), 0.2, 1.0, 0.1) full2 = fullyconnected_layer.FullyConnectedLayer( \ 3, 2, logistic.LogisticFunction(), 0.2, 1.0, 0.1) # Create network net = network.Network() net.appendLayer(input_layer) net.appendLayer(full1) net.appendLayer(full2) epoch = 1000 net.train(epoch, test_data=test_inputs)