数据挖掘作业
- 格式:docx
- 大小:107.54 KB
- 文档页数:5
1.下表由雇员数据库的训练数据组成,数据已泛化。
例如,年龄“31…35”表示31到35的之间。
对于给定的行,count表示department, status, age和salary在该行上具有给定值的元组数。
status是类标号属性。
1)如何修改基本决策树算法,以便考虑每个广义数据元组(即每个行)的count。
Status 分为2个部分:Department分为4个部分:
Senior 共计52 Sales 共计110
Junior 共计113 Systems 共计31
Marketing 共计14
Secretary 共计10
Age分为6个部分:Salary分为6各部分:
21…25 共计20 26K…30K 共计46
26…30 共计49 31K…35K 共计40
31…35 共计79 36K…40K 共计4
36…40 共计10 41K…45K 共计4
41…45 共计3 46K…50K 共计63
46…50 共计4 66K…70K 共计8
Info(D)=−52
165log252
165
−113
165
log2113
165
=0.889位
Info(departmet)=−110
165∗(−30
110
log230
110
−80
110
log280
110
)+31
165
∗(−8
31
log28
31
−
23 31log223
31
)+14
165
∗(−10
14
log210
14
−4
14
log24
14
)+10
165
∗(−4
10
log24
10
−6
10
log26
10
)=0.8504位
Gain(department)=Info(D)−Info(department)=0.0386位
Info(age)=−20
165∗(−0
20
log20
20
−20
20
log220
20
)+49
165
∗(−0
49
log20
49
−49
49
log249
49
)+79
165
∗
(−35
79log235
75
−34
79
log234
79
)+10
165
∗(−10
10
log210
10
−0
10
log20
10
)+3
165
∗(−3
3
log23
3
−0
3
log20
3
)+
4 165∗(−4
4
log24
4
−0
4
log20
4
)=0.4998位
Gain(age)=Info(D)−Info(age)=0.3892位
Info(salary)=−46
165∗(−0
46
log20
46
−46
46
log246
46
)+40
165
∗(−0
40
log20
40
−40
40
log240
40
)+4
165
∗
(−4
4log24
4
−0
4
log20
4
)+63
165
∗(−30
63
log230
63
−33
63
log233
63
)+8
165
∗(−8
8
log28
8
−0
8
log20
8
)=
0.3812位
Gain(salary)=Info(D)−Info(salary)=0.5078位
由以上的计算知按信息增益从大到小对属性排列依次为:salary、age、department,所以定
由这个表可知department和age的信息增益将都为0。
所以第二层可以为age也可以为department。
2)构造给定数据的决策树。
由上一小问的计算所构造的决策树如下:
3)给定一个数据元组,它在属性department,age和salary上的值分别为“systems”,“26...30”和“46...50K”。
该元组status的朴素贝叶斯分类结果是什么?
P(status=senior)=52/165=0.3152
P(status=junior)=113/65=0.6848
P(department=systems|status=senior)=8/52=0.1538
P(department=systems|status=junior)=23/113=0.2035
P(age=26…30|status=senior)=1/52=0.0192
P(age=26…30|status=junior)=49/113=0.4336
P(salary=46K…50K|status=senior)=40/52=0.7692
P(salary=46K…50K|status=junior)=23/113=0.2035
使用上面的概率,得到:
P(X|status=senior)=P(department=systems|status=senior)*P(age=26…30|status=senior)*
P(salary=46K…50K|status=senior)=0.0023
P(X|status=junior)=P(department=systems|status=junior)*P(age=26…30|status=junior)*
P(salary=46K…50K|status= junior)=0.0180
P(X|status=senior)* P(status=senior)= 7.2496e-004
P(X|status=junior)* P(status=junior)=0.0123
因此,对于元组X,朴素贝叶斯分类预测元组X的类为status=junior
2. 运用决策树或者贝叶斯算法,对鸢尾花数据集进行分类,显示分类结果。
(可以采用Weka工具或者其他方法)
在weka上运用决策树算法对鸢尾花数据集进行分类,分类结果如下图所示:
在weka上运用贝叶斯算法对鸢尾花数据进行分类,结果的具体情况如下:。