Class GeneticSearch
java.lang.Object
weka.classifiers.bayes.net.search.SearchAlgorithm
weka.classifiers.bayes.net.search.global.GlobalScoreSearchAlgorithm
weka.classifiers.bayes.net.search.global.GeneticSearch
- All Implemented Interfaces:
Serializable
,OptionHandler
,RevisionHandler
This Bayes Network learning algorithm uses genetic
search for finding a well scoring Bayes network structure. Genetic search
works by having a population of Bayes network structures and allow them to
mutate and apply cross over to get offspring. The best network structure
found during the process is returned.
Valid options are:
-L <integer> Population size
-A <integer> Descendant population size
-U <integer> Number of runs
-M Use mutation. (default true)
-C Use cross-over. (default true)
-O Use tournament selection (true) or maximum subpopulatin (false). (default false)
-R <seed> Random number seed
-mbc Applies a Markov Blanket correction to the network structure, after a network structure is learned. This ensures that all nodes in the network are part of the Markov blanket of the classifier node.
-S [LOO-CV|k-Fold-CV|Cumulative-CV] Score type (LOO-CV,k-Fold-CV,Cumulative-CV)
-Q Use probabilistic or 0/1 scoring. (default probabilistic scoring)
- Version:
- $Revision: 11247 $
- Author:
- Remco Bouckaert (rrb@xm.co.nz)
- See Also:
-
Field Summary
Fields inherited from class weka.classifiers.bayes.net.search.global.GlobalScoreSearchAlgorithm
TAGS_CV_TYPE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
String[]
Gets the current settings of the search algorithm.int
Returns the revision string.int
getRuns()
int
getSeed()
boolean
boolean
boolean
This will return a string describing the classifier.Returns an enumeration describing the available options.void
setDescendantPopulationSize
(int iDescendantPopulationSize) void
setOptions
(String[] options) Parses a given list of options.void
setPopulationSize
(int iPopulationSize) void
setRuns
(int nRuns) Sets the number of runsvoid
setSeed
(int nSeed) Sets the random number seedvoid
setUseCrossOver
(boolean bUseCrossOver) void
setUseMutation
(boolean bUseMutation) void
setUseTournamentSelection
(boolean bUseTournamentSelection) Methods inherited from class weka.classifiers.bayes.net.search.global.GlobalScoreSearchAlgorithm
calcScore, calcScoreWithExtraParent, calcScoreWithMissingParent, calcScoreWithReversedParent, cumulativeCV, CVTypeTipText, getCVType, getMarkovBlanketClassifier, getUseProb, kFoldCV, leaveOneOutCV, markovBlanketClassifierTipText, setCVType, setMarkovBlanketClassifier, setUseProb, useProbTipText
Methods inherited from class weka.classifiers.bayes.net.search.SearchAlgorithm
buildStructure, initAsNaiveBayesTipText, maxNrOfParentsTipText, toString
-
Constructor Details
-
GeneticSearch
public GeneticSearch()
-
-
Method Details
-
getRuns
public int getRuns()- Returns:
- number of runs
-
setRuns
public void setRuns(int nRuns) Sets the number of runs- Parameters:
nRuns
- The number of runs to set
-
listOptions
Returns an enumeration describing the available options.- Specified by:
listOptions
in interfaceOptionHandler
- Overrides:
listOptions
in classGlobalScoreSearchAlgorithm
- Returns:
- an enumeration of all the available options.
-
setOptions
Parses a given list of options. Valid options are:-L <integer> Population size
-A <integer> Descendant population size
-U <integer> Number of runs
-M Use mutation. (default true)
-C Use cross-over. (default true)
-O Use tournament selection (true) or maximum subpopulatin (false). (default false)
-R <seed> Random number seed
-mbc Applies a Markov Blanket correction to the network structure, after a network structure is learned. This ensures that all nodes in the network are part of the Markov blanket of the classifier node.
-S [LOO-CV|k-Fold-CV|Cumulative-CV] Score type (LOO-CV,k-Fold-CV,Cumulative-CV)
-Q Use probabilistic or 0/1 scoring. (default probabilistic scoring)
- Specified by:
setOptions
in interfaceOptionHandler
- Overrides:
setOptions
in classGlobalScoreSearchAlgorithm
- Parameters:
options
- the list of options as an array of strings- Throws:
Exception
- if an option is not supported
-
getOptions
Gets the current settings of the search algorithm.- Specified by:
getOptions
in interfaceOptionHandler
- Overrides:
getOptions
in classGlobalScoreSearchAlgorithm
- Returns:
- an array of strings suitable for passing to setOptions
-
getUseCrossOver
public boolean getUseCrossOver()- Returns:
- whether cross-over is used
-
getUseMutation
public boolean getUseMutation()- Returns:
- whether mutation is used
-
getDescendantPopulationSize
public int getDescendantPopulationSize()- Returns:
- descendant population size
-
getPopulationSize
public int getPopulationSize()- Returns:
- population size
-
setUseCrossOver
public void setUseCrossOver(boolean bUseCrossOver) - Parameters:
bUseCrossOver
- sets whether cross-over is used
-
setUseMutation
public void setUseMutation(boolean bUseMutation) - Parameters:
bUseMutation
- sets whether mutation is used
-
getUseTournamentSelection
public boolean getUseTournamentSelection()- Returns:
- whether Tournament Selection (true) or Maximum Sub-Population (false) should be used
-
setUseTournamentSelection
public void setUseTournamentSelection(boolean bUseTournamentSelection) - Parameters:
bUseTournamentSelection
- sets whether Tournament Selection or Maximum Sub-Population should be used
-
setDescendantPopulationSize
public void setDescendantPopulationSize(int iDescendantPopulationSize) - Parameters:
iDescendantPopulationSize
- sets descendant population size
-
setPopulationSize
public void setPopulationSize(int iPopulationSize) - Parameters:
iPopulationSize
- sets population size
-
getSeed
public int getSeed()- Returns:
- random number seed
-
setSeed
public void setSeed(int nSeed) Sets the random number seed- Parameters:
nSeed
- The number of the seed to set
-
globalInfo
This will return a string describing the classifier.- Overrides:
globalInfo
in classGlobalScoreSearchAlgorithm
- Returns:
- The string.
-
runsTipText
- Returns:
- a string to describe the Runs option.
-
seedTipText
- Returns:
- a string to describe the Seed option.
-
populationSizeTipText
- Returns:
- a string to describe the Population Size option.
-
descendantPopulationSizeTipText
- Returns:
- a string to describe the Descendant Population Size option.
-
useMutationTipText
- Returns:
- a string to describe the Use Mutation option.
-
useCrossOverTipText
- Returns:
- a string to describe the Use Cross-Over option.
-
useTournamentSelectionTipText
- Returns:
- a string to describe the Use Tournament Selection option.
-
getRevision
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Overrides:
getRevision
in classGlobalScoreSearchAlgorithm
- Returns:
- the revision
-