CN112949320B - 基于条件随机场的序列标注方法、装置、设备及介质 - Google Patents
基于条件随机场的序列标注方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN112949320B CN112949320B CN202110341820.7A CN202110341820A CN112949320B CN 112949320 B CN112949320 B CN 112949320B CN 202110341820 A CN202110341820 A CN 202110341820A CN 112949320 B CN112949320 B CN 112949320B
- Authority
- CN
- China
- Prior art keywords
- sequence
- labeling
- label
- semantic information
- vector
- 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
Links
- 238000002372 labelling Methods 0.000 title claims abstract description 209
- 239000013598 vector Substances 0.000 claims abstract description 155
- 230000007704 transition Effects 0.000 claims abstract description 79
- 238000000034 method Methods 0.000 claims abstract description 32
- 238000000605 extraction Methods 0.000 claims abstract description 29
- 238000012545 processing Methods 0.000 claims description 31
- 239000011159 matrix material Substances 0.000 claims description 22
- 238000004422 calculation algorithm Methods 0.000 claims description 16
- 238000013507 mapping Methods 0.000 claims description 16
- 230000011218 segmentation Effects 0.000 claims description 16
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 7
- 238000013528 artificial neural network Methods 0.000 claims description 6
- 230000008030 elimination Effects 0.000 claims description 3
- 238000003379 elimination reaction Methods 0.000 claims description 3
- 238000003058 natural language processing Methods 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 abstract description 2
- 230000009286 beneficial effect Effects 0.000 abstract 1
- 238000013527 convolutional neural network Methods 0.000 description 5
- 241000220225 Malus Species 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 235000021016 apples Nutrition 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Abstract
本申请涉及自然语言处理技术领域,揭露一种基于条件随机场的序列标注方法、装置、设备及介质,其中方法包括通过获取目标文本序列和标准样本序列,并将目标文本序列转换为初始向量序列,并将其输入序列标注模型中进行语义提取,得到特征序列,将特征序列与标准样本序列进行语义标注处理,计算转移概率,得到第一标注序列和元素的标签和转移概率得分,再计算每个元素的标签概率分布和将标签进行分离,得到第二标注序列,通过求解第二标注序列中的最优求解路径,从而生成目标标注序列。本申请还涉及区块链技术,目标文本序列存储于区块链中。本申请通过利用元素的语义信息与标签的语义信息进行序列标注,有利于提高少量样本序列标注的准确性。
Description
技术领域
本申请涉及自然语言处理领域,尤其涉及一种基于条件随机场的序列标注方法、装置、设备及介质。
背景技术
条件随机场(Conditional Random Fields,CRF),是一种判别式概率模型,是一种机器学习模型,常用于文本词性标注,分词,以及命名实体识别,如自然语言文字。
目前,条件随机场在人工智能的自然语言处理(Natural Language Processing,NLP)领域中,将训练语料序列进行序列标注时,往往是通过训练语料序列的元素本身的语义结合上下文信息进行标注。然后,在少量样本信息中,例如客服对话等,其缺乏上下文的信息,无法准确的将上下文信息与序列语料序列本身语义进行结合,从而导致序列标注的准确性降低。现亟需一种能够提高少量样本序列标注的准确性的方法。
发明内容
本申请实施例的目的在于提出一种基于条件随机场的序列标注方法、装置、设备及介质,以提高少量样本序列标注的准确性。
为了解决上述技术问题,本申请实施例提供一种基于条件随机场的序列标注方法,包括:
获取目标文本序列和标准样本序列,并将所述目标文本序列转换为对应的初始向量序列,其中,所述初始向量序列包括句子向量、各个字的字向量和各个字的位置向量;
将所述初始向量序列输入预设的序列标注模型中进行语义提取,得到特征序列,其中,所述特征序列包括每个元素的语义信息,所述元素包括所述目标文本序列中的每个字或句子;
将所述特征序列与所述标准样本序列进行语义标注处理,并通过条件随机场引入概率转移矩阵,计算所述特征序列每个元素的转移概率,得到第一标注序列和每个元素对应的标签和转移概率得分;
基于所述第一标注序列的每个所述元素的语义信息与标签的语义信息,以获取所述每个元素的标签概率分布,并构建映射空间将所述标签进行分离,得到第二标注序列,其中,所述第二标注序列包括每个所述元素的标签概率得分和转移概率得分;
通过维特比算法对所述第二标注序列进行维特比求解,以得到所述第二标注序列中的最优求解路径,并根据所述最优求解路径生成目标标注序列。
为了解决上述技术问题,本申请实施例提供一种基于条件随机场的序列标注装置,包括:
初始向量序列转换模块,用于获取目标文本序列和标准样本序列,并将所述目标文本序列转换为对应的初始向量序列,其中,所述初始向量序列包括句子向量、各个字的字向量和各个字的位置向量;
语义信息提取模块,用于将所述初始向量序列输入预设的序列标注模型中进行语义提取,得到特征序列,其中,所述特征序列包括每个元素的语义信息,所述元素包括所述目标文本序列中的每个字或句子;
第一标注序列生成模块,用于将所述特征序列与所述标准样本序列进行语义标注处理,并通过条件随机场引入概率转移矩阵,计算所述特征序列每个元素的转移概率,得到第一标注序列和每个元素对应的标签和转移概率得分;
第二标注序列生成模块,用于基于所述第一标注序列的每个所述元素的语义信息与标签的语义信息,以获取所述每个元素的标签概率分布,并构建映射空间将所述标签进行分离,得到第二标注序列,其中,所述第二标注序列包括每个所述元素的标签概率得分和转移概率得分;
目标标注序列确定模块,用于通过维特比算法对所述第二标注序列进行维特比求解,以得到所述第二标注序列中的最优求解路径,并根据所述最优求解路径生成目标标注序列。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种计算机设备,包括,一个或多个处理器;存储器,用于存储一个或多个程序,使得一个或多个处理器实现上述任意一项所述的基于条件随机场的序列标注方法。
为解决上述技术问题,本发明采用的一个技术方案是:一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的基于条件随机场的序列标注方法。
本发明实施例提供了一种基于条件随机场的序列标注方法、装置、设备及介质。其中,所述方法包括:通过获取目标文本序列和标准样本序列,并将目标文本序列转换为对应的初始向量序列,将初始向量序列输入预设的序列标注模型中进行语义提取,得到特征序列,将特征序列与标准样本序列进行语义标注处理,并通过条件随机场引入概率转移矩阵,计算特征序列每个元素的转移概率,得到第一标注序列和每个元素对应的标签和转移概率得分,基于第一标注序列的每个元素的语义信息与标签的语义信息,以获取每个元素的标签概率分布,并构建映射空间将标签进行分离,得到第二标注序列,通过维特比算法对第二标注序列进行维特比求解,以得到第二标注序列中的最优求解路径,并根据最优求解路径生成目标标注序列。本发明实施例通过将目标文本序列提取的语义信息与标准文本序列进行语义标注处理,以获取转移概率得分,并将每个元素的语义信息与标签对应语义信息进行处理,以获取标签概率得分,从而获取目标标注序列,实现了充分利用文本序列的每个元素的语义信息和标签的语义信息,无需考虑文本的上下文信息,有利于提高少量样本序列标注的准确性。
附图说明
为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的基于条件随机场的序列标注方法的应用环境示意图;
图2根据本申请实施例提供的基于条件随机场的序列标注方法的一实现流程图;
图3是本申请实施例提供的基于条件随机场的序列标注方法中子流程的一实现流程图;
图4是本申请实施例提供的基于条件随机场的序列标注方法中子流程的又一实现流程图;
图5是本申请实施例提供的基于条件随机场的序列标注方法中子流程的又一实现流程图;
图6是本申请实施例提供的基于条件随机场的序列标注方法中子流程的又一实现流程图;
图7是本申请实施例提供的基于条件随机场的序列标注方法中子流程的又一实现流程图;
图8是本申请实施例提供的基于条件随机场的序列标注方法中子流程的又一实现流程图;
图9是本申请实施例提供的基于条件随机场的序列标注装置示意图;
图10是本申请实施例提供的计算机设备的示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
下面结合附图和实施方式对本发明进行详细说明。
请参阅图1,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、搜索类应用、即时通信工具等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的基于条件随机场的序列标注方法一般由服务器执行,相应地,基于条件随机场的序列标注装置一般配置于服务器中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
请参阅图2,图2示出了基于条件随机场的序列标注方法的一种具体实施方式。
需注意的是,若有实质上相同的结果,本发明的方法并不以图2所示的流程顺序为限,该方法包括如下步骤:
S1:获取目标文本序列和标准样本序列,并将目标文本序列转换为对应的初始向量序列,其中,初始向量序列包括句子向量、各个字的字向量和各个字向量集合的位置向量。
具体的,目标文本序列为需要进行标注的文本序列。文本序列是指文本中的句子、词或者字按照统一的顺序进行排列的文本。例如,关于机器人系统对话场景中的内容,如“小明是保险受益人,来自深圳”等等。标准样本序列是具有各个领域的知识文本库。由于需要对目标文本序列进行序列标注,则需将目标文本序列转换为向量形式,也即初始向量序列。
请参阅图3,图3示出了步骤S1的一种具体实施方式,该实施例包括:
S11:将目标文本序列输入到预设神经网络的嵌入层,通过嵌入层输出与目标文本序列对应的多个字向量,多个字向量中包括至少一个标点向量。
具体的,将目标文本序列输入到预设神经网络的嵌入层,通过嵌入层进行编码,如采用独热编码,进而输出目标文本序列对应的多个字向量,且多个字向量中包括至少一个标点向量。例如,当接收的目标文本序列为“小明是保险受益人,来自深圳”时,则需要将每个字及特殊符号都转化为向量的形式,因为神经网络只能进行数值计算。
S12:将多个字向量输入到分割层,根据至少一个标点向量对多个字向量进行分割,得到n个字向量集合,n个字向量集合对应n个分割码。
具体的,将多个字向量输入到神经网络的分割层,根据标点向量将多个字向量进行分割。例如,将目标文本序列为“小明是保险受益人,来自深圳”分割为A句“小明是保险受益人”和B句“来自深圳”,前面半句会加上分割码A,后半句会加上分割码B。
S13:通过位置编码对每个分割码进行编码运算,确定每个分割码的位置信息编码,以得到目标文本序列中每个字向量集合的位置向量。
具体的,位置编码可以用于确定所述目标文本序列中每个字的位置。编码运算是通过使用不同频率的正弦、余弦函数的生成,然后和对应的位置的字向量相加,从而得到每个分割码的位置信息编码,以得到目标文本序列中每个字向量集合的位置向量。
S14:根据目标文本序列中每个字的字向量以及每个字向量集合的位置向量,生成目标文本序列的句子向量。
具体的,将上述得到的字向量以及每个字向量集合的位置向量按顺序进行组合,从而得到目标文本序列的句子向量。
本实施例中,通过将目标文本序列输入到嵌入层,进行获取字向量和标点向量,再对多个字向量进行分割,得到字向量集合,然后根据位置编码获取每个字的位置向量,最后将字向量以及每个字的位置向量按顺序进行组合,从而得到目标文本序列的句子向量,实现将目标文本序列转换为初始向量序列,便于后续对目标文本序列进行序列标注,从而有利于提高少量样本序列标注的准确性。
S2:将初始向量序列输入预设的序列标注模型中进行语义提取,得到特征序列,其中,特征序列包括每个元素的语义信息,元素包括目标文本序列中的每个字或句子。
具体的,在将目标文本序列转化为初始向量序列之后,将初始向量序列输入预设的序列标注模型,利用预设的序列标注模型对初始向量序列进行语义提取,从而得到具有每个元素的语义信息的特征序列。此时,预设的序列标注模型可以包括CNN及改进的CNN(例如,DCNN、IDCNN等)学习序列中的长距离特征信息,同时,为了能够更好的学习到序列中的长距离特征信息,特征提取网络还可以引入注意力机制。
其中,预设的序列标注模型包括第一卷积网络层、注意力层和第二卷积网络层,第一卷积网络层和第二卷积网络层均可以包括CNN及改进的CNN,改进的CNN可以包括但不限于DCNN、IDCNN、DepthwiseConvolution(深度卷积)、PointwiseConvolution(逐点卷积)、Group Convolution(分组卷积)等。
请参阅图4,图4示出了步骤S2的一种具体实施方式,该实施例包括:
S21:通过第一卷积网络层对初始向量序列进行卷积处理,得到目标文本序列中每个元素的卷积特征。
具体的,为提取目标文本序列中的语义信息,需要将初始向量序列输入到注意力层进行语义提取,但需要先通过第一卷积网络层对初始向量序列进行卷积处理,得到样本序列中每个元素的卷积特征,才能将元素的卷积特征输入到注意力层。卷积处理是通过第一卷积网络层的IDCNN的层数、感受野大小、膨胀步长与初始向量序列进行卷积运算。
S22:将每个元素的卷积特征输入注意力层进行语义提取,得到每个元素的语义信息。
具体的,语义信息是反映对应元素的语义的向量,这里的语义是对应元素在目标样本序列中表达的语义,也就是说,每个元素的语义信息是该元素在样本序列的语境中结合上下文信息反映的语义。例如,“我今天买了一斤苹果”和“我的苹果手机坏了”这两个序列中均包含“苹果”这一元素,但是这两个“苹果”有着不同的语义,第一个的语义是水果,第二个的语义是手机品牌。
请参阅图5,图5示出了步骤S22的一种具体实施方式,该实施例包括:
S221:将每个元素的卷积特征输入注意力层进行注意力权重提取,得到每个元素的注意力权重。
具体的,将每个元素的卷积特征输入注意力层中,根据注意力机制对每个元素进行注意力权重提取,从而得到每个元素的注意力权重。该元素的注意力权重是经过注意力层进行注意力权重提取后,该元素与其他元素注意力权重的关系,例如,当前元素为目标样本序列中的第1个元素,则得到该第1个元素与每个元素的注意力权重依次为α11、α12、…、α1n;当前元素为样本序列中的第2个元素,则得到该第2个元素与每个元素的注意力权重依次为α21、α22、…、α2n等。
S222:根据元素的注意力权重对元素的卷积特征进行加权处理,得到元素的语义信息。
具体的,将每个元素的注意力权重分别于每个元素的卷积特征进行加权并叠加计算后,从而得到元素的基于注意力的语义信息。
本实施例中,通过根据每个元素的卷积特征输入注意力层进行注意力权重提取,得到每个元素的注意力权重,并将元素的注意力权重对元素的卷积特征进行加权处理,得到元素的语义信息,实现对每个元素的语义信息提取,便于后续与标签的语义信息进行语义标注处理。
S23:将每个元素的语义信息输入第二卷积网络层进行卷积处理,得到特征序列。
具体的,将每个元素的语义信息输入第二卷积网络层进行卷积处理,形成具体每个元素的语义信息的序列,也即特征序列。该卷积处理是将第二卷积网络层的IDCNN的层数、感受野大小、膨胀步长与每个元素的语义信息进行卷积运算。
本实施例中,通过将每个元素的卷积特征输入注意力层进行注意力权重提取,得到每个元素的注意力权重,并将元素的注意力权重对元素的卷积特征进行加权处理,得到元素的语义信息,将每个元素的语义信息输入第二卷积网络层进行卷积处理,得到特征序列,实现生成具有每个语义信息的序列,便于后续与标签的语义信息进行语义标注处理,从而有利于提高少量样本序列标注的准确性。
S3:将特征序列与标准样本序列进行语义标注处理,并通过条件随机场引入概率转移矩阵,计算特征序列每个元素的转移概率,得到第一标注序列和每个元素对应的标签和转移概率得分。
具体的,将特征序列中每个元素与标准样本序列中所划分的标签进行语义对比,将相同语义和不同语义的分别转化为不同的标签,再通过条件随机场引入概率转移矩阵,计算特征序列每个元素的转移概率,从而得到第一标注序列和每个元素对应的标签和转移概率得分。其中,概率转移矩阵表征由一个预设标签转移到另一个预设标签的概率。例如,将标准样本序列所划分的标签定义为O、B、I,为了区分BI在相同语义还是不同语义下,对B和I进行了转化,相同的转化为sB、sI,不同的转化为dB、dI,再引入概率转移矩阵计算其概率转移得分。
请参阅图6,图6示出了步骤S3的一种具体实施方式,该实施例包括:
S31:按照标签领域方式,将同一领域的标签划分为预设数量的抽象标签类别。
S32:根据抽象标签类别,将标准样本序列中的元素进行标签分类,得到基础标签。
S33:根据特征序列中每个元素的语义信息与基础标签中的元素进行语义标注处理,得到第一标注序列及第一标注序列的初始得分,其中,初始得分包括第一标注序列中每个元素被预测为一个预设标签的概率。
S34:将初始得分输入到条件随机场所引入的概率转移矩阵之中,计算出第一标注序列的每个元素的转移概率,得到每个元素的转移概率得分,其中,概率转移矩阵表征由一个预设标签转移到另一个预设标签的概率。
具体的,本申请实施例通过将特定领域的标签划分为几个抽象标签类别,并建模抽象标签之间依赖关系。由于抽象标签类别是可以跨领域的,得以将抽象的标签依赖信息从源域迁移到目标域,也即标准样本序列所进行标签分类,得到的基础标签将其标签依赖信息从标准样本序列泛化到目标文本序列中。
具体的,在目标文本序列上,将迁移的抽象标签依赖关系扩展为特定领域的具体标签之间的依赖关系,这采用的手段是将特征序列中每个元素与标准样本序列中所划分的标签进行语义对比,将相同语义和不同语义的分别转化为不同的标签,从而得到第一标注序列及第一标注序列的初始得分,其中,初始得分包括第一标注序列中每个元素被预测为一个预设标签的概率。再将初始得分输入条件随机场的概率转移矩阵,计算出第一标注序列的每个元素的转移概率,得到每个元素的转移概率得分,其中,概率转移矩阵表征由一个预设标签转移到另一个预设标签的概率。
其中,条件随机场(conditional random fields,简称CRF,或CRFs),是一种判别式概率模型,是随机场的一种,常用于标注或分析序列资料,如自然语言文字或是生物序列。条件随机场是条件概率分布模型P(Y|X),表示的是给定一组输入随机变量X的条件下另一组输出随机变量Y的马尔可夫随机场,也就是说条件随机场的特点是假设输出随机变量构成马尔可夫随机场。在本申请实施例中,通过条件随机场引入概率转移矩阵,并将初始得分输入到概率转移矩阵之中,从而计算出第一标注序列的每个元素的转移概率,得到每个元素的转移概率得分。
本实施中,通过按照标签领域方式,将同一领域的标签划分为预设数量的抽象标签类别,再根据抽象标签类别,将标准样本序列中的元素进行标签分类,得到基础标签,然后根据特征序列中每个元素的语义信息与基础标签中的元素进行语义标注处理,得到第一标注序列及第一标注序列的初始得分,将初始得分输入条件随机场的概率转移矩阵,计算出第一标注序列的每个元素的转移概率,得到每个元素的转移概率得分,实现通过语义信息生成标注序列,并获取到元素的转移概率得分,便于后续输出目标标注序列,从而提高少量样本序列标注的准确性。
S4:基于第一标注序列的每个元素的语义信息与标签的语义信息,以获取每个元素的标签概率分布,并构建映射空间将标签进行分离,得到第二标注序列,其中,第二标注序列包括每个元素的标签概率得分和转移概率得分。
具体的,由于上述步骤时根据语义信息对特征序列的每个元素进行标注,但是可能每个元素存在多个语义相同或相近的标签,从而导致元素被多个标签进行标注。所以通过基于第一标注序列的每个元素的语义信息与标签的语义信息,以获取每个元素的标签概率分布,也即获取每个元素与标签的相似度。并且每个元素与其对应标签存在相似度值的偏差,所以为了消除这些偏差,通过构建映射空间来将标签进行分离,从而得到得到第二标注序列以及每个元素的标签概率得分。
请参阅图7,图7示出了步骤S4的一种具体实施方式,该实施例包括:
S41:获取标签对应的语义信息,得到标签的语义信息,并将标签转换为基础向量序列。
S42:通过将标签的语义信息和基础向量序列进行结合处理,得到标签增强序列。
具体的,为了获取每个元素与其对应的标签的概率分布,需要先获取标签对应的语义信息,并将其转换为向量形式,从而得到基础向量序列。然后通过标签语义信息和基础向量序列进行向量相乘,使标签语义信息和基础向量序列进行结合,得到具有标签语义信息的标签增强序列。
S43:计算每个元素的语义信息与标签增强序列的标签概率分布,并构建映射空间将标签进行分离,得到第二标注序列,其中,第二标注序列包括每个元素的标签概率得分和转移概率得分。
具体的,通过计算每个元素的语义信息与标签增强序列对应标签的语义信息的相似度值,从而得到每个元素与其对应标签的标签概率分布。再采用线性偏差消除法(Linear-error Nulling)方法,通过运算的方法构建一个映射空间,使得标签概率分布映射在映射空间中,从而有效地将不同的标签进行分开,从而得到每个元素的标签概率得分。
本实施例中,通过获取标签对应的语义信息,得到标签语义信息,并将标签转换为基础向量序列,再通过将标签语义信息和基础向量序列进行结合处理,得到标签增强序列,并计算每个元素的语义信息与标签增强序列的标签概率分布,并构建映射空间将标签进行分离,得到第二标注序列,实现将元素的标签进行分离,并获取元素的标签概率得分,有利于提高少量样本序列标注的准确性。
S5:通过维特比算法对第二标注序列进行维特比求解,以得到第二标注序列中的最优求解路径,并根据最优求解路径生成目标标注序列。
具体的,本步骤是根据第二标注序列中每个元素的各个第二标签的标签概率得分和转移概率得分,判断目标文本序列对应的输出对象;其是通过维特比算法实现,维特比算并非输出第二标注序列中每个元素的标签概率得分和转移概率得分的最高得分,而是将输出整个第二标注序列的最高概率标注序列。
本实施例中,通过将目标文本序列提取的语义信息与标准文本序列进行语义标注处理,以获取转移概率得分,并将每个元素的语义信息与标签对应语义信息进行处理,以获取标签概率得分,从而获取目标标注序列,实现了充分利用文本序列的每个元素的语义信息和标签的语义信息,无需考虑文本的上下文信息,有利于提高少量样本序列标注的准确性。
请参阅图8,图8示出了步骤S5的一种具体实施方式,该实施例包括:
S51:基于第二标注序列每个元素的转移概率得分和标签概率得分,得到每个元素的总得分。
S52:根据维特比算法逐步累加每个元素的总得分,得到每个元素的最优求解路径。
S53:将第二标注序列中的每个元素的最优求解路径进行组合,得到第二标注序列中的最优求解路径,并根据最优求解路径生成目标标注序列。
具体的,维特比算法预测最优标注序列的思想是:通过去逐步累加每个元素的总分数,当更新到标注时,由于标注是确定的,然后通过标注的总分数反向预测每个元素的最优序列。故而在本申请实施例中,先基于第二标注序列每个元素的转移概率得分和标签概率得分,得到每个元素的总得分,再根据维特比算法逐步累加每个元素的总得分,得到每个元素的最优求解路径,将第二标注序列中的每个元素的最优求解路径进行组合,得到第二标注序列中的最优求解路径,并根据最优求解路径生成目标标注序列。
本实施例中,通过逐步累加每个元素的总得分,得到每个元素的最优求解路径,在将其进组合,得到第二标注序列中的最优求解路径,实现生成目标标注序列,有利于提高少量样本序列标注的准确性。
需要强调的是,为进一步保证上述目标文本序列的私密和安全性,上述目标文本序列还可以存储于一区块链的节点中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
请参考图9,作为对上述图2所示方法的实现,本申请提供了一种基于条件随机场的序列标注装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图9所示,本实施例的基于条件随机场的序列标注装置包括:初始向量序列转换模块61、语义信息提取模块62、第一标注序列生成模块63、第二标注序列生成模块64及目标标注序列确定模块65,其中:
初始向量序列转换模块61,用于获取目标文本序列和标准样本序列,并将目标文本序列转换为对应的初始向量序列,其中,初始向量序列包括句子向量、各个字的字向量和各个字向量集合的位置向量;
语义信息提取模块62,用于将初始向量序列输入预设的序列标注模型中进行语义提取,得到特征序列,其中,特征序列包括每个元素的语义信息,所述元素包括所述目标文本序列中的每个字或句子;
第一标注序列生成模块63,用于将特征序列与标准样本序列进行语义标注处理,并通过条件随机场引入概率转移矩阵,计算特征序列每个元素的转移概率,得到第一标注序列和每个元素对应的标签和转移概率得分;
第二标注序列生成模块64,用于基于第一标注序列的每个元素的语义信息与标签的语义信息,以获取每个元素的标签概率分布,并构建映射空间将标签进行分离,得到第二标注序列,其中,第二标注序列包括每个元素的标签概率得分和转移概率得分;
目标标注序列确定模块65,用于通过维特比算法对第二标注序列进行维特比求解,以得到第二标注序列中的最优求解路径,并根据最优求解路径生成目标标注序列。
进一步的,初始向量序列转换模块61包括:
字向量获取单元,用于将目标文本序列输入到预设神经网络的嵌入层,通过嵌入层输出与目标文本序列对应的多个字向量,多个字向量中包括至少一个标点向量;
字向量分割单元,用于将多个字向量输入到分割层,根据至少一个标点向量对多个字向量进行分割,得到n个字向量集合,n个字向量集合对应n个分割码;
位置向量获取单元,用于通过位置编码对每个分割码进行编码运算,确定每个分割码的位置信息编码,以得到目标文本序列中每个字向量集合的位置向量;
句子向量生成单元,用于根据目标文本序列中每个字的字向量以及每个字向量集合的位置向量,生成目标文本序列的句子向量。
进一步的,语义信息提取模块62包括:
卷积处理单元,用于通过第一卷积网络层对初始向量序列进行卷积处理,得到目标文本序列中每个元素的卷积特征;
语义提取单元,用于将每个元素的卷积特征输入注意力层进行语义提取,得到每个元素的语义信息;
特征序列生成单元,用于将每个元素的语义信息输入第二卷积网络层进行卷积处理,得到特征序列。
进一步的,语义提取单元包括:
权重提取子单元,用于将每个元素的卷积特征输入注意力层进行注意力权重提取,得到每个元素的注意力权重;
加权处理子单元,用于根据元素的注意力权重对元素的卷积特征进行加权处理,得到元素的语义信息。
进一步的,第一标注序列生成模块63包括:
抽象标签类别生成单元,用于按照标签领域方式,将同一领域的标签划分为预设数量的抽象标签类别;
基础标签获取单元,用于根据抽象标签类别,将标准样本序列中的元素进行标签分类,得到基础标签;
初始得分确定单元,用于根据特征序列中每个元素的语义信息与基础标签中的元素进行语义标注处理,得到第一标注序列及第一标注序列的初始得分,其中,初始得分包括第一标注序列中每个元素被预测为一个预设标签的概率;
转移概率得分确定单元,用于将初始得分输入到条件随机场所引入的概率转移矩阵之中,计算出第一标注序列的每个元素的转移概率,得到每个元素的转移概率得分,其中,概率转移矩阵表征由一个预设标签转移到另一个预设标签的概率。
进一步的,第二标注序列生成模块64包括:
基础向量序列生成单元,用于获取标签对应的语义信息,得到标签语义信息,并将标签转换为基础向量序列;
标签增强序列生成单元,用于通过将标签语义信息和基础向量序列进行结合处理,得到标签增强序列;
第二标注序列获取单元,用于计算每个元素的语义信息与标签增强序列的标签概率分布,并构建映射空间将标签进行分离,得到第二标注序列,其中,第二标注序列包括每个元素的标签概率得分和转移概率得分。
进一步的,目标标注序列确定模块65包括:
总得分确定单元,用于基于第二标注序列每个元素的转移概率得分和标签概率得分,得到每个元素的总得分;
总得分累加单元,用于根据维特比算法逐步累加每个元素的总得分,得到每个元素的最优求解路径;
目标标注序列生成单元,用于将第二标注序列中的每个元素的最优求解路径进行组合,得到第二标注序列中的最优求解路径,并根据最优求解路径生成目标标注序列。
需要强调的是,为进一步保证上述目标文本序列的私密和安全性,上述目标文本序列还可以存储于一区块链的节点中。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图10,图10为本实施例计算机设备基本结构框图。
计算机设备7包括通过系统总线相互通信连接存储器71、处理器72、网络接口73。需要指出的是,图中仅示出了具有三种组件存储器71、处理器72、网络接口73的计算机设备7,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
存储器71至少包括一种类型的可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器71可以是计算机设备7的内部存储单元,例如该计算机设备7的硬盘或内存。在另一些实施例中,存储器71也可以是计算机设备7的外部存储设备,例如该计算机设备7上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器71还可以既包括计算机设备7的内部存储单元也包括其外部存储设备。本实施例中,存储器71通常用于存储安装于计算机设备7的操作系统和各类应用软件,例如基于条件随机场的序列标注方法的程序代码等。此外,存储器71还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器72在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器72通常用于控制计算机设备7的总体操作。本实施例中,处理器72用于运行存储器71中存储的程序代码或者处理数据,例如运行上述基于条件随机场的序列标注方法的程序代码,以实现基于条件随机场的序列标注方法的各种实施例。
网络接口73可包括无线网络接口或有线网络接口,该网络接口73通常用于在计算机设备7与其他电子设备之间建立通信连接。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序可被至少一个处理器执行,以使至少一个处理器执行如上述的一种基于条件随机场的序列标注方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例的方法。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。
Claims (9)
1.一种基于条件随机场的序列标注方法,其特征在于,包括:
获取目标文本序列和标准样本序列,并将所述目标文本序列转换为对应的初始向量序列,其中,所述初始向量序列包括句子向量、各个字向量集合的字向量和各个字的位置向量;
将所述初始向量序列输入预设的序列标注模型中进行语义提取,得到特征序列,其中,所述特征序列包括每个元素的语义信息,所述元素包括所述目标文本序列中的每个字或句子;
将所述特征序列与所述标准样本序列进行语义标注处理,并通过条件随机场引入概率转移矩阵,计算所述特征序列每个元素的转移概率,得到第一标注序列和每个元素对应的标签和转移概率得分;
基于所述第一标注序列的每个所述元素的语义信息与标签的语义信息,获取所述每个元素的标签概率分布,并构建映射空间将所述标签进行分离,得到第二标注序列,其中,所述第二标注序列包括每个所述元素的标签概率得分和转移概率得分;
通过维特比算法对所述第二标注序列进行维特比求解,以得到所述第二标注序列中的最优求解路径,并根据所述最优求解路径生成目标标注序列;
其中,所述基于所述第一标注序列的每个所述元素的语义信息与标签的语义信息,以获取所述每个元素的标签概率分布,并构建映射空间将所述标签进行分离,得到第二标注序列包括:
获取所述标签对应的语义信息,得到所述标签的语义信息,并将所述标签转换为基础向量序列;
通过将所述标签的语义信息和所述基础向量序列相乘,以将所述标签的语义信息和所述基础向量序列进行结合处理,得到标签增强序列;
计算所述每个元素的语义信息与所述标签增强序列的标签概率分布,并采用线性偏差消除法构建所述映射空间,以将所述标签进行分离,得到所述第二标注序列,其中,所述第二标注序列包括每个元素的标签概率得分和转移概率得分。
2.根据权利要求1所述的基于条件随机场的序列标注方法,其特征在于,所述获取目标文本序列,并将所述目标文本序列转换为对应的初始向量序列,其中,所述初始向量序列包括句子向量、各个字的字向量和各个字的位置向量包括:
将所述目标文本序列输入到预设神经网络的嵌入层,通过所述嵌入层输出与所述目标文本序列对应的多个字向量,多个所述字向量中包括至少一个标点向量;
将多个所述字向量输入到分割层,根据至少一个所述标点向量对多个所述字向量进行分割,得到n个字向量集合,所述n个字向量集合对应n个分割码;
通过位置编码对每个所述分割码进行编码运算,确定每个分割码的位置信息编码,以得到所述目标文本序列中每个字向量集合的位置向量;
根据所述目标文本序列中每个字的字向量以及所述每个字向量集合的位置向量,生成所述目标文本序列的句子向量。
3.根据权利要求1所述的基于条件随机场的序列标注方法,其特征在于,所述预设的序列标注模型包括第一卷积网络层、注意力层和第二卷积网络层;
所述将所述初始向量序列输入预设的序列标注模型中进行语义提取,得到特征序列包括:
通过所述第一卷积网络层对所述初始向量序列进行卷积处理,得到所述目标文本序列中每个元素的卷积特征;
将每个所述元素的卷积特征输入所述注意力层进行语义提取,得到每个所述元素的语义信息;
将每个所述元素的语义信息输入所述第二卷积网络层进行卷积处理,得到所述特征序列。
4.根据权利要求3所述的基于条件随机场的序列标注方法,其特征在于,所述将每个所述元素的卷积特征输入所述注意力层进行语义提取,得到每个所述元素的语义信息包括:
将每个所述元素的卷积特征输入所述注意力层进行注意力权重提取,得到每个所述元素的注意力权重;
根据所述元素的注意力权重对所述元素的卷积特征进行加权处理,得到所述元素的语义信息。
5.根据权利要求1所述的基于条件随机场的序列标注方法,其特征在于,所述将所述特征序列与所述标准样本序列进行语义标注处理,并通过条件随机场引入概率转移矩阵,计算所述特征序列每个元素的转移概率,得到第一标注序列和每个元素对应的标签和转移概率得分包括:
按照标签领域方式,将同一领域的标签划分为预设数量的抽象标签类别;
根据所述抽象标签类别,将所述标准样本序列中的元素进行标签分类,得到基础标签;
根据所述特征序列中每个元素的语义信息与所述基础标签中的元素进行语义标注处理,得到所述第一标注序列及所述第一标注序列的初始得分,其中,所述初始得分包括所述第一标注序列中每个元素被预测为一个预设标签的概率;
将所述初始得分输入到条件随机场所引入的概率转移矩阵之中,计算出所述第一标注序列的每个元素的转移概率,得到每个所述元素的转移概率得分,其中,所述概率转移矩阵表征由一个预设标签转移到另一个预设标签的概率。
6.根据权利要求1至5任一项所述的基于条件随机场的序列标注方法,其特征在于,所述通过维特比算法对所述第二标注序列进行维特比求解,以得到所述第二标注序列中的最优求解路径,并根据所述最优求解路径生成目标标注序列包括:
基于所述第二标注序列每个元素的所述转移概率得分和所述标签概率得分,得到每个元素的总得分;
根据维特比算法逐步累加所述每个元素的总得分,得到每个所述元素的最优求解路径;
将所述第二标注序列中的每个所述元素的最优求解路径进行组合,得到所述第二标注序列中的最优求解路径,并根据所述最优求解路径生成目标标注序列。
7.一种基于条件随机场的序列标注装置,其特征在于,包括:
初始向量序列转换模块,用于获取目标文本序列和标准样本序列,并将所述目标文本序列转换为对应的初始向量序列,其中,所述初始向量序列包括句子向量、各个字的字向量和各个字向量集合的位置向量;
语义信息提取模块,用于将所述初始向量序列输入预设的序列标注模型中进行语义提取,得到特征序列,其中,所述特征序列包括每个元素的语义信息,所述元素包括所述目标文本序列中的每个字或句子;
第一标注序列生成模块,用于将所述特征序列与所述标准样本序列进行语义标注处理,并通过条件随机场引入概率转移矩阵,计算所述特征序列每个元素的转移概率,得到第一标注序列和每个元素对应的标签和转移概率得分;
第二标注序列生成模块,用于基于所述第一标注序列的每个所述元素的语义信息与标签的语义信息,以获取所述每个元素的标签概率分布,并构建映射空间将所述标签进行分离,得到第二标注序列,其中,所述第二标注序列包括每个所述元素的标签概率得分和转移概率得分;
目标标注序列确定模块,用于通过维特比算法对所述第二标注序列进行维特比求解,以得到所述第二标注序列中的最优求解路径,并根据所述最优求解路径生成目标标注序列;
其中,所述第二标注序列生成模块包括:
基础向量序列生成单元,用于获取所述标签对应的语义信息,得到所述标签的语义信息,并将所述标签转换为基础向量序列;
标签增强序列生成单元,用于通过将所述标签的语义信息和所述基础向量序列相乘,以将所述标签的语义信息和所述基础向量序列进行结合处理,得到标签增强序列;
第二标注序列获取单元,用于计算所述每个元素的语义信息与所述标签增强序列的标签概率分布,并采用线性偏差消除法构建所述映射空间,以将所述标签进行分离,得到所述第二标注序列,其中,所述第二标注序列包括每个元素的标签概率得分和转移概率得分。
8.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6中任一项所述的基于条件随机场的序列标注方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的基于条件随机场的序列标注方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110341820.7A CN112949320B (zh) | 2021-03-30 | 基于条件随机场的序列标注方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110341820.7A CN112949320B (zh) | 2021-03-30 | 基于条件随机场的序列标注方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112949320A CN112949320A (zh) | 2021-06-11 |
CN112949320B true CN112949320B (zh) | 2024-06-11 |
Family
ID=
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108628823A (zh) * | 2018-03-14 | 2018-10-09 | 中山大学 | 结合注意力机制和多任务协同训练的命名实体识别方法 |
CN110472229A (zh) * | 2019-07-11 | 2019-11-19 | 新华三大数据技术有限公司 | 序列标注模型训练方法、电子病历处理方法及相关装置 |
CN111160467A (zh) * | 2019-05-31 | 2020-05-15 | 北京理工大学 | 一种基于条件随机场和内部语义注意力的图像描述方法 |
WO2021051574A1 (zh) * | 2019-09-16 | 2021-03-25 | 平安科技(深圳)有限公司 | 英文文本序列标注方法、系统及计算机设备 |
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108628823A (zh) * | 2018-03-14 | 2018-10-09 | 中山大学 | 结合注意力机制和多任务协同训练的命名实体识别方法 |
CN111160467A (zh) * | 2019-05-31 | 2020-05-15 | 北京理工大学 | 一种基于条件随机场和内部语义注意力的图像描述方法 |
CN110472229A (zh) * | 2019-07-11 | 2019-11-19 | 新华三大数据技术有限公司 | 序列标注模型训练方法、电子病历处理方法及相关装置 |
WO2021051574A1 (zh) * | 2019-09-16 | 2021-03-25 | 平安科技(深圳)有限公司 | 英文文本序列标注方法、系统及计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110287479B (zh) | 命名实体识别方法、电子装置及存储介质 | |
WO2021082953A1 (zh) | 机器阅读理解方法、设备、存储介质及装置 | |
CN110442856B (zh) | 一种地址信息标准化方法、装置、计算机设备及存储介质 | |
CN112287069B (zh) | 基于语音语义的信息检索方法、装置及计算机设备 | |
CN111985229A (zh) | 一种序列标注方法、装置及计算机设备 | |
CN110852106A (zh) | 基于人工智能的命名实体处理方法、装置及电子设备 | |
WO2022174496A1 (zh) | 基于生成模型的数据标注方法、装置、设备及存储介质 | |
CN112084752A (zh) | 基于自然语言的语句标注方法、装置、设备及存储介质 | |
CN112836521A (zh) | 问答匹配方法、装置、计算机设备及存储介质 | |
CN114218945A (zh) | 实体识别方法、装置、服务器及存储介质 | |
CN113947095A (zh) | 多语种文本翻译方法、装置、计算机设备及存储介质 | |
CN112906361A (zh) | 文本数据的标注方法和装置、电子设备和存储介质 | |
CN115544560A (zh) | 一种敏感信息的脱敏方法、装置、计算机设备及存储介质 | |
CN113723077A (zh) | 基于双向表征模型的句向量生成方法、装置及计算机设备 | |
CN115730237B (zh) | 垃圾邮件检测方法、装置、计算机设备及存储介质 | |
CN112949320B (zh) | 基于条件随机场的序列标注方法、装置、设备及介质 | |
CN114637831A (zh) | 基于语义分析的数据查询方法及其相关设备 | |
CN114781358A (zh) | 基于强化学习的文本纠错方法、装置、设备及存储介质 | |
CN115809313A (zh) | 一种文本相似度确定方法及设备 | |
CN113657104A (zh) | 文本抽取方法、装置、计算机设备及存储介质 | |
CN112396111A (zh) | 文本意图分类方法、装置、计算机设备及存储介质 | |
CN112949320A (zh) | 基于条件随机场的序列标注方法、装置、设备及介质 | |
CN111783471B (zh) | 自然语言的语义识别方法、装置、设备及存储介质 | |
CN113688268B (zh) | 图片信息抽取方法、装置、计算机设备及存储介质 | |
CN114462411B (zh) | 命名实体识别方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |