一种中文医药知识图谱自动化构建方法、装置及介质

    专利查询2022-07-07  193



    1.本发明涉及医疗信息领域,尤其涉及一种中文医药知识图谱自动化构建方法、装置及介质。


    背景技术:

    2.近年来,以自然语言处理和深度神经网络为中心的知识图谱自动化构建技术是医疗信息领域的重要课题,其中命名实体识别和关系抽取是从医学文本中提取信息并构建知识图谱的关键任务,其模型效果直接影响知识图谱的准确性和完整性。然而,当前医学领域中外部信息和专业词典的匮乏使得医疗命名实体识别和医疗关系抽取模型发挥受限。
    3.对于汉字这种符号语言,字形(glyph)往往编码了丰富的语义信息,对自然语言处理任务的性能提升有着直观的作用。在医学领域,许多字词结构和偏旁部首有着鲜明的特点,提升作用也更为明显。例如部首为“疒”的汉字与疾病和症状关系密切,左偏旁为“月”的汉字可能与身体部位相关。然而,从汉字图片中提取信息面临着许多困难,汉字图片存在着数据量少(常用汉字共5000多个,而传统的图片分类任务共有数十万张图片),图片尺度小(字形图片通常大小为12*12或50*50,而imagenet中的图片尺度为800*600),色度单一,信息模糊(字形图片只有灰黑色的笔画和大片的空白像素点)等特点,传统的深层cnn架构难以从中提取出有效特征。
    4.在主流的字形特征提取方法中,主要有三种思路:
    5.第一种方法通过人工选取代表性偏旁部首和字符结构的方式,对每个字符的组成构件进行编码后与字符向量进行结合。
    6.第二种方法通过浅层的cnn结构,如tianzige-cnn和cly-cnn结构从字形图片中提取象形特征,为了增强输入特征图的信息丰富度,该方法通常会将历史和当代的文字字形相结合,或者使用尺度较大的黑体字图片。并且为了更好地与预训练语言模型结合并防止训练过拟合,会引入图片文字识别或者图片重构任务作为辅助任务进行多任务学习。
    7.第三种方法通过三维的浅层cnn结构,如cgs-cnn架构来捕捉相邻字符的字形之间的潜在信息,并通过一种基于异步滑窗法和分片注意力机制的融合方法来捕获字形表示向量和字符表示向量的交互信息。
    8.然而,在现有方法中,未能根据字形图片中不同部位的语义信息丰富度的差异进行特征增强与细化,而且浅层的cnn架构特征学习能力严重不足。同时,在目前研究中,将字形向量提取模型与自然语言处理任务结合的方法通常有两种:第一是将提取出来的字形向量作为辅助信息直接加入到自然语言处理任务的训练过程。第二是采用多任务学习的方法,将字形向量引入到自然语言处理任务模型的同时,制定辅助任务训练字形向量提取模型,常见的辅助任务包括图片文字识别和图片重构。但是这些方法未能有效地在字形信息与字符表征的语义信息之间建立紧密联系。


    技术实现要素:

    9.为至少一定程度上解决现有技术中存在的技术问题之一,本发明的目的在于提供一种基于汉字字形信息增强的中文医药知识图谱自动化构建方法、装置及介质。
    10.本发明所采用的技术方案是:
    11.一种中文医药知识图谱自动化构建方法,包括以下步骤:
    12.获取中文医药数据,对中文医药数据进行预处理,获得段落列表list1;
    13.采用训练后的实体识别模型,对所述段落列表中的每段文本进行实体识别,获取实体数据列表list2,以及整理得到实体表entities;
    14.根据预设的实体类型对,对实体数据列表list2中的实体进行组合,形成实体对,并构建关系数据列表list3;
    15.采用训练后的关系抽取模型,对关系数据列表list3进行关系抽取,获得三元组列表triplets;
    16.对实体表entities和三元组列表triplets进行实体对齐,将对齐后的数据存储入图数据库中,实现知识图谱的构建;
    17.其中,所述实体识别模型基于字形特征向量进行实体识别,所述关系抽取模型基于字形特征向量进行关系抽取。
    18.进一步地,所述实体识别模型为bert-bilstm-crf glyve模型;
    19.给所述实体识别模型一个输入序列xe={x
    e_1
    ,x
    e_2
    ,...,x
    e_n
    },对应的输出序列为ye={y
    e_1
    ,y
    e_2
    ,...,y
    e_n
    },其中n表示文本序列长度,x
    e_i
    表示下标为i的字符,y
    e_i
    表示字符对应的bieso标注,以e_和e_表示命名实体识别任务前缀;
    20.输入序列首先经过词嵌入层映射到词向量空间,随后传输到bert encoder结构中,将bert隐藏层维度设置为d
    model
    ,将第i个词经过bert模型后的隐藏层输出记为将第i个词对应的字形图片g
    e_i
    经过glyve模型后得到的字形特征向量记为将h
    e_i
    和v
    e_i
    拼接后作为中间特征向量作为bilstm网络的输入,编码得到最终的隐藏表示
    21.将文本的最终特征向量表示为:te={t
    e_1
    ,t
    e_2
    ,...,t
    e_n
    },并将te作为crf层的输入进行序列解码;
    22.在解码过程中,获取预测结果中最可能的标签序列,以实现实体识别。
    23.进一步地,序列解码的计算公式如下:
    [0024][0025]
    其中,y
    ′e表示任意可能的标签序列,和是crf层中转置矩阵的权重和偏置;
    [0026]
    在解码过程中,使用viterbi算法来获取预测结果中最可能的标签序列,在训练过程中,给定一组训练样本将最小化负对数似然函数作为损失函数来训练
    整个模型。
    [0027]
    进一步地,h
    e_i
    、v
    e_i
    以及的计算公式如下:
    [0028][0029]
    ve
    _i
    =glyve(g
    e_i
    )
    [0030][0031]
    其中,embed(
    ·
    )表示取词向量;bilstm(
    ·
    )表示隐藏层维度为的双向lstm网络;bert(
    ·
    )表示经过bert模型后的输出;glyve(
    ·
    )表示经过glyve模型后的输出。
    [0032]
    进一步地,所述关系抽取模型为r-bert glyve模型;
    [0033]
    对于一个句子中的两个目标实体e1和e2,以及从实体识别任务中获取的实体标签l1和l2,任务目标为确定两个实体之间的关系;
    [0034]
    为了使用bert模型来捕获两个实体的位置信息和局部语义信息,并充分利用标签信息,将带有实体标签的特殊符号安置在实体边界,在第一个实体的头部和尾部位置,插入特殊符号“|l1|”,在第二个实体的头部和尾部位置,插入了特殊符号“|l2|”,同时,在句子的开头和结尾处分别插入特殊符号[cls]和[sep]用于捕获句子的全局语义信息;
    [0035]
    将给定句子和目标实体的文本序列记为
    [0036]
    其中i,j表示第一个实体的头部和尾部下标,p,q表示第二个实体的头部和尾部下标;
    [0037]
    文本序列xr首先经过词嵌入层映射到词向量空间,随后传输到bert encoder结构中,将bert隐藏层维度设置为d
    model
    ,将bert输出的隐藏状态记为hr,将向量h
    r_i
    到h
    r_j
    记为实体e1的隐藏状态输出,向量h
    r_p
    到h
    r_q
    记为实体e2的隐藏状态输出,h
    r_cls
    和h
    r_sep
    表示特殊符号[cls]和[sep]的隐藏状态输出;同时,将实体e1和e2对应的字形图片g
    r_i
    到g
    r_j
    ,g
    r_p
    到g
    r_q
    经过glyve模型后得到的字形特征向量记为将实体中每个下标的隐藏状态输出和字形特征向量拼接后,在实体的下标范围内对拼接向量求平均;在经过relu激活函数后,将向量传输到前馈神经网络层linear中进行特征编码得到实体e1和e2的表示向量h

    r1
    和h

    r2

    [0038]
    对于特殊标签[cls]和[sep],其对应的字形为空,将隐藏状态h
    r_cls
    和h
    r_sep
    经过relu激活函数后传输到全连接层中,获得表示向量h

    r_cls
    和h

    r_sep

    [0039]
    将h

    r1
    、h

    r2
    、h

    r_cls
    和h

    r_sep
    四个表示向量拼接后,作为分类层的输入,以确定实体e1和e2之间的关系类型。
    [0040]
    进一步地,四个表示向量采用以下方式进行拼接:
    [0041][0042][0043]
    pr=softmax(h
    ″r)
    [0044]
    其中,分别表示分类层中两次线性变化的权重和偏置,dc表示隐藏层维度;l表示关系类型的数量。
    [0045]
    进一步地,h

    r1
    、h

    r2
    、h

    r_cls
    和h

    r_sep
    四个表示向量的计算公式如下:
    [0046][0047][0048][0049][0050]
    其中,分别表示linear层的权重和偏置;d=dg d
    model
    ,d

    =d/2,dg表示glyve输出向量的维度,d
    model
    表示bert输出向量的维度;表示bert模型的输出向量;表示glyve模型的输出向量。
    [0051]
    进一步地,所述glyve模型用于提取特征向量;
    [0052]
    glyve模型以字形图片作为模型输入,利用卷积层和池化层从图片中提取特征图,由基于双流融合卷积注意力模块对特征图进行特征细化,最后通过参数共享的前馈神经网络层提取字形特征向量。
    [0053]
    本发明所采用的另一技术方案是:
    [0054]
    一种中文医药知识图谱自动化构建装置,包括:
    [0055]
    至少一个处理器;
    [0056]
    至少一个存储器,用于存储至少一个程序;
    [0057]
    当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上所述方法。
    [0058]
    本发明所采用的另一技术方案是:
    [0059]
    一种计算机可读存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序在由处理器执行时用于执行如上所述方法。
    [0060]
    本发明的有益效果是:本发明提供了一种高质量的中文医药知识图谱自动化构建方案,用于构建医药文本相关的知识图谱,对完善该领域知识图谱发挥了重要的作用。
    附图说明
    [0061]
    为了更清楚地说明本发明实施例或者现有技术中的技术方案,下面对本发明实施例或者现有技术中的相关技术方案附图作以下介绍,应当理解的是,下面介绍中的附图仅仅为了方便清晰表述本发明的技术方案中的部分实施例,对于本领域的技术人员而言,在无需付出创造性劳动的前提下,还可以根据这些附图获取到其他附图。
    [0062]
    图1是本发明实施例中字形向量提取模型(glyve模型)的框架图;
    [0063]
    图2是本发明实施例中双流融合卷积注意力模块(dsf-cam)的框架图;
    [0064]
    图3是本发明实施例中通道流注意力模块和空间流注意力模块的框架图;
    [0065]
    图4是本发明实施例中bert-bilstm-crf glyve模型结构的示意图;
    [0066]
    图5是本发明实施例中r-bert glyve模型结构的示意图;
    [0067]
    图6是本发明实施例中不同cmee模型在各实体类别的f1值的示意图;
    [0068]
    图7是本发明实施例中不同模型在各关系类别的f1值的示意图;
    [0069]
    图8是本发明实施例中中文医药知识图谱(局部)的示意图。
    具体实施方式
    [0070]
    下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。对于以下实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
    [0071]
    在本发明的描述中,需要理解的是,涉及到方位描述,例如上、下、前、后、左、右等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
    [0072]
    在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
    [0073]
    本发明的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
    [0074]
    本发明实施例研究了中文医学知识图谱构建过程中的医疗命名实体识别(cmee)和医疗关系抽取(cmre)两个任务。针对现有方法的不足,提出了基于双流融合卷积注意力模块(dual-stream fusion convolution attention module,dsf-cam)的字形向量提取模型(glyph-vector extraction model,glyve)和多任务学习相结合的方法。字形向量提取模型利用交替的卷积层(convolution)和池化层(pooling)从字形图片中提取特征图,并用卷积注意力机制从特征图的空间流和通道流分别提取特征权重来细化特征图,最后将两个信息流的特征图融合。该模型使得字形图片中蕴含重要语义信息的部分能被有效分析和提取。同时,本实施例还提出了一种基于医学实体标签的字形图片分类任务,将其作为辅助任务对字形向量提取模型进行训练,并与cmee和cmre的任务模型结合进行多任务学习,该方法大大提升了模型的表达能力和鲁棒性,有效地解决了oov实体的识别困难问题。在cmee和cmre的任务模型上,我们利用大规模无标注数据,共计7000万条医疗文本对预训练语言模型bert进行二次预训练并作为底层词向量模型,再根据具体任务构建上层结构。本发明系统比较了不同基线模型在引入glyve后取得的性能提升,以及现有的字形向量提取模型在cmee任务的效果,实验结果表明我们提出的模型在两个任务上均取得了显著的提升。并且在cmee任务中,oov实体的识别效果有大幅提升。
    [0075]
    我们以中文药品说明书为主要研究对象,提出了一种基于多任务学习和字形信息编码的中文医药知识图谱自动化构建框架。从中国医药信息查询平台、中医中药网、国药网和国家药品监督管理局获取中文医学文本、医学实体和关系信息,并进行医学本体构建和医学文本标注。然后利用本发明提出的模型训练标注文本,将训练后的模型对未标注文本进行实体识别和关系抽取。最后将三元组进行知识融合后导入neo4j中构建可视化知识图谱,实现了高质量,系统化的医学知识图谱自动化构建流程。
    [0076]
    模型构建的主要步骤:
    [0077]
    步骤1:字形向量提取模型glyve。glyve模型结构及网络参数如图1所示。采用了图片大小为100
    ×
    100
    ×
    3的田字格宋体灰度图作为字形图片,三个维度分别代表图片的长度,宽度和通道数。田字格是一种中国传统书法格式。
    [0078]
    1)glyve模型结构
    [0079]
    在本实施例中,将介绍glyve的组成。glyve由特征提取和特征细化两部分交替进行,模型以字形图片作为模型输入,利用卷积层和池化层从图片中提取特征图,由dsf-cam对特征图进行特征细化,最后通过参数共享的前馈神经网络层(shared feed-forward network,shared-ffn)提取glyph特征向量。dsf-cam的结构如图2所示。
    [0080]
    传统的卷积运算通过跨通道和空间维度从输入特征图中提取信息,但缺乏对特征的细化能力;而注意力机制可以关注重要的特征并抑制不必要的特征,以实现增强特征代表性。本发明提出一种新的卷积注意力模块dsf-cam来强调通道流和空间流两个特征流中有意义的特征。为此,我们将输入特征图分别通过空间注意力模块(spatial attention block)和通道注意力模块(channel attention block),每个模块可以分别学习空间流和通道流中不同特征的注意力权重。在得到各自的注意力权重后,将分别对输入特征图的空间流和通道流进行注意力加权,并把得到的中间特征图合并后得到细化特征。
    [0081]
    给定输入图片hg为图片大小,cg为图片通道数。在glyve第一阶段的特征抽取和细化中,由于汉字字形的灰度图具有特征稀疏的特点,图片存在大面积空白,且特征点均为黑灰色调,我们采用视野域较大的卷积核和池化层(视野域为5
    ×
    5)且卷积核宽度较小(32个卷积核),使得能够有效地从图片中提取特征并细化。在dsf-cam第二阶段特征抽取和细化中,缩小了卷积核的视野域(视野域为3
    ×
    3)并增加宽度(64个卷积核),实现了在第一阶段细化的基础上再次丰富特征信息。在第三阶段中,使用了更宽的卷积核(256个卷积核)以及更小视野域(视野域为2
    ×
    2)的池化层做特征浓缩,得到特征图再经过向量平铺和参数共享的前馈神经网络层后,dsf-cam输出字形特征向量其中dg表示字形特征向量的维度,计算如公式(1)(2)所示:
    [0082]vr_r
    =flatten(fg)
    ꢀꢀꢀꢀꢀꢀꢀ
    (1)
    [0083]vg
    =(relu(v
    r_rws
    bs)》,r=0,l2,3
    ꢀꢀꢀꢀꢀꢀ
    (2)
    [0084]
    其中,我们采用空间大小为2
    ×
    2的特征图来表示具有田字格结构的字形图片中的四块区域,在经过flatten层后得到维度为的四个区域特征向量vr,将四个特征向量分别经过shared-ffn层后的向量拼接得到字形特征向量。表示shared-ffn的权重和偏置,其中ds=dg/4。《
    ·
    》表示多个向量的连接操作,在dsf-cam进行特征提取的卷积层均用relu为激活函数。
    [0085]
    在特征细化模块dsf-cam中,给定输入特征图f将分别经过空间注意力模块和通道注意力模块,分别得到2d的空间注意力特征图权重和1d的通道注意力特征图权重其中h和c分别表示特征图的长度和通道数,计算过程如公式(3)-(5)所示:
    [0086][0087][0088]f′
    =fc fsꢀꢀꢀꢀꢀꢀ
    (5)
    [0089]
    其中表示逐元素相乘,在该过程中,注意力值会沿着对应的维度进行广播以保持维度与输入特征图一致:即通道注意力值会沿着空间维度广播,空间注意力值会沿着通道维度广播。将中间特征图fc和fs逐元素相加后得细化特征图
    [0090]
    2)双流融合卷积注意力模块dsf-cam
    [0091]
    模块结构如图3所示。在利用特征图构建注意力权重的过程中,通常包括对特征信息的检测和聚集,目前普遍采用全局平均池化(global avgpool,gap)和全局最大池化(global maxpool,gmp)操作,我们认为,利用不同的特征检测器从特征图的不同角度提取目标对象的特征信息,并将这些蕴含独特线索的特性信息进行有效地交互和结合后,能很大程度上提升模块的特征细化能力。因此,在空间注意力模块和通道注意力模块中,我们分别引入了全局深度卷积(global depthwise convolution,gdc)和1
    ×
    1卷积,与全局平均池化和全局最大池化操作相结合后进行特征信息的聚集。随后,我们提出自编码式的全连接层(autoencoder ffn,ae-ffn)以及多视野卷积层结构,分别应用在通道注意力模块和空间注意力模块中,实现对不同检测器提取的特征信息进行交互和聚合。以下将介绍注意力模块的详细信息。
    [0092]
    通道注意力模块。我们利用特征图中不同通道之间的关系生成通道注意力权重,通道注意力解释了输入特征中“什么内容”是有意义的,在通道注意力模块中,全局深度卷积中各个卷积核参数共享,从每个空间平面中聚集通道特征信息。首先,我们通过沿着空间平面使用[全局平均池化,全局最大池化,全局深度卷积]特征检测器聚集输入特征图的空间信息,生成三个不同的空间上下文特征向量:然后,我们将三个特征向量拼接,并作为ae-ffn层的输入,在自编码式全连接层中,输入向量被编码并压缩成潜在的空间表征,随后将这部分空间表征解码重构,该过程实现了对不同特征向量的去噪和信息交互。最后我们将ae-ffn层的输出向量进行拆分(split),并使用逐元素求和将它们合并得到通道注意力权重mc。计算过程如公式(6)-(10)所示:
    [0093][0094][0095][0096][0097]
    [0098]
    其中表示ae-ffn层的输入和输出。ffn层的输入和输出。分别表示自编码式全连接层中编码结构和解码结构的权重和偏置,c
    ae
    =3c/r,此处取压缩因子r=3。在解码过程中σ表示sigmoid激活函数。
    [0099]
    空间注意力模块。我们利用特征图中空间的内部关系生成空间注意力权重,空间注意力解释了输入特征中“哪些地方”是有意义的,在空间注意力模块中,我们采用了输出通道数为1的1
    ×
    1卷积从每个空间块的通道内容中聚集空间特征信息。首先,我们通过沿着通道轴使用[全局平均池化,全局最大池化,1
    ×
    1卷积]特征检测器来聚集输入特征图的通道信息,生成三个不同的通道上下文特征平面:并将它们沿通道轴拼接为一个特征描述符。然后,在多视野卷积层中,我们使用了两个视野域尺寸不同的卷积核从特征描述符中分别编码特征信息,并将输出逐元素求和得到空间注意力权重ms。计算公式如公式(11)-(13)所示。该过程利用不同视野范围编码了中应该加强或抑制的特征点,比起单视野卷积的方法,加强了特征平面之间的信息交互,并提升了模型的丰富性。
    [0100][0101][0102][0103]
    其中表示卷积核尺寸为h,输出通道数为c的卷积操作。此处使用了relu作为激活函数。
    [0104]
    步骤2:多任务学习-基于医学实体标签的字形图片分类任务。在模型早期训练过程中,bert模型已经进行过完备的预训练,而字形向量提取模型的隐藏层权重为随机初始化,还未能很好地编码字形特征信息,引入多任务学习能够有效调节模型训练,对防止模型过拟合和提高模型泛化能力起到关键作用。
    [0105]
    医学标签是对医学客观实体的归类和表征,蕴含着丰富的医学语义信息。若一个字符在某一类医学标签的实体中出现频率较高,则该字符与这个类别有着较强的语义相关性。因此,通过分类任务将字形图片与医学实体标签绑定,有助于从字形提取模型中学习到更多医学语义信息。首先,我们对训练数据的字符及其对应的实体类型进行统计。我们统计实体类型数量为m=21(包含“非实体”这一特殊实体类型),对于每张字形图片,将其对应的汉字字符定义为c,随后我们统计字符c在训练数据集中出现的次数为k,以及每次出现时隶属的实体类型。我们将字符c出现在每个类型的次数定义为{k0,k1,...,k
    m-1
    },其中k0 k1

    k
    m-1
    =k。我们根据字符在各实体类型出现的概率来制定字形图片分类的标签。即给定输入图片xg,对应的分类标签为yg={softmax(k0/k,k1/k,...,k
    m-1
    /k)}。以xg作为glyve模型输入,得到glyph特征向量vg后,将vg转发到一个前馈神经网络进行标签概率预测,图像分类任务的训练目标计算如公式(14)所示。
    [0106]
    [0107]
    其中表示分类层的权重与偏置项。需要注意的是,与传统的图片分类任务不同,我们提出的辅助训练任务的训练目标不在于将字形图片明确地分类到某一实体类型,而是为了使预测结果的概率分布贴近一个或多个出现频率高的实体类型,使得字形信息与其对应的高频率实体类型建立强关联性。
    [0108]
    我们将需要处理的cmee和cmre任务目标定义为将和线性结合后进行多任务学习,则最终训练目标函数的计算如公式(15)所示。
    [0109][0110]
    其中λ(e)为权衡自然语言处理任务目标和字形图片分类目标之间重要性的控制函数,e表示训练的迭代数(epoch):其中λ0∈[0,1]表示初始因子,λ1∈[0,1]表示衰减因子,即λ(e)为关于迭代数e的指数衰减函数。这意味着在训练初期,我们需要从字形图片分类任务中学习更多关于字形表征信息的内容,随着训练进行,字形图片分类任务的比重不断降低,能够防止glyve模型过拟合的同时,将字形特征向量与cmee和cmre任务有效结合。
    [0111]
    步骤3:结合glyve模型的cmee任务。glyve模型是一个轻量级的通用模块,它可以无缝地集成到现有的cmee和cmre任务模型中。由于每个字符c对应的汉字图片经过glyve模型后得到的字形特征向量的维度,与该字符传输到cmee和cmre任务模型中的隐藏信息编码层(hidden layer)后得到的隐藏层向量的维度相近,因此只需要将两个向量相连接后,再作为后续的神经网络结构的输入进行传播。
    [0112]
    在cmee任务中,我们提出结合模型bert-bilstm-crf glyve。模型结构如图4所示。给定一个输入序列xe={x
    e_1
    ,x
    e_2
    ,...,x
    e_n
    },其对应的输出序列为ye={y
    e_1
    ,y
    e_2
    ,...,y
    e_n
    },其中n表示文本序列长度,x
    e_i
    表示下标为i的字符,y
    e_i
    表示字符对应的bieso标注(在命名实体识别任务中,用“tag-实体类型”表示字符对应的类型标注,tag中包括bieso,分别表示实体开始、中间、结束,单字符实体以及非实体),以e_和e_表示命名实体识别任务前缀。
    [0113]
    输入序列首先经过词嵌入层映射到词向量空间,随后传输到bert encoder结构中,我们将bert隐藏层维度设置为d
    model
    ,将第i个词经过bert模型后的隐藏层输出记为将第i个词对应的字形图片g
    e_i
    经过glyve模型后得到的字形特征向量记为我们将h
    e_i
    和v
    e_i
    拼接后作为中间特征向量作为bilstm网络的输入,编码得到最终的隐藏表示计算过程如公式(16)-(18)所示。
    [0114]he_i
    =bert(embed(x
    e_i
    ))
    ꢀꢀꢀꢀ
    (16)
    [0115]ve_i
    =glyve(g
    e_i
    )
    ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
    (17)
    [0116][0117]
    其中embed(
    ·
    )表示取词向量。bilstm(
    ·
    )表示隐藏层维度为的双向lstm网络。
    [0118]
    我们将文本的最终特征向量表示为:te={t
    e_1
    ,t
    e_2
    ,...,t
    e_n
    },并将其作为crf层的输入进行序列解码,计算过程如公式(19)所示。
    [0119][0120]
    其中y
    ′e表示任意可能的标签序列,和是crf层中转置矩阵的权重和偏置,在解码过程中,我们使用viterbi算法来获取预测结果中最可能的标签序列,在训练过程中,给定一组训练样本我们将最小化负对数似然函数作为损失函数来训练整个模型,计算过程如公式(20)所示。
    [0121][0122]
    步骤4:结合glyve模型的cmre任务。
    [0123]
    在cmre任务模型中,我们提出改进模型r-bert glyve。模型结构如图5所示。对于一个句子中的两个目标实体e1和e2,以及从cmee任务中获取的实体标签l1和l2,任务目标为确定两个实体之间的关系。为了使用bert模型来捕获两个实体的位置信息和局部语义信息,并充分利用标签信息,我们将带有实体标签的特殊符号安置在实体边界。在第一个实体的头部和尾部位置,我们插入了特殊符号“|l1|”,在第二个实体的头部和尾部位置,我们插入了特殊符号“|l2|”,同时,在句子的开头和结尾处分别插入特殊符号[cls]和[sep]用于捕获句子的全局语义信息。我们将给定句子和目标实体的文本序列记为
    [0124]
    其中i,j表示第一个实体的头部和尾部下标,p,q表示第二个实体的头部和尾部下标,文本序列xr首先经过词嵌入层映射到词向量空间,随后传输到bert encoder结构中,我们将bert隐藏层维度设置为d
    model
    ,我们将bert输出的隐藏状态记为hr,将向量h
    r_i
    到h
    r_j
    记为实体e1的隐藏状态输出,向量h
    r_p
    到h
    r_q
    记为实体e2的隐藏状态输出,h
    r_cls
    和h
    r_sep
    表示特殊符号[cls]和[sep]的隐藏状态输出。同时,我们将实体e1和e2对应的字形图片g
    r_i
    到g
    r_j
    ,g
    r_p
    到g
    r_q
    经过glyve模型后得到的字形特征向量记为我们将实体中每个下标的隐藏状态输出和字形特征向量拼接后,在实体的下标范围内对拼接向量求平均。在经过relu激活函数后,将向量传输到前馈神经网络层linear中进行特征编码得到实体e1和e2的表示向量h

    r1
    和h

    r2
    ,计算过程如公式(21)(22)所示。
    [0125][0126][0127]
    对于特殊标签[cls]和[sep],其对应的字形为空,因此不将字形向量加入到其表示向量的计算过程中,即将隐藏状态h
    r_cls
    和h
    r_sep
    经过relu激活函数后传输到全连接层中,则其最终表示向量h

    r_cls
    和h

    r_sep
    表示如公式(23)(24)所示。
    [0128]h′
    r_cls
    =w0[relu(h
    r_cls
    )] b0ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
    (23)
    [0129]h′
    r_sep
    =w0[relu(h
    r_sep
    )] b0ꢀꢀꢀꢀꢀꢀꢀꢀ
    (24)
    [0130]
    其中分别表示linear层的权重和偏置,d=dg d
    model
    ,d

    =d/2。计算[cls]和[sep]输出的linear层参数共享。
    [0131]
    我们将四个表示向量拼接后,作为分类层的输入,以确定实体e1和e2之间的关系类型,如公式(25)-(27)所示。
    [0132]h′
    r_merge
    =《h

    r_cls
    ,h

    r1
    ,h

    r2
    ,h

    r_sep

    ꢀꢀꢀꢀꢀꢀꢀ
    (25)
    [0133][0134]
    pr=softmax(h
    ″r)
    ꢀꢀꢀꢀꢀꢀꢀ
    (27)
    [0135]
    其中分别表示分类层中两次线性变化的权重和偏置,dc=d/2表示隐藏层维度。l表示关系类型的数量。在训练过程中,使用softmax激活函数计算各标签的概率分布,使用交叉熵作为损失函数。
    [0136]
    在构建了cmee和cmre任务模型的基础上,我们进行医疗数据的收集与标注,知识图谱中实体和关系的设计,搭建自动化构建知识图谱的流程。
    [0137]
    中文医药知识图谱自动化构建主要步骤:
    [0138]
    步骤s1:数据准备
    [0139]
    我们以“中文医药说明书”为研究对象,组织高校,医院和相关医疗企业的医学专家参与研究和讨论,结合权威认证的药品说明书文本,进行医学本体构建。该过程包含对药品说明书中涉及的实体和关系进行预定义,并根据预定义的实体和关系对文本进行标注。最终,我们共预定义了20种实体类型,22种关系类型,分别如表1和表2所示,其中一个关系类型可能会对应多个实体类型对。
    [0140]
    表1预定义实体类型
    [0141][0142]
    表2预定义关系类型
    [0143][0144][0145]
    在原始文本的处理过程中,我们制定了文本模板,将所有药品说明书按照文本模板进行段落划分、信息填充和文本规范化处理。我们使用开源的标注工具brat进行实体和关系标注,为了使标注结果更为客观,我们采用双人标注和专家复核的方法,每一份数据都由两名人员进行标注,如果标注结果相同则视为合格标注,如果标注结果不同则由第三名专家进行复核并确定正确的标注。最终共标注药品说明书6950份,其中包括119651条段落文本,236643个实体,205114个关系对。在自然语言处理任务的实验中,其中有5000份是训练数据,其余1950份作为测试数据评估模型性能。
    [0146]
    步骤s2:自动化构建架构搭建
    [0147]
    综合上述的cmee和cmre技术,在本节中我们将介绍利用原始中文医药说明书文本
    自动化构建知识图谱的流程,详细步骤如下:
    [0148]
    s21:数据预处理。给定一篇中文医药说明书,根据制定的文本规范化模板对说明书进行文本分段、文本补全和格式规范化处理后获取药品说明书的段落列表list1。
    [0149]
    s22:实体识别。用训练的bert-bilstm-crf glyve模型对list1中的每段文本进行实体识别,获取实体数据列表list2,每条数据包含文本段落及识别实体,实体以《起始下标,结束下标,实体类型》格式存储。并整理得到实体表entities,对每个实体以《实体名称,实体类型》格式存储。
    [0150]
    s23:关系抽取。根据预定义关系中的实体类型对,对list2每一条数据所包含的实体进行组合形成实体对,并构建关系数据列表list3,其中每条数据包含文本段落以及一个实体对,基于训练的r-bert glyve模型对list3每条数据进行关系抽取,得到医学说明书三元组列表triplets。每个三元组以《实体,关系,实体》格式存储。
    [0151]
    s24:实体对齐。在医药说明书中,通常存在不同药物名称指代同一种药物实体的情况(如“喜辽妥”和“多磺酸粘多糖乳膏”为同种药物)。为此我们制定了药品名称统计表进行规范化,根据药品名称分别对triplets和entities进行实体对齐。
    [0152]
    s25:知识存储。将triplets和entities写入neo4j图数据库中进行存储并可视化。
    [0153]
    对于输入的每一篇医药说明书,通过上述流程后,自动生成的知识图谱如图8所示。超过95%f1值的实体识别和关系抽取保障了该构建流程的可行性与高质量。根据该流程,我们构建了一个包含2万篇医药说明书的大规模中文医药知识图谱。
    [0154]
    综上所述,与现有技术相比,本实施例方法的有益效果如下:
    [0155]
    本发明致力于面向中文医药知识图谱自动化构建的研究和实现,对于知识图谱构建过程中涉及的两个重要的nlp任务:中文医学命名实体识别和中文医学关系抽取进行了重点研究。本发明从中文语言学的特征出发,设计了字形向量提取模型glyve,提出了基于双流融合的卷积注意力结构,该结构通过注意力机制对特征进行细化,从字形图片中发掘和提取有效信息。同时,我们将字形图片分类与统计字符标签识别任务相结合作为辅助任务训练glyve模型,并制定了将该辅助任务与下游任务结合做多任务学习的训练策略。实验结果证明本发明提出的方法大幅提升了cmee和cmre任务的性能。基于此,我们实现了一个高质量的中文医药知识图谱自动化构建流程,并构建了一个大规模医药说明书知识图谱,对完善该领域知识图谱发挥了重要的作用。
    [0156]
    结果分析:
    [0157]
    1)cmee实验结果及分析
    [0158]
    在cmee的模型参数设置上,我们采用了bert-base结构,词向量和bert隐藏层维度为768,bilstm隐藏层维度为256,字形特征向量的维度为256。多任务学习过程中,初始因子λ0设置0。8,衰减因子λ1=0。9。在训练参数设置上,bert和bilstm的学习率为5e-5,crf和glyve模块的学习率为2e-4。段落文本最大长度设置为500,超过此长度的文本将按标点符号切分为两段,批次大小(batch size)设置为16,训练迭代次数(epoch)为30,使用adam算法进行模型参数优化,并引入余弦退火算法防止模型训练陷入局部最优解中。在测试集中,参照conll-2012命名实体识别任务的学术评测标准,采用微观平均精确度(p),召回率(r)以及f1值作为测评指标,并且使用实体级的评估粒度,即只有预测实体的边界和类别与标注实体完全一致时才算实体识别正确。为了探索glyve模块在cmee领域的有效性,我们对比
    几个基线模型在加入glyve结构后效果的提升,在模型选择上,我们选择bilstm-crf,bert和bert-bilstm-crf模型作为基线模型。同时,我们对比了中文命名实体识别任务中取得优秀成果的字形向量提取模型bert glyce和fgn在cmee任务的结果,实验结果如表3所示,实验结果表明,在引入glyve字形提取模型后,三个基线模型的f1值均取得较大提升,bert-bilstm-crf glyve模型达到2.58%的最大提升幅度,表明glyve能够有效地提取出高质量的字形嵌入信息,且该信息能很好地结合到cmee任务中。同时,同比基于bert的字形嵌入模型,bert glyve的f1值要比bert glyce高1.06%。同比基于bert-bilstm-crf的字形嵌入模型,bert-bilstm-crf glyve的f1值要比fgn高1.46%。表明了比起现有的字形向量提取模型,在引入了双流融合的卷积注意力模块后,有效加强了模型对字形信息的提取和细化能力。
    [0159]
    表3不同模型在cmee任务中的表现(%)
    [0160][0161]
    在图6中,我们对比了基线模型bert-bilstm-crf和两个基于bert-bilstm-crf结构的字形嵌入模型:fgn模型以及本发明提出的bert-bilstm-crf glyve模型在cmee测试集中各标签的预测f1值。据实验结果和实验数据对比分析,在“配伍结果级别”和“致病因”两个实体类别中,分别存在标签样本稀少和实体分布稀疏的问题,使得f1值偏低。而对于“规格”、“发生率级别”、“人群”、“年龄”、“单次剂量”和“最大剂量”这些实体类别,在同一类别中实体的种类较为单一,并且实体的规范性较强。例如“年龄”实体多以“岁”为结尾,“单次剂量”和“最大剂量”实体多用“数字 mg,g,片,包”进行量化,使得这些实体的识别难度较低,f1值也较高。在引入字形向量提取模型后,比起基线模型,fgn在许多标签上的提升并不显著,而bert-bilstm-crf glyve模型在许多标签中均有较为显著和稳定的提升,在“药品”、“药物”、“疾病”、“致病因”、“给药途径”和“生理检验”等实体类别中,许多实体的偏旁部首特征和字形特征较为显著,f1的提升幅度也较大,有效证明了glyve模型对字形特征有着优秀的发掘和提取能力。
    [0162]
    2)cmre实验结果及分析
    [0163]
    在关系抽取的模型参数设置上,我们采用了相同结构的bert-base结构,字形特征向量的维度为256,linear层维度为512,分类层中的双层线性变化的维度分别为512和23(关系类别数 1)。由于在关系抽取任务中,需要根据预定义的关系类型对每个潜在关系的实体对进行分类,当一个段落文本存在多个实体时,则需要针对可能存在关系的不同实体
    对进行关系分类,在一个迭代中同个段落文本会进行多次训练,因此需要对学习参数进行调整。在多任务学习过程中,初始因子λ0=0。9,衰减因子λ1=0。8。在训练参数设置上,bert的学习率为2e-5,glyve模块的学习率为4e-5,linear层和分类层的学习率为5e-6。段落文本中实体对最大间隔长度为500个字符,超出此范围的实体对不进行关系抽取,批次大小(batch size)设置为16,训练迭代次数(epoch)为20。与命名实体识别任务相同,使用adam优化器和余弦退火算法。在测试集中,参照semeval-2010 task 8多分类任务的学术评测标注,采用宏观平均精确度(p),召回率(r)以及f1值作为测评指标。
    [0164]
    为了探索glyve模型在cmre领域的有效性,我们对比几个基线模型在加入glyve结构后效果的提升,在模型选择上,我们选择att-pooling-cnn,bert以及改进后的r-bert模型作为基线模型。实验结果如表4所示,实验结果表明,无论是基于cnn还是基于bert的关系抽取模型,在引入glyve模型后,准确率,召回率和f1值均取得了较大提升,提升幅度最大的r-bert glyve模型的f1值上升了1.52%。这一实验结果说明了glyve模型具有较强的迁移能力,它可以嵌入到不同任务和不同结构的模型中,并且发挥稳定的提升作用。而且glyve模型提取的字形向量在cmee和cmre任务中均能起到很好的语义信息补充,带来显著的性能提升。
    [0165]
    表4不同模型在cmre任务中的表现(%)
    [0166][0167]
    在图7中,我们比较了r-bert模型和r-bert glyve模型在22个关系类别的f1值,结果表明在所有类别中r-bert glyve模型均带来稳定的提升。而且当一个关系对应的头尾实体类型中存在较多字形特征显著的实体时,f1值的上升幅度也较大,如“成分”、“相互作用”、“原因”和“用药方法”等关系。而当一个关系对应的头尾实体类型中较多实体的字形特征不显著时,如“单次用药剂量”、“年龄”和“用药结果”等关系,glyve依旧能从中字形图片中提取和细化出有助于cmre任务的语义信息,使这些关系类别的f1值有小幅度的提升。结果表明glyve模型能将字形图片中提取的字形信息有效结合到cmre任务中,而且在字形信息不显著且语义信息不丰富的字符中,仍能从字形图片中提取和细化出有效的特征信息,表明了模型具有较强的泛化能力。
    [0168]
    3)消融实验
    [0169]
    我们证实了glyve模型和多任务学习方法的引入能给cmee和cmre任务带来显著的提升,为了探究其中起关键作用的组件,以及我们对dsf-cam模块的设计理念的正确性,我们设计了以下两组消融实验。其中no glyve表示不加glyve模型时初始模型的性能。
    [0170]
    在第一组消融实验中,我们对比了不同的多任务学习策略对模型性能的影响,包括:(1)本发明介绍的多任务学习策略joint-weighting,根据定义的初始因子和衰减因子
    对bert和glyve进行联合微调。(2)glyve-joint策略,在该训练策略中bert模型一开始不进行微调,在训练初期我们固定bert参数,只进行图片分类任务对glyve模型参数进行微调,然后再联合bert和glyve一起微调。(3)joint-average策略,直接对bert和glyve模型进行联合微调且设置相同的任务权重。(4)no multi-task策略,即去掉图片分类的辅助任务,不进行多任务学习。实验结果如表5所示。实验结果显示,joint-weighting的训练策略要明显优于其余三种,据我们分析,在训练的初始阶段,bert已经预训练,但glyve的参数在随机初始化的情况下提取的字形特征向量中有用的信息较少而干扰信息较多,在joint-average策略中的训练初期这些干扰信息会对bert模型产生较大的误导作用。而在no multi-task策略中,glyve模型未能从辅助任务中获取额外语义信息,参数拟合速度变慢,使得训练效果进一步变差。而在glyve-joint策略中,glyve模型在训练初期未能得到cmee和cmre任务的支持,会造成部分损失,但随着训练进行这部分损失能得到有效补充,并且在图片分类中能学习到较为充分的语义信息,因此对性能影响并不大。
    [0171]
    表5不同多任务学习策略对cmee和cmre任务的影响(%)
    [0172][0173]
    在第二组消融实验中,我们测试了dsf-cam,以及dsf-cam中空间流注意力模块和通道流注意力模块对模型性能的影响,我们用glyve表示本发明提出的模型,用glyve w/odsf-cam表示去掉dsf-cam模块后模型的性能。用glyve w/o channel-att和glyve w/ospatial-att表示dsf-cam模块在去掉通道流注意力模块和空间流注意力模块后glyve模型的性能。在去掉某个数据流的注意力模块后,dsf-cam的输出完全由另外的一个注意力模块的输出表示。同时,我们对比了用vanilla-cnn结构替换掉glyve模型后的结果,实验结果如表6所示。结果显示,dsf-cam模块的特征细化过程能大幅度地提升从字形图片中提取特征的能力,其中空间流注意力模块和通道流注意力模块均能独立地实现特征细化,并且在结合使用后性能提升更为显著。这是因为注意力机制的能够放大有效的像素特征,并抑制无效的像素特征,使得字形特征向量能够蕴含更有意义的语义信息。而vanilla-cnn的实验结果表明,传统的深层cnn结构并不适用于字形特征的提取。
    [0174]
    表6 glyve中不同模块结构对cmee和cmre任务的影响(%)
    [0175][0176]
    4)鲁棒性测试
    [0177]
    据统计,在cmee任务中,测试数据存在27.5%的oov实体。在表7中我们对比了加入glyve结构后的几个基线模型,以及基于医学实体标签的字形图片分类任务的引入对oov实体识别效果的提升,其中我们用“w/o multi-task”表示去掉多任务学习策略,用“wcharacter-reg”表示将基于医学实体标签的字形图片分类任务替换为图片文字识别任务,该任务将每张字形图片分类到其代表的字符的编号。结果表明,在缺乏充分的语义支撑的情况下,oov实体难以被准确的识别,bert模型的引入提供了充分的语义支撑,能显著提升了oov实体的识别效果。同时,在引入了glyve模块以及基于医学实体标签的字形图片分类任务后,bilstm-crf glyve和bert-bilstm-crf glyve模型在oov实体识别中的f1值比基线模型分别高出4.69%和5.78%。这表明了字形信息的引入起到了很大的语义补充作用,有助于准确地识别oov实体。其中基于医学实体标签的字形图片分类任务起到了关键作用,比起图片文字识别,该方法的引入能将字形图片与医学语义绑定,有助于模型学习和认知字形图片所属的医学标签。
    [0178]
    表7不同模型在cmee任务中oov实体的表现(%)
    [0179][0180][0181]
    本实施例还提供一种中文医药知识图谱自动化构建装置,包括:
    [0182]
    至少一个处理器;
    [0183]
    至少一个存储器,用于存储至少一个程序;
    [0184]
    当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上所述方法。
    [0185]
    本实施例的一种中文医药知识图谱自动化构建装置,可执行本发明方法实施例所提供的一种中文医药知识图谱自动化构建方法,可执行方法实施例的任意组合实施步骤,
    具备该方法相应的功能和有益效果。
    [0186]
    本实施例还提供了一种存储介质,存储有可执行本发明方法实施例所提供的一种中文医药知识图谱自动化构建方法的指令或程序,当运行该指令或程序时,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
    [0187]
    在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
    [0188]
    此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
    [0189]
    所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
    [0190]
    在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
    [0191]
    计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
    [0192]
    应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
    [0193]
    在本说明书的上述描述中,参考术语“一个实施方式/实施例”、“另一实施方式/实施例”或“某些实施方式/实施例”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
    [0194]
    尽管已经示出和描述了本发明的实施方式,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
    [0195]
    以上是对本发明的较佳实施进行了具体说明,但本发明并不限于上述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本技术权利要求所限定的范围内。
    转载请注明原文地址:https://tc.8miu.com/read-1180.html

    最新回复(0)