System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于医疗数据处理分类领域,尤其是涉及一种儿童医疗文本数据分类方法。
技术介绍
1、儿童医疗数据分类分级是根据医疗数据的特征、敏感性、价值等因素,将医疗数据划分为不同类别和等级,以便对医疗数据进行有效的管理。在医疗场景中医疗文本数据具有数据量庞大,数据异构繁杂,具有多层级类别的特点,将医疗数据划分为不同的类别,对于提高医疗数据的安全性,促进医疗数据的有效利用,实现医疗数据资产化都有重要意义。
2、多标签文本分类旨在从预定义的候选标签集合中选择一个或多个文本对应的类别,是自已语言处理的一项基础任务,层级的标签是以预定的层级结构存储,目前的多标签分类方法中仍存在结合多个模型对一个数据集进行训练和预测,在训练模型以及推理过程中标签排序时静态采样负样本,这种方法会消耗大量的计算资源,同时由于静态采样负样本使得模型在标签排序时只关注少量的负样本标签,使得模型难以收敛。
3、公开号为cn111403028a的中国专利文献公开了一种医疗文本方法及装置、储存介质,电子设备,根据医学特征属性针对待分类医疗文本的注意力值对待分类文本进行分类。
4、公开号为cn109471945a的中国专利文献公开一种基于深度学习的医疗文本分类方法、装置及存储介质,使用递归神经网络和双向注意力机制对医疗文本进行分类。
5、然而,在医疗场景中,分类体系庞大繁杂,公开号为cn111403028a的中国专利文献在计算医疗属性对分类医疗文本注意力值时会耗费大量资源和时间,无法快速准确得出分类结果,公开号为cn10947
技术实现思路
1、本专利技术提供了一种儿童医疗文本数据分类方法,可有效处理儿童医疗数据层级多标签文本分类问题,计算量小、运算速度快,大大提高了儿童医疗文本到标签的匹配效率。
2、一种儿童医疗文本数据分类方法,包括以下步骤:
3、(1)获取儿童医疗文本数据,标注得到层级多标签文本;
4、(2)将儿童医疗文本数据和层级多标签文本处理为医疗文本、正样本标签文本、负样本标签文本,得到三元组数据集;其中,每个正样本标签文本和每个负样本标签文本均包含父类标签文本以及对应的子类标签文本;
5、(3)构建三塔模型,所述的三塔模型包括三个编码器模块、一个标签召回模块和一个标签排序模块;
6、三个编码器模块共享权重,其中,第一编码器和第二编码器分别用于生成医疗文本和父类标签文本的特征向量;标签召回模块将医疗文本和父类标签文本的特征向量进行相似性度量,动态获取相似度最高的几个父类标签对应的子类正负标签文本,输入第三编码器后生成子类标签文本的特征向量;将第一编码器生成的医疗文本特征向量和第三编码器生成的子类标签文本特征向量一起输入标签排序模块,根据相似度值生成top-k标签文本作为预测输出;
7、(4)基于三元组数据集训练三塔模型;
8、(5)使用训练完的三塔模型,分别对层级多标签文本中的父类标签文本和子类标签文本进行处理,将处理得到的所有标签文本对应的特征向量保存至离线特征向量库中;
9、(6)针对待预测的儿童医疗文本,使用训练完的三塔模型进行处理,再结合离线特征向量库,预测获取相似度高于相似度阈值的top-k预测标签。
10、步骤(3)中,所述的编码器模块包括基于transformer的bert编码层、矩阵分解部分和池化层;
11、矩阵分解部分用于将bert编码层编码过程中的注意力矩阵分解为多个更小的矩阵;池化层的作用是将bert编码层的输出进行处理,得到一个固定大小的句子嵌入,即特征向量。
12、bert编码层的每一层均包含一个encoder单元,每个encoder单元由多头注意力机制模块、前馈层、跨层标准化层叠加构成;
13、多头注意力机制模块由多个自注意力机制模块组成,具体公式为:
14、
15、其中,q=wqx、k=wkx、v=wvx分别对应query、key、value,在自注意力机制中为输入x的自身的变换,dk是词向量的维度;
16、矩阵分解部分分别对query矩阵的行和key矩阵的列按照分布分数进行采样,从而分解为对应的子矩阵,具体公式如下:
17、ac=exp(q(kt)c)
18、ar=exp((q)rkt)
19、u=w+
20、其中,ac表示对key矩阵的列进行采样后的子矩阵,c表示对列进行采样,采样数量为k,矩阵ac维度为(k,n);ar表示对query矩阵的列进行采样后的子矩阵,r表示对行进行采样,采样数量为k,矩阵ar的维度为(k,n);中间矩阵为u=w+,其中w是由矩阵ac和矩阵ar相乘获得,w+是其伪逆矩阵;将分解query和key的获得的子矩阵ac、ar和中间矩阵u重构,以获取输出o=acuar。
21、步骤(3)中,标签召回模块包括第一相似度度量模块和动态样本采样模块;
22、其中,第一相似度度量模块分别接受来自第一编码器和第二编码器输出的医疗文本和父类标签文本的特征向量,并进行相似性度量;
23、根据得出的父类标签的相似度排行,动态获取相似度最高的几个父类标签对应的子类正负标签文本,将获取的子类正负标签文本作为第三编码器的输入。
24、步骤(3)中,标签排序模块包括第二相似性度量模块和分类器模块;
25、其中,第二相似性度量模块的结构与标签召回模块中的第一相似性度量模块的结构一致;第二相似性度量模块分别接受来自第一编码器和第三编码器输出的医疗文本和子类标签文本的特征向量,并进行相似性度量;选择相似度值高于相似度阈值的top-k标签文本作为预测输出。
26、步骤(4)中,训练三塔模型时,分别在标签召回模块和标签排序模块设置损失函数,公式如下:
27、loss=α·lossbinary+(1-α)·losstriplet
28、
29、losstriplet=max(d(a,p)-d(a,n)+margin)
30、其中,loss表示在区分父类标签样本和子类标签样本时设置的损失函数,α表示平衡二分类交叉熵损失的权重,lossbinary表示医疗文本与标签文本是否相似的的二分类交叉熵损失,y是二分类中两个样本对是否相似的真实值,是两个样本是否相似的预测值;losstriplet表示医疗文本、正样本标签文本、负样本标签文本之间的三元组损失,d(a,p)表示医疗文本与正样本标签文本的特征向量之间的距离,d(a,n)表示医疗文本与负样本标签文本的特征向量之间的距离,margin表示医疗文本和正标签文本以及负标签文本之间特征向量距离的差值。
31、步骤(5)的具体过程为:
32、利用编码器模块分别对所有的父类标签文本和子类文本标签进行处理,获取对应的特征向量库本文档来自技高网...
【技术保护点】
1.一种儿童医疗文本数据分类方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的儿童医疗文本数据分类方法,其特征在于,步骤(3)中,所述的编码器模块包括基于transformer的Bert编码层、矩阵分解部分和池化层;
3.根据权利要求2所述的儿童医疗文本数据分类方法,其特征在于,Bert编码层的每一层均包含一个encoder单元,每个encoder单元由多头注意力机制模块、前馈层、跨层标准化层叠加构成;
4.根据权利要求1所述的儿童医疗文本数据分类方法,其特征在于,步骤(3)中,标签召回模块包括第一相似度度量模块和动态样本采样模块;
5.根据权利要求4所述的儿童医疗文本数据分类方法,其特征在于,步骤(3)中,标签排序模块包括第二相似性度量模块和分类器模块;
6.根据权利要求1所述的儿童医疗文本数据分类方法,其特征在于,步骤(4)中,训练三塔模型时,分别在标签召回模块和标签排序模块设置损失函数,公式如下:
7.根据权利要求1所述的儿童医疗文本数据分类方法,其特征在于,步骤(5)的具体过程为:
...【技术特征摘要】
1.一种儿童医疗文本数据分类方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的儿童医疗文本数据分类方法,其特征在于,步骤(3)中,所述的编码器模块包括基于transformer的bert编码层、矩阵分解部分和池化层;
3.根据权利要求2所述的儿童医疗文本数据分类方法,其特征在于,bert编码层的每一层均包含一个encoder单元,每个encoder单元由多头注意力机制模块、前馈层、跨层标准化层叠加构成;
4.根据权利要求1所述的儿童医疗文本数据分类方法,其特征在于,步骤(3)中,标签召回模块包...
【专利技术属性】
技术研发人员:李竞,齐国强,俞刚,花明峰,姚文博,
申请(专利权)人:浙江大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。