From 614f2a9c68998b11010dc1734a77f84fcbd6fa2d Mon Sep 17 00:00:00 2001 From: conrad Date: Mon, 29 Jan 2024 15:17:42 +1000 Subject: [PATCH] rework docs for kmeans, gmm_diag, gmm_full --- docs.html | 89 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 45 insertions(+), 44 deletions(-) diff --git a/docs.html b/docs.html index cdba8d95..aed4d99b 100644 --- a/docs.html +++ b/docs.html @@ -198,12 +198,16 @@ Citations are useful for the continued development and maintenance of the librar
Conrad Sanderson and Ryan Curtin.
Armadillo: a template-based C++ library for linear algebra. -
Journal of Open Source Software, Vol. 1, No. 2, pp. 26, 2016. +
Journal of Open Source Software, Vol. 1, No. 2, pp. 26, 2016.

Conrad Sanderson and Ryan Curtin. +
A User-Friendly Hybrid Sparse Matrix Class in C++. -
Lecture Notes in Computer Science (LNCS), Vol. 10931, pp. 422-430, 2018. +
Lecture Notes in Computer Science (LNCS), Vol. 10931, pp. 422-430, 2018. @@ -536,7 +540,7 @@ Conrad Sanderson and Ryan Curtin. running_stat running statistics of scalars (one dimensional process/signal) running_stat_vec running statistics of vectors (multi-dimensional process/signal) kmeans cluster data into disjoint sets -gmm_diag/gmm_full model and evaluate data using Gaussian Mixture Models (GMMs) +gmm_diag/gmm_full probabilistic clustering and likelihood calculation via Gaussian mixture models @@ -15409,14 +15413,14 @@ See also: @@ -15854,7 +15858,7 @@ See also:
  • log_normpdf()
  • normcdf()
  • randn()
  • -
  • gmm_diag / gmm_full - model and evaluate data using Gaussian Mixture Models (GMMs)
  • +
  • gmm_diag / gmm_full - probabilistic clustering and likelihood calculation via Gaussian mixture models
  • normal distribution in Wikipedia
  • @@ -15930,7 +15934,7 @@ double P5 = log_normpdf(1.23, 4.56, 7.89); See also: @@ -16035,7 +16039,7 @@ See also:
  • wishrnd()
  • cov()
  • .is_sympd()
  • -
  • gmm_diag / gmm_full - model and evaluate data using Gaussian Mixture Models (GMMs)
  • +
  • gmm_diag / gmm_full - probabilistic clustering and likelihood calculation via Gaussian mixture models
  • multivariate normal distribution in Wikipedia
  • @@ -16388,7 +16392,7 @@ cout << "max = " << stats.max() << endl;
    @@ -16598,7 +16602,7 @@ cout << more_stats.cov() / (sd.t() * sd);
  • statistics functions
  • cov()
  • cor()
  • -
  • gmm_diag / gmm_full - model and evaluate data using Gaussian Mixture Models (GMMs)
  • +
  • gmm_diag / gmm_full - probabilistic clustering via Gaussian mixture models

  • @@ -16638,7 +16642,7 @@ The seed_mode parameter specifies how the initial centroids are seeded; i
    -caveat: seeding the initial centroids with static_spread and random_spread +Caveat: seeding the initial centroids with static_spread and random_spread can be much more time consuming than with static_subset and random_subset @@ -16656,7 +16660,11 @@ If the clustering fails, the means matrix is reset and a bool set to f
  • -The clustering will run faster on multi-core machines when OpenMP is enabled in your compiler (eg. -fopenmp in GCC and clang) +For faster execution on multi-core machines, enable OpenMP in your compiler (eg. -fopenmp in GCC and clang) +
  • +
    +
  • +Caveat: for probabilistic clustering, use the gmm_diag or gmm_full classes instead

  • @@ -16684,7 +16692,7 @@ means.print("means:");
  • See also:
      -
    • gmm_diag / gmm_full - model and evaluate data using Gaussian Mixture Models (GMMs)
    • +
    • gmm_diag / gmm_full
    • statistics functions
    • running_stat_vec
    • k-means clustering in Wikipedia
    • @@ -16703,38 +16711,11 @@ means.print("means:");
      • -Classes for multivariate data modelling and evaluation via Gaussian Mixture Models (GMMs) +Classes for multi-variate probabilistic clustering and likelihood calculation via Gaussian Mixture Models (GMMs)

      • -The gmm_diag class is tailored for diagonal covariance matrices (ie. in each covariance matrix, all entries outside the main diagonal are assumed to be zero) -
      • -
        -
      • -The gmm_full class is tailored for full covariance matrices -
      • -
        -
      • -The gmm_diag class is typically much faster to train and use than the gmm_full class, -at the potential cost of some reduction in modelling accuracy -
      • -
        -
      • -The gmm_diag and gmm_full classes include dedicated optimisation algorithms for learning (training) the model parameters from data: -
          -
        • k-means clustering, for quick initial estimates
        • -
        • Expectation-Maximisation (EM), for maximum-likelihood estimates
        • -
        -
        -The optimisation algorithms are multi-threaded and can run much quicker on multi-core machines when OpenMP is enabled in your compiler (eg. -fopenmp in GCC and clang) -
      • -
        -
      • -The classes can also be used for probabilistic clustering and vector quantisation (VQ) -
      • -
        -
      • -Data is modelled as: +Distribution of data is modelled as: @@ -16751,6 +16732,7 @@ Data is modelled as:
        where: