Ejemplo n.º 1
0
 def __init__(self, globals_dict: dict) -> None:
     super().__init__(
         id="kappa",
         name="Kappa",
         score_func=metrics.cohen_kappa_score,
         scorer=metrics.make_scorer(metrics.cohen_kappa_score),
     )
Ejemplo n.º 2
0
 def __init__(self, globals_dict: dict) -> None:
     super().__init__(
         id="mcc",
         name="MCC",
         score_func=metrics.matthews_corrcoef,
         scorer=metrics.make_scorer(metrics.matthews_corrcoef),
     )
Ejemplo n.º 3
0
 def __init__(self, globals_dict: dict) -> None:
     super().__init__(
         id="f1",
         name="F1",
         score_func=metrics.f1_score,
         scorer=metrics.make_scorer(metrics.f1_score, average="weighted"),
         args={"average": "weighted"},
     )
Ejemplo n.º 4
0
 def __init__(self, globals_dict: dict) -> None:
     super().__init__(
         id="recall",
         name="Recall",
         score_func=metrics.recall_score,
         scorer=metrics.make_scorer(metrics.recall_score, average="macro"),
         args={"average": "macro"},
     )
Ejemplo n.º 5
0
 def __init__(self, globals_dict: dict) -> None:
     super().__init__(
         id="precision",
         name="Precision",
         display_name="Prec.",
         score_func=metrics.precision_score,
         scorer=metrics.make_scorer(metrics.precision_score,
                                    average="weighted"),
         args={"average": "weighted"},
     )
Ejemplo n.º 6
0
 def __init__(self, globals_dict: dict) -> None:
     super().__init__(
         id="f1",
         name="F1",
         score_func=pycaret.internal.metrics.binary_multiclass_score_func(
             metrics.f1_score),
         scorer=metrics.make_scorer(
             pycaret.internal.metrics.binary_multiclass_score_func(
                 metrics.f1_score),
             average="weighted",
         ),
         args={"average": "weighted"},
     )
Ejemplo n.º 7
0
 def __init__(self, globals_dict: dict) -> None:
     super().__init__(
         id="recall",
         name="Recall",
         score_func=pycaret.internal.metrics.binary_multiclass_score_func(
             metrics.recall_score),
         scorer=metrics.make_scorer(
             pycaret.internal.metrics.binary_multiclass_score_func(
                 metrics.recall_score),
             average="macro",
         ),
         args={"average": "macro"},
     )
Ejemplo n.º 8
0
 def __init__(self, globals_dict: dict) -> None:
     super().__init__(
         id="precision",
         name="Precision",
         display_name="Prec.",
         score_func=pycaret.internal.metrics.binary_multiclass_score_func(
             metrics.precision_score),
         scorer=metrics.make_scorer(
             pycaret.internal.metrics.binary_multiclass_score_func(
                 metrics.precision_score),
             average="weighted",
         ),
         args={"average": "weighted"},
     )
Ejemplo n.º 9
0
    def __init__(
        self,
        id: str,
        name: str,
        score_func: type,
        scorer: Optional[Union[str, _BaseScorer]] = None,
        target: str = "pred",
        args: Dict[str, Any] = None,
        display_name: Optional[str] = None,
        greater_is_better: bool = True,
        is_multiclass: bool = True,
        is_custom: bool = False,
    ) -> None:

        if not args:
            args = {}

        if not isinstance(args, dict):
            raise TypeError("args needs to be a dictionary.")

        allowed_targets = ["pred", "pred_proba", "threshold"]
        if not target in allowed_targets:
            raise ValueError(f"Target must be one of {', '.join(allowed_targets)}.")

        self.id = id
        self.name = name
        self.score_func = score_func
        self.target = target
        self.scorer = (
            scorer
            if scorer
            else metrics.make_scorer(
                score_func,
                needs_proba=target == "pred_proba",
                needs_threshold=target == "threshold",
                greater_is_better=greater_is_better,
                **args,
            )
        )
        self.display_name = display_name if display_name else name
        self.args = args
        self.greater_is_better = greater_is_better
        self.is_multiclass = is_multiclass
        self.is_custom = is_custom