def createMLPsH(self, H1, nu, mu, batchsize, k): for j in range(10) : data = Data(k, 0, 0) data.importDataFromMat() data.normalize() train = TrainerValidator(k, 5, H1, (j+1)*10, nu, mu, batchsize, data) train.trainAndClassify() train.plotResults()
def createMLPsP(self, H1, H2, nu, batchsize, k): for j in range(4,8) : data = Data(k, 0, 0) data.importDataFromMat() data.normalize() train = TrainerValidator(k, 50, H1, H2, nu, j/10.0, batchsize, data) train.trainAndClassify() train.plotResults()
def compareParameters(): k = 5 data = Data(k, 0, 0) data.importDataFromMat() data.normalize() train = TrainerValidator(k, 40, 80, 60, 0.001, 0.1, 1, data) train.trainAndClassify() train2 = TrainerValidator(k, 40, 80, 60, 0.04, 0.1, 1, data) train2.trainAndClassify() train3 = TrainerValidator(k, 40, 80, 60, 0.1, 0.1, 1, data) train3.trainAndClassify() error_fig = plt.figure() ax1 = error_fig.add_subplot(111) ax1.plot(train.validation_error, label="validation error mu=0.1 nu=0.001") ax1.plot(train.training_error, label="training error mu=0.1 nu=0.001") ax1.plot(train2.validation_error, label="validation error mu=0.1 nu=0.04") ax1.plot(train2.training_error, label="training error mu=0.1 nu=0.04") ax1.plot(train3.validation_error, label="validation error mu=0.1 nu=0.1") ax1.plot(train3.training_error, label="training error mu=0.1 nu=0.1") ax1.set_ylabel("error") ax1.set_xlabel("epoch") title = "Validation and training errors k=5 H1=80 H2=60 batchsize=1" error_fig.suptitle(title) plt.legend()
def testBinary(): k = 2 data = Data(k, 0, 0) data.importDataFromMat() data.normalize() train = TrainerValidator(k, 70, 100, 10, 0.1, 0.2, 1, data) train.trainAndClassify() train.plotResults() test = Test(train.getMLP(), data, k) test.classify() test.examples() test.plot_confusion_matrix()