当前位置: 首页 > news >正文

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

1.

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

解答:

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

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

(c)

相同点:

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

不同点:

1. 分类是有监督学习,需要标注训练数据;        聚类是无监督学习,不需要标注数据。
2. 分类的目标是学习将实例准确分配到预定义的类别;  聚类的目标是自动发现数据中的自然分组。
3. 分类适用于有明确目标类别的场景;        聚类适用于发现数据内在模式、结构的场景。
4. 分类通常使用准确率、精确率、召回率等指标评估;聚类使用簇内相似度、簇间差异度等指标评估。
5. 算法不同:分类常用决策树、朴素贝叶斯、逻辑回归等;聚类常用K-Means、层次聚类、DBSCAN等。

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更可能是垃圾邮件

http://www.lryc.cn/news/375311.html

相关文章:

  • 2024年注册安全工程师报名常见问题汇总!
  • JRebel-JVMTI [FATAL] Couldn‘t write to C:\Users\中文用户名-完美解决
  • STM32基于DMA数据转运和AD多通道
  • 安卓应用开发——Android Studio中通过id进行约束布局
  • Elasticsearch过滤器(filter):原理及使用
  • Docker配置与使用详解
  • 触控MCU芯片(1):英飞凌PSoC第6代第7代
  • git pull报错:unable to pull from remote repository due to conflicting tag(s)
  • Python将字符串用特定字符分割并前面加序号
  • 【第16章】Vue实战篇之跨域解决
  • 【PB案例学习笔记】-22制作一个语音朗读金额小应用
  • glmark2代码阅读总结
  • 第 6 章 监控系统 | 监控套路 - 总结
  • VsCode中C文件调用其他C文件函数失败
  • css中content属性你了解多少?
  • JVM-GC-G1垃圾回收器
  • 【Ubuntu通用压力测试】Ubuntu16.04 CPU压力测试
  • Artix Linux 默认不使用 systemd
  • JVM-GC-CMS垃圾回收器
  • 【玩转google云】实战:如何在GKE上使用Helm安装和配置3节点的RabbitMQ集群
  • 【神经网络】深度神经网络
  • 机器学习算法 —— K近邻(KNN分类)
  • Thinkphp5内核流浪猫流浪狗宠物领养平台H5源码
  • c++ 智能指针使用注意事项及解决方案
  • SQLite Delete 语句
  • vue3的基本使用方法
  • Java数据结构与算法(盛水的容器贪心算法)
  • MYSQL 数字(Aggregate)函数
  • 【TensorFlow深度学习】如何处理不平衡数据集与欠采样、过采样技术
  • 【考研数学】如何保证进度不掉队?暑假强化保姆级规划