基于权重调整的疾病名称匹配方法及系统
文献发布时间:2023-06-19 11:27:38
技术领域
本发明涉及疾病名称匹配技术领域,特别是涉及基于权重调整的疾病名称匹配方法及系统。
背景技术
本部分的陈述仅仅是提到了与本发明相关的背景技术,并不必然构成现有技术。
健康医疗领域中的数据集成是一个重要研究方向,其目的是将不同来源、不同模式以及存在语义冲突的数据在逻辑上和物理上进行有效的集中,从而为后续的数据分析和挖掘提供全面的数据共享。数据集成现在面临的最突出的问题是医疗实体名称和代码的不一致。
发明内容
为了解决现有技术的不足,本发明提供了基于权重调整的疾病名称匹配方法及系统;提高疾病名称匹配的匹配精度和运算速度。
第一方面,本发明提供了基于权重调整的疾病名称匹配方法;
基于权重调整的疾病名称匹配方法,包括:
获取若干个待匹配的疾病名称;
对所述若干个待匹配的疾病名称进行预处理;
对预处理后的疾病名称进行分词处理;
将分词处理后的待匹配的疾病名称进行权重配置后,输入到向量转换模型中,输出待匹配向量;
计算待匹配向量与预先构建词典中每个疾病名称的向量之间的余弦相似度,将相似度最高的词向量对应的疾病名称,作为待匹配疾病名称的最佳匹配结果输出。
第二方面,本发明提供了基于权重调整的疾病名称匹配系统;
基于权重调整的疾病名称匹配系统,包括:
获取模块,其被配置为:获取若干个待匹配的疾病名称;
预处理模块,其被配置为:对所述若干个待匹配的疾病名称进行预处理;
分词处理模块,其被配置为:对预处理后的疾病名称进行分词处理;
向量转换模块,其被配置为:将分词处理后的待匹配的疾病名称进行权重配置后,输入到向量转换模型中,输出待匹配向量;
输出模块,其被配置为:计算待匹配向量与预先构建词典中每个疾病名称的向量之间的余弦相似度,将相似度最高的词向量对应的疾病名称,作为待匹配疾病名称的最佳匹配结果输出。
第三方面,本发明还提供了一种电子设备,包括:一个或多个处理器、一个或多个存储器、以及一个或多个计算机程序;其中,处理器与存储器连接,上述一个或多个计算机程序被存储在存储器中,当电子设备运行时,该处理器执行该存储器存储的一个或多个计算机程序,以使电子设备执行上述第一方面所述的方法。
第四方面,本发明还提供了一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成第一方面所述的方法。
与现有技术相比,本发明的有益效果是:
本发明的创新点在于对分词后的结果进行权重赋值,将权重赋值后的名称应用于疾病名称的匹配问题,通过建立健康医疗领域词典,将不同的疾病名称匹配至ICD10中的疾病名称。
本发明是在医疗领域利用病人的疾病名称经专家知识分词,分成修饰性词汇、重要人体部位和核心疾病后,对重要词汇(核心疾病)设置较大权重的方式以进行疾病名称匹配的。
相较于匹配准确率为60%的传统模型,本模型可以提高疾病名称的匹配准确率至76%。本发明有助于医疗机构合理安排医疗资源;有助于规范和推动健康医疗大数据的数据集成和数据融合。
本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
图1为第一个实施例的方法流程图;
图2为第一个实施例的各类词汇在疾病名称匹配结果中的贡献程度。
具体实施方式
应该指出,以下详细说明都是示例性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
技术术语介绍:
TF-IDF:TF-IDF是一种用于信息检索与数据挖掘的常用加权技术。其中TF指的是词频(Term Frequency),IDF是逆文本频率指数(Inverse Document Frequency)。它是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF加权的各种形式常被搜索引擎应用,作为文件与用户查询之间相关程度的度量或评级。
Jieba:Jieba分词是一种常用的中文分词方法,主要是基于统计词典,构造一个前缀词典;然后利用前缀词典对输入句子进行切分,得到所有的切分可能,根据切分位置,构造一个有向无环图;通过动态规划算法,计算得到最大概率路径,从而得到最终的切分形式。
本发明在对病人的疾病名称匹配中,利用病人的疾病信息,设计基于权重调整的TF-IDF模型对病人的疾病名称进行匹配。
实施例一
本实施例提供了基于权重调整的疾病名称匹配方法;
如图1所示,基于权重调整的疾病名称匹配方法,包括:
S101:获取若干个待匹配的疾病名称;
S102:对所述若干个待匹配的疾病名称进行预处理;
S103:对预处理后的疾病名称进行分词处理;
S104:将分词处理后的待匹配的疾病名称进行权重配置后,输入到向量转换模型中,输出待匹配向量;
S105:计算待匹配向量与预先构建词典中每个疾病名称的向量之间的余弦相似度,将相似度最高的词向量对应的疾病名称,作为待匹配疾病名称的最佳匹配结果输出。
示例性的,所述S101:获取若干个待匹配的疾病名称;具体步骤包括:
获取某地区多家综合医院的病人的疾病信息,所述的疾病信息主要包括病人就诊记录信息中的患病数据。
作为一个或多个实施例,所述S102:对所述若干个待匹配的疾病名称进行预处理;具体步骤包括:
S1021:对所述病人就诊信息进行消密处理,得到去除敏感信息的数据;
S1022:对去除敏感信息的数据,进行缺失值删除处理;
S1023:对缺失值处理后的数据,与ICD10的疾病名称进行完全匹配,并对完全匹配的疾病名称进行删除,得到未完全匹配的疾病名称。
示例性的,S1021:对所述若干个待匹配的疾病名称进行消密处理,得到去除敏感信息的数据;具体步骤包括:
采用MD5算法将病人编号、姓名信息进行消密;
将病人真实的编号和姓名作为MD5算法的输入,算法输出即为没有任何意义的字符串,满足消密的需求。
应理解的,提取要进行疾病匹配的病人历史数据,由于数据集存在数据冗余、数据缺失和数据不一致的问题,利用数据清洗技术解决上述问题。
为防止使用病人数据时造成敏感信息泄露,需要将敏感数据如身份证号信息、姓名、家庭住址等信息进行消密处理,处理成没有意义的字符串;同时由于获取到的数据中存在数据缺失的现象,并且这些缺失数据是不能被填充的,所以要对缺失率高于设定阈值的数据进行删除。
依据国际疾病分类标准编码ICD10,将病人疾病信息中可以直接与ICD10中的疾病名称完全匹配的疾病剔除,比如疾病“硬膜外脓肿”,能够完全对应于ICD10的“硬膜外脓肿(G06.201)”;着重关注不能与ICD10中的疾病完全匹配的疾病信息,比如疾病“进行性肌营养不良症”,在ICD10中没有完全匹配的疾病名称,但是有疾病“肌营养不良(G71.001)”和疾病“进行性(遗传性)肌营养不良(G71.003)”,本发明期望通过模型对疾病名称进行匹配。
作为一个或多个实施例,所述S103:对预处理后的疾病名称进行分词处理;具体步骤包括:
将预处理后的疾病名称分成修饰性词汇、重要人体部位词汇和核心疾病词汇三类。
其中,修饰性词汇,是指,例如包括:急性、化脓性;
疾病名称修饰性词汇:用于描述疾病的程度、性质、状态和特征的词汇。比如疾病名称“急性酒精中毒”中的“急性”,“重度妊娠高血压综合征”中的“重度”,“先天性下肢动静脉瘘”中的“先天性”即为修饰性词汇。
其中,重要人体部位词汇,是指:例如包括:扁桃体、胰腺、胃;
人体重要部位:出现在ICD10中的人体部位,即为人体重要部位。比如疾病名称“先天性下肢动静脉瘘”中的“下肢”,“胃血管畸形”中的“胃”即为人体重要部位。
其中,核心疾病词汇,是指:例如包括:
核心疾病词汇:表示ICD10中除去修饰性词汇和人体重要部位的疾病名称,即为核心疾病词汇。比如疾病名称“妄想型精神分裂性精神病”中的“精神病”,“肋骨开放性骨折”中的“骨折”即为核心疾病词汇。
作为一个或多个实施例,所述S104:将分词处理后的待匹配的疾病名称进行权重配置后,输入到向量转换模型中,输出待匹配向量;具体步骤包括:
将分词处理后的待匹配的疾病名称进行权重配置后,输入到Word2vec算法中,输出待匹配向量。
Word2vec可以将所有的词向量化,向量化以后,就可以定量的去度量词与词之间的关系,挖掘词之间的联系。
S1041:对修饰性词汇赋予的权重值为0.2;对重要人体部位赋予的权重值为0.3;对核心疾病赋予的权重值为0.5;
S1042:将权重配置后的待匹配的疾病名称,输入到word2vec中,进行向量转化,输出待匹配的向量。
作为一个或多个实施例,所述预先构建词典;具体构建步骤包括:
S105a1:对ICD10疾病名称,进行分词处理,分词后得到若干个单个词汇;
S105a2:将所有的单个词汇和每个词汇对应的ICD10疾病名称,放入一个词袋中,整个词袋即为词典。
示例性的,首先通过Jieba中文分词对ICD10疾病名称进行分词。比如“急性化脓性扁桃体炎”可以分词为“急性”、“化脓性”和“扁桃体炎”。构建停用词表,通过停用词性(包括标点符号、连词、助词、副词、介词、数词、方位词、代词等)将ICD10里的疾病名称进行分词构造词典。疾病名称分词后形成单个词,将所有词放入一个词袋中,没有先后顺序、没有语义,整个词袋即为词典。
作为一个或多个实施例,所述预先构建词典中每个疾病名称的向量;具体获取步骤包括:
S105b1:对归属于同一个疾病名称对应的所有分词结果进行权重赋值;对修饰性词汇赋予的权重值为0.2;对重要人体部位词汇赋予的权重值为0.3;对核心疾病词汇赋予的权重值为0.5;
S105b2:重复S105b1,实现对ICD10疾病名称中的每一个疾病名称对应的分词结果进行权重赋值;
S105b3:将赋予权重后的每个ICD10疾病名称,通过word2vec进行向量转换,输出预先构建词典中每个疾病名称的向量。
传统的TF-IDF模型是通过词汇在文本中出现的频率设置权重,出现频率高的词汇,就赋予较大权重。在疾病名称匹配过程中,采用这种方式匹配会导致“外伤性胰腺炎”匹配至“胰腺脓肿”、“胃间质细胞瘤”匹配至“胃体恶性肿瘤”等结果,数据集中约有40%的疾病名称存在上述不能进行正确匹配的情况。由上述实例可知,在医疗领域通过词汇在文本中出现的频率这种权重设置方法是不恰当的。
本发明在进行疾病匹配时,对TF-IDF模型进行了权重调整,不是根据词频而是根据医学知识将分词后的词汇分成“修饰性词”、“重要人体部位”、“核心疾病”三类,再根据词汇类别不同设置不同权重。
通过实验,对各类词汇在疾病名称匹配结果中的贡献程度进行统计(即统计各类词汇在疾病名称匹配结果所占比例),统计结果如图2所示。
据此将“修饰性词”、“重要人体部位”、“核心疾病”的权重分别设置为0.2、0.3和0.5,通过这种权重设置的方式使疾病匹配的效果更佳。
然后将分词后的待匹配疾病名称转换成向量,再和词典中的分词进行余弦相似度匹配的计算,用构造的词典把每一个未匹配到ICD10里的疾病映射到向量空间。将疾病名称向量化,并且对疾病名称中分词赋予权重,计算该疾病名称与词典中各个词的相似度,最终找到最佳匹配结果。
实施例二
本实施例提供了基于权重调整的疾病名称匹配系统;
基于权重调整的疾病名称匹配系统,包括:
获取模块,其被配置为:获取若干个待匹配的疾病名称;
预处理模块,其被配置为:对所述若干个待匹配的疾病名称进行预处理;
分词处理模块,其被配置为:对预处理后的疾病名称进行分词处理;
向量转换模块,其被配置为:将分词处理后的待匹配的疾病名称进行权重配置后,输入到向量转换模型中,输出待匹配向量;
输出模块,其被配置为:计算待匹配向量与预先构建词典中每个疾病名称的向量之间的余弦相似度,将相似度最高的词向量对应的疾病名称,作为待匹配疾病名称的最佳匹配结果输出。
此处需要说明的是,上述获取模块、预处理模块、分词处理模块、向量转换模块和输出模块对应于实施例一中的步骤S101至S105,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为系统的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
上述实施例中对各个实施例的描述各有侧重,某个实施例中没有详述的部分可以参见其他实施例的相关描述。
所提出的系统,可以通过其他的方式实现。例如以上所描述的系统实施例仅仅是示意性的,例如上述模块的划分,仅仅为一种逻辑功能划分,实际实现时,可以有另外的划分方式,例如多个模块可以结合或者可以集成到另外一个系统,或一些特征可以忽略,或不执行。
实施例三
本实施例还提供了一种电子设备,包括:一个或多个处理器、一个或多个存储器、以及一个或多个计算机程序;其中,处理器与存储器连接,上述一个或多个计算机程序被存储在存储器中,当电子设备运行时,该处理器执行该存储器存储的一个或多个计算机程序,以使电子设备执行上述实施例一所述的方法。
应理解,本实施例中,处理器可以是中央处理单元CPU,处理器还可以是其他通用处理器、数字信号处理器DSP、专用集成电路ASIC,现成可编程门阵列FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据、存储器的一部分还可以包括非易失性随机存储器。例如,存储器还可以存储设备类型的信息。
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。
实施例一中的方法可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器、闪存、只读存储器、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
本领域普通技术人员可以意识到,结合本实施例描述的各示例的单元及算法步骤,能够以电子硬件或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
实施例四
本实施例还提供了一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成实施例一所述的方法。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
- 基于权重调整的疾病名称匹配方法及系统
- 一种基于模块化分解与匹配的发电机组参数名称匹配方法