Learn R Programming

MoEClust (version 1.4.1)

aitken: Aitken Acceleration

Description

Calculates the Aitken acceleration estimate of the final converged maximised log-likelihood under the EM/CEM framework.

Usage

aitken(loglik)

Arguments

loglik

A vector of three consecutive log-likelihood values. These three values should be in ascending order, though this is not checked.

Value

A list with the following named components:

ll

The most current estimate for the log-likelihood.

linf

The most current estimate of the final converged maximised log-likelihood.

a

The Aitken acceleration value where typically 0 <= a <= 1. When a < 0, a numerical issue or bug has occurred; when a > 1, the algorithm is accelerating and should not be stopped.

When the "aitken" method is employed within MoE_clust (via MoE_control), ll at convergence gives the log-likelihood achieved by the estimated parameters, while linf at convergence estimates the log-likelihood that would be achieved after an infinite number of EM/CEM iterations.

Details

The final converged maximised log-likelihood can be used to determine convergence of the EM/CEM algorithm within MoE_clust, i.e. by checking whether the absolute difference between the current log-likelihood estimate and the final converged maximised log-likelihood estimate is less than some tolerance.

References

Boehning, D., Dietz, E., Schaub, R., Schlattmann, P. and Lindsay, B. G. (1994). The distribution of the likelihood ratio for mixtures of densities from the one-parameter exponential family. Annals of the Institute of Statistical Mathematics, 46(2): 373-388.

See Also

MoE_control

Examples

Run this code
# NOT RUN {
(a1 <- aitken(-c(449.61534, 442.84221, 436.58999)))
a2  <- aitken(-c(442.84221, 436.58999, 436.58998))
abs(a2$linf - a1$linf) < 1e-05 #FALSE
a3  <- aitken(-c(436.58998, 436.58997, 436.58997))
abs(a3$linf - a2$linf) < 1e-05 #TRUE
(ll <- a3$linf)
(a  <- a3$a)
# }

Run the code above in your browser using DataLab