weka的重新编译和添加算法

weka的重新编译与添加算法

weka源码编译步骤

1           安装JDK环境和Java开发环境,例如Eclipse

2           安装WEKA(安装不带JREWEKA即可)。

3           重新编译:

3.1          创建工作目录。新建任意一目录在任意位置(在Eclipseworkspace或桌面,打开myeclipse时选该文件夹即可)。

3.2          准备源代码。在WEKA的安装目录中找到weka-src.jar,解压weka-src到刚才建的目录下。

3.3          创建项目。打开myEclipse,文件->新建->项目->Java项目->项目名与刚才建的目录名weka-sr一样,点击下一步就会加载解压的文件,可以看到有main/src test/src。点确定就行了。

3.4          编译运行。选择刚创建的项目WEKA-Rebuildrun as Java Application,等待弹出对话框选择主类,weka.gui.main(输入main即可看到)。不一会,WEKA界面出现,和开始菜单里运行的WEKA效果一样。重编译成功。

注意点:可能加载的程序有语法错误,vector<object>不可以等等。此时应该在项目-》属性中将jdk等级调到1.5或以上可能就好了。

添加新算法

今天刚刚成功的向Weka中加入了新算法,现总结一下我的操作步骤:

1.      编写新算法,所编写的新算法必须符合Weka 的接口标准,自己随意编写的java文件(Me.java)能copymyeclipse对应的包中(weak.classifiers),但运行本项目时(weka.gui.GUIChooser.javaweka.gui.Main.java)在weka中不能看到因此新算法必须符合weka规范。在此以从Weka中文站上下载的一个算法(模糊C均值聚类算法:FuzzyCMeans)的添加为例说明其具体过程。

2.      由于FuzzyCMeans是聚类算法,所以直接将FuzzyCMeans.java 源程序考到 weka.clusterers 包下

3.      再修改weka.gui.GenericObjectEditor.props ,在#Lists the Clusterers I want to choose fromweka.clusterers.Clusterer=\下加入:weka.clusterers.FuzzyCMeans

添加到对应行后即可,不必最后一行。

4.      相应的修改weka.gui.GenericPropertiesCreator.props ,此去不用修改,因为包weka.clusterers已经存在,若加入新的包时则必须修改这里,加入新的包

我试了一下,这样加入之后,重新编译,运行后,可以在wekaExplorer界面上的Cluster选项卡中的聚类算法中找到刚刚新添加的FuzzyCMeans算法。

ps:貌似这样做了之后,clusters下只是由FuzzyCMeans这个名字,但这个算法是不能使用的;而且网上下的一个FuzzyCMeans竟然有错误,苍天啊~~~~~~~~~~~~~

参考:

http://hi.baidu.com/sjmclc/blog/item/8beef445276c8325cffca397.html

http://hi.baidu.com/dingzhoufang/blog/item/34f67810b12e8df8c3ce79d9.html

#dm&ml

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值