赵海燕,钦锐,丁欣
新疆医科大学第七附属医院 a.医务部;b.信息管理科,新疆 乌鲁木齐 830063
病案是医务人员在从事医疗工作过程的工作记录,是具有法律效力的医疗文书,其书写质量与医院医疗管理质量、医疗水平等因素密切相关[1-2]。目前大部分医院临床病案均存在电子存档,而既往传统的人工审核对于审核人员要求较高,且过程缓慢,还易发生人为错误[3]。随着人工智能的发展,自然语言处理技术由于其对于文字的识别处理优势明显,已被应用于医学院学生电子病案问题筛查中,在问题识别、分类方面取得了显著的效果[4-5];同时,人工神经网络在处理批量、重复事务上,尤其是针对固定模式下的问题识别具有明显的优势,国内已经有相关研究将特定人工神经网络运用于病案审核辅助工作,并取得了较好的效果[6-7]。基于此,本研究旨在将二者联合运用于病案质量缺陷的管理中,以期为提升病案管理工作效率提供参考依据。
选取2018年1月至2020年12月归档的病案3000份作为建模组(每年1000份)构建病案质量缺陷智能提示系统,同时以2021年1—5月的500份(每月100份)病案分别采用人工及系统进行审核,比较2种方式审核的问题病案率及审核时间。
1.2.1 病案分组及情况分析
按照7∶3的比例将建模组所有病案分为训练集和测试集,故训练集共计2100份病案,测试集900份病案。训练集采用K折交叉验证(K=10)。
1.2.2 提取临床有用信息
运用自然语言处理技术从训练集中文电子化病案系统中提取临床有用信息,本研究所使用的文字处理系统是基于中文NLP系统所得,计算方法为JAVA语言。具体流程:预处理→句子分割→段落筛选→关键词识别和值的提取。具体内容如下:① 预处理:首先将系统内的病案电子文档转换为Word或TXT可编辑的文本格式,并清除文中空格和空白行;② 句子分割:通过文档中的句子或词语之间的常用标点符号对全文进行分割,然后采用jieba分词工具对提取文本进行分词操作,并对训练集中所有已标注的命名实体进行保留、去重处理后加入分词字典中,以此确保能顺利将文本实体进行完整的切分;③ 段落筛选:通过段落筛选过程排除不必要的信息来简化工作,如入院记录中的主诉一行,从“主诉:”以后的句子内容,均为关键临床信息,故需要以固定的两个边界对文本内容进行筛选,影像及病理学报告中的结论与上述问题相类似;④ 关键词识别和值的提取:按照预定义的关键词对病案中的关键词进行提取,匹配过程中按顺序逐步运算算法,如果文本中的预定义字段无法被识别,程序则会跳过并处理下一个。
1.2.3 训练集人工神经网络的构建
采用TextCNN探索卷积神经网络深度与其性能间的关系,TextCNN构建了包含嵌入层、卷积层、最大池化层、全连接输出层的卷积神经网络,通过以词为单位进行文本表示形成词向量,再将词向量按照词在句子中出现的顺序进行拼接,形成代表句子的矩阵,从而实现句子特征的自动提取和学习。具体作用机制:① 嵌入层:识别经自然语言处理技术提取后的关键词,并将之转化为词向量,构成文本特征向量初步构成矩阵向卷积层输出(文本会转变成一个二维矩阵,假设文本的长度为|T|,词向量的大小为|d|,则该二维矩阵的大小为|T|×|d|);② 卷积层:采用卷积矩阵窗口并将输入矩阵中的列矩阵块由上到下依次进行卷积运算,将矩阵所有相同位置的元素与卷积核做point wise乘法后再求和,将矩阵进一步简化后通过激活函数并提取矩阵特征;③ 池化层:采用最大池化的方法取每个卷积窗口卷积得到的卷积层向量中最大的元素作为特征值,通过降低了特征的维度,进一步提高分类效率;④ 输出层:与池化层全连接,以池化层向量为输入对向量进行分类,并输出最终的分类;而后将输出结果与之前预先基于中文医学主题词表(CMeSHs)构建好的医学主题词模型进行比对,利用 Gensim库中的 word2vec工具对提取词向量特征进行监督学习,并将所有比对完成的TextCNN模型的参数定义为集合并采用随机梯度下降方法训练,得到最终模型,最后将验证集输入模型中以进行验证。
1.2.4 模型评估主要内容
主要检查病案首页信息填写、入院记录、病程记录、知情同意书签署情况、会诊记录、输血记录等相关病案内容;主要分析诊断与查体、治疗方法是否存在差异,住院天数和护理天数是否符合,个人信息、生命体征前后有无不匹配,病案资料完整性及医嘱单及报告单一致性,药物超最大剂量使用,病案书写不及时,出院带药超量等方面内容。
1.3.1 病案质量情况
分别统计经过审核后建模组病案构成要素(病案首页、入院记录、病程记录、医嘱、出院小结)发生问题情况,并统计各类问题占问题病案的百分比。
1.3.2 模型评估结果及训练和验证历史
模型构建采用硬件平台为i7-9900K+GTX2060(6G),软件平台为Python 3.7.10(win10,64位)及Pytorch 1.8.0人工神经网络库建立卷积神经网路模型。数据采用SPSS 25.0进行分析,计数资料用n(%)表示,一致性分析采用Kappa检验,Kappa值越接近1,说明两组数据一致性程度越高,组间比较采用χ2检验,以P<0.05为差异具有统计学意义。
建模组3000份病案中,899份病案存在问题,问题率为30.0%,其中训练集缺陷病案共计647例,测试集缺陷病案共计252例,见表1。
表1 建模组病案具体问题占比
随着迭代次数增加,TextCNN模型训练集和验证集的训练准确度迅速升高并在30次以后趋于稳定,平均准确率分别为(0.933±0.012)和(0.921±0.014);TextCNN模型训练集和验证集的训练损失迅速降低并在100次以后趋于稳定,平均损失率分别为(0.189±0.021)和(0.207±0.033),见图 1~2。
图1 TextCNN模型构建中测试集和训练集准确性
图2 TextCNN模型构建中测试集和训练集损失情况
训练集中TextCNN模型与人工评估结果的符合率为96.9%(2034/2100),一致性分析显示,训练集中TextCNN模型与人工评估结果具有较高的一致性(Kappa=0.921,P<0.001),见表 2。
表2 训练集中TextCNN模型与人工评估结果的对比(n)
测试集中TextCNN模型与人工评估结果的符合率为91.3%(822/900),一致性分析显示,测试集中TextCNN模型与人工评估结果具有较高的一致性(Kappa=0.878,P<0.001),见表 3。
表3 测试集评估结果及训练和验证历史(n)
2021年1—5月及总计人工审核和系统审核病案问题病案率比较,差异无统计学意义(χ2=0.126、0.095、0.001、0.001、0.040、0.176,P=0.642、0.758、0.999、0.999、0.841、0.675);2021年1—5月及总计系统审核病案审核平均用时低于人工审核,差异具有统计学意义(t=21.614、25.991、22.632、26.534、23.249、26.826,P均<0.001),见表4。
表4 应用TextCNN病案缺陷辅助系统后病案审核效率的对比[±s,n(%)]
表4 应用TextCNN病案缺陷辅助系统后病案审核效率的对比[±s,n(%)]
注:与人工审核比较,aP<0.05。
时间平均用时/min人工审核 系统审核问题病案数/n(%)平均用时/min问题病案数/n(%)1月(n=100) 28(28.0) 21.47±5.04 31(31.0) 7.27±1.02a 2月(n=100) 29(29.0) 22.52±5.73 31(31.0) 7.34±1.13a 3月(n=100) 27(27.0) 21.95±6.32 27(27.0) 7.09±1.78a 4月(n=100) 28(28.0) 23.04±6.13 28(28.0) 6.51±1.11a 5月(n=100) 29(29.0) 22.85±5.98 30(30.0) 8.47±1.58a总计(n=500)(28.2)22.35±5.31147(29.4)7.36±1.74a 141
病案审核效率一直以来是影响医院质管科工作效率的重要因素。既往人工审核虽然准确率较高,但是需要消耗审核医生的大量精力,同时针对病案中一些微小的错误也不易发现,这间接影响了病案质量的提升[8-9]。虽然近年来伴随着疾病诊断相关分组平台的普及,对于病案首页信息的审核效率有所提升,减轻了一部分工作压力,但该系统通过实践发现审核仍需要依靠人工进行[10-11]。研究发现,常见的中文临床电子病案中可以将文本通过结构化和非结构化2种格式进行区分[12]。其中,结构化数据主要由数字构成(包含辅助检查数据、患者年龄等数据化信息),可视为二维数据,而非结构化数据(包含入院记录、首次病程记录等文字化信息)主要由文字构成[13]。由于病案中非结构化数据随机性较大,这使得每份病案的风格不同,对机器识别并提取关键信息造成了障碍。
随着深度学习的兴起,手工信息提取被计算机所取代,同时通过计算机将文本转为的原始词向量中提取的特征鲁棒性更强,在减少对各类自然语言分析工具的依赖的同时,还能充分利用文本的上下文及结构信息分析全文情况[14-15]。其中的卷积神经网络首先通过卷积层能够更好地表达向量的局部信息,其次池化层能够进一步获得具有代表性的相关特征,已经广泛应用于图像、文字及数据处理领域,并且取得了诸多突破性进展[16-20]。TextCNN作为一种深度前馈人工神经网络可用于提取文本中的关键信息,也可以识别和处理图像,目前逐渐应用于处理病历首页,对识别首页缺陷有较好的效果,有助于提高病历质量,但较少用于电子病历的质量管理[12]。
本研究纳入建模及对比的病案问题发生率均在30%左右,这一结果与Wang等[13]的研究调查结果类似。而通过具体分类发现,病程记录、出院小结及入院记录为发生问题占比的前三位,分析主要原因:① 此三类文本在整个病案中占比最高,同时书写过程相对复杂,导致发生错误的概率高于其他几个病案构成部分;② 在电子病历普及后,大部分医生在书写病历时会用到复制和粘贴功能,这可能导致书写过程中会多次出现低级错误的情况,进而导致病案质量下降[14];③ 由于医疗资源紧张,患者多、病床周转快、处理临床事务需要花费大量时间,导致书写病历时间占比下降,进而导致错误的发生细化。
而本研究通过自然语言处理技术及TextCNN构建的模型对于建模组2个分类病案评审的与人工评审符合率均达到了90%以上,充分说明了此模型用于病案初筛具有较好的效果。同时对比使用模型前后的病案审核平均时间发现,使用后的病案审核平均时间显著低于使用前,说明此模型对于提升病案审核效率具有显著的效果。但通在实际研究中发现本次构建的模型还有以下缺点:① 病案经过机器审核后仍需要后期人工复核,这对工作量及工作效率的提升有一定影响,即此模型还需进一步改进;② 测试集与人工审核的符合率显著低于训练集,这说明病案的个体差异对于模型的判定具有显著的影响,在今后的研究中还需要进一步完善模型深度学习的情况;③ 本次使用模型时间较短,且由于模型效果需要进一步验证,未在所有病案审核工作中实施,无法有效评价本模型对于提升病案质量的效果,这需要今后全院推广后进一步评价对病案质量提升的作用;④ 目前神经网络模型对于分类预测效果较好,对于匹配已明确的缺陷可以取得较好的准确率,但对于详细规则尚需算法的改进,因而此模型仅适用于缺陷的初步筛选和标定大体缺陷类型。
通过基于自然语言处理技术及TextCNN联合构建的病例审核模型对于提升病案审核效率具有显著效果,但仍需要后期对系统对病案质量提升的同时,进一步完善系统的构建,促进病案审核工作的进步。