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

一种医学文本词向量化方法与流程

2022-02-22 08:39:55 来源:中国专利 TAG:


1.本发明涉及面向自然语言处理的预训练领域,具体提供一种医学文本词向量化方法。


背景技术:

2.医疗健康大数据面向健康人群、患者、医生、医疗机构、政府和药企等为主体,以需求为导向,影响医疗行业的变革。医疗健康大数据促进医疗数据挖掘和知识发现的研究,不同数据源的异构数据量巨大。在医疗数据领域内,可以明显感到医疗数据集的特征为数据异构,即因为医疗检测手段的关系,数据图像化比例较高。但是也包含了一部分结构化数据,和大部分非结构化数据,因此医疗数据集市典型的非结构化数据和结构化数据并存的异构数据集。
3.所以现在需要对医疗数据进行整合,清洗及挖掘。医疗健康大数据研究涉及计算机科学,数据科学、系统工程、机械工程等学科,需要研究人员跨界合作,数据收集比较麻烦。


技术实现要素:

4.本发明是针对上述现有技术的不足,提供一种实用性强的医学文本词向量化方法。
5.本发明解决其技术问题所采用的技术方案是:
6.一种医学文本词向量化方法,通过对原始医学文本数据探查建立词库对后续的向量化做准备,然后通过glove模型进行医学数据词向量化;
7.所述原始医学文本分为结构化数据、半结构化数据和非结构化数据,所述结构化数据中有固定的填写要求数据,所述半结构化数据包含一部分电子病历数据,半结构化数据中有固定标识,固定标识中的内容可能空,所述非结构化数据也包含一部分电子病历数据,非结构化数据没有标识,根据知识去提取。
8.进一步的,在glove模型搭建中,统计共现矩阵,
9.a.设共现矩阵为x,其元素为xij,xij的意义为:在整个语料库中,单词ii和单词jj共同出现在一个窗口中的次数;
10.b.建立一个词汇频率为整个语料库,返回字典d-》(a,f),将字串映射为对单词id和单词语料库频率;
11.c.给定的语料库建立一个共现列表。
12.进一步的,在glove模型搭建中,模型的损失函数如下:
[0013][0014]
其中vi,vj,是单词i和单词j的词向量,bi,bj是两个偏差项,f是权重函数,n是词汇表的大小,共现矩阵维度为n*n。
[0015]
进一步的,glove模型的推导方式为两个条件概率的比值:
[0016][0017]
取得是矩阵i一行的和,如下条件概率表示k出现在单词i语境中的概率
[0018][0019]
由上述公式可知这三个单词的关联性跟概率是存在关系的,ratio这个指标跟jk的关联性成反比,跟ik的关联性成正比。
[0020]
进一步的,共现矩阵和词向量可以相同,那么有如下形式:
[0021][0022]
其中wi是单词向量wk是独立的上下文单词向量,
[0023]
首先我们希望f的信息在向量空间中以比例表示,最自然的方法是使用向量的差值,修改上述等式为:
[0024][0025]
接下来,上述式子中自变量为向量,等式右边为标量,所以需要把左边进行参数的点积:
[0026][0027]
由上式可得出:
[0028][0029]
对等式两边取对数可得:
[0030][0031]
这时把最右边的log(xi)与k无关,所以可以通过增加偏置让两边恢复对称性,最终得到等式如下:
[0032][0033]
再对上式进行加权最小二乘回归,将上式转换成最小二乘法问题得到最终损失函数如下:
[0034][0035]
其中函数f(x)应该满足如下要求:
[0036]
a.在0点时应为0且连续;
[0037]
b.函数不应是递减的;
[0038]
c.在x较大时f(x)应相对较小;
[0039]
最终选择:
[0040][0041]
进一步的,在glove模型搭建中,包括大段文本搭建、细项文本搭建、全局及详情共现矩阵搭建和矩阵向量化;
[0042]
大段文本搭建对大段文本进行分割,仅需将文本分成多条句子即可,分词方法为根据[$%&'()* ,
‑‑‑
。,;:......]等断句符切割,即t=[s1,s2,s3

sn],
[0043]
保留结果s在数据库中,用于之后计算词向量。
[0044]
进一步的,对以上[s1,s2,s3

sn]句子进行细项切割,在这部分需要用到中文停用词表对文本进行分割如下:
[0045]
s=[x1,x2,x3

xn]
[0046]
因为glove模型是根据全局信息去计算词向量,这样就会缺失部分上下文之间的关系,所以需要对s和t文本都进行共现矩阵的计算,并对t文本计算出的共现矩阵取:
[0047]
si=xsi=∑kxsik
[0048]
得出在计算s文本生成的xi时加入si如下:
[0049]
xi

si xi
[0050]
这样就能够保留部分上下文之间联系。
[0051]
进一步的,在全局及详情共现矩阵搭建中,
[0052]
每个分句无重复词:在分解t文本时对每个s文本打上标记c,使得之后的xi共现矩阵带着标记的用于si去计算相应的子项:
[0053]
t=[(s1,c1),(s2,c2),(s3,c3)

(sn,c4)]
[0054]
si=[(x1,ci),(x2,ci),(x3,ci)

(xn,ci)]
[0055]
存在重复词情况:在分解t文本时对每个s文本打上标记c,使得之后的xi共现矩阵带着标记的用于si去计算相应的子项,对于含有重复项的子项存储为cicj,乘以多个si
[0056]
t=[(s1,c1),(s2,c2),(s3,c3)

(sn,c4)]
[0057]
si=[(x1,cicj),(x2,ci),(x3,cicj)

(xn,ci)]
[0058]
进一步的,在矩阵向量化中,
[0059]
a.设置入参
[0060]
入参为共现矩阵t,语料库字典d,输出维度,迭代次数;
[0061]
共现矩阵t通过共现矩阵t通过全局及详情共现矩阵搭建中计算得出,固定窗口大小为10.语料库字典d通过建立一个词汇频率来计算,返回值为d-》(a,f),将句子映射为单词id和单词语料库频率,输出维度和迭代次数为固定值;
[0062]
b.构建矢量矩阵
[0063]
该矩阵为2v*d,其中v为语料库词汇量的大小,d为词向量的维数,在(-0.5,0.5)范围内随机初始化所有元素,为每个单词构建两个单词向量:一个单词作为主单词,一个单词作为上下文单词;
[0064]
c.构建偏差项:
[0065]
通过上述向量构建一个大小为2v的数组,值域为(0.5,0.5);
[0066]
d.梯度下降法:
[0067]
通过梯度下降法进行训练;
[0068]
e.输出向量矩阵
[0069]
如果输入的共现矩阵不为空,则提供的函数将为在每次迭代后调用已知的矩阵,再通过传参给损失函数,最终返回计算过的单词向量矩阵。
[0070]
本发明的一种医学文本词向量化方法和现有技术相比,具有以下突出的有益效果:
[0071]
本发明实用了全局信息及局部信息提取,对文本的向量化提供了多种选择,随着语料库规模增大,其性能单调增长。glove时一个全局对数双线性回归模型,用于无监督学习的单词表示,它优于其他模型在单词类比,单词相似性,和命名实体识别任务。
附图说明
[0072]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0073]
附图1是一种医学文本词向量化方法的流程示意图;
[0074]
附图2是一种医学文本词向量化方法中原始文本拆分流程图;
[0075]
附图3是一种医学文本词向量化方法中共现矩阵测试结果图;
[0076]
附图4是一种医学文本词向量化方法中词向量训练结果图。
具体实施方式
[0077]
为了使本技术领域的人员更好的理解本发明的方案,下面结合具体的实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例都属于本发明保护的范围。
[0078]
下面给出一个最佳实施例:
[0079]
如图1-4所示,本实施例中的一种医学文本词向量化方法,通过对原始医学文本数据探查建立词库对后续的向量化做准备,然后通过glove模型进行医学数据词向量化。
[0080]
医学文本中分为结构化数据、半结构化数据、非结构化数据。其中,结构化数据大都是医院系统设计中有固定的填写要求的数据,例如门诊就诊数据,患者个人信息数据,疾病诊断信息数据。半结构化数据中包含一部分电子病历数据,这些数据有固定标识,但是标识中的内容可能为空。还有一部分医院的电子病例数据为非结构化数据,这部分数据没有标识,需要根据知识去提取。
[0081]
在glove模型搭建中,统计共现矩阵:
[0082]
a.设共现矩阵为x,其元素为xij。xij的意义为:在整个语料库中,单词ii和单词jj共同出现在一个窗口中的次数。
[0083]
b.建立一个词汇频率为整个语料库。返回字典d-》(a,f),将字串映射为对单词id和单词语料库频率。
[0084]
c.给定的语料库建立一个共现列表。
[0085]
模型的损失函数如下
[0086][0087]
其中vi,vj,是单词i和单词j的词向量,bi,bj是两个偏差项,f是权重函数(具体函数公式及功能下一节介绍),n是词汇表的大小(共现矩阵维度为n*n)。
[0088]
这个模型的推导方式为两个条件概率的比值
[0089][0090]
取得是矩阵i一行的和,如下条件概率表示k出现在单词i语境中的概率
[0091][0092]
由上述公式可知这三个单词的关联性跟概率是存在关系的。ratio这个指标跟jk的关联性成反比,跟ik的关联性成正比。
[0093]
假设我们已经有词向量,并且用同样的方式计算ratio这个指标,能得到童谣的规律的话,证明词向量跟共现矩阵有很好的一致性,也就是说明词向量蕴含了共现矩阵所蕴含的信息。假设这两个指标可以相同,那么有如下形式:
[0094][0095]
其中wi是单词向量wk是独立的上下文单词向量:
[0096]
首先我们希望f的信息在向量空间中以比例表示,最自然的方法是使用向量的差值,修改上述等式为:
[0097][0098]
接下来,上述式子中自变量为向量,等式右边为标量。所以需要把左边进行参数的点积
[0099][0100]
由上式可得出:
[0101][0102]
对等式两边取对数可得
[0103][0104]
这时把最右边的log(xi)与k无关,所以可以通过增加偏置让两边恢复对称性。最终得到等式如下
[0105][0106]
再对上式进行加权最小二乘回归,将上式转换成最小二乘法问题得到最终损失函数如下:
[0107][0108]
其中函数f(x)应该满足如下要求:
[0109]
a.在0点时应为0且连续
[0110]
b.函数不应是递减的
[0111]
c.在x较大时f(x)应相对较小
[0112]
最终选择:
[0113][0114]
首先,进行大段文本搭建,对含有的大段文本进行第一步分割,在这部分只需要将文本分成多条句子不需要再精细化区分。分词方法为根据[$%&'()* ,
‑‑‑
。,;:......]等断句符切割。此时电子病历文本如下所示:
[0115]
t=[s1,s2,s3

sn]
[0116]
保留结果s在数据库中,用于之后计算词向量。
[0117]
然后,进行西项文本:
[0118]
对以上[s1,s2,s3

sn]句子进行细项切割,在这部分需要用到中文停用词表对文本进行分割如下:
[0119]
s=[x1,x2,x3

xn]
[0120]
因为glove模型是根据全局信息去计算词向量,这样就会缺失部分上下文之间的关系。所以需要对s和t文本都进行共现矩阵的计算,并对t文本计算出的共现矩阵取:
[0121]
si=xsi=∑kxsik
[0122]
得出在计算s文本生成的xi时加入si如下:
[0123]
xi

si xi
[0124]
这样就可以保留部分上下文之间联系。
[0125]
全局及详情共线矩阵搭建:
[0126]
每个分句无重复词:在分解t文本时对每个s文本打上标记c,使得之后的xi共现矩阵带着标记的用于si去计算相应的子项。
[0127]
t=[(s1,c1),(s2,c2),(s3,c3)

(sn,c4)]
[0128]
si=[(x1,ci),(x2,ci),(x3,ci)

(xn,ci)]
[0129]
存在重复词情况:在分解t文本时对每个s文本打上标记c,使得之后的xi共现矩阵
带着标记的用于si去计算相应的子项,对于含有重复项的子项存储为cicj,乘以多个si:
[0130]
t=[(s1,c1),(s2,c2),(s3,c3)

(sn,c4)]
[0131]
si=[(x1,cicj),(x2,ci),(x3,cicj)

(xn,ci)]
[0132]
矩阵向量化:
[0133]
a.设置入参
[0134]
入参为共现矩阵t,语料库字典d,输出维度,迭代次数。
[0135]
共现矩阵t通过步骤3计算得出,固定窗口大小为10.语料库字典d通过建立一个词汇频率来计算,返回值为d-》(a,f),将句子映射为单词id和单词语料库频率。输出维度和迭代次数为固定值。
[0136]
b.构建矢量矩阵
[0137]
该矩阵为(2v)*d,其中v为语料库词汇量的大小,d为词向量的维数。在(-0.5,0.5)范围内随机初始化所有元素。我们为每个单词构建两个单词向量:一个单词作为主(中心)单词,一个单词作为上下文单词。
[0138]
c.构建偏差项:
[0139]
通过上述向量构建一个大小为2v的数组,值域为(0.5,0.5)。
[0140]
d.梯度下降法:
[0141]
通过梯度下降法进行训练。
[0142]
e.输出向量矩阵:
[0143]
如果输入的共现矩阵不为空,则提供的函数将为在每次迭代后调用已知的矩阵。再通过传参给损失函数,最终返回计算过的单词向量矩阵。
[0144]
例如:
[0145]
共现矩阵测试,窗口大小为10、输出维度为10、迭代次数为500。
[0146]
原句:
[0147]
平素健康状况健康状况较差有无传染病病史否认传染病名称肝炎病史。
[0148]
词汇频率:
[0149]
{'健康':(0,1),'状况':(1,1),'健康状况':(2,1),'较差':(3,1),'有无':(4,1),'传染病':(5,2),'病史':(6,2),'否认':(7,1),'名称':(8,1),'肝炎':(9,1)}
[0150]
上述具体的实施方式仅是本发明具体的个案,本发明的专利保护范围包括但不限于上述具体的实施方式,任何符合本发明的一种医学文本词向量化方法权利要求书的且任何所述技术领域普通技术人员对其做出的适当变化或者替换,皆应落入本发明的专利保护范围。
[0151]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
再多了解一些

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

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

相关文献