Example #1
0
def test_f1_score(aggregator: StatsAggregator):
    a_precision = 4 / 5
    a_recall = 4 / 6
    assert np.isclose(aggregator.f1_score("a"), 2 * a_precision * a_recall,
                      a_precision + a_recall)
    b_precision = 1 / 3
    b_recall = 1 / 2
    assert np.isclose(aggregator.f1_score("b"), 2 * b_precision * b_recall,
                      b_precision + b_recall)
Example #2
0
def test_empty_batch():
    aggregator = StatsAggregator(["a", "b"])
    assert aggregator.accuracy() == 0
    assert aggregator.precision("a") == 0
    assert aggregator.precision("b") == 0
    assert aggregator.recall("a") == 0
    assert aggregator.recall("b") == 0
    assert aggregator.f1_score("a") == 0
    assert aggregator.f1_score("b") == 0