利用WEKA平台提升数据挖掘课程教学效果

2015-12-15 15:22谭征王立宏
教育教学论坛 2014年52期
关键词:教学效果

谭征++王立宏

摘要:目前,数据挖掘原理与算法这门课在教学中主要以讲授经典的算法和理论为主,枯燥的算法分析和理论介绍很难引起学生的兴趣,而吸引学生并让他们体验到实践效果对完成教学目标尤为重要。本文讨论了以挖掘软件WEKA为平台进行教学的思路。

关键词:WEKA平台;数据挖掘课程;教学效果

中图分类号:G642.41 文献标志码:A 文章编号:1674-9324(2014)52-0158-02

一、引言

数据挖掘是将隐含的,尚不为人所知的,同时又是潜在有用的信息从数据中提取出来,建立计算机程序,自动在数据库中搜索,已发现规律或者模式[1]。很多高校,包括世界上的一些著名高校都开设了数据挖掘课程。课程基础理论部分,一般包括数据预处理、关联规则、分类、聚类、时间序列挖掘、web挖掘等内容,通过该课程的学习使学生学会分析研究挖掘中数据预处理、常用算法、结果的可视化等,并培养学生的数据抽象能力,提高学生的专业素质,为学生毕业后从事有关的工作打下一个良好的基础[2]。数据挖掘是多学科交叉而产生的一门新技术,涉及的知识面很多,现在教材上主要介绍的都是一些经典的算法和理论,比较枯燥,很难引起学生的兴趣。数据挖掘从一开始就是应用性的科学,它有很强的实验性,因此,在数据挖掘实验中选择合适的数据挖掘软件非常重要[3]。商用的数据挖掘软件很多,怀卡托大学的Weka小组荣获了数据挖掘和知识探索领域的最高服务奖,Weka系统得到了广泛的认可,被誉为数据挖掘和机器学习历史上的里程碑。因此,我们将Weka引入到数据挖掘的课堂教学实践中。首先,是任课教师在讲授经典算法的同时,通过Weka的可视化界面展示经典算法和实例的运行效果;也可以应用WEKA的多种算法对某一实例进行对比演示,在课程作业环节,为学生布置了一些现实应用,并要求他们借助WEKA自己解决[4]。这样,学生通过Weka平台可以看到经典算法实现的效果,也可以自己动手完成作业,有能力的同学还可以通过Weka软件实现自己的算法,或者是对现有算法的改进实现。让枯燥变得有趣,让抽象变成实现,引导学生了解数据挖掘课程的作用,培养他们利用所学知识解决实际问题的动手能力和发现问题、解决问题、评估问题的研究能力[4]。

二、Weka简介

Weka是由新西兰怀卡托大学开发的,是怀卡托智能分析系统的缩写。Weka用Java写成,并且限制在GUN通用公证书的条件下发布。它可运行于几乎所有的操作平台,包括Linux,Windows,Macintosh操作系统。Weka工作平台能处理所有标准数据挖掘问题的方法:回归、分类、聚类、关联规则挖掘及属性选择。WEKA要求的数据形式必须是ARFF格式,CSV格式,C4.5格式。WEKA存储数据的格式是ARFF文件,这是一种ASCII文本文件,表格里的行称作一个实例Instance,一个列称作一个属性Attribute。这样的表格呈现了属性之间的一种关系。

Weka的使用方式之一是将一种学习方法应用于一个数据集,然后分析其输出,从而更多地了解这些数据。另一种方式,则是使用已学到的模型对新实例做出预测。第三种方式是应用几种不同的学习器,根据他们的性能表现选择其中的一种来做预测。Weka中最有价值的部分是真实学习方案的实现。其次,当属数据预处理工具也就是过滤器。当用户运行Weka后,必须从如下四种不同的用户界面中做出选择:探索者、知识流、实验者和命令界面。使用Weka最简单的方法,是通过称作探索者(explorer)的图形界面,通过这个用户界面,所有weka功能都可以由菜单选择及表单填写的方式完成。知识流界面(Knowledge Flow),使用户能知道自己如何处理流动中的数据。知识流允许用户在屏幕上任意拖动代表学习算法和数据源的方框,并将他们结合在一起设置。实验者界面是专门设计来帮助用户在实际应用中将不同的学习技术进行比较,因为它能使具有不同参数设定的分类器和过滤器在运行一组数据时更加容易,收集性能统计数据及实现显著性测试时更加简便。Weka可由以下网址获取:http://www.cs.waikato.ac.nz/ml/WEKA。用户既可以下载一个与具体操作系统相匹配的安装文件,也可以下载一个可执行的Java包文件,然后在已安装了Java的机器上以通常的方式运行。

三、课堂教学实例

分类的目的是学会一个分类函数或分类模型(分类器)。该模型能把数据库中的数据映射到给定类别中的某一个。教材中有一个天气的数据集,通过Weka平台演示决策树的生成过程,通过直观教学,使学生掌握决策树算法的本质思想,激发他们掌握算法的兴趣。

1.准备数据。数据通常存于电子数据表格或数据库中。Weka存储数据的原始方式是ARFF格式,ARFF文件由一组实例组成,每个实例的属性由逗号分开。用户需将文件载入文字处理软件中,用@relation标签给该数据集取个名字,用@attribute标签加入属性信息,再另起一行键入@data,最后将文件以纯文本方式存储。我们采用的是Weka自带的weather.arff数据文件。

2.将数据载入探索者。启动Weka,从底部的四个图形用户界面中(SimpleCLI、Explorer、Experimenter、knowledgeflow)选择探索者,面板顶部的六个标签代表着探索者的基本功能,进入预处理阶段(preprocess),单击Open file按钮,选择weather.arff,该数据集有14个实例和5个属性(temperature,humidity,outlook,windy,play),play被选为类属性,选择一个属性值,面板右下方的柱状图表明了相对于该属性每个值,play的两种值(yes,no)个字出现的比率,用户可以任选其他属性并画出对应的柱状图。在这个过程中,以可视的形式给学生展示了数据预处理、数据格式等和算法相关的知识[4]。endprint

3.建立决策树。采用的决策树分类算法为C4.5,实际上这个算法的Weka实现称为J4.8,因此,选择classify标签,单击choose按钮,在层级菜单中tree的里面找到J4.8,单击start,分类器开始工作,然后显示结果。结果的开头给出了数据集概要及评估方法(默认10折交叉),先根据属性阴晴进行分割,然后根据湿度和刮风在第二层次上进行分割。如果有被错误分割的实例也会被列出。

4.运用模型。WEKA对结果的一些特殊指标提供了图形化演示和文件导出的灵活功能。右键单击弹出的菜单中的几个选项,允许用户以不同的方式可视化所得各种方法的结果。探索者界面顶部有一个Visualize标签可以显示数据集。右键单击历史列表中的项目,用户可以看到树的结构。

四、用Weka做作业

数据挖掘算法在现实生活中得到了广泛的应用,比如文本分类、医学图像处理、客户信息管理等。可以将这些领域中的现实问题提出作为课程作业布置给学生,要求他们利用典型的数据挖掘算法来解决。但是,学生需要花费大量的时间去实现这些算法,算法实现后,还要考虑结果的可视化,再加上有些算法的实现确实有很大的难度,学生在多次尝试失败后容易放弃,更谈不上完成作业了。WEKA,作为全世界公认的最好的数据分析平台,不仅提供了大量经典机器学习算法的实现,而且提供了方便的数据输入、结果输出和可视化功能,使得学生集中完成作业,并通过各种算法的对比找出最合适的一个,甚至部分学生还可以对算法做出一定的改进。留给学生的题目有以下几个。

1.分析客户关系管理。将关联规则挖掘应用于客户关系管理的最终目的是努力将潜在客户转变为现实客户,将满意客户转变为忠诚的终生客户,提高客户满意程度,降低市场销售及宣传成本,增加利润率。住房管理数据仓库中的大量数据背后蕴含着丰富的有待开采的信息资源,利用关联规则挖掘的Apriori算法,充分挖掘出这些隐藏的信息,并基于各种参数对挖掘结果进行评价,为企业决策提供支持[2]。

2.中文文本分类。根据我校教学督评中心提供的学生对教师的中文评教文本,利用分类的方法找出其评价的倾向性,要求完成特征选择、分类。引导学生阅读相关论文,实现一些网络文本的分类。

3.医学图像处理。根据医院提供的医学图像,利用密度聚类算法,在对图像进行预处理的基础上,识别其中的细胞图像。

五、结束语

数据挖掘中的很多算法比较抽象难懂,设计的理论知识较多。很多学校开设了这门课程,如果实验环节单纯依靠学生自己编程实现算法,有一定难度。学生也会因为畏难情绪而失去对这门课学习的兴趣。本文提出的利用Weka平台作为演示经典算法和学生完成作业的途径,收到了比较好的效果。但是,Weka平台也存在着一些局限性,可以通过其他数据挖掘软件进行补充。

参考文献:

[1]Data Mining Practical Machine Learning Tools and Techniques(Second Edition)[M].北京:机械工业出版社,2007.12,241-285

[2]谭征,孙红霞,王立宏.基于实例的本科“数据挖掘”课程教学探索[J].计算机教育,2013,(9).

[3]赵阳.Weka系统及其在数据挖掘教学中的应用[J].科技信息,2008,(30).

[4]高明霞,方娟,毛国君.开源工具在机器学习教学中的应用[J].计算机教育,2009,(2).

[5]李德有,李凌霞,郭瑞波.基于Weka平台的机器学习方法探究[J].电脑知识与技术,2012,(8)endprint

猜你喜欢
教学效果
生物化学线上线下混合式教学效果分析
小学语文教学效果的提高策略
掌握“函数的表示”提高高中数学教学效果
用信息技术增强初中篮球教学效果
好的板书是提高语文课堂教学效果的重要途径
关于提高开放电大“统计学原理”教学效果的探讨
巧用电教优势,促进语文教学效果
如何提高高中声乐教学效果
提高病理学教学效果的几点体会
加强焊接教学质量提高焊接教学效果的探讨