数据挖掘导论 第1章 绪论

第1章 绪论

1.1 什么是数据挖掘

数据挖掘是在大型数据存储库中,自动地发现有用信息的过程。

数据挖掘与知识发现

数据挖掘是数据库中知识发现(knowledge discovery in database,KDD)不可缺少的一部分,而KDD是将未加工的数据转换为有用信息的整个过程。如下图,KDD过程

输入数据:输入数据可以以各种形式存储(平展文件、电子数据表或关系表),并且可以驻留在集中的数据存储库中,或分布在多个站点上。

数据预处理:数据预处理的木得是将未加工的输入数据转换成合适分析的形式。数据预处理涉及的步骤包括融合来自多个数据源的数据,清洗数据以消除噪声和重复的观测值,选择与当前数据挖掘任务相关的记录和特征。

后处理:确保只将那些有效的和有用的结果集成到决策支持系统中。

1.2 数据挖掘要解决的问题

可伸缩:由于数据产生和收集技术的进步,海量数据集越来越普遍。如果数据挖掘算法要处理这些海量数据集,则算法必须是可伸缩的(特殊的搜索策略,新的数据结构,特殊的算法等)。使用抽样技术或开发并行和分布算法也可以提高可伸缩程度。

高维性:现在,常常遇到具有成百上千属性的数据集,而不是几十年前常见的只具有少量属性的数据集。为低纬数据开发的传统的数据分析技术通常不能很好地处理这样的高纬数据。此外,对于某些数据分析算法,随着维度(特征数)的增加,计算复杂性迅速增加。

异种数据和复杂数据:通常,传统的数据分析方法只处理包含相同类型属性的数据集,或者是连续的,或者是分类的。随着数据挖掘在商务、科学、医学和其他领域的作用越来越大,越来越需要能够处理异种属性的技术。这些非传统的数据类的例子有:含有半结构化文本和超链接的Web页面集、具有序列和三维结构的DNA数据等。为挖掘这种复杂对象而开发的技术应当考虑数据中的联系,如时间和空间的自相关性、图的连通性、半结构化文本和XML文档中元素之间的父子联系。

数据的所有权与分布:有时,需要分析的数据并非存放在一个站点,或归属一个机构,而是地理上分布在属于多个机构的资源中。这就需要开发分布式数据挖掘技术。分布式数据挖掘算法面临的主要挑战包括:(1)如何降低执行分布式计算所需的通信量?(2)如何有效地统一从多个资源得到的数据挖掘结果?(3)如何处理数据安全性问题?

非传统的分析:传统的统计方法基于一种假设-检验模式,即提出一种假设,设计实验来收集数据,然后针对假设分析数据。但是,这一过程劳力费神。当前的数据分析人物常常需要产生和评估数千种假设,因此需要自动地产生和评估假设,这促使人们开发了一些数据挖掘技术。

1.3 数据挖掘的起源

数据挖掘利用了来自如下一些领域的思想:(1)来自统计学的抽样、估计和假设检验 (2)人工智能、模式识别和机器学习的搜索算法、建模技术和学习理论。数据挖掘也迅速地接纳了来自其他领域的思想,这些领域包括最优化、进化计算、信息论、信号处理、可视化和信息检索。

一些其他领域也起到重要的支撑作用。特别地,需要数据库系统提供有效的存储、索引和查询处理支持。源于高性能(并行)计算的技术在处理海量数据集方面常常是重要的。分布式技术也能帮助处理海量数据,并且当数据不能集中到一起处理时更是至关重要。

1.4 数据挖掘任务

通常,数据挖掘任务分为下面两大类。

预测任务:这些任务的目标是根据其他属性的值,预测特定属性的值。被预测的属性一般称目标变量(target variable)或因变量(dependent variable),而用来做预测的属性称说明变量(explanatory variable)或自变量(independent variable)。

描述任务:其目标是导出概括数据中潜在联系的模式(相关、趋势、聚类、轨迹和异常)。本质上,描述性数据挖掘任务通常是探查性的,并且常常需要后处理技术验证和解释结果。

除此外,还有四种主要数据挖掘任务。

预测建模(predictive modeling):涉及以说明变量函数的方式为目标变量建立模型。有两类预测建模任务:分类(classification),用于预测离散的目标变量。回归(regression),用于预测连续的目标变量。

关联分析(association analysis):用来发现描述数据中强关联特征的模式。所发现的模式通常用蕴含规则或特征子集的形式表示。

聚类分析(cluster analysis):旨在发现紧密相关的观测值组群,使得与属于不同簇的观测值相比,属于同一簇的观测值相互之间尽可能类似。

异常检测(anomaly detection):识别其特征显著不同于其他数据的观测值。这样的观测值称为异常点(anomaly)或离群点(outlier)。

时间: 2024-10-29 10:45:42

数据挖掘导论 第1章 绪论的相关文章

数据挖掘导论 第1章

第1章 绪论 数据挖掘是在大型数据存储库中,自动地发现有用信息的过程. 数据挖掘是数据库中知识发现(knowledeg discovery in database,KDD)不可缺少的一部分,而KDD是将未加工的数据转换为有用信息的整个过程. KDD:输入数据→数据预处理→数据挖掘→后处理→信息 数据挖掘任务分为下面两个大类: 预测任务:这些任务的目标是根据其他属性的值,预测特定属性的值.被预测的属性一般称目标变量(target variable)或因变量(dependent variable),

数据挖掘导论 第4章 分类:基本概念、决策树与模型评估

第4章 分类:基本概念.决策树与模型评估 分类(classification):分类任务就是通过学习得到一个目标函数(target function)f,把每个属性集x映射到一个余弦定义的类标号y.目标函数也称为分类模型(classification model). 属性可以是离散的或者连续的,但类标号必须是离散的,这正是分类与回归(regression)的关键特征.回归是一种预测建模任务,其中目标属性y是连续的. 分类计数非常适合预测或描述二元或标称类型的数据集,对于序数分类,分类技术不太有效

【数据挖掘导论】——绪论

数据挖掘导论读书笔记之绪论 数据挖掘的前提:数据收集和数据存储技术的快速进步. 数据挖掘是一种技术,它将传统的数据分析方法与处理大量数据的复杂算法相结合.为探查和分析新的数据类型以及用新方法分析就有数据类型提供了令人振奋的机会. 数据挖掘是在大型数据存储库中,自动的发现有用信息的过程. 数据挖掘与知识发现 数据挖掘是数据库中知识发现不可缺少的一部分(knowledge deiscovery in database)KDD,KDD是将未加工的数据转换为有用信息的整个过程. 输入数据:输入各种形式存

构建之法读后感----第1章 绪论

首先,文章对于程序.用户需求.工程等等概念用了阿超给儿子编写的一个出题程序来分别解释了个中的含义,尤其是程序和工程的区别,程序大概就是用很多语言或工具编写的一个简单能实现目标要求的一行行代码,而工程就是在这个程序的基础上不断满足用户的需求.修复程序的bug.提供后续维护等服务. 需求分析:梳理需求,逐步展开后续工作,如设计(软件架构).实现(写数据结构和算法),测试,发布软件 软件=程序+软件工程(软件企业=软件+商业模式) 软将工程的核心部分:构建管理.源代码管理.软件设计.软件测试.项目管理

算法导论 第13章 红黑树

二叉查找树的基本操作包括搜索.插入.删除.取最大和最小值等都能够在O(h)时间复杂度内实现,因此能在期望时间O(lgn)下实现,但是二叉查找树的平衡性在这些操作中并没有得到维护,因此其高度可能会变得很高,当其高度较高时,而二叉查找树的性能就未必比链表好了,所以二叉查找树的集合操作是期望时间O(lgn),最坏情况下为O(n). 红黑树也是一种二叉查找树,它拥有二叉查找树的性质,同时红黑树还有其它一些特殊性质,这使得红黑树的动态集合基本操作在最坏情况下也为O(lgn),红黑树通过给节点增加颜色和其它

算法导论 第6章 堆排序

堆数据结构实际上是一种数组对象,是以数组的形式存储的,但是它可以被视为一颗完全二叉树,因此又叫二叉堆.堆分为以下两种类型: 大顶堆:父结点的值不小于其子结点的值,堆顶元素最大 小顶堆:父结点的值不大于其子结点的值,堆顶元素最小 堆排序的时间复杂度跟合并排序一样,都是O(nlgn),但是合并排序不是原地排序(原地排序:在排序过程中,只有常数个元素是保存在数组以外的空间),合并排序的所有元素都被拷贝到另外的数组空间中去,而堆排序是一个原地排序算法. 1.在堆排序中,我们通常使用大顶堆来实现,由于堆在

Java 线程第三版 第一章Thread导论、 第二章Thread的创建与管理读书笔记

第一章 Thread导论 为何要用Thread ? 非阻塞I/O I/O多路技术 轮询(polling) 信号 警告(Alarm)和定时器(Timer) 独立的任务(Task) 并行算法 第二章 Thread的创建与管理 一.什么是Thread ? Thread是所在主机执行的应用程序任务(task). 只有一个线程的例子: public class Factorial { public static void main(String[] args) { int n = 5; System.ou

【数据挖掘导论】——数据质量

数据质量 数据挖掘使用的数据通常是为其他用途收集或者收集的时候还没有明确目的.因此数据常常不能在数据的源头控制质量.为了避免数据质量的问题,所以数据挖掘着眼于两个方面:数据质量问题的检测和纠正(数据清理):使用可以容忍低质量数据的算法. 测量和数据收集问题 完美的数据在实际中几乎是不存在的,对于存在的数据质量问题,我们先定义测量误差和数据收集错误,然后考虑测量误差的各种问题:噪声,伪像,偏倚,精度和准确度.接着讨论测量和数据收集的数据质量问题:离群点,遗漏和不一致的值,重复数据. 测量误差(me

算法导论 第6章 堆排序(简单选择排序、堆排序)

堆数据结构实际上是一种数组对象,是以数组的形式存储的,可是它能够被视为一颗全然二叉树,因此又叫二叉堆.堆分为下面两种类型: 大顶堆:父结点的值不小于其子结点的值,堆顶元素最大 小顶堆:父结点的值不大于其子结点的值,堆顶元素最小 堆排序的时间复杂度跟合并排序一样,都是O(nlgn),可是合并排序不是原地排序(原地排序:在排序过程中,仅仅有常数个元素是保存在数组以外的空间),合并排序的全部元素都被复制到另外的数组空间中去,而堆排序是一个原地排序算法. 1.在堆排序中,我们通常使用大顶堆来实现,因为堆