数据集文档

评估预测

Hugging Face's logo
加入 Hugging Face 社区

并获得增强文档体验的访问权限

开始使用

评估预测结果

🤗 Datasets 中已弃用 Metrics。要了解有关如何使用指标的更多信息,请查看库 🤗 Evaluate!除了指标之外,您还可以找到更多用于评估模型和数据集的工具。

🤗 Datasets 为您提供了各种常见的和 NLP 特定的 指标,用于衡量模型的性能。在本教程部分,您将加载指标并使用它来评估模型的预测结果。

您可以使用 list_metrics() 查看可用的指标。

>>> from datasets import list_metrics
>>> metrics_list = list_metrics()
>>> len(metrics_list)
28
>>> print(metrics_list)
['accuracy', 'bertscore', 'bleu', 'bleurt', 'cer', 'comet', 'coval', 'cuad', 'f1', 'gleu', 'glue', 'indic_glue', 'matthews_correlation', 'meteor', 'pearsonr', 'precision', 'recall', 'rouge', 'sacrebleu', 'sari', 'seqeval', 'spearmanr', 'squad', 'squad_v2', 'super_glue', 'wer', 'wiki_split', 'xnli']

加载指标

使用 🤗 Datasets 加载指标非常容易。实际上,您会注意到它与加载数据集非常相似!使用 load_metric() 从 Hub 加载指标。

>>> from datasets import load_metric
>>> metric = load_metric('glue', 'mrpc')

这将加载与 GLUE 基准测试中的 MRPC 数据集关联的指标。

选择配置

如果您使用的是基准数据集,则需要选择与您正在使用的配置关联的指标。通过提供配置名称来选择指标配置。

>>> metric = load_metric('glue', 'mrpc')

指标对象

在开始使用 Metric 对象之前,您应该更详细地了解它。与数据集一样,您可以返回有关指标的一些基本信息。例如,访问 datasets.MetricInfo 中的 inputs_description 参数以获取有关指标的预期输入格式和一些使用示例的更多信息。

>>> print(metric.inputs_description)
Compute GLUE evaluation metric associated to each GLUE dataset.
Args:
    predictions: list of predictions to score.
        Each translation should be tokenized into a list of tokens.
    references: list of lists of references for each translation.
        Each reference should be tokenized into a list of tokens.
Returns: depending on the GLUE subset, one or several of:
    "accuracy": Accuracy
    "f1": F1 score
    "pearson": Pearson Correlation
    "spearmanr": Spearman Correlation
    "matthews_correlation": Matthew Correlation
Examples:
    >>> glue_metric = datasets.load_metric('glue', 'sst2')  # 'sst2' or any of ["mnli", "mnli_mismatched", "mnli_matched", "qnli", "rte", "wnli", "hans"]
    >>> references = [0, 1]
    >>> predictions = [0, 1]
    >>> results = glue_metric.compute(predictions=predictions, references=references)
    >>> print(results)
    {'accuracy': 1.0}
    ...
    >>> glue_metric = datasets.load_metric('glue', 'mrpc')  # 'mrpc' or 'qqp'
    >>> references = [0, 1]
    >>> predictions = [0, 1]
    >>> results = glue_metric.compute(predictions=predictions, references=references)
    >>> print(results)
    {'accuracy': 1.0, 'f1': 1.0}
    ...

请注意,对于 MRPC 配置,指标的预期输入格式为零或一。有关您可以使用指标返回的完整属性列表,请查看 MetricInfo

计算指标

加载指标后,您就可以使用它来评估模型的预测结果。将模型预测结果和参考提供给 compute()

>>> model_predictions = model(model_inputs)
>>> final_score = metric.compute(predictions=model_predictions, references=gold_references)
< > 在 GitHub 上更新