A Zellner-style spike and slab prior for logistic regression models. See 'Details' for a definition.
LogitZellnerPrior(
predictors,
successes = NULL,
trials = NULL,
prior.success.probability = NULL,
expected.model.size = 1,
prior.information.weight = .01,
diagonal.shrinkage = .5,
optional.coefficient.estimate = NULL,
max.flips = -1,
prior.inclusion.probabilities = NULL)
Returns an object of class LogitZellnerPrior
, which is a list
with data elements encoding the selected prior values. It inherits
from LogitPrior
, which implies that it contains an element
prior.success.probability
.
This object is intended for use with logit.spike
.
The design matrix for the regression problem. No missing data is allowed.
The vector of responses, which can be 0/1,
TRUE/FALSE
, or 1/-1. This is only used to obtain the empirical
overall success rate, so it can be left NULL
if
prior.success.probability is specified.
A vector of the same length as successes, giving the
number of trials for each success count (trials cannot be less than
successes). If successes is binary (or NULL
) then this can
be NULL
as well, signifying that there was only one trial per
experiment.
The overal prior guess at the
proportion of successes. This is used in two places. It is an
input into the intercept term of the default
optional.coefficient.estimate
, and it is used as a weight for
the prior information matrix. See 'Details'.
A positive number less than ncol(x)
, representing a guess at
the number of significant predictor variables. Used to obtain the
'spike' portion of the spike and slab prior.
A positive scalar. Number of observations worth of weight that should be given to the prior estimate of beta.
The conditionally Gaussian prior for beta (the "slab") starts with a
precision matrix equal to the information in a single observation.
However, this matrix might not be full rank. The matrix can be made
full rank by averaging with its diagonal. diagonal.shrinkage
is the weight given to the diaonal in this average. Setting this to
zero gives Zellner's g-prior.
If desired, an estimate of the regression coefficients can be supplied. In most cases this will be a difficult parameter to specify. If omitted then a prior mean of zero will be used for all coordinates except the intercept, which will be set to mean(y).
The maximum number of variable inclusion indicators the sampler will attempt to sample each iteration. If negative then all indicators will be sampled.
A vector giving the prior
probability of inclusion for each variable. If NULL
then a
default set of probabilities is obtained by setting each element
equal to min(1, expected.model.size / ncol(x))
.
Steven L. Scott
A Zellner-style spike and slab prior for logistic regression. Denote the vector of coefficients by \(\beta\), and the vector of inclusion indicators by \(\gamma\). These are linked by the relationship \(\beta_i \ne 0\) if \(\gamma_i = 1\) and \(\beta_i = 0\) if \(\gamma_i = 0\). The prior is
$$\beta | \gamma \sim N(b, V)$$ $$\gamma \sim B(\pi)$$
where \(\pi\) is the vector of
prior.inclusion.probabilities
, and \(b\) is the
optional.coefficient.estimate
. Conditional on
\(\gamma\), the prior information matrix is
$$V^{-1} = \kappa ((1 - \alpha) x^Twx / n + \alpha diag(x^Twx / n))$$
The matrix \(x^Twx\) is, for suitable choice of the weight vector \(w\), the total Fisher information available in the data. Dividing by \(n\) gives the average Fisher information in a single observation, multiplying by \(\kappa\) then results in \(\kappa\) units of "average" information. This matrix is averaged with its diagonal to ensure positive definiteness.
In the formula above, \(\kappa\) is
prior.information.weight
, \(\alpha\) is
diagonal.shrinkage
, and \(w\) is a diagonal matrix with all
elements set to prior.success.probability * (1 -
prior.success.probability)
. The vector \(b\) and the matrix
\(V^{-1}\) are both implicitly subscripted by \(\gamma\),
meaning that elements, rows, or columsn corresponding to gamma = 0
should be omitted.
Hugh Chipman, Edward I. George, Robert E. McCulloch, M. Clyde, Dean P. Foster, Robert A. Stine (2001), "The Practical Implementation of Bayesian Model Selection" Lecture Notes-Monograph Series, Vol. 38, pp. 65-134. Institute of Mathematical Statistics.