View source: R/simpleMergeSplit.R
simpleMergeSplit | R Documentation |
Merge-split proposals for conjugate "Chinese Restaurant Process" (CRP) mixture models using uniformly random allocation of items, as presented in Jain & Neal (2004), with additional functionality for the two parameter CRP prior.
simpleMergeSplit( partition, logPosteriorPredictiveDensity = function(i, subset) 0, mass = 1, discount = 0, nUpdates = 1L, selectionWeights = NULL )
partition |
A numeric vector of cluster labels representing the current partition. |
logPosteriorPredictiveDensity |
A function taking an index i (as a numeric vector of length one) and a subset of integers subset, and returning the natural logarithm of p( y_i | y_subset ), i.e., that item's contribution to the log integrated likelihood given a subset of the other items. The default value "turns off" the likelihood, resulting in prior simulation (rather than posterior simulation). |
mass |
A specification of the mass (concentration) parameter in the CRP
prior. Must be greater than the |
discount |
A numeric value on the interval [0,1) corresponding to the discount parameter in the two parameter CRP prior. |
nUpdates |
An integer giving the number of merge-split proposals before returning. This has the effect of thinning the Markov chain. |
selectionWeights |
A matrix or data frame whose first two columns are the unique pairs of data indices, along with a column of weights representing how likely each pair is to be selected at the beginning of each merge-split update. |
An integer vector giving the updated partition encoded using cluster labels.
The acceptance rate
of the Metropolis-Hastings proposals, i.e. the number accepted proposals
divided by nUpdates
.
Jain, S., & Neal, R. M. (2004). A split-merge Markov chain Monte Carlo procedure for the Dirichlet process mixture model. Journal of computational and Graphical Statistics, 13(1), 158-182.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.