"\nData Set: (" + str(dataSet) + ") Run: " + str(run) + " Strategy: " + str(TS.TrainingStrategyType.desc(strat)) ) if run == 0: p.initCombinedConfusionMatrix() hiddenArchitecture = [ 2 * len(p.patterns[0]["p"]) ] # each hidden layer is a new index in this list, it's value = number of neurons in that layer TS.Member.genomeTemplate = genomeTemplateFromArchitecture( len(p.patterns[0]["p"]), hiddenArchitecture, len(p.targets) ) Net.trainingStrategy = TS.TrainingStrategy.getTrainingStrategyOfType(strat) Net.trainingStrategy.maxGenerations = maxGenerations Net.trainingStrategy.initPopulation(populationSize, (-1.0, 1.0)) n = Net(p, hiddenArchitecture) n.run(PatternType.Train, 0, int(p.count * trainPercentage)) n.run(PatternType.Test, int(p.count * trainPercentage), p.count) # n.run(PatternType.Train, 0, p.count) # n.run(PatternType.Test, 0, p.count) p.printStats() p.saveConfusionMatrix( "records/" + str(dataSet.split("/")[1]) + "-" + str(TS.TrainingStrategyType.desc(strat)) + ".csv" ) print("Done")
# 'data/zoo/zoo.json', # 'data/iris/iris.json'] # Single: # allDataTypes = ['data/ionosphere/ionosphere.json'] # allDataTypes = ['data/block/pageblocks.json'] # allDataTypes = ['data/heart/heart.json'] # allDataTypes = ['data/glass/glass.json'] # allDataTypes = ['data/car/car.json'] # allDataTypes = ['data/seeds/seeds.json'] allDataTypes = ['data/wine/wine.json'] # allDataTypes = ['data/yeast/yeast.json'] # allDataTypes = ['data/zoo/zoo.json'] # allDataTypes = ['data/iris/iris.json'] trainPercentage = 0.8 runsPerDataSet = 10 for dataset in allDataTypes: p = PatternSet(dataset) for run in range(runsPerDataSet): if run == 0: p.initCombinedConfusionMatrix() n = Network(p) n.run(PatternType.Train, 0, int(p.count*trainPercentage)) saveWeights(n) n.run(PatternType.Test, int(p.count*trainPercentage), p.count) p.printStats() p.saveConfusionMatrix() print("Done")