Perform MAP estimation via EM algorithm for a Bayesian mixture of Plackett-Luce models fitted to partial orderings.
mapPLMIX(pi_inv, K, G, init = list(p = NULL, omega = NULL),
n_iter = 1000, hyper = list(shape0 = matrix(1, nrow = G, ncol = K),
rate0 = rep(0, G), alpha0 = rep(1, G)), eps = 10^(-6),
centered_start = FALSE, plot_objective = FALSE)
An object of class top_ordering
, collecting the numeric \(N\)\(\times\)\(K\) data matrix of partial orderings, or an object that can be coerced with as.top_ordering
.
Number of possible items.
Number of mixture components.
List of named objects with initialization values: p
is a numeric \(G\)\(\times\)\(K\) matrix of component-specific support parameters; omega
is a numeric vector of \(G\) mixture weights. If starting values are not supplied (NULL
), they are randomly generated with a uniform distribution. Default is NULL
.
Maximum number of EM iterations.
List of named objects with hyperparameter values for the conjugate prior specification: shape0
is a numeric \(G\)\(\times\)\(K\) matrix of shape hyperparameters; rate0
is a numeric vector of \(G\) rate hyperparameters; alpha0
is a numeric vector of \(G\) Dirichlet hyperparameters. Default is noninformative (flat) prior setting.
Tolerance value for the convergence criterion.
Logical: whether a random start whose support parameters and weights should be centered around the observed relative frequency that each item has been ranked top. Default is FALSE
. Ignored when init
is not NULL
.
Logical: whether the objective function (that is the kernel of the log-posterior distribution) should be plotted. Default is FALSE
.
A list of S3 class mpPLMIX
with named elements:
W_map
Numeric vector with the MAP estimates of the \(G\) mixture weights.
P_map
Numeric \(G\)\(\times\)\(K\) matrix with the MAP estimates of the component-specific support parameters.
z_hat
Numeric \(N\)\(\times\)\(G\) matrix of estimated posterior component membership probabilities.
class_map
Numeric vector of \(N\) mixture component memberships based on MAP allocation from the z_hat
matrix.
log_lik
Numeric vector of the log-likelihood values at each iteration.
objective
Numeric vector of the objective function values (that is the kernel of the log-posterior distribution) at each iteration.
max_objective
Maximized objective function value.
bic
BIC value (only for the default flat priors, otherwise NULL
).
conv
Binary convergence indicator: 1 = convergence has been achieved, 0 = otherwise.
call
The matched call.
Under noninformative (flat) prior setting, the EM algorithm for MAP estimation corresponds to the EMM algorithm described by Gormley and Murphy (2006) to perform frequentist inference. In this case, the MAP solution coincides with the MLE and the output vectors log_lik
and objective
coincide as well.
The mapPLMIX
function performs the MAP procedure with a single starting value. To address the issue of local maxima in the posterior distribution, see the mapPLMIX_multistart
function.
Mollica, C. and Tardella, L. (2017). Bayesian Plackett-Luce mixture models for partially ranked data. Psychometrika, 82(2), pages 442--458, ISSN: 0033-3123, DOI: 10.1007/s11336-016-9530-0.
Gormley, I. C. and Murphy, T. B. (2006). Analysis of Irish third-level college applications data. Journal of the Royal Statistical Society: Series A, 169(2), pages 361--379, ISSN: 0964-1998, DOI: 10.1111/j.1467-985X.2006.00412.x.
# NOT RUN {
data(d_carconf)
MAP <- mapPLMIX(pi_inv=d_carconf, K=ncol(d_carconf), G=3, n_iter=400*3)
str(MAP)
MAP$P_map
MAP$W_map
# }
Run the code above in your browser using DataLab