CN115146642B - 一种面向命名实体识别的训练集自动标注方法及系统 - Google Patents

一种面向命名实体识别的训练集自动标注方法及系统 Download PDF

Info

Publication number
CN115146642B
CN115146642B CN202210861894.8A CN202210861894A CN115146642B CN 115146642 B CN115146642 B CN 115146642B CN 202210861894 A CN202210861894 A CN 202210861894A CN 115146642 B CN115146642 B CN 115146642B
Authority
CN
China
Prior art keywords
text
named entity
labeling
words
word
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210861894.8A
Other languages
English (en)
Other versions
CN115146642A (zh
Inventor
熊蕊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Science And Tech Research Inst
Original Assignee
Beijing Science And Tech Research Inst
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Science And Tech Research Inst filed Critical Beijing Science And Tech Research Inst
Priority to CN202210861894.8A priority Critical patent/CN115146642B/zh
Publication of CN115146642A publication Critical patent/CN115146642A/zh
Application granted granted Critical
Publication of CN115146642B publication Critical patent/CN115146642B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Machine Translation (AREA)
  • Character Discrimination (AREA)

Abstract

本发明公开了一种面向命名实体识别的训练集自动标注方法及系统,包括:根据命名实体词库对待标注文本进行标注得到词库标注序列;根据命名实体识别规则对待标注文本进行标注得到规则标注序列;根据相同的词和抽取的词在待标注文本中的位置得到标注文本;对标注文本进行数据预处理得到训练集;以训练集为输入,对BERT‑BiLSTM‑CRF模型进行训练;对待标注文本进行数据预处理得到待标注文本列表;将待标注文本列表输入训练好的模型得到预测标签序列;根据待标注文本列表和预测标签序列更新训练集得到训练样本集。本发明能够实现不同领域命名实体识别任务的训练集的自动标注。

Description

一种面向命名实体识别的训练集自动标注方法及系统
技术领域
本发明涉及自动标注领域,特别是涉及一种面向命名实体识别的训练集自动标注方法及系统。
背景技术
当前流行的基于深度学习的自然语言处理任务,如命名实体识别等,依赖于训练数据集,而训练集主要采用人工标注的方法,而大量的数据集需要耗费大量的人力和时间,而训练集过小会导致深度学习算法的过拟合,使得效果不理想甚至不如传统机器学习算法。另外,针对特定领域的任务,需要特定的训练集,如果全部采用人工标注大量数据,不但效率低下并且有现实局限,因此,本发明针对文本对象,面向命名实体识别问题,提出一种训练集自动标注系统,能够自动地对特定领域数据集进行标注,从而提高训练集数据标注的效率。该系统采用基于词库、规则、深度学习三种模式进行自动标注,可以取长补短弥补各自单重方式的不足:弥补词库的词的不完全、基于规则方式效果依赖于人工制定规则和特征模板以及训练集过小会导致深度学习算法的过拟合。采用本发明设计的结构能最大化自动标注效率,适用于多种特定领域,能够极大地减少人工标注对基于深度学习的命名实体识别任务的影响。
发明内容
本发明的目的是提供一种面向命名实体识别的训练集自动标注方法及系统,能够对面向命名实体识别的训练集进行自动标注,提高训练集数据标注的效率。
为实现上述目的,本发明提供了如下方案:
一种面向命名实体识别的训练集自动标注方法,包括:
根据命名实体词库对待标注文本进行标注,得到词库标注序列;所述词库标注序列包括所述命名实体词库中与所述待标注文本中相同的词以及所述相同的词在所述命名实体词库中的类别;
根据命名实体识别规则对所述待标注文本进行标注,得到规则标注序列;所述规则标注序列包括所述待标注文本按照命名实体识别规则抽取的词以及所述抽取的词在所述命名实体识别规则中的类别;
根据所述相同的词和所述抽取的词在所述待标注文本中的位置,得到标注文本;所述标注文本包括所述相同的词、所述抽取的词、所述相同的词的类别、所述抽取的词的类别和所述位置的位置索引;
对所述标注文本进行数据预处理,得到训练集;
以所述训练集为输入,对BERT-BiLSTM-CRF模型进行训练,得到训练好的BERT-BiLSTM-CRF模型;
对所述待标注文本进行所述数据预处理,得到待标注文本列表;
将所述待标注文本列表输入所述训练好的BERT-BiLSTM-CRF模型,得到预测标签序列;
根据所述待标注文本列表和所述预测标签序列更新所述训练集,得到训练样本集。
可选的,所述根据命名实体词库对待标注文本进行标注,得到词库标注序列,具体包括:
确定所述命名实体词库中与所述待标注文本对应的命名实体类别;
确定所述命名实体类别包含的实体词;
根据所述实体词查找所述待标注文本中的词,得到标注词;所述标注词为所述命名实体词库中与所述待标注文本中相同的词;
根据所述标注词与对应的所述命名实体类别,确定所述词库标注序列。
可选的,所述根据根据命名实体识别规则对待标注文本进行标注,得到规则标注序列,具体包括:
根据命名实体识别任务设计类别识别规则,得到基于规则的实体类别;
根据所述类别识别规则抽取所述待标注文本中命名实体的词;
根据所述命名实体的词与对应的所述基于规则的实体类别,确定所述规则标注序列。
可选的,所述以所述训练集为输入,对BERT-BiLSTM-CRF模型进行训练,得到训练好的BERT-BiLSTM-CRF模型,具体包括:
对已知标注文本进行数据预处理,得到验证集;
以所述训练集为输入,对所述BERT-BiLSTM-CRF模型进行N次训练,得到N个训练模型;N为大于0的正整数;
以验证集为输入,计算所述N个训练模型的F1值;所述F1值为平衡F分数,用于衡量所述训练模型的精确度;
对所述N个训练模型的F1值进行比较,确定F1值最大的训练模型为训练好的BERT-BiLSTM-CRF模型。
可选的,所述根据所述待标注文本列表和所述预测标签序列更新所述训练集,得到训练样本集之后,还包括:
根据所述预测标签序列更新所述命名实体词库,得到更新后的命名实体词库。
一种面向命名实体识别的训练集自动标注系统,包括:
词库标注序列确定模块,用于根据命名实体词库对待标注文本进行标注,得到词库标注序列;所述词库标注序列包括所述命名实体词库中与所述待标注文本中相同的词以及所述相同的词在所述命名实体词库中的类别;
规则标注序列确定模块,用于根据命名实体识别规则对所述待标注文本进行标注,得到规则标注序列;所述规则标注序列包括所述待标注文本按照命名实体识别规则抽取的词以及所述抽取的词在所述命名实体识别规则中的类别;
标注文本确定模块,用于根据所述相同的词和所述抽取的词在所述待标注文本中的位置,得到标注文本;所述标注文本包括所述相同的词、所述抽取的词、所述相同的词的类别、所述抽取的词的类别和所述位置的位置索引;
训练集确定模块,用于对所述标注文本进行数据预处理,得到训练集;
训练模块,用于以所述训练集为输入,对BERT-BiLSTM-CRF模型进行训练,得到训练好的BERT-BiLSTM-CRF模型;
待标注文本列表确定模块,用于对所述待标注文本进行所述数据预处理,得到待标注文本列表;
预测标签序列确定模块,用于将所述待标注文本列表输入所述训练好的BERT-BiLSTM-CRF模型,得到预测标签序列;
训练样本集确定模块,用于根据所述待标注文本列表和所述预测标签序列更新所述训练集,得到训练样本集。
可选的,所述词库标注序列确定模块包括:
标注类别确定子模块,用于确定所述命名实体词库中与所述待标注文本对应的命名实体类别;
实体词确定子模块,用于确定所述命名实体类别包含的实体词;
标注词确定子模块,用于根据所述实体词查找所述待标注文本中的词,得到标注词;所述标注词为所述命名实体词库中与所述待标注文本中相同的词;
词库标注序列确定子模块,用于根据所述标注词与对应的所述命名实体类别,确定所述词库标注序列。
可选的,所述规则标注序列确定模块包括:
实体类别确定子模块,用于根据命名实体识别任务设计类别识别规则,得到基于规则的实体类别;
命名实体词确定子模块,用于根据所述类别识别规则抽取所述待标注文本中命名实体词;
规则标注序列确定子模块,用于根据所述命名实体词与对应的所述基于规则的实体类别,确定所述规则标注序列;
规则标注序列写入子模块,用于将所述规则标注序列写入所述待标注命名实体列表中。
可选的,所述训练模块包括:
验证集确定子模块,用于对已知标注文本进行数据预处理,得到验证集;
训练模型确定子模块,用于以所述训练集为输入,对所述BERT-BiLSTM-CRF模型进行N次训练,得到N个训练模型;N为大于0的正整数;
F1值确定子模块,用于以验证集为输入,计算所述N个训练模型的F1值;所述F1值为平衡F分数,用于衡量所述训练模型的精确度;
最优模型确定子模块,用于对所述N个训练模型的F1值进行比较,确定F1值最大的训练模型为训练好的BERT-BiLSTM-CRF模型。
可选的,所述系统还包括更新模块;所述更新模块,用于根据所述预测标签序列更新所述命名实体词库,得到更新后的命名实体词库。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明提供一种面向命名实体识别的训练集自动标注方法及系统,包括:根据命名实体词库对待标注文本进行标注得到词库标注序列;根据命名实体识别规则对待标注文本进行标注得到规则标注序列;根据相同的词和抽取的词在待标注文本中的位置得到标注文本;对标注文本进行数据预处理得到训练集;以训练集为输入,对BERT-BiLSTM-CRF模型进行训练,得到训练好的BERT-BiLSTM-CRF模型;对待标注文本进行数据预处理得到待标注文本列表;将待标注文本列表输入训练好的BERT-BiLSTM-CRF模型得到预测标签序列;根据待标注文本列表和预测标签序列更新训练集得到训练样本集。本发明通过基于词库的训练集自动标注、基于规则的训练集自动标注和基于深度学习的训练集自动标注,能够对面向命名实体识别的训练集进行自动标注,提高训练集数据标注的效率,实现不同领域命名实体识别任务的训练集的自动标注。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明面向命名实体识别的训练集自动标方法流程图;
图2为本发明面向命名实体识别的训练集自动标注系统结构图。
附图标记说明:
1-词库标注序列确定模块,2-规则标注序列确定模块,3-标注文本确定模块,4-训练集确定模块,5-训练模块,6-待标注文本列表确定模块,7-预测标签序列确定模块,8-训练样本集确定模块,9-更新模块。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种面向命名实体识别的训练集自动标注方法及系统,能够自动地对面向命名实体识别的训练集进行标注,提高训练集数据标注的效率。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
如图1所示,本发明提供的面向命名实体识别的训练集自动标注方法的流程包括:
步骤S1:根据命名实体词库对待标注文本进行标注,得到词库标注序列;词库标注序列包括命名实体词库中与待标注文本中相同的词以及相同的词在命名实体词库中的类别;具体的,词库用来存储已知的特定领域的命名实体。
S1具体包括:
步骤S11:确定命名实体词库中与待标注文本对应的命名实体类别。
具体的,确定命名实体识别标注任务,确定需要识别的命名实体类别。
步骤S12:确定命名实体类别包含的实体词。
具体的,根据命名实体类别,遍历命名实体词库里相关类别的所有词语。
步骤S13:根据实体词查找待标注文本中的词,得到标注词;标注词为命名实体词库中与待标注文本中相同的词。
具体的,判断命名实体词库里相关类别的所有词语是否存在于待标注文本text中,如存在则将标注词写入待标注词列表。
步骤S14:根据标注词与对应的命名实体类别,确定词库标注序列。
具体的,如果识别多个类别的命名实体,则生成多个待标注词列表,每一个列表代表一个类别的待标注命名实体,若标注词列表为多个,则多个标注词列表为词库标注序列,若标注词列表为一个,则该标注词列表为词库标注序列。
步骤S2:根据命名实体识别规则对待标注文本进行标注,得到规则标注序列;规则标注序列包括待标注文本按照命名实体识别规则抽取的词以及抽取的词在命名实体识别规则中的类别。
S2具体包括:
步骤S21:根据命名实体识别任务设计类别识别规则,得到基于规则的实体类别。
具体的,人工制定标注规则或选择特征模板,编写正则表达式regex_str。
进一步的,作为一个具体的实施例,“基于5G技术的航空机载平台无线通信应用研究。”制定规则“基于”和“的”之间的命名实体归为技术方法类命名实体,而“的”与“应用研究”之间的命名实体归类为应用领域类命名实体。regex_str可以表示为u‘基于(.+?)的(.+?)应用研究’。其中,regex_str可以表示为u‘基于(.+?)的(.+?)应用研究’是写代码时的用法,表示u后面字符串以Unicode格式进行编码,一般用在中文字符串前面,防止因为源码储存格式问题,导致再次使用时出现乱码。
步骤S22:根据类别识别规则抽取待标注文本中命名实体的词。
具体的,基于regex_str采用re.findall(regex_str,text)找出所有类型词语。re.findall(regex_str,text)是python语言re模块的用法。
步骤S23:根据命名实体的词与对应的基于规则的实体类别,确定规则标注序列。
具体的,按照基于规则的实体类别建立类型词表词表。具体实施例中的5G技术存入技术方法词表,航空机载平台无线通信存入应用领域词表。
步骤S3:根据相同的词和抽取的词在待标注文本中的位置,得到标注文本;标注文本包括相同的词、抽取的词、相同的词的类别、抽取的词的类别和位置的位置索引。
具体的,根据相同的词和抽取的词,对待标注文本运用text.find(‘word’),返回查找的word的第一个字的索引位置index0,并计算该词word的长度len。将索引位置index0的值写入索引位置列表IndexB中,将index0+1、index0+2、…、index0+(len-2)的值写入索引位置列表IndexI中,将index0+(len-1)写入索引位置列表IndexE中,得到词列表。其中,text.find(‘word’)为python语言的函数。
进一步的,遍历生成的词列表中的各个词,根据词列表中的各个词遍历待标注文本中各个字char,如果该字的位置索引在IndexB列表中,则以char+”+’B-命名实体类型’+\n的形式写入训练集标注文本中;如果该字的位置索引在IndexI列表中,则以char+”+’I-命名实体类型’+\n的形式写入训练集标注文本中;该字的位置索引在IndexE列表中,则以char+”+‘E-命名实体类型+’\n的形式写入训练集标注文本中。其他的情况以char+”+’O’+\n的形式写入训练集标注文本中,根据训练集标注文本得到标注文本。
此外,根据标注文本中命名实体词语的类别,将标注文本中命名实体词语按照类别存入命名实体词库中,得到更新后的命名实体词库。
步骤S4:对标注文本进行数据预处理,得到训练集。
步骤S41:依据设定的句子的长度对标注文本进行分割,并将[cls]补充在每个句子的开头处,将[sep]补充在每个句子的结尾处。将每一个句子分割的结果作为元素写入列表sents中,同时生成与列表sents相对应的标签列表tags。标签列表tags由cls、B-命名实体类型、I-命名实体识别类型、E-命名实体识别类型、O元素组成。对列表sents和相对应的标签列表tags进行封装,封装后的列表sents和相对应的标签列表tags进行运算。
步骤S42:根据封装后的列表sents及封装后的tags及其相应的索引id,将封装后的列表sents及封装后的tags进行底转换生成相应的id列表sents_id和tags_id。
具体的,sents的索引id是根据tokenizer.convert_tokens_to_ids()得到的。是基于python语言采用google的BERT预训练模型,采用该函数可以得到句子序列的id值。Tags的索引是首先统计训练集标签序列的所有tags类别,然后给tags的类别编号,编的号就是id值。
作为本发明实施例的一种实施方式,如果标签序列序列中含有B-Loc,I-Loc,E-Loc,,B-Name,I-Name,E-Name,O,这些标签对应的id值分别定义为:1,2,3,4,5,6,0。
步骤S43:生成batch数据,然后对小于设定的句子长度的处理后的句子进行padding,对大于设定长度的处理后的句子进行裁剪。sents_id经过padding之后为input_ids,tags_id经过padding之后为output_ids。
步骤S44:进行paddingmask操作,构建input_ids相应的attention_mask矩阵,将input_ids padding补零对应attention_mask的位置设置为0,其余位置设为1。
步骤S45:构建token_type_ids列表。该列表为区分两个句子的编码,上一句全标记为0,下一句则全标记为1,再下一句则全标记为0,以此类推。
步骤S46:对S42-S45得到的结果进行封装。
具体的,S42-S45得到的input_ids、output_ids、attention_mask和token_type_ids转换为pytorch框架处理的tensor形式并封装。
步骤S5:以训练集为输入,对BERT-BiLSTM-CRF模型进行训练,得到训练好的BERT-BiLSTM-CRF模型。
S5具体包括:
步骤S51:对已知标注文本进行数据预处理,得到验证集。
步骤S52:以训练集为输入,对BERT-BiLSTM-CRF模型进行N次训练,得到N个训练模型;N为大于0的正整数。
步骤S521:设定训练次数N;N为大于0的正整数。
步骤S522:获取训练集中所有封装后的标签列表中的标签,并建立标签到id值的映射label2id和id值到标签的映射id2label两个字典。label2id和id2label用于在python语言中进行标签和id值之间的转换。
步骤S523:初始化BertTokenizer、BertConfig和BERT-BiLSTM-CRF模型。BertTokenizer、BertConfig是pytorch_transformers库的类。
步骤S524:载入训练集,对BERT-BiLSTM-CRF模型进行训练。
具体的,训练集经过BERT预训练模型得到相应的词向量,再把得到的词向量输入到BiLSTM模型中做进一步处理,得到的结果再输入到CRF模块进行解码,得到训练的预测的标注序列,对BERT-BiLSTM-CRF模型完成一次训练。
步骤S53:以验证集为输入,计算N个训练模型的F1值;F1值为平衡F分数,用于衡量训练模型的精确度。
步骤S54:对N个训练模型的F1值进行比较,确定F1值最大的训练模型为训练好的BERT-BiLSTM-CRF模型。
具体的,每训练一个epoch,基于验证集计算BERT-BiLSTM-CRF模型的F1值,如果当前F1值大于之前最优的F1值,则将当前F1值设置为最优F1值。完成所有的epoch训练后的最优F1值所对应的模型为最优模型,保存该模型。最优模型为训练好的BERT-BiLSTM-CRF模型。
步骤S6:对待标注文本进行数据预处理,得到待标注文本列表。
具体的,对待标注文本进行数据处理,首先list为待标注文本列表text。再用tokenizer.encode_plus(text)获得待标注文本的input_ids,token_type_ids和attention_mask。然后依据最大序列长度进行padding,得到待标注文本列表。将待标注文本列表转换为pytorch框架处理的tensor形式。
步骤S7:将待标注文本列表输入训练好的BERT-BiLSTM-CRF模型,得到预测标签序列。
具体的,将tensor形式的待标注文本列表输入训练好的BERT-BiLSTM-CRF模型中,得到与输入文本序列相对应的预测标签序列pre_label。
步骤S8:根据待标注文本列表和预测标签序列更新训练集,得到训练样本集。
具体的,待标注文本列表和预测标签序列按照‘text[i]’+‘’+‘pre_label[i]’+‘\n’的方式写入训练集,得到训练样本集。
步骤S8之后,还包括:
根据预测标签序列更新命名实体词库,得到更新后的命名实体词库。
具体的,遍历预测标签序列,如果预测标签开头的字母为“B”,则标明该字为命名实体的开头,则写入实体词word中(需要说明的是:当前位置的标签类型和上一个标签类型不是同一类型并且实体词word不为空,则说明开始记录新实体,前面的实体需要按照实体类型加到实体结果中,并且将实体词word清空);如果标签开头的字母为“I”,表示当前位置是实体中间位置,将当前字加入实体词中,有word+=text[i];如果标签开头的字母为“E”,表示当前位置是实体末尾位置,将当前字加入实体词中,有word+=text[i];如果标签开头的字母为“O”,表示当前位置是非命名实体,清空实体word,得到新的实体词和新的实体类别。其中,word+=text[i]为python语言的函数。
进一步的,将新的实体类别和对应的新的实体词写入命名实体词库,不在新的实体类别下的新的实体词存入词库中对应的实体类别下。
此外,面向命名实体识别的训练集自动标注系统采用基于词库、规则、深度学习三种方式进行命名实体识别的训练集自动标注。在样本较少的时候,基于词库、规则的方式进行标注,分别记录基于词库和规则的标注结果中的“B”开头的标签数量,将数量多的标注结果存入训练集。当样本达到一定数量的时候,加入基于深度学习的方式,分别记录三种方式的标注结果中的“B”开头的标签数量,将数量最多的标注结果存入训练集,并且重新训练BERT-BiLSTM-CRF模型。每次处理完一个待标注样本,训练集和词库就会根据系统自动标注结果更新一次。
如图2所示,本发明提供的面向命名实体识别的训练集自动标注系统,包括:
词库标注序列确定模块1,用于根据命名实体词库对待标注文本进行标注,得到词库标注序列;词库标注序列包括命名实体词库中与待标注文本中相同的词以及相同的词在命名实体词库中的类别。
规则标注序列确定模块2,用于根据命名实体识别规则对待标注文本进行标注,得到规则标注序列;规则标注序列包括待标注文本按照命名实体识别规则抽取的词以及抽取的词在命名实体识别规则中的类别。
标注文本确定模块3,用于根据相同的词和抽取的词在待标注文本中的位置,得到标注文本;标注文本包括相同的词、抽取的词、相同的词的类别、抽取的词的类别和位置的位置索引。
训练集确定模块4,用于对标注文本进行数据预处理,得到训练集。
训练模块5,用于以训练集为输入,对BERT-BiLSTM-CRF模型进行训练,得到训练好的BERT-BiLSTM-CRF模型。
待标注文本列表确定模块6,用于对待标注文本进行数据预处理,得到待标注文本列表。
预测标签序列确定模块7,用于将待标注文本列表输入训练好的BERT-BiLSTM-CRF模型,得到预测标签序列。
训练样本集确定模块8,用于根据待标注文本列表和预测标签序列更新训练集,得到训练样本集。
其中,词库标注序列确定模块1包括:
标注类别确定子模块,用于确定命名实体词库中与待标注文本对应的命名实体类别。
实体词确定子模块,用于确定命名实体类别包含的实体词。
标注词确定子模块,用于根据实体词查找待标注文本中的词,得到标注词;标注词为命名实体词库中与待标注文本中相同的词。
词库标注序列确定子模块,用于根据标注词与对应的命名实体类别,确定词库标注序列。
其中,规则标注序列确定模块2包括:
实体类别确定子模块,用于根据命名实体识别任务设计类别识别规则,得到基于规则的实体类别。
命名实体词确定子模块,用于根据类别识别规则抽取待标注文本中命名实体词。
规则标注序列确定子模块,用于根据命名实体词与对应的基于规则的实体类别,确定规则标注序列。
规则标注序列写入子模块,用于将规则标注序列写入待标注命名实体列表中。
其中,训练模块5包括:
验证集确定子模块,用于对已知标注文本进行数据预处理,得到验证集。
训练模型确定子模块,用于以训练集为输入,对BERT-BiLSTM-CRF模型进行N次训练,得到N个训练模型;N为大于0的正整数。
F1值确定子模块,用于以验证集为输入,计算N个训练模型的F1值;F1值为平衡F分数,用于衡量训练模型的精确度。
最优模型确定子模块,用于对N个训练模型的F1值进行比较,确定F1值最大的训练模型为训练好的BERT-BiLSTM-CRF模型。
其中,系统还包括更新模块9;更新模块9,用于根据预测标签序列更新命名实体词库,得到更新后的命名实体词库。
本发明公开了以下技术效果:
本发明提供一种面向命名实体识别的训练集自动标注方法及系统,包括:根据命名实体词库对待标注文本进行标注得到词库标注序列;根据命名实体识别规则对待标注文本进行标注得到规则标注序列;根据相同的词和抽取的词在待标注文本中的位置得到标注文本;对标注文本进行数据预处理得到训练集;以训练集为输入,对BERT-BiLSTM-CRF模型进行训练,得到训练好的BERT-BiLSTM-CRF模型;对待标注文本进行数据预处理得到待标注文本列表;将待标注文本列表输入训练好的BERT-BiLSTM-CRF模型得到预测标签序列;根据待标注文本列表和预测标签序列更新训练集得到训练样本集。本发明通过基于词库的训练集自动标注、基于规则的训练集自动标注和基于深度学习的训练集自动标注,能够对面向命名实体识别的训练集进行自动标注,提高训练集数据标注的效率,实现不同领域命名实体识别任务的训练集的自动标注。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

Claims (6)

1.一种面向命名实体识别的训练集自动标注方法,其特征在于,所述方法包括:
根据命名实体词库对待标注文本进行标注,得到词库标注序列;所述词库标注序列包括所述命名实体词库中与所述待标注文本中相同的词以及所述相同的词在所述命名实体词库中的类别;具体包括:
确定所述命名实体词库中与所述待标注文本对应的命名实体类别;
确定所述命名实体类别包含的实体词;
根据所述实体词查找所述待标注文本中的词,得到标注词;所述标注词为所述命名实体词库中与所述待标注文本中相同的词;
根据所述标注词与对应的所述命名实体类别,确定所述词库标注序列;具体地,如果识别多个类别的命名实体,则生成多个待标注词列表,每一个列表代表一个类别的待标注命名实体,若标注词列表为多个,则多个标注词列表为词库标注序列,若标注词列表为一个,则该标注词列表为词库标注序列;
根据命名实体识别规则对所述待标注文本进行标注,得到规则标注序列;所述规则标注序列包括所述待标注文本按照命名实体识别规则抽取的词以及所述抽取的词在所述命名实体识别规则中的类别;
根据所述相同的词和所述抽取的词在所述待标注文本中的位置,得到标注文本;所述标注文本包括所述相同的词、所述抽取的词、所述相同的词的类别、所述抽取的词的类别和所述位置的位置索引;
对所述标注文本进行数据预处理,得到训练集;
以所述训练集为输入,对BERT-BiLSTM-CRF模型进行训练,得到训练好的BERT-BiLSTM-CRF模型;
对所述待标注文本进行所述数据预处理,得到待标注文本列表;
将所述待标注文本列表输入所述训练好的BERT-BiLSTM-CRF模型,得到预测标签序列;
根据所述待标注文本列表和所述预测标签序列更新所述训练集,得到训练样本集;
根据所述预测标签序列更新所述命名实体词库,得到更新后的命名实体词库。
2.根据权利要求1所述的面向命名实体识别的训练集自动标注方法,其特征在于,所述根据命名实体识别规则对待标注文本进行标注,得到规则标注序列,具体包括:
根据命名实体识别任务设计类别识别规则,得到基于规则的实体类别;
根据所述类别识别规则抽取所述待标注文本中命名实体的词;
根据所述命名实体的词与对应的所述基于规则的实体类别,确定所述规则标注序列。
3.根据权利要求1所述的面向命名实体识别的训练集自动标注方法,其特征在于,所述以所述训练集为输入,对BERT-BiLSTM-CRF模型进行训练,得到训练好的BERT-BiLSTM-CRF模型,具体包括:
对已知标注文本进行数据预处理,得到验证集;
以所述训练集为输入,对所述BERT-BiLSTM-CRF模型进行N次训练,得到N个训练模型;N为大于0的正整数;
以验证集为输入,计算所述N个训练模型的F1值;所述F1值为平衡F分数,用于衡量所述训练模型的精确度;
对所述N个训练模型的F1值进行比较,确定F1值最大的训练模型为训练好的BERT-BiLSTM-CRF模型。
4.一种面向命名实体识别的训练集自动标注系统,其特征在于,所述系统包括:
词库标注序列确定模块,用于根据命名实体词库对待标注文本进行标注,得到词库标注序列;所述词库标注序列包括所述命名实体词库中与所述待标注文本中相同的词以及所述相同的词在所述命名实体词库中的类别;
所述词库标注序列确定模块包括:
标注类别确定子模块,用于确定所述命名实体词库中与所述待标注文本对应的命名实体类别;
实体词确定子模块,用于确定所述命名实体类别包含的实体词;
标注词确定子模块,用于根据所述实体词查找所述待标注文本中的词,得到标注词;所述标注词为所述命名实体词库中与所述待标注文本中相同的词;
词库标注序列确定子模块,用于根据所述标注词与对应的所述命名实体类别,确定所述词库标注序列;具体地,如果识别多个类别的命名实体,则生成多个待标注词列表,每一个列表代表一个类别的待标注命名实体,若标注词列表为多个,则多个标注词列表为词库标注序列,若标注词列表为一个,则该标注词列表为词库标注序列;
规则标注序列确定模块,用于根据命名实体识别规则对所述待标注文本进行标注,得到规则标注序列;所述规则标注序列包括所述待标注文本按照命名实体识别规则抽取的词以及所述抽取的词在所述命名实体识别规则中的类别;
标注文本确定模块,用于根据所述相同的词和所述抽取的词在所述待标注文本中的位置,得到标注文本;所述标注文本包括所述相同的词、所述抽取的词、所述相同的词的类别、所述抽取的词的类别和所述位置的位置索引;
训练集确定模块,用于对所述标注文本进行数据预处理,得到训练集;
训练模块,用于以所述训练集为输入,对BERT-BiLSTM-CRF模型进行训练,得到训练好的BERT-BiLSTM-CRF模型;
待标注文本列表确定模块,用于对所述待标注文本进行所述数据预处理,得到待标注文本列表;
预测标签序列确定模块,用于将所述待标注文本列表输入所述训练好的BERT-BiLSTM-CRF模型,得到预测标签序列;
训练样本集确定模块,用于根据所述待标注文本列表和所述预测标签序列更新所述训练集,得到训练样本集;
所述系统还包括更新模块;所述更新模块,用于根据所述预测标签序列更新所述命名实体词库,得到更新后的命名实体词库。
5.根据权利要求4所述的面向命名实体识别的训练集自动标注系统,其特征在于,所述规则标注序列确定模块包括:
实体类别确定子模块,用于根据命名实体识别任务设计类别识别规则,得到基于规则的实体类别;
命名实体词确定子模块,用于根据所述类别识别规则抽取所述待标注文本中命名实体词;
规则标注序列确定子模块,用于根据所述命名实体词与对应的所述基于规则的实体类别,确定所述规则标注序列;
规则标注序列写入子模块,用于将所述规则标注序列写入所述待标注命名实体列表中。
6.根据权利要求4所述的面向命名实体识别的训练集自动标注系统,其特征在于,所述训练模块包括:
验证集确定子模块,用于对已知标注文本进行数据预处理,得到验证集;
训练模型确定子模块,用于以所述训练集为输入,对所述BERT-BiLSTM-CRF模型进行N次训练,得到N个训练模型;N为大于0的正整数;
F1值确定子模块,用于以验证集为输入,计算所述N个训练模型的F1值;所述F1值为平衡F分数,用于衡量所述训练模型的精确度;
最优模型确定子模块,用于对所述N个训练模型的F1值进行比较,确定F1值最大的训练模型为训练好的BERT-BiLSTM-CRF模型。
CN202210861894.8A 2022-07-21 2022-07-21 一种面向命名实体识别的训练集自动标注方法及系统 Active CN115146642B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210861894.8A CN115146642B (zh) 2022-07-21 2022-07-21 一种面向命名实体识别的训练集自动标注方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210861894.8A CN115146642B (zh) 2022-07-21 2022-07-21 一种面向命名实体识别的训练集自动标注方法及系统

Publications (2)

Publication Number Publication Date
CN115146642A CN115146642A (zh) 2022-10-04
CN115146642B true CN115146642B (zh) 2023-08-29

Family

ID=83413767

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210861894.8A Active CN115146642B (zh) 2022-07-21 2022-07-21 一种面向命名实体识别的训练集自动标注方法及系统

Country Status (1)

Country Link
CN (1) CN115146642B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010250814A (ja) * 2009-04-14 2010-11-04 Nec (China) Co Ltd 品詞タグ付けシステム、品詞タグ付けモデルのトレーニング装置および方法
CN106776711A (zh) * 2016-11-14 2017-05-31 浙江大学 一种基于深度学习的中文医学知识图谱构建方法
CN110598752A (zh) * 2019-08-16 2019-12-20 深圳宇骏视觉智能科技有限公司 一种自动生成训练数据集的图像分类模型训练方法及系统
CN110688449A (zh) * 2019-09-20 2020-01-14 京东数字科技控股有限公司 基于深度学习的地址文本处理方法、装置、设备及介质
CN110705293A (zh) * 2019-08-23 2020-01-17 中国科学院苏州生物医学工程技术研究所 基于预训练语言模型的电子病历文本命名实体识别方法
CN111738004A (zh) * 2020-06-16 2020-10-02 中国科学院计算技术研究所 一种命名实体识别模型的训练方法及命名实体识别的方法
CN112084746A (zh) * 2020-09-11 2020-12-15 广东电网有限责任公司 一种实体识别方法、系统、存储介质及设备
CN112632997A (zh) * 2020-12-14 2021-04-09 河北工程大学 基于BERT和Word2Vec向量融合的中文实体识别方法
CN113946685A (zh) * 2021-09-28 2022-01-18 大连海洋大学 一种融合规则和深度学习的渔业标准知识图谱构建方法
CN113988054A (zh) * 2021-11-04 2022-01-28 中国矿业大学 一种面向煤矿安全领域的实体识别方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010250814A (ja) * 2009-04-14 2010-11-04 Nec (China) Co Ltd 品詞タグ付けシステム、品詞タグ付けモデルのトレーニング装置および方法
CN106776711A (zh) * 2016-11-14 2017-05-31 浙江大学 一种基于深度学习的中文医学知识图谱构建方法
CN110598752A (zh) * 2019-08-16 2019-12-20 深圳宇骏视觉智能科技有限公司 一种自动生成训练数据集的图像分类模型训练方法及系统
CN110705293A (zh) * 2019-08-23 2020-01-17 中国科学院苏州生物医学工程技术研究所 基于预训练语言模型的电子病历文本命名实体识别方法
CN110688449A (zh) * 2019-09-20 2020-01-14 京东数字科技控股有限公司 基于深度学习的地址文本处理方法、装置、设备及介质
CN111738004A (zh) * 2020-06-16 2020-10-02 中国科学院计算技术研究所 一种命名实体识别模型的训练方法及命名实体识别的方法
CN112084746A (zh) * 2020-09-11 2020-12-15 广东电网有限责任公司 一种实体识别方法、系统、存储介质及设备
CN112632997A (zh) * 2020-12-14 2021-04-09 河北工程大学 基于BERT和Word2Vec向量融合的中文实体识别方法
CN113946685A (zh) * 2021-09-28 2022-01-18 大连海洋大学 一种融合规则和深度学习的渔业标准知识图谱构建方法
CN113988054A (zh) * 2021-11-04 2022-01-28 中国矿业大学 一种面向煤矿安全领域的实体识别方法

Also Published As

Publication number Publication date
CN115146642A (zh) 2022-10-04

Similar Documents

Publication Publication Date Title
CN109992782B (zh) 法律文书命名实体识别方法、装置及计算机设备
US10409911B2 (en) Systems and methods for text analytics processor
CN110232192A (zh) 电力术语命名实体识别方法及装置
CN109960728B (zh) 一种开放域会议信息命名实体识别方法及系统
CN110782892B (zh) 语音文本纠错方法
CN112906397B (zh) 一种短文本实体消歧方法
CN112380863A (zh) 一种基于多头自注意力机制的序列标注方法
CN110348017B (zh) 一种文本实体检测方法、系统及相关组件
CN111061882A (zh) 一种知识图谱构建方法
Li et al. Text-to-text generative adversarial networks
CN110991185A (zh) 一种文章中实体的属性抽取方法及装置
CN115952791A (zh) 基于机器阅读理解的篇章级事件抽取方法、装置、设备及存储介质
CN107797986B (zh) 一种基于lstm-cnn的混合语料分词方法
CN112802570A (zh) 一种针对电子病历命名实体识别系统及方法
CN115935914A (zh) 一种入院记录缺失文本补充方法
CN113343701B (zh) 一种电力设备故障缺陷文本命名实体的抽取方法及装置
CN115098673A (zh) 基于变体注意力及层次结构的业务文书信息抽取方法
CN112732863B (zh) 电子病历标准化切分方法
CN115146642B (zh) 一种面向命名实体识别的训练集自动标注方法及系统
CN114970537B (zh) 基于多层标注策略的跨境民族文化实体关系抽取方法及装置
CN112148879A (zh) 一种自动给代码打数据结构标签的计算机可读存储介质
CN115186670A (zh) 一种基于主动学习的领域命名实体识别方法及系统
CN114611489A (zh) 文本逻辑条件抽取ai模型构建方法、抽取方法及系统
CN114218954A (zh) 病历文本中疾病实体和症状实体阴阳性的判别方法及装置
CN114154489A (zh) 一种三元组抽取方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant