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的clone,有必要先温习以下的知识。
java的类型,java的类型分为两大类,一类为primitive,如int,另一类为引用类型,如String,Object等等。
java引用类型的存储,java的引用类型都是存储在堆上的。
public class B {
int a;
String b;
public B(int a, String b) { ......
首先有三个概念需要了解:
一.静态初始化:是指执行静态初始化块里面的内容。
二.实例初始化:是指执行实例初始化块里面的内容。
三.构造方法:一个名称跟类的名称一样的方法,特殊在于不带返回值。
对于这三个概念,给出以下程序,方便理解:
Java代码
class Book{ ......
1.背景、形势
能够进行Web开发的编程语言和技术很多
(1) 动态解释语言
PHP; Perl; Python (Zope, Plone); Ruby (Ruby on Rails);
(2) 编译语言
Java; .net
Java Web开发远非一枝独秀:
除了受到来自.net 这个重量级对手的最大挑战之外,更受到Zope, Ruby on Rail 等新式轻骑兵的冲击(当然,也继续受到老式轻 ......
这个关于JMS(Java Message Service)的概要回答了下面几个问题:
1.什么是消息?
2.么是JMS API?
3.如何使用JMS API?
4. JMS API是如何与J2EE平台一起工作的?
1.1什么是消息?
消息是软件组件或者应用之间交流的一种方法。消息系统是一个点对点的功能,一个消息客户端可以发送和接 ......
C++与Java异同
1、指针★★★★★
C C++中的指针,提供了很大的灵活性,但是灵活也带来了危险,对指针操作的不当容易造成内存泄露或是空悬指针等问题。
Java取消了指针。但实际上,java中声明的所有引用数据类型的名称,可以理解为就是一个指针。该名称存储在栈内存上,指向对内存上使用new开辟的空间。
如:
int[] ......