【SCAU数据挖掘】数据挖掘期末总复习题库简答题及解析——中

1.

某学校对入学的新生进行性格问卷调查(没有心理学家的参与),根据学生对问题的回答,把学生的性格分成了8个类别。请说明该数据挖掘任务是属于分类任务还是聚类任务?为什么?并利用该例说明聚类分析和分类分析的异同点。

解答:

(a)该数据挖掘任务属于聚类任务(clustering)。

(b)该任务没有预先定义的类别标签,而是根据学生对问题的回答 对学生的性格进行分类,将相似的学生划分到同一个类别中。聚类分析正是基于数据本身的特征将数据划分为不同类别,这些类别在聚类之前是未知的。

(c)

相同点:

都用于从数据中提取有用的信息,可以将数据划分为不同的组或类别。

不同点:

  1. 分类是有监督学习,需要标注训练数据; 聚类是无监督学习,不需要标注数据。

  2. 分类的目标是学习将实例准确分配到预定义的类别; 聚类的目标是自动发现数据中的自然分组。

  3. 分类适用于有明确目标类别的场景; 聚类适用于发现数据内在模式、结构的场景

  4. 分类通常使用准确率、精确率、召回率等指标评估;聚类使用簇内相似度、簇间差异度等指标评估。

2.

Apriori算法在数据挖掘中被广泛使用,已知有5000名球迷看奥运会,看乒乓球比赛和看篮球比赛的人数分别如下表所示:

|-----------|----------|-----------|-----------|
| | 看乒乓球 | 没看乒乓球 | 合计(行) |
| 看篮球 | 2000 | 1750 | 3750 |
| 没看篮球 | 1000 | 250 | 1250 |
| 合计(列) | 3000 | 2000 | 5000 |

计算"看乒乓球--->看篮球"的支持度比例(Support)、置信度比例(Confidence)、提升度(Lift)。

解答:

支持度比例(Support)

支持度比例表示同时发生两个事件的概率。

Support("看乒乓球→看篮球") = P("看乒乓球"且"看篮球") = 2000/5000=40%

置信度比例(Confidence)

置信度比例表示已发生A事件时,B事件发生的条件概率。

Confidence("看乒乓球→看篮球") = P("看篮球"|"看乒乓球") =(2/5)/(3/5)=66.7%

提升度(Lift)

提升度用于判断两个事件是否相互依赖。如果Lift > 1,则表示两个事件之间是正相关;如果Lift < 1,则表示两个事件之间是负相关;如果Lift = 1,则表示两个事件相互独立。

Lift("看乒乓球→看篮球") = Confidence("看乒乓球→看篮球") / P("看篮球")

= (2/3) / (3750/5000)

= 1.6

提升度大于1,说明"看乒乓球"和"看篮球"两个事件之间存在正相关关系,看乒乓球的人群更倾向于看篮球比赛。

3.

认识数据
假设描述学生的信息包含以下属性:性别,籍贯,年龄。记录p,q和C1,C2的信息如下,分别求出记录和簇彼此之间的距离。
p={男,广州,18}
q={女,韶关,20}
C1={男:25,女:5; 广州:20,深圳:6,韶关:4; 20}
C2={男:3,女:12; 汕头:12,深圳:1,韶关:2; 24}

(a)记录与记录之间的距离

p与q间距离记录p和q之间的距离总和是1 + 1 + 2 = 4。

d(p,q)=1 + 1 + 2 = 4

性别:p是男,q是女,性别间距离是1。

籍贯:p是广州,q是韶关,籍贯间的距离是1。

年龄:p是18,q是20,年龄间的距离是2。

(b)记录与簇间距离

p与C1间距离

d(p, C1)=(1-25/30)+(1-20/30)+(20-18)=2.5

性别:p是男,C1中男性最常见(频率25/30)

籍贯:p是广州,C1中广州最常见(频率20/30)

年龄:p是18,C1中列出年龄是20,年龄距离为|18-20|=2。

依次计算距离

q与C1间距离d(q,C1)=(1-5/30)+(1-4/30)+(20-20)=51/30

p与C2间距离d(p, C2)=(1-3/15)+(1-0/15)+(24-18)=7.8

q与C2间距离d(q, c2)=(1-12/15)+(1-2/15)+(24-20)=76/15

(c)簇与簇间距离

C1与C2间距离

d(C1, C2)=[1-(25*3+5*12)/30*15] + [1-(6*1+4*2)/30*15] + |20-24| = 2551/450

4.

已知:训练集合中垃圾邮件的比例为P(h+)=0.2;训练集合中正常邮件的比例为P(h-)=0.8;单词出现频率表如下:

|--------|-----------------|-----------------|
| 分词 | 在垃圾邮件中出现的比例 | 在正常邮件中出现的比例 |
| 免费 | 0.3 | 0.01 |
| 奖励 | 0.2 | 0.01 |
| 网站 | 0.2 | 0.2 |

求解:判断一封邮件D=<"免费""奖励""网站">是否是垃圾邮件?

P(h+)和p(h-)表示先验概率,只需要看现有邮件训练集中有多少封邮件是垃圾邮件,有多少封邮件是正常邮件,求其所占比例就可以得到P(h+)和p(h-)。

依题可得

P(h+) = 0.2 (垃圾邮件的先验概率)

P(h-) = 0.8 (正常邮件的先验概率)

P("免费"|h+) = 0.3 (在垃圾邮件中"免费"出现的条件概率)

P("免费"|h-) = 0.01 (在正常邮件中"免费"出现的条件概率)

P("奖励"|h+) = 0.2

P("奖励"|h-) = 0.01

P("网站"|h+) = 0.2

P("网站"|h-) = 0.2

根据题目要求可知,我们需要求出P(h+|D)和P(h-|D)

根据贝叶斯定理:P(A|B)=P(B|A)P(A)/P(B)

P(h+|D) = (P(D|h+)P(h+)) / P(D)

P(h-|D) = (P(D|h-)P(h-)) / P(D)

P(D) = P(D|h+)P(h+) + P(D|h-)P(h-)

P(D|h+) = P("免费"|h+) * P("奖励"|h+) * P("网站"|h+) = 0.3 * 0.2 * 0.2 = 0.012

P(D|h-) = P("免费"|h-) * P("奖励"|h-) * P("网站"|h-) = 0.01 * 0.01 * 0.2 = 0.000002

则P(D) = 0.012 * 0.2 + 0.000002 * 0.8 = 0.002424

最后计算概率:

P(h+|D) = (0.012 * 0.2) / 0.002424 = 0.9917

P(h-|D) = (0.000002 * 0.8) / 0.002424 = 0.0083

可以判断这封邮件D更可能是垃圾邮件

相关推荐
John_ToDebug12 分钟前
2025年度个人总结:在技术深海中锚定价值,于时代浪潮中重塑自我
人工智能·程序人生
自可乐24 分钟前
n8n全面学习教程:从入门到精通的自动化工作流引擎实践指南
运维·人工智能·学习·自动化
king of code porter27 分钟前
百宝箱企业版搭建智能体应用-创建应用
人工智能·大模型·智能体
HDO清风32 分钟前
CASIA-HWDB2.x 数据集DGRL文件解析(python)
开发语言·人工智能·pytorch·python·目标检测·计算机视觉·restful
策知道38 分钟前
依托政府工作报告准备省考【经验贴】
大数据·数据库·人工智能·搜索引擎·政务
工程师老罗1 小时前
Pytorch如何加载和读取VOC数据集用来做目标检测?
人工智能·pytorch·目标检测
测试_AI_一辰1 小时前
Agent & RAG 测试工程05:把 RAG 的检索过程跑清楚:chunk 是什么、怎么来的、怎么被命中的
开发语言·人工智能·功能测试·自动化·ai编程
Henry-SAP1 小时前
SAP(ERP) 组织结构业务视角解析
大数据·人工智能·sap·erp·sap pp
龙腾亚太1 小时前
航空零部件加工变形难题破解:数字孪生 + 深度学习的精度控制实战
人工智能·深度学习·数字孪生·ai工程师·ai证书·转型ai
Coding茶水间1 小时前
基于深度学习的输电电力设备检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
开发语言·人工智能·深度学习·yolo·目标检测·机器学习