一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

命名实体识别方法、训练方法、装置、设备及介质与流程

2021-10-19 23:38:00 来源:中国专利 TAG:方法 人工智能 介质 实体 命名


1.本技术涉及人工智能领域,特别涉及一种命名实体识别方法、训练方法、装置、设备及介质。


背景技术:

2.命名实体识别(named entity recognition,ner),是指识别文本中具有特定意义的实体,主要包括人名、地名、机构名、专有名词等文字。
3.相关技术中,命名实体识别常采用双向长短时记忆(bi-directional long short-term memory,bi-lstm) 条件随机场(conditional random field,crf)模型来解决。bi-lstm crf具有良好的上下文建模能力。
4.上述方案需要对实体类型和实体边界同时建模,在多行业多实体的命名实体识别场景中,解码速度和解码准确性较差。


技术实现要素:

5.本技术提供了一种命名实体识别方法、训练方法、装置、设备及介质,提供了一种在多行业多实体的命名实体识别场景下,解码速度较快且解码准确性较好的技术方案。所述技术方案如下:
6.根据本技术的一方面,提供了一种命名实体识别方法,所述方法包括:
7.获取输入文本,所述输入文本包括至少一个字符;
8.对所述输入文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量;
9.基于所述每个字符的第一字符编码向量,预测所述每个字符为候选实体类型的开始字符的第一概率,以及所述每个字符为所述候选实体类型的结束字符的第二概率;
10.基于所述第一概率和所述第二概率识别出属于所述候选实体类型的命名实体。
11.根据本技术的另一方面,提供了一种命名实体模型的训练方法,所述命名实体模型包括:语言模型和二元模型,所述方法包括:
12.获取训练集,所述训练集包括样本文本、以及所述样本文本中的样本命名实体;
13.调用所述预训练语言模型对所述样本文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量;
14.调用所述二元模型基于所述每个字符的第一字符编码向量,预测所述每个字符为候选实体类型的开始字符的第一概率,以及所述每个字符为所述候选实体类型的结束字符的第二概率;基于所述第一概率和所述第二概率识别出属于所述候选实体类型的预测命名实体;
15.基于所述预测命名实体和所述样本命名实体之间的误差,对所述语言模型和所述二元模型的网络参数进行训练。
16.根据本技术的另一方面,提供了一种命名实体识别装置,所述装置包括:
17.获取模块,用于获取输入文本,所述输入文本包括至少一个字符;
18.编码模块,用于对所述输入文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量;
19.预测模块,用于基于所述每个字符的第一字符编码向量,预测所述每个字符为候选实体类型的开始字符的第一概率,以及所述每个字符为所述候选实体类型的结束字符的第二概率;
20.识别模块,用于基于所述第一概率和所述第二概率识别出属于所述候选实体类型的命名实体。
21.根据本技术的另一方面,提供了一种命名实体模型的训练装置,所述命名实体模型包括:语言模型和二元模型,所述装置包括:
22.获取模块,用于获取训练集,所述训练集包括样本文本、以及所述样本文本中的样本命名实体;
23.编码模块,用于调用所述预训练语言模型对所述样本文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量;
24.预测模块,用于调用所述二元模型基于所述每个字符的第一字符编码向量,预测所述每个字符为候选实体类型的开始字符的第一概率,以及所述每个字符为所述候选实体类型的结束字符的第二概率;基于所述第一概率和所述第二概率识别出属于所述候选实体类型的预测命名实体;
25.训练模块,用于基于所述预测命名实体和所述样本命名实体之间的误差,对所述语言模型和所述二元模型的网络参数进行训练。
26.根据本技术的另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上方面所述的命名实体识别方法。
27.根据本技术的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现如上方面所述的命名实体识别方法。
28.根据本技术的另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面的各种可选实现方式中提供的命名实体识别方法。
29.本技术提供的技术方案带来的有益效果至少包括:
30.通过编码输入文本中的每个字符,基于每个字符的第一字符编码向量,预测每个字符为候选实体类型的开始字符的第一概率,以及每个字符为候选实体类型的结束字符的第二概率,从而识别出属于候选实体类型的命名实体,由于分层建模了命名实体的开始和结尾,训练过程不需要引入实体边界标签,从而降低了在多行业多实体的命名识别场景下的训练标签数量,提高了命名实体识别的识别速度和识别准确率。
附图说明
31.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
32.图1是本技术一个示例性实施例提供的计算机系统的原理示意图;
33.图2是本技术一个示例性实施例提供的一种命名实体识别方法的示意图;
34.图3是本技术一个示例性实施例提供的另一种命名实体识别方法的原理示意图;
35.图4是本技术一个示例性实施例提供的一种命名实体识别方法的示意图;
36.图5是本技术一个示例性实施例提供的bert模型的结构示意图;
37.图6是本技术一个示例性实施例提供的全连接层的结构示意图;
38.图7是本技术一个示例性实施例提供的命名实体识别模型的结构示意图;
39.图8是本技术一个示例性实施例提供的命名实体识别场景的示意图;
40.图9是本技术一个示例性实施例提供的用户画像标签的结构示意图;
41.图10是本技术一个示例性实施例提供的广告推送系统的结构示意图;
42.图11是本技术一个示例性实施例提供的一种命名实体识别模型的训练方法的示意图;
43.图12是本技术一个示例性实施例提供的一种分布式系统的框图;
44.图13是本技术一个示例性实施例提供的一种多个区块之间的区块关系的示意图;
45.图14是本技术一个示例性实施例提供的一种命名实体识别装置的示意图;
46.图15是本技术一个示例性实施例提供的一种命名实体识别装置的示意图;
47.图16是本技术一个示例性实施例提供的一种计算机设备的结构示意图。
48.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
具体实施方式
49.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
50.在对本技术所示的各个实施例进行说明之前,首先对本技术涉及到的几个概念进行介绍:
51.1)人工智能(artificial intelligence,ai)
52.人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
53.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机
视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
54.2)计算机视觉(computer vision,cv)
55.计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、光学字符识别(optical character recognition,ocr)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3d(3dimensional,三维)技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
56.3)机器学习(machine learning,ml)
57.机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
58.4)自然语言处理(nature language processing,nlp)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
59.本技术实施例的方案包括模型训练阶段和命名实体识别阶段。图1是根据一示例性实施例示出的一种计算机系统的框架图。如图1所示,在模型训练阶段,模型训练设备110通过预先设置好的训练样本集训练出准确性较高的命名实体识别模型。在命名实体识别阶段,命名实体识别设备120根据训练出的命名实体识别模型以及输入的目标文本,识别出多行业多实体的命名实体。
60.其中,上述模型训练设备110和命名实体识别设备120可以是具有机器学习能力的计算机设备,比如,该计算机设备可以是终端或服务器。
61.可选的,上述模型训练设备110和命名实体识别设备120可以是同一个设备,或者,模型训练设备110和命名实体识别设备120也可以是不同的设备。并且,当模型训练设备110和命名实体识别设备120是不同的设备时,模型训练设备110和命名实体识别设备120可以是同一类型的设备,比如模型训练设备110和命名实体识别设备120可以都是服务器;或者,模型训练设备110和命名实体识别设备120也可以是不同类型的设备。上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。上述终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信
方式进行直接或间接地连接,本技术在此不做限制。
62.图2示出了本技术一个示例性实施例提供的命名实体识别方法的流程图。本实施例以该方法应用于图1所示的命名实体识别设备120执行来举例说明。该方法包括:
63.步骤202:获取输入文本,输入文本包括至少一个字符;
64.输入文本是需要进行命名实体识别的文本。输入文本包括一个或多个字符。在一个示例中,输入文本是用户帐号的用户画像中的文本。
65.步骤204:对命名实体识别输入文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量;
66.示例性的参考图3,命名实体识别模型包括:语言模型122和二元模型124。
67.语言模型122的标准定义为:对于语言序列w1,w2,...,w
n
,用于计算该语言序列的概率的模型,w代表字符,下标代表字符在语言序列中的出现顺序。从机器学习的角度来看,语言模型是对语句中的各个词语的概率分布的建模。较为通俗的理解为:语言模型是判断一个语言序列是否是正常语句的模型,也即判断一个语言序列是否为人类语言。可选地,语言模型是来自变压器的双向编码器表示(bidirectional encoder representations from transformers,bert)模型、知识增强的语义表示模型(enhanced representation from knowledge integration,ernie)、自回归语言模型(xlnet)、跨度bert(span-bert)中的至少一种。
68.二元模型124是包含两个分类层且两个分类层之间存在关联的分类模型。在本实施例中,二元模型124是用于对当前字符是否为某一个候选实体类型的开始字符,以及当前字符是否为某一个候选实体类型的结束字符进行分类的模型。
69.调用语言模型122对命名实体识别输入文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量。
70.步骤206:基于每个字符的第一字符编码向量,预测每个字符为候选实体类型的开始字符的第一概率,以及命名实体识别每个字符为候选实体类型的结束字符的第二概率;
71.调用二元模型124基于命名实体识别每个字符的第一字符编码向量,预测命名实体识别每个字符为候选实体类型的开始字符的第一概率,以及命名实体识别每个字符为命名实体识别候选实体类型的结束字符的第二概率。
72.步骤208:基于第一概率和第二概率识别出属于命名实体识别候选实体类型的命名实体。
73.对于候选实体类型x,将具有最高第一概率的第一字符以及具有最高第二概率的第二字符之间的字符,识别为一个命名实体y。该命名实体y的实体类型是候选实体类型x。
74.候选实体类型x为一个或多个。示意性的,候选实体类型包括属于至少两个行业的至少两个实体类型。也称,多行业多实体的命名实体识别场景。
75.示例性的参考图3,假设输入文本是“我喜欢凯迪拉克汽车”,候选实体类型x包括汽车品牌,在字符“凯”具有最高的第一概率,字符“克”具有最高的第二概率的情况下,将字符“凯迪拉克”识别为命名实体,且命名实体“凯迪拉克”的实体类型为汽车品牌。
76.综上所述,本实施例提供的方法,通过编码输入文本中的每个字符,基于每个字符的第一字符编码向量,预测每个字符为候选实体类型的开始字符的第一概率,以及每个字符为候选实体类型的结束字符的第二概率,从而识别出属于候选实体类型的命名实体,由
于分层建模了命名实体的开始和结尾,训练过程不需要引入实体边界标签,从而降低了在多行业多实体的命名识别场景下的训练标签数量,提高了命名实体识别的识别速度和识别准确率。
77.图4示出了本技术一个示例性实施例提供的命名实体识别方法的流程图。本实施例以该方法应用于图1所示的命名实体识别设备120执行来举例说明。该方法包括:
78.步骤401:获取输入文本,输入文本包括至少一个字符;
79.输入文本是需要进行命名实体识别的文本。输入文本包括一个或多个字符。在一个示例中,输入文本是用户帐号的用户画像中的文本。
80.步骤402:调用语言模型对命名实体识别输入文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量;
81.在本实施例中,以语言模型是bert模型中的编码器为例来进行说明。bert模型是由谷歌公司(google)开发的一种采用双向编码器表示法的用于自然语言处理的预训练语言模型。bert模型在arxiv网站的相关论文地址为https://arxiv.org/pdf/1810.04805.pdf。bert模型包括编码器和解码器。在本实施例中,仅需要使用bert模型的编码器即可。
82.示意性的,bert模型是预先采用通用语料库训练得到的。或者,bert模型是先采用通用语料库训练后,再采用命名实体场景相关的一个或多个场景下的指定领域语料进行再次训练后的模型。本实施例对bert模型的具体训练方式不加以限定。
83.调用bert模型中的编码器对命名实体识别输入文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量。图5示出了bert模型的结构。
84.在图5中,字符cls表示输入文本的开始,字符sep表示输入文本的结束。tok
i
代表句子中的第i个字符,e
i
代表句子中第i个词的嵌入向量,t
i
代表句子中第i个词的第一字符编码向量。0代表概率为0,b-per代表预测出的概率。若句子中包括n个字符,则i为不大于n的正整数。
85.步骤403:调用二元模型中的第一分类层对每个字符的第一字符编码向量进行预测,得到每个字符的第二字符编码向量,以及字符为候选实体类型的开始字符的第一概率;
86.示例性的,第一分类层采用第一全连接(fully connected,fc)层来实现,第二分类层采用第二全连接层来实现。图6示出了全连接层的典型实现。
87.结合参考图7,以输入文本为“宝马发布新宝马3系”为例,字符cls表示输入文本的开始,字符sep表示输入文本的结束。e代表嵌入(embedding)向量,比如e

代表字符“宝”的嵌入向量;t代表第一字符编码向量,比如t

代表字符“宝”的第一字符编码向量。
88.如图7所示,假设候选实体类型51是汽车品牌,候选实体类型52是车型系列。开始层会预测出第一个“宝”是候选实体类型51的开始字符,也即候选实体类型51的具有最高第一概率的字符;第二个“宝”是候选实体类型52的开始字符,也即候选实体类型51的具有最高第一概率的字符。
89.步骤404:对每个字符的第一字符编码向量和第二字符编码向量进行级联,得到字符的合并字符编码向量;
90.比如,将字符“宝”的第一字符编码向量t

和开始层输出的字符“宝”的第二字符编码向量进行级联(concat),然后得到字符“宝”的合并字符编码向量。
91.步骤405:调用二元模型的第二分类层对每个字符的合并字符编码向量进行预测,得到每个字符为候选实体类型的结束字符的第二概率;
92.如图7所示,结束层会预测出第一个“马”是候选实体类型51的结束字符,也即候选实体类型51的具有最高第二概率的字符;字符“系”是候选实体类型52的结束字符,也即候选实体类型52的具有最高第二概率的字符。
93.步骤406:基于第一概率和第二概率识别出属于命名实体识别候选实体类型的命名实体。
94.对于候选实体类型x,将具有最高第一概率的第一字符以及具有最高第二概率的第二字符之间的字符,识别为一个命名实体y。该命名实体y的实体类型是候选实体类型x。
95.如图5所示,将“宝马”识别为第一个命名实体,实体类型为汽车品牌;将“宝马3系”识别为第二个命名实体,实体类型为车型系列。
96.综上所述,本实施例提供的方法,通过编码输入文本中的每个字符,基于每个字符的第一字符编码向量,预测每个字符为候选实体类型的开始字符的第一概率,以及每个字符为候选实体类型的结束字符的第二概率,从而识别出属于候选实体类型的命名实体,由于分层建模了命名实体的开始和结尾,训练过程不需要引入实体边界标签,从而降低了在多行业多实体的命名识别场景下的训练标签数量,提高了命名实体识别的识别速度和识别准确率。
97.上述命名实体识别方法可以应用于用户标签的挖掘过程。在一个示意性的示例中,在广告推送领域,需要对用户的历史行为数据进行数据挖掘,从而为用户打上用户画像标签。如图8所示:
98.在步骤81中,获取多场景文本;
99.获取用户点击的广告、用户阅读过的文章、用户购买过的商品标题以及用户安装或下载过的app的描述等多个场景的文本,得到用户帐号对应的多场景文本。
100.多场景文本包括用户帐号在至少两个使用场景(或行业)下的日志数据所产生的文本。
101.在步骤82中,多场景命名实体识别;
102.对用户帐号的多场景文本进行命名实体识别,从而获得实体标签。
103.在步骤83中,用户行为建模;
104.根据每个用户帐号对应的实体标签,对用户的行为模式进行建模,得到每个用户帐号的用户画像标签。
105.在步骤84中,建立用户实体词标签;
106.根据用户画像标签确定每个用户的用户偏好,建立每个用户的用户实体词标签。在用户特征构建过程中,用户特征包括用户属性特征、用户偏好特征和用户统计特征,为了更方便的使用,可以构建两种格式的特征数据(显示特征,隐示特征):
107.语义特征:即语义标签,是显示特征(如学历,职业等用户属性特征,如科技极客、省油的车、老人机等用户偏好特征)。
108.嵌入(embedding)特征:是隐示特征,包括用户行为嵌入特征(如浏览统一资源标识符(uniform resource locator,url)向量,点击饲料feed流向量等用户统计特征);也包括语义嵌入特征(如语义标签向量化等用户偏好特征)。
109.在步骤85中,用户行为兴趣定向;
110.根据用户实体词标签确定用户行为兴趣定向。
111.在步骤86中,用户语义特征。
112.根据用户实体词标签确定用户语义特征。
113.在本技术的示例业务中,要处理的是多场景多行业命名实体识别。多场景是指本技术要处理广告、app描述、电商标题、资讯文章等四个场景的文本数据,多行业是指本技术关注的是各个行业内的细粒度实体,涉及13个行业69种实体类型,如表一所示。
114.表一:细粒度命名实体类型
115.116.[0117][0118]
图8示意性的示出了一个用户帐号的用户画像标签。图8中的每个命名实体均为该用户帐号的一个用户画像标签,字体越大的命名实体代表越符合该用户帐号的用户偏好。需要说明的是,图8中的每个命名实体仅为示意性说明,本技术对具体的命名实体不加以限定,图8中的每个命名实体均可以理解为“用户画像标签”。
[0119]
图9示出了本技术一个示例性实施例提供的用户画像标签在广告推送场景中的使用示意图。广告投放商使用投放端向数据库投放广告。在投放广告过程中,会设置相应的曝光/人群预估,智能创意制作,定向标签推荐等广告参数。
[0120]
广告会存储在数据库中,并基于广告参数建立广告索引。
[0121]
在普通用户所使用的流量端发起广告请求时,广告播放引擎根据用户帐号(userid)、上下文和用户画像标签,在数据库中进行广告的定向检索,从而召回候选广告。比如,为当前用户帐号召回数量级以万级计量的候选广告。
[0122]
在粗选排序阶段,广告播放引擎按照粗选排序算法对数量级以万级计量的候选广
告进行广告粗排序,得到数量级以百级计量的候选广告。粗选排序算法主要考虑点击率(click through rate,ctr)和转化率(post-click conversion rate,cvr)指标。
[0123]
在精选排序阶段,广告播放引擎按照精选排序算法对数量级以百级计量的候选广告进行广告精排序,得到数量级在十以下级别计量的候选广告。精选排序算法主要考虑ctr、cvr和负反馈率(negative_feedback rate,nfr)指标。
[0124]
表二示出了本技术的“bert 二元模型”与相关技术中的“bi-lstm crf”的效果对比:
[0125]
表二:bert 二元模型与相关技术的效果对比(广告场景)
[0126]
提供模型f值准确率召回率bi-lstm crf0.85690.82460.89185bert 二元模型0.91880.91780.9197
[0127]
以广告场景为例,本技术的“bert 二元模型”相比于现有技术方案,在准确率、召回率以及f值等指标上均有显著提升,f值提升6.19%。f值是统计学中f检验的统计量值。
[0128]
图11示出了本技术一个示例性实施例提供的命名实体模型的训练方法的流程图,所述命名实体模型包括:语言模型和二元模型,所述方法包括:
[0129]
步骤501:获取训练集,训练集包括样本文本、以及样本文本中的样本命名实体;
[0130]
步骤502:调用语言模型对样本文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量;
[0131]
调用bert模型中的编码器对样本文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量。
[0132]
步骤503:调用二元模型基于每个字符的第一字符编码向量,预测每个字符为候选实体类型的开始字符的第一概率,以及每个字符为候选实体类型的结束字符的第二概率;
[0133]
示意性的,调用二元模型中的第一分类层对字符的第一字符编码向量进行预测,得到字符的第二字符编码向量,以及字符为候选实体类型的开始字符的第一概率。对字符的第一字符编码向量和第二字符编码向量进行级联,得到字符的合并字符编码向量。调用二元模型的第二分类层对字符的合并字符编码向量进行预测,得到字符为候选实体类型的结束字符的第二概率。
[0134]
示意性的,第一分类层为第一全连接层,第二分类层为第二全连接层。调用第一全连接层对字符的第一字符编码向量进行预测,得到字符的第二字符编码向量,以及字符为候选实体类型的开始字符的第一概率。调用第二全连接层对字符的合并字符编码向量进行预测,得到字符为候选实体类型的结束字符的第二概率。
[0135]
步骤504:基于第一概率和第二概率识别出属于候选实体类型的预测命名实体;
[0136]
步骤501至步骤504的预测过程可以参考上述图2或图4所示出的方法,本实施例不再赘述。
[0137]
步骤505:基于预测命名实体和样本命名实体之间的误差,对语言模型和二元模型的网络参数进行训练。
[0138]
在一个示例中,语言模型和二元模型具有各自的分层学习率。分层设置学习率,比如在微调(fine tune)已有模型的时候,有些时候会固定一些层,但有时候又不想固定它,而是想要它以比其他层更低的学习率去更新,这个需求就是分层设置学习率。
[0139]
在一个示例中,为了降低人工标注错误的标签对模型产生过大的负面影响,本技术在损失函数上考虑了标签平滑正则化。标签平滑的主要思想是假设样本以α的概率为其它类别,从而降低标签置信度,这样在训练时就可以避免模型“过分”相信训练样本的标签。基于此,本技术将常规的交叉熵损失函数替换成了带标签平滑的交叉熵损失函数。
[0140]
基于带标签平滑的交叉熵损失函数计算预测命名实体和样本命名实体之间的误差,对语言模型和二元模型的网络参数进行训练。
[0141][0142]
其中,k为候选实体类型的类别数量,α为标签平滑引入的超参数,y
k
为在k为正确类别时为1,其余为0,也就是yk∈{0,1},其中,pt为正确类别对应的输出概率。p
k
为属于候选实体类型k时的概率,p
i
为属于候选实体类型i时的概率。
[0143]
本技术实施例涉及的计算机系统还可以是由客户端、多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)通过网络通信的形式连接形成的分布式系统。
[0144]
以分布式系统为区块链系统为例,参见图12,图12是本技术实施例提供的分布式系统100应用于区块链系统的一个可选的结构示意图,由多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)和客户端形成,节点之间形成组成的点对点(p2p,peer to peer)网络,p2p协议是一个运行在传输控制协议(tcp,transmission control protocol)协议之上的应用层协议。在分布式系统中,任何机器如服务器、终端都可以加入而成为节点,节点包括硬件层、中间层、操作系统层和应用层。
[0145]
参见图12示出的区块链系统中各节点的功能,涉及的功能包括:
[0146]
1)路由,节点具有的基本功能,用于支持节点之间的通信。
[0147]
节点除具有路由功能外,还可以具有以下功能:
[0148]
2)应用,用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链系统中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。
[0149]
例如,应用实现的业务包括:
[0150]
2.1)钱包,用于提供进行电子货币的交易的功能,包括发起交易(即,将当前交易的交易记录发送给区块链系统中的其他节点,其他节点验证成功后,作为承认交易有效的响应,将交易的记录数据存入区块链的临时区块中;当然,钱包还支持查询电子货币地址中剩余的电子货币。
[0151]
2.2)共享账本,用于提供账目数据的存储、查询和修改等操作的功能,将对账目数据的操作的记录数据发送到区块链系统中的其他节点,其他节点验证有效后,作为承认账目数据有效的响应,将记录数据存入临时区块中,还可以向发起操作的节点发送确认。
[0152]
2.3)智能合约,计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易,例如查询买家所购买商品的物流状态,在买家签收货物后将买家的电子货币转移
到商户的地址;当然,智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。
[0153]
3)区块链,包括一系列按照产生的先后时间顺序相互接续的区块(block),新区块一旦加入到区块链中就不会再被移除,区块中记录了区块链系统中节点提交的记录数据。
[0154]
参见图13,图13是本技术实施例提供的区块结构(block structure)一个可选的示意图,每个区块中包括本区块存储交易记录的哈希值(本区块的哈希值)、以及前一区块的哈希值,各区块通过哈希值连接形成区块链。另外,区块中还可以包括有区块生成时的时间戳等信息。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
[0155]
图14示出了本技术一个示例性实施例提供的一种命名实体识别装置的框图。所述装置包括:
[0156]
获取模块1420,用于获取输入文本,所述输入文本包括至少一个字符;
[0157]
编码模块1440,用于对所述输入文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量;
[0158]
预测模块1460,用于基于所述每个字符的第一字符编码向量,预测所述每个字符为候选实体类型的开始字符的第一概率,以及所述每个字符为所述候选实体类型的结束字符的第二概率;
[0159]
识别模块1480,用于基于所述第一概率和所述第二概率识别出属于所述候选实体类型的命名实体。
[0160]
在本技术的一个示例中,预测模块1460,用于调用二元模型中的第一分类层对所述字符的第一字符编码向量进行预测,得到所述字符的第二字符编码向量,以及所述字符为所述候选实体类型的开始字符的第一概率;对所述字符的第一字符编码向量和所述第二字符编码向量进行级联,得到所述字符的合并字符编码向量;调用所述二元模型的第二分类层对所述字符的所述合并字符编码向量进行预测,得到所述字符为所述候选实体类型的结束字符的第二概率。
[0161]
在本技术的一个示例中,所述第一分类层为第一全连接层,所述第二分类层为第二全连接层;
[0162]
所述预测模块1460,用于调用所述第一全连接层对所述字符的第一字符编码向量进行预测,得到所述字符的第二字符编码向量,以及所述字符为所述候选实体类型的开始字符的第一概率;
[0163]
所述预测模块1460,用于调用所述第二全连接层对所述字符的所述合并字符编码向量进行预测,得到所述字符为所述候选实体类型的结束字符的第二概率。
[0164]
在本技术的一个示例中,编码模块1440,用于调用语言模型对所述输入文本中的每个字符进行编码,得到所述每个字符的字符编码向量。
[0165]
在本技术的一个示例中,编码模块1440,用于调用bert模型中的编码器对所述输入文本中的每个字符进行编码,得到所述每个字符的字符编码向量。
[0166]
图15示出了本技术一个示例性实施例提供的一种命名实体模型的训练装置的框图,所述命名实体模型包括:语言模型和二元模型,所述装置包括:
[0167]
获取模块1420,用于获取训练集,所述训练集包括样本文本、以及所述样本文本中的样本命名实体;
[0168]
编码模块1440,用于调用所述预训练语言模型对所述样本文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量;
[0169]
预测模块1460,用于调用所述二元模型基于所述每个字符的第一字符编码向量,预测所述每个字符为候选实体类型的开始字符的第一概率,以及所述每个字符为所述候选实体类型的结束字符的第二概率;
[0170]
识别模块1480,用于基于所述第一概率和所述第二概率识别出属于所述候选实体类型的预测命名实体;
[0171]
训练模块1490,用于基于所述预测命名实体和所述样本命名实体之间的误差,对所述语言模型和所述二元模型的网络参数进行训练。
[0172]
在本技术的一个示例中,编码模块1440,用于调用bert模型中的编码器对所述样本文本中的每个字符进行字符编码,得到每个字符的第一字符编码向量。
[0173]
在本技术的一个示例中,预测模块1460,用于调用所述二元模型中的第一分类层对所述字符的第一字符编码向量进行预测,得到所述字符的第二字符编码向量,以及所述字符为所述候选实体类型的开始字符的第一概率;对所述字符的第一字符编码向量和所述第二字符编码向量进行级联,得到所述字符的合并字符编码向量;调用所述二元模型的第二分类层对所述字符的所述合并字符编码向量进行预测,得到所述字符为所述候选实体类型的结束字符的第二概率。
[0174]
在本技术的一个示例中,所述第一分类层为第一全连接层,所述第二分类层为第二全连接层;
[0175]
所述预测模块1460,用于调用所述第一全连接层对所述字符的第一字符编码向量进行预测,得到所述字符的第二字符编码向量,以及所述字符为所述候选实体类型的开始字符的第一概率;
[0176]
所述预测模块1460,用于调用所述第二全连接层对所述字符的所述合并字符编码向量进行预测,得到所述字符为所述候选实体类型的结束字符的第二概率。
[0177]
在本技术的一个示例中,所述语言模型和所述二元模型具有各自的分层学习率。
[0178]
在本技术的一个示例中,所述训练模块1490,用于基于带标签平滑的交叉熵损失函数计算所述预测命名实体和所述样本命名实体之间的误差,对所述语言模型和所述二元模型的网络参数进行训练。
[0179]
需要说明的是:上述实施例提供的命名实体识别装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的命名实体识别装置与命名实体识别方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0180]
需要说明的是:上述实施例提供的训练装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的训练装置与训练方法实施例属于同一构思,其具体实现过程详见方法实施例,这里
不再赘述。
[0181]
本技术的实施例还提供了一种计算机设备,该计算机设备包括:处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述各方法实施例提供的命名实体识别方法。
[0182]
可选地,该计算机设备为计算机设备。示例地,图16是本技术实施例提供的一种计算机设备的结构示意图。
[0183]
所述计算机设备1600包括中央处理单元(central processing unit,cpu)1601、包括随机存取存储器(random access memory,ram)1602和只读存储器(read-only memory,rom)1603的系统存储器1604,以及连接系统存储器1604和中央处理单元1601的系统总线1605。所述计算机设备1600还包括帮助计算机设备内的各个器件之间传输信息的基本输入/输出系统(input/output系统,i/o系统)1606,和用于存储操作系统1613、应用程序1614和其他程序模块1615的大容量存储设备1607。
[0184]
所述基本输入/输出系统1606包括有用于显示信息的显示器1608和用于用户输入信息的诸如鼠标、键盘之类的输入设备1609。其中所述显示器1608和输入设备1609都通过连接到系统总线1605的输入输出控制器1610连接到中央处理单元1601。所述基本输入/输出系统1606还可以包括输入输出控制器1610以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1610还提供输出到显示屏、打印机或其他类型的输出设备。
[0185]
所述大容量存储设备1607通过连接到系统总线1605的大容量存储控制器(未示出)连接到中央处理单元1601。所述大容量存储设备1607及其相关联的计算机可读存储介质为计算机设备1600提供非易失性存储。也就是说,所述大容量存储设备1607可以包括诸如硬盘或者只读光盘(compact disc read-only memory,cd-rom)驱动器之类的计算机可读存储介质(未示出)。
[0186]
不失一般性,所述计算机可读存储介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读存储指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括ram、rom、可擦除可编程只读寄存器(erasable programmable read only memory,eprom)、电子抹除式可复写只读存储器(electrically-erasable programmable read-only memory,eeprom)、闪存或其他固态存储设备,cd-rom、数字多功能光盘(digital versatile disc,dvd)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1604和大容量存储设备1607可以统称为存储器。
[0187]
存储器存储有一个或多个程序,一个或多个程序被配置成由一个或多个中央处理单元1601执行,一个或多个程序包含用于实现上述方法实施例的指令,中央处理单元1601执行该一个或多个程序实现上述各个方法实施例提供的命名实体识别方法或命名实体识别模型的训练方法。
[0188]
根据本技术的各种实施例,所述计算机设备1600还可以通过诸如因特网等网络连接到网络上的远程计算机设备运行。也即计算机设备1600可以通过连接在所述系统总线
1605上的网络接口单1611连接到网络1612,或者说,也可以使用网络接口单元1611来连接到其他类型的网络或远程计算机设备系统(未示出)。
[0189]
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,所述一个或者一个以上程序包含用于进行本技术实施例提供的方法中由计算机设备所执行的步骤。
[0190]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和各模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0191]
本技术实施例中还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,当该程序代码由计算机设备的处理器加载并执行时,实现上述各方法实施例提供的命名实体识别方法或命名实体识别模型的训练方法。
[0192]
本技术还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例提供的命名实体识别方法或命名实体识别模型的训练方法。
[0193]
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的可读存储介质可以是只读存储器,磁盘或光盘等。
[0194]
以上所述仅为本技术的可选实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同切换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜