文档章节

Weka开发[13]-Ensemble

pior
 pior
发布于 2015/10/20 20:27
字数 246
阅读 21
收藏 0
点赞 0
评论 0

   这一篇介绍一下如何使用Ensemble的类,不过提醒一下,不要什么都来个Ensemble,对这种毫无想象力可言的做法,我真是有点无语。

       我已经写了这么多篇了,我也有点累了,这篇也是有人发E-mail让我写的。大家就先自己看吧,至于是不是对的,我以后有机会了我看了,再告诉大家了。

package instanceTest;
 
import java.io.FileReader;
 
import weka.classifiers.Classifier;
import weka.classifiers.bayes.NaiveBayes;
import weka.classifiers.functions.LibSVM;
import weka.classifiers.functions.SMO;
import weka.classifiers.meta.AdaBoostM1;
import weka.classifiers.meta.Vote;
import weka.classifiers.trees.J48;
import weka.core.Instances;
import weka.core.SelectedTag;
 
public class EnsembleTest
{
    private Instances m_instances = null;
    
    public void getFileInstances( String fileName ) throws Exception
    {
        FileReader frData = new FileReader( fileName );
        m_instances = new Instances( frData );
        
        m_instances.setClassIndex( m_instances.numAttributes() - 1 );
    }
    
    public void AdaBoostClassify() throws Exception
    {
        LibSVM baseClassifier = new LibSVM();
        AdaBoostM1 classifier = new AdaBoostM1();
        classifier.setClassifier( baseClassifier );
        
        classifier.buildClassifier( m_instances );
        System.out.println( classifier.classifyInstance( m_instances.instance( 0 ) ) );
    }
    
    public void VoteClassify() throws Exception
    {
        Classifier baseClassifiers[] = new Classifier[3];
        baseClassifiers[0] = new J48();
        baseClassifiers[1] = new NaiveBayes();
        baseClassifiers[2] = new SMO();
        
        Vote classifier = new Vote();
        SelectedTag tag = new SelectedTag(Vote.MAJORITY_VOTING_RULE,Vote.TAGS_RULES);
        classifier.setCombinationRule( tag );
        classifier.setClassifiers( baseClassifiers );
        
        classifier.buildClassifier( m_instances );
        System.out.println( classifier.classifyInstance( m_instances.instance( 0 ) ) );
    }
    
    public static void main( String[] args ) throws Exception
    {
        EnsembleTest etest = new EnsembleTest();
        
        etest.getFileInstances( "F://Program Files//Weka-3-6//data//contact-lenses.arff");
        etest.AdaBoostClassify();
        etest.VoteClassify();
    }
}



本文转载自:

共有 人打赏支持
pior
粉丝 25
博文 151
码字总数 22496
作品 0
济南
高级程序员
Weka开发[6]-参数设置

这一次介绍的非常简单,会用传命令行参数的人就不用浪费时间看这一篇了,这一篇介绍weka中一些类参数传递的问题。 首先要传递参数当然要知道参数有哪些,有什么作用,要知道这些,建议用Wek...

pior ⋅ 2015/10/17 ⋅ 0

Weka开发[14]-AdaBoost源代码介绍

这一次讲的是Ensemble的东西,一位读者希望我讲一下Adaboost的内容,这种Ensemble看起来的确比较吓人,推荐一篇论文:Ensemble Based Systems in Decision Making. 在这里所有理论的东西我就...

pior ⋅ 2015/10/20 ⋅ 0

Weka开发[7]-LibSVM

首先要提的是LibSVM是一个库,Lib很明显是library的缩写,有些人不知道怎么会认为它是一种算法。它是由中国台湾的Chih-Chung Chang和Chih-Jen Lin等人开发的,他们用多种语言实现写了LibSVM。...

pior ⋅ 2015/10/17 ⋅ 0

Weka manual 3.6翻译: 16.2 数据载入

最近谷歌译员访问很是不顺,翻译只能先放着了 这篇的格式也不调了,每次粘贴过来都要手动调整格式,太累了,也不知是我格式的问题还是OSC博客的问题 看不顺的话可以点这,会好些。 16.2 数据...

Honghe ⋅ 2012/11/25 ⋅ 0

Weka开发[5]-半监督算法

这次介绍一个我现在正在做的半监督算法,因为我只是提出一个框架,半监督算法只是一个工具,可是为了找这个工具也让我花了不少功夫。现在介绍的暂时不是Weka的一部分,但开发者是waikato大学...

pior ⋅ 2015/10/17 ⋅ 0

Weka manual 3.6翻译: 1.1 简介

第一章 Weka命令行入门 1.1简介 在最初的实验,Weka所包含的图形用户界面是相当足够,若深入使用则建议使用命令行界面,因为它提供了一些功能(这些功能在图形用户界面下不可用) - 并使用少...

Honghe ⋅ 2012/11/24 ⋅ 0

Weka 开发[1]-Instances类

言归正传,开始介绍Weka,先google一下,把Weka软件下载下来,在Weka的目录中有一个weka.jar的包。 把包添加到工程中后,就可以调用weka中的函数了。 再介绍一点weka的基本知识,在weka的目录...

pior ⋅ 2015/10/17 ⋅ 0

[转]五个免费开源的数据挖掘软件

Orange Orange 是一个基于组件的数据挖掘和机器学习软件套装,它的功能即友好,又很强大,快速而又多功能的可视化编程前端,以便浏览数据分析和可视化,基绑定了 Python以进行脚本开发。它包...

红薯 ⋅ 2010/12/14 ⋅ 8

数据预处理和weka.filters的使用--数据挖掘学习和weka使用(三)

上一篇介绍了arff格式,这是weka专有格式,一般情况需要我们从其他数据源抽取或者获得。weka支持从cvs转化,也可以从数据库中抽取,界面如下图 weka安装目录有一个data目录,里面有一些测试数...

长平狐 ⋅ 2013/11/25 ⋅ 0

25 个 Java 机器学习工具和库

本列表总结了25个Java机器学习工具&库: 1. Weka集成了数据挖掘工作的机器学习算法。这些算法可以直接应用于一个数据集上或者你可以自己编写代码来调用。Weka包括一系列的工具,如数据预处理...

oschina ⋅ 2015/12/28 ⋅ 11

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Java NIO之字符集

1 字符集和编解码的概念 首先,解释一下什么是字符集。顾名思义,就是字符的集合。它的初衷是把现实世界的符号映射为计算机可以理解的字节。比如我创造一个字符集,叫做sex字符集,就包含两个...

士别三日 ⋅ 40分钟前 ⋅ 0

Spring Bean基础

1、Bean之间引用 <!--如果Bean配置在同一个XML文件中,使用local引用--><ref bean="someBean"/><!--如果Bean配置在不同的XML文件中,使用ref引用--><ref local="someBean"/> 其实两种......

霍淇滨 ⋅ 45分钟前 ⋅ 0

05、基于Consul+Upsync+Nginx实现动态负载均衡

1、Consul环境搭建 下载consul_0.7.5_linux_amd64.zip到/usr/local/src目录 cd /usr/local/srcwget https://releases.hashicorp.com/consul/0.7.5/consul_0.7.5_linux_amd64.zip 解压consu......

北岩 ⋅ 48分钟前 ⋅ 0

Webpack 4 api 了解与使用

webpack 最近升级到了 v4.5+版 01 官方不再支持 node4 以下版本 官方不再支持 node4 以下版本官方不再支持 node4 以下的版本,所以如果你的node版本太低,先开始升级node吧!话说node10 ...

NDweb ⋅ 58分钟前 ⋅ 0

使用nodeJs安装Vue-cli

Vue脚手架就是一个Vue框架开发环境 脚手架的意思是帮你快速开始一个vue的项目,也就是给你一套vue的结构,包含基础的依赖库,只需要 npm install就可以安装,让我们不需要为了编辑或者一些其...

木筏笔歆 ⋅ 今天 ⋅ 0

【微信小程序开发实战】0x00.开发前准备工作

写在开始 本人资深后端码农一枚,近期项目需求,接触到了微信小程序,将学习过程整理成文分享给小伙伴们,由于是边学边整理难免有表述不对的地方,望大家及时指正,感谢。 本人微信号: dream...

dreamans ⋅ 今天 ⋅ 0

linux redis的安装和php7下安装redis扩展

安装redis服务器 (1)下载安装包: $ wget http://download.redis.io/releases/redis-2.8.17.tar.gz (2)编译程序: $ tar xzf redis-2.8.17.tar.gz $ cd redis-2.8.17 $ make $ cd src &&......

concat ⋅ 今天 ⋅ 0

Guava EventBus源码解析

一、EventBus使用场景示例 Guava EventBus是事件发布/订阅框架,采用观察者模式,通过解耦发布者和订阅者简化事件(消息)的传递。这有点像简化版的MQ,除去了Broker,由EventBus托管了订阅&...

SaintTinyBoy ⋅ 今天 ⋅ 0

http怎么做自动跳转https

Apache 版本 如果需要整站跳转,则在网站的配置文件的<Directory>标签内,键入以下内容: RewriteEngine on RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*)?$ https://%{SERVER_NAME......

Helios51 ⋅ 今天 ⋅ 0

Python爬虫,抓取淘宝商品评论内容

作为一个资深吃货,网购各种零食是很频繁的,但是能否在浩瀚的商品库中找到合适的东西,就只能参考评论了!今天给大家分享用python做个抓取淘宝商品评论的小爬虫! 思路 我们就拿“德州扒鸡”...

python玩家 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部