知识发现过程与应用结构.ppt
《知识发现过程与应用结构.ppt》由会员分享,可在线阅读,更多相关《知识发现过程与应用结构.ppt(55页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、主讲:赵宏庆主讲:赵宏庆数据挖掘原理与算法数据挖掘原理与算法数据挖掘原理与算法数据挖掘原理与算法第二章第二章 知识发现过程与应用结构知识发现过程与应用结构 2第二章第二章 知识发现过程与应用结构知识发现过程与应用结构 v2.1 2.1 知识发现的基本过程知识发现的基本过程 v2.2 2.2 数据库中的知识发现处理过程模型数据库中的知识发现处理过程模型v2.3 2.3 知识发现软件或工具的发展知识发现软件或工具的发展v2.4 2.4 知识发现项目的过程化管理知识发现项目的过程化管理 v2.5 2.5 数据挖掘语言介绍数据挖掘语言介绍 3如何学习本章内容如何学习本章内容v在上一章我们指出,数据挖掘
2、有广义和狭义两种理解。为在上一章我们指出,数据挖掘有广义和狭义两种理解。为了避免混淆,本章使用知识发现而把数据挖掘限制在上面了避免混淆,本章使用知识发现而把数据挖掘限制在上面所描述的狭义概念上。所描述的狭义概念上。4如何学习本章内容如何学习本章内容v虽然不同企业会有不同的业务逻辑,解决问题的具体方法有虽然不同企业会有不同的业务逻辑,解决问题的具体方法有所差异,但是它们进行知识发现的目的和基本思路是一致的。所差异,但是它们进行知识发现的目的和基本思路是一致的。v本章首先对知识发现的基本过程进行分析,旨在使读者从总本章首先对知识发现的基本过程进行分析,旨在使读者从总体上掌握知识发现的基本步骤和技术
3、。体上掌握知识发现的基本步骤和技术。v然后对目前比较流行的然后对目前比较流行的KDD过程处理模型进行剖析,了解过程处理模型进行剖析,了解KDD系统的应用体系结构。系统的应用体系结构。v通过对通过对KDD系统的基本技术环境和主要部件功能分析,对系统的基本技术环境和主要部件功能分析,对KDD系统的体系结构有一个更深入的了解。系统的体系结构有一个更深入的了解。v在此基础上对在此基础上对KDD软件和工具进行归纳、举例和分析,帮助软件和工具进行归纳、举例和分析,帮助读者在实际应用中学会选择和使用相应的软件和工具。读者在实际应用中学会选择和使用相应的软件和工具。5如何学习本章内容如何学习本章内容v本章也对
4、本章也对KDD系统项目的过程化管理、交互式数据挖掘过系统项目的过程化管理、交互式数据挖掘过程以及通用的程以及通用的KDD原型系统进行讨论,从软件项目管理角原型系统进行讨论,从软件项目管理角度来更好地理解度来更好地理解KDD过程。过程。v最后对数据挖掘语言的类型和特点进行介绍。最后对数据挖掘语言的类型和特点进行介绍。62.1 知识发现是一个系统化的工作知识发现是一个系统化的工作v从源数据中发现有用知识是一个系统化的工作。从源数据中发现有用知识是一个系统化的工作。首先必须对可以利用的源数据进行分析,确定合适的挖掘目标。首先必须对可以利用的源数据进行分析,确定合适的挖掘目标。然后才能着手系统的设计和
5、开发。然后才能着手系统的设计和开发。v完成从大型源数据中发现有价值知识的过程可以简单地概完成从大型源数据中发现有价值知识的过程可以简单地概括为:括为:首先从数据源中抽取感兴趣的数据,并把它组织成适合挖掘的数首先从数据源中抽取感兴趣的数据,并把它组织成适合挖掘的数据组织形式;据组织形式;然后,调用相应的算法生成所需的知识;然后,调用相应的算法生成所需的知识;最后对生成的知识模式进行评估,并把有价值的知识集成到企业最后对生成的知识模式进行评估,并把有价值的知识集成到企业的智能系统中。的智能系统中。v 一般地说,一般地说,KDD是一个多步骤的处理过程,一般分为是一个多步骤的处理过程,一般分为问题定义
6、、数据抽取、数据预处理、数据挖掘以及模式评问题定义、数据抽取、数据预处理、数据挖掘以及模式评估估等基本阶段。等基本阶段。7问题定义阶段的功能问题定义阶段的功能v KDD是为了在大量数据中发现有用的令人感兴趣的信息,是为了在大量数据中发现有用的令人感兴趣的信息,因此发现何种知识就成为整个过程中第一个也是最重要的因此发现何种知识就成为整个过程中第一个也是最重要的一个阶段。一个阶段。v在问题定义过程中,数据挖掘人员必须和领域专家以及最在问题定义过程中,数据挖掘人员必须和领域专家以及最终用户紧密协作终用户紧密协作一方面了解相关领域的有关情况,熟悉背景知识,弄清用户要求,一方面了解相关领域的有关情况,熟
7、悉背景知识,弄清用户要求,确定挖掘的目标等要求;确定挖掘的目标等要求;另一方面通过对各种学习算法的对比进而确定可用的学习算法。另一方面通过对各种学习算法的对比进而确定可用的学习算法。后续的学习算法选择和数据集准备都是在此基础上进行的。后续的学习算法选择和数据集准备都是在此基础上进行的。82.1.1 数据抽取与集成数据抽取与集成v数据抽取与集成是知识发现的关键性工作。早期的数据抽数据抽取与集成是知识发现的关键性工作。早期的数据抽取是依靠手工编程来实现的,现在可以通过高效的抽取工取是依靠手工编程来实现的,现在可以通过高效的抽取工具来实现。具来实现。v源数据库的选取以及从中抽取数据的原则和具体规则必
8、须源数据库的选取以及从中抽取数据的原则和具体规则必须依据系统的任务来界定。依据系统的任务来界定。主要任务是设计存储新数据的结构和准确定义它与源数据的转换主要任务是设计存储新数据的结构和准确定义它与源数据的转换和装载机制,以便正确地从每个数据源中抽取所需的数据。和装载机制,以便正确地从每个数据源中抽取所需的数据。这些结构和转换信息应该作为元数据(这些结构和转换信息应该作为元数据(Metadata)被存储起来。)被存储起来。v来自不同源的数据可能有模式定义上的差异,也可能存在来自不同源的数据可能有模式定义上的差异,也可能存在因数据冗余而无法确定有效数据的情形。此外,还要考虑因数据冗余而无法确定有效
9、数据的情形。此外,还要考虑数据库系统本身可能存在不兼容的情况数据库系统本身可能存在不兼容的情况 9数据清洗与预处理数据清洗与预处理 v在开始一个知识发现项目之前必须清晰地定义挖掘目标。在开始一个知识发现项目之前必须清晰地定义挖掘目标。因此,要提高挖掘结果的准确率,数据预处理是不可忽视因此,要提高挖掘结果的准确率,数据预处理是不可忽视的一步。的一步。v对数据进行预处理,一般需要对源数据进行再加工,检查对数据进行预处理,一般需要对源数据进行再加工,检查数据的完整性及数据的一致性,对其中的噪音数据进行平数据的完整性及数据的一致性,对其中的噪音数据进行平滑,对丢失的数据进行填补,消除滑,对丢失的数据进
10、行填补,消除“脏脏”数据,消除重复数据,消除重复记录等。记录等。v数据清洗是指去除或修补源数据中的不完整、不一致、含数据清洗是指去除或修补源数据中的不完整、不一致、含噪音的数据。噪音的数据。10数据清洗与预处理数据清洗与预处理 v常见的不完整数据的修补办法有:常见的不完整数据的修补办法有:使用一个全局值来填充(如使用一个全局值来填充(如“unknown”、估计的最大、估计的最大数或最小数)。数或最小数)。统计该属性的所有非空值,并用平均值来填充空缺项。统计该属性的所有非空值,并用平均值来填充空缺项。只使用同类对象的属性平均值填充。只使用同类对象的属性平均值填充。利用回归或工具预测最可能的值,并
11、用它来填充。利用回归或工具预测最可能的值,并用它来填充。v数据不一致可能是由于源数据库中对同样属性所使用的数数据不一致可能是由于源数据库中对同样属性所使用的数据类型、度量单位等不同而导致的。因此需要定义它们的据类型、度量单位等不同而导致的。因此需要定义它们的转换规则,并在挖掘前统一成一个形式。转换规则,并在挖掘前统一成一个形式。11数据的选择与整理数据的选择与整理v没有高质量的数据就不可能有高质量的挖掘结果。没有高质量的数据就不可能有高质量的挖掘结果。为了得到一个高质量的适合挖掘的数据子集,一方面为了得到一个高质量的适合挖掘的数据子集,一方面需要通过数据清洗来消除干扰性数据,另一方面也需需要通
12、过数据清洗来消除干扰性数据,另一方面也需要针对挖掘目标进行数据选择。要针对挖掘目标进行数据选择。数据选择的目的是辨别出需要分析的数据集合,缩小数据选择的目的是辨别出需要分析的数据集合,缩小处理范围,提高数据采掘的质量。处理范围,提高数据采掘的质量。数据选择可以使后面的数据挖掘工作聚焦到和挖掘任数据选择可以使后面的数据挖掘工作聚焦到和挖掘任务相关的数据子集中。不仅提高了挖掘效率,而且也务相关的数据子集中。不仅提高了挖掘效率,而且也保证了挖掘的准确性。保证了挖掘的准确性。12数据的选择与整理数据的选择与整理v利用数据变换或规约等技术可以将数据整理成适合进一步利用数据变换或规约等技术可以将数据整理成
13、适合进一步挖掘的数据格式。挖掘的数据格式。数据变换数据变换可以根据需要构造出新的属性以帮助理解分可以根据需要构造出新的属性以帮助理解分析数据的特点,或者将数据规范化,使之落在一个特析数据的特点,或者将数据规范化,使之落在一个特定的数据区间中。定的数据区间中。数据规约数据规约则是在尽可能保证数据完整性的基础上,将则是在尽可能保证数据完整性的基础上,将数据以其他方式进行表示,以减少数据存储空间,使数据以其他方式进行表示,以减少数据存储空间,使挖掘过程更有效。挖掘过程更有效。常用的规约策略有:数据立方体聚集、维规约、数据常用的规约策略有:数据立方体聚集、维规约、数据压缩、数值压缩和离散化等。压缩、数
14、值压缩和离散化等。132.1.4 数据挖掘阶段的功能数据挖掘阶段的功能v运用选定的数据挖掘算法,从数据中提取出用户所需要的运用选定的数据挖掘算法,从数据中提取出用户所需要的知识,这些知识可以用一种特定的方式表示。知识,这些知识可以用一种特定的方式表示。v选择数据挖掘算法有两个考虑因素:选择数据挖掘算法有两个考虑因素:一是不同的数据有不同的特点一是不同的数据有不同的特点,因此需要用与之相关,因此需要用与之相关的算法来挖掘;的算法来挖掘;二是用户或实际运行系统的要求二是用户或实际运行系统的要求,有的用户可能希望,有的用户可能希望获取描述型的(获取描述型的(Descriptive)、容易理解的知识(
15、采)、容易理解的知识(采用规则表示的挖掘方法显然要好于神经网络之类的方用规则表示的挖掘方法显然要好于神经网络之类的方法),而有的用户只是希望获取预测准确度尽可能高法),而有的用户只是希望获取预测准确度尽可能高的预测型(的预测型(Predictive)知识,并不在意获取的知识是)知识,并不在意获取的知识是否易于理解。否易于理解。142.1.5 知识评估阶段的功能知识评估阶段的功能v数据挖掘阶段发现出来的模式,经过评估,可能存在冗余数据挖掘阶段发现出来的模式,经过评估,可能存在冗余或无关的模式,这时需要将其剔除;或无关的模式,这时需要将其剔除;v也有可能模式不满足用户要求,这时则需要整个发现过程也
16、有可能模式不满足用户要求,这时则需要整个发现过程回退到前续阶段,如重新选取数据、采用新的数据变换方回退到前续阶段,如重新选取数据、采用新的数据变换方法、设定新的参数值,甚至换一种算法等等。法、设定新的参数值,甚至换一种算法等等。152.1.5 知识评估阶段的功能知识评估阶段的功能vKDD由于最终是面向人类用户的,因此可能要对发现的模由于最终是面向人类用户的,因此可能要对发现的模式进行可视化,或者把结果转换为用户易懂的另一种表示。式进行可视化,或者把结果转换为用户易懂的另一种表示。v所以知识评估阶段是所以知识评估阶段是KDD一个重要的必不可少的阶段,它一个重要的必不可少的阶段,它不仅担负着将不仅
17、担负着将KDD系统发现的知识以用户能了解的方式呈系统发现的知识以用户能了解的方式呈现,而且根据需要进行知识评价,如果和用户的挖掘目标现,而且根据需要进行知识评价,如果和用户的挖掘目标不一致就需要返回前面相应的步骤进行螺旋式处理以最终不一致就需要返回前面相应的步骤进行螺旋式处理以最终获得可用的知识。获得可用的知识。16知识发现需要多方合作知识发现需要多方合作v实施这样的项目不仅需要充足的资金,而且需要有良好的实施这样的项目不仅需要充足的资金,而且需要有良好的技术和人员储备。在整个的知识发现过程中,需要有不同技术和人员储备。在整个的知识发现过程中,需要有不同专长的技术人员支持。专长的技术人员支持。
18、业务分析人员业务分析人员:要求精通业务,能够解释业务对象,:要求精通业务,能够解释业务对象,并根据各业务对象确定出用于数据定义和挖掘算法的并根据各业务对象确定出用于数据定义和挖掘算法的业务需求。业务需求。数据分析人员数据分析人员:精通数据分析技术,并对统计学有较:精通数据分析技术,并对统计学有较熟练的掌握,有能力把业务需求转化为知识发现的各熟练的掌握,有能力把业务需求转化为知识发现的各步操作,并为每步操作选择合适的模型或工具。步操作,并为每步操作选择合适的模型或工具。数据管理人员数据管理人员:精通数据管理技术,并负责从数据库:精通数据管理技术,并负责从数据库或数据仓库中收集数据。或数据仓库中收
19、集数据。17第二章第二章 知识发现过程与应用结构知识发现过程与应用结构 v 知识发现的基本过程知识发现的基本过程 v2.2 2.2 数据库中的知识发现处理过程模型数据库中的知识发现处理过程模型v2.3 2.3 知识发现软件或工具的发展知识发现软件或工具的发展v2.4 2.4 知识发现项目的过程化管理知识发现项目的过程化管理 v2.5 2.5 数据挖掘语言介绍数据挖掘语言介绍 182.2.1 阶梯处理过程模型阶梯处理过程模型v多阶段流水处理模型:多阶段流水处理模型:192.2.2 螺旋处理过程模型螺旋处理过程模型v它强调领域专家参与的重要性,并以问题的定义为中心循它强调领域专家参与的重要性,并以
20、问题的定义为中心循环评测挖掘的结果。当结果不令人满意时,就需要重新定环评测挖掘的结果。当结果不令人满意时,就需要重新定义问题,开始新的处理循环。每次循环都使问题更清晰,义问题,开始新的处理循环。每次循环都使问题更清晰,结果更准确,因此是一个螺旋式上升过程。结果更准确,因此是一个螺旋式上升过程。202.2.3 以用户为中心的处理模型以用户为中心的处理模型vBrachman和和Anand从用户的角度对从用户的角度对KDD处理过程进行了处理过程进行了分析。他们认为数据库中的知识发现应该更着重于对用户分析。他们认为数据库中的知识发现应该更着重于对用户进行知识发现的整个过程的支持,而不是仅仅限于在数据进
21、行知识发现的整个过程的支持,而不是仅仅限于在数据挖掘的一个阶段上。该模型强调对用户与数据库的交互的挖掘的一个阶段上。该模型强调对用户与数据库的交互的支持。支持。212.2.4 联机联机KDD模型模型v实现联机交互式实现联机交互式KDD需要可视化技术支撑。这种可视化需要从需要可视化技术支撑。这种可视化需要从数据挖掘过程可视化、数据可视化、模型可视化和算法可视觉数据挖掘过程可视化、数据可视化、模型可视化和算法可视觉化等方面来理解。化等方面来理解。vOLAM(On Line Analytical Mining:联机分析挖掘)的概念:联机分析挖掘)的概念是是OLAP的发展。的发展。An OLAM Ar
22、chitectureData WarehouseMeta DataMDDBOLAMEngineOLAPEngineUser GUIAPIData Cube APIDatabase APIData cleaningData integrationL2OLAP/OLAML1MDDBL0Data RepositoryL3User InterfaceFiltering&IntegrationFilteringDatabasesMining queryMining result222.2.5 支持多数据源多知识模式的支持多数据源多知识模式的KDD处理模型处理模型v数据与方法相对独立。数据不是针对某一特定
23、知识模式,数据与方法相对独立。数据不是针对某一特定知识模式,而是针对某一类问题来抽取。而是针对某一类问题来抽取。v经过预处理后,这些数据对于某些挖掘算法来说可能存在经过预处理后,这些数据对于某些挖掘算法来说可能存在属性冗余、与目标无关等问题,因此在后面的阶段再进行属性冗余、与目标无关等问题,因此在后面的阶段再进行相关的数据清洗和选择工作,这样使得解决同一类问题的相关的数据清洗和选择工作,这样使得解决同一类问题的不同算法可以在统一的不同算法可以在统一的KDD平台上完成。平台上完成。模式评估模式评估数据挖掘数据挖掘数据选择数据预处理数据清洗模式选择数据集成数据抽取数据抽取问题定义Web/TEXTD
24、BDWDB/DW源数据备选数据Cube目标数据DB知识库用户知识模式库23第二章第二章 知识发现过程与应用结构知识发现过程与应用结构 v2.1 2.1 知识发现的基本过程知识发现的基本过程 v2.2 2.2 数据库中的知识发现处理过程模型数据库中的知识发现处理过程模型v2.3 2.3 知识发现软件或工具的发展知识发现软件或工具的发展v2.4 2.4 知识发现项目的过程化管理知识发现项目的过程化管理 v2.5 2.5 数据挖掘语言介绍数据挖掘语言介绍 242.3 知识发现软件的发展知识发现软件的发展v虽然市场上已经有许多所谓的知识发现系统或工具,但是,虽然市场上已经有许多所谓的知识发现系统或工具
25、,但是,这些工具只能用来辅助技术人员进行设计和开发,而且知这些工具只能用来辅助技术人员进行设计和开发,而且知识发现软件本身也正处于发展阶段,仍然存在各种各样需识发现软件本身也正处于发展阶段,仍然存在各种各样需要解决的问题。要解决的问题。v粗略地说,知识发现软件或工具的发展经历了独立的粗略地说,知识发现软件或工具的发展经历了独立的知识知识发现软件发现软件、横向的知识发现工具集横向的知识发现工具集和和纵向的知识发现解决纵向的知识发现解决方案方案三个主要阶段,其中后面两种反映了目前知识发现软三个主要阶段,其中后面两种反映了目前知识发现软件的两个主要发展方向。件的两个主要发展方向。252.3.1 独立
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 知识 发现 过程 应用 结构
限制150内