Specify sigma value (used in an exp function to control how quickly
weights decrease for more distant instances). Use in conjunction with
-W. Sensible values = 1/5 to 1/10 the number of nearest neighbours.
- Version:
- $Revision: 1.15 $
- Author:
- Mark Hall (mhall@cs.waikato.ac.nz)
- See Also:
- Serialized Form
Method Summary |
void |
buildEvaluator(Instances data)
Initializes a ReliefF attribute evaluator. |
double |
evaluateAttribute(int attribute)
Evaluates an individual attribute using ReliefF's instance based approach. |
int |
getNumNeighbours()
Get the number of nearest neighbours |
java.lang.String[] |
getOptions()
Gets the current settings of ReliefFAttributeEval. |
int |
getSampleSize()
Get the number of instances used for estimating attributes |
int |
getSeed()
Get the seed used for randomly sampling instances. |
int |
getSigma()
Get the value of sigma. |
boolean |
getWeightByDistance()
Get whether nearest neighbours are being weighted by distance |
java.lang.String |
globalInfo()
Returns a string describing this attribute evaluator |
java.util.Enumeration |
listOptions()
Returns an enumeration describing the available options. |
static void |
main(java.lang.String[] args)
Main method for testing this class. |
java.lang.String |
numNeighboursTipText()
Returns the tip text for this property |
java.lang.String |
sampleSizeTipText()
Returns the tip text for this property |
java.lang.String |
seedTipText()
Returns the tip text for this property |
void |
setNumNeighbours(int n)
Set the number of nearest neighbours |
void |
setOptions(java.lang.String[] options)
Parses a given list of options. |
void |
setSampleSize(int s)
Set the number of instances to sample for attribute estimation |
void |
setSeed(int s)
Set the random number seed for randomly sampling instances. |
void |
setSigma(int s)
Sets the sigma value. |
void |
setWeightByDistance(boolean b)
Set the nearest neighbour weighting method |
java.lang.String |
sigmaTipText()
Returns the tip text for this property |
java.lang.String |
toString()
Return a description of the ReliefF attribute evaluator. |
java.lang.String |
weightByDistanceTipText()
Returns the tip text for this property |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
ReliefFAttributeEval
public ReliefFAttributeEval()
- Constructor
globalInfo
public java.lang.String globalInfo()
- Returns a string describing this attribute evaluator
- Returns:
- a description of the evaluator suitable for
displaying in the explorer/experimenter gui
listOptions
public java.util.Enumeration listOptions()
- Returns an enumeration describing the available options.
- Specified by:
listOptions
in interface OptionHandler
- Returns:
- an enumeration of all the available options.
setOptions
public void setOptions(java.lang.String[] options)
throws java.lang.Exception
- Parses a given list of options.
Valid options are:
-M
Specify the number of instances to sample when estimating attributes.
If not specified then all instances will be used.
-D
Seed for randomly sampling instances.
-K
Number of nearest neighbours to use for estimating attributes.
(Default is 10).
-W
Weight nearest neighbours by distance.
-A
Specify sigma value (used in an exp function to control how quickly
weights decrease for more distant instances). Use in conjunction with
-W. Sensible values = 1/5 to 1/10 the number of nearest neighbours.
- Specified by:
setOptions
in interface OptionHandler
- Parameters:
options
- the list of options as an array of strings
- Throws:
java.lang.Exception
- if an option is not supported
sigmaTipText
public java.lang.String sigmaTipText()
- Returns the tip text for this property
- Returns:
- tip text for this property suitable for
displaying in the explorer/experimenter gui
setSigma
public void setSigma(int s)
throws java.lang.Exception
- Sets the sigma value.
- Parameters:
s
- the value of sigma (> 0)
- Throws:
java.lang.Exception
- if s is not positive
getSigma
public int getSigma()
- Get the value of sigma.
- Returns:
- the sigma value.
numNeighboursTipText
public java.lang.String numNeighboursTipText()
- Returns the tip text for this property
- Returns:
- tip text for this property suitable for
displaying in the explorer/experimenter gui
setNumNeighbours
public void setNumNeighbours(int n)
- Set the number of nearest neighbours
- Parameters:
n
- the number of nearest neighbours.
getNumNeighbours
public int getNumNeighbours()
- Get the number of nearest neighbours
- Returns:
- the number of nearest neighbours
seedTipText
public java.lang.String seedTipText()
- Returns the tip text for this property
- Returns:
- tip text for this property suitable for
displaying in the explorer/experimenter gui
setSeed
public void setSeed(int s)
- Set the random number seed for randomly sampling instances.
- Parameters:
s
- the random number seed.
getSeed
public int getSeed()
- Get the seed used for randomly sampling instances.
- Returns:
- the random number seed.
sampleSizeTipText
public java.lang.String sampleSizeTipText()
- Returns the tip text for this property
- Returns:
- tip text for this property suitable for
displaying in the explorer/experimenter gui
setSampleSize
public void setSampleSize(int s)
- Set the number of instances to sample for attribute estimation
- Parameters:
s
- the number of instances to sample.
getSampleSize
public int getSampleSize()
- Get the number of instances used for estimating attributes
- Returns:
- the number of instances.
weightByDistanceTipText
public java.lang.String weightByDistanceTipText()
- Returns the tip text for this property
- Returns:
- tip text for this property suitable for
displaying in the explorer/experimenter gui
setWeightByDistance
public void setWeightByDistance(boolean b)
- Set the nearest neighbour weighting method
- Parameters:
b
- true nearest neighbours are to be weighted by distance.
getWeightByDistance
public boolean getWeightByDistance()
- Get whether nearest neighbours are being weighted by distance
- Returns:
- m_weightByDiffernce
getOptions
public java.lang.String[] getOptions()
- Gets the current settings of ReliefFAttributeEval.
- Specified by:
getOptions
in interface OptionHandler
- Returns:
- an array of strings suitable for passing to setOptions()
toString
public java.lang.String toString()
- Return a description of the ReliefF attribute evaluator.
- Overrides:
toString
in class java.lang.Object
- Returns:
- a description of the evaluator as a String.
buildEvaluator
public void buildEvaluator(Instances data)
throws java.lang.Exception
- Initializes a ReliefF attribute evaluator.
- Specified by:
buildEvaluator
in class ASEvaluation
- Parameters:
data
- set of instances serving as training data
- Throws:
java.lang.Exception
- if the evaluator has not been
generated successfully
evaluateAttribute
public double evaluateAttribute(int attribute)
throws java.lang.Exception
- Evaluates an individual attribute using ReliefF's instance based approach.
The actual work is done by buildEvaluator which evaluates all features.
- Specified by:
evaluateAttribute
in class AttributeEvaluator
- Parameters:
attribute
- the index of the attribute to be evaluated
- Returns:
- the "merit" of the attribute
- Throws:
java.lang.Exception
- if the attribute could not be evaluated
main
public static void main(java.lang.String[] args)
- Main method for testing this class.
- Parameters:
args
- the options
Copyright (c)
2003 David Lindsay, Computer Learning Research Centre, Dept. Computer Science, Royal Holloway, University of London