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, wekaStaticWrapperpublic java.lang.String globalInfo()
public weka.core.TechnicalInformation getTechnicalInformation()
getTechnicalInformation in interface weka.core.TechnicalInformationHandlerpublic java.lang.String getRevision()
getRevision in interface weka.core.RevisionHandlergetRevision in class weka.filters.Filterpublic weka.core.Capabilities getCapabilities()
getCapabilities in interface weka.core.CapabilitiesHandlergetCapabilities in class weka.filters.FilterCapabilitiespublic java.util.Enumeration listOptions()
listOptions in interface weka.core.OptionHandlerlistOptions in class weka.filters.Filterpublic 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.OptionHandlersetOptions in class weka.filters.Filteroptions - 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.OptionHandlergetOptions in class weka.filters.Filterpublic 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.FilterinstanceInfo - 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.Filterinstance - the input instancejava.lang.IllegalStateException - if no input structure has been definedpublic boolean batchFinished()
throws java.lang.Exception
batchFinished in class weka.filters.Filterjava.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