#!/usr/bin/python3 # File designed to be launched by user print("Start session") # Import python libraries from scipy.special import expit import argparse # Import local code to call from lab import generator, trainer, benchmark # Parse script arguments parser = argparse.ArgumentParser(description = "Start a training session for a neuronal network and display results.") parser.add_argument('--alpha', help = "set the learning rate", dest="learnRate", type = float, default = 0.05) parser.add_argument('--epochs', help = "set the number of iterations", dest="epochs", type = int, default = 2) args = parser.parse_args() # Parameters print("Parameters") print("Learning rate : ", args.learnRate) print("Number of epochs : ", args.epochs) activation = expit activationDerivative = lambda x : expit(x) * (1 - expit(x)) # Session network = generator.generate(activation, activationDerivative, generator.gaussAdaptedDev) precisionBefore = benchmark.computePrecision(network) network = trainer.train(network, args.learnRate, args.epochs) precisionAfter = benchmark.computePrecision(network) # Display results print("Precision before training : ", precisionBefore) print("Precision after training : ", precisionAfter)