Package weka.classifiers.rules

# Class M5Rules

java.lang.Object
weka.classifiers.Classifier
weka.classifiers.trees.m5.M5Base
weka.classifiers.rules.M5Rules

All Implemented Interfaces:
  `Serializable`, `Cloneable`, `AdditionalMeasureProducer`, `CapabilitiesHandler`, `OptionHandler`, `RevisionHandler`, `TechnicalInformationHandler`

public class M5Rules extends M5Base implements TechnicalInformationHandler
Generates a decision list for regression problems using separate-and-conquer. In each iteration it builds a model tree using M5 and makes the "best" leaf into a rule.
For more information see:
Geoffrey Holmes, Mark Hall, Eibe Frank: Generating Rule Sets from Model Trees. In: Twelfth Australian Joint Conference on Artificial Intelligence, 1-12, 1999.
Ross J. Quinlan: Learning with Continuous Classes. In: 5th Australian Joint Conference on Artificial Intelligence, Singapore, 343-348, 1992.
Y. Wang, I. H. Witten: Induction of model trees for predicting continuous classes. In: Poster papers of the 9th European Conference on Machine Learning, 1997.

BibTeX:

     @inproceedings{Holmes1999,
        author = {Geoffrey Holmes and Mark Hall and Eibe Frank},
        booktitle = {Twelfth Australian Joint Conference on Artificial Intelligence},
        pages = {1-12},
        publisher = {Springer},
        title = {Generating Rule Sets from Model Trees},
        year = {1999}
     }

     @inproceedings{Quinlan1992,
        address = {Singapore},
        author = {Ross J. Quinlan},
        booktitle = {5th Australian Joint Conference on Artificial Intelligence},
        pages = {343-348},
        publisher = {World Scientific},
        title = {Learning with Continuous Classes},
        year = {1992}
     }

     @inproceedings{Wang1997,
        author = {Y. Wang and I. H. Witten},
        booktitle = {Poster papers of the 9th European Conference on Machine Learning},
        publisher = {Springer},
        title = {Induction of model trees for predicting continuous classes},
        year = {1997}
     }

Valid options are:

     -N
      Use unpruned tree/rules

     -U
      Use unsmoothed predictions

     -R
      Build regression tree/rule rather than a model tree/rule

     -M <minimum number of instances>
      Set minimum number of instances per leaf
      (default 4)

Version:
  $Revision: 1.11 $
Author:
  Mark Hall
See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`M5Rules()`
Constructor

## Method Summary

Modifier and Type
Method
Description
`String`
`getRevision()`
Returns the revision string.
`TechnicalInformation`
`getTechnicalInformation()`
Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.
`String`
`globalInfo()`
Returns a string describing classifier
`static void`
`main(String[] args)`
Main method by which this class can be tested

### Methods inherited from class weka.classifiers.trees.m5.M5Base

`buildClassifier, buildRegressionTreeTipText, classifyInstance, enumerateMeasures, generateRulesTipText, getBuildRegressionTree, getCapabilities, getM5RootNode, getMeasure, getMinNumInstances, getOptions, getUnpruned, getUseUnsmoothed, listOptions, measureNumRules, minNumInstancesTipText, setBuildRegressionTree, setMinNumInstances, setOptions, setUnpruned, setUseUnsmoothed, toString, unprunedTipText, useUnsmoothedTipText`

### Methods inherited from class weka.classifiers.Classifier

`debugTipText, distributionForInstance, forName, getDebug, makeCopies, makeCopy, setDebug`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### M5Rules

public M5Rules()
Constructor

## Method Details

### globalInfo

public String globalInfo()
Returns a string describing classifier

Overrides:
  `globalInfo` in class `M5Base`
Returns:
  a description suitable for displaying in the explorer/experimenter gui

### getTechnicalInformation

public TechnicalInformation getTechnicalInformation()
Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.

Specified by:
  `getTechnicalInformation` in interface `TechnicalInformationHandler`
Overrides:
  `getTechnicalInformation` in class `M5Base`
Returns:
  the technical information about this class

### getRevision

public String getRevision()
Returns the revision string.

Specified by:
  `getRevision` in interface `RevisionHandler`
Overrides:
  `getRevision` in class `Classifier`
Returns:
  the revision

### main

public static void main(String[] args)
Main method by which this class can be tested

Parameters:
  `args` - an array of options