Weka学习(6)-Weka 与 Matlab混合编程
一 spider主页http://www.kyb.mpg.de/bs/people/spider/ (也可以在google上搜索spider
matlab得到),关于它的介绍可以参考网址资料
二 使用时为matlab+spider+Weka;因为spider中的一些算法引用了Weka,比如j48
安装注意:
1 matlab7(R14)
6.5版本对java的支持不够,还没有开发javaclasspath等函数
??? Undefined function or variable 'javaclasspath'.
??? Undefined function or variable 'javaaddclasspath'.
2 jre1.4.2
matlab7自带的是1.4.2;matlab6自带的是1.3.可以在D:\MATLAB7\sys\java\jre\win32下看到。如果装了matlab7,使用它自带的1.4.2就可以了,尤其不要使用1.6,因为1.6太新了,matlab还不支持。可以在Matlab下使用
version -java查看JVM版本。
如果你想使用1.5的话,C:\Program
Files\Java\jre1.5.0_10;把jre1.5.0_10这个文件夹拷贝到D:\MATLAB7\sys\java\jre\win32下,然后增加环境变量MATLAB_JAVA:D:\MATLAB7\sys\java\jre\win32\jre1.5.0_10。这一步如果有问题的话,重启Matlab会给出错误提示。找不到什么什么文件...
3 Weka3.4.10
使用weka版本低一些即可,高的不行,因为高版本的weka可能是用高版本的jvm支持的。
我使用的组合是
matlab7(R14)+jre1.4.2(matlab7自带的,不需要任何设置)+Weka3.4.10
三 使用方法
1
下载spider,有core和extra两个压缩包,把他们解压到同一个文件夹spider下面,然后放到$matlabroot\toolbox下面
2下载weka3.4.10,找到weka.jar放到$matlabroot\java\jar下面
3 启动Matlab打开$matlabroot\toolbox\spider\use_spider.m运行
提示spider的一些信息和 WEKA support enabled!表示成功了。
然后可以使用 help spider命令查看信息,他的功能列出如附录,然后就可以训练了。
四 一个简单的例子
X=rand(50)-0.5; Y=sign(sum(X,2));
dtrain=data(X,Y);
%生成训练集,也可以使用load()从文件读取
model=train(svm,dtrain));
%使用函数train()训练模型
rtest=test(dtest,model);
%使用训练好的模型对验证集dtest测试,返回测试结果
五 附录spider信息
最新spider Version 1.71 (24/7/2006)
Basic library objects. data - Storing input data and output results data_global - Implementation of data object that limits memory overhead
algorithm - Generic algorithm object
group - Groups sets of objects together (algorithms or data) loss - Evaluates loss functions
get_mean - Takes mean loss over groups of algs
chain - Builds chains of objects: output of one to input of another
param - To train and test different hyperparameters of an object
cv - Cross validation using objects given data
kernel - Evaluates and caches kernel functions
distance - Evaluates and caches distance functions
Statistical Tests objects.
wilcoxon - Wilcoxon test of statistical significance of results
corrt_test - Corrected resampled t-test - for dependent trials
Dataset objects.
spiral