|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectweka.filters.Filter
weka.filters.supervised.instance.SpreadSubsample
Produces a random subsample of a dataset. The original dataset must fit entirely in memory. This filter allows you to specify the maximum "spread" between the rarest and most common class. For example, you may specify that there be at most a 2:1 difference in class frequencies. When used in batch mode, subsequent batches are not resampled. Valid options are:
-S num
Specify the random number seed (default 1).
-M num
The maximum class distribution spread.
0 = no maximum spread, 1 = uniform distribution, 10 = allow at most a
10:1 ratio between the classes (default 0)
-X num
The maximum count for any class value.
(default 0 = unlimited)
-W
Adjust weights so that total weight per class is maintained. Individual
instance weighting is not preserved. (default no weights adjustment)
Constructor Summary | |
SpreadSubsample()
|
Method Summary | |
java.lang.String |
adjustWeightsTipText()
Returns the tip text for this property |
boolean |
batchFinished()
Signify that this batch of input to the filter is finished. |
java.lang.String |
distributionSpreadTipText()
Returns the tip text for this property |
boolean |
getAdjustWeights()
Returns true if instance weights will be adjusted to maintain total weight per class. |
double |
getDistributionSpread()
Gets the value for the distribution spread |
double |
getMaxCount()
Gets the value for the max count |
java.lang.String[] |
getOptions()
Gets the current settings of the filter. |
int |
getRandomSeed()
Gets the random number seed. |
java.lang.String |
globalInfo()
Returns a string describing this filter |
boolean |
input(Instance instance)
Input an instance for filtering. |
java.util.Enumeration |
listOptions()
Returns an enumeration describing the available options. |
static void |
main(java.lang.String[] argv)
Main method for testing this class. |
java.lang.String |
maxCountTipText()
Returns the tip text for this property |
java.lang.String |
randomSeedTipText()
Returns the tip text for this property |
void |
setAdjustWeights(boolean newAdjustWeights)
Sets whether the instance weights will be adjusted to maintain total weight per class. |
void |
setDistributionSpread(double spread)
Sets the value for the distribution spread |
boolean |
setInputFormat(Instances instanceInfo)
Sets the format of the input instances. |
void |
setMaxCount(double maxcount)
Sets the value for the max count |
void |
setOptions(java.lang.String[] options)
Parses a list of options for this object. |
void |
setRandomSeed(int newSeed)
Sets the random number seed. |
Methods inherited from class weka.filters.Filter |
batchFilterFile, filterFile, getOutputFormat, inputFormat, isOutputFormatDefined, numPendingOutput, output, outputFormat, outputPeek, useFilter |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public SpreadSubsample()
Method Detail |
public java.lang.String globalInfo()
public java.lang.String adjustWeightsTipText()
public boolean getAdjustWeights()
public void setAdjustWeights(boolean newAdjustWeights)
newAdjustWeights
- public java.util.Enumeration listOptions()
listOptions
in interface OptionHandler
public void setOptions(java.lang.String[] options) throws java.lang.Exception
-S num
Specify the random number seed (default 1).
-M num
The maximum class distribution spread.
0 = no maximum spread, 1 = uniform distribution, 10 = allow at most a
10:1 ratio between the classes (default 0)
-X num
The maximum count for any class value.
(default 0 = unlimited)
-W
Adjust weights so that total weight per class is maintained. Individual
instance weighting is not preserved. (default no weights adjustment)
setOptions
in interface OptionHandler
options
- the list of options as an array of strings
java.lang.Exception
- if an option is not supportedpublic java.lang.String[] getOptions()
getOptions
in interface OptionHandler
public java.lang.String distributionSpreadTipText()
public void setDistributionSpread(double spread)
spread
- the new distribution spreadpublic double getDistributionSpread()
public java.lang.String maxCountTipText()
public void setMaxCount(double maxcount)
public double getMaxCount()
public java.lang.String randomSeedTipText()
public int getRandomSeed()
public void setRandomSeed(int newSeed)
newSeed
- the new random number seed.public boolean setInputFormat(Instances instanceInfo) throws java.lang.Exception
setInputFormat
in class Filter
instanceInfo
- an Instances object containing the input
instance structure (any instances contained in the object are
ignored - only the structure is required).
UnassignedClassException
- if no class attribute has been set.
UnsupportedClassTypeException
- if the class attribute
is not nominal.
java.lang.Exception
- if the inputFormat can't be set successfullypublic boolean input(Instance instance)
input
in class Filter
instance
- the input instance
java.lang.IllegalStateException
- if no input structure has been definedpublic boolean batchFinished()
batchFinished
in class Filter
java.lang.IllegalStateException
- if no input structure has been definedpublic static void main(java.lang.String[] argv)
argv
- should contain arguments to the filter:
use -h for help
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |