EMsinvMmix {ClusTorus}R Documentation

Fitting mixtures of bivariate von Mises distribution

Description

EMsinvMmix returns fitted parameters of J-mixture of bivariate sine von Mises.

Usage

EMsinvMmix(
  data,
  J = 4,
  parammat = EMsinvMmix.init(data, J),
  THRESHOLD = 1e-10,
  maxiter = 200,
  type = c("circular", "axis-aligned", "general"),
  kmax = 500,
  verbose = TRUE
)

Arguments

data

n x 2 matrix of toroidal data on [0, 2π)^2

J

number of components of mixture density

parammat

6 x J parameter data with the following components:

parammat[1, ] : the weights for each von Mises sine density

parammat[n + 1, ] : κ_n for each von Mises sine density for n = 1, 2, 3

parammat[m + 4, ] : μ_m for each von Mises sine density for m = 1, 2

THRESHOLD

number of threshold for difference between updating and updated parameters.

maxiter

the maximal number of iteration.

type

a string one of "circular", "axis-aligned", "general", and "Bayesian" which determines the fitting method.

kmax

the maximal number of kappa. If estimated kappa is larger than kmax, then put kappa as kmax.

verbose

boolean index, which indicates whether display additional details as to what the algorithm is doing or how many loops are done.

Details

This algorithm is based on ECME algorithm. That is, constructed with E - step and M - step and M - step maximizes the parameters with given type.

If type == "circular", then the mixture density is just a product of two independent von Mises.

If type == "axis-aligned", then the mixture density is the special case of type == "circular": only need to take care of the common concentration parameter.

Iftype == "general", then the fitting the mixture density is more complicated than before, check the detail of the reference article.

Value

returns approximated parameters for bivariate normal distribution with list:

list$Sigmainv[j] : approximated covariance matrix for j-th bivariate normal distribution, approximation of the j-th von Mises.

list$c[j] : approximated |2πΣ|^{-1} for j-th bivariate normal distribution, approximation of the j-th von Mises.

References

'S. Jung, K. Park, and B. Kim (2021), "Clustering on the torus by conformal prediction"

Examples


data <- ILE[1:200, 1:2]

EMsinvMmix(data, J = 3,
           THRESHOLD = 1e-10, maxiter = 200,
           type = "general", kmax = 500, verbose = FALSE)


[Package ClusTorus version 0.1.3 Index]