public class Modlem
extends weka.classifiers.Classifier
Title: Modlem class.
Description: This class is responsible for inducing decision rules from given dataset according to MODLEM algorithm, this class also predicts to which decision class belong given instance.
Copyright: Copyright (c) 2004
Company: Poznan University of Technology, Computer Science Institute
Modifier and Type | Field | Description |
---|---|---|
static int |
CLASS_DEPENDING_APPROACH |
|
static int |
classificationStrategy |
Current classification strategy used
|
static int |
conversionToKnownValues |
|
static int |
ENTROPY |
The selection criterion modes
|
static int |
GRZYMALA_APPROACH |
The classification strategy modes
|
static int |
iFold |
|
static int |
LAPLACE |
|
static int |
LOWER_APPROXIMATION |
|
static int |
MIELCAREK_APPROACH |
The post-pruning type modes
|
static int |
MLEM2 |
|
static int |
NEAREST_RULES |
|
static int |
postPruningType |
The post-pruning type used
|
static double |
postPrunningCoefficient |
this variable holds information about post-pruning coefficient
|
static int |
removingExamples |
possible missing values actions
|
static int |
rulesType |
The selected approximation to use
|
static weka.core.Tag[] |
TAGS_CLASSIFICATION_STRATEGY |
|
static weka.core.Tag[] |
TAGS_POST_PRUNING_TYPE |
|
static weka.core.Tag[] |
TAGS_RULES_TYPE |
|
static weka.core.Tag[] |
TAGS_SELECTION_CRITERION |
|
static int |
UPPER_APPROXIMATION |
The rules type modes
|
Constructor | Description |
---|---|
Modlem() |
Modifier and Type | Method | Description |
---|---|---|
boolean |
areTwoInstancesEqual(int firstInstance,
int secondInstance) |
Checks if two given instences are equal
|
void |
buildClassifier(weka.core.Instances dataset) |
|
java.lang.String |
classificationStrategyTipText() |
|
double |
classifyInstance(weka.core.Instance inst) |
Classifies a given instance.
|
double |
Eval(java.util.BitSet subSet1,
java.util.BitSet subSet2) |
|
double |
EvalEntropy(java.util.BitSet subSet1,
java.util.BitSet subSet2) |
|
double |
EvalLaplace(java.util.BitSet subSet1,
java.util.BitSet subSet2) |
|
MLSelector |
findBestNominalSelector(int iSelectors) |
|
MLSelector |
findBestNumericalSelector(int iSelectors) |
|
MLSelector |
findBestSelector() |
|
java.lang.String |
forwardPrunningCoefficientTipText() |
Returns the tip text for this property
|
void |
generateApproximation() |
|
void |
generateNominalSelectors(int attrNum) |
|
void |
generateNumericalSelectors(int attrNum) |
|
void |
generateSelectors() |
|
double |
getBestEval() |
Gets the best possible evaluation for given criterion of selection
|
weka.core.SelectedTag |
getClassificationStrategy() |
Gets the classification strategy used.
|
double |
getForwardPrunningCoefficient() |
Get the value of forwardPrunningCoefficient.
|
weka.core.SelectedTag |
getPostPruningType() |
Gets the post-pruning type used.
|
double |
getPostPrunningCoefficient() |
Get the value of forwardPrunningCoefficient.
|
boolean |
getPostPrunningOnlyGreaterClasses() |
Get the value of postPrunningOnlyGreaterClasses.
|
java.lang.String |
getRevision() |
|
weka.core.SelectedTag |
getRulesType() |
Gets the used approximation
|
weka.core.SelectedTag |
getSelectionCriterion() |
Gets the method used.
|
double |
getWorstEval() |
Gets the worst possible evaluation for given criterion of selection
|
java.lang.String |
globalInfo() |
This method returns global info about this class.
|
boolean |
IsBetterEval(double eval1,
double eval2) |
Gets result of comparison two evaluations
|
static void |
main(java.lang.String[] args) |
|
void |
meanOrMode(int currentClassValue) |
|
java.lang.String |
postPruningTypeTipText() |
|
java.lang.String |
postPrunningCoefficientTipText() |
Returns the tip text for this property
|
java.lang.String |
postPrunningOnlyGreaterClassesTipText() |
Returns the tip text for this property
|
void |
removeUnusedRules(java.util.BitSet positiveExamples,
java.util.BitSet negativeExamples,
int classValue) |
|
java.lang.String |
rulesTypeTipText() |
|
java.lang.String |
selectionCriterionTipText() |
|
void |
setClassificationStrategy(weka.core.SelectedTag newClassificationStrategy) |
Sets the classification strategy used.
|
void |
setForwardPrunningCoefficient(double newForwardPrunningCoefficient) |
Set the value of forwardPrunningCoefficient.
|
void |
setPostPruningType(weka.core.SelectedTag newPostPruningType) |
Sets the post-pruning type used.
|
void |
setPostPrunningCoefficient(double newPostPrunningCoefficient) |
Set the value of post-pruning coefficient.
|
void |
setPostPrunningOnlyGreaterClasses(boolean newPostPrunningOnlyGreaterClasses) |
Set the value of postPrunningOnlyGreaterClasses.
|
void |
setRulesType(weka.core.SelectedTag newRulesType) |
Sets the used approximation.
|
void |
setSelectionCriterion(weka.core.SelectedTag newSelectionCriterion) |
Sets the method used.
|
java.lang.String |
toString() |
|
void |
updateSelectorsAfterRule() |
|
void |
updateSelectorsAfterSelector(MLSelector lastBest) |
public static int iFold
public static double postPrunningCoefficient
public static final int ENTROPY
public static final int LAPLACE
public static final int MLEM2
public static final weka.core.Tag[] TAGS_SELECTION_CRITERION
public static final int UPPER_APPROXIMATION
public static final int LOWER_APPROXIMATION
public static final weka.core.Tag[] TAGS_RULES_TYPE
public static int rulesType
public static final int GRZYMALA_APPROACH
public static final int NEAREST_RULES
public static final weka.core.Tag[] TAGS_CLASSIFICATION_STRATEGY
public static int classificationStrategy
public static final int MIELCAREK_APPROACH
public static final int CLASS_DEPENDING_APPROACH
public static final weka.core.Tag[] TAGS_POST_PRUNING_TYPE
public static int postPruningType
public static final int removingExamples
public static final int conversionToKnownValues
public java.lang.String globalInfo()
public java.lang.String forwardPrunningCoefficientTipText()
public double getForwardPrunningCoefficient()
public void setForwardPrunningCoefficient(double newForwardPrunningCoefficient)
newForwardPrunningCoefficient
- Value to assign to forwardPrunningCoefficient.public java.lang.String postPrunningOnlyGreaterClassesTipText()
public boolean getPostPrunningOnlyGreaterClasses()
public void setPostPrunningOnlyGreaterClasses(boolean newPostPrunningOnlyGreaterClasses)
newPostPrunningOnlyGreaterClasses
- Value to assign to postPrunningOnlyGreaterClasses.public java.lang.String postPrunningCoefficientTipText()
public double getPostPrunningCoefficient()
public void setPostPrunningCoefficient(double newPostPrunningCoefficient)
newPostPrunningCoefficient
- value to assign to postPrunningCoefficient.public java.lang.String selectionCriterionTipText()
public weka.core.SelectedTag getSelectionCriterion()
public void setSelectionCriterion(weka.core.SelectedTag newSelectionCriterion)
newSelectionCriterion
- the new selection criterion.public java.lang.String rulesTypeTipText()
public weka.core.SelectedTag getRulesType()
public void setRulesType(weka.core.SelectedTag newRulesType)
newRulesType
- the new rulesType.public java.lang.String classificationStrategyTipText()
public weka.core.SelectedTag getClassificationStrategy()
public void setClassificationStrategy(weka.core.SelectedTag newClassificationStrategy)
newClassificationStrategy
- the new classificationStrategy.public java.lang.String postPruningTypeTipText()
public weka.core.SelectedTag getPostPruningType()
public void setPostPruningType(weka.core.SelectedTag newPostPruningType)
newPostPruningType
- -
the new postPruningType.public double getWorstEval()
public double getBestEval()
public boolean IsBetterEval(double eval1, double eval2)
eval1
- first evaluationeval2
- second evaluationpublic double Eval(java.util.BitSet subSet1, java.util.BitSet subSet2)
public double EvalLaplace(java.util.BitSet subSet1, java.util.BitSet subSet2)
public double EvalEntropy(java.util.BitSet subSet1, java.util.BitSet subSet2)
public MLSelector findBestNominalSelector(int iSelectors)
public MLSelector findBestNumericalSelector(int iSelectors)
public MLSelector findBestSelector()
public void generateNominalSelectors(int attrNum)
public void generateNumericalSelectors(int attrNum)
public void generateSelectors()
public void updateSelectorsAfterRule()
public void updateSelectorsAfterSelector(MLSelector lastBest)
public boolean areTwoInstancesEqual(int firstInstance, int secondInstance)
firstInstance
- -
index of the first instance in dataset to be checkedsecondInstance
- -
index of the second instance in dataset to be checkedpublic void generateApproximation()
public void meanOrMode(int currentClassValue)
public double classifyInstance(weka.core.Instance inst)
classifyInstance
in class weka.classifiers.Classifier
inst
- the instance to be classifiedpublic void removeUnusedRules(java.util.BitSet positiveExamples, java.util.BitSet negativeExamples, int classValue)
public void buildClassifier(weka.core.Instances dataset) throws java.lang.Exception
buildClassifier
in class weka.classifiers.Classifier
java.lang.Exception
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String getRevision()
public static void main(java.lang.String[] args)