A LearnerClust for k-means clustering implemented in stats::kmeans()
.
stats::kmeans()
doesn't have a default value for the number of clusters.
Therefore, the centers
parameter here is set to 2 by default.
The predict method uses clue::cl_predict()
to compute the
cluster memberships for new data.
Dictionary
This mlr3::Learner can be instantiated via the dictionary mlr3::mlr_learners or with the associated sugar function mlr3::lrn()
:
Meta Information
Task type: “clust”
Predict Types: “partition”
Feature Types: “logical”, “integer”, “numeric”
Required Packages: mlr3, mlr3cluster, 'stats', clue
Parameters
Id | Type | Default | Levels | Range |
centers | untyped | - | - | |
iter.max | integer | 10 | \([1, \infty)\) | |
algorithm | character | Hartigan-Wong | Hartigan-Wong, Lloyd, Forgy, MacQueen | - |
nstart | integer | 1 | \([1, \infty)\) | |
trace | integer | 0 | \([0, \infty)\) |
References
Forgy, W E (1965). “Cluster analysis of multivariate data: efficiency versus interpretability of classifications.” Biometrics, 21, 768–769.
Hartigan, A J, Wong, A M (1979). “Algorithm AS 136: A K-means clustering algorithm.” Journal of the Royal Statistical Society. Series C (Applied Statistics), 28(1), 100–108. doi:10.2307/2346830 .
Lloyd, P S (1982). “Least squares quantization in PCM.” IEEE Transactions on Information Theory, 28(2), 129–137.
MacQueen, James (1967). “Some methods for classification and analysis of multivariate observations.” In Proceedings of the Fifth Berkeley Symposium on Mathematical Statistics and Probability, volume 1, 281–297.
See also
Chapter in the mlr3book: https://mlr3book.mlr-org.com/chapters/chapter2/data_and_basic_modeling.html#sec-learners
Package mlr3extralearners for more learners.
as.data.table(mlr_learners)
for a table of available Learners in the running session (depending on the loaded packages).mlr3pipelines to combine learners with pre- and postprocessing steps.
Extension packages for additional task types:
mlr3proba for probabilistic supervised regression and survival analysis.
mlr3cluster for unsupervised clustering.
mlr3tuning for tuning of hyperparameters, mlr3tuningspaces for established default tuning spaces.
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.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.hclust
,
mlr_learners_clust.hdbscan
,
mlr_learners_clust.kkmeans
,
mlr_learners_clust.mclust
,
mlr_learners_clust.meanshift
,
mlr_learners_clust.optics
,
mlr_learners_clust.pam
,
mlr_learners_clust.xmeans
Super classes
mlr3::Learner
-> mlr3cluster::LearnerClust
-> LearnerClustKMeans
Examples
if (requireNamespace("stats") && requireNamespace("clue")) {
learner = mlr3::lrn("clust.kmeans")
print(learner)
# available parameters:
learner$param_set$ids()
}
#> <LearnerClustKMeans:clust.kmeans>: K-Means
#> * Model: -
#> * Parameters: centers=2
#> * Packages: mlr3, mlr3cluster, stats, clue
#> * Predict Types: [partition]
#> * Feature Types: logical, integer, numeric
#> * Properties: complete, exclusive, partitional
#> [1] "centers" "iter.max" "algorithm" "nstart" "trace"