目录
1引言
1.1设计说明
数据挖掘(Data Mining)是发现数据中有用模式的过程。数据挖掘会话的目的是确定数据的趋势和模式。数据挖掘强调对大量观测到的数据库的处理。它是涉及数据库管理,人工智能,机器学习,模式识别,及数据可视化等学科的边缘学科。用统计的观点看,它可以看成是通过计算机对大量的复杂数据集的自动探索性分析。
数据集,又称为资料集、数据集合或资料集合,是指一种由数据所组成的集合。Data set(或dataset)是一个数据的集合,通常以表格形式出现。每一列代表一个特定变量。每一行都对应于某一成员的数据集的问题。它列出的价值观为每一个变量,如身高和体重的一个物体或价值的随机数。每个数值被称为数据资料。对应于行数,该数据集的数据可能包括一个或多个成员。
本文引用的数据集为zoo数据集,应用weka载入数据集,并将数据集进行聚类,分析聚类结果。
1.2软件
本次设计用到的软件为:weka
weka简介:
WEKA的全名是怀卡托智能分析环境(Waikato Environment for Knowledge Analysis),WEKA 诞生于 University of Waikato(新西兰)(weka也是新西兰的一种鸟名)并在 1997 年首次以其现代的格式实现。它使用了 GNU General Public License (GPL)。该软件以 Java™ 语言编写并包含了一个 GUI 来与数据文件交互并生成可视结果(比如表和曲线)。它还有一个通用 API,所以用户可以像嵌入其他的库一样将 WEKA 嵌入到用户自己的应用程序以完成诸如服务器端自动数据挖掘这样的任务。
WEKA作为一个公开的数据挖掘工作平台,集合了大量能承担数据挖掘任务的机器学习算法,包括对数据进行预处理,分类,回归、聚类、关联规则以及在新的交互式界面上的可视化。
2正文
2.1数据集说明
数据集名称:Zoo database
数据类型:nominal
1. Source Information
-- Creator: Richard Forsyth
-- Donor: Richard S. Forsyth
8 Grosvenor Avenue
Mapperley Park
Nottingham NG3 5DX
0602-621676
-- Date: 5/15/1990
2. Past Usage:
-- None known other than what is shown in Forsyth's PC/BEAGLE User's Guide.
3. Relevant Information:
-- A simple database containing 17 Boolean-valued attributes. The "type"
attribute appears to be the class attribute. Here is a breakdown of
which animals are in which type: (I find it unusual that there are
2 instances of "frog" and one of "girl"!)
Class# Set of animals:
====== ===============================================================
1 (41) aardvark, antelope, bear, boar, buffalo, calf,
cavy, cheetah, deer, dolphin, elephant,
fruitbat, giraffe, girl, goat, gorilla, hamster,
hare, leopard, lion, lynx, mink, mole, mongoose,
opossum, oryx, platypus, polecat, pony,
porpoise, puma, pussycat, raccoon, reindeer,
seal, sealion, squirrel, vampire, vole, wallaby,wolf
2 (20) chicken, crow, dove, duck, flamingo, gull, hawk,
kiwi, lark, ostrich, parakeet, penguin, pheasant,
rhea, skimmer, skua, sparrow, swan, vulture, wren
3 (5) pitviper, seasnake, slowworm, tortoise, tuatara
4 (13) bass, carp, catfish, chub, dogfish, haddock,
herring, pike, piranha, seahorse, sole, stingray, tuna
5 (4) frog, frog, newt, toad
6 (8) flea, gnat, honeybee, housefly, ladybird, moth, termite, wasp
7 (10) clam, crab, crayfish, lobster, octopus,
scorpion, seawasp, slug, starfish, worm
4. Number of Instances: 101
5. Number of Attributes: 18 (animal name, 15 Boolean attributes, 2 numerics)
6. Attribute Information: (name of attribute and type of value domain)
1. animal name: Unique for each instance
2. hair Boolean
3. feathers Boolean
4. eggs Boolean
5. milk Boolean
6. airborne Boolean
7. aquatic Boolean
8. predator Boolean
9. toothed Boolean
10. backbone Boolean
11. breathes Boolean
12. venomous Boolean
13. fins Boolean
14. legs Numeric (set of values: {0,2,4,5,6,8})
15. tail Boolean
16. domestic Boolean
17. catsize Boolean
18. type Numeric (integer values in range [1,7])
7. Missing Attribute Values: None
8. Class Distribution: Given above
代码如下:
@RELATION zoo
@ATTRIBUTE animal {aardvark,antelope,bass,bear,boar,buffalo,calf,carp,catfish,cavy,cheetah,chicken,chub,clam,crab,crayfish,crow,deer,dogfish,dolphin,dove,duck,elephant,flamingo,flea,frog,fruitbat,giraffe,girl,gnat,goat,gorilla,gull,haddock,hamster,hare,hawk,herring,honeybee,housefly,kiwi,ladybird,lark,leopard,lion,lobster,lynx,mink,mole,mongoose,moth,newt,octopus,opossum,oryx,ostrich,parakeet,penguin,pheasant,pike,piranha,pitviper,platypus,polecat,pony,porpoise,puma,pussycat,raccoon,reindeer,rhea,scorpion,seahorse,seal,sealion,seasnake,seawasp,skimmer,skua,slowworm,slug,sole,sparrow,squirrel,starfish,stingray,swan,termite,toad,tortoise,tuatara,tuna,vampire,vole,vulture,wallaby,wasp,wolf,worm,wren}
@ATTRIBUTE hair {false, true}
@ATTRIBUTE feathers {false, true}
@ATTRIBUTE eggs {false, true}
@ATTRIBUTE milk {false, true}
@ATTRIBUTE airborne {false, true}
@ATTRIBUTE aquatic {false, true}
@ATTRIBUTE predator {false, true}
@ATTRIBUTE toothed {false, true}
@ATTRIBUTE backbone {false, true}
@ATTRIBUTE breathes {false, true}
@ATTRIBUTE venomous {false, true}
@ATTRIBUTE fins {false, true}
@ATTRIBUTE legs INTEGER [0,9]
@ATTRIBUTE tail {false, true}
@ATTRIBUTE domestic {false, true}
@ATTRIBUTE catsize {false, true}
@ATTRIBUTE type { mammal, bird, reptile, fish, amphibian, insect, invertebrate }
@DATA
%
% Instances (101):
%
aardvark,true,false,false,true,false,false,true,true,true,true,false,false,4,false,false,true,mammal
antelope,true,false,false,true,false,false,false,true,true,true,false,false,4,true,false,true,mammal
bass,false,false,true,false,false,true,true,true,true,false,false,true,0,true,false,false,fish
bear,true,false,false,true,false,false,true,true,true,true,false,false,4,false,false,true,mammal
boar,true,false,false,true,false,false,true,true,true,true,false,false,4,true,false,true,mammal
buffalo,true,false,false,true,false,false,false,true,true,true,false,false,4,true,false,true,mammal
calf,true,false,false,true,false,false,false,true,true,true,false,false,4,true,true,true,mammal
carp,false,false,true,false,false,true,false,true,true,false,false,true,0,true,true,false,fish
catfish,false,false,true,false,false,true,true,true,true,false,false,true,0,true,false,false,fish
cavy,true,false,false,true,false,false,false,true,true,true,false,false,4,false,true,false,mammal
cheetah,true,false,false,true,false,false,true,true,true,true,false,false,4,true,false,true,mammal
chicken,false,true,true,false,true,false,false,false,true,true,false,false,2,true,true,false,bird
chub,false,false,true,false,false,true,true,true,true,false,false,true,0,true,false,false,fish
clam,false,false,true,false,false,false,true,false,false,false,false,false,0,false,false,false,invertebrate
crab,false,false,true,false,false,true,true,false,false,false,false,false,4,false,false,false,invertebrate
crayfish,false,false,true,false,false,true,true,false,false,false,false,false,6,false,false,false,invertebrate
crow,false,true,true,false,true,false,true,false,true,true,false,false,2,true,false,false,bird
deer,true,false,false,true,false,false,false,true,true,true,false,false,4,true,false,true,mammal
dogfish,false,false,true,false,false,true,true,true,true,false,false,true,0,true,false,true,fish
dolphin,false,false,false,true,false,true,true,true,true,true,false,true,0,true,false,true,mammal
dove,false,true,true,false,true,false,false,false,true,true,false,false,2,true,true,false,bird
duck,false,true,true,false,true,true,false,false,true,true,false,false,2,true,false,false,bird
elephant,true,false,false,true,false,false,false,true,true,true,false,false,4,true,false,true,mammal
flamingo,false,true,true,false,true,false,false,false,true,true,false,false,2,true,false,true,bird
flea,false,false,true,false,false,false,false,false,false,true,false,false,6,false,false,false,insect
frog,false,false,true,false,false,true,true,true,true,true,false,false,4,false,false,false,amphibian
frog,false,false,true,false,false,true,true,true,true,true,true,false,4,false,false,false,amphibian
fruitbat,true,false,false,true,true,false,false,true,true,true,false,false,2,true,false,false,mammal
giraffe,true,false,false,true,false,false,false,true,true,true,false,false,4,true,false,true,mammal
girl,true,false,false,true,false,false,true,true,true,true,false,false,2,false,true,true,mammal
gnat,false,false,true,false,true,false,false,false,false,true,false,false,6,false,false,false,insect
goat,true,false,false,true,false,false,false,true,true,true,false,false,4,true,true,true,mammal
gorilla,true,false,false,true,false,false,false,true,true,true,false,false,2,false,false,true,mammal
gull,false,true,true,false,true,true,true,false,true,true,false,false,2,true,false,false,bird
haddock,false,false,true,false,false,true,false,true,true,false,false,true,0,true,false,false,fish
hamster,true,false,false,true,false,false,false,true,true,true,false,false,4,true,true,false,mammal
hare,true,false,false,true,false,false,false,true,true,true,false,false,4,true,false,false,mammal
hawk,false,true,true,false,true,false,true,false,true,true,false,false,2,true,false,false,bird
herring,false,false,true,false,false,true,true,true,true,false,false,true,0,true,false,false,fish
honeybee,true,false,true,false,true,false,false,false,false,true,true,false,6,false,true,false,insect
housefly,true,false,true,false,true,false,false,false,false,true,false,false,6,false,false,false,insect
kiwi,false,true,true,false,false,false,true,false,true,true,false,false,2,true,false,false,bird
ladybird,false,false,true,false,true,false,true,false,false,true,false,false,6,false,false,false,insect
lark,false,true,true,false,true,false,false,false,true,true,false,false,2,true,false,false,bird
leopard,true,false,false,true,false,false,true,true,true,true,false,false,4,true,false,true,mammal
lion,true,false,false,true,false,false,true,true,true,true,false,false,4,true,false,true,mammal
lobster,false,false,true,false,false,true,true,false,false,false,false,false,6,false,false,false,invertebrate
lynx,true,false,false,true,false,false,true,true,true,true,false,false,4,true,false,true,mammal
mink,true,false,false,true,false,true,true,true,true,true,false,false,4,true,false,true,mammal
mole,true,false,false,true,false,false,true,true,true,true,false,false,4,true,false,false,mammal
mongoose,true,false,false,true,false,false,true,true,true,true,false,false,4,true,false,true,mammal
moth,true,false,true,false,true,false,false,false,false,true,false,false,6,false,false,false,insect
newt,false,false,true,false,false,true,true,true,true,true,false,false,4,true,false,false,amphibian
octopus,false,false,true,false,false,true,true,false,false,false,false,false,8,false,false,true,invertebrate
opossum,true,false,false,true,false,false,true,true,true,true,false,false,4,true,false,false,mammal
oryx,true,false,false,true,false,false,false,true,true,true,false,false,4,true,false,true,mammal
ostrich,false,true,true,false,false,false,false,false,true,true,false,false,2,true,false,true,bird
parakeet,false,true,true,false,true,false,false,false,true,true,false,false,2,true,true,false,bird
penguin,false,true,true,false,false,true,true,false,true,true,false,false,2,true,false,true,bird
pheasant,false,true,true,false,true,false,false,false,true,true,false,false,2,true,false,false,bird
pike,false,false,true,false,false,true,true,true,true,false,false,true,0,true,false,true,fish
piranha,false,false,true,false,false,true,true,true,true,false,false,true,0,true,false,false,fish
pitviper,false,false,true,false,false,false,true,true,true,true,true,false,0,true,false,false,reptile
platypus,true,false,true,true,false,true,true,false,true,true,false,false,4,true,false,true,mammal
polecat,true,false,false,true,false,false,true,true,true,true,false,false,4,true,false,true,mammal
pony,true,false,false,true,false,false,false,true,true,true,false,false,4,true,true,true,mammal
porpoise,false,false,false,true,false,true,true,true,true,true,false,true,0,true,false,true,mammal
puma,true,false,false,true,false,false,true,true,true,true,false,false,4,true,false,true,mammal
pussycat,true,false,false,true,false,false,true,true,true,true,false,false,4,true,true,true,mammal
raccoon,true,false,false,true,false,false,true,true,true,true,false,false,4,true,false,true,mammal
reindeer,true,false,false,true,false,false,false,true,true,true,false,false,4,true,true,true,mammal
rhea,false,true,true,false,false,false,true,false,true,true,false,false,2,true,false,true,bird
scorpion,false,false,false,false,false,false,true,false,false,true,true,false,8,true,false,false,invertebrate
seahorse,false,false,true,false,false,true,false,true,true,false,false,true,0,true,false,false,fish
seal,true,false,false,true,false,true,true,true,true,true,false,true,0,false,false,true,mammal
sealion,true,false,false,true,false,true,true,true,true,true,false,true,2,true,false,true,mammal
seasnake,false,false,false,false,false,true,true,true,true,false,true,false,0,true,false,false,reptile
seawasp,false,false,true,false,false,true,true,false,false,false,true,false,0,false,false,false,invertebrate
skimmer,false,true,true,false,true,true,true,false,true,true,false,false,2,true,false,false,bird
skua,false,true,true,false,true,true,true,false,true,true,false,false,2,true,false,false,bird
slowworm,false,false,true,false,false,false,true,true,true,true,false,false,0,true,false,false,reptile
slug,false,false,true,false,false,false,false,false,false,true,false,false,0,false,false,false,invertebrate
sole,false,false,true,false,false,true,false,true,true,false,false,true,0,true,false,false,fish
sparrow,false,true,true,false,true,false,false,false,true,true,false,false,2,true,false,false,bird
squirrel,true,false,false,true,false,false,false,true,true,true,false,false,2,true,false,false,mammal
starfish,false,false,true,false,false,true,true,false,false,false,false,false,5,false,false,false,invertebrate
stingray,false,false,true,false,false,true,true,true,true,false,true,true,0,true,false,true,fish
swan,false,true,true,false,true,true,false,false,true,true,false,false,2,true,false,true,bird
termite,false,false,true,false,false,false,false,false,false,true,false,false,6,false,false,false,insect
toad,false,false,true,false,false,true,false,true,true,true,false,false,4,false,false,false,amphibian
tortoise,false,false,true,false,false,false,false,false,true,true,false,false,4,true,false,true,reptile
tuatara,false,false,true,false,false,false,true,true,true,true,false,false,4,true,false,false,reptile
tuna,false,false,true,false,false,true,true,true,true,false,false,true,0,true,false,true,fish
vampire,true,false,false,true,true,false,false,true,true,true,false,false,2,true,false,false,mammal
vole,true,false,false,true,false,false,false,true,true,true,false,false,4,true,false,false,mammal
vulture,false,true,true,false,true,false,true,false,true,true,false,false,2,true,false,true,bird
wallaby,true,false,false,true,false,false,false,true,true,true,false,false,2,true,false,true,mammal
wasp,true,false,true,false,true,false,false,false,false,true,true,false,6,false,false,false,insect
wolf,true,false,false,true,false,false,true,true,true,true,false,false,4,true,false,true,mammal
worm,false,false,true,false,false,false,false,false,false,true,false,false,0,false,false,false,invertebrate
wren,false,true,true,false,true,false,false,false,true,true,false,false,2,true,false,false,bird
%
%
%
数据预处理:
一开始从网上下到的数据只有单纯的六百条记录,没有属性的划分WEKA不能读出。因此在数据中添加了如下语句:
@relation Synthetic_control3
@attribute 'a1' nominal
@data
从而使软件能够正确地识别数据记录及其属性。
2.2利用SimpleKMeans算法对数据进行聚类
2.2.1 K-means算法原理
K均值算法以k为输入参数,把n个对象的集合分成k个簇,使得结果内的相似程度最高,而簇间的相似程度低。簇的相似度是关于簇中对象的举止度量。可以看作簇的质心。
K均值算法的处理流程如下。首先,随机地选择k个对象,每一个对象代表一个簇的初始均值或者中心。对剩余的每一个对象,根据其与各个簇均值的距离,把它指派到最相似的簇。然后计算每一个簇新的均值。这个过程不断重复,知道准则函数收敛。其中准则函数定义如下:
其中,E是数据集所有对象的平方误差和,P是空间中的点,表示给定对象,
是簇
的均值。
算法描述:
输入:聚类个数k,以及包含 n个数据对象的数据库。
输出:满足方差最小标准的k个聚类。
处理流程:
(1) 从 n个数据对象任意选择 k 个对象作为初始聚类中心;
(2) 循环(3)到(4)直到每个聚类不再发生变化为止
(3) 根据每个聚类对象的均值(中心对象),计算每个对象与这些中心对象的距离;并根据最小距离重新对相应对象进行划分;
(4) 重新计算每个(有变化)聚类的均值(中心对象)
k-means 算法接受输入量 k ;然后将n个数据对象划分为 k个聚类以便使得所获得的聚类满足:同一聚类中的对象相似度较高;而不同聚类中的对象相似度较小。聚类相似度是利用各聚类中对象的均值所获得一个“中心对象”(引力中心)来进行计算的。
2.2.2 SimpleKMeans算法
K-Means 算法是应用最为广泛的聚类算法。SimpleKMeans算法是K-Means算法中最为简单的一种,也是在Weka软件中集成的一个算法,本次大作业中,我在Weka中,利用SimpleKMeans算法对数据集进行数据挖掘,主要是由于SimpleKMeans算法有K-Means算法应用广泛,具有代表性的特性,同时它有事一种最为简单的k-means算法,更加容易我们掌握,因此,此次我选择该算法作为我对zoo这一数据集进行聚类分析的原因。
利用WEKA对Synthetic Control Chart数据集进行聚类
1.打开weka界面,如下图:
在Application选项下选择Explorer.即可进入主界面。
2.导入数据集
在Proprocess选项卡,点击open files,即可导入数据集,但是WEKA只能处理.arff格式的数据,所以如果不是.arff格式,应该要做一下转换。
导入数据集:
3.经过数据预处理的数据集已经是规范的了,所以不需要再进行处理,可以直接进行聚类分析。选择Cluster,进入聚类操作的界面,点击chooose,在弹出的树形列表中可以选择要使用的聚类算法,再此我们使用Simlkmeans,点击choose右边的方框,在弹出的对话框中设着聚类的相关参数。截图如下:
设置参数如下:
点击start就可以开始进行聚类了
4. 聚类结果分析
Number of interations :2表明总共的迭代次数是2
Cluster centroids:之后列出了各个簇中心的位置。对于数值型的属性,簇中心就是它的均值(Mean);分类型的就是它的众数(Mode), 也就是说这个属性上取值为众数值的实例最多。对于数值型的属性,还给出了它在各个簇里的标准差(Std Devs)。
Clustered Instances:是各个簇中实例的数目及百分比。
为了观察可视化的聚类结果,在左下方“Result list”列出的结果上右击,点“Visualize cluster assignments”。弹出的窗口给出了各实例的散点图。可以看到如下图的可视化结果:
6.种子数据的选择
同样是SimpeKMeans算法,选择种子的数目不一样的时候,squared errors的值也会不一样,越小说明结果越精确。
Seed为100时: seed为50时:
Seed为15时:
3结论
通过本次作业,一方面,深入地了解了SimpleKMeans算法的基本原理、使用范围、不足等。另一方面,学习了Weka的用法。包括各种挖掘工具以及结果的含义。在完成本次作业的过程中,我对Weka的用法有了一个比较基本的了解,在这次用SimpleKMeans算法进行数据挖掘聚类分析的时候,通过聚类的结果更加明确了该算法的用途。后来,我又对另外一个Nominal的数据集进行了关联规则挖掘,发现了属性之间的关联。在完成本次大作业的过程中,我也遇到了许多的困难,碰到了许多的不明白的问题,但通过和同学之间的讨论以及搜索资料,最终,问题迎刃而解。通过完成这次大作业,培养了我独立学习和完成任务的能力,也激发了我对数据挖掘这一课程的学习兴趣。以后在课余时间,我仍会努力学习这一领域的知识。
4.参考文献
[1].Jiawei Han Micheline Kamber .数据挖掘概念与技术.().机械工业出版社.2006.08
[2]. 王娜译. WEKA 3-5-5 Explorer 用户指南
[3]. WEKA入门教程
[4]. http://archive.ics.uci.edu