Re: Default behaviour K2 structure learning with missing values

Peter Reutemann <[email protected]> Fri, 9 Feb 2024 10:46:00 +1300
Newsgroups gmane.comp.ai.weka
Message-ID <CAHoQ12KNdpQxU9iJAM3_YQD02o7=KM=LO2==Wp1SF6gyKwQicA@mail.gmail.com>
> Can someone tell me what the default behaviour is for the K2 algorithm when training a network structure for BayesNet when there are missing values in the dataset?
> The documentation simply says “works with no missing values only”, but it still works when the I use a dataset with missing data.
>
> I assume there is a default filter it uses, but I cannot find which one it is.
>
> Can someone tell me what the default behavior is?
> Does it automatically impute values for the structure learning phase, and if so how?

The BayesNet classifier automatically applies the ReplaceMissingValues
filter. See the normalizeDataSet method, which gets called when the
classifier is being trained in the buildClassifier method:
https://git.cms.waikato.ac.nz/weka/weka/-/blob/main/trunk/weka/src/main/java/weka/classifiers/bayes/BayesNet.java?ref_type=heads#L253

ReplaceMissingValues javadoc:
https://weka.sourceforge.io/doc.dev/weka/filters/unsupervised/attribute/ReplaceMissingValues.html

Cheers, Peter
-- 
Peter Reutemann
Dept. of Computer Science
University of Waikato, Hamilton, NZ
Mobile +64 22 190 2375
https://www.cs.waikato.ac.nz/~fracpete/
http://www.data-mining.co.nz/
_______________________________________________
Wekalist mailing list -- [email protected]
Send posts to [email protected]
To unsubscribe send an email to [email protected]
To subscribe, unsubscribe, etc., visit https://list.waikato.ac.nz/postorius/lists/wekalist.list.waikato.ac.nz
List etiquette: http://www.cs.waikato.ac.nz/~ml/weka/mailinglist_etiquette.html