public class AODEsr extends Classifier implements OptionHandler, WeightedInstancesHandler, UpdateableClassifier, TechnicalInformationHandler
@inproceedings{Zheng2006,
author = {Fei Zheng and Geoffrey I. Webb},
booktitle = {Proceedings of the Twenty-third International Conference on Machine Learning (ICML 2006)},
pages = {1113-1120},
publisher = {ACM Press},
title = {Efficient Lazy Elimination for Averaged-One Dependence Estimators},
year = {2006},
ISBN = {1-59593-383-2}
}
Valid options are:
-D Output debugging information
-C Impose a critcal value for specialization-generalization relationship (default is 50)
-F Impose a frequency limit for superParents (default is 1)
-L Using Laplace estimation (default is m-esimation (m=1))
-M Weight value for m-estimation (default is 1.0)
| Constructor and Description |
|---|
AODEsr() |
| Modifier and Type | Method and Description |
|---|---|
void |
buildClassifier(Instances instances)
Generates the classifier.
|
java.lang.String |
criticalValueTipText()
Returns the tip text for this property
|
double[] |
distributionForInstance(Instance instance)
Calculates the class membership probabilities for the given test
instance.
|
java.lang.String |
frequencyLimitTipText()
Returns the tip text for this property
|
Capabilities |
getCapabilities()
Returns default capabilities of the classifier.
|
int |
getCriticalValue()
Gets the critical value.
|
int |
getFrequencyLimit()
Gets the frequency limit.
|
double |
getMestWeight()
Gets the weight used in m-estimate
|
java.lang.String[] |
getOptions()
Gets the current settings of the classifier.
|
java.lang.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.
|
boolean |
getUseLaplace()
Gets if laplace correction is being used.
|
java.lang.String |
globalInfo()
Returns a string describing this classifier
|
double |
LaplaceEstimate(double frequency,
double total,
double numValues)
Returns the probability estimate, using laplace correction
|
java.util.Enumeration |
listOptions()
Returns an enumeration describing the available options
|
static void |
main(java.lang.String[] argv)
Main method for testing this class.
|
double |
MEstimate(double frequency,
double total,
double numValues)
Returns the probability estimate, using m-estimate
|
java.lang.String |
mestWeightTipText()
Returns the tip text for this property
|
double |
NBconditionalProb(Instance instance,
int classVal)
Calculates the probability of the specified class for the given test
instance, using naive Bayes.
|
void |
setCriticalValue(int c)
Sets the critical value
|
void |
setFrequencyLimit(int f)
Sets the frequency limit
|
void |
setMestWeight(double w)
Sets the weight for m-estimate
|
void |
setOptions(java.lang.String[] options)
Parses a given list of options.
|
void |
setUseLaplace(boolean value)
Sets if laplace correction is to be used.
|
java.lang.String |
toString()
Returns a description of the classifier.
|
void |
updateClassifier(Instance instance)
Updates the classifier with the given instance.
|
java.lang.String |
useLaplaceTipText()
Returns the tip text for this property
|
classifyInstance, debugTipText, forName, getDebug, makeCopies, makeCopy, setDebugpublic java.lang.String globalInfo()
public TechnicalInformation getTechnicalInformation()
getTechnicalInformation in interface TechnicalInformationHandlerpublic Capabilities getCapabilities()
getCapabilities in interface CapabilitiesHandlergetCapabilities in class ClassifierCapabilitiespublic void buildClassifier(Instances instances) throws java.lang.Exception
buildClassifier in class Classifierinstances - set of instances serving as training datajava.lang.Exception - if the classifier has not been generated
successfullypublic void updateClassifier(Instance instance)
updateClassifier in interface UpdateableClassifierinstance - the new training instance to include in the modeljava.lang.Exception - if the instance could not be incorporated in
the model.public double[] distributionForInstance(Instance instance) throws java.lang.Exception
distributionForInstance in class Classifierinstance - the instance to be classifiedjava.lang.Exception - if there is a problem generating the predictionpublic double NBconditionalProb(Instance instance, int classVal) throws java.lang.Exception
instance - the instance to be classifiedclassVal - the class for which to calculate the probabilityjava.lang.Exception - if there is a problem generating the predictionpublic double MEstimate(double frequency,
double total,
double numValues)
frequency - frequency of value of interesttotal - count of all valuesnumValues - number of different valuespublic double LaplaceEstimate(double frequency,
double total,
double numValues)
frequency - frequency of value of interesttotal - count of all valuesnumValues - number of different valuespublic java.util.Enumeration listOptions()
listOptions in interface OptionHandlerlistOptions in class Classifierpublic void setOptions(java.lang.String[] options)
throws java.lang.Exception
-D Output debugging information
-C Impose a critcal value for specialization-generalization relationship (default is 50)
-F Impose a frequency limit for superParents (default is 1)
-L Using Laplace estimation (default is m-esimation (m=1))
-M Weight value for m-estimation (default is 1.0)
setOptions in interface OptionHandlersetOptions in class Classifieroptions - the list of options as an array of stringsjava.lang.Exception - if an option is not supportedpublic java.lang.String[] getOptions()
getOptions in interface OptionHandlergetOptions in class Classifierpublic java.lang.String mestWeightTipText()
public void setMestWeight(double w)
w - the weightpublic double getMestWeight()
public java.lang.String useLaplaceTipText()
public boolean getUseLaplace()
public void setUseLaplace(boolean value)
value - Value to assign to m_Laplace.public java.lang.String frequencyLimitTipText()
public void setFrequencyLimit(int f)
f - the frequency limitpublic int getFrequencyLimit()
public java.lang.String criticalValueTipText()
public void setCriticalValue(int c)
c - the critical valuepublic int getCriticalValue()
public java.lang.String toString()
toString in class java.lang.Objectpublic java.lang.String getRevision()
getRevision in interface RevisionHandlergetRevision in class Classifierpublic static void main(java.lang.String[] argv)
argv - the options