mlr_learners_clust.flexmix: Finite Mixture Model Clustering Learner

mlr_learners_clust.flexmixR Documentation

Finite Mixture Model Clustering Learner

Description

Finite mixture model clustering via the EM algorithm. Calls flexmix::flexmix() from package flexmix.

The component model is selected through the model parameter, exposing the multivariate normal, univariate normal, multivariate binary, and multivariate Poisson drivers shipped with flexmix. The predict method calls flexmix::clusters() for cluster assignments and flexmix::posterior() for component probabilities on new data.

Note that EM can prune components whose prior falls below minprior during fitting, so the final number of components may be smaller than k.

Dictionary

This mlr3::Learner can be instantiated via the dictionary mlr3::mlr_learners or with the associated sugar function mlr3::lrn():

mlr_learners$get("clust.flexmix")
lrn("clust.flexmix")

Meta Information

  • Task type: “clust”

  • Predict Types: “partition”, “prob”

  • Feature Types: “logical”, “integer”, “numeric”

  • Required Packages: mlr3, mlr3cluster, flexmix

Parameters

Id Type Default Levels Range
k integer - [1, \infty)
model character FLXMCmvnorm FLXMCmvnorm, FLXMCnorm1, FLXMCmvbinary, FLXMCmvpois -
diagonal logical TRUE TRUE, FALSE -
truncated logical FALSE TRUE, FALSE -
cluster untyped - -
iter.max integer 200 [1, \infty)
minprior numeric 0.05 [0, 1]
tolerance numeric 1e-06 [0, \infty)
verbose integer 0 [0, \infty)
classify character auto auto, weighted, CEM, SEM, hard, random -
nrep integer 1 [1, \infty)

Super classes

mlr3::Learner -> LearnerClust -> LearnerClustFlexmix

Methods

Public methods

Inherited methods

LearnerClustFlexmix$new()

Creates a new instance of this R6 class.

Usage
LearnerClustFlexmix$new()

LearnerClustFlexmix$clone()

The objects of this class are cloneable with this method.

Usage
LearnerClustFlexmix$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.

References

Leisch, Friedrich (2004). “FlexMix: A General Framework for Finite Mixture Models and Latent Class Regression in R.” Journal of Statistical Software, 11(8), 1–18. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.18637/jss.v011.i08")}.

Grün, Bettina, Leisch, Friedrich (2008). “FlexMix Version 2: Finite Mixtures with Concomitant Variables and Varying and Constant Parameters.” Journal of Statistical Software, 28(4), 1–35. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.18637/jss.v028.i04")}.

See Also

Other Learner: mlr_learners_clust.MBatchKMeans, mlr_learners_clust.SimpleKMeans, mlr_learners_clust.agnes, mlr_learners_clust.ap, mlr_learners_clust.bico, mlr_learners_clust.birch, mlr_learners_clust.clara, mlr_learners_clust.cmeans, mlr_learners_clust.cobweb, mlr_learners_clust.dbscan, mlr_learners_clust.dbscan_fpc, mlr_learners_clust.diana, mlr_learners_clust.em, mlr_learners_clust.fanny, mlr_learners_clust.featureless, mlr_learners_clust.ff, mlr_learners_clust.genie, mlr_learners_clust.hclust, mlr_learners_clust.hdbscan, mlr_learners_clust.kcca, mlr_learners_clust.kkmeans, mlr_learners_clust.kmeans, mlr_learners_clust.kproto, mlr_learners_clust.mclust, mlr_learners_clust.meanshift, mlr_learners_clust.movMF, mlr_learners_clust.optics, mlr_learners_clust.pam, mlr_learners_clust.protoclust, mlr_learners_clust.skmeans, mlr_learners_clust.som, mlr_learners_clust.specc, mlr_learners_clust.stdbscan, mlr_learners_clust.tclust, mlr_learners_clust.xmeans

Examples


# Define the Learner and set parameter values
learner = lrn("clust.flexmix")
print(learner)

# Define a Task
task = tsk("usarrests")

# Train the learner on the task
learner$train(task)

# Print the model
print(learner$model)

# Make predictions for the task
prediction = learner$predict(task)

# Score the predictions
prediction$score(task = task)


mlr3cluster documentation built on June 11, 2026, 5:06 p.m.