"""Auto-generated stub for module: classification."""
from typing import Any, Tuple

# Functions
def accuracy_per_class(output: Any.Any, target: Any.Any) -> dict[int, float]:
    """
    Compute per-class one-vs-rest accuracy values.
    
        Args:
            output: Classification logits tensor with shape ``[N, C]``.
            target: Target label tensor with ``N`` elements.
    
        Returns:
            Mapping of class id to one-vs-rest accuracy.
    """
    ...
def calculate_metrics(output: Any.Any, target: Any.Any) -> tuple[Any.Any, Any.Any, Any.Any, Any.Any]:
    """
    Compute one-vs-rest TP/TN/FP/FN vectors for each class.
    
        Args:
            output: Classification logits tensor with shape ``[N, C]``.
            target: Target label tensor with ``N`` elements.
    
        Returns:
            Tuple of tensors ``(tp, tn, fp, fn)`` for every class.
    """
    ...
def confusion_matrix(output: Any.Any, target: Any.Any) -> Any.Any:
    """
    Return full multiclass confusion matrix with shape ``[C, C]``.
    
        Args:
            output: Classification logits tensor with shape ``[N, C]``.
            target: Target label tensor with ``N`` elements.
    
        Returns:
            Confusion matrix tensor where rows are true labels and columns are predicted labels.
    """
    ...
def confusion_matrix_per_class(output: Any.Any, target: Any.Any) -> dict[int, list[list[float]]]:
    """
    Return one-vs-rest confusion matrix for each class.
    
        Args:
            output: Classification logits tensor with shape ``[N, C]``.
            target: Target label tensor with ``N`` elements.
    
        Returns:
            Mapping of class id to ``[[tp, fp], [fn, tn]]`` matrix.
    """
    ...
def f1_score_per_class(output: Any.Any, target: Any.Any) -> dict[int, float]:
    """
    Compute per-class F1-score values.
    
        Args:
            output: Classification logits tensor with shape ``[N, C]``.
            target: Target label tensor with ``N`` elements.
    
        Returns:
            Mapping of class id to F1-score.
    """
    ...
def precision(output: Any.Any, target: Any.Any) -> dict[int, float]:
    """
    Compute per-class precision values.
    
        Args:
            output: Classification logits tensor with shape ``[N, C]``.
            target: Target label tensor with ``N`` elements.
    
        Returns:
            Mapping of class id to precision.
    """
    ...
def recall(output: Any.Any, target: Any.Any) -> dict[int, float]:
    """
    Compute per-class recall values.
    
        Args:
            output: Classification logits tensor with shape ``[N, C]``.
            target: Target label tensor with ``N`` elements.
    
        Returns:
            Mapping of class id to recall.
    """
    ...
def specificity(output: Any.Any, target: Any.Any) -> dict[int, float]:
    """
    Compute per-class specificity (true negative rate).
    
        Args:
            output: Classification logits tensor with shape ``[N, C]``.
            target: Target label tensor with ``N`` elements.
    
        Returns:
            Mapping of class id to specificity.
    """
    ...
def specificity_all(output: Any.Any, target: Any.Any) -> float:
    """
    Compute overall specificity across all classes.
    
        Args:
            output: Classification logits tensor with shape ``[N, C]``.
            target: Target label tensor with ``N`` elements.
    
        Returns:
            Overall specificity value.
    """
    ...
