标注分类

Python 中的自然语言处理(NLP)

Fouad Trad

Machine Learning Engineer

文本 vs. 标注分类

文本分类

  • 对整句或成对文本进行分类

展示文本分类与 QNLI 任务(前面视频出现过)的图片。

Python 中的自然语言处理(NLP)

文本 vs. 标注分类

文本分类

  • 对整句或成对文本进行分类

展示文本分类与 QNLI 任务(前面视频出现过)的图片。

标注分类

  • 为句中各个 token 分配标签

展示一句话被按词拆分、每个词着不同颜色代表不同类别的图片。

  • 命名实体识别(NER)
  • 词性(PoS)标注
Python 中的自然语言处理(NLP)

命名实体识别(NER)

  • 识别人名、地点、组织、日期等实体

展示对句子"Apple 于 2023 年 3 月在多伦多开设新办公室"的 NER 分析,其中 Apple 为组织,Toronto 为地点,March 2023 为日期。

  • 用于:
    • 信息检索
    • 问答
Python 中的自然语言处理(NLP)

代码中的 NER

from transformers import pipeline

ner_pipeline = pipeline(task="ner",
model="dslim/bert-base-NER",
grouped_entities=True)
ner_results = ner_pipeline("Zara Venn established NovaCore Dynamics in London.")
print(ner_results)
[{'entity_group': 'PER', 'score': np.float32(0.99840075), 'word': 'Zara Venn', 'start': 0, 'end': 9}, 
 {'entity_group': 'ORG', 'score': np.float32(0.99875560), 'word': 'NovaCore Dynamics', 'start': 21, 'end': 38}, 
 {'entity_group': 'LOC', 'score': np.float32(0.99960726), 'word': 'London', 'start': 42, 'end': 48}]
Python 中的自然语言处理(NLP)

词性(PoS)标注

  • 为每个词分配语法角色(名词、动词、形容词)

展示句子"敏捷的狐狸跳过懒狗"的词性标注的图片,其中"the"为限定词,"quick"和"lazy"为形容词,"fox"和"dogs"为名词,"jumps"为动词,"over"为介词。

  • 用于:
    • 句法解析
    • 语法纠错
    • 文本生成
Python 中的自然语言处理(NLP)

代码中的 PoS 标注

pos_pipeline = pipeline(task="token-classification",

model="vblagoje/bert-english-uncased-finetuned-pos",
grouped_entities=True)
pos_results = pos_pipeline("Zara Venn established NovaCore Dynamics in London.") print(pos_results)
[{'entity_group': 'PROPN', 'score': np.float32(0.9982983), 'word': 'zara venn', 'start': 0, 'end': 9},  
 {'entity_group': 'VERB', 'score': np.float32(0.99940944), 'word': 'established', 'start': 10, 'end': 21},  
 {'entity_group': 'PROPN', 'score': np.float32(0.99455726), 'word': 'novacore dynamics', 'start': 22, 'end': 39},  
 {'entity_group': 'ADP', 'score': np.float32(0.99935526), 'word': 'in', 'start': 40, 'end': 42},  
 {'entity_group': 'PROPN', 'score': np.float32(0.99847955), 'word': 'london', 'start': 43, 'end': 49}]
Python 中的自然语言处理(NLP)

Vamos praticar!

Python 中的自然语言处理(NLP)

Preparing Video For Download...