Class HillClimber
java.lang.Object
weka.classifiers.bayes.net.search.SearchAlgorithm
weka.classifiers.bayes.net.search.local.LocalScoreSearchAlgorithm
weka.classifiers.bayes.net.search.local.HillClimber
- All Implemented Interfaces:
Serializable
,OptionHandler
,RevisionHandler
- Direct Known Subclasses:
LAGDHillClimber
,RepeatedHillClimber
,TabuSearch
This Bayes Network learning algorithm uses a hill
climbing algorithm adding, deleting and reversing arcs. The search is not
restricted by an order on the variables (unlike K2). The difference with B
and B2 is that this hill climber also considers arrows part of the naive
Bayes structure for deletion.
Valid options are:
-P <nr of parents> Maximum number of parents
-R Use arc reversal operation. (default false)
-N Initial structure is empty (instead of Naive Bayes)
-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 [BAYES|MDL|ENTROPY|AIC|CROSS_CLASSIC|CROSS_BAYES] Score type (BAYES, BDeu, MDL, ENTROPY and AIC)
- Version:
- $Revision: 10154 $
- Author:
- Remco Bouckaert (rrb@xm.co.nz)
- See Also:
-
Field Summary
Fields inherited from class weka.classifiers.bayes.net.search.local.LocalScoreSearchAlgorithm
TAGS_SCORE_TYPE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Gets whether to init as naive bayesint
Gets the max number of parents.String[]
Gets the current settings of the search algorithm.Returns the revision string.boolean
get use the arc reversal operationThis will return a string describing the search algorithm.Returns an enumeration describing the available options.void
setInitAsNaiveBayes
(boolean bInitAsNaiveBayes) Sets whether to init as naive bayesvoid
setMaxNrOfParents
(int nMaxNrOfParents) Sets the max number of parentsvoid
setOptions
(String[] options) Parses a given list of options.void
setUseArcReversal
(boolean bUseArcReversal) set use the arc reversal operationMethods inherited from class weka.classifiers.bayes.net.search.local.LocalScoreSearchAlgorithm
buildStructure, calcNodeScore, calcScoreWithExtraParent, calcScoreWithMissingParent, getMarkovBlanketClassifier, getScoreType, logScore, markovBlanketClassifierTipText, scoreTypeTipText, setMarkovBlanketClassifier, setScoreType
Methods inherited from class weka.classifiers.bayes.net.search.SearchAlgorithm
initAsNaiveBayesTipText, maxNrOfParentsTipText, toString
-
Constructor Details
-
HillClimber
public HillClimber()
-
-
Method Details
-
setMaxNrOfParents
public void setMaxNrOfParents(int nMaxNrOfParents) Sets the max number of parents- Parameters:
nMaxNrOfParents
- the max number of parents
-
getMaxNrOfParents
public int getMaxNrOfParents()Gets the max number of parents.- Returns:
- the max number of parents
-
listOptions
Returns an enumeration describing the available options.- Specified by:
listOptions
in interfaceOptionHandler
- Overrides:
listOptions
in classLocalScoreSearchAlgorithm
- Returns:
- an enumeration of all the available options.
-
setOptions
Parses a given list of options. Valid options are:-P <nr of parents> Maximum number of parents
-R Use arc reversal operation. (default false)
-N Initial structure is empty (instead of Naive Bayes)
-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 [BAYES|MDL|ENTROPY|AIC|CROSS_CLASSIC|CROSS_BAYES] Score type (BAYES, BDeu, MDL, ENTROPY and AIC)
- Specified by:
setOptions
in interfaceOptionHandler
- Overrides:
setOptions
in classLocalScoreSearchAlgorithm
- 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 classLocalScoreSearchAlgorithm
- Returns:
- an array of strings suitable for passing to setOptions
-
setInitAsNaiveBayes
public void setInitAsNaiveBayes(boolean bInitAsNaiveBayes) Sets whether to init as naive bayes- Parameters:
bInitAsNaiveBayes
- whether to init as naive bayes
-
getInitAsNaiveBayes
public boolean getInitAsNaiveBayes()Gets whether to init as naive bayes- Returns:
- whether to init as naive bayes
-
getUseArcReversal
public boolean getUseArcReversal()get use the arc reversal operation- Returns:
- whether the arc reversal operation should be used
-
setUseArcReversal
public void setUseArcReversal(boolean bUseArcReversal) set use the arc reversal operation- Parameters:
bUseArcReversal
- whether the arc reversal operation should be used
-
globalInfo
This will return a string describing the search algorithm.- Overrides:
globalInfo
in classLocalScoreSearchAlgorithm
- Returns:
- The string.
-
useArcReversalTipText
- Returns:
- a string to describe the Use Arc Reversal option.
-
getRevision
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Overrides:
getRevision
in classLocalScoreSearchAlgorithm
- Returns:
- the revision
-