public class SMOTE
extends weka.filters.Filter
implements weka.filters.SupervisedFilter, weka.core.OptionHandler, weka.core.TechnicalInformationHandler
@article{al.2002, author = {Nitesh V. Chawla et. al.}, journal = {Journal of Artificial Intelligence Research}, pages = {321-357}, title = {Synthetic Minority Over-sampling Technique}, volume = {16}, year = {2002} }Valid options are:
-S <num> Specifies the random number seed (default 1)
-P <percentage> Specifies percentage of SMOTE instances to create. (default 100.0)
-K <nearest-neighbors> Specifies the number of nearest neighbors to use. (default 5)
-C <value-index> Specifies the index of the nominal class value to SMOTE (default 0: auto-detect non-empty minority class))
Constructor and Description |
---|
SMOTE() |
Modifier and Type | Method and Description |
---|---|
boolean |
batchFinished()
Signify that this batch of input to the filter is finished.
|
java.lang.String |
classValueTipText()
Returns the tip text for this property.
|
weka.core.Capabilities |
getCapabilities()
Returns the Capabilities of this filter.
|
java.lang.String |
getClassValue()
Gets the index of the class value to which SMOTE should be applied.
|
int |
getNearestNeighbors()
Gets the number of nearest neighbors to use.
|
java.lang.String[] |
getOptions()
Gets the current settings of the filter.
|
double |
getPercentage()
Gets the percentage of SMOTE instances to create.
|
int |
getRandomSeed()
Gets the random number seed.
|
java.lang.String |
getRevision()
Returns the revision string.
|
weka.core.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.
|
java.lang.String |
globalInfo()
Returns a string describing this classifier.
|
boolean |
input(weka.core.Instance instance)
Input an instance for filtering.
|
java.util.Enumeration |
listOptions()
Returns an enumeration describing the available options.
|
static void |
main(java.lang.String[] args)
Main method for running this filter.
|
java.lang.String |
nearestNeighborsTipText()
Returns the tip text for this property.
|
java.lang.String |
percentageTipText()
Returns the tip text for this property.
|
java.lang.String |
randomSeedTipText()
Returns the tip text for this property.
|
void |
setClassValue(java.lang.String value)
Sets the index of the class value to which SMOTE should be applied.
|
boolean |
setInputFormat(weka.core.Instances instanceInfo)
Sets the format of the input instances.
|
void |
setNearestNeighbors(int value)
Sets the number of nearest neighbors to use.
|
void |
setOptions(java.lang.String[] options)
Parses a given list of options.
|
void |
setPercentage(double value)
Sets the percentage of SMOTE instances to create.
|
void |
setRandomSeed(int value)
Sets the random number seed.
|
batchFilterFile, debugTipText, doNotCheckCapabilitiesTipText, filterFile, getCapabilities, getCopyOfInputFormat, getDebug, getDoNotCheckCapabilities, getOutputFormat, isFirstBatchDone, isNewBatch, isOutputFormatDefined, makeCopies, makeCopy, mayRemoveInstanceAfterFirstBatchDone, numPendingOutput, output, outputPeek, postExecution, preExecution, run, runFilter, setDebug, setDoNotCheckCapabilities, toString, useFilter, wekaStaticWrapper
public java.lang.String globalInfo()
public weka.core.TechnicalInformation getTechnicalInformation()
getTechnicalInformation
in interface weka.core.TechnicalInformationHandler
public java.lang.String getRevision()
getRevision
in interface weka.core.RevisionHandler
getRevision
in class weka.filters.Filter
public weka.core.Capabilities getCapabilities()
getCapabilities
in interface weka.core.CapabilitiesHandler
getCapabilities
in class weka.filters.Filter
Capabilities
public java.util.Enumeration listOptions()
listOptions
in interface weka.core.OptionHandler
listOptions
in class weka.filters.Filter
public void setOptions(java.lang.String[] options) throws java.lang.Exception
-S <num> Specifies the random number seed (default 1)
-P <percentage> Specifies percentage of SMOTE instances to create. (default 100.0)
-K <nearest-neighbors> Specifies the number of nearest neighbors to use. (default 5)
-C <value-index> Specifies the index of the nominal class value to SMOTE (default 0: auto-detect non-empty minority class))
setOptions
in interface weka.core.OptionHandler
setOptions
in class weka.filters.Filter
options
- the list of options as an array of stringsjava.lang.Exception
- if an option is not supportedpublic java.lang.String[] getOptions()
getOptions
in interface weka.core.OptionHandler
getOptions
in class weka.filters.Filter
public java.lang.String randomSeedTipText()
public int getRandomSeed()
public void setRandomSeed(int value)
value
- the new random number seed.public java.lang.String percentageTipText()
public void setPercentage(double value)
value
- the percentage to usepublic double getPercentage()
public java.lang.String nearestNeighborsTipText()
public void setNearestNeighbors(int value)
value
- the number of nearest neighbors to usepublic int getNearestNeighbors()
public java.lang.String classValueTipText()
public void setClassValue(java.lang.String value)
value
- the class value indexpublic java.lang.String getClassValue()
public boolean setInputFormat(weka.core.Instances instanceInfo) throws java.lang.Exception
setInputFormat
in class weka.filters.Filter
instanceInfo
- an Instances object containing the input
instance structure (any instances contained in
the object are ignored - only the structure is required).java.lang.Exception
- if the input format can't be set successfullypublic boolean input(weka.core.Instance instance)
input
in class weka.filters.Filter
instance
- the input instancejava.lang.IllegalStateException
- if no input structure has been definedpublic boolean batchFinished() throws java.lang.Exception
batchFinished
in class weka.filters.Filter
java.lang.IllegalStateException
- if no input structure has been definedjava.lang.Exception
- if provided options cannot be executed
on input instancespublic static void main(java.lang.String[] args)
args
- should contain arguments to the filter:
use -h for help