长沙弱电工程公司:利用WEKA编写数据挖掘算法 - 数据挖掘

来源:百度文库 编辑:偶看新闻 时间:2024/05/03 10:15:07
利用WEKA编写数据挖掘算法

WEKA是由新西兰怀卡托大学开发的开源项目。WEKA是由JAVA编写的,并且限制在GNU通用公众证书的条件下发布,可以运行在所有的操作系统中。WEKA工作平台包含能处理所有标准数据挖掘问题的方法:回归、分类、聚类、关联规则挖掘以及属性选择。作为数据挖掘爱好者自然要对WEKA的源代码进行分析并以及改进,努力写出自己的数据挖掘算法。
下面着重介绍一下如何利用WEKA编写新的数据挖掘算法:
注意:WEKA的版本有两个版本:稳定版(STABLE)和开发版(DEVELOP),不同WEKA版本与不同JDK的版本匹配,稳定版WEKA3-4的与JDK1.4.2匹配,而开发版WEKA3-5与JDK1.5匹配,WEKA3-5新加入了对数据库的数据连接。稳定版直接下载weka-src.jar文件就行了,而开发版需使用CVS连接到sourceForge下载,:pserver:cvs_anon@cvs.scms.waikato.ac.nz:/usr/local/global-cvs/ml_cvs。本文以稳定版为例。
一、首先从WEKA官方网站(http://www.cs.waikato.ac.nz/ml/weka)下载WEKA程序包。将程序包解压获得weka-src.jar源文件,再将源代码解压缩导入某个JAVA开发工具中(图1),如:JBuilder,Eclipse,Netbeans等。我现在以Netbeans为例。

图1 : weka导入Netbeans
二、为了不与WEKA中已包含的算法相冲突,最好自己建立一个JAVA包,将自己编写的挖掘算法存放在该包内(图2)。我以建立hzm包为例:

图2 : 建立新weka包
三、在新的包hzm内建立新的java类,然后双击编写数据挖掘算法程序代码,本人以实现ID3算法为例讲解具体操作过程。

再将weka.classifiers.trees下的id3算法复制到新建的ID3类中(这只是演示,当然最好还是自己写新的挖掘算法),修改一下类中提示的错误,保存就行了。
四、编写好新的挖掘算法并不能马上在weka中exlorer模式中看到,还要修改weka.gui包中的GenericObjectEditor.props文件。如:我刚才建立的ID3类在weka.classifiers.hzm包中,就要在GenericObjectEditor.props中的# Lists the Classifiers I want to choose from段后添加weka.classifiers.hzm.ID3,\

五、就可以编译整个weka项目,在选择主类时选择weka.gui.GUIChooser这个类,就可以运行和调试你编写好的算法了,祝大家都能写出优秀的挖掘算法!
注意:稳定版3-4修改GenericObjectEditor.props文件即可,但开发版3-5还要多修改同目录下的GenericProertiesCreator.props文件。
发表于: 2007-04-02,修改于: 2007-04-18 19:32,已浏览1233次,有评论3条推荐投诉

网友: 本站网友 时间:2007-04-10 21:40:24 IP地址:218.2.216.★
多谢楼住,但是我在最后编译运行阶段不知如何运行,我的平台是eclipse.它首先寻找主函数,不只运行哪一个,谢谢赐教.我的油箱damaolala@gmail.com
网友: 本站网友 时间:2007-11-19 10:53:05 IP地址:59.41.253.★
选weka.gui.GUIChooser这个类的主函数运行即可!