Пример #1
0
    def __init__(self, cm: "metrics.ConfusionMatrix" = None):

        self.cm = metrics.ConfusionMatrix() if cm is None else cm
        self.accuracy = metrics.Accuracy(cm=self.cm)
        self.kappa = metrics.CohenKappa(cm=self.cm)
        self.kappa_m = metrics.KappaM(cm=self.cm)
        self.kappa_t = metrics.KappaT(cm=self.cm)
        self.recall = metrics.Recall(cm=self.cm)
        self.micro_recall = metrics.MicroRecall(cm=self.cm)
        self.macro_recall = metrics.MacroRecall(cm=self.cm)
        self.precision = metrics.Precision(cm=self.cm)
        self.micro_precision = metrics.MicroPrecision(cm=self.cm)
        self.macro_precision = metrics.MacroPrecision(cm=self.cm)
        self.f1 = metrics.F1(cm=self.cm)
        self.micro_f1 = metrics.MicroF1(cm=self.cm)
        self.macro_f1 = metrics.MacroF1(cm=self.cm)
        self.geometric_mean = metrics.GeometricMean(cm=self.cm)
Пример #2
0
def partial(f, **kwargs):
    return functools.update_wrapper(functools.partial(f, **kwargs), f)


TEST_CASES = [
    (metrics.Accuracy(), sk_metrics.accuracy_score),
    (metrics.Precision(), sk_metrics.precision_score),
    (metrics.MacroPrecision(),
     partial(sk_metrics.precision_score, average='macro')),
    (metrics.MicroPrecision(),
     partial(sk_metrics.precision_score, average='micro')),
    (metrics.WeightedPrecision(),
     partial(sk_metrics.precision_score, average='weighted')),
    (metrics.Recall(), sk_metrics.recall_score),
    (metrics.MacroRecall(), partial(sk_metrics.recall_score, average='macro')),
    (metrics.MicroRecall(), partial(sk_metrics.recall_score, average='micro')),
    (metrics.WeightedRecall(),
     partial(sk_metrics.recall_score, average='weighted')),
    (metrics.FBeta(beta=.5), partial(sk_metrics.fbeta_score, beta=.5)),
    (metrics.MacroFBeta(beta=.5),
     partial(sk_metrics.fbeta_score, beta=.5, average='macro')),
    (metrics.MicroFBeta(beta=.5),
     partial(sk_metrics.fbeta_score, beta=.5, average='micro')),
    (metrics.WeightedFBeta(beta=.5),
     partial(sk_metrics.fbeta_score, beta=.5, average='weighted')),
    (metrics.F1(), sk_metrics.f1_score),
    (metrics.MacroF1(), partial(sk_metrics.f1_score, average='macro')),
    (metrics.MicroF1(), partial(sk_metrics.f1_score, average='micro')),
    (metrics.WeightedF1(), partial(sk_metrics.f1_score, average='weighted')),
    (metrics.MCC(), sk_metrics.matthews_corrcoef),
Пример #3
0
 (
     metrics.MacroPrecision(),
     partial(sk_metrics.precision_score, average="macro", zero_division=0),
 ),
 (
     metrics.MicroPrecision(),
     partial(sk_metrics.precision_score, average="micro", zero_division=0),
 ),
 (
     metrics.WeightedPrecision(),
     partial(sk_metrics.precision_score,
             average="weighted",
             zero_division=0),
 ),
 (metrics.Recall(), partial(sk_metrics.recall_score, zero_division=0)),
 (metrics.MacroRecall(),
  partial(sk_metrics.recall_score, average="macro", zero_division=0)),
 (metrics.MicroRecall(),
  partial(sk_metrics.recall_score, average="micro", zero_division=0)),
 (
     metrics.WeightedRecall(),
     partial(sk_metrics.recall_score, average="weighted", zero_division=0),
 ),
 (metrics.FBeta(beta=0.5),
  partial(sk_metrics.fbeta_score, beta=0.5, zero_division=0)),
 (
     metrics.MacroFBeta(beta=0.5),
     partial(sk_metrics.fbeta_score,
             beta=0.5,
             average="macro",
             zero_division=0),