医疗数据预处理方法及系统与流程
未命名
09-13
阅读:91
评论:0

1.本发明属于数据处理技术领域,具体涉及一种医疗数据预处理方法及系统。
背景技术:
2.随着人工智能技术的发展,尤其是通用人工智能的技术突破,人们开始使用医疗人工智能模型来分析、处理医疗数据,并为病人提供进行智能问诊服务,为药厂提供药物作用机理的自动分析,为保险公司提供针对不同病人的理赔机器人等等。然而,现在的医疗人工智能模型的训练需要消耗大量的时间和资源,因为:1.医疗数据中包含很多录入错误,包括医疗文本数据中的文字输入错误(比如:“患者有糖尿病的病史,曾经治疗过高血液”中,“高血压”被错误地录入成了“高血液”),数据格式的不统一(比如:手术日期被记载为了“2000年1月1号”,“2000.01.01”,“01/01/2020”等多种格式)等等。传统的计算机算法对于此种类型的处理效果很差,因此需要统计分析师针对可能出现的错误进行分析、修正,并对每次医疗数据中出现的新错误类型手动设计规则进行修改。这需要大量的人力资源以及时间资源,拖慢了项目开展以及推进的效率。
3.2.医疗数据包含大量的专业数据,并且不同医疗应用项目所需的训练数据在格式上差别很大(比如针对医疗关键词提取的模型需要“医学名词+类型”的标签,病情判断则需要“病情描述+阴性/阳性”的标签),因此这些数据不能直接被大语言模型(large language model)用于训练,而是需要进行手工分隔和医学标签标注,并且针对医疗项目的标签工作往往还需要一定的医学知识才可以进行,因而相较于一般的ai项目更难招募到合格的数据预处理人员。
4.3.在整个项目周期,数据标签所需的人力前后差别很大,因而很难合理进行人员分配。在ai模型训练前期,需要对大量的医学数据打标签,因此需要分配大量人力。但在项目后期,则以微调数据标签为主,只需要少量人力。
5.4.由于医疗数据的数据量过大,且需要医学专业知识,因而在进行人工数据预处理时,考虑到专业知识掌握程度不同以及人力工作的状态,人工进行数据标签很难避免处理错误或者处理质量偏低的情况,而这些都会影响到最终医疗ai模型的质量。
技术实现要素:
6.本发明旨在至少在一定程度上解决上述技术问题。为此,本发明目的在于提供一种医疗数据预处理方法及系统。
7.本发明所采用的技术方案为:一种医疗数据预处理方法,包括步骤:s1、去除医疗数据中的无关符号,对医疗数据中的文本数据进行纠错更正;s2、将文本数据通过多个医疗分词器切分成不同的字段得到分词结果,将分词结果输入次级分词器得到最终分词结果;
s3、构建医疗知识图谱,基于医疗知识图谱对最终分词结果中的医学字段打上标签,得到部分标签化的医疗数据;s4、基于群体智能对部分标签化的医疗数据中未被打标签的字段进行标注,得到完全标签化的医疗数据。
8.优选地,所述步骤s4包括:s41、将部分标签化的医疗数据中未被打标签的字段打乱,打包分发进行人工标注;s42、获取人工标注后的标签结果,对标签结果进行校正,去除标签结果中低质量的标签。
9.优选地,对标签结果进行校正通过以下方式实现:进行组内竞争,对处理同一条数据的组内员工进行投票,多者获胜,败者视为错误,随着时间的积累,统计每个员工的工作准确度,并根据每个员工的可靠性,对其标签结果进行加权投票;或,使用标签校正模型与原有的标签进行对比,将错误率过高的标签去除;或,设置多个次级分词器,使用次级分词器得到标签结果,将每个多个次级分词器所占的权重作为高级深度学习模型的可训练参数,利用已有的结果对高级深度学习模型进行训练,并与有的标签进行对比,将错误率过高的标签去除;或,使用无监督训练模型令在同一类的数据在进行标签处理时保持一致,将错误率过高的标签去除。
10.优选地,所述步骤s4包括步骤s43:使用校正后的标签结果重新训练标签校正模型、高级深度学习模型和无监督训练模型。
11.优选地,所述次级分词器由医疗分词模型进行分词得到的分词结果训练得到。
12.优选地,所述步骤s3还包括:对医疗数据中的标点符号打上分隔符标签。
13.优选地,所述步骤s1之前还包括步骤s0:将外文的医疗数据的翻译为中文的医疗数据。
14.一种医疗数据预处理系统,包括:数据清理模块,用于去除医疗数据中的无关符号,并对医疗数据中的文本数据进行纠错更正;分词模块,用于将文本数据通过多个医疗分词器切分成不同的字段得到分词结果,并将分词结果输入次级分词器得到最终分词结果;标签生成模块,用于构建医疗知识图谱,基于医疗知识图谱对最终分词结果中的医学字段打上标签,得到部分标签化的医疗数据;群体智能模块,用于对标签生成模块得到的医疗数据中未被打标签的字段进行标注,得到完全标签化的医疗数据。
15.优选地,所述群体智能模块用于将部分标签化的医疗数据中未被打标签的字段打乱,打包分发进行人工标注;获取人工标注后的标签结果,对标签结果进行校正,去除标签结果中低质量的标签。
16.优选地,对标签结果进行校正通过以下方式实现:进行组内竞争,对处理同一条数据的组内员工进行投票,多者获胜,败者视为错
误,随着时间的积累,统计每个员工的工作准确度,并根据每个员工的可靠性,对其标签结果进行加权投票;或,使用标签校正模型与原有的标签进行对比,将错误率过高的标签去除;或,设置多个次级分词器,使用次级分词器得到标签结果,将每个多个次级分词器所占的权重作为高级深度学习模型的可训练参数,利用已有的结果对高级深度学习模型进行训练,并与有的标签进行对比,将错误率过高的标签去除;或,使用无监督训练模型令在同一类的数据在进行标签处理时保持一致,将错误率过高的标签去除。
17.本发明的有益效果为:本发明所提供的医疗数据预处理方法,可以自动完成数据翻译、数据清理、自动拼写检查等简单任务,同时利用医疗知识图谱对进行半自动化打标签任务,可以自动化完成近50%的数据打标签工作;可以降低了劣质样本占比,解决跨国家、跨语言进行标签工作的难题,处理医疗数据记录中的错误录入,将医疗数据的预处理时间缩减超过70%;使用集成学习完成医疗数据的分词任务,可以充分利用现有的开源医疗分词模型,同时又通过训练次级分词器来保证最终的分词准确度;使用医疗知识图谱对医疗数据进行半自动化打标签工作,可以自动对近50%的数据完成打标签工作,降低人工打标签的工作量;使用群体智能模型进行医学数据的最终打标签工作,充分考虑了人与人之间的差异以及数据本身的结构性质,使得在没有新的人力资源投入下可以提升标签工作的最终结果,这对于最终的深度学习模型训练至关重要(数量中等但质量高的标签比数量大但质量差的标签训练出来的结果更好)。
附图说明
18.图1是本发明医疗数据预处理方法的流程图。
19.图2是本发明步骤s2的流程图。
20.图3是本发明基于投票的群体智能的示意图。
21.图4是本发明基于投票和员工可靠性的群体智能的示意图。
22.图5是本发明基于任务特征的群体智能的示意图。
具体实施方式
23.下面将结合本发明中的附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.应当理解,还应当注意到实施例中,所出现的功能/动作可能与附图出现的顺序不同。例如,取决于所涉及的功能/动作,实际上可以实质上并发地执行,或者有时可以以相反的顺序来执行连续示出的两个图。
25.如图1至图5所示,本实施例的一种医疗数据预处理方法,包括以下步骤:s0、获取医疗数据,若医疗数据是外文(比如英语),则使用翻译程序将外文的医疗
数据的翻译为中文的医疗数据;翻译后的医疗数据进行文本数据和非文本数据。
26.s1、数据清理,去除医疗数据中的无关符号(比如“1a)”和空白字符等),此外,针对文本数据中的错误录入的问题,使用自动纠错模型对文本数据进行自动拼写检查,纠错更正。
27.s2、使用集成学习(ensemble learning)的叠加泛化技术(stacking)将文本数据通过多个医疗分词器切分成不同的字段得到分词结果,将分词结果输入次级分词器得到最终分词结果。
28.切分的每个字段应保证医学名词的完整性。比如原始数据为“病人主要症状为头痛和恶心,诊断为偏头痛。建议在发作时服用阿司匹林”,那这句话应被切分为:“病人,主要症状,为,头痛,和,恶心,诊断,为,偏头痛,建议,在,发作,时,服用,阿司匹林”。综合利用多个医疗分词器可以更准确地完成最终的分词工作。
29.具体的,如图2所示,将中文的训练数据输入到现有的四个医疗分词器(jieba分词器、bastructbert中文词性标注器、nestedner中文医疗名词识别器和raner中文医疗名词识别器)中,分别得到对应的分词结果。上述四个医疗分词器是目前被广泛使用的开源医疗分词模型,可以对医疗数据进行较好的分词,但依然会有错误分词的情况;将四个医疗分词器的输出当作新的输入,训练一个次级分词器,次级分词器包括已训练的深度学习模型(比如bert-lstm-crf模型,struct-lstm-crf模型等)和经典计算机模型(正则表达式等)等,并得到最终分词结果。使用集成学习,在多个开源医疗分词模型的基础之上训练次级分词器,可以在利用现有模型的基础之上保证最终的准确度。训练次级分词器时,对训练数据的结果进行手工标注,从而进一步保证次级分词器的准确度。
30.s3、构建医疗知识图谱,基于医疗知识图谱对最终分词结果中的医学字段打上标签,比如在上述原始数据的例子中,自动打出如表1所示的标签:表1 医学字段标签医学字段标签头痛symptom恶心symptom偏头痛disease阿司匹林medicine同时,对医疗数据中的标点符号打上分隔符(sep)标签。
31.经过上述步骤处理后,医疗数据被切分成了不同字段,同时一些医学字段被打上了对应标签,得到部分标签化的医疗数据,如表2所示:表2 部分标签化的医疗数据字段标签病人主要症状为头痛symptom和恶心symptom
,sep诊断为偏头痛disease。sep建议在发作时服用阿司匹林medicine。seps4、基于群体智能对部分标签化的医疗数据中未被打标签的字段进行标注,得到完全标签化的医疗数据。利用群体智能模型,在没有新的人力资源投入的前提下提升了整体模型的精度。
32.随着人工智能的推广,深度学习对于数据量的需求越来越大,因此凭少数人进行标签工作的工作模型已经不适合目前项目规模,但是考虑到标签工作在项目前期以及后期的工作量极其不平衡,通过雇佣大量的人工进行标签工作无疑是对人力资源的极大浪费。本发明借鉴知识图谱的构建方式,维基百科、百度百科这类百科网站均是利用全人类的智慧进行知识灌输,并设置监察对输入的知识进行校验,从而训练自己的知识图谱模型。因此在进行打标签工作时发动群体智慧的力量,将标签工作化整为零,加快标签工作的推进速度,并使用已有深度学习模型,经典计算机模型以及无监督训练模型对打好的标签进行判断,步骤s4具体包括:s41、将部分标签化的医疗数据中未被打标签的字段打乱,打包分发给标签工作人员(员工)进行人工标注。
33.s42、回收标签,获取人工标注后的标签结果,对标签结果进行校正,去除标签结果中低质量(即标签质量较差)的标签。
34.步骤s42中对标签结果进行校正通过以下四种方式中的一种或多种来实现:1、进行组内竞争,对处理同一条数据的组内员工进行投票,多者获胜,败者视为错误,具体如图3所示。随着时间的积累,统计每个员工的工作准确度,并根据每个员工的可靠性,对其标签结果进行加权投票,具体如图4所示;2、使用已有的标签校正模型,与原有的标签进行对比,将错误率过高的标签去除;3、设置多个如步骤s2中的次级分词器,使用次级分词器得到标签结果,将每个多个次级分词器所占的权重作为高级深度学习模型的可训练参数,利用已有的结果对高级深度学习模型进行训练,并与有的标签进行对比,将错误率过高的标签去除;4、考虑原有数据结构的性质,进行无监督学习聚类,例如对两个句子包含的单词进行分析,如果包含单词的相似度较高并且语义类似则说明这两个句子的标签应该相同或者相似,使用无监督训练模型令在同一类的数据在进行标签处理时保持一致,将错误率过高的标签去除,如图5所示。
35.s43:使用校正后的标签结果重新训练标签校正模型、高级深度学习模型和无监督训练模型。
36.本实施例还提供一种医疗数据预处理系统,基于上述的医疗数据预处理方法,包括:翻译模块,翻译模块用于将外文的医疗数据的翻译为中文的医疗数据;数据清理模块,用于去除医疗数据中的无关符号,并对医疗数据中的文本数据进行纠错更正;数据清理模块包括自动纠错模型,数据清理模块用于文本数据进行纠错更正;分词模块,用于将文本数据通过多个医疗分词器切分成不同的字段得到分词结果,并将分词结果输入次级分词器得到最终分词结果;标签生成模块,用于构建医疗知识图谱,基于医疗知识图谱对最终分词结果中的医学字段打上标签,得到部分标签化的医疗数据;群体智能模块,用于对标签生成模块得到的医疗数据中未被打标签的字段进行标注,得到完全标签化的医疗数据。具体的,群体智能模块用于将部分标签化的医疗数据中未被打标签的字段打乱,打包分发进行人工标注;获取人工标注后的标签结果,对标签结果进行校正,去除标签结果中低质量(即标签质量较差)的标签。
37.群体智能模块对标签结果进行校正通过以下方式实现:进行组内竞争,对处理同一条数据的组内员工进行投票,多者获胜,败者视为错误,随着时间的积累,统计每个员工的工作准确度,并根据每个员工的可靠性,对其标签结果进行加权投票;或,使用标签校正模型与原有的标签进行对比,将错误率过高的标签去除;或,设置多个次级分词器,使用次级分词器得到标签结果,将每个多个次级分词器所占的权重作为高级深度学习模型的可训练参数,利用已有的结果对高级深度学习模型进行训练,并与有的标签进行对比,将错误率过高的标签去除;或,使用无监督训练模型令在同一类的数据在进行标签处理时保持一致,将错误率过高的标签去除。
38.本发明不局限于上述可选实施方式,任何人在本发明的启示下都可得出其他各种形式的产品,但不论在其形状或结构上作任何变化,凡是落入本发明权利要求界定范围内的技术方案,均落在本发明的保护范围之内。
技术特征:
1.一种医疗数据预处理方法,其特征在于,包括步骤:s1、去除医疗数据中的无关符号,对医疗数据中的文本数据进行纠错更正;s2、将文本数据通过多个医疗分词器切分成不同的字段得到分词结果,将分词结果输入次级分词器得到最终分词结果;s3、构建医疗知识图谱,基于医疗知识图谱对最终分词结果中的医学字段打上标签,得到部分标签化的医疗数据;s4、基于群体智能对部分标签化的医疗数据中未被打标签的字段进行标注,得到完全标签化的医疗数据。2.根据权利要求1所述的医疗数据预处理方法,其特征在于:所述步骤s4包括:s41、将部分标签化的医疗数据中未被打标签的字段打乱,打包分发进行人工标注;s42、获取人工标注后的标签结果,对标签结果进行校正。3.根据权利要求2所述的医疗数据预处理方法,其特征在于:对标签结果进行校正通过以下方式实现:进行组内竞争,对处理同一条数据的组内员工进行投票,多者获胜,败者视为错误,随着时间的积累,统计每个员工的工作准确度,并根据每个员工的可靠性,对其标签结果进行加权投票;或,使用标签校正模型与原有的标签进行对比,将错误率过高的标签去除;或,设置多个次级分词器,使用次级分词器得到标签结果,将每个多个次级分词器所占的权重作为高级深度学习模型的可训练参数,利用已有的结果对高级深度学习模型进行训练,并与有的标签进行对比,将错误率过高的标签去除;或,使用无监督训练模型令在同一类的数据在进行标签处理时保持一致,将错误率过高的标签去除。4.根据权利要求3所述的医疗数据预处理方法,其特征在于:所述步骤s4包括步骤s43:使用校正后的标签结果重新训练标签校正模型、高级深度学习模型和无监督训练模型。5.根据权利要求1所述的医疗数据预处理方法,其特征在于:所述次级分词器由医疗分词模型进行分词得到的分词结果训练得到。6.根据权利要求1所述的医疗数据预处理方法,其特征在于:所述步骤s3还包括:对医疗数据中的标点符号打上分隔符标签。7.根据权利要求1所述的医疗数据预处理方法,其特征在于:所述步骤s1之前还包括步骤s0:将外文的医疗数据的翻译为中文的医疗数据。8.一种医疗数据预处理系统,其特征在于,包括:数据清理模块,用于去除医疗数据中的无关符号,并对医疗数据中的文本数据进行纠错更正;分词模块,用于将文本数据通过多个医疗分词器切分成不同的字段得到分词结果,并将分词结果输入次级分词器得到最终分词结果;标签生成模块,用于构建医疗知识图谱,基于医疗知识图谱对最终分词结果中的医学字段打上标签,得到部分标签化的医疗数据;群体智能模块,用于对标签生成模块得到的医疗数据中未被打标签的字段进行标注,得到完全标签化的医疗数据。
9.根据权利要求8所述的医疗数据预处理系统,其特征在于:所述群体智能模块用于将部分标签化的医疗数据中未被打标签的字段打乱,打包分发进行人工标注;获取人工标注后的标签结果,对标签结果进行校正。10.根据权利要求9所述的医疗数据预处理系统,其特征在于:对标签结果进行校正通过以下方式实现:进行组内竞争,对处理同一条数据的组内员工进行投票,多者获胜,败者视为错误,随着时间的积累,统计每个员工的工作准确度,并根据每个员工的可靠性,对其标签结果进行加权投票;或,使用标签校正模型与原有的标签进行对比,将错误率过高的标签去除;或,设置多个次级分词器,使用次级分词器得到标签结果,将每个多个次级分词器所占的权重作为高级深度学习模型的可训练参数,利用已有的结果对高级深度学习模型进行训练,并与有的标签进行对比,将错误率过高的标签去除;或,使用无监督训练模型令在同一类的数据在进行标签处理时保持一致,将错误率过高的标签去除。
技术总结
本发明属于数据处理技术领域,公开了一种医疗数据预处理方法及系统,医疗数据预处理方法包括步骤:去除医疗数据中的无关符号,对医疗数据中的文本数据进行纠错更正;将文本数据通过多个医疗分词器切分成不同的字段得到分词结果,将分词结果输入次级分词器得到最终分词结果;构建医疗知识图谱,基于医疗知识图谱对最终分词结果中的医学字段打上标签,得到部分标签化的医疗数据;基于群体智能对部分标签化的医疗数据中未被打标签的字段进行标注,得到完全标签化的医疗数据。本发明自动将医疗数据进行数据清洗、关键信息提取和打标签,使得这些医疗数据被处理成医疗AI模型训练所需的格式和内容,并利用群体智能技术对数据标签工作流程进行优化。作流程进行优化。作流程进行优化。
技术研发人员:李睿 胡其桐 邢沛瑶 刘瑞华 徐浩 郑名扬 邢天奇
受保护的技术使用者:成都安哲斯生物医药科技有限公司
技术研发日:2023.08.10
技术公布日:2023/9/9
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/