NLP根据任务不同,可以分为: token-level task:任务的目标是token级别。例如,Cloze(完形填空)是为了预测句子中某处的词,POS(词性标注)是为了确定文本中每个词的词性(包括动词、名词等等),NER(命名实体识别)是为了从文本中识别出命名实体(实体包括人名、地名等等),以及其他。 sequence-level task:任务的目标是句子级别。例如,NLI(自然语言推理)是为了判断两个句子之间的关系(相近?矛盾?还是中立?)。
token-level task
1. NER (Named Entity Recognition)
命名实体识别任务,从文本中识别出命名实体,实体一般包括人名、地名、机构名、时间等,还有更加专业的专业实体。 NER的本质是对句子中的每个token打标签, 判断每个token的类别。
常用的数据集有:
- NER (Named Entity Recognition) dataset: 实体包含Person, Organization, Location, Miscellaneous, or Other (non-named entity).
2. POS(Part-of-speech Tagging)
词性标注任务,确定文本中每个词的词性,词性包括动词、名词、代词等等。
开源的人民日报数据按照规范标注好了句子中的每个词的词性:人民日报标注语料库(PFR)
3. SQuAD (Standford Question Answering Dataset)
斯坦福大学问答数据集,这是一个生成式的任务,样本为语句对。给出一个问题和一段来自于Wikipedia的文本,这段文本之中包含这个问题的答案,返回一个短语句作为答案。
因为需要给出答案,这是一个生成式的问题,但这个问题的特殊性在于最终的答案包含在语句对的文本内容之中, 是有范围的,而且是连续分布在内容之中的。
因此,我们找出答案在文本语句的开始和结尾处就能找到最后的答案。通过对文本语句序列中每个token对应的所有hidden vector做softmax判断是开始的概率和是结束的概率,最大化这个概率就能进行训练并得到输出的结果。
sequence-level task
Sentence Pair Classification tasks
句子对分类任务(下面的NLI是其特殊情况),对两个句子进行相关性的分析,具体的问题和数据集为:
QNLI(Question Natural Language Inference):数据集中两个句子是一个(question, answer)对。正样本为answer是对应question的答案,负样本则相反。
STS-B(Semantic Textual Similarity Benchmark):给出一对句子,使用1至5的评分评价两者在语意上的相似程度。
NLI(Natural Language Inference):自然语言推断任务, 即给出一对(a pair of)句子,判断两个句子是entailment(相近), contradiction(矛盾)还是neutral(中立)的. 由于也是分类问题, 也被称为sentence pair classification tasks。在智能问答, 智能客服, 多轮对话中有应用。 常用的数据集为MNLI(Multi-Genre Natural Language Inference): 是GLUE Datasets(General Language Understanding Evaluation)中的一个数据集. 是一个大规模的来源众多的数据集, 目的就是推断两个句子是意思相近, 矛盾, 还是无关的.
等等
Single Pair Classification
单个句子的分析任务,经典的问题和数据集为:
SST-2(Stanford Sentiment Treebank):判断句子是积极的还是消极的,数据集中的句子来源于人们对一部电影的评价。
CoLA(Corpus of Linguistic Acceptability):判断一个英语句子在语法上是不是可接受的。
上述为自然语言处理模型的常见任务,自然语言处理的顶层任务包括:
- 机器翻译(Machine Translation, MT):两种语言的转换。
- 文本摘要(Text Summarization):对较长的文本进行内容摘要的提取,Facebook推出的BART模型在文本摘要任务上蛮出彩的。
- 问答系统(Question-Answering System):针对问题给出答案。
- 对话系统(Dialog System):与用户进行聊天,从对话中捕获用户的意图并分析执行。
- 阅读理解(Reading Comprehension):阅读一篇文章,对给定文章问题进行回答。
- 自动文章分级(Automatic Essay Grading):给定一篇文章,对文章的质量进行打分或分级。