Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 3220978
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 17, 20262026-05-17T15:49:24+00:00 2026-05-17T15:49:24+00:00

Here is an example of my problem library(RWeka) iris <- read.arff(iris.arff) Perform nfolds to

  • 0

Here is an example of my problem

library(RWeka)
iris <- read.arff("iris.arff")

Perform nfolds to obtain the proper accuracy of the classifier.

m<-J48(class~., data=iris)
e<-evaluate_Weka_classifier(m,numFolds = 5)
summary(e)

The results provided here are obtained by building the model with a part of the dataset and testing it with another part, therefore provides accurate precision

Now I Perform AdaBoost to optimize the parameters of the classifier

m2 <- AdaBoostM1(class ~. , data = temp ,control = Weka_control(W = list(J48, M = 30)))
summary(m2)

The results provided here are obtained by using the same dataset for building the model and also the same ones used for evaluating it, therefore the accuracy is not representative of real life precision in which we use other instances to be evaluated by the model. Nevertheless this procedure is helpful for optimizing the model that is built.

The main problem is that I can not optimize the model built, and at the same time test it with data that was not used to build the model, or just use a nfold validation method to obtain the proper accuracy.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-17T15:49:24+00:00Added an answer on May 17, 2026 at 3:49 pm

    I guess you misinterprete the function of evaluate_Weka_classifier. In both cases, evaluate_Weka_classifier does only the cross-validation based on the training data. It doesn’t change the model itself. Compare the confusion matrices of following code:

    m<-J48(Species~., data=iris)
    e<-evaluate_Weka_classifier(m,numFolds = 5)
    summary(m)
    e
    
    
    m2 <- AdaBoostM1(Species ~. , data = iris ,
           control = Weka_control(W = list(J48, M = 30)))
    e2 <- evaluate_Weka_classifier(m2,numFolds = 5)
    summary(m2)
    e2
    

    In both cases, the summary gives you the evaluation based on the training data, while the function evaluate_Weka_classifier() gives you the correct crossvalidation. Neither for J48 nor for AdaBoostM1 the model itself gets updated based on the crossvalidation.

    Now regarding the AdaBoost algorithm itself : In fact, it does use some kind of “weighted crossvalidation” to come to the final classifier. Wrongly classified items are given more weight in the next building step, but the evaluation is done using equal weight for all observations. So using crossvalidation to optimize the result doesn’t really fit into the general idea behind the adaptive boosting algorithm.

    If you want a true crossvalidation using a training set and a evaluation set, you could do the following :

    id <- sample(1:length(iris$Species),length(iris$Species)*0.5)
    m3 <- AdaBoostM1(Species ~. , data = iris[id,] ,
          control = Weka_control(W = list(J48, M=5)))
    
    e3 <- evaluate_Weka_classifier(m3,numFolds = 5)
    # true crossvalidation
    e4 <- evaluate_Weka_classifier(m3,newdata=iris[-id,])
    
    summary(m3)
    e3
    e4
    

    If you want a model that gets updated based on a crossvalidation, you’ll have to go to a different algorithm, eg randomForest() from the randomForest package. That collects a set of optimal trees based on crossvalidation. It can be used in combination with the RWeka package as well.

    edit : corrected code for a true crossvalidation. Using the subset argument has effect in the evaluate_Weka_classifier() as well.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Here's a perfect example of the problem: Classifier gem breaks Rails . ** Original
OK, probably best to give an example here of what I mean. Imagine a
Here is an example of what I've got going on: CREATE TABLE Parent (id
Here is an example of polymorphism from http://www.cplusplus.com/doc/tutorial/polymorphism.html (edited for readability): // abstract base
here is my example code: Public Class Parent Private _TestProperty As String Private WithEvents
Here's an example: Double d = (1/3); System.out.println(d); This returns 0, not 0.33333... as
Here is an example: <h:outputText value=#{myBean.myMoney}> <f:convertNumber type=currency currencySymbol=$ /> </h:outputText> Given that I
Here's an example: >git status # On branch master nothing to commit (working directory
Here is an example that a forum poster gave, I can't tell if this
Here's an example of the query I'm trying to convert to LINQ: SELECT *

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.