Package weka.attributeSelection
Class LFSMethods
- java.lang.Object
-
- weka.attributeSelection.LFSMethods
-
- All Implemented Interfaces:
RevisionHandler
public class LFSMethods extends java.lang.Object implements RevisionHandler
- Version:
- $Revision: 1.3 $
- Author:
- Martin Guetlein (martin.guetlein@gmail.com)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classLFSMethods.Link2Class for a node in a linked list.classLFSMethods.LinkedList2Class for handling a linked list.
-
Constructor Summary
Constructors Constructor Description LFSMethods()empty constructor methods are not static because of access to inner class Link2 and LinkedList2
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.BitSetfloatingForwardSearch(int cacheSize, java.util.BitSet startGroup, int[] ranking, int k, boolean incrementK, int maxStale, Instances data, SubsetEvaluator evaluator, boolean verbose)Performs linear floating forward selection ( the stopping criteria cannot be changed to a specific size value )java.util.BitSetforwardSearch(int cacheSize, java.util.BitSet startGroup, int[] ranking, int k, boolean incrementK, int maxStale, int forceResultSize, Instances data, SubsetEvaluator evaluator, boolean verbose)Performs linear forward selectionjava.util.BitSetgetBestGroup()java.util.BitSetgetBestGroupOfSize(int size)doublegetBestMerit()intgetNumEvalsCached()intgetNumEvalsTotal()java.lang.StringgetRevision()Returns the revision string.int[]rankAttributes(Instances data, SubsetEvaluator evaluator, boolean verbose)
-
-
-
Method Detail
-
getBestGroup
public java.util.BitSet getBestGroup()
- Returns:
- best group found by forwardSearch/floatingForwardSearch
-
getBestMerit
public double getBestMerit()
- Returns:
- merit of best group found by forwardSearch/floatingForwardSearch
-
getBestGroupOfSize
public java.util.BitSet getBestGroupOfSize(int size)
- Returns:
- best group of size found by forwardSearch
-
getNumEvalsCached
public int getNumEvalsCached()
- Returns:
- number of cached / not performed evaluations
-
getNumEvalsTotal
public int getNumEvalsTotal()
- Returns:
- number totally performed evaluations
-
rankAttributes
public int[] rankAttributes(Instances data, SubsetEvaluator evaluator, boolean verbose) throws java.lang.Exception
- Returns:
- ranking (integer array) of attributes in data with evaluator (sorting is NOT stable!)
- Throws:
java.lang.Exception
-
forwardSearch
public java.util.BitSet forwardSearch(int cacheSize, java.util.BitSet startGroup, int[] ranking, int k, boolean incrementK, int maxStale, int forceResultSize, Instances data, SubsetEvaluator evaluator, boolean verbose) throws java.lang.ExceptionPerforms linear forward selection- Parameters:
cacheSize- chacheSize (times number of instances) to store already evaluated setsstartGroup- start group for search (can be null)ranking- ranking of attributes (as produced by rankAttributes), no ranking would be [0,1,2,3,4..]k- number of top k attributes that are taken into accountincrementK- true -> fixed-set, false -> fixed-widthmaxStale- number of times the search proceeds even though no improvement was found (1 = hill-climbing)forceResultSize- stopping criteria changed from no-improvement (forceResultSize=-1) to subset-sizedata-evaluator-verbose-- Returns:
- BitSet, that cotains the best-group found
- Throws:
java.lang.Exception
-
floatingForwardSearch
public java.util.BitSet floatingForwardSearch(int cacheSize, java.util.BitSet startGroup, int[] ranking, int k, boolean incrementK, int maxStale, Instances data, SubsetEvaluator evaluator, boolean verbose) throws java.lang.ExceptionPerforms linear floating forward selection ( the stopping criteria cannot be changed to a specific size value )- Parameters:
cacheSize- chacheSize (times number of instances) to store already evaluated setsstartGroup- start group for search (can be null)ranking- ranking of attributes (as produced by rankAttributes), no ranking would be [0,1,2,3,4..]k- number of top k attributes that are taken into accountincrementK- true -> fixed-set, false -> fixed-widthmaxStale- number of times the search proceeds even though no improvement was found (1 = hill-climbing)data-evaluator-verbose-- Returns:
- BitSet, that cotains the best-group found
- Throws:
java.lang.Exception
-
getRevision
public java.lang.String getRevision()
Returns the revision string.- Specified by:
getRevisionin interfaceRevisionHandler- Returns:
- the revision
-
-