数据挖掘(Data Mining),又称为数据库中的知识发现(Knowledge Discovery in Database, KDD),就是从大量数据中获取有效的、新颖的、潜在有用的、最终可理解的模式的非平凡过程,简单的说,数据挖掘就是从大量数据中提取或“挖掘”知识。
并非所有的信息发现任务都被视为数据挖掘。例如,使用数据库管理系统查找个别的记录,或通过因特网的搜索引擎查找特定的Web页面,则是信息检索 (information retrieval)领域的任务。虽然这些任务是重要的,可能涉及使用复杂的算法和数据结构,但是它们主要依赖传统的计算机科学技术和数据的明显特征来创 建索引结构,从而有效地组织和检索信息。尽管如此,数据挖掘技术也已用来增强信息检索系统的能力。
为迎接前一节中的这些挑战,来自不同学科的研究者汇集到一起,开始着手开发可以处理不同数据类型的更有效的、可伸缩的工具。这些工作建立在研究者先前使用 的方法学和算法之上,在数据挖掘领域达到高潮。特别地,数据挖掘利用了来自如下一些领域的思想:(1) 来自统计学的抽样、估计和假设检验,(2) 人工智能、模式识别和机器学习的搜索算法、建模技术和学习理论。数据挖掘也迅速地接纳了来自其他领域的思想,这些领域包括最优化、进化计算、信息论、信号 处理、可视化和信息检索。
一些其他领域也起到重要的支撑作用。特别地,需要数据库系统提供有效的存储、索引和查询处理支持。源于高性能(并行)计算的技术在处理海量数据集方面常常是重要的。分布式技术也能帮助处理海量数据,并且当数据不能集中到一起处理时更是至关重要。
1)数据挖掘能做以下六种不同事情(分析方法):
· 分类 (Classification)
· 估值(Estimation)
· 预言(Prediction)
· 相关性分组或关联规则(Affinity grouping or association rules)
· 聚集(Clustering)
· 描述和可视化(Des cription and Visualization)
· 复杂数据类型挖掘(Text, Web ,图形图像,视频,音频等)
2)数据挖掘分类
以上六种数据挖掘的分析方法可以分为两类:直接数据挖掘;间接数据挖掘
· 直接数据挖掘
目标是利用可用的数据建立一个模型,这个模型对剩余的数据,对一个特定的变量(可以理解成数据库中表的属性,即列)进行描述。
· 间接数据挖掘
目标中没有选出某一具体的变量,用模型进行描述;而是在所有的变量中建立起某种关系 。
· 分类、估值、预言属于直接数据挖掘;后三种属于间接数据挖掘
3)各种分析方法的简介
· 分类 (Classification)
首先从数据中选出已经分好类的训练集,在该训练集上运用数据挖掘分类的技术,建立分类模型,对于没有分类的数据进行分类。
例子:
a. 信用卡申请者,分类为低、中、高风险
b. 分配客户到预先定义的客户分片
注意: 类的个数是确定的,预先定义好的
· 估值(Estimation)
估值与分类类似,不同之处在于,分类描述的是离散型变量的输出,而估值处理连续值的输出;分类的类别是确定数目的,估值的量是不确定的。
例子:
a. 根据购买模式,估计一个家庭的孩子个数
b. 根据购买模式,估计一个家庭的收入
c. 估计real estate的价值
一般来说,估值可以作为分类的前一步工作。给定一些输入数据,通过估值,得到未知的连续变量的值,然后,根据预先设定的阈值,进行分类。例如:银行对家庭贷款业务,运用估值,给各个客户记分(Score 0~1)。然后,根据阈值,将贷款级别分类。
· 预言(Prediction)
通常,预言是通过分类或估值起作用的,也就是说,通过分类或估值得出模型,该模型用于对未知变量的预言。从这种意义上说,预言其实没有必要分为一个单独的类。预言其目的是对未来未知变量的预测,这种预测是需要时间来验证的,即必须经过一定时间后,才知道预言准确性是多少。
· 相关性分组或关联规则(Affinity grouping or association rules)
决定哪些事情将一起发生。
例子:
a. 超市中客户在购买A的同时,经常会购买B,即A => B(关联规则)
b. 客户在购买A后,隔一段时间,会购买B (序列分析)
· 聚集(Clustering)
聚集是对记录分组,把相似的记录在一个聚集里。聚集和分类的区别是聚集不依赖于预先定义好的类,不需要训练集。
例子:
a. 一些特定症状的聚集可能预示了一个特定的疾病
b. 租VCD类型不相似的客户聚集,可能暗示成员属于不同的亚文化群
聚集通常作为数据挖掘的第一步。例如,"哪一种类的促销对客户响应最好?",对于这一 类问题,首先对整个客户做聚集,将客户分组在各自的聚集里,然后对每个不同的聚集,回答问题,可能效果更好。
· 描述和可视化(Des cription and Visualization)
是对数据挖掘结果的表示方式。
·定义问题:清晰地定义出业务问题,确定数据挖掘的目的。·数据准备:数据准备包括:选择数据--在大型数据库和数据仓库目标中提取数据挖掘的目标数据集;数据预处理--进行数据再加工,包括检查数据的完整性及数据的一致性、去噪声,填补丢失的域,删除无效数据等。
·数据挖掘:根据数据功能的类型和和数据的特点选择相应的算法,在净化和转换过的数据集上进行数据挖掘。
·结果分析:对数据挖掘的结果进行解释和评价,转换成为能够最终被用户理解的知识。
·知识的运用:将分析所得到的知识集成到业务信息系统的组织结构中去。
数据挖掘首先是需要商业环境中收集了大量的数据,然后要求挖掘的知识是有价值的。有 价值对商业而言,不外乎三种情况:降低开销;提高收入;增加股票价格。
在技术上可以根据它的工作过程分为:数据的抽取、数据的存储和管理、数据的展现等关键技术。
·数据的抽取
数据的抽取是数据进入仓库的入口。由于数据仓库是一个独立的数据环境,它需要通过抽取过程将数据从联机事务处理系统、外部数据源、脱机的数据存储介质 中导入数据仓库。数据抽取在技术上主要涉及互连、复制、增量、转换、调度和监控等几个方面的处理。在数据抽取方面,未来的技术发展将集中在系统功能集成化 方面,以适应数据仓库本身或数据源的变化,使系统更便于管理和维护。
·数据的存储和管理
数据仓库的组织管理方式决定了它有别于传统数据库的特性,也决定了其对外部数据的表现形式。数据仓库管理所涉及的数据量比传统事务处理大得多,且随时 间的推移而快速累积。在数据仓库的数据存储和管理中需要解决的是如何管理大量的数据、如何并行处理大量的数据、如何优化查询等。目前,许多数据库厂家提供 的技术解决方案是扩展关系型数据库的功能,将普通关系数据库改造成适合担当数据仓库的服务器。
·数据的展现
在数据展现方面主要的方式有:
查询:实现预定义查询、动态查询、OLAP查询与决策支持智能查询;报表:产生关系数据表格、复杂表格、OLAP表格、报告以及各种综合报表;可视 化:用易于理解的点线图、直方图、饼图、网状图、交互式可视化、动态模拟、计算机动画技术表现复杂数据及其相互关系;统计:进行平均值、最大值、最小值、 期望、方差、汇总、排序等各种统计分析;挖掘:利用数据挖掘等方法,从数据中得到关于数据关系和模式的知识。
数据挖掘和数据仓库的协同工作,一方面,可以迎合和简化数据挖掘过程中的重要步骤,提高数据挖掘的效率和能力,确保数据挖掘中数据来源的广泛性和完整性。另一方面,数据挖掘技术已经成为数据仓库应用中极为重要和相对独立的方面和工具。
数据挖掘和数据仓库是融合与互动发展的,其学术研究价值和应用研究前景将是令人振奋的。它是数据挖掘专家、数据仓库技术人员和行业专家共同努力的成果,更是广大渴望从数据库“奴隶”到数据库“主人”转变的企业最终用户的通途。
统计学与数据挖掘
统计学和数据挖掘有着共同的目标:发现数据中的结构。事实上,由于它们的目标相似,一些人(尤其是统计学家)认为数据挖掘是统计学的分支。这是一个不切合 实际的看法。因为数据挖掘还应用了其它领域的思想、工具和方法,尤其是计算机学科,例如数据库技术和机器学习,而且它所关注的某些领域和统计学家所关注的 有很大不同。
统计学和数据挖掘研究目标的重迭自然导致了迷惑。事实上,有时候还导致了反感。统计学有着正统的理论基础(尤其是经过本世纪的发展),而现在又出现了一个 新的学科,有新的主人,而且声称要解决统计学家们以前认为是他们领域的问题。这必然会引起关注。更多的是因为这门新学科有着一个吸引人的名字,势必会引发 大家的兴趣和好奇。把“数据挖掘”这个术语所潜在的承诺和“统计学”作比较的话,统计的最初含义是“陈述事实”,以及找出枯燥的大量数据背后的有意义的信 息。当然,统计学的现代的含义已经有很大不同的事实。而且,这门新学科同商业有特殊的关联(尽管它还有科学及其它方面的应用)。
本文的目的是逐个考察这两门学科的性质,区分它们的异同,并关注与数据挖掘相关联的一些难题。首先,我们注意到“数据挖掘”对统计学家来说并不陌生。例 如,Everitt定义它为:“仅仅是考察大量的数据驱动的模型,从中发现最适合的”。统计学家因而会忽略对数据进行特别的分析,因为他们知道太细致的研 究却难以发现明显的结构。尽管如此,事实上大量的数据可能包含不可预测的但很有价值的结构。而这恰恰引起了注意,也是当前数据挖掘的任务。
1.统计学的性质
试图为统计学下一个太宽泛的定义是没有意义的。尽管可能做到,但会引来很多异议。相反,我要关注统计学不同于数据挖掘的特性。
差异之一同上节中最后一段提到的相关,即统计学是一门比较保守的学科,目前有一种趋势是越来越精确。当然,这本身并不是坏事,只有越精确才能避免错误,发 现真理。但是如果过度的话则是有害的。这个保守的观点源于统计学是数学的分支这样一个看法,我是不同意这个观点的,尽管统计学确实以数学为基础(正如物理 和工程也以数学为基础,但没有被认为是数学的分支),但它同其它学科还有紧密的联系。
数学背景和追求精确加强了这样一个趋势:在采用一个方法之前先要证明,而不是象计算机科学和机器学习那样注重经验。这就意味着有时候和统计学家关注同一问 题的其它领域的研究者提出一个很明显有用的方法,但它却不能被证明(或还不能被证明)。统计杂志倾向于发表经过数学证明的方法而不是一些特殊方法。数据挖 掘作为几门学科的综合,已经从机器学习那里继承了实验的态度。这并不意味着数据挖掘工作者不注重精确,而只是说明如果方法不能产生结果的话就会被放弃。
正是统计文献显示了(或夸大了)统计的数学精确性。同时还显示了其对推理的侧重。尽管统计学的一些分支也侧重于描述,但是浏览一下统计论文的话就会发现这 些文献的核心问题就是在观察了样本的情况下如何去推断总体。当然这也常常是数据挖掘所关注的。下面我们会提到数据挖掘的一个特定属性就是要处理的是一个大 数据集。这就意味着,由于可行性的原因,我们常常得到的只是一个样本,但是需要描述样本取自的那个大数据集。然而,数据挖掘问题常常可以得到数据总体,例 如关于一个公司的所有职工数据,数据库中的所有客户资料,去年的所有业务。在这种情形下,推断就没有价值了(例如,年度业务的平均值),因为观测到的值也 就是估计参数。这就意味着,建立的统计模型可能会利用一系列概率表述(例如,一些参数接近于0,则会从模型中剔除掉),但当总体数据可以获得的话,在数据 挖掘中则变得毫无意义。在这里,我们可以很方便的应用评估函数:针对数据的足够的表述。事实是,常常所关注的是模型是否合适而不是它的可行性,在很多情形 下,使得模型的发现很容易。例如,在寻找规则时常常会利用吻合度的单纯特性(例如,应用分支定理)。但当我们应用概率陈述时则不会得到这些特性。
统计学和数据挖掘部分交迭的第三个特性是在现代统计学中起核心作用的“模型”。或许“模型”这个术语更多的含义是变化。一方面,统计学模型是基于分析变量 间的联系,但另一方面这些模型关于数据的总体描述确实没有道理的。关于信用卡业务的回归模型可能会把收入作为一个独立的变量,因为一般认为高收入会导致大 的业务。这可能是一个理论模型(尽管基于一个不牢靠的理论)。与此相反,只需在一些可能具有解释意义的变量基础上进行逐步的搜索,从而获得一个有很大预测 价值的模型,尽管不能作出合理的解释。(通过数据挖掘去发现一个模型的时候,常常关注的就是后者)。
还有其它方法可以区分统计模型,但在这里我将不作探讨。这里我想关注的是,现代统计学是以模型为主的。而计算,模型选择条件是次要的,只是如何建立一个好 的模型。但在数据挖掘中,却不完全是如此。在数据挖掘中,准则起了核心的作用。(当然在统计学中有一些以准则为中心的独立的特例。Gifi的关于学校的非 线性多变量分析就是其中之一。例如,Gifi说,在本书中我们持这样的观点,给定一些最常用的MVA(多变量分析)问题,既可以从模型出发也可以技术出 发。正如我们已经在1.1节所看到的基于模型的经典的多变量统计分析,……然而,在很多情形下,模型的选择并不都是显而易见的,选择一个合适的模型是不可 能的,最合适的计算方法也是不可行的。在这种情形下,我们从另外一个角度出发,应用设计的一系列技术来回答MVA问题,暂不考虑模型和最优判别的选择。
相对于统计学而言,准则在数据挖掘中起着更为核心的作用并不奇怪,数据挖掘所继承的学科如计算机科学及相关学科也是如此。数据集的规模常常意味着传统的统 计学准则不适合数据挖掘问题,不得不重新设计。部分地,当数据点被逐一应用以更新估计量,适应性和连续性的准则常常是必须的。尽管一些统计学的准则已经得 到发展,但更多的应用是机器学习。(正如“学习”所示的那样)
很多情况下,数据挖掘的本质是很偶然的发现非预期但很有价值的信息。这说明数据挖掘过程本质上是实验性的。这和确定性的分析是不同的。(实际上,一个人是 不能完全确定一个理论的,只能提供证据和不确定的证据。)确定性分析着眼于最适合的模型-建立一个推荐模型,这个模型也许不能很好的解释观测到的数据。很 多,或许是大部分统计分析提出的是确定性的分析。然而,实验性的数据分析对于统计学并不是新生事务,或许这是统计学家应该考虑作为统计学的另一个基石,而 这已经是数据挖掘的基石。所有这些都是正确的,但事实上,数据挖掘所遇到的数据集按统计标准来看都是巨大的。在这种情况下,统计工具可能会失效:百万个偶 然因素可能就会使其失效。
如果数据挖掘的主要目的是发现,那它就不关心统计学领域中的在回答一个特定的问题之前,如何很好的搜集数据,例如实验设计和调查设计。数据挖掘本质上假想数据已经被搜集好,关注的只是如何发现其中的秘密。
2.数据挖掘的性质
由于统计学基础的建立在计算机的发明和发展之前,所以常用的统计学工具包含很多可
以手工实现的方法。因此,对于很多统计学家来说,1000个数据就已经是很大的了。但这个“大”对于英国大的信用卡公司每年350,000,000笔业务 或AT&T每天200,000,000个长途呼叫来说相差太远了。很明显,面对这么多的数据,则需要设计不同于那些“原则上可以用手工实现”的方 法。这意味这计算机(正是计算机使得大数据可能实现)对于数据的分析和处理是关键的。分析者直接处理数据将变得不可行。相反,计算机在分析者和数据之间起 到了必要的过滤的作用。这也是数据挖掘特别注重准则的另一原因。尽管有必要,把分析者和数据分离开很明显导致了一些关联任务。这里就有一个真正的危险:非 预期的模式可能会误导分析者,这一点我下面会讨论。
我不认为在现代统计中计算机不是一个重要的工具。它们确实是,并不是因为数据的规模。对数据的精确分析方法如bootstrap方法、随机测试,迭代估计 方法以及比较适合的复杂的模型正是有了计算机才是可能的。计算机已经使得传统统计模型的视野大大的扩展了,还促进了新工具的飞速发展。
下面来关注一下歪曲数据的非预期的模式出现的可能性。这和数据质量相关。所有数据分析的结论依赖于数据质量。GIGO的意思是垃圾进,垃圾出,它的引用到 处可见。一个数据分析者,无论他多聪明,也不可能从垃圾中发现宝石。对于大的数据集,尤其是要发现精细的小型或偏离常规的模型的时候,这个问题尤其突出。 当一个人在寻找百万分之一的模型的时候,第二个小数位的偏离就会起作用。一个经验丰富的人对于此类最常见的问题会比较警觉,但出错的可能性太多了。
此类问题可能在两个层次上产生。第一个是微观层次,即个人记录。例如,特殊的属性可能丢失或输错了。我知道一个案例,由于挖掘者不知道,丢失的数据被记录 为99而作为真实的数据处理。第二个是宏观层次,整个数据集被一些选择机制所歪曲。交通事故为此提供了一个好的示例。越严重的、致命的事故,其记录越精 确,但小的或没有伤害的事故的记录却没有那么精确。事实上,很高比例的数据根本没有记录。这就造成了一个歪曲的映象-可能会导致错误的结论。
统计学很少会关注实时分析,然而数据挖掘问题常常需要这些。例如,银行事务每天都会发生,没有人能等三个月得到一个可能的欺诈的分析。类似的问题发生在总体随时间变化的情形。我的研究组有明确的例子显示银行债务的申请随时间、竞争环境、经济波动而变化。
至此,我们已经论述了数据分析的问题,说明了数据挖掘和统计学的差异,尽管有一定的重迭。但是,数据挖掘者也不可持完全非统计的观点。首先来看一个例子: 获得数据的问题。统计学家往往把数据看成一个按变量交叉分类的平面表,存储于计算机等待分析。如果数据量较小,可以读到内存,但在许多数据挖掘问题中这是 不可能的。更糟糕的是,大量的数据常常分布在不同的计算机上。或许极端的是,数据分布在全球互联网上。此类问题使得获得一个简单的样本不大可能。(先不管 分析“整个数据集”的可能性,如果数据是不断变化的这一概念可能是不存在的,例如电话呼叫)
当描述数据挖掘技术的时候,我发现依据以建立模型还是模式发现为目的可以很方便的区分两类常见的工具。我已经提到了模型概念在统计学中的核心作用。在建立 模型的时候,尽量要概括所有的数据,以及识别、描述分布的形状。这样的“全”模型的例子如对一系列数据的聚类分析,回归预测模型,以及基于树的分类法则。 相反,在模式发现中,则是尽量识别小的(但不一定不重要)偏差,发现行为的异常模式。例如EEG轨迹中的零星波形、信用卡使用中的异常消费模式,以及不同 于其它特征的对象。很多时候,这第二种实验是数据挖掘的本质-试图发现渣滓中的金块。然而,第一类实验也是重要的。当关注的是全局模型的建立的话,样本是 可取的(可以基于一个十万大小的样本发现重要的特性,这和基于一个千万大小的样本是等效的,尽管这部分的取决于我们想法的模型的特征。然而,模式发现不同 于此。仅选择一个样本的话可能会忽略所希望检测的情形。
尽管统计学主要关注的是分析定量数据,数据挖掘的多来源意味着还需要处理其它形式的数据。特别的,逻辑数据越来越多-例如当要发现的模式由连接的和分离的 要素组成的时候。类似的,有时候会碰到高度有序的结构。分析的要素可能是图象,文本,语言信号,或者甚至完全是(例如,在交替分析中)科学研究资料。
3.讨论
数据挖掘有时候是一次性的实验。这是一个误解。它更应该被看作是一个不断的过程(尽
管数据集时确定的)。从一个角度检查数据可以解释结果,以相关的观点检查可能会更接近等等。关键是,除了极少的情形下,很少知道哪一类模式是有意义的。数据挖掘的本质是发现非预期的模式-同样非预期的模式要以非预期的方法来发现。
与把数据挖掘作为一个过程的观点相关联的是认识到结果的新颖性。许多数据挖掘的结果是我们所期望的-可以回顾。然而,可以解释这个事实并不能否定挖掘出它 们的价值。没有这些实验,可能根本不会想到这些。实际上,只有那些可以依据过去经验形成的合理的解释的结构才会是有价值的。
显然在数据挖掘存在着一个潜在的机会。在大数据集中发现模式的可能性当然存在,大数据集的数量与日俱增。然而,也不应就此掩盖危险。所有真正的数据集(即 使那些是以完全自动方式搜集的数据)都有产生错误的可能。关于人的数据集(例如事务和行为数据)尤其有这种可能。这很好的解释了绝大部分在数据中发现的 “非预期的结构”本质上是无意义的,而是因为偏离了理想的过程。(当然,这样的结构可能会是有意义的:如果数据有问题,可能会干扰搜集数据的目的,最好还 是了解它们)。与此相关联的是如何确保(和至少为事实提供支持)任何所观察到的模式是“真实的”,它们反应了一些潜在的结构和关联而不仅仅是一个特殊的数 据集,由于一个随机的样本碰巧发生。在这里,记分方法可能是相关的,但需要更多的统计学家和数据挖掘工作者的研究。
数据挖掘相关的10个问题
NO.1 Data Mining 和统计分析有什么不同?
硬要去区分Data Mining和Statistics的差异其实是没有太大意义的。一般将之定义为Data Mining技术的CART、CHAID或模糊计算等等理论方法,也都是由统计学者根据统计理论所发展衍生,换另一个角度看,Data Mining有相当大的比重是由高等统计学中的多变量分析所支撑。但是为什么Data Mining的出现会引发各领域的广泛注意呢?主要原因在相较于传统统计分析而言,Data Mining有下列几项特性:
1.处理大量实际数据更强势,且无须太专业的统计背景去使用Data Mining的工具;
2.数据分析趋势为从大型数据库抓取所需数据并使用专属计算机分析软件,Data Mining的工具更符合企业需求;
3. 纯就理论的基础点来看,Data Mining和统计分析有应用上的差别,毕竟Data Mining目的是方便企业终端用户使用而非给统计学家检测用的。
NO.2 Data Warehousing 和 Data Mining 的关系为何?
若将Data Warehousing(数据仓库)比喻作矿坑,Data Mining就是深入矿坑采矿的工作。毕竟Data Mining不是一种无中生有的魔术,也不是点石成金的炼金术,若没有够丰富完整的数据,是很难期待Data Mining能挖掘出什么有意义的信息的。
要将庞大的数据转换成为有用的信息,必须先有效率地收集信息。随着科技的进步,功能完善的数据库系统就成了最好的收集数据的工具。数据仓库,简单地说,就 是搜集来自其它系统的有用数据,存放在一整合的储存区内。所以其实就是一个经过处理整合,且容量特别大的关系型数据库,用以储存决策支持系统 (Design Support System)所需的数据,供决策支持或数据分析使用。从信息技术的角度来看,数据仓库的目标是在组织中,在正确的时间,将正确的数据交给正确的人。
许多人对于Data Warehousing和Data Mining时常混淆,不知如何分辨。其实,数据仓库是数据库技术的一个新主题,利用计算机系统帮助我们操作、计算和思考,让作业方式改变,决策方式也跟着改变。
数据仓库本身是一个非常大的数据库,它储存着由组织作业数据库中整合而来的数据,特别是指事务处理系统OLTP(On-Line Transactional Processing)所得来的数据。将这些整合过的数据置放于数据昂哭中,而公司的决策者则利用这些数据作决策;但是,这个转换及整合数据的过程,是建 立一个数据仓库最大的挑战。因为将作业中的数据转换成有用的的策略性信息是整个数据仓库的重点。综上所述,数据仓库应该具有这些数据:整合性数据 (integrated data)、详细和汇总性的数据(detailed and summarized data)、历史数据、解释数据的数据。从数据仓库挖掘出对决策有用的信息与知识,是建立数据仓库与使用Data Mining的最大目的,两者的本质与过程是两回事。换句话说,数据仓库应先行建立完成,Data mining才能有效率的进行,因为数据仓库本身所含数据是干净(不会有错误的数据参杂其中)、完备,且经过整合的。因此两者关系或许可解读为Data Mining是从巨大数据仓库中找出有用信息的一种过程与技术。
NO.3 OLAP 能不能代替 Data Mining?
所谓OLAP(Online Analytical Process)意指由数据库所连结出来的在线分析处理程序。有些人会说:「我已经有OLAP的工具了,所以我不需要Data Mining。」事实上两者间是截然不同的,主要差异在于Data Mining用在产生假设,OLAP则用于查证假设。简单来说,OLAP是由使用者所主导,使用者先有一些假设,然后利用OLAP来查证假设是否成立;而 Data Mining则是用来帮助使用者产生假设。所以在使用OLAP或其它Query的工具时,使用者是自己在做探索(Exploration),但Data Mining是用工具在帮助做探索。
举个例子来看,一市场分析师在为超市规划货品架柜摆设时,可能会先假设婴儿尿布和婴儿奶粉会是常被一起购买的产品,接着便可利用OLAP的工具去验证此假 设是否为真,又成立的证据有多明显;但Data Mining则不然,执行Data Mining的人将庞大的结帐数据整理后,并不需要假设或期待可能的结果,透过Mining技术可找出存在于数据中的潜在规则,于是我们可能得到例如尿布 和啤酒常被同时购买的意料外之发现,这是OLAP所做不到的。
Data Mining常能挖掘出超越归纳范围的关系,但OLAP仅能利用人工查询及可视化的报表来确认某些关系,是以Data Mining此种自动找出甚至不会被怀疑过的数据模型与关系的特性,事实上已超越了我们经验、教育、想象力的限制,OLAP可以和Data Mining互补,但这项特性是Data Mining无法被OLAP取代的。
NO.4 完整的Data Mining 包含哪些步骤?
以下提供一个Data Mining的进行步骤以为参考:
1. 理解业务与理解数据;
2. 获取相关技术与知识;
3. 整合与查询数据;
4. 去除错误或不一致及不完整的数据;
5. 由数据选取样本先行试验;
6. 建立数据模型
7. 实际Data Mining的分析工作;
8. 测试与检验;
9. 找出假设并提出解释;
10. 持续应用于企业流程中。
由上述步骤可看出,Data Mining牵涉了大量的准备工作与规划过程,事实上许多专家皆认为整套Data Mining的进行有80﹪的时间精力是花费在数据前置作业阶段,其中包含数据的净化与格式转换甚或表格的连结。由此可知Data Mining只是信息挖掘过程中的一个步骤而已,在进行此步骤前还有许多的工作要先完成。
NO.5 Data Mining 运用了哪些理论与技术?
Data Mining是近年来数据库应用技术中相当热门的议题,看似神奇、听来时髦,实际上却也不是什么新东西,因其所用之诸如预测模型、数据分割,连结分析 (Link Analysis)、偏差侦测(Deviation Detection)等,美国早在二次世界大战前就已应用运用在人口普查及军事等方面。
随着信息科技超乎想象的进展,许多新的计算机分析工具问世,例如关系型数据库、模糊计算理论、基因算法则以及类神经网络等,使得从数据中发掘宝藏成为一种系统性且可实行的程序。
一般而言,Data Mining的理论技术可分为传统技术与改良技术两支。传统技术以统计分析为代表,统计学内所含序列统计、概率论、回归分析、类别数据分析等都属于传统数 据挖掘技术,尤其 Data Mining 对象多为变量繁多且样本数庞大的数据,是以高等统计学里所含括之多变量分析中用来精简变量的因素分析(Factor Analysis)、用来分类的判别分析(Discriminant Analysis),以及用来区隔群体的分群分析(Cluster Analysis)等,在Data Mining过程中特别常用。
在改良技术方面,应用较普遍的有决策树理论(Decision Trees)、类神经网络(Neural Network)以及规则归纳法(Rules Induction)等。决策树是一种用树枝状展现数据受各变量的影响情形之预测模型,根据对目标变量产生之效应的不同而建构分类的规则,一般多运用在对 客户数据的分析上,例如针对有回函与未回含的邮寄对象找出影响其分类结果的变量组合,常用分类方法为CART(Classification and Regression Trees)及CHAID(Chi-Square Automatic Interaction Detector)两种。
类神经网络是一种仿真人脑思考结构的数据分析模式,由输入之变量与数值中自我学习并根据学习经验所得之知识不断调整参数以期建构数据的型样 (patterns)。类神经网络为非线性的设计,与传统回归分析相比,好处是在进行分析时无须限定模式,特别当数据变量间存有交互效应时可自动侦测出; 缺点则在于其分析过程为一黑盒子,故常无法以可读之模型格式展现,每阶段的加权与转换亦不明确,是故类神经网络多利用于数据属于高度非线性且带有相当程度 的变量交感效应时。
规则归纳法是知识发掘的领域中最常用的格式,这是一种由一连串的「如果…/则…(If / Then)」之逻辑规则对数据进行细分的技术,在实际运用时如何界定规则为有效是最大的问题,通常需先将数据中发生数太少的项目先剔除,以避免产生无意义的逻辑规则。
NO.6 Data Mining包含哪些主要功能?
Data Mining实际应用功能可分为三大类六分项来说明:Classification和Clustering属于分类区隔类;Regression和Time-series属于推算预测类;Association和Sequence则属于序列规则类。
Classification是根据一些变量的数值做计算,再依照结果作分类。(计算的结果最后会被分类为几个少数的离散数值,例如将一组数据分为 "可能会响应" 或是 "可能不会响应" 两类)。Classification常被用来处理如前所述之邮寄对象筛选的问题。我们会用一些根据历史经验已经分类好的数据来研究它们的特征,然后再根 据这些特征对其他未经分类或是新的数据做预测。这些我们用来寻找特征的已分类数据可能是来自我们的现有的客户数据,或是将一个完整数据库做部份取样,再经 由实际的运作来测试;譬如利用一个大型邮寄对象数据库的部份取样来建立一个Classification Model,再利用这个Model来对数据库的其它数据或是新的数据作分类预测。
Clustering用在将数据分群,其目的在于将群间的差异找出来,同时也将群内成员的相似性找出来。Clustering与Classification不同的是,在分析前并不知道会以何种方式或根据来分类。所以必须要配合专业领域知识来解读这些分群的意义。
Regression是使用一系列的现有数值来预测一个连续数值的可能值。若将范围扩大亦可利用Logistic Regression来预测类别变量,特别在广泛运用现代分析技术如类神经网络或决策树理论等分析工具,推估预测的模式已不在止于传统线性的局限,在预测 的功能上大大增加了选择工具的弹性与应用范围的广度。
Time-Series Forecasting与Regression功能类似,只是它是用现有的数值来预测未来的数值。两者最大差异在于Time-Series所分析的数值都 与时间有关。Time-Series Forecasting的工具可以处理有关时间的一些特性,譬如时间的周期性、阶层性、季节性以及其它的一些特别因素(如过去与未来的关连性)。
Association是要找出在某一事件或是数据中会同时出现的东西。举例而言,如果A是某一事件的一种选择,则B也出现在该事件中的机率有多少。(例如:如果顾客买了火腿和柳橙汁,那么这个顾客同时也会买牛奶的机率是85%。)
Sequence Discovery与Association关系很密切,所不同的是Sequence Discovery中事件的相关是以时间因素来作区隔(例如:如果A股票在某一天上涨12%,而且当天股市加权指数下降,则B股票在两天之内上涨的机率是 68%)。
NO.7 Data Mining在各领域的应用情形为何?
Data Mining在各领域的应用非常广泛,只要该产业拥有具分析价值与需求的数据仓储或数据库,皆可利用Mining工具进行有目的的挖掘分析。一般较常见的应用案例多发生在零售业、直效行销界、制造业、财务金融保险、通讯业以及医疗服务等。
于销售数据中发掘顾客的消费习性,并可藉由交易纪录找出顾客偏好的产品组合,其它包括找出流失顾客的特征与推出新产品的时机点等等都是零售业常见的实例; 直效行销强调的分众概念与数据库行销方式在导入Data Mining的技术后,使直效行销的发展性更为强大,例如利用Data Mining分析顾客群之消费行为与交易纪录,结合基本数据,并依其对品牌价值等级的高低来区隔顾客,进而达到差异化行销的目的;制造业对Data Mining的需求多运用在品质控管方面,由制造过程中找出影响产品品质最重要的因素,以期提高作业流程的效率。
近来电话公司、信用卡公司、保险公司以及股票交易商对于诈欺行为的侦测(Fraud Detection)都很有兴趣,这些行业每年因为诈欺行为而造成的损失都非常可观,Data Mining可以从一些信用不良的客户数据中找出相似特征并预测可能的诈欺交易,达到减少损失的目的。财务金融业可以利用 Data Mining来分析市场动向,并预测个别公司的营运以及股价走向。Data Mining的另一个独特的用法是在医疗业,用来预测手术、用药、诊断、或是流程控制的效率。
NO.8 Web Mining 和Data Mining有什么不同?
如果将Web视为CRM的一个新的Channel,则Web Mining便可单纯看做Data Mining应用在网络数据的泛称。
该如何测量一个网站是否成功?哪些内容、优惠、广告是人气最旺的?主要访客是哪些人?什么原因吸引他们前来?如何从堆积如山之大量由网络所得数据中找出让 网站运作更有效率的操作因素?以上种种皆属Web Mining 分析之范畴。Web Mining 不仅只限于一般较为人所知的log file分析,除了计算网页浏览率以及访客人次外,举凡网络上的零售、财务服务、通讯服务、政府机关、医疗咨询、远距教学等等,只要由网络连结出的数据库 够大够完整,所有Off-Line可进行的分析,Web Mining都可以做,甚或更可整合Off-Line及On-Line的数据库,实施更大规模的模型预测与推估,毕竟凭借网际网络的便利性与渗透力再配合 网络行为的可追踪性与高互动特质,一对一行销的理念是最有机会在网络世界里完全落实的。
整体而言,Web Mining具有以下特性:1. 数据收集容易且不引人注意,所谓凡走过必留下痕迹,当访客进入网站后的一切浏览行为与历程都是可以立即被纪录的;2. 以交互式个人化服务为终极目标,除了因应不同访客呈现专属设计的网页之外,不同的访客也会有不同的服务;3. 可整合外部来源数据让分析功能发挥地更深更广,除了log file、cookies、会员填表数据、线上调查数据、线上交易数据等由网络直接取得的资源外,结合实体世界累积时间更久、范围更广的资源,将使分析的 结果更准确也更深入。
利用Data Mining技术建立更深入的访客数据剖析,并赖以架构精准的预测模式,以期呈现真正智能型个人化的网络服务,是Web Mining努力的方向。
NO.9 Data Mining 在 CRM 中扮演的角色为何?
CRM(Customer Relationship Management)是近来引起热烈讨论与高度关切的议题,尤其在直效行销的崛起与网络的快速发展带动下,跟不上CRM的脚步如同跟不上时代。事实上 CRM并不算新发明,奥美直效行销推动十数年的CO(Customer Ownership)就是现在大家谈的CRM—客户关系管理。
Data Mining应用在CRM的主要方式可对应在Gap Analysis之三个部分:
针对Acquisition Gap,可利用Customer Profiling找出客户的一些共同的特征,希望能藉此深入了解客户,藉由Cluster Analysis对客户进行分群后再透过Pattern Analysis预测哪些人可能成为我们的客户,以帮助行销人员找到正确的行销对象,进而降低成本,也提高行销的成功率。
针对Sales Gap,可利用Basket Analysis帮助了解客户的产品消费模式,找出哪些产品客户最容易一起购买,或是利用Sequence Discovery预测客户在买了某一样产品之后,在多久之内会买另一样产品等等。利用 Data Mining可以更有效的决定产品组合、产品推荐、进货量或库存量,甚或是在店里要如何摆设货品等,同时也可以用来评估促销活动的成效。
针对Retention Gap,可以由原客户后来却转成竞争对手的客户群中,分析其特征,再根据分析结果到现有客户数据中找出可能转向的客户,然后设计一些方法预防客户流失;更 有系统的做法是藉由Neural Network根据客户的消费行为与交易纪录对客户忠诚度进行Scoring的排序,如此则可区隔流失率的等级进而配合不同的策略。
CRM不是设一个(080)客服专线就算了,更不仅只是把一堆客户基本数据输入计算机就够,完整的CRM运作机制在相关的硬软件系统能健全的支持之前,有 太多的数据准备工作与分析需要推动。企业透过Data Mining可以分别针对策略、目标定位、操作效能与测量评估等四个切面之相关问题,有效率地从市场与顾客所搜集累积之大量数据中挖掘出对消费者而言最关 键、最重要的答案,并赖以建立真正由客户需求点出发的客户关系管理。
NO.10 目前业界有哪些常用的Data Mining分析工具?
Data Mining工具市场大致可分为三类:
1. 一般分析目的用的软件包
SAS Enterprise Miner
IBM Intelligent Miner
Unica PRW
SPSS Clementine
SGI MineSet
Oracle Darwin
Angoss KnowledgeSeeker
2. 针对特定功能或产业而研发的软件
KD1(针对零售业)
Options & Choices(针对保险业)
HNC(针对信用卡诈欺或呆帐侦测)
Unica Model 1(针对行销业)
3. 整合DSS(Decision Support Systems)/OLAP/Data Mining的大型分析系统
Cognos Scenario and Business Objects