1.本发明涉及信息处理技术领域,更具体地说,涉及一种术语抽取方法、装置、设备及存储介质。
背景技术:
2.术语是表达特定领域学科的基本概念的语言单元,是相对固定的词语或词组,其具有相对完整的结构和语义。术语识别是命名实体研究的一个子领域,是信息处理领域的基础研究任务之一,但是目前缺少一种高效的方法抽取特定领域中的术语。
技术实现要素:
3.本发明的目的是提供一种术语抽取方法、装置、设备及存储介质,能够快速高效的实现特定领域中的术语抽取。
4.为了实现上述目的,本发明提供如下技术方案:
5.一种术语抽取方法,包括:
6.获取训练数据集;其中,所述训练数据集中包含当前场景下指定领域的术语及对应标注,所述标注包括对应术语的词性标注及序列标注;
7.利用所述训练数据集对预设模型进行训练,得到术语抽取模型;
8.确定当前场景下需要进行术语抽取的句子为待抽取句子,对所述待抽取句子进行分词处理,将当前分词处理所得的各词语均输入至所述术语抽取模型,并基于所述术语抽取模型输出的信息确定相应词语为术语。
9.优选的,获取训练数据集,包括:
10.获取包含全部场景下指定领域的术语的术语种子集合,并获取包含当前场景下指定领域的文档的文档集合;
11.对所述文档集合中的各文档进行拆分得到相应的句子,对拆分所得的句子进行分词处理,确定当前分词处理所得的各词语中存在于所述术语种子集合中的词语为待标注词语,对所述待标注词语分别进行词性标注和序列标注,并将标注完成的待标注词语作为术语形成所述训练数据集。
12.优选的,将当前分词处理所得的各词语均输入至所述术语抽取模型之后,还包括:
13.确定停用词及特定词长的词语均为待删除词语,并删除所述术语抽取模型输出的词语中存在的待删除词语。
14.优选的,删除所述术语抽取模型输出的词语中存在的待删除词语之后,还包括:
15.将所述术语抽取模型输出的、删除所述待删除词语后所得的词语输出至人工审核终端,并删除所述术语抽取模型输出的、删除所述待删除词语后所得的词语中,所述人工审核终端反馈的未通过审核的词语。
16.优选的,删除所述人工审核终端反馈的未通过审核的词语之后,还包括:
17.将所述术语抽取模型输出的、删除所述待删除词语及所述人工审核终端反馈的未
通过审核的词语后所得的词语,作为术语加入至所述术语种子集合。
18.优选的,获取包含全部场景下指定领域的术语的术语种子集合,包括:
19.采用网络爬虫的方式获取包含全部场景下指定领域的术语的术语种子集合。
20.优选的,所述预设模型为利用bert、bilstm及crf进行联合建模所得的模型。
21.一种术语抽取装置,包括:
22.获取模块,用于:获取训练数据集;其中,所述训练数据集中包含当前场景下指定领域的术语及对应标注,所述标注包括对应术语的词性标注及序列标注;
23.训练模块,用于:利用所述训练数据集对预设模型进行训练,得到术语抽取模型;
24.抽取模块,用于:确定当前场景下需要进行术语抽取的句子为待抽取句子,对所述待抽取句子进行分词处理,将当前分词处理所得的各词语均输入至所述术语抽取模型,并基于所述术语抽取模型输出的信息确定相应词语为术语。
25.一种术语抽取设备,包括:
26.存储器,用于存储计算机程序;
27.处理器,用于执行所述计算机程序时实现如上任一项所述术语抽取方法的步骤。
28.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时可以实现如上任一项所述术语抽取方法的步骤。
29.本发明提供了一种术语抽取方法、装置、设备及存储介质,该方法包括:获取训练数据集;利用所述训练数据集对预设模型进行训练,得到术语抽取模型;确定当前场景下需要进行术语抽取的句子为待抽取句子,对所述待抽取句子进行分词处理,将当前分词处理所得的各词语均输入至所述术语抽取模型,并基于所述术语抽取模型输出的信息确定相应词语为术语;其中,所述训练数据集中包含当前场景下指定领域的术语及对应标注,所述标注包括对应术语的词性标注及序列标注。本技术中利用指定领域当前场景下具有词性标注及序列标注的术语集合进行预设模型的训练,从而得到具有术语抽取功能的术语抽取模型,然后将当前场景下需要进行术语抽取的句子分词处理后所得的词语均输入至术语抽取模型中,能够基于术语抽取模型输出的信息确定相应词语均为当前场景下的术语。从而对于指定领域的任意场景,仅需利用该任意场景下具有词性标注及序列标注的术语集合实现模型训练,即可得到能够对该任意场景属于指定领域的术语进行抽取的术语抽取模型,进而只需将该场景下未标注的句子中的词语输入至术语抽取模型,即可得到该句子中包含的术语,从而能够快速高效的实现特定领域中的术语抽取。
附图说明
30.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
31.图1为本发明实施例提供的一种术语抽取方法的流程图;
32.图2为本发明实施例提供的一种术语抽取方法中预设模型的示意图;
33.图3为本发明实施例提供的一种术语抽取装置的结构示意图。
具体实施方式
34.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
35.请参阅图1,其示出了本发明实施例提供的一种术语抽取方法的流程图,具体可以包括:
36.s11:获取训练数据集;其中,训练数据集中包含当前场景下指定领域的术语及对应标注,标注包括对应术语的词性标注及序列标注。
37.需要说明的是,本技术实施例中的指定领域可以为任何需要实现术语抽取的特定领域学科,如金融、教育等;而场景可以指不同的机构,也可以指不同的业务操作,如指定领域为金融,不同的场景则指不同的银行;当然根据实际需要进行的其他设定也均在本发明的保护范围之内,由于金融领域的术语长度较长,构词复杂,嵌套型术语较多,缺乏高质量领域数据集,因此本技术实施例以指定领域为金融进行具体说明。
38.其中,训练数据集中包含指定领域当前场景下的多个术语,且每个术语均具有相应的标注。具体来说,术语与现有技术中对应概念的含义相同,其为特定领域学科的专业词汇,金融领域的术语例如通货膨胀、市盈率、利率等;任意术语具有的标注包含该任意术语的词性标注及序列标注,词性标注即为表示相应词语词性(如形容词、副词等)的标注,而序列标注即为表示相应词语是否为术语以及其为术语时其中各个字在所属术语中位置(如开头、中间、结尾等)的标注,例如,如果任意词语不为术语,则其序列标注则为表示该任意词语不属于术语的标注,如果任意词语为术语,则序列标注则为表示该任意词语中各个字在该任意词语中位置的标注。
39.s12:利用训练数据集对预设模型进行训练,得到术语抽取模型。
40.在得到训练数据集后,则可以利用训练数据集对预设模型进行训练,从而得到术语抽取模型;其中,预设模型可以根据实际需要进行设定,如预训练语言模型(bert)、bilstm、crf等。
41.s13:确定当前场景下需要进行术语抽取的句子为待抽取句子,对待抽取句子进行分词处理,将当前分词处理所得的各词语均输入至术语抽取模型,并基于术语抽取模型输出的信息确定相应词语为术语。
42.利用训练好的术语抽取模型,则可以对当前场景下未标注的句子进行分词处理所得的各个词语进行识别,进而对术语抽取模型输出的各词语及相应标注进行分析,即可获知哪些词语的标注为术语应具有的词性标记及序列标注,进而确定这些词语为指定领域当前场景下的术语。
43.本技术中利用指定领域当前场景下具有词性标注及序列标注的术语集合进行预设模型的训练,从而得到具有术语抽取功能的术语抽取模型,然后将当前场景下需要进行术语抽取的句子分词处理后所得的词语均输入至术语抽取模型中,能够基于术语抽取模型输出的信息确定相应词语均为当前场景下的术语。从而对于指定领域的任意场景,仅需利用该任意场景下具有词性标注及序列标注的术语集合实现模型训练,即可得到能够对该任意场景属于指定领域的术语进行抽取的术语抽取模型,进而只需将该场景下未标注的句子
中的词语输入至术语抽取模型,即可得到该句子中包含的术语,从而能够快速高效的实现特定领域中的术语抽取。
44.本发明实施例提供的一种术语抽取方法,获取训练数据集,可以包括:
45.获取包含全部场景下指定领域的术语的术语种子集合,并获取包含当前场景下指定领域的文档的文档集合;而获取包含全部场景下指定领域的术语的术语种子集合,具体可以为采用网络爬虫的方式获取包含全部场景下指定领域的术语的术语种子集合;
46.对文档集合中的各文档进行拆分得到相应的句子,对拆分所得的句子进行分词处理,确定当前分词处理所得的各词语中存在于术语种子集合中的词语为待标注词语,对待标注词语分别进行词性标注和序列标注,并将标注完成的待标注词语作为术语形成训练数据集。
47.本技术实施例中可以获取指定领域中现有的全部术语(不区分场景),构建包含全部现有术语的术语种子集合p;其中,术语种子结合p是影响术语抽取的重要阶段,其可以采用网络爬虫、相关电子书籍解析等方式获取。然后获取指定领域中的文档集合d,并对文档集合d中的文档进行拆解,获得所有文档中的句子,进而进行分词、词性标注等处理后得到句子集合s。从而通过这种方式有效且准确的得到指定领域中当前场景下的训练数据集。
48.在对文档进行拆解时可以是将文档依据一定的长度和标点符号进行拆分,进而把文档转化成句子集合,例如:对于文档中的一个段落“金融业的膨胀前提是利率足够低,如果利率高,则收益归于实体,如果利率低则收入归于金融业。因为利率过低,杠杆容易放大债务规模,金融业自动创造货币信用,金融业通过借贷创造货币,再通过货币的进一步借贷创造货币,周而复始。”,拆解后的句子集合可以为:[“金融业的膨胀前提是利率足够低,如果利率高,则收益归于实体,如果利率低则收入归于金融业。”,“因为利率过低,杠杆容易放大债务规模,金融业自动创造货币信用,金融业通过借贷创造货币,再通过货币的进一步借贷创造货币,周而复始。”]
[0049]
在对句子进行分词处理及词性标注时,可以利用分词工具对拆分所得句子进行分词及词性标注处理,所使用的分词工具可以为jieba分词、斯坦福汉语分词工具、哈工大分词工具等;例如:对于句子“金融业的膨胀前提是利率足够低,如果利率高,则收益归于实体,如果利率低则收入归于金融业。”经过分词及词性标注处理后的结果则可以为:“金融业/n的/u膨胀/v前提/n是/v利率/n足够/v低/a,/x如果/c利率/n高/a,/x则/d收益/n归于/v实体/n,/x如果/c利率/n低/a则/d收入/n归于/v金融业/n。/x”。常见的词性及表示词性的标识符号可以如表1所示,其中,标识符号即为词性标注。
[0050]
表1
[0051]
[0052][0053]
可以采用穷举法列出句子集合s中所有可能的词组,任意数量相邻的词语都可以作为词组,比如句子由w1、w2、w3三个词组成,那么相应的所有词组则可以为w1w2、w2w3、w1w2w3。对于句子集合s中所有的词语及词组,如果出现在术语种子集合p中,则将其标记为指定领域的术语(即对其进行序列标注),基于这些术语形成相应的训练数据集t。其中,序列标注采用“bieo”标注法实现,具体来说,对于一个术语的开头标记成b,术语的中间标记成i,术语的结尾标记成e,非术语标记成o。另外,任意术语的词性标注及序列标注可以组成联合标注,如对于一个术语的开头标记成b-词性,术语的中间标记成i-词性,术语的结尾标记成e-词性,单字标记成o-词性,如表2所示。
[0054]
表2
[0055]
句子序列标注联合标注金bb-n融ii-n业ee-n的oo-uj膨bb-v胀ee-v.........
[0056]
本发明实施例提供的一种术语抽取方法,将当前分词处理所得的各词语均输入至术语抽取模型之后,还包括:
[0057]
确定停用词及特定词长的词语均为待删除词语,并删除术语抽取模型输出的词语中存在的待删除词语;
[0058]
删除术语抽取模型输出的词语中存在的待删除词语之后,还包括:
[0059]
将术语抽取模型输出的、删除待删除词语后所得的词语输出至人工审核终端,并删除术语抽取模型输出的、删除待删除词语后所得的词语中,人工审核终端反馈的未通过审核的词语;
[0060]
删除人工审核终端反馈的未通过审核的词语之后,还包括:
[0061]
将术语抽取模型输出的、删除待删除词语及人工审核终端反馈的未通过审核的词语后所得的词语,作为术语加入至术语种子集合。
[0062]
本技术实施例在得到术语抽取模型输出的全部术语后,由这些术语构成术语集合j,由于术语抽取模型抽取的术语可能存在误差,因为为了提高所提取数据的准确性,本技术实施例可以对术语集合j进行过滤。具体来说,对术语集合j进行过滤可以包括机器过滤和人工过滤;首先是机器过滤,包括去掉术语集合j中的停用词、根据实际需要设定的特定词长的术语等;然后是人工审核,将术语集合j输出至人工审核终端,由人工在人工审核终端过滤掉不属于指定领域的术语,最终得到术语集合j1从而扩充种子术语。另外,本技术实施例还会将术语集合j1加入至术语种子集合p中,从而实现术语种子集合p的扩充,进一步提高后续利用该术语种子集合p训练模型时的准确性。
[0063]
本发明实施例提供的一种术语抽取方法,预设模型可以为利用bert、bilstm及crf进行联合建模所得的模型。
[0064]
本技术实施例中可以采用bert(预训练语言模型)、bilstm及crf的联合建模方式实现术语抽取。具体来说,bert能够克服word2vec、glove词向量等无法解决多义词的问题,bilstm能够解决rnn无法捕捉长依赖的问题,并且更适合短文本建模,crf能够考虑到标签之间的依赖,进而提高解码的准确性。考虑到金融领域中嵌套型的术语较多,在某些场景中前后添加修饰性词语可以构成新的术语,造成边界识别错误;如“新兴经济体”中“经济体”是一个术语,“中长期投资”中“投资”也是一个术语;因此本技术实施例中将分词词性特征加入模型。以“金融业的膨胀前提是利率足够低,如果利率高,则收益归于实体,如果利率低则收入归于金融业。”这句话为例,抽取出的术语为“金融业”、“膨胀”、“利率”、“收益”。如图2所示,预设模型可以包括:
[0065]
输入层:构建bert模型的输入向量,对于训练数据集中的每个句子在开头和结尾分别加入“[cls]”和“[sep]”,根据bert模型自带的vocab字典,找到该句子中每个字在字典中对应的下标索引,获得句子的初始向量。本技术实施例中将句子的最大长度限制为100,如果句子向量长度大于100,则舍弃多余的部分,如果小于100后面则在句子的后面补0。将句子的初始向量输入到bert模型,得到100*768的输出矩阵。根据构建的词性字典使用one-hot方式构建字的词性向量,通过一个全连接层,将其映射为128维的词性向量。最后将bert输出向量和词性向量拼接形成输入层得到896维输出向量。
[0066]
隐含层:使用bilstm捕捉句子的上下文特征,将前向lstm的输出向量和后向lstm的输出向量拼接在一起得到隐藏层128维的输出向量。
[0067]
输出层:输出层利用crf进行解码,因为使用
‘
b’、
‘
i’、
‘
e’、
‘
o’、
‘
[cls]’、
‘
[sep]’6个序列标注训练数据分别设为s1、s2、s3、s4、s5、s6。在初始化crf转移矩阵时,增加了一个
‘
[start]’代表起点状态标志设为s0,由此可得标签集合s=(s0,s1,s2,s3,s4,s5,s6)。假设转移矩阵为a7×7,a
i,j
代表从si到sj的转移分数。由隐含层得到的bilstm输出矩阵p
100
×
128
,通过全连接层将其映射为p
100
×7的矩阵,其中p
i,j
表示xi对应标签为sj的得分。由此,可以计算标签序列的得分:整个标签序列的得分等于句子中所有字的得分之和,由隐含层的输出矩阵p和crf层的转移矩阵a决定。利用softmax函数可用于获得归一化概率:
[0068]
最后利用维特比解码选出概率最大的标签路径,最后得到术语集合。
[0069]
在一种具体实现方式中,本发明实施例提供的一种术语抽取方法可以包括以下步骤:
[0070]
步骤101,获取金融领域中现有的术语,构建术语种子集合p。
[0071]
步骤102,获取金融领域文档集合d,进行拆解获得所有文档中的句子,并进行分词、词性标注及序列标注得到句子集合s。
[0072]
步骤103,对于句子集合s中的每个词语及多个词语构成的词组,如果出现在p中,
则标记为金融领域术语形成训练数据集t。
[0073]
步骤104,通过训练数据集t对预设模型进行训练得到术语抽取模型。
[0074]
步骤105,利用训练好的术语抽取模型,对未标注的句子集合s进行术语抽取获得术语集合j。通过训练好的术语抽取模型,抽取句子集合s或者新的句子集合中的领域术语得到术语集合j的示例如表3所示:
[0075]
表3
[0076][0077][0078]
步骤106,对术语集合j进行过滤,机器过滤和人工过滤得到术语集合j1,并利用术语集合j1扩充术语种子集合p。
[0079]
本技术能够减少人工构建金融领域词库的成本,通过系统获取文档,自动抽取术语,扩充领域词库;采用模型回标的方式扩充训练数据,仅需人工审核,减少了人工标注数据的成本;根据金融领域术语的特点,加入分词词性特征,有效抽取出嵌套型领域术语,提升了模型整体抽取准确率和召回率。
[0080]
本发明实施例还提供了一种术语抽取装置,如图3所示,可以包括:
[0081]
获取模块11,用于:获取训练数据集;其中,训练数据集中包含当前场景下指定领域的术语及对应标注,标注包括对应术语的词性标注及序列标注;
[0082]
训练模块12,用于:利用训练数据集对预设模型进行训练,得到术语抽取模型;
[0083]
抽取模块13,用于:确定当前场景下需要进行术语抽取的句子为待抽取句子,对待抽取句子进行分词处理,将当前分词处理所得的各词语均输入至术语抽取模型,并基于术语抽取模型输出的信息确定相应词语为术语。
[0084]
本发明实施例还提供了一种术语抽取设备,可以包括:
[0085]
存储器,用于存储计算机程序;
[0086]
处理器,用于执行计算机程序时实现如上任一项术语抽取方法的步骤。
[0087]
一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可以实现如上任一项术语抽取方法的步骤。
[0088]
需要说明的是,本发明实施例提供的一种术语抽取装置、设备及存储介质中相关
部分的说明请参见本发明实施例提供的一种术语抽取方法中对应部分的详细说明,在此不再赘述。另外本发明实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
[0089]
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
技术特征:
1.一种术语抽取方法,其特征在于,包括:获取训练数据集;其中,所述训练数据集中包含当前场景下指定领域的术语及对应标注,所述标注包括对应术语的词性标注及序列标注;利用所述训练数据集对预设模型进行训练,得到术语抽取模型;确定当前场景下需要进行术语抽取的句子为待抽取句子,对所述待抽取句子进行分词处理,将当前分词处理所得的各词语均输入至所述术语抽取模型,并基于所述术语抽取模型输出的信息确定相应词语为术语。2.根据权利要求1所述的方法,其特征在于,获取训练数据集,包括:获取包含全部场景下指定领域的术语的术语种子集合,并获取包含当前场景下指定领域的文档的文档集合;对所述文档集合中的各文档进行拆分得到相应的句子,对拆分所得的句子进行分词处理,确定当前分词处理所得的各词语中存在于所述术语种子集合中的词语为待标注词语,对所述待标注词语分别进行词性标注和序列标注,并将标注完成的待标注词语作为术语形成所述训练数据集。3.根据权利要求2所述的方法,其特征在于,将当前分词处理所得的各词语均输入至所述术语抽取模型之后,还包括:确定停用词及特定词长的词语均为待删除词语,并删除所述术语抽取模型输出的词语中存在的待删除词语。4.根据权利要求3所述的方法,其特征在于,删除所述术语抽取模型输出的词语中存在的待删除词语之后,还包括:将所述术语抽取模型输出的、删除所述待删除词语后所得的词语输出至人工审核终端,并删除所述术语抽取模型输出的、删除所述待删除词语后所得的词语中,所述人工审核终端反馈的未通过审核的词语。5.根据权利要求4所述的方法,其特征在于,删除所述人工审核终端反馈的未通过审核的词语之后,还包括:将所述术语抽取模型输出的、删除所述待删除词语及所述人工审核终端反馈的未通过审核的词语后所得的词语,作为术语加入至所述术语种子集合。6.根据权利要求5所述的方法,其特征在于,获取包含全部场景下指定领域的术语的术语种子集合,包括:采用网络爬虫的方式获取包含全部场景下指定领域的术语的术语种子集合。7.根据权利要求6所述的方法,其特征在于,所述预设模型为利用bert、bilstm及crf进行联合建模所得的模型。8.一种术语抽取装置,其特征在于,包括:获取模块,用于:获取训练数据集;其中,所述训练数据集中包含当前场景下指定领域的术语及对应标注,所述标注包括对应术语的词性标注及序列标注;训练模块,用于:利用所述训练数据集对预设模型进行训练,得到术语抽取模型;抽取模块,用于:确定当前场景下需要进行术语抽取的句子为待抽取句子,对所述待抽取句子进行分词处理,将当前分词处理所得的各词语均输入至所述术语抽取模型,并基于所述术语抽取模型输出的信息确定相应词语为术语。
9.一种术语抽取设备,其特征在于,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述术语抽取方法的步骤。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述术语抽取方法的步骤。
技术总结
本发明公开了一种术语抽取方法、装置、设备及存储介质,该方法包括:获取训练数据集;利用所述训练数据集对预设模型进行训练,得到术语抽取模型;确定当前场景下需要进行术语抽取的句子为待抽取句子,对所述待抽取句子进行分词处理,将当前分词处理所得的各词语均输入至所述术语抽取模型,并基于所述术语抽取模型输出的信息确定相应词语为术语;其中,所述训练数据集中包含当前场景下指定领域的术语及对应标注,所述标注包括对应术语的词性标注及序列标注。标注的句子中的词语输入至术语抽取模型,即可得到该句子中包含的术语,从而能够快速高效的实现特定领域中的术语抽取。速高效的实现特定领域中的术语抽取。速高效的实现特定领域中的术语抽取。
技术研发人员:王超 郑力 杨声春 游佳川 何诺 覃杨微 徐欣欣 王璇 刘馨杨 袁文忆
受保护的技术使用者:重庆农村商业银行股份有限公司
技术研发日:2021.12.08
技术公布日:2022/3/8