被封神的多语言BERT模型是如何开启NER新时代的?

  • 日期:07-18
  • 点击:(1751)

永盈会娱乐网址

  全文共3880字,预计学习时长20分钟或更长

  b98863a22678432c9cb072e1c26f86da

  在世界数据科学界, BERT模型的公布无疑是自然语言处理领域最激动人心的大事件。

  鉴于BERT还未广为人知,特此做出以下解释:BERT是一种以转换器为基础,进行上下文词语预测,从而得出最优结果的语言表征模型。计算语言学协会北美分会将BERT论文评为年度最佳长篇论文。谷歌研究发布了经过预训练的BERT模型,包括多语言、中文和英文BERT。

  会话人工智能框架Deeppavlov是基于iPavlov开发的,它包含构建对话系统所需的所有组件。BERT发布之后,其处理多种任务的能力令人惊异。

  BERT可以集成到三个常用NLP任务的解决方案中:文本分类、标记和问题回答。本文将将详细阐释如何在DeepPavlov中使用基于BERT的命名实体识别(NER)。

  b34adc6ccd024dc2b2e639b8c795a3df

  NER介绍

  命名实体识别(NER)是NLP中最常见的任务之一,可以将其表述为:

  给定一个标记序列(单词和可能的标点符号),为序列中的每个标记提供一个来自预定义标记集的标记。

  下图标示句是NER在演示中的输出,其中蓝色代表人物标签,绿色代表位置,黄色代表地理位置,灰色代表日期时间。

  e43cdda093004b18b325289a5e01d47a

  Deeppavlov ner模型支持19个标签:org(组织)、gpe(国家、城市、州)、loc(位置)、事件(命名为飓风、战斗、战争、体育活动)、日期、基数、金额、人物等。Deeppavlov的NER模型在命令行中处理的语句如下所示。

  >> Amtech , which also provides technical temporary employment services to aerospace , defense , computer and high - tech companies in the Southwest and Baltimore - Washington areas , said its final audited results are due in late November .

  ['B-ORG', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'B-LOC', 'O', 'B-GPE', 'O', 'B-GPE', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'B-DATE', 'I-DATE', 'O']

  >> Amtech还为西南部和华盛顿巴尔的摩地区的航空航天、国防、计算机和高科技公司提供临时技术就业服务,该公司表示,其最终审计结果将于11月底公布。

  BIO标记方案用于区分具有相同标记的相邻实体,其中“B”表示实体的开头,“I”表示“中间”,它用于除第一个实体外的所有组成实体的单词,“O”则表示不是实体。

  NER有多种业务应用程序。例如,NER可通过从简历中提取重要信息来帮助人力资源部门简历的评估。此外,NER还可用于识别客户请求中的相关实体如产品规格、部门或公司分支机构的详细信息,以便对请求进行相应分类并转发给相关部门。

  b34adc6ccd024dc2b2e639b8c795a3df

  任何预处理的模型都可以通过命令行界面和Python进行推理。在使用模型之前,请确保使用以下命令安装了所有必需的软件包:

  python -m deeppavlov install ner_ontonotes_bert_mult

  python -m deeppavlov interact ner_ontonotes_bert_mult[-d]

  其中ner_ontonotes_bert_mult表示配置文件的名称。

  可以通过Python代码与模型进行交互。

  from deeppavlov import configs, build_model

  ner_model = build_model(configs.ner.ner_ontonotes_bert_mult, download=True)

  ner_model(['World Curling Championship will be held in Antananarivo'])

  此外,DeepPavlov包含一个基于RuBERT的处理俄语数据的模型。

  总体而言,比起基于双LSTM-通用报告格式的模型,基于BERT的模型有了实质性的改进。

  通过下表可以看到基于英语和俄语的模型的性能。

  881dcbc0633b4bcaaf07dd0c11566c94

  b34adc6ccd024dc2b2e639b8c795a3df

  多语言BERT模型支持执行从一种语言到另一种语言的零距离传输。

  ner_ontonotes_bert_mult模型是在OntoNotes语料库上训练的,该语料库在标记模式中有19种类型。

  你可以在不同的语言上测试模型。

  from deeppavlov import configs, build_model

  ner_model = build_model(configs.ner.ner_ontonotes_bert_mult, download=True)

  ner_model([

  'Meteorologist Lachlan Stone said the snowfall in Queensland was an unusual occurrence '+

  'in a state with a sub-tropical to tropical climate.',

  'Церемония награждения пройдет 27 октября в развлекательном комплексе Hollywood and '+

  'Highland Center в Лос-Анджелесе (штат Калифорния, США).',

  'Das Orchester der Philharmonie Pozna widmet sich jetzt bereits zum zweiten '+

  'Mal der Musik dieses aus Deutschland vertriebenen Komponisten. Waghalter '+

  'stammte aus einer jüdischen Warschauer Familie.'])

  b3a56bb49c614eb0a3d871f1c7f0c3a0

  在俄语语料库3上对模型性能进行了评价。以下是转移的结果。

  66fedddceac14c298cb2dc07419ed06a

  多语言模型在第3集俄语语料库上的性能

  b34adc6ccd024dc2b2e639b8c795a3df

  Config/fag文件夹下单独配置文件对deeppavlov nlp 进行定义。配置文件由四个主要部分组成:dataset_reader、dataset_iterator、chainer和train。

  所有基于BERT的模型的公共元素都是配置文件chainer部分中的BERT预处理器(对于NER,是bert_ner_preprocessor类)块。未经加工的文本(即,“Alex goes to Atlanta”)应该传递给bert_ner_preprocessor,以便将记号化为子记号,用它们的索引编码子记号,并创建记号和段掩码。token参数本身包含一个句子标志列表([' Alex ', ' goes ', ' to ', ' Atlanta ']), subword_token带有特殊的标志。(['[CLS], ' Alex ', ' goes ', ' to ', ' Atlanta ', '[SEP]])。subword_tok_id包含令牌id,而subword_mask是一个列表,其中0表示特殊的令牌,1表示句子的令牌([0 1 1 1 1 1 0])。

  {

  "class_name": "bert_ner_preprocessor",

  "vocab_file": "{BERT_PATH}/vocab.txt",

  "do_lower_case": false,

  "max_seq_length": 512,

  "max_subword_length": 15,

  "token_maksing_prob": 0.0,

  "in":["x"],

  "out":["x_tokens", "x_subword_tokens",

  "x_subword_tok_ids", "pred_subword_mask"]

  }

  以上是本文想介绍的关于以多语种BERT模型为基础的NER的全部内容。

  3d3b08811ba94accaf88a34e20281796

  2554621a7e864f74ad9f59257d92655e

  留言 点赞 关注

  我们一起分享AI学习与发展的干货

  欢迎关注全平台AI垂类自媒体 “读芯术”

达到当天最大量