Skip to main content

Infer.NET user guide : Learners : Bayes Point Machine classifiers : The Learner API

Settings & events

The settings of a Bayes Point Machine classifiers are obtained through its Settings property. There are separate settings for training and prediction.

Training settings

It is important to realize that the Bayes Point Machine classifiers do not require the specification of some parameters, such as prior distributions over weights. The Bayes Point Machines are practically hyper-parameter free. As mentioned in the tutorial introduction, this is achieved via heavy-tailed prior distributions over weights (see The probabilistic model) and has a number of immediate benefits:

Prediction settings

The following prediction setting only applies to the multi-class Bayes Point Machine classifier:


The Bayes Point Machine classifiers can provide (limited) diagnostic information about the progress of the training algorithm via the IterationChanged event. Listening to this event gives you access to the posterior distributions over weights after the training algorithm has completed an iteration over the training set. Especially if there are many features (and thus weights) or classes, attaching a handler to this event comes at a cost as the weights need to be copied. However, in rare cases the Bayes Point Machine classifiers may exhibit relatively poor performance. In such a case, it is often informative to look at the change in posterior weight distributions over time and see whether there is a problem with convergence of the training algorithm.

Handlers attached to the IterationChanged event will not be serialized when saving the Bayes Point Machine classifiers.