高维聚类知识发现关键技术研究及应用
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1.3 知识发现的过程

知识发现过程可粗略地理解为三部曲:数据准备(Data Preparation)、数据开采及结果解释评估(Interpretation and Evaluation,如图1.1所示。

1.数据准备

数据准备可分为三个子步骤:数据选取(Data Selection)、数据预处理(Data Preprocessing)和数据变换(Data Transformation)。数据选取的目的是确定发现任务的操作对象,即目标数据(Target Data),它是根据用户的需要从原始数据库中抽取的一组数据。数据预处理一般包括消除噪声、推导计算缺值数据、消除重复记录、完成数据类型转换(如把连续值数据转换为离散型数据,以便于符号归纳;或者把离散型数据转换为连续型数据,以便于神经网络归纳)等。当数据开采的对象是数据仓库时,一般来说,数据预处理已经在生成数据仓库时完成了。数据变换的主要目的是消减数据维数或降维(Dimension Reduction),即从初始特征中找出真正有用的特征以减少数据开采时要考虑的特征或变量个数。

2.数据挖掘阶段

数据挖掘也称为数据开采。在这个阶段,首先要确定开采的任务或目的是什么,如数据总结、分类、聚类、关联规则发现或序列模式发现等。确定了开采任务后,就要决定使用什么样的开采算法。同样的任务可以用不同的算法来实现,选择实现算法有两个考虑因素:一是不同的数据有不同的特点,因此需要用与之相关的算法来处理;二是用户或实际运行系统的要求,有的用户可能希望获取描述型的(Descriptive)、容易理解的知识(采用规则表示的开采方法显然要好于神经网络之类的方法),而有的用户或系统的目的是获取预测准确度尽可能高的预测型(Predictive)知识,则选用的算法就要尽可能提供高精度的结果。

完成了上述准备工作后,就可以实施数据挖掘操作了。具体的挖掘方法涉及更多的内容,在本节不作详细描述,读者可参考相关资料。本书关注的核心是聚类算法,并且是针对高维数据的聚类挖掘算法。需要指出的是,尽管数据挖掘算法是知识发现的核心,也是目前研究人员的主要努力方向,但要获得好的挖掘效果,必须对各种挖掘算法的要求或前提假设有充分的理解和准备。

3.结果解释和评价

数据挖掘阶段发现出来的模式,经过用户或机器的评价,可能存在冗余或无关的模式,这时需要将其剔除;模式也可能不满足用户要求,这时则需要将整个发现过程退回到发现阶段之前,如重新选取数据,采用新的数据变换方法,设定新的数据挖掘参数值,甚至换一种挖掘算法(如当发现任务是分类时,有多种分类方法,不同的方法对不同的数据有不同的效果)。另外,由于KDD 最终是面向人类用户的,因此要对发现的模式进行可视化,或者把结果转换为用户易懂的另一种表示,如把分类决策树转换为“if…then…”的规则形式。

知识发现过程中要注意:

(1)数据挖掘仅仅是整个过程中的一个步骤。数据挖掘质量的好坏有两个影响因素,一是所采用的数据挖掘技术的有效性,二是用于采掘数据的质量和数量(数据量的多少)。如果选择了错误的数据或不适当的属性,或对数据进行了不适当的转换,则采掘的结果是不可能满足用户要求的。

(2)整个采掘过程是一个不断反馈的过程。比如,用户在采掘途中发现选择的数据不太好,或使用的采掘技术产生不了期望的结果,这时就需要重复先前的过程,甚至从头开始。

(3)可视化在数据挖掘的各个阶段都扮演着重要的角色。特别是,在数据准备阶段,用户可能使用散点图、直方图等统计可视化技术来显示有关数据,以期对数据有一个初步理解和宏观观察,从而为更好地选取数据打下基础;在开采阶段,用户则需要使用与领域问题有关的可视化工具;而在结果表示阶段,可视化技术对于用户理解和解释挖掘结果十分重要。