Java程序通过weka调用libsvm的方法
Java程序通过weka调用libsvm的方法 收藏
在《在eclipse下使用java调用weka》的基础上,使用《在eclipse下使用java调用weka》中介绍的方法添加libsvm的两个jar包(libsvm.jar和wlsvm.jar)及weka的jar包,这三个包可以从这里下载:http://download.csdn.net/source/1749854。
然后在import诸语句下添加:
import wlsvm.WLSVM;
然后把原代码中的
Classifier m_classifier = new J48();
改为:
Classifier m_classifier = new WLSVM();
然后运行就是使用SVM分类了,当然,最后把输出句的
System.out.println("J48 classification precision:"+(right/sum));
改为:
System.out.println("");
System.out.println("SVM classification precision:"+(right/sum));
Libsvm有一个问题就是内存占用比较大,经常会提示如下错误:
java.lang.OutOfMemoryError: Java heap space
在内存不足的情况下的确无法解决,但内存充足的话,可以配置一下程序所能占用的内存大小参数。设置方法:
1. 在Package Explorer中选中调用libsvm的类;
2. 在菜单中单击Run->run configuration…->右面的(x=)arguments页中的VM arguments文本框中输入-Xmx1024M。//表示最大可使用1024M内存,大家可以根据实际情况设置。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/felomeng/archive/2009/10/18/4688414.aspx
相关文档:
首先有三个概念需要了解:
一.静态初始化:是指执行静态初始化块里面的内容。
二.实例初始化:是指执行实例初始化块里面的内容。
三.构造方法:一个名称跟类的名称一样的方法,特殊在于不带返回值。
对于这三个概念,给出以下程序,方便理解:
Java代码
class Book{ ......
1、Oracle8/8i/9i数据库(thin模式)
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl";
//orcl为数据库的SID
String user="test";
String password="test";
Connection conn= DriverManager.getConnection(url,user,password);
2、DB2 ......
今天我在听张孝祥老师讲的Java加强视频,张老师说:Java基础加强知识代表了一种java功力,也代表了你的学习能力,能掌握这些知识说明你以前的学习能力不错,具备这些知识,也说明你未来掌握新知识的潜能不错。我觉得张老师说的有道理,我的Java基础不是很好,因此,我要好好学学张老师讲的基础加强视频。
首先张老 ......