예제 #1
0
def Assignment2():
    modelDic = {}
    confusionMatrix, trainMatrix = Mat.CreateConfusionMatrixs(10)

    # Fill dics for numbers 0..9
    for i in range(0, 10):
        modelDic.update({i: {}})

    numberVectorDic = VC.GetNumberVectors(testDataIn, testDataOut)

    VC.GetNumberAverageAndRadius(numberVectorDic, modelDic)

    print("Train set")
    TestModel(modelDic, trainDataIn, trainDataOut, confusionMatrix=trainMatrix)

    # PrintMatrix(trainMatrix,"train")

    print("Test set")
    TestModel(modelDic, testDataIn, testDataOut, confusionMatrix)
예제 #2
0
def Assignment3(n1, n2):
    trainMatrix, testMatrix = mat.CreateConfusionMatrixs(10)
    numberVectorDic = VC.GetNumberVectors(testDataIn, testDataOut)
    classChance = CalculateClassChance()

    histograms = ut.ExtractFeatures(numberVectorDic, binSize)

    #calculateAcurracy(histograms,classChance)

    for i in range(10):
        his1 = histograms[i][0]
        for j in range(i, 10):
            his2 = histograms[j][0]
            trainMatrix[j][i] = round(
                ut.histogram_intersection_chance(his1, his2, binSize), 1)
            trainMatrix[i][j] = round(
                ut.histogram_intersection_chance(his2, his1, binSize), 1)
            print("compare " + str(i) + " and " + str(j) + ": " +
                  str(ut.histogram_intersection_chance(his1, his2, binSize)))
    mat.PrintMatrix(trainMatrix, "hisIntersection")