基于ICD-10诊断编码的慢性病并发症聚类算法
王晓霞1,2,3,蒋伏松4,王宇5,熊贇1,2
1. 复旦大学计算机科学技术学院,上海 201203
2. 上海市数据科学重点实验室,上海 201203
3. 西北师范大学计算机科学与工程学院,甘肃 兰州 730070
4. 上海市第六人民医院,上海 200233
5. 上海市普陀区疾病预防控制中心,上海 200333
摘要:慢性病与其相关并发症关系的研究,对患者以及医学研究都有重要意义。电子病历中记录的患者就诊数据为研究目标慢性病与其并发症的关系提供了数据基础,其中面临的挑战之一在于既需要使用临床医生的领域知识对并发症进行标注,又不希望给医生增加过多负担。设计了一种采用分组策略的基于ICD-10诊断编码的慢性病并发症半监督聚类方法,以实现在较少的医生专家参与下对慢性病并发症归类。真实糖尿病患者电子医疗记录数据集上的实验结果表明提出的算法是实用且有效的。
关键词:半监督学习;聚类算法;慢性病并发症;CD-10诊断编码
doi:10.11959/j.issn.2096-0271.2018028
论文引用格式:王晓霞, 蒋伏松, 王宇, 等. 基于ICD-10诊断编码的慢性病并发症聚类算法[J]. 大数据, 2018, 4(3): 37-45.
WANG X X, JIANG F S, WANG Y, et al. Chronic disease complications clustering based on ICD-10 diagnoses code[J]. Big Data Research, 2018, 4(3): 37-45.
1 引言
在长时间的发展过程中,很多慢性病都会引发并发症,比如慢性阻塞性肺病、抑郁症等,这些并发症 是导致慢性病患者残疾、死亡的重要原因之一。了解慢性病与其并发症的关系以及研究相关并发症的发展,无论是对控制和预防慢性病并发症的发生、提高患者的自我监管能力,还是对慢性病的临床防治以及药物研发都有重要意义。
在医疗大数据环境下,对电子病历(electronic medical record)中的海量数据进行利用与分析能够促进医疗服务水平的提高以及对疾病的理解 [1]。在电子病历中,对患者的诊断结果一般使用国际疾病分类(international classification of diseases,ICD)编码进行分类标注,近年来使用的是全世界通用的第10次修订本《疾病和有关健康问题的国际统计分类》,即ICD-10诊断编码。例如,对于糖尿病及其并发症 [2],虽然在ICD-10诊断编码中根据疾病已知的病因、病理、临床表现和解剖位置等特性进行了一些详细的分类编码,但对于一些有可能由糖尿病引发的并发症并没有加以体现(比如抑郁症)。为了更好地利用电子病历中的数据分析各种目标疾病及其并发症的关系,将大量疾病诊断合理归类到若干种并发症类型是一项重要的任务。由于数据量巨大,对这些诊断结果按照研究目标的逻辑进行分类的工作,很难全部由具有医学知识的医生们来完成。本文设计了一种基于半监督聚类的慢性病并发症归类方法,聚类的依据是ICD-10诊断编码系统自身的编码特点:对于那些依据ICD-10诊断编码的分类规则划分为类似的疾病,其代码也会相邻。
2 相关工作
在机器学习领域,根据学习任务的不同分为两种学习方法:一种 是无监督学习,在无人工标记的数据集中发现数据自身蕴含的结构信息;另一种是有监督学习,在有人工标记的训练数据集中寻找数据与给定标记之间的映射关系,对测试数据集中的未标记数据进行分类或预 测 [3]。在很多具体的应用中,获取大量有标记的数据是很困难、很昂贵且很费时的,也就是说有标记的数据数量是相对有限的,对于有监督学习,学习结果令人不满意的重要原因之一是有限的标记数据很难为机器学习算法提供足够的分布信息,而对于不使用标记数据的无监督学习方法,在处理海量数据时很难保证算法的 精度 [4]。在此背景下,半监督学习方法引起了人们的关注,它的学习目标是综合利用少量有标记数据和大量无标记数据来更好地完成学习任务。半监督聚类分析基本思想是通过引入标记数据(或约束关系)来指导聚类过程,帮助算法更好地划分样本数据,提高