郝 梅,谢 嵘,王 立,黄 锋,王天兵
(1.北京大学人民医院医学信息中心,北京 100044;2.北京大学人民医院创伤救治中心,北京 100044)
在医院信息化的建设过程中,各个系统围绕业务应用分批分期建立,逐步覆盖业务全流程的同时,积累了大量医疗数据[1],这些数据均具有多源异构、分布式、碎片化等特点。为有效整合分散于各独立系统中的数据,并利用这些数据更好地为临床科研服务[2],我院建立了基于临床数据中心(clinical data repository,CDR)的医疗大数据搜索系统,以满足日益增长的临床科研数据服务需求。
我院的信息化建设自1986年开始,经历30多年的发展,已建成数十个业务系统,并积累了大量丰富的数据。但由于各系统建设年代不同、业务分散、缺乏统一规划和系统管理[3],若想完成临床科研相关数据的查询,往往需要跨越多个系统,且数据量大、数据间关联性异常复杂[4],导致了数据的准确性、一致性、完整性和效率难以同时兼顾。因此,亟须建立一个集医疗大数据的采集、存储、检索、计算和应用于一体的系统。
医疗大数据搜索系统以CDR为基础,对其中的结构化数据进行抽取,通过大数据技术进行存储,非结构化数据和文件利用自然语言处理(natural language processing,NLP)和机器学习技术进行结构化处理。同时,对于临床业务系统无法产生的数据则以科研随访系统辅助进行补充采集,实现了院前、院中、院后各环节间的数据联通及全流程、全周期的管理。医疗大数据搜索系统由数据处理、科研数据中心、数据服务和科研应用4个部分组成,整体架构如图1所示。
图1 医疗大数据搜索系统整体架构图
根据医疗数据的特点,系统采用基于Hadoop的分布式的列式数据库HBase进行存储,利用多台存储服务器分担存储负荷,并利用位置服务器定位存储信息,不仅提高了系统的可靠性、可用性和存取效率,还易于后期扩展。同时,系统通过引入Elastic-Search搜索引擎技术,提供了一个分布式多用户能力的全文搜索引擎,并基于RESTful Web接口完成稳定、可靠、快速的数据搜索;采用Spark集群并行计算框架,计算任务分发到不同数据节点,有效提高了计算速度。系统的存储、计算以及索引功能都支持通过水平扩展增加更多的服务器节点,以满足未来更高的并发存取访问需求[5]。医疗大数据搜索系统拓扑图如图2所示。
图2 医疗大数据搜索系统拓扑图
医疗大数据搜索系统的历史数据采集通过表抽取和文件读取2种方式存储到HBase,增量数据通过数据库预写式日志(write-ahead logging,WAL)解析的方式进行采集和存储。对于非结构化病历文本数据则需要先进行NLP,将其进行分词处理,并通过命名实体识别(named entity recognition,NER)和否定词标注,处理为带有实体类型、阴性/阳性状态标记的语义后结构化文本,再进行存储及索引。具体步骤如下:(1)对自然语言书写的文本进行分词,利用开源的、基于Bigram+HMM分词模型的分词工具,在Bigram分词的基础上,识别未登录词,以提高分词准确度。(2)在已有分词的基础上进行医学术语类型的识别,即NER。(3)采用统计学习中的条件随机场模型来完成医学实体的NER,而对医学文本的语义分析,不仅需要识别出医学实体本身,还需要对其阴阳性进行判断;同时采用规则与机器学习相结合的方法,先利用规则来抽取出具有否定修饰词的医学实体进行人工审核标注,再利用标注结果训练出识别否定医学术语的机器学习二分类模型。(4)完成上述步骤后,对转换的语义后结构化文本进行存储及索引。
科研数据中心按照人数和人次维度建立索引以满足不同科研的查询需求,并以ElasticSearch专用格式建立索引文档。索引文档设计时需保留数据间的业务关系,这不仅可实现搜索内容的秒级呈现,还支持组合、多级条件查询。另外索引项目的建立也结合了临床业务常用查询需求,确保符合用户科研搜索使用习惯。
在对数据库存储结构非常熟悉的情况下,基于传统关系型数据库的复杂检索可能需要耗费几个甚至十几个小时。本文提出的医疗大数据搜索系统通过大数据搜索引擎技术,可实现互联网的快速交互响应,支持用户对搜索内容的秒级呈现,同时还结合了临床业务建立常用查询、导出项目,方便医生的快速学习和使用。
考虑到医疗数据的患者隐私保护与保留数据的研究规律,在数据脱敏设计上去除单一粗暴的隐私数据替换功能,采用当前主流的脱敏技术,提供多种脱敏方式,包括全部替换、局部替换、日期偏移、数据映射、截断、遮罩、数值取整和自动编号等。另外,基于科研机构对数据的审计需求,系统对用户导出的查询数据进行副本留痕,并对留痕文件进行加密处理,降低服务器被攻击后数据泄露的风险。
除众多的结构化数据外,医学文本类数据(如患者的现病史、既往史、病程记录、影像学报告等)也含有十分重要的信息。文本后结构化处理结合了NLP、语义语法规则库等人工智能技术,能够将医学文本中的信息进行结构化提取,方便医生利用。由于病种特点和个人书写习惯等问题,结构化的算法需要不断学习以达到更高的准确率。为提高用户科研效率,减少结构化数据的迭代周期,系统提供可视的后结构化配置界面和实时结构化应用程序编程接口(application programming interface,API),保证调整规则及算法后可及时看到效果。
在临床医生的科研工作中通过统计分析的方法挖掘临床数据中的规律是一个必不可少的环节。目前,临床医生大多将数据导出后,使用通用的统计分析软件进行数据分析。但这种方法存在几个问题:(1)导出数据的安全性较难保证;(2)通用的统计分析软件功能强大但操作复杂,对使用者的统计学知识要求较高;(3)部分功能未针对医疗行业进行细化。因此,系统在主流的R语言算法基础上构建了专业的统计分析工具,通过浏览器端在线分析、增加智能化推荐算法功能等方式解决上述问题。同时,系统不仅提供了数据预处理功能,还提供了对研究变量可根据医学统计学方法进行缺失值分析填补、离散化处理等功能,为数据分析的全流程提供帮助。
科研数据中心包括院内自信息化以来的存量数据,收录有效就诊患者31 748 245人次,其中门诊就诊30 849 299人次,住院就诊898 946人次,详细数据时间周期如图3所示。据统计,科研数据中心已提供了41 017个科研变量,共计9亿多条数据。同时,数据中心支持以增量方式接入院内新产生的业务数据,提供实时的数据利用服务能力。
图3 科研数据中心数据时间周期
目前,医疗大数据搜索系统已为妇科、肾内科、耳鼻喉科、肝病科、血液科、风湿免疫科等十几个科室的科研课题提供了数据查询服务,其应用的系统界面如图4所示。医疗大数据搜索系统改变了跨系统查询耗费时间长的问题,实现了医生对于权限内的数据自行创建、查询,秒级显示查询结果,且与CDR进行集成以辅助医生对患者历次就诊结果进行查看与分析等功能。
按照医院管理流程对检索条件进行逐级审批管理,保证了数据安全。审批时可显示审批履历、标识检索条件和结果涉及的敏感项,并设置过期时间。医疗大数据搜索系统参考HIPAA法案定义的18项身份识别信息进行数据脱敏设置,并根据医院自身情况设置隐私患者及隐私病区。
医疗大数据搜索系统采用医学NLP和机器学习技术处理通用后结构化变量30个、专科后结构化归一变量44个,提供了医生可设置的后结构化配置界面,实现了医生修改规则后可实时通过系统看到后结构化的效果。通过提高后结构化效率,缩短了医生数据分析时间,进而提高了科研效率。
图4 医疗大数据搜索系统应用界面
系统基于主流的R语言统计分析工具包构建统计分析方法库,保证了结果的准确性;聚焦于医疗常用的分析方法(如各类假设检验、生存分析等)提高了行业的专业度;将数据查询结果与统计分析集成,保证了数据的保密性和安全性;纳入了智能分析模块,可以根据数据的类型(离散型、连续型)、分布情况(是否正态)等帮助用户推荐分析方法,提升了系统的易用性。
医疗大数据搜索系统有效整合了分散于各独立系统间的数据,提高了临床科研数据查询的质量和效率。但其建设仍处于摸索过程中,需要反思与持续改进[6]。
目前,医院尚缺乏自主研发能力,这就必然涉及产品选型。传统HIT公司虽熟悉医院的业务场景、工作流程和医疗业务系统架构,在系统的对接方面具有一定的优势。但大数据往往仅是传统HIT公司的方向之一,因此在技术更新、人才吸纳、市场推广等方面很难有突破。而大数据公司由于其应用场景的不断拓展、技术研发的深入,在团队、人才和市场占有率方面有显著优势。但大数据公司对医院业务了解较少,切入时间可能较长。因此,医院在产品选型时,要结合实际,兼顾近期、远期目标,选择适合的产品。
大数据搜索平台的建设势必涉及对前端系统的改造。就电子病历系统而言:一方面,需要对病历模板进行标准化改造,规范数据来源;另一方面,不能限制医生的思路,保留其自由发挥的空间,病程记录等自由文本的结构化用后结构化方法来实现。因此,需要把握好适度原则。
在系统的建设和实施过程中,要确保数据的安全,不被外界窃取和篡改,不予非授权方使用。因此,亟须建立相应的管理制度,采用数据加密技术和数据访问授权机制等方法,避免“一锅端”,保障数据的安全性。
应建立规范的数据查询流程,保证各环节正常、有序地运转,使数据利用真正落地。同时,在数据利用过程中,要妥善处理好患者隐私,严格按照伦理委员会的伦理批件提供相应的数据,保护患者的人格和尊严。
由于大数据的迅猛发展,需要一批了解医疗业务和信息技术的复合型人才。麦肯锡研究报告指出,美国等信息发达的国家中大数据领域相关人才的缺失于2018年达到14~19万[7]。而我国的大数据发展才刚刚起步,培养一批“双料”复合型人才是当前和今后很长一段时间内生物医学大数据发展的重要工作[3,8]。
医疗大数据搜索系统改变了传统人工翻阅纸质病历的模式,具有省时、省力、高效的优势,实现了从既定思维到创新性思维的转变,可从海量原始数据中发现规律,为临床科研提供了更多思路,对回顾性研究和前瞻性探索都具有重大意义。但是,利用医疗大数据搜索系统为临床科研提供服务还处于起步阶段,缺乏成熟的产品与案例,建设过程必然是逐步探索的过程,需要临床科研人员的积极配合和深度参与[1],并且在使用过程中不断积累经验完善系统,以吸引更多的临床科研人员参与,形成良性循环并进行逐步优化,以期为临床科研提供更有力的数据支撑,从而使医院的“数据宝藏”真正发挥作用。