Semiparametric Mixture Model by Minimizing Profile Hellinger Distance
Semiparametric Mixture Model by Minimizing Profile Hellinger Distance
`mixMPHD' provides an efficient and robust estimation of a mixture of unknown location-shifted symmetric distributions using a semiparamatric method (Wu et al., 2017). As of version 1.1.0, 'mixMPHD' supports a two-component model, which is defined as [REMOVE_ME]h(x;θ,f)=πf(x−μ1)+(1−π)f(x−μ2),[REMOVEME2]
where θ=(π,μ1,μ2)⊤ is the parameter to estimate, f is an unknown density function that is symmetric at zero. The parameters are estimated by minimizing the profile Hellinger distance (MPHD) between the parametric model and a non-parametric density estimate.
mixMPHD(x, sigma.known =NULL, ini =NULL)
Arguments
x: a vector of observations.
sigma.known: standard deviation of one component (if known). Default is NULL.
ini: initial values for the parameters. Default is NULL, which obtains the initial values using the mixOnekn function. It can be a list with the form of list(mu, pi, sigma), where mu is a vector of component means, pi is a vector of component mixing proportions, sigma is a vector of component standard deviations.
Returns
A list containing the following elements: - lik: final likelihood.
pi: estimated mixing proportion.
sigma: estimated component standard deviation. Only returned when sigma.known is not provided.
mu: estimated component mean.
run: total number of iterations after convergence.
Description
`mixMPHD' provides an efficient and robust estimation of a mixture of unknown location-shifted symmetric distributions using a semiparamatric method (Wu et al., 2017). As of version 1.1.0, 'mixMPHD' supports a two-component model, which is defined as
h(x;θ,f)=πf(x−μ1)+(1−π)f(x−μ2),
where θ=(π,μ1,μ2)⊤ is the parameter to estimate, f is an unknown density function that is symmetric at zero. The parameters are estimated by minimizing the profile Hellinger distance (MPHD) between the parametric model and a non-parametric density estimate.
Examples
# Model: X ~ 0.3*N(0, 1) + 0.7*N(3, 1)set.seed(4)n =100p =0.3n1 = rbinom(1, n, p)sigma1 =1sigma2 =1x1 = rnorm(n1, mean =0, sd = sigma1)x2 = rnorm(n - n1, mean =3, sd = sigma2)x = c(x1, x2)ini = mixOnekn(x, sigma1)mixMPHDest = mixMPHD(x, sigma1, ini = ini)
References
Wu, J., Yao, W., and Xiang, S. (2017). Computation of an efficient and robust estimator in a semiparametric mixture model. Journal of Statistical Computation and Simulation, 87(11), 2128-2137.