Files
openmind/docs/zh/api_reference/apis/metrics_api.md
2024-11-26 09:24:53 +08:00

9.8 KiB
Raw Blame History

评估指标接口

基类Metric

Metric 类是所有评估指标的基类,定义了以下方法:

  • add(preds, labels):添加预测结果和标签,支持多次添加。
    • predslist必选):预测结果。每个元素代表模型对单个实例的预测输出。
    • labelslist必选):真实标签。每个元素代表对应实例的正确标签。
  • evaluate():对所有添加的数据进行计算,返回指标结果。
  • compute(preds, labels):根据提供的结果和标签计算,返回指标结果。
    • predslist必选):预测结果。每个元素代表模型对单个实例的预测输出。
    • labelslist必选):真实标签。每个元素代表对应实例的正确标签。

指标类概览

除非另有明确说明,所有评估指标均遵循基类Metric的统一接口规范。详细使用方法可参考魔乐社区评估指标库

Accuracy

  • 功能:计算准确率。
  • 构造函数Accuracy()
  • 方法
    • add(preds, labels):添加预测结果和标签,支持多次添加。
      • predsList[int]必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelsList[int]必选):真实标签。每个元素代表对应实例的正确标签。
    • evaluate():对所有添加的数据进行计算,返回指标结果。
    • compute(preds, labels):根据提供的结果和标签计算,返回指标结果。
      • predsList[int]必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelsList[int]必选):真实标签。每个元素代表对应实例的正确标签。

MAE

  • 功能:计算平均绝对误差 (MAE)。
  • 构造函数MAE()
  • 方法
    • add(preds, labels):添加预测结果和标签,支持多次添加。
      • predsList[float]必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelsList[float]必选):真实标签。每个元素代表对应实例的正确标签。
    • evaluate():对所有添加的数据进行计算,返回指标结果。
    • compute(preds, labels):根据提供的结果和标签计算,返回指标结果。
      • predsList[float]必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelsList[float]必选):真实标签。每个元素代表对应实例的正确标签。

Glue

  • 功能Glue 类专门用于计算不同GLUE基准任务的特定评估指标。GLUE任务包括文本分类、问答、自然语言推理等Glue 能够根据任务的不同需求返回相应的评估结果。
  • 构造函数Glue(config_name)
    • config_namestr必选用于指定具体的GLUE任务配置名称。以下是支持的任务配置名称列表
      • "sst2"斯坦福情感树库The Stanford Sentiment Treebank单句子分类任务。
      • "mnli"多类型自然语言推理语料库The Multi-Genre Natural Language Inference Corpus自然语言推断任务。
      • "mnli_mismatched"MNLI中训练集和测试集的数据来源一致。
      • "mnli_matched"MNLI中训练集和测试集的数据来源不一致。
      • "cola"语言可接受性语料库The Corpus of Linguistic Acceptability单句子分类任务。
      • "stsb"语义文本相似性基准测试The Semantic Textual Similarity Benchmark相似性和释义任务。
      • "mrpc"微软研究院释义语料库The Microsoft Research Paraphrase Corpus相似性和释义任务。
      • "qqp"Quora问题对数集The Quora Question Pairs相似性和释义任务。
      • "qnli"问答自然语言推断Qusetion-answering NLI自然语言推断任务。
      • "rte"识别文本蕴含数据集The Recognizing Textual Entailment datasets自然语言推断任务。
      • "wnli"韦氏自然语言推理Winograd Natural Language Inference自然语言推断任务。
      • "hans"历史答案只包含自然句子的自然语言推理Historical Answer-only Natural Language Inference自然语言推断任务。。
  • 方法
    • add(preds, labels):添加预测结果和标签,支持多次添加。
      • predslist必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelslist必选):真实标签。每个元素代表对应实例的正确标签。
    • evaluate():对所有添加的数据进行计算,返回指标结果。
    • compute(preds, labels):根据提供的结果和标签计算,返回指标结果。
      • predslist必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelslist必选):真实标签。每个元素代表对应实例的正确标签。

F1

  • 功能计算F1分数。
  • 构造函数F1()
  • 方法
    • add(preds, labels):添加预测结果和标签,支持多次添加。
      • predsList[int]必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelsList[int]必选):真实标签。每个元素代表对应实例的正确标签。
    • evaluate():对所有添加的数据进行计算,返回指标结果。
    • compute(preds, labels):根据提供的结果和标签计算,返回指标结果。
      • predsList[int]必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelsList[int]必选):真实标签。每个元素代表对应实例的正确标签。

ConfusionMatrix

  • 功能:生成混淆矩阵。
  • 构造函数ConfusionMatrix()
  • 方法
    • add(preds, labels):添加预测结果和标签,支持多次添加。
      • predsList[int]必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelsList[int]必选):真实标签。每个元素代表对应实例的正确标签。
    • evaluate():对所有添加的数据进行计算,返回指标结果。
    • compute(preds, labels):根据提供的结果和标签计算,返回指标结果。
      • predsList[int]必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelsList[int]必选):真实标签。每个元素代表对应实例的正确标签。

MSE

  • 功能:计算均方误差(MSE)。
  • 构造函数MSE()
  • 方法
    • add(preds, labels):添加预测结果和标签,支持多次添加。
      • predsList[float]必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelsList[float]必选):真实标签。每个元素代表对应实例的正确标签。
    • evaluate():对所有添加的数据进行计算,返回指标结果。
    • compute(preds, labels):根据提供的结果和标签计算,返回指标结果。
      • predsList[float]必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelsList[float]必选):真实标签。每个元素代表对应实例的正确标签。

ExactMatch

  • 功能:计算预测结果与真实标签之间的精确匹配率。
  • 构造函数ExactMatch()
  • 方法
    • add(preds, labels):添加预测结果和标签,支持多次添加。
      • predsList[str]必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelsList[str]必选):真实标签。每个元素代表对应实例的正确标签。
    • evaluate(regexes_to_ignore=None, ignore_case=False, ignore_punctuation=False, ignore_numbers=False):计算精确匹配率,支持以下参数:
      • regexes_to_ignoreList[str]可选,默认为None):计算精确匹配时要忽略字符的正则表达式,用于指定在比较前需要从预测和真实标签中删除的内容。
      • ignore_casebool可选,默认为False):当设置为True时,评估将忽略大小写差异。
      • ignore_punctuationbool可选,默认为False):当设置为True时,评估将忽略标点符号的差异。
      • ignore_numbersbool可选,默认为False):当设置为True时,评估将忽略数字的差异。
    • compute(preds, labels, regexes_to_ignore=None, ignore_case=False, ignore_punctuation=False, ignore_numbers=False): 核心计算方法,接受预测结果和真实标签,并根据evaluate方法相同的参数进行精确匹配计算。
      • predsList[str]必选):预测结果。每个元素代表模型对单个实例的预测输出。
      • labelsList[str]必选):真实标签。每个元素代表对应实例的正确标签。
      • regexes_to_ignoreList[str]可选,默认为None):计算精确匹配时要忽略字符的正则表达式,用于指定在比较前需要从预测和真实标签中删除的内容。
      • ignore_casebool可选,默认为False):当设置为True时,评估将忽略大小写差异。
      • ignore_punctuationbool可选,默认为False):当设置为True时,评估将忽略标点符号的差异。
      • ignore_numbersbool可选,默认为False):当设置为True时,评估将忽略数字的差异。