|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectweka.classifiers.bayes.net.search.SearchAlgorithm
weka.classifiers.bayes.net.search.local.LocalScoreSearchAlgorithm
weka.classifiers.bayes.net.search.local.K2
public class K2
This Bayes Network learning algorithm uses a hill climbing algorithm restricted by an order on the variables.
For more information see:
G.F. Cooper, E. Herskovits (1990). A Bayesian method for constructing Bayesian belief networks from databases.
G. Cooper, E. Herskovits (1992). A Bayesian method for the induction of probabilistic networks from data. Machine Learning. 9(4):309-347.
Works with nominal variables and no missing values only.
@proceedings{Cooper1990, author = {G.F. Cooper and E. Herskovits}, booktitle = {Proceedings of the Conference on Uncertainty in AI}, pages = {86-94}, title = {A Bayesian method for constructing Bayesian belief networks from databases}, year = {1990} } @article{Cooper1992, author = {G. Cooper and E. Herskovits}, journal = {Machine Learning}, number = {4}, pages = {309-347}, title = {A Bayesian method for the induction of probabilistic networks from data}, volume = {9}, year = {1992} }Valid options are:
-N Initial structure is empty (instead of Naive Bayes)
-P <nr of parents> Maximum number of parents
-R Random order. (default false)
-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)
Field Summary |
---|
Fields inherited from class weka.classifiers.bayes.net.search.local.LocalScoreSearchAlgorithm |
---|
TAGS_SCORE_TYPE |
Constructor Summary | |
---|---|
K2()
|
Method Summary | |
---|---|
boolean |
getInitAsNaiveBayes()
Gets whether to init as naive bayes |
int |
getMaxNrOfParents()
Gets the max number of parents. |
java.lang.String[] |
getOptions()
Gets the current settings of the search algorithm. |
boolean |
getRandomOrder()
Get random order flag |
java.lang.String |
getRevision()
Returns the revision string. |
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. |
java.lang.String |
globalInfo()
This will return a string describing the search algorithm. |
java.util.Enumeration |
listOptions()
Returns an enumeration describing the available options. |
java.lang.String |
randomOrderTipText()
|
void |
search(BayesNet bayesNet,
Instances instances)
search determines the network structure/graph of the network with the K2 algorithm, restricted by its initial structure (which can be an empty graph, or a Naive Bayes graph. |
void |
setInitAsNaiveBayes(boolean bInitAsNaiveBayes)
Sets whether to init as naive bayes |
void |
setMaxNrOfParents(int nMaxNrOfParents)
Sets the max number of parents |
void |
setOptions(java.lang.String[] options)
Parses a given list of options. |
void |
setRandomOrder(boolean bRandomOrder)
Set random order flag |
Methods 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 |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public K2()
Method Detail |
---|
public TechnicalInformation getTechnicalInformation()
getTechnicalInformation
in interface TechnicalInformationHandler
public void search(BayesNet bayesNet, Instances instances) throws java.lang.Exception
bayesNet
- the networkinstances
- the data to work with
java.lang.Exception
- if something goes wrongpublic void setMaxNrOfParents(int nMaxNrOfParents)
nMaxNrOfParents
- the max number of parentspublic int getMaxNrOfParents()
public void setInitAsNaiveBayes(boolean bInitAsNaiveBayes)
bInitAsNaiveBayes
- whether to init as naive bayespublic boolean getInitAsNaiveBayes()
public void setRandomOrder(boolean bRandomOrder)
bRandomOrder
- the random order flagpublic boolean getRandomOrder()
public java.util.Enumeration listOptions()
listOptions
in interface OptionHandler
listOptions
in class LocalScoreSearchAlgorithm
public void setOptions(java.lang.String[] options) throws java.lang.Exception
-N Initial structure is empty (instead of Naive Bayes)
-P <nr of parents> Maximum number of parents
-R Random order. (default false)
-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)
setOptions
in interface OptionHandler
setOptions
in class LocalScoreSearchAlgorithm
options
- the list of options as an array of strings
java.lang.Exception
- if an option is not supportedpublic java.lang.String[] getOptions()
getOptions
in interface OptionHandler
getOptions
in class LocalScoreSearchAlgorithm
public java.lang.String globalInfo()
globalInfo
in class LocalScoreSearchAlgorithm
public java.lang.String randomOrderTipText()
public java.lang.String getRevision()
getRevision
in interface RevisionHandler
getRevision
in class LocalScoreSearchAlgorithm
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |