临时抱佛脚
1.数据、信息、知识分别有哪些特性?三者之间又有何联系?(PPT chap1)
数据:琐碎性,具体,客观
信息:有用性,针对性,主观性,排他性
知识:概念性,抽象性,预测性,指导性
数据(Data)、信息(Information)和知识(Knowledge)是数据认知的不同层次。
2.数据挖掘的技术定义是什么?
-
从广义的观点上,数据挖掘是从大型数据集(可能是不完全的、有噪声的、不确定性的、各种存储形式的)中,挖掘隐含在其中的、人们事先不知道的、对决策有用的知识的过程
-
从狭义的观点上,数据挖掘是从特定形式的数据集中提炼知识模式的方法。
3.关联规则挖掘有那两个基本过程?每个过程的主要任务是什么?为什么其中的一个过程更重要?
-
发现频繁项集:通过用户给定的最小支持度,寻找所有频繁项目集或者最大频繁项目集
-
生产关联规则:通过用户给定的最小置信度,在频繁项目集中寻找关联规则
相对于第一个子问题而言,由于第二个子问题相对简单,而且在内存、I/O以及算法效率上改进余地不大,因此,第一个子问题是近年来关联规则问题算法研究的重点
4.一般把KDD看作有哪些基本处理步骤构成?这些步骤的主要目的是什么?
-
问题定义: 明确你需要从数据中发现什么有用的信息。这是整个过程的起点和关键。
-
数据抽取: 从源数据库中选择并提取出与你的目标相关的数据。
-
数据预处理: 对抽取出的数据进行“清洗”,包括处理缺失值、消除噪声和重复项,并进行数据格式转换,确保数据质量和一致性。
-
数据挖掘: 运用特定的算法,从经过预处理的数据中找出你需要的模式或知识。
-
模式评估: 呈现发现的知识,并评估其是否符合你的预期。如果结果不满意,则需要返回之前的步骤进行调整,直到获得有用的知识。
5.请简述Apriori算法步骤并说明该算法的缺陷
Apriori 算法通过逐步增加项目集的大小来发现频繁项目集。它从包含单个元素的频繁项目集(L1)开始,每次迭代都尝试生成更大尺寸的频繁项目集。
在每一步(例如,发现 k 个元素的频繁项目集时),算法会先生成所有可能的 k-候选项目集 (Ck)。然后,它通过扫描数据库来计算这些候选集的支持度,并筛选出那些支持度达到阈值的,从而得到最终的 k-频繁项目集 (Lk)。这个过程会一直重复,直到无法再找到更大的频繁项目集为止。
-
多次扫描事务数据库,需要很大的I/O负载
-
可能产生庞大的候选集
6.简述分类器的性能表示(书P164)与评估(书P165)的主要方法
性能表示
分类器的性能表示方法类似于信息检索系统。当只有两个类别(例如,A类和B类)时,分类器会产生四种可能的输出结果,这些结果可以帮助我们了解分类器的表现
-
保持法:把所有数据随机分成两部分:一部分用于训练分类器(比如 1/3 的数据),另一部分用于测试分类器(剩下的 2/3 数据)
-
交叉验证:把数据随机分成 n 等份。每次取其中一份作为测试集,剩下的 n−1 份作为训练集来建立模型并进行测试。这个过程会重复 n 次,直到每一份都做过测试集
7.DBSCAM
概念:DBSCAN是一种基于密度的聚类算法,它能够发现任意形状的簇,并且可以识别出噪声点。核心思想:如果一个区域内的数据点密度足够高,那么这些点就属于同一个簇
步骤:1.从数据集中随机选择一个未被访问的点P 2.检查P的领域 3.扩展簇:遍历其领域所有点 4.重复1~3直到数据集中的所有点都被访问并分配
优点:能够发现任意形状的簇,能够识别噪声点,无需预设簇的数量
缺点:参数选择困难,对密度差异大的数据集效果不佳,处理高纬数据困难
8.层次聚类主要方法和特点是什么?请简要介绍。
主要方法 1.凝聚的层次聚类是一种自底向上的策略:首先将每个对象作为一个簇,然后合并这些原子簇为越来越大的簇,直到所有的对象都在一个簇中,或者某个终结条件被满足,绝大多数层次聚类方法属于这一类,它们只是在簇间相似度的定义上有所不同。
2.分裂的层次聚类与凝聚的层次聚类相反,采用自顶向下的策略,它首先将所有对象置于一个簇中,然后逐渐细分为越来越小的簇,直到每个对象自成一簇,或者达到了某个终结条件
9.密度聚类方法的主要思路是:
-
确定密度门槛: 首先设定一个密度的标准,来区分哪些区域是“密集”的,哪些是“稀疏”的。
-
计算点密度: 接着,算出每个数据点周围的“拥挤”程度(密度)
-
找出核心区域: 那些密度达到标准(高于门槛)的点,就被认为是簇的“核心”部分。
-
扩散形成簇: 从这些核心点出发,不断向周围密度足够高或者可以“连接”到的点扩展,把它们也吸纳进来,逐渐形成完整的簇。
-
识别噪声: 那些周围很稀疏,无法被任何簇“吸纳”的点,就会被认为是噪声或异常点。
-
得到最终簇: 最终,所有被连接起来的密集区域就形成了不同的簇。
10.简述时间序列挖掘的概念
时间序列数据挖掘就是要从大量的时间序列数据中提取人们事先不知道的、但又是潜在有用的与时间属性相关的信息和知识,并用于短期、中期或长期预测,指导人们的社会、经济、军事和生活等行为
11.简述序列模式挖掘的一般步骤和各个步骤的主要任务
序列模式挖掘旨在从数据中发现事件发生的先后顺序规律。其一般步骤如下:
-
排序: 将原始数据转换成序列数据库,也就是根据时间或事件顺序对数据进行整理和排序。
-
发现频繁项集: 找出数据中所有频繁出现的项集(即“大项集”),这些是构成序列模式的基本元素。同时,也会得到所有只有一个元素的频繁序列。
-
数据转换: 准备数据,以便后续能高效地检查客户序列中是否包含特定的频繁序列。
-
挖掘频繁序列: 利用转换后的数据,找出所有频繁出现的序列(即“大序列”),这些是具有一定发生顺序和频率的模式。
-
找出最大序列: 从所有频繁序列中,识别出那些最长的序列,它们代表了更具体、更完整的事件顺序模式。
12.AprioriSome算法的具体执行过程可以分为哪两个步骤?请简述每个步骤的主要任务。
前推阶段:此阶段用于找出指定长度的所有大序列。
回溯阶段:此阶段用于查找其他长度的所有大序列。
13.提高Apriori算法效率的技术
基于数据分割,基于散列,基于采样
14.FP-tree算法会进行几次数据库扫描?
进行2次数据库扫描:一次对所有1-项目的频度排序;一次将数据库信息转变成紧缩内存结构
15.AprioriAll 与 AprioriSome 简单比较
AprioriAll: 只用上一步确定的“好”序列来猜下一步的可能序列。它比较谨慎。
AprioriSome: 直接用上一步所有“猜的”序列来猜下一步的可能序列。它更大胆。
主要区别:
猜得多: AprioriSome 猜的序列更多。
占内存: 因为猜得多,AprioriSome 更容易把内存占满。
表现: 如果内存满了,AprioriSome 的优势就没了,会变得和 AprioriAll 差不多。但在发现很长的序列时(特别是数据比较分散,支持度低的时候),AprioriSome 可能表现更好。
16.K-Means算法
K平均算法是一种常用的无监督学习算法,用于将数据集中的数据点分组道预先确定的k个簇中。它的目标是使每个数据点与其所属簇的中心之间的距离最小化
步骤:1.确定簇的数量 2.初始化k个中心 3.对数据集进行分配,通过计算对簇中心进行更新 4.重复更新直到满足停止条件(簇中心位置不在显著变化,达到最大迭代次数等)
17.贝叶斯分类优缺点
1.优点:理论基础中扎实,保证样本正确、模式可靠
速度较快:相比决策树,无需复杂的迭代求解
简单性导致的高可用性
2.缺点:不是通用模型:每个未知预测需要学习一次
独立性假设在许多情况不成立
噪声的敏感性问题需要特别关注