An NLP glossary redacted for less technical readers.
Jason Leung (@ninjason)

NLP 词汇表:理解关键术语

2022 年 6 月 8 日

Leire Rosado Plaza、Amélie Viallet、David Fidalgo

不久之前,自然语言处理 (NLP) 还只在研究领域被考虑。如今,它正成为各种规模和行业的公司中的关键组成部分,连接着不同的角色。

NLP 不再仅仅是研究人员和数据工程师的专属。数据科学领域下的角色和职位头衔不断增加:数据语言学家、业务分析师、MLOps 工程师、数据标注专家、产品经理……(仅举几例),他们都需要围绕一种通用语言相互理解。

本词汇表旨在使所有专业人士达成共识。为了进一步学习和加强您的理解,许多定义都链接到与 Rubrix 相关的指南、教程和帖子。

1. 准确率 (Accuracy)

模型的准确率指的是模型在给定预测中做出正确预测的百分比。这是一个方便的个位数指标,可以用来比较模型,但它很少能全面反映模型的性能。此外,对于许多NLP 任务来说,这个指标不是很有用,因为预测的“正确性”更加细致入微。例如,在文本摘要中,模型生成的摘要可能有不同程度的准确性。

查看 Rubrix 的指标指南,了解更多实用的指标,帮助您分析模型的性能。

2. 主动学习 (Active Learning)

主动学习是监督机器学习的一个特例,其中用户通过为没有标注的新数据集示例提供标签来交互式地辅助学习过程。这通常是一个迭代过程,其中学习算法确定最有价值的示例,并主动向用户查询相应的标签。由于学习者选择示例,因此与正常的监督学习相比,它通常需要少得多的训练数据才能达到相同的性能。

Rubrix 有一个教程,展示了如何通过应用主动学习来构建垃圾邮件过滤器。

3. 标注 (Annotations)

Screenshot of the annotation process in Rubrix

如今,大多数 NLP 模型都是通过监督学习进行训练的。为了训练此类模型,我们需要输入-输出对,这些对将作为模型的训练示例。这些对的输出部分通常被称为标签或标注,因为它通常是由人来标记或标注相应的输入文本。这通常是一个人工过程,由个人执行,尽管像主动学习弱监督这样的技术可以减少这种人工工作量。

NLP 模型的质量与训练数据的质量直接相关。这使得标注任务对于项目的成功至关重要。Rubrix 的标注模式 旨在使这个过程尽可能简单和轻松。

4. 数据集 (Dataset)

在 NLP 中,术语数据集广义上指的是旨在用于创建或评估预测模型的数据。对于大多数 NLP 任务,数据集必须具有特征(通常是您想要处理的文本)和标签(通常是人工标注)。通常将数据集划分为训练集、验证集和测试集。它们分别用于训练模型、验证模型和比较不同的模型。

在 Rubrix 中,数据集是记录的集合,每个记录都包含输入文本。可选地,它们还可以携带标注、预测和一些元数据。这些数据集可以来自社交媒体、评论(即 IMDB)、文本数据库或新闻,仅举几个例子。

5. F1 分数 (F1 Score)

F1 分数(或 F1 指标,或简称 F1)是精确率和召回率的调和平均值。其在所有类别上的平均值是一个方便的个位数指标,可以用来比较模型,但它很少能全面反映模型的性能。它的最大值为 1,表示完美的精确率和召回率。它的最小值为 0,当精确率或召回率之一为 0 时。

F1 分数通常与精确率和召回率指标一起说明。有关基于正确性二元概念的这些指标的局限性,请参阅准确率。此外,请查看我们的指标博客文章,了解有关如何在 Rubrix 的帮助下解释其中一些指标的实用指南。

6. 人工在环 (Human-in-the-loop)

Sketch of the human-in-the-loop concept

人工在环机器学习是人类智能人工智能的结合,旨在利用两者的优势,创建强大而有效的模型。当我们谈论人工在环工具时,我们指的是人类在 NLP 工具(如 Rubrix)中的交互。这种方法可以最大限度地提高工具的性能,并使我们能够不断学习和改进模型和程序,因为我们可以在与机器(工具本身)直接交互的过程中标注、构建和改进模型。

7. MLOps

机器学习运维 (Machine Learning Operations) (MLOps) 是 DevOps 方法论和实践的扩展。DevOps(“DEVelopment+OPerationS”,即“开发+运维”)描述了软件创建生命周期中涉及的人员、流程和技术的组合。MLOps 通过包含机器学习流程和数据科学的概念来扩展该概念,其使用有助于构建高质量的模型,以及数据治理和优化。

8. 命名实体识别 (Named Entity Recognition) (NER)

An example of a NER task

NER 是一种用于 NLP 的文本分析技术。它允许从文本中自动提取实体(识别概念的一个或多个词语),并根据预定义的类别或标签对其进行分类。NER 系统可以基于机器学习模型、规则或字典 - 最常见的是这些技术的组合。

点击此处阅读我们进行了一项超酷的 NER 实验后撰写的一篇非常有趣的文章。

9. 自然语言推理 (Natural Language Inference) (NLI)

An example of a NLI task

这种非常常见的 NLP 任务文本分类非常相似,但其目的是不同的。在自然语言推理 (NLI) 中,模型接收一个前提和一个假设,并且必须确定在给定前提的情况下,假设是真(蕴含)、假(矛盾)还是未确定(中立)。

10. NLP 任务 (NLP tasks)

NLP 任务通常对人类来说很容易解决,但对机器来说往往很困难。可以通过 NLP 解决的任务种类繁多,在本词汇表中,我们解释了其中的一些任务,例如情感分析、NER、NLI 和文本摘要。

有关更完整的任务列表,您可以查看我们全面的任务示例

11. 精确率 (Precision)

在评估模型时,一个类别(标签)的精确率是其在给定数据集上正确预测的比例。也就是说,如果一个模型预测类别“A” 10 次,而这 10 次预测中有 9 次是正确的,则精确率为 0.9。可以将所有类别的精确率相加,然后除以类别数量,从而平均所有类别的精确率,这被称为宏平均。所有类别按其预测数量加权的平均值被称为微平均。

精确率通常与召回率指标和 F1 分数一起说明。有关基于正确性二元概念的这些指标的局限性,请参阅准确率

12. 预测 (Predictions)

一旦模型被训练,我们通常将其在给定某些输入时的输出称为预测。预测通常以百分比形式表示,反映模型对其决策的置信度。例如,对于文本分类任务,模型将为给定输入文本的任务的每个类别(标签)输出一个百分比。对于词元分类任务,模型将为输入文本中的每个词元输出这样的百分比。

与仅仅依赖于个位数指标相比,探索模型的单个预测几乎总是能让您更深入地了解模型的性能。预测也可以用于预先标注数据集,以帮助人工标注工作流程。有关此方法的实用示例,请查看我们的微调教程

13. 召回率 (Recall)

在评估模型时,一个类别(标签)的召回率是其在给定数据集上正确检测到的比例。也就是说,如果数据集中有 10 个类别“A”的示例,并且模型正确检测到这 10 个示例中的 9 个,则召回率为 0.9。可以将所有类别的召回率相加,然后除以类别数量,从而平均所有类别的召回率,这被称为宏平均。所有类别按其示例数量加权的平均值被称为微平均。

召回率通常与精确率指标和 F1 分数一起说明。有关基于正确性二元概念的这些指标的局限性,请参阅准确率

14. 情感分析 (Sentiment Analysis)

通过这种文本分类技术,我们可以让我们的模型能够检测输入的极性——通常使用诸如正面、负面或中性之类的类别。这种技术在商业世界中很常用,用于分析社交媒体和客户的总体反馈。它对于分析调查、市场研究或评论中的情绪意见选择也很有用,仅举几例。

这是一个示例,重点分析银行用户请求的情感。

15. 文本到文本 (Text2Text)

An example for an Text2Text task

文本到文本任务是文本生成任务,其中模型接收输入(文本)并输出一个词元序列。此类任务的示例包括机器翻译文本摘要释义生成,其中 机器翻译 是最常见的任务。在这种情况下,输入是要翻译成一种或多种不同语言(输出)的文本序列。

16. 文本分类 (Text Classification)

文本分类任务侧重于将句子或文档正确分类到一个或多个组中。这些类别将取决于主题、数据集和特定任务。例如,您可能想要分析包含电影评论的数据集的情感(正面、负面、中性)——这将是一个 情感分析任务。其他一些著名的任务是 自然语言推理多标签文本分类语义文本相似度,仅举几例。

Rubrix 适用于这些任务,并提供有趣的功能,例如指标定义规则模式。点击此处阅读一篇非常有趣的 文本分类教程

17. 文本摘要 (Text Summarization)

NLP 任务中,文本摘要是对大量或中等数量的信息(文本)进行摘要的过程,以便直接获取数据,或只是快速阅读它们。通过此任务,可以提取重要信息并将其分解为段落或句子,而不会遗漏关键信息,并提供简洁但完整的摘要。

18. 词元/分词 (Tokens/Tokenization)

分词是 文本预处理的一部分,即准备和调整文本以适应 NLP 任务。在此预处理步骤中,输入文本被划分为称为 词元的文本单元。词元通常对应于单词,但也可能对应于较小的单元(通常称为子词),甚至字符。

19. 词元分类 (Token Classification)

词元分类任务旨在将输入文本划分为单词或音节,并为它们分配标签。虽然 文本分类 侧重于将文本作为一个整体进行分类,但 词元分类 侧重于对单个 词元 进行分类。虽然 命名实体识别 (NER) 可能是最著名的,但 词性标注槽位填充 也是非常常见的任务。

如果您想了解更多关于这方面的信息,我们推荐这篇教程。使用 Rubrix 进行 NER 任务非常容易!

20. 弱监督 (Weak Supervision)

弱监督是机器学习的一个分支,它基于获取大量带有较低质量标签的训练数据,而不是使用手动标记的数据集,后者可能成本高昂或不切实际。嘈杂的标签通常通过利用表示为规则的数据集的启发式方法获得。特殊的标签模型可以考虑一些标签噪声,并输出去噪的弱标签,这些弱标签可以用于训练通常称为下游模型的模型。

Rubrix 广泛支持弱监督工作流程,正如我们在专门的教程中展示的那样。

21. 零样本学习 (Zero-Shot Learning)

零样本学习是一个问题设置,其中机器学习模型必须预测其在训练时未见过的类别。例如,在零样本文本分类中,已经训练好的模型会收到一个输入文本和一个必须用其对文本进行分类的类别列表。与专门训练的模型相比,零样本模型通常表现明显较差,但用途更广泛。

它们可以用于预先标注数据,正如我们的零样本 NER 教程中所示。