
作者 | 陈封能
来源 | 《数据挖掘导论》(原书第2版)
导读:数据采集和存储技术的迅速发展,加之数据生成与传播的便捷性,致使数据爆炸性增长,最终形成了当前的大数据时代。围绕这些数据集进行可行的深入分析,对几乎所有社会领域的决策都变得越来越重要:商业和工业、科学和工程、医药和生物技术以及政府和个人。
然而,数据的数量(体积)、复杂性(多样性)以及收集和处理的速率(速度)对于人类来说都太大了,无法进行独立分析。因此,尽管大数据的规模性和多样性给数据分析带来了挑战,但仍然需要自动化工具从大数据中提取有用的信息。
数据挖掘将传统的数据分析方法与用于处理大量数据的复杂算法相结合,本文将介绍数据挖掘的概况。
1. 商业和工业
借助POS(销售点)数据收集技术(条码扫描器、射频识别(RFID)和智能卡技术),零售商可以在商店的收银台收集顾客购物的最新数据。零售商可以利用这些信息,加上电子商务网站的日志、客服中心的顾客服务记录等其他的重要商务数据,能够更好地理解顾客的需求,做出更明智的商业决策。
数据挖掘技术可以用来支持广泛的商务智能应用,如顾客分析、定向营销、工作流管理、商店分布、欺诈检测以及自动化购买和销售。最近一个应用是快速股票交易,在这个交易中,需要使用相关的金融交易数据在不到一秒的时间内做出买卖决定。
数据挖掘还能帮助零售商回答一些重要的商业问题,如:“谁是最有价值的顾客?”“什么产品可以交叉销售或提升销售?”“公司明年的营收前景如何?”这些问题促使着数据挖掘技术的发展,比如关联分析。
随着互联网不断改变我们日常生活中互动和做决定的方式,能够生成大量的在线体验数据,例如网页浏览、信息传递,以及在社交网站上发布信息,这为使用Web数据的商务应用提供了机会。
例如,在电子商务领域,用户的在线浏览或购物偏好数据可以用来推荐个性化的产品。数据挖掘技术也在支持其他基于互联网的服务方面扮演着重要的角色,如过滤垃圾信息、回答搜索查询,以及建议社交圈的更新和联系。
互联网上大量的文本、图像和视频使得数据挖掘方法有了许多进展,如深度学习。这些进展推动了诸多应用领域的进步,如目标识别、自然语言翻译与自动驾驶。
另一个经历大数据快速转型的应用领域是移动传感器和移动设备的使用,如智能手机和可穿戴计算设备。借助更好的传感器技术,可以利用嵌入在相互连接的日常设备上的低成本传感器(称为物联网(IOT))来收集物理世界的各种信息。
在数字系统中,物理传感器的深度集成正开始产生大量与环境相关的多样化和分布式的数据,可用于设计方便、安全、节能的家庭系统,以及规划智能城市。
2. 医学、科学与工程
医学、科学与工程界的研究者正在快速收集大量数据,这些数据对获得有价值的新发现至关重要。例如,为了更深入地理解地球的气候系统,NASA已经部署了一系列的地球轨道卫星,不停地收集地表、海洋和大气的全球观测数据。
然而,由于这些数据的规模和时空特性,传统的方法常常不适合分析这些数据集。数据挖掘所开发的技术可以帮助地球科学家回答如下问题:“干旱和飓风等生态系统扰动的频度和强度与全球变暖之间有何联系?”“海洋表面温度对地表降水量和温度有何影响?”“如何准确地预测一个地区的生长季节的开始和结束?”
再举一个例子,分子生物学研究者希望利用当前收集的大量基因组数据,更好地理解基因的结构和功能。过去,传统方法只允许科学家在一个实验中每次研究少量基因,微阵列技术的最新突破已经能让科学家在多种情况下比较数以千计的基因特性。
这种比较有助于确定每个基因的作用,或许可以查出导致特定疾病的基因。然而,由于数据的噪声和高维性,需要新的数据分析方法。除了分析基因序列数据外,数据挖掘还能用来处理生物学的其他难题,如蛋白质结构预测、多序列校准、生物化学路径建模和系统发育学。
另一个例子是利用数据挖掘技术来分析越来越多的电子健康记录(EHR)数据。不久之前,对患者的研究需要手动检查每一个患者的身体记录,并提取与所研究的特定问题相关的、具体的信息。EHR允许更快和更广泛地探索这些数据。
然而,只有患者在看医生或住院期间才能对他们进行观察,并且在任何特定访问期间只能测量关于患者健康的少量细节,因此存在重大挑战。
目前,EHR分析侧重于简单类型的数据,如患者的血压或某项疾病的诊断代码。然而,很多类型更复杂的医学数据也被收集起来,例如心电图(ECG)和磁共振成像(MRI)或功能性磁共振成像(fMRI)的神经元图像。
尽管分析这些数据十分具有挑战性,但其中包含了患者的重要信息。将这些数据与传统的EHR和基因组数据集成分析是实现精准医学所需的功能之一,旨在提供更加个性化的患者护理。
数据挖掘是在大型数据库中自动地发现有用信息的过程。数据挖掘技术用来探查大型数据库,发现先前未知的有用模式。数据挖掘还可以预测未来的观测结果,比如顾客在网上或实体店的消费金额。
并非所有的信息发现任务都被视为数据挖掘。例如查询任务:在数据库中查找个别记录,或查找含特定关键字的网页。这是因为这些任务可以通过与数据库管理系统或信息检索系统的简单交互来完成。而这些系统主要依赖传统的计算机科学技术,包括先进高效的索引结构和查询处理算法,有效地组织和检索大型数据存储库的信息。
尽管如此,数据挖掘技术可以基于搜索结果与输入查询的相关性来提高搜索结果的质量,因此被用于提高这些系统的性能。
数据挖掘是数据库中知识发现(Knowledge Discovery in Database,KDD)不可缺少的一部分,而KDD是将未加工的数据转换为有用信息的整个过程,如图1所示。该过程包括一系列转换步骤,从数据预处理到数据挖掘结果的后处理。
▲图1 数据库中知识发现(KDD)过程
输入数据可以以各种形式存储(平面文件、电子表格或关系表),并且可以存储在集中式数据库中,或分布在多个数据站点上。预处理(preprocessing)的目的是将原始输入数据转换为适当的格式,以便进行后续分析。
数据预处理涉及的步骤包括融合来自多个数据源的数据,清洗数据以消除噪声和重复的观测值,选择与当前数据挖掘任务相关的记录和特征。由于收集和存储数据的方式多种多样,数据预处理可能是整个知识发现过程中最费力、最耗时的步骤。
“结束循环”(closing the loop)通常指将数据挖掘结果集成到决策支持系统的过程。例如,在商业应用中,数据挖掘的结果所揭示的规律可以与商业活动管理工具结合,从而开展或测试有效的商品促销活动。
这样的结合需要后处理(postprocessing)步骤,确保只将那些有效的和有用的结果集成到决策支持系统中。后处理的一个例子是可视化,它使得数据分析者可以从各种不同的视角探査数据和数据挖掘结果。在后处理阶段,还能使用统计度量或假设检验,删除虚假的数据挖掘结果。
前面提到,面临大数据应用带来的挑战时,传统的数据分析技术经常遇到实际困难。下面是一些具体的问题,它们引发了人们对数据挖掘的研究。
1. 可伸缩
由于数据产生和采集技术的进步,数太字节(TB)、数拍字节(PB)甚至数艾字节(EB)的数据集越来越普遍。如果数据挖掘算法要处理这些海量数据集,则算法必须是可伸缩的。许多数据挖掘算法采用特殊的搜索策略来处理指数级的搜索问题。为实现可伸缩可能还需要实现新的数据结构,才能以有效的方式访问每个记录。
例如,当要处理的数据不能放进内存时,可能需要核外算法。使用抽样技术或开发并行和分布式算法也可以提高可伸缩程度。
2. 高维性
现在,常常会遇到具有成百上千属性的数据集,而不是几十年前常见的只具有少量属性的数据集。在生物信息学领域,微阵列技术的进步已经产生了涉及数千特征的基因表达数据。具有时间分量或空间分量的数据集也通常具有很高的维度。
例如,考虑包含不同地区的温度测量结果的数据集,如果在一个相当长的时间周期内反复地测量,则维数(特征数)的增长正比于测量的次数。为低维数据开发的传统数据分析技术通常不能很好地处理这类高维数据,如维灾难问题。此外,对于某些数据分析算法,随着维数(特征数)的增加,计算复杂度会迅速增加。
3. 异构数据和复杂数据
通常,传统的数据分析方法只处理包含相同类型属性的数据集,或者是连续的,或者是分类的。随着数据挖掘在商务、科学、医学和其他领域的作用越来越大,越来越需要能够处理异构属性的技术。
近年来,出现了更复杂的数据对象。这种非传统类型的数据如:含有文本、超链接、图像、音频和视频的Web和社交媒体数据,具有序列和三维结构的DNA数据,由地球表面不同位置、不同时间的测量值(温度、压力等)构成的气候数据。
为挖掘这种复杂对象而开发的技术应当考虑数据中的联系,如时间和空间的自相关性、图的连通性、半结构化文本和XML文档中元素之间的父子关系。
4. 数据的所有权与分布
有时,需要分析的数据不会只存储在一个站点,或归属于一个机构,而是地理上分布在属于多个机构的数据源中。这就需要开发分布式数据挖掘技术。分布式数据挖掘算法面临的主要挑战包括:
5. 非传统分析
传统的统计方法基于一种假设检验模式,即提出一种假设,设计实验来收集数据,然后针对假设分析数据。但是,这一过程劳力费神。当前的数据分析任务常常需要产生和评估数千种假设,因此需要自动地产生和评估假设,这促使人们开发了一些数据挖掘技术。
此外,数据挖掘所分析的数据集通常不是精心设计的实验的结果,并且它们通常代表数据的时机性样本(opportunistic sample),而不是随机样本(random sample)。
一些其他领域也起到重要的支撑作用。特别是,需要数据库系统提供高效的存储、索引和查询处理。源于高性能(并行)计算的技术在处理海量数据集方面常常是非常重要的。分布式技术还可以帮助处理海量数据,并且当数据不能集中到一起处理时显得尤为重要。图2显示了数据挖掘与其他领域之间的联系。
▲图2 数据挖掘汇集了许多学科的知识
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
R 语言:数据科学与科研领域的核心工具及优势解析 一、引言 在数据驱动决策的时代,无论是科研人员验证实验假设(如前文中的 T ...
2025-09-08T 检验在假设检验中的应用与实践 一、引言 在科研数据分析、医学实验验证、经济指标对比等领域,常常需要判断 “样本间的差异是 ...
2025-09-08在商业竞争日益激烈的当下,“用数据说话” 已从企业的 “加分项” 变为 “生存必需”。然而,零散的数据分析无法持续为业务赋能 ...
2025-09-08随机森林算法的核心特点:原理、优势与应用解析 在机器学习领域,随机森林(Random Forest)作为集成学习(Ensemble Learning) ...
2025-09-05Excel 区域名定义:从基础到进阶的高效应用指南 在 Excel 数据处理中,频繁引用单元格区域(如A2:A100、B3:D20)不仅容易出错, ...
2025-09-05CDA 数据分析师:以六大分析方法构建数据驱动业务的核心能力 在数据驱动决策成为企业共识的当下,CDA(Certified Data Analyst) ...
2025-09-05SQL 日期截取:从基础方法到业务实战的全维度解析 在数据处理与业务分析中,日期数据是连接 “业务行为” 与 “时间维度” 的核 ...
2025-09-04在卷积神经网络(CNN)的发展历程中,解决 “梯度消失”“特征复用不足”“模型参数冗余” 一直是核心命题。2017 年提出的密集连 ...
2025-09-04CDA 数据分析师:驾驭数据范式,释放数据价值 在数字化转型浪潮席卷全球的当下,数据已成为企业核心生产要素。而 CDA(Certified ...
2025-09-04K-Means 聚类:无监督学习中数据分群的核心算法 在数据分析领域,当我们面对海量无标签数据(如用户行为记录、商品属性数据、图 ...
2025-09-03特征值、特征向量与主成分:数据降维背后的线性代数逻辑 在机器学习、数据分析与信号处理领域,“降维” 是破解高维数据复杂性的 ...
2025-09-03CDA 数据分析师与数据分析:解锁数据价值的关键 在数字经济高速发展的今天,数据已成为企业核心资产与社会发展的重要驱动力。无 ...
2025-09-03解析 loss.backward ():深度学习中梯度汇总与同步的自动触发核心 在深度学习模型训练流程中,loss.backward()是连接 “前向计算 ...
2025-09-02要解答 “画 K-S 图时横轴是等距还是等频” 的问题,需先明确 K-S 图的核心用途(检验样本分布与理论分布的一致性),再结合横轴 ...
2025-09-02CDA 数据分析师:助力企业破解数据需求与数据分析需求难题 在数字化浪潮席卷全球的当下,数据已成为企业核心战略资产。无论是市 ...
2025-09-02Power BI 度量值实战:基于每月收入与税金占比计算累计税金分摊金额 在企业财务分析中,税金分摊是成本核算与利润统计的核心环节 ...
2025-09-01巧用 ALTER TABLE rent ADD INDEX:租房系统数据库性能优化实践 在租房管理系统中,rent表是核心业务表之一,通常存储租赁订单信 ...
2025-09-01CDA 数据分析师:企业数字化转型的核心引擎 —— 从能力落地到价值跃迁 当数字化转型从 “选择题” 变为企业生存的 “必答题”, ...
2025-09-01数据清洗工具全景指南:从入门到进阶的实操路径 在数据驱动决策的链条中,“数据清洗” 是决定后续分析与建模有效性的 “第一道 ...
2025-08-29机器学习中的参数优化:以预测结果为核心的闭环调优路径 在机器学习模型落地中,“参数” 是连接 “数据” 与 “预测结果” 的关 ...
2025-08-29