weka 的重新编译与添加算法
weka 源码编译步骤
1 安装 JDK 环境和 Java 开发环境,例如 Eclipse。
2 安装 WEKA(安装不带 JRE 的 WEKA 即可)。
3 重新编译:
3.1 创建工作目录。新建任意一目录在任意位置(在 Eclipse 的 workspace 中或桌
面,打开 myeclipse 时选该文件夹即可)。
3.2 准备源代码。在 WEKA 的安装目录中找到 weka-src.jar,解压成 weka-src 到
刚才建的目录下。
3.3 创建项目。打开 myEclipse,文件->新建->项目->Java 项目->项目名与刚才
建的目录名(weka-sr)一样,点击下一步就会加载解压的文件,可以看到有 main/src
test/src。点确定就行了。
3.4 编译运行。选择刚创建的项目 WEKA-Rebuild,run as Java Application,等
待弹出对话框选择主类,weka.gui.main(输入 main 即可看到)。不一会,WEKA 界
面出现,和开始菜单里运行的 WEKA 效果一样。重编译成功。
注意点:可能加载的程序有语法错误,vector<object>不可以等等。此时应该在项目-》
属性中将 jdk 等级调到 1.5 或以上可能就好了。
添加新算法
今天刚刚成功的向 Weka 中加入了新算法,现总结一下我的操作步骤:
1. 编写新算法,所编写的新算法必须符合 Weka 的接口标准,自己随意编写的 java
文件(Me.java)能 copy 到 myeclipse 对应的包中(如 weak.classi+ers),但运行本项
目时(weka.gui.GUIChooser.java 或 weka.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 from 的 weka.clusterers.Clusterer=\下加入:
weka.clusterers.FuzzyCMeans,
添加到对应行后即可,不必最后一行。
4. 相应的修改 weka.gui.GenericPropertiesCreator.props ,此去不用修改,因为
包 weka.clusterers 已经存在,若加入新的包时则必须修改这里,加入新的包
我试了一下,这样加入之后,重新编译,运行后,可以在 weka 的 Explorer 界面上的
Cluster 选项卡中的聚类算法中找到刚刚新添加的 FuzzyCMeans 算法。
参考:
http://hi.baidu.com/sjmclc/blog/item/8beef445276c8325c@ca397.html
http://hi.baidu.com/dingzhoufang/blog/item/34f67810b12e8df8c3ce79d9.html
#dm&ml
评论5
最新资源