﻿1
00:00:18,419 --> 00:00:22,310
你好！欢迎回到"Weka在数据挖掘中的运用"

2
00:00:22,310 --> 00:00:24,330
的课程。

3
00:00:24,330 --> 00:00:28,499
这是讲座1.3。我们将学习如何
 
4
00:00:28,499 --> 00:00:32,230
分析数据集。

5
00:00:32,230 --> 00:00:36,130
我们已在上节课学习了数据文件。

6
00:00:36,130 --> 00:00:38,280
是关于天气的数据。

7
00:00:38,280 --> 00:00:42,580
它是个非常简单的数据集， 包含了14天的天气，或者

8
00:00:42,580 --> 00:00:46,149
说实例。 每天是一个实例，它由

9
00:00:46,149 --> 00:00:47,750
五种属性来描述。

10
00:00:47,750 --> 00:00:49,070
四种与天气有关, 

11
00:00:49,070 --> 00:00:51,570
最后一个叫类

12
00:00:51,570 --> 00:00:53,809
属性。

13
00:00:53,809 --> 00:00:57,490
它是我们希望要预测的：是否玩这个

14
00:00:57,490 --> 00:00:59,860
未定的游戏。

15
00:00:59,860 --> 00:01:03,300
这是个关于分类的问题。

16
00:01:03,300 --> 00:01:05,330
我们希望要预测类的值。

17
00:01:05,330 --> 00:01:07,340
现在打开Weka

18
00:01:07,340 --> 00:01:09,320
它已安装到我的笔记本电脑上。.

19
00:01:09,320 --> 00:01:11,340
我打开了Explorer。

20
00:01:11,340 --> 00:01:13,150
我们将一直使用Explorer。

21
00:01:13,150 --> 00:01:15,560
我将打开一个文档。

22
00:01:15,560 --> 00:01:20,460
我把数据集放在我的文件夹中，这样便于我找到它们。

23
00:01:20,460 --> 00:01:21,400
我打开了

24
00:01:21,400 --> 00:01:26,100
天气的名词性数据。

25
00:01:26,100 --> 00:01:30,070
这是Weka里显示的天气数据，

26
00:01:30,070 --> 00:01:31,430
正如我们上次看到的。

27
00:01:31,430 --> 00:01:33,190

28
00:01:33,190 --> 00:01:37,140
你能看到数据集的大小，实例的数量，14个

29
00:01:37,140 --> 00:01:39,270
你能看到属性，

30
00:01:39,270 --> 00:01:41,900
你可点击其中的一个，

31
00:01:41,900 --> 00:01:44,370
在这个面板的上部， 

32
00:01:44,370 --> 00:01:46,700
看到它们的值。

33
00:01:46,700 --> 00:01:52,280
在这个面板的下部是根据不同的类值形成的

34
00:01:52,280 --> 00:01:55,390
属性值直方图。  这些

35
00:01:55,390 --> 00:01:56,790
不同的类值有

36
00:01:56,790 --> 00:02:00,490
兰色代表 yes, 即 play，

37
00:02:00,490 --> 00:02:03,480
红色代表 no, 即 don't play，

38
00:02:03,480 --> 00:02:04,420
在Weka中，

39
00:02:04,420 --> 00:02:07,370
默认的类是最后一个属性。

40
00:02:07,370 --> 00:02:10,940
如果你愿意，你可以改变。这样你可以

41
00:02:10,940 --> 00:02:17,549
预测其它的属性。

42
00:02:17,549 --> 00:02:23,549
这是天气的数据。

43
00:02:23,549 --> 00:02:27,540
我已提到，这是个分类的问题，有时也称为监督学习的问题。

44
00:02:27,540 --> 00:02:29,310
它是监督学习的问题，

45
00:02:29,310 --> 00:02:30,770
因为你已知道了

46
00:02:30,770 --> 00:02:34,379
每个训练实例的类的值。

47
00:02:34,379 --> 00:02:38,639
我们用已录入的数据作为已分类的例子。

48
00:02:38,639 --> 00:02:42,199
这些都是独立的已知类值的实例。

49
00:02:42,199 --> 00:02:43,339

50
00:02:43,339 --> 00:02:47,089
我们希望自动地建立一个 

51
00:02:47,089 --> 00:02:48,409
可用于预测新的 

52
00:02:48,409 --> 00:02:50,629
 实例的模型。

53
00:02:50,629 --> 00:02:52,959
这是个分类的问题。 

54
00:02:52,959 --> 00:02:57,259
这些例子是这样的。这是个实例，有 

55
00:02:57,259 --> 00:02:59,389
不同的属性值， 

56
00:02:59,389 --> 00:03:01,019
有一组固定的特性。

57
00:03:01,019 --> 00:03:02,290
 我们赋予它一个类值， 

58
00:03:02,290 --> 00:03:05,589
这样就产生了一个已分类的实例。 

59
00:03:05,589 --> 00:03:10,499
这就是我们为什么要训练数据集。

60
00:03:10,499 --> 00:03:11,360

61
00:03:11,360 --> 00:03:14,920
这些属性或特性可以是离散的或连续的。 

62
00:03:14,920 --> 00:03:15,879
我们看到

63
00:03:15,879 --> 00:03:18,659
过的天气数据 

64
00:03:18,659 --> 00:03:20,560
是离散的，所以也称为名词性的。 

65
00:03:20,560 --> 00:03:23,870
通常它们有一组固定的数据值。

66
00:03:23,870 --> 00:03:25,499
他们也可以是数字

67
00:03:25,499 --> 00:03:27,949
一组连续的数字。

68
00:03:27,949 --> 00:03:32,339
同时，类 可以是离散的或连续的。我们看到的是离散的类, 

69
00:03:32,339 --> 00:03:36,169
例如在天气数据中的类yes 或 no。 其它机器学习问题 

70
00:03:36,169 --> 00:03:37,800
可能涉及到连续的类， 

71
00:03:37,800 --> 00:03:41,010
这时我们希望预测一个数字。 

72
00:03:41,010 --> 00:03:43,470
在商业领域叫

73
00:03:43,470 --> 00:03:45,439
 回归问题。

74
00:03:45,439 --> 00:03:48,859
我们来看一组和 

75
00:03:48,859 --> 00:03:52,509
天气数据集近似的数据。 

76
00:03:52,509 --> 00:03:53,209
数字天气

77
00:03:53,209 --> 00:03:54,829
数据集

78
00:03:54,829 --> 00:03:57,979
在Weka中打开 

79
00:03:57,979 --> 00:04:00,739
weather.numeric.arff. 

80
00:04:00,739 --> 00:04:02,840
看到没有，非常近似。 

81
00:04:02,840 --> 00:04:05,389
实际上，几乎是相同的。

82
00:04:05,389 --> 00:04:09,329
14个实例，5个属性, 相同的属性。 

83
00:04:09,329 --> 00:04:12,229
我们来用编辑面板

84
00:04:12,229 --> 00:04:13,769
看看这个数据集。

85
00:04:13,769 --> 00:04:17,600
你可看到，这里， temperature 和 humidity 是 

86
00:04:17,600 --> 00:04:21,739
数字性的属性，之前他们是名词性的

87
00:04:21,739 --> 00:04:25,660
这里全是数字。

88
00:04:25,660 --> 00:04:29,830
 我们看下outlook 的值，

89
00:04:29,830 --> 00:04:30,719
 和以前一样， 有

90
00:04:30,719 --> 00:04:32,729
sunny, overcast 和 rainy. 

91
00:04:32,729 --> 00:04:36,159
对于温度来说，我们不能枚举所有的值

92
00:04:36,159 --> 00:04:38,189
因为有太多的数字。 

93
00:04:38,189 --> 00:04:42,910
但我们可以有最大值，最小值，平均值和标准差。 

94
00:04:42,910 --> 00:04:44,740
这些信息是Weka为

95
00:04:44,740 --> 00:04:46,039
数字属性提供的

96
00:04:46,039 --> 00:04:49,939

97
00:04:49,939 --> 00:04:53,099
我们来看一个不同的数据集。 

98
00:04:53,099 --> 00:04:57,360
我们来看下玻璃的数据集。它是个大的数据集。 

99
00:04:57,360 --> 00:04:59,639
一个真实的数据集

100
00:04:59,639 --> 00:05:02,610
不是特别大的一个。 

101
00:05:02,610 --> 00:05:04,189
让我们打开它，

102
00:05:04,189 --> 00:05:07,150
它包含214个实例， 和 

103
00:05:07,150 --> 00:05:09,520
10 个属性。 

104
00:05:09,520 --> 00:05:13,229
这是10个属性, 不太清楚它们是什么。 

105
00:05:13,229 --> 00:05:15,529
让我们看下类。

106
00:05:15,529 --> 00:05:17,650
默认值应是

107
00:05:17,650 --> 00:05:20,120
最后的属性。  

108
00:05:20,120 --> 00:05:24,400
这个类有7个值。你可以从值的名称大概猜到 

109
00:05:24,400 --> 00:05:26,819
这个数据集是关于什么的。

110
00:05:26,819 --> 00:05:31,469
这里有 前大灯，餐具，容器。 

111
00:05:31,469 --> 00:05:34,250
然后，有建筑物和车辆的窗子。 

112
00:05:34,250 --> 00:05:36,080
使用浮法和不使用浮法的。

113
00:05:36,080 --> 00:05:37,560
你可能不知道这是什么， 

114
00:05:37,560 --> 00:05:40,349
制造玻璃有许多方法， 

115
00:05:40,349 --> 00:05:43,439
 浮法生产是一种制作玻璃的方法。 

116
00:05:43,439 --> 00:05:47,050
这里有七种不同的玻璃。

117
00:05:47,050 --> 00:05:50,209
它们的属性值都是些什么呢？ 

118
00:05:50,209 --> 00:05:52,570
我不知道你还记得那些物理知识。 

119
00:05:52,570 --> 00:05:53,679

120
00:05:53,679 --> 00:05:55,850
我想你不记得也没关系。

121
00:05:55,850 --> 00:05:59,369
RI 指的是折射率。 

122
00:05:59,369 --> 00:06:02,399
在你查看数据时，看看它们是否合理总是个好主意。

123
00:06:02,399 --> 00:06:04,739
深入了解你的数据是

124
00:06:04,739 --> 00:06:06,830
非常重要的。

125
00:06:06,830 --> 00:06:10,620
我们来看看折射率的值，最小值是1.511

126
00:06:10,620 --> 00:06:12,199

127
00:06:12,199 --> 00:06:14,650
最大值是1.534. 

128
00:06:14,650 --> 00:06:16,580
想一想这些数据对于折射率来说

129
00:06:16,580 --> 00:06:20,310
是否合理总是好的。 如果你到网上查一查， 

130
00:06:20,310 --> 00:06:21,710
你会发现这些值数据

131
00:06:21,710 --> 00:06:22,699
对于折射率来说 

132
00:06:22,699 --> 00:06:24,539
是合理的。

133
00:06:24,539 --> 00:06:25,940
Na. 

134
00:06:25,940 --> 00:06:29,429
如果你学过化学，你知道Na是钠

135
00:06:29,429 --> 00:06:33,350
这里看起来是些百分比， 

136
00:06:33,350 --> 00:06:36,370
钠的不同百分比 

137
00:06:36,370 --> 00:06:38,610
锰, Mg, 

138
00:06:38,610 --> 00:06:43,159
等等。可能会想到硅 (Si), 

139
00:06:43,159 --> 00:06:47,669
玻璃的主要组成元素，它的含量在69.81% 

140
00:06:47,669 --> 00:06:49,169

141
00:06:49,169 --> 00:06:51,229
和75.41%之间。

142
00:06:51,229 --> 00:06:57,289
这些数据是各种元素在玻璃中的含量。 

143
00:06:57,289 --> 00:07:02,240
我们可以通过观察数据来肯定我们的猜测。 

144
00:07:02,240 --> 00:07:04,569
让我们找一找玻璃数据， 

145
00:07:04,569 --> 00:07:07,379
它在Weka提供的数据集中，

146
00:07:07,379 --> 00:07:08,030

147
00:07:08,030 --> 00:07:09,599

148
00:07:09,599 --> 00:07:12,419
它是glass.arff. 

149
00:07:12,419 --> 00:07:14,580

150
00:07:14,580 --> 00:07:15,619
这是ARFF 

151
00:07:15,619 --> 00:07:17,419
文件格式。 

152
00:07:17,419 --> 00:07:20,479
开头是些关于玻璃数据的说明。 

153
00:07:20,479 --> 00:07:24,969
由%打头的行都是说明。 

154
00:07:24,969 --> 00:07:27,689
你可以读一下。 但我们现在没时间这样做。

155
00:07:27,689 --> 00:07:31,209
你可以看下各个属性

156
00:07:31,209 --> 00:07:32,570
他们是 

157
00:07:32,570 --> 00:07:36,679
折射率，钠，锰,  等等。

158
00:07:36,679 --> 00:07:39,050
和玻璃的种类，例如，

159
00:07:39,050 --> 00:07:45,839
窗户， 容器，餐具，等等。

160
00:07:45,839 --> 00:07:48,999
我们看下说明的结尾部分， 

161
00:07:48,999 --> 00:07:53,249
这些是Weka特定的. 这就是ARFF格式。

162
00:07:53,249 --> 00:07:54,479
这个关系有个名字。 

163
00:07:54,479 --> 00:07:57,219
你能在Weka的界面上看到. 

164
00:07:57,219 --> 00:08:01,119
属性都被定义过了，拥有真正的值。

165
00:08:01,119 --> 00:08:03,269
 数字性属性。. 

166
00:08:03,269 --> 00:08:04,439
 这个属性是

167
00:08:04,439 --> 00:08:08,440
名词性的，它的值已被罗列出来，

168
00:08:08,440 --> 00:08:11,599
 放在引号中。

169
00:08:11,599 --> 00:08:14,979
这些是关于关系和属性的。接下来，我们看一看

170
00:08:14,979 --> 00:08:19,459
 '@data' 打头的行，接下来都是一个接一个的实例。 

171
00:08:19,459 --> 00:08:24,239
每行包含了所有的属性的值， 默认类的值是 

172
00:08:24,239 --> 00:08:26,430
最后一个属性的值。 这是第一个

173
00:08:26,430 --> 00:08:29,219
 实例的类的值。

174
00:08:29,219 --> 00:08:31,889
这里大概有

175
00:08:31,889 --> 00:08:33,670
214个实例。

176
00:08:33,670 --> 00:08:37,030
这是最后一个。

177
00:08:37,030 --> 00:08:39,829
这就是ARFF格式。 它是一个简单 

178
00:08:39,829 --> 00:08:43,040
的文本文件格式。 

179
00:08:43,040 --> 00:08:46,870
现在，我们已确认了我们关于这些数字是百分比的猜测， 

180
00:08:46,870 --> 00:08:49,460
和各种不同的元素。

181
00:08:49,460 --> 00:08:52,420
如果我们再思考一下， 

182
00:08:52,420 --> 00:08:56,310
 这些数字的合理性

183
00:08:56,310 --> 00:09:00,520
是很重要的。 如果他们是负数，这可能 

184
00:09:00,520 --> 00:09:03,670
意味着这些值已被损坏了。 负数百分比 

185
00:09:03,670 --> 00:09:04,820
是不正常的。

186
00:09:04,820 --> 00:09:08,560
我们预测硅是主要的元素， 

187
00:09:08,560 --> 00:09:12,290
预测折射率在这个范围内。 当你拿到一组数据时，

188
00:09:12,290 --> 00:09:14,749
一个好的方法是把它放在Weka中

189
00:09:14,749 --> 00:09:16,870
检查一下

190
00:09:16,870 --> 00:09:20,090
以确保数据看起来合理真实。  我想玻璃中 

191
00:09:20,090 --> 00:09:24,220
含有些微量的铝，也是很正常的。 

192
00:09:24,220 --> 00:09:27,260
我对玻璃知道的不多。 

193
00:09:27,260 --> 00:09:29,839
我们这里只是看一下合理性。

194
00:09:29,839 --> 00:09:36,440
这是应该做的。

195
00:09:36,440 --> 00:09:37,180
就到这里吧。 

196
00:09:37,180 --> 00:09:40,670
这节课，我们学习了分类问题。 

197
00:09:40,670 --> 00:09:44,199
我们了解了名词性和数字性的天气数据。 

198
00:09:44,199 --> 00:09:47,400
我们谈到了名词性和数字性的属性。 

199
00:09:47,400 --> 00:09:48,090
同时，我们 

200
00:09:48,090 --> 00:09:50,820
学习了ARFF文件格式。 

201
00:09:50,820 --> 00:09:52,680
我们看了下

202
00:09:52,680 --> 00:09:54,030
glass.arff 

203
00:09:54,030 --> 00:09:57,970
我们谈到了对属性的合理性的检测，

204
00:09:57,970 --> 00:10:00,850
 和深入了解你的数据的重要性。 

205
00:10:00,850 --> 00:10:04,410
你如果还想知道更多的背景知识，可以看一看教科书的第11.1节 

206
00:10:04,410 --> 00:10:08,130
关于如何组织数据和将数据

207
00:10:08,130 --> 00:10:10,080
读入到Explorer的部分。

208
00:10:10,080 --> 00:10:11,429
这个可做，可不做， 

209
00:10:11,429 --> 00:10:16,640
但你应该完成这节课的课后练习。

210
00:10:16,640 --> 00:10:23,000
下次课见！
