-
Notifications
You must be signed in to change notification settings - Fork 0
/
perceptron_d_basic.py
31 lines (27 loc) · 1.35 KB
/
perceptron_d_basic.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import samples
from perceptron import PerceptronClassifier
def testing(num):
trainData = samples.loadImagesFile("data/digitdata/trainingimages", num, 28, 28)
trainLabels = samples.loadLabelsFile("data/digitdata/traininglabels", num)
testData = samples.loadImagesFile("data/digitdata/testimages", 1000, 28, 28)
testLabels = samples.loadLabelsFile("data/digitdata/testlabels", 1000)
validData = samples.loadImagesFile("data/digitdata/validationimages", 1000, 28, 28)
validLabels = samples.loadLabelsFile("data/digitdata/validationlabels", 1000)
perceptron=PerceptronClassifier(trainData, trainLabels,0)
perceptron.train(trainData, trainLabels,10)
print "==================================="
print "Test Data"
guess=perceptron.classify(testData)
samples.verify(perceptron, guess, testLabels)
print "==================================="
print "Validation Data"
guess=perceptron.classify(validData)
samples.verify(perceptron,guess,validLabels)
if __name__ == "__main__":
sampleDigit=[500,1000,1500,2000,2500,3000,3500,4000,4500,5000]
sampleFace=[45,90,135,180,225,270,315,300,405,450]
sample=sampleDigit
for i in range(len(sample)):
print str(10*(i+1))+"%% training data, %d" % sample[i]
testing(sample[i])
print "==================================="