Exemplo n.º 1
0
 def test_readContext(self):
     textfile = ["#Film:\tTestfilm",
                 "#Scene:\tTestszene",
                 "#FPS:\t25",
                 "#Context:\tperson§Hugo, person§Alexander the Great",
                 "#EntityList:\tobject§Rope, place§Room, object§Hugos Thing"]
     context = ConvertData.readContext(textfile)
     self.assertTrue(context["Film"]=="Testfilm")
     self.assertTrue(context["Scene"]=="Testszene")
     self.assertTrue(context["FPS"]==25)
     self.assertTrue(context["Entities"]["Hugo"].type == Config.PERSON)
     self.assertTrue(context["Entities"]["Alexander the Great"].type == Config.PERSON)
     self.assertTrue(context["Entities"]["Rope"].type == Config.OBJECT)
     self.assertTrue(context["Entities"]["Room"].type == Config.PLACE)
     self.assertTrue(context["Entities"]["Hugos Thing"].type == Config.OBJECT)
Exemplo n.º 2
0
def getPerformance(classifier, domain, testFiles, means, vars):
    correct = 0
    weightedDiff = 0
    total = 0
    for testFile in testFiles:
        f = open(testFile, "r")
        lines = f.readlines()
        f.close()
        context = ConvertData.readContext(lines)
        blockList = ConvertData.getBlockList(lines, context)
        decisions = []
        for _ in range(len(blockList)):
            shotClass = classification(classifier,context,blockList,domain,decisions,means, vars,shot=True)
            correctClass = orange.Value(blockList[-1][-1].shot,domain.class_var)
            #shotClass, correctClass = classify(classifier, testFile, domain, decisions, means, vars)
            decisions.append(shotClass)
            if correctClass == shotClass:
                correct += 1
            weightedDiff += getDifference(shotClass, correctClass)
            total += 1
    return float(correct)/ total, float(weightedDiff) / total