public class K2 extends GlobalScoreSearchAlgorithm implements TechnicalInformationHandler
@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 [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)
TAGS_CV_TYPE
Constructor and Description |
---|
K2() |
Modifier and Type | Method and Description |
---|---|
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
|
calcScore, calcScoreWithExtraParent, calcScoreWithMissingParent, calcScoreWithReversedParent, cumulativeCV, CVTypeTipText, getCVType, getMarkovBlanketClassifier, getUseProb, kFoldCV, leaveOneOutCV, markovBlanketClassifierTipText, setCVType, setMarkovBlanketClassifier, setUseProb, useProbTipText
buildStructure, initAsNaiveBayesTipText, maxNrOfParentsTipText, toString
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 withjava.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 GlobalScoreSearchAlgorithm
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 [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)
setOptions
in interface OptionHandler
setOptions
in class GlobalScoreSearchAlgorithm
options
- the list of options as an array of stringsjava.lang.Exception
- if an option is not supportedpublic java.lang.String[] getOptions()
getOptions
in interface OptionHandler
getOptions
in class GlobalScoreSearchAlgorithm
public java.lang.String randomOrderTipText()
public java.lang.String globalInfo()
globalInfo
in class GlobalScoreSearchAlgorithm
public java.lang.String getRevision()
getRevision
in interface RevisionHandler
getRevision
in class GlobalScoreSearchAlgorithm