mapPLMIX_multistart: MAP estimation for a Bayesian mixture of Plackett-Luce models...

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/PLMIXfunctions.R

Description

Perform MAP estimation via EM algorithm with multiple starting values for a Bayesian mixture of Plackett-Luce models fitted to partial orderings.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
mapPLMIX_multistart(
  pi_inv,
  K,
  G,
  n_start = 1,
  init = rep(list(list(p = NULL, omega = NULL)), times = n_start),
  n_iter = 200,
  hyper = list(shape0 = matrix(1, nrow = G, ncol = K), rate0 = rep(0, G), alpha0 =
    rep(1, G)),
  eps = 10^(-6),
  plot_objective = FALSE,
  init_index = 1:n_start,
  parallel = FALSE,
  centered_start = FALSE
)

Arguments

pi_inv

An object of class top_ordering, collecting the numeric NxK data matrix of partial orderings, or an object that can be coerced with as.top_ordering.

K

Number of possible items.

G

Number of mixture components.

n_start

Number of starting values.

init

List of n_start lists of named objects with initialization values: p is a numeric GxK 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.

n_iter

Maximum number of EM iterations.

hyper

List of named objects with hyperparameter values for the conjugate prior specification: shape0 is a numeric GxK 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.

eps

Tolerance value for the convergence criterion.

plot_objective

Logical: whether the objective function (that is the kernel of the log-posterior distribution) should be plotted. Default is FALSE.

init_index

Numeric vector indicating the positions of the starting values in the init list to be actually launched. Useful to launch the most promising starting values identified after a preliminary run. Default is run all the starting points in the init list.

parallel

Logical: whether parallelization should be used. Default is FALSE.

centered_start

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.

Details

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. The best model in terms of maximized posterior distribution is returned.

Value

A list of S3 class mpPLMIX with named elements:

mod

List of named objects describing the best model in terms of maximized posterior distribution. See output values of the single-run mapPLMIX function for a detailed explanation of the list elements.

max_objective

Numeric vector of the maximized objective function values for each initialization.

convergence

Binary vector with length(init_index) convergence indicators for each initialization: 1 = convergence has been achieved, 0 = otherwise.

call

The matched call.

Author(s)

Cristina Mollica and Luca Tardella

References

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.

See Also

mapPLMIX

Examples

1
2
3
4
5
6
data(d_carconf)
MAP_mult <- mapPLMIX_multistart(pi_inv=d_carconf, K=ncol(d_carconf), G=3, 
                                            n_start=2, n_iter=400*3)
str(MAP_mult)
MAP_mult$mod$P_map
MAP_mult$mod$W_map

cmollica/PLMIX documentation built on Dec. 31, 2020, 10:04 p.m.