Set parameters related to the Metropolis-Hastings algorithm.
Usage
set_compute_options(
nmc = 2000,
burnin = NULL,
alpha_prop_sd = 0.1,
rho_proposal = c("ls", "swap"),
leap_size = 1,
aug_method = c("uniform", "pseudo"),
pseudo_aug_metric = c("footrule", "spearman"),
swap_leap = 1,
alpha_jump = 1,
aug_thinning = 1,
clus_thinning = 1,
rho_thinning = 1,
include_wcd = FALSE,
save_aug = FALSE,
save_ind_clus = FALSE
)
Arguments
- nmc
Integer specifying the number of iteration of the Metropolis-Hastings algorithm to run. Defaults to
2000
. Seeassess_convergence()
for tools to check convergence of the Markov chain.- burnin
Integer defining the number of samples to discard. Defaults to
NULL
, which means that burn-in is not set.- alpha_prop_sd
Numeric value specifying the \(\sigma\) parameter of the lognormal proposal distribution used for \(\alpha\) in the Metropolis-Hastings algorithm. The logarithm of the proposed samples will have standard deviation given by
alpha_prop_sd
. Defaults to0.1
.- rho_proposal
Character string specifying the proposal distribution of modal ranking \(\rho\). Defaults to "ls", which means that the leap-and-shift algorithm of Vitelli et al. (2018) is used. The other option is "swap", which means that the swap proposal of Crispino et al. (2019) is used instead.
- leap_size
Integer specifying the step size of the distribution defined in
rho_proposal
for proposing new latent ranks \(rho\). Defaults to 1.- aug_method
Augmentation proposal for use with missing data. One of "pseudo" and "uniform". Defaults to "uniform", which means that new augmented rankings are proposed by sampling uniformly from the set of available ranks, see Section 4 in Vitelli et al. (2018) . Setting the argument to "pseudo" instead, means that the pseudo-likelihood proposal defined in Chapter 5 of Stein (2023) is used instead.
- pseudo_aug_metric
String defining the metric to be used in the pseudo-likelihood proposal. Only used if
aug_method = "pseudo"
. Can be either "footrule" or "spearman", and defaults to "footrule".- swap_leap
Integer specifying the leap size for the swap proposal used for proposing latent ranks in the case of non-transitive pairwise preference data. Note that leap size for the swap proposal when used for proposal the modal ranking \(\rho\) is given by the
leap_size
argument above.- alpha_jump
Integer specifying how many times to sample \(\rho\) between each sampling of \(\alpha\). In other words, how many times to jump over \(\alpha\) while sampling \(\rho\), and possibly other parameters like augmented ranks \(\tilde{R}\) or cluster assignments \(z\). Setting
alpha_jump
to a high number can speed up computation time, by reducing the number of times the partition function for the Mallows model needs to be computed. Defaults to1
.- aug_thinning
Integer specifying the thinning for saving augmented data. Only used when
save_aug = TRUE
. Defaults to1
.- clus_thinning
Integer specifying the thinning to be applied to cluster assignments and cluster probabilities. Defaults to
1
.- rho_thinning
Integer specifying the thinning of
rho
to be performed in the Metropolis- Hastings algorithm. Defaults to1
.compute_mallows
save everyrho_thinning
th value of \(\rho\).- include_wcd
Logical indicating whether to store the within-cluster distances computed during the Metropolis-Hastings algorithm. Defaults to
FALSE
. Settinginclude_wcd = TRUE
is useful when deciding the number of mixture components to include, and is required byplot_elbow()
.- save_aug
Logical specifying whether or not to save the augmented rankings every
aug_thinning
th iteration, for the case of missing data or pairwise preferences. Defaults toFALSE
. Saving augmented data is useful for predicting the rankings each assessor would give to the items not yet ranked, and is required byplot_top_k()
.- save_ind_clus
Whether or not to save the individual cluster probabilities in each step. This results in csv files
cluster_probs1.csv
,cluster_probs2.csv
, ..., being saved in the calling directory. This option may slow down the code considerably, but is necessary for detecting label switching using Stephen's algorithm.
Value
An object of class "BayesMallowsComputeOptions"
, to be provided in
the compute_options
argument to compute_mallows()
,
compute_mallows_mixtures()
, or update_mallows()
.
References
Crispino M, Arjas E, Vitelli V, Barrett N, Frigessi A (2019).
“A Bayesian Mallows approach to nontransitive pair comparison data: How human are sounds?”
The Annals of Applied Statistics, 13(1), 492–519.
doi:10.1214/18-aoas1203
.
Stein A (2023).
Sequential Inference with the Mallows Model.
Ph.D. thesis, Lancaster University.
Vitelli V, Sørensen, Crispino M, Arjas E, Frigessi A (2018).
“Probabilistic Preference Learning with the Mallows Rank Model.”
Journal of Machine Learning Research, 18(1), 1–49.
https://jmlr.org/papers/v18/15-481.html.
See also
Other preprocessing:
get_transitive_closure()
,
set_initial_values()
,
set_model_options()
,
set_priors()
,
set_progress_report()
,
set_smc_options()
,
setup_rank_data()