def testing(num): trainData = np.load("traindigitbasic.npy") trainLabels = samples.loadLabelsFile("data/digitdata/traininglabels", num) testData = np.load("testdigitbasic.npy") testLabels = samples.loadLabelsFile("data/digitdata/testlabels", 1000) validData = np.load("validationdigitbasic.npy") validLabels = samples.loadLabelsFile("data/digitdata/validationlabels", 1000) neural = NeuralNetworkClassifier(28 * 28, 50, 10, num, 3.5) neural.train(trainData[:, 0:num], trainLabels, 100) print "Test Data" guess = neural.classify(testData) samples.verify(neural, guess, testLabels) print "===================================" print "Validation Data" guess = neural.classify(validData) samples.verify(neural, guess, validLabels)
def testing(num): trainData = np.load("trainfacebasic.npy") trainLabels = samples.loadLabelsFile("data/facedata/facedatatrainlabels", num) testData = np.load("testfacebasic.npy") testLabels = samples.loadLabelsFile("data/facedata/facedatatestlabels", 151) validData = np.load("validationfacebasic.npy") validLabels = samples.loadLabelsFile("data/facedata/facedatavalidationlabels", 301) loop=True while loop: neural = NeuralNetworkClassifier(60 * 70, 500, 1, num, 0.03) neural.train(trainData[:,0:num], trainLabels, 100) print "Test Data" guess = neural.classify(testData) loop=samples.verify(neural, guess, testLabels) if loop: continue print "===================================" print "Validation Data" guess = neural.classify(validData) samples.verify(neural, guess, validLabels)
def testing(num): trainData = np.load("traindigitbasic.npy") trainLabels = samples.loadLabelsFile("data/digitdata/traininglabels", num) testData = np.load("testdigitbasic.npy") testLabels = samples.loadLabelsFile("data/digitdata/testlabels", 1000) validData = np.load("validationdigitbasic.npy") validLabels = samples.loadLabelsFile("data/digitdata/validationlabels", 1000) neural = NeuralNetworkClassifier(28 * 28, 50, 10, num, 3.5) neural.train(trainData[:, 0:num], trainLabels, 100) print "*************Test Data*************" guess = neural.classify(testData) samples.verify(neural, guess, testLabels) print "***********************************" print "************Valid Data*************" guess = neural.classify(validData) samples.verify(neural, guess, validLabels)
def testing(num): trainData = np.load("trainfaceadvanced.npy") trainLabels = samples.loadLabelsFile("data/facedata/facedatatrainlabels", num) testData = np.load("testfaceadvanced.npy") testLabels = samples.loadLabelsFile("data/facedata/facedatatestlabels", 151) validData = np.load("validationfaceadvanced.npy") validLabels = samples.loadLabelsFile("data/facedata/facedatavalidationlabels", 301) loop=True while loop: neural = NeuralNetworkClassifier(60 * (70+1), 500, 1, num, 0.03) neural.train(trainData[:,0:num], trainLabels, 100) print "Test Data" guess = neural.classify(testData) loop=samples.verify(neural, guess, testLabels) if loop: continue print "===================================" print "Validation Data" guess = neural.classify(validData) samples.verify(neural, guess, validLabels)
def main(): """ 0: trainingData 1: solution forward output | 0 2: trainingLabel 3: initialW 4: initialb 5: solutionW 6: solutionb """ f = open('testData.np', 'rb') testData = cPickle.load(f) f.close() hwInst = TestClassifier(range(10), 'hwCls', 123) hwInst.initializeWeight(testData[0][0].shape[0], 10) hwInst.W = testData[0][3] hwInst.b = testData[0][4] netOut = hwInst.forwardPropagation(testData[0][0]) if type(netOut) != np.ndarray: test(False, "hand-written, 450, forward, invalid return type") flag1 = (np.max(np.fabs(netOut - testData[0][1])) < EPSILON) test(flag1, "hand-written, 450, forward") hwInst.backwardPropagation(testData[0][1], testData[0][2], 0.02 / 450.) if type(hwInst.W) != list: test(False, "hand-written, 450, backward, invalid return type") if type(hwInst.b) != list: test(False, "hand-written, 450, backward, invalid return type") for i, w in enumerate(hwInst.W): if type(w) != np.ndarray: test(False, "hand-written, 450, backward, invalid return type") flag1 = (np.max(np.fabs(w - testData[0][5][i])) < EPSILON) test(flag1, "hand-written, 450, backward, W, " + str(i)) for i, b in enumerate(hwInst.b): if type(b) != np.ndarray: test(False, "hand-written, 450, backward, invalid return type") flag1 = (np.max(np.fabs(b - testData[0][6][i])) < EPSILON) test(flag1, "hand-written, 450, backward, b, " + str(i)) hwInst = TestClassifier(range(10), 'hwCls', 123) hwInst.initializeWeight(testData[1][0].shape[0], 10) hwInst.W = testData[1][3] hwInst.b = testData[1][4] hwInst.nLayer = len(hwInst.W) netOut = hwInst.forwardPropagation(testData[1][0]) if type(netOut) != np.ndarray: test(False, "hand-written, 1500, forward, invalid return type") flag1 = (np.max(np.fabs(netOut - testData[1][1])) < EPSILON) test(flag1, "hand-written, 1500, forward") hwInst.backwardPropagation(testData[1][1], testData[1][2], 0.02 / 1500.) if type(hwInst.W) != list: test(False, "hand-written, 1500, backward, invalid return type") if type(hwInst.b) != list: test(False, "hand-written, 1500, backward, invalid return type") for i, w in enumerate(hwInst.W): if type(w) != np.ndarray: test(False, "hand-written, 1500, backward, invalid return type") flag1 = (np.max(np.fabs(w - testData[1][5][i])) < EPSILON) test(flag1, "hand-written, 1500, backward, W, " + str(i)) for i, b in enumerate(hwInst.b): if type(b) != np.ndarray: test(False, "hand-written, 1500, backward, invalid return type") flag1 = (np.max(np.fabs(b - testData[1][6][i])) < EPSILON) test(flag1, "hand-written, 1500, backward, b, " + str(i)) hwInst = TestClassifier(range(2), 'hwCls', 123) hwInst.initializeWeight(testData[2][0].shape[0], 2) hwInst.W = testData[2][3] hwInst.b = testData[2][4] hwInst.nLayer = len(hwInst.W) netOut = hwInst.forwardPropagation(testData[2][0]) if type(netOut) != np.ndarray: test(False, "faces, 450, forward, invalid return type") flag1 = (np.max(np.fabs(netOut - testData[2][1])) < EPSILON) test(flag1, "faces, 450, forward") hwInst.backwardPropagation(testData[2][1], testData[2][2], 0.02 / 450.) if type(hwInst.W) != list: test(False, "faces, 450, backward, invalid return type") if type(hwInst.b) != list: test(False, "faces, 450, backward, invalid return type") for i, w in enumerate(hwInst.W): if type(w) != np.ndarray: test(False, "faces, 450, backward, invalid return type") flag1 = (np.max(np.fabs(w - testData[2][5][i])) < EPSILON) test(flag1, "faces, 450, backward, W, " + str(i)) for i, b in enumerate(hwInst.b): if type(b) != np.ndarray: test(False, "faces, 450, backward, invalid return type") flag1 = (np.max(np.fabs(b - testData[2][6][i])) < EPSILON) test(flag1, "faces, 450, backward, b, " + str(i))