public class FCBFSearch
extends weka.attributeSelection.ASSearch
implements weka.attributeSelection.RankedOutputSearch, weka.attributeSelection.StartSetHandler, weka.core.OptionHandler, weka.core.TechnicalInformationHandler
@inproceedings{Yu2003, author = {Lei Yu and Huan Liu}, booktitle = {Proceedings of the Twentieth International Conference on Machine Learning}, pages = {856-863}, publisher = {AAAI Press}, title = {Feature Selection for High-Dimensional Data: A Fast Correlation-Based Filter Solution}, year = {2003} }Valid options are:
-D <create dataset> Specify Whether the selector generates a new dataset.
-P <start set> Specify a starting set of attributes. Eg. 1,3,5-7. Any starting attributes specified are ignored during the ranking.
-T <threshold> Specify a theshold by which attributes may be discarded from the ranking.
-N <num to select> Specify number of attributes to select
Constructor and Description |
---|
FCBFSearch()
Constructor
|
Modifier and Type | Method and Description |
---|---|
java.lang.String |
generateDataOutputTipText()
Returns the tip text for this property
|
java.lang.String |
generateRankingTipText()
Returns the tip text for this property
|
int |
getCalculatedNumToSelect()
Gets the calculated number to select.
|
boolean |
getGenerateDataOutput()
Returns the flag, by which the AttributeSelection module decide
whether create a new dataset according to the selected features.
|
boolean |
getGenerateRanking()
This is a dummy method.
|
int |
getNumToSelect()
Gets the number of attributes to be retained.
|
java.lang.String[] |
getOptions()
Gets the current settings of ReliefFAttributeEval.
|
java.lang.String |
getRevision()
Returns the revision string.
|
java.lang.String |
getStartSet()
Returns a list of attributes (and or attribute ranges) as a 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.
|
double |
getThreshold()
Returns the threshold so that the AttributeSelection module can
discard attributes from the ranking.
|
java.lang.String |
globalInfo()
Returns a string describing this search method
|
java.util.Enumeration |
listOptions()
Returns an enumeration describing the available options.
|
java.lang.String |
numToSelectTipText()
Returns the tip text for this property
|
double[][] |
rankedAttributes()
Sorts the evaluated attribute list
|
int[] |
search(weka.attributeSelection.ASEvaluation ASEval,
weka.core.Instances data)
Kind of a dummy search algorithm.
|
void |
setGenerateDataOutput(boolean doGenerate)
Sets the flag, by which the AttributeSelection module decide
whether create a new dataset according to the selected features.
|
void |
setGenerateRanking(boolean doRank)
This is a dummy set method---Ranker is ONLY capable of producing
a ranked list of attributes for attribute evaluators.
|
void |
setNumToSelect(int n)
Specify the number of attributes to select from the ranked list.
|
void |
setOptions(java.lang.String[] options)
Parses a given list of options.
|
void |
setStartSet(java.lang.String startSet)
Sets a starting set of attributes for the search.
|
void |
setThreshold(double threshold)
Set the threshold by which the AttributeSelection module can discard
attributes.
|
java.lang.String |
startSetTipText()
Returns the tip text for this property
|
java.lang.String |
thresholdTipText()
Returns the tip text for this property
|
java.lang.String |
toString()
returns a description of the search as a String
|
public java.lang.String globalInfo()
public weka.core.TechnicalInformation getTechnicalInformation()
getTechnicalInformation
in interface weka.core.TechnicalInformationHandler
public java.lang.String numToSelectTipText()
public void setNumToSelect(int n)
setNumToSelect
in interface weka.attributeSelection.RankedOutputSearch
n
- the number of attributes to retainpublic int getNumToSelect()
getNumToSelect
in interface weka.attributeSelection.RankedOutputSearch
public int getCalculatedNumToSelect()
getCalculatedNumToSelect
in interface weka.attributeSelection.RankedOutputSearch
public java.lang.String thresholdTipText()
public void setThreshold(double threshold)
setThreshold
in interface weka.attributeSelection.RankedOutputSearch
threshold
- the threshold.public double getThreshold()
getThreshold
in interface weka.attributeSelection.RankedOutputSearch
public java.lang.String generateRankingTipText()
public void setGenerateRanking(boolean doRank)
setGenerateRanking
in interface weka.attributeSelection.RankedOutputSearch
doRank
- this parameter is N/A and is ignoredpublic boolean getGenerateRanking()
getGenerateRanking
in interface weka.attributeSelection.RankedOutputSearch
public java.lang.String generateDataOutputTipText()
public void setGenerateDataOutput(boolean doGenerate)
doGenerate
- the flag, by which the AttributeSelection module
decide whether create a new dataset according to the selected
featurespublic boolean getGenerateDataOutput()
public java.lang.String startSetTipText()
public void setStartSet(java.lang.String startSet) throws java.lang.Exception
setStartSet
in interface weka.attributeSelection.StartSetHandler
startSet
- a string containing a list of attributes (and or ranges),
eg. 1,2,6,10-15.java.lang.Exception
- if start set can't be set.public java.lang.String getStartSet()
getStartSet
in interface weka.attributeSelection.StartSetHandler
public java.util.Enumeration listOptions()
listOptions
in interface weka.core.OptionHandler
listOptions
in class weka.attributeSelection.ASSearch
public void setOptions(java.lang.String[] options) throws java.lang.Exception
-D <create dataset> Specify Whether the selector generates a new dataset.
-P <start set> Specify a starting set of attributes. Eg. 1,3,5-7. Any starting attributes specified are ignored during the ranking.
-T <threshold> Specify a theshold by which attributes may be discarded from the ranking.
-N <num to select> Specify number of attributes to select
setOptions
in interface weka.core.OptionHandler
setOptions
in class weka.attributeSelection.ASSearch
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.attributeSelection.ASSearch
public int[] search(weka.attributeSelection.ASEvaluation ASEval, weka.core.Instances data) throws java.lang.Exception
search
in class weka.attributeSelection.ASSearch
ASEval
- the attribute evaluator to guide the searchdata
- the training instances.java.lang.Exception
- if the search can't be completedpublic double[][] rankedAttributes() throws java.lang.Exception
rankedAttributes
in interface weka.attributeSelection.RankedOutputSearch
java.lang.Exception
- of sorting can't be done.public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String getRevision()
getRevision
in interface weka.core.RevisionHandler
getRevision
in class weka.attributeSelection.ASSearch