An S4 class to represent a multivariate diagonal Gaussian mixture model.
The model corresponds to the following generative model:
$$ \pi \sim Dirichlet(\alpha)$$
$$ Z_i \sim \mathcal{M}(1,\pi)$$
$$ \lambda_k^{(d)} \sim \mathcal{G}(\kappa,\beta)$$
$$ \mu_k^{(d)} \sim \mathcal{N}(\mu,(\tau \lambda_k)^{-1})$$
$$ X_{i.}|Z_{ik}=1 \sim \mathcal{N}(\mu_k,\lambda_{k}^{-1})$$
with \(\mathcal{G}(\kappa,\beta)\) the Gamma distribution with shape parameter \(\kappa\) and rate parameter \(\beta\).
These classes mainly store the prior parameters value (\(\alpha,\tau,\kappa\beta,\mu\)) of this generative model.
The DiagGmm-class
must be used when fitting a simple Diagonal Gaussian Mixture Model whereas the DiagGmmPrior-class
must be sued when fitting a CombinedModels-class
.
DiagGmmPrior(tau = 0.01, kappa = 1, beta = NaN, mu = NaN)
DiagGmm(alpha = 1, tau = 0.01, kappa = 1, beta = NaN, mu = NaN)
Prior parameter (inverse variance), (default 0.01)
Prior parameter (gamma shape), (default to 1)
Prior parameter (gamma rate), (default to NaN, in this case beta will be estimated from data as 0.1 time the mean of X columns variances)
Prior for the means (vector of size D), (default to NaN, in this case mu will be estimated from data as the mean of X)
Dirichlet prior parameter over the cluster proportions (default to 1)
a DiagGmmPrior-class
object
a DiagGmm-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. #'
DiagGmmFit-class
, DiagGmmPath-class
Other DlvmModels:
CombinedModels
,
DcLbm
,
DcSbm
,
DlvmPrior-class
,
Gmm
,
Lca
,
MoM
,
MoR
,
MultSbm
,
Sbm
,
greed()
DiagGmmPrior()
#> An object of class "DiagGmmPrior"
#> Slot "tau":
#> [1] 0.01
#>
#> Slot "kappa":
#> [1] 1
#>
#> Slot "beta":
#> [1] NaN
#>
#> Slot "mu":
#> [,1]
#> [1,] NaN
#>
DiagGmmPrior(tau = 0.1)
#> An object of class "DiagGmmPrior"
#> Slot "tau":
#> [1] 0.1
#>
#> Slot "kappa":
#> [1] 1
#>
#> Slot "beta":
#> [1] NaN
#>
#> Slot "mu":
#> [,1]
#> [1,] NaN
#>
DiagGmm()
#> An object of class "DiagGmm"
#> Slot "alpha":
#> [1] 1
#>
#> Slot "tau":
#> [1] 0.01
#>
#> Slot "kappa":
#> [1] 1
#>
#> Slot "beta":
#> [1] NaN
#>
#> Slot "mu":
#> [,1]
#> [1,] NaN
#>
DiagGmm(tau = 0.1)
#> An object of class "DiagGmm"
#> Slot "alpha":
#> [1] 1
#>
#> Slot "tau":
#> [1] 0.1
#>
#> Slot "kappa":
#> [1] 1
#>
#> Slot "beta":
#> [1] NaN
#>
#> Slot "mu":
#> [,1]
#> [1,] NaN
#>