与大数据在其他行业的应用不同,对医学大数据价值的深度挖掘,不仅要分析数据间的相关性,还要严格验证其中的因果性。如果只分析数据相关性,难以进一步判断流行病学的趋势及在临床应用中产生具有较大参考意义的明确结论。
大数据带来的信息也在改变医学教育和医学的生态系统。以数字方式收集和存储的数据量呈指数级增长。医疗行业每天都在产生大量数据,这是大数据应用的一个重要领域。为了向患者提供最好的服务和护理,许多国家的医疗机构提出了各种各样的建议。如何更好地开发和利用大型医学大数据已成为人们关注的焦点,促进医学大数据的研究和应用已成为现代医学研究的关键因素。
医学数据具有疾病多样性,治疗和结果的异质性,数据收集、处理和解释的复杂性等特点。随着医疗信息的发展,在医疗服务、医疗保健和卫生管理的过程中产生了大量的数据,形成了医学大数据。医学大数据具有各种来源,如行政索赔记录、临床登记、电子健康档案、生物特征数据、患者报告数据等。这些数据在医疗保健系统的大数据应用程序和数据收集中有重要价值。例如,糖尿病患者使用移动设备相互交流,共享信息或搜索信息,从而形成一大批的大数据网络。除了具有强大的统计功能和复杂性之外,数据还需要实时可用,以便立即对其进行分析和使用。
医学大数据挖掘方法
随着信息化时代的到来,数据挖掘技术被越来越多地应用于医学大数据分析。大数据分析技术可用于大规模遗传学研究、公共卫生、个性化和精准医学、新药开发等,在医学领域越来越受欢迎。大数据方法的应用可以更有效地存储和提取医疗记录及后续数据;同时,从医疗数据中寻找潜在的联系或规律,以获得对患者进行诊断和治疗的有效知识,从而提高疾病预测的准确性和治愈率。
与传统研究方法不同,数据挖掘是在没有明确假设的情况下挖掘信息和发现知识,即没有事先的研究和设计,所获得的信息应该有3个特征,即以前未知、有效和实用。数据挖掘技术的出现并不是要取代传统的统计分析技术,而是统计分析方法的扩展。
数据挖掘方法可分为描述性方法和预测性方法两类。描述性方法展现了数据的一般性质,包括关联分析和聚类分析;预测方法包括分类和回归。
关联分析,也称为关联挖掘,是指搜索存在于事务数据、关系数据或其他信息载体中的项目集合或对象集合之间的频繁模式、关联、相关性或因果结构。换句话说,关联分析是指发现来自大量异构数据之间的联系。购物篮分析是关联分析的一个典型例子,它主要通过在顾客的购物篮中发现不同的产品分析来顾客的购买习惯,了解顾客经常同时购买哪些商品,可以帮助零售商制定营销计划。关联分析包括两个步骤,第一步是列出集合中的所有高频项目;第二步是根据高频项目生成频繁的关联规则。根据第一步得到高频项目组,如果该规则满足最小置信度,则该规则为关联规则。关联分析的机器学习方法包括先验算法、FP-tree 算法和Upgrade LIFT 算法。
先验算法基于先验原则,反映了子集与超集之间的关系,即频繁项集的所有非空子集都必须是频繁的,而所有非频繁项集的超集都必须是罕见的。频繁模式指的是出现在每个购物记录中的各种项目实际上反映了一个组合的性质。这些项目的组合在记录中是无序的,这种无序的组合称为“模式”。其中,有些模式频率低,有些频率高。一般认为,较高的频率通常更有指导意义。这种高频模式称为“频繁模式”。因此,先验算法的性质主要用于在数据集中查找关联规则的频繁项集。先验算法可以更好地避免盲搜索,提高频繁项集搜索的效率。
FP-tree 算法是通过逐个读取事务并将事务映射到FP-tree 中的一条路径构建的。由于不同的事务可能有几个相同的项,因此它们的路径可能部分重叠。路径重叠越多,使用FP-tree 结构得到的压缩效果越好;如果FP-tree 足够小,能存储于存储器中,可以直接从存储器结构中提取频繁的数据集,而无须重复扫描并将数据存储于硬盘上。FP-tree 算法的主要思想是在经历一次扫描之后将数据库中的频率集压缩为一个频繁的模式树,同时仍然保留相关信息,然后分别挖掘条件基。
聚类分析是为了研究如何将相似的东西分为一类。聚类通过静态分类将相似的对象划分为不同的组或更多的子集,从而使同一子集中的成员对象具有相似的属性。聚类算法有几种,如K 均值算法、层次聚类算法、基于划分和层次聚类算法。
K 均值算法是聚类分析中最常用、最基本的聚类算法,它是基于原型和分割距离技术,根据给定的参数K,将N 个对象大致分为K 类,然后根据某些最优原理对不合理的分类进行修改。K 均值算法简单、快速、易于理解,时间复杂度低。然而,K 均值算法对高维数据处理较差,并且不能识别非球形簇。
层次聚类算法对数据集进行层次分解,分为自下而上的凝聚层次聚类和自上而下的分裂层次聚类。常用的层次聚类算法包括桦树、治愈、岩石、变色龙等算法。这种类型的算法最初将每个点视为一个集群,根据接近度进行组合。当组合在多种原因下导致不希望的结果时,组合过程结束。
1996~2000 年,数据挖掘学者提出了大量的基于网格的聚类算法。该网格方法可以有效降低算法的计算复杂度,并且对密度参数也很敏感。基于网格的聚类算法采用了多分辨率的网格数据结构,处理速度非常快,并且仅取决于量化空间中每个维度中的元素数量。常见的方法包括刺、团和波簇。
分类是构造一个分类模型,输入样本的属性值,输出对应的类别,将每个样本映射到预先定义好的类别。预测是指建立2种或2种以上变量间相互依赖的函数模型,然后进行预测或控制。
分类算法有两步过程。一是学习步,通过归纳分析训练样本集建立分类模型得到分类规则;二是分类步,先用已知的测试样本集评估分类规则的准确率,如果准确率是可以接受的,则使用该模型对未知类标记的待测样本集进行预测。
预测模型的实现步骤也有两步,第一步是通过训练集建立预测属性(数值型的)的函数模型,第二步是在模型通过检验后进行预测或控制。
分类模型建立在已有类标记的数据集上,模型在已有样本上的准确率可以更方便计算,所以分类属于有监督的学习。其目标是“标记”数据,以提取有价值的数据。类别越准确,结果就越有价值。通常采用逻辑回归、先验回归、经典判别分析,建立一个分类模型,可以帮助我们更好地理解数据,然而这也有局限性。当因变量为分类变量,且自变量包含多个分类变量或分类变量水平较高时,经典统计量不适用,机器学习方法对处理复杂数据更实用,精度较好。
回归是确定多种变量相互依赖的定量关系的方法。回归分析是一种统计方法,对具有一个或多个自变量的因变量(目标变量)和自变量(预测变量)之间的关系进行建模。具体地说,回归分析有助于我们理解在其他自变量保持固定的情况下,自变量的值对应于自变量的变化方式。传统的回归是一种统计分析方法,通过普通的线性回归确定两个或多个变量之间的定量关系,并被广泛使用。
回归分析可根据自变量的数量分为一元线性回归分析和多元线性回归分析。一元线性回归分析只包含一个自变量和一个因变量,一条直线可以近似表示两者之间的关系。如果回归分析包含两个或两个以上的自变量,且因变量与自变量之间是线性关系则称为多元线性回归分析。在实践中,一种现象通常与多种因素有关。在执行回归分析时,需要两个或多个自变量,这种回归被称为多元回归。通过多个自变量的最优组合预测或估计因变量比仅用一个自变量预测或估计更有效、更现实。因此,多元线性回归比一元线性回归更实用。多元线性回归分析包括3 个步骤。第一步,利用收集到的数据建立回归方程;第二步,对分析得到的回归方程进行假设检验;第三步,当回归方程意义显著时,需要对回归系数进行假设检验。在剔除没有显著部分回归系数的变量后,重新建立不包含这些变量的多元回归方程,并重复上述过程。其基本原理是将最小二乘法应用于线性回归模型的回归。
大多数传统算法的统计模型对数据都有特定的要求,而模型本身也有一种可以清晰表达的数学形式。该模型的利弊大多是根据数据分布假设得到的检验来判断的。然而,在实际工作过程中,很难对数据在现实世界中的分布做出任何假设。
机器学习算法对数据没有假设,结果也有交叉性。通过验证算法判断,基于该算法或程序的预测模型相当有效,交叉验证的结果很容易被大多数实践工作者理解和接受。机器学习中的回归是一种有监督的学习技术,有助于发现变量之间的相关性,并使我们能够基于一个或多个预测变量预测连续输出变量,主要用于预测时间序列建模及确定变量之间的因果关系。回归模型的机器学习算法有决策树、自适应增强、套袋法、随机森林、支持向量机、最近邻算法和人工神经网络。
机遇与挑战
利用新的前沿学科生成大数据和分析大数据是传统医学和精准医学之间的发展趋势。大数据的发展将有助于精准医疗的全球应用和新的卫生管理模式的出现。然而,医学大数据挖掘仍面临巨大挑战,主要是医学知识概念复杂,医学知识推理关键技术尚未突破,医学信息源广泛,以及数据维度高、类别不平衡、结构复杂,医院电子病历系统的开放性和可扩展性较差,院外流程监管不力。虽然在大量数据中产生新的发现和结论并不容易,但我们可以预见未来在医疗和生活领域大数据将会发挥不可替代的作用。
因此,《医学大数据分析挖掘技术与应用》(王海英等主编. 北京:科学出版社,2024.5)阐述了医学大数据的实用技术与经典案例,从技术原理到实际应用、从统计方法到数据建模,全面概括当前形势下医学大数据技术与应用,帮助读者理解和掌握医学大数据挖掘的相关理论与方法,为流行病与卫生统计学、统计学专业人员及从事医学大数据挖掘的科研人员提供参考。