ergm.bridge.llr
uses bridge sampling with geometric spacing to
estimate the difference between the log-likelihoods of two parameter vectors
for an ERGM via repeated calls to simulate.formula.ergm()
.
ergm.bridge.0.llk
is a convenience wrapper that
returns the log-likelihood of configuration \(\theta\)
relative to the reference measure. That is, the
configuration with \(\theta=0\) is defined as having log-likelihood of
0.
ergm.bridge.dindstart.llk
is a wrapper that uses a
dyad-independent ERGM as a starting point for bridge sampling to
estimate the log-likelihood for a given dyad-dependent model and
parameter configuration. Note that it only handles binary ERGMs
(response=NULL
) and with constraints (constraints=
) that that
do not induce dyadic dependence.
ergm.bridge.llr(
object,
response = NULL,
reference = ~Bernoulli,
constraints = ~.,
from,
to,
obs.constraints = ~. - observed,
target.stats = NULL,
basis = ergm.getnetwork(object),
verbose = FALSE,
...,
llronly = FALSE,
control = control.ergm.bridge()
)ergm.bridge.0.llk(
object,
response = NULL,
reference = ~Bernoulli,
coef,
...,
llkonly = TRUE,
control = control.ergm.bridge(),
basis = ergm.getnetwork(object)
)
ergm.bridge.dindstart.llk(
object,
response = NULL,
constraints = ~.,
coef,
obs.constraints = ~. - observed,
target.stats = NULL,
dind = NULL,
coef.dind = NULL,
basis = ergm.getnetwork(object),
...,
llkonly = TRUE,
control = control.ergm.bridge(),
verbose = FALSE
)
If llronly=TRUE
or llkonly=TRUE
, these functions return
the scalar log-likelihood-ratio or the log-likelihood.
Otherwise, they return a list with the following components:
The estimated log-ratio.
The estimated variance of the log-ratio due to MCMC approximation.
A list of lists (1 per attempt) of the estimated
log-ratios for each of the bridge.nsteps
bridges.
A list of lists (1 per attempt) of the estimated
variances of the estimated log-ratios for each of the
bridge.nsteps
bridges.
A list of lists (1 per attempt) with two elements:
theta
, a numeric matrix with bridge.nsteps
rows, with each
row being the respective bridge's parameter configuration; and
weight
, a vector of length bridge.nsteps
containing its
weight.
The gradient vector of the parameter values with respect to position of the bridge.
ergm.bridge.0.llk
result list also includes an llk
element, with the log-likelihood itself (with the reference distribution assumed to have likelihood 0).
ergm.bridge.dindstart.llk
result list also includes
an llk
element, with the log-likelihood itself and an
llk.dind
element, with the log-likelihood of the nearest
dyad-independent model.
A model formula. See ergm()
for details.
Either a character string, a formula, or NULL
(the default), to specify the response attributes and whether the ERGM is binary or valued. Interpreted as follows:
NULL
Model simple presence or absence, via a binary ERGM.
The name of the edge attribute whose value is to be modeled. Type of ERGM will be determined by whether the attribute is logical
(TRUE
/FALSE
) for binary or numeric
for valued.
must be of the form NAME~EXPR|TYPE
(with |
being literal). EXPR
is evaluated in the formula's environment with the network's edge attributes accessible as variables. The optional NAME
specifies the name of the edge attribute into which the results should be stored, with the default being a concise version of EXPR
. Normally, the type of ERGM is determined by whether the result of evaluating EXPR
is logical or numeric, but the optional TYPE
can be used to override by specifying a scalar of the type involved (e.g., TRUE
for binary and 1
for valued).
A one-sided formula specifying the reference
measure (\(h(y)\)) to be used. (Defaults to
~Bernoulli
.)
One-sided formulas specifying
one or more constraints on the support of the distribution of the
networks being simulated and on the observation process
respectively. See the documentation for similar arguments for
ergm()
for more information.
The initial and final parameter vectors.
A vector of sufficient statistics to be used in place of those of the network in the formula.
An optional network
object to
start the Markov chain. If omitted, the default is the
left-hand-side of the object
.
A logical or an integer to control the amount of
progress and diagnostic information to be printed. FALSE
/0
produces minimal output, with higher values producing more
detail. Note that very high values (5+) may significantly slow
down processing.
Further arguments to ergm.bridge.llr
and
simulate.formula.ergm()
.
Logical: If TRUE, only the estiamted log-ratio will
be returned by ergm.bridge.llr
.
A list of control parameters for algorithm tuning,
typically constructed with control.ergm.bridge()
. Its documentation
gives the the list of recognized control parameters and their
meaning. The more generic utility snctrl()
(StatNet ConTRoL)
also provides argument completion for the available control
functions and limited argument name checking.
A vector of coefficients for the configuration of interest.
Whether only the estiamted log-likelihood should be
returned by the ergm.bridge.0.llk
and
ergm.bridge.dindstart.llk
. (Defaults to TRUE.)
A one-sided formula with the dyad-independent model to use as a
starting point. Defaults to the dyad-independent terms found in the formula
object
with an overal density term (edges
) added if not
redundant.
Parameter configuration for the dyad-independent starting
point. Defaults to the MLE of dind
.
Hunter, D. R. and Handcock, M. S. (2006) Inference in curved exponential family models for networks, Journal of Computational and Graphical Statistics.
simulate.formula.ergm()