def testNoWinningLabels(self): """Inferring 0/4 classes should return 0 winning labels.""" model = ClassificationModel() inferenceResult = numpy.array([0, 0, 0, 0]) topLabels = model.getWinningLabels(inferenceResult) self.assertFalse(topLabels)
def testWinningLabels(self): """ Tests whether classification base class returns multiple labels correctly. """ model = ClassificationModel() inferenceResult = numpy.array([3, 1, 4, 0, 1, 0]) topLabels = model.getWinningLabels(inferenceResult, numLabels=1) self.assertTrue(numpy.allclose(topLabels, numpy.array([2])), "Output should be label 2.") topLabels = model.getWinningLabels(inferenceResult, numLabels=2) self.assertTrue(numpy.allclose(topLabels, numpy.array([2, 0])), "Output should be labels 2 and 0.") # Test only nonzero labels are returned. inferenceResult = numpy.array([3, 0, 4, 0, 0, 0]) topLabels = model.getWinningLabels(inferenceResult, numLabels=5) self.assertTrue(numpy.allclose(topLabels, numpy.array([2, 0])), "Output should be labels 2 and 0.")
def testWinningLabels(self): """ Tests whether classification base class returns multiple labels correctly. """ model = ClassificationModel() inferenceResult = numpy.array([3, 1, 4, 0, 1, 0]) topLabels = model.getWinningLabels(inferenceResult, numLabels=1) self.assertTrue(numpy.allclose(topLabels, numpy.array([2])), "Output should be label 2.") topLabels = model.getWinningLabels(inferenceResult, numLabels=2) self.assertTrue(numpy.allclose(topLabels, numpy.array([2, 0])), "Output should be labels 2 and 0.") # Test tie is broken by the later index; label 4 beats out label 1. topLabels = model.getWinningLabels(inferenceResult, numLabels=3) self.assertTrue(numpy.allclose(topLabels, numpy.array([2, 0, 4])), "Output should be labels 2, 0, and 1.") # Test only nonzero labels are returned. topLabels = model.getWinningLabels(inferenceResult, numLabels=5) self.assertTrue(numpy.allclose(topLabels, numpy.array([2, 0, 4, 1])), "Output should be labels 2, 0, 1, and 4.")