An S4 class to represent a multivariate Gaussian mixture model.
The model corresponds to the following generative model:
$$ \pi \sim Dirichlet(\alpha)$$
$$ Z_i \sim \mathcal{M}(1,\pi)$$
$$ V_k \sim \mathcal{W}(\varepsilon^{-1},n_0)$$
$$ \mu_k \sim \mathcal{N}(\mu,(\tau V_k)^{-1})$$
$$ X_{i}|Z_{ik}=1 \sim \mathcal{N}(\mu_k,V_{k}^{-1})$$
with \(\mathcal{W}(\varepsilon^{-1},n_0)\) the Wishart distribution.
The Gmm-class
must be used when fitting a simple Gaussian Mixture Model whereas the GmmPrior-class
must be used when fitting a CombinedModels-class
.
GmmPrior(tau = 0.01, N0 = NaN, mu = NaN, epsilon = NaN)
Gmm(tau = 0.01, N0 = NaN, mu = NaN, epsilon = NaN, alpha = 1)
Prior parameter (inverse variance) default 0.01
Prior parameter (pseudo count) should be > number of features (default to NaN, in this case it will be estimated from data as the number of columns of X)
Prior parameters for the means (vector of size D), (default to NaN, in this case mu will be estimated from the data and will be equal to the mean of X)
Prior parameter co-variance matrix prior (matrix of size D x D), (default to a matrix of NaN, in this case epsilon will be estimated from data and will corresponds to 0.1 times a diagonal matrix with the variances of the X columns)
Dirichlet prior parameter over the cluster proportions (default to 1)
a GmmPrior-class
object
a Gmm-class
object
Bertoletti, Marco & Friel, Nial & Rastelli, Riccardo. (2014). Choosing the number of clusters in a finite mixture model using an exact Integrated Completed Likelihood criterion. METRON. 73. 10.1007/s40300-015-0064-5.
GmmPrior()
#> An object of class "GmmPrior"
#> Slot "tau":
#> [1] 0.01
#>
#> Slot "mu":
#> [,1]
#> [1,] NaN
#>
#> Slot "epsilon":
#> [,1]
#> [1,] NaN
#>
#> Slot "N0":
#> [1] NaN
#>
GmmPrior(tau = 0.1)
#> An object of class "GmmPrior"
#> Slot "tau":
#> [1] 0.1
#>
#> Slot "mu":
#> [,1]
#> [1,] NaN
#>
#> Slot "epsilon":
#> [,1]
#> [1,] NaN
#>
#> Slot "N0":
#> [1] NaN
#>
Gmm()
#> An object of class "Gmm"
#> Slot "tau":
#> [1] 0.01
#>
#> Slot "mu":
#> [,1]
#> [1,] NaN
#>
#> Slot "epsilon":
#> [,1]
#> [1,] NaN
#>
#> Slot "N0":
#> [1] NaN
#>
#> Slot "alpha":
#> [1] 1
#>
Gmm(tau = 0.1, alpha = 0.5)
#> An object of class "Gmm"
#> Slot "tau":
#> [1] 0.1
#>
#> Slot "mu":
#> [,1]
#> [1,] NaN
#>
#> Slot "epsilon":
#> [,1]
#> [1,] NaN
#>
#> Slot "N0":
#> [1] NaN
#>
#> Slot "alpha":
#> [1] 0.5
#>