The ergm.mple
function finds a maximizer to the psuedolikelihood function (MPLE). It is the default method for finding the ERGM starting coefficient values. It is normally called internally the ergm process and not directly by the user. Generally ergmMPLE
would be called by users instead.
ergm.pl
is an even more internal workhorse function that prepares many of the components needed by ergm.mple
for the regression rountines that are used to find the MPLE estimated ergm. It should not be called directly by the user.
ergm.mple(Clist, Clist.miss, m, init = NULL, MPLEtype = "glm", family = "binomial",
maxMPLEsamplesize = 1e+06, save.glm = TRUE, theta1 = NULL, conddeg = NULL,
control = NULL, MHproposal = NULL, verbose = FALSE, ...)ergm.pl(Clist, Clist.miss, m, theta.offset=NULL,
maxMPLEsamplesize=1e+6,
conddeg=NULL, control, MHproposal,
verbose=FALSE)
a list of parameters used for fitting and returned by ergm.Cprepare
the corresponding 'Clist' for the network of missing
edges returned by ergm.design
the model, as returned by ergm.getmodel
a vector a vector of initial theta coefficients
the method for MPL estimation as "penalized", "glm" or "logitreg"; default="glm"
the family to use in the R native routine glm
; only
applicable if "glm" is the 'MPLEtype'; default="binomial"
the sample size to use for endogenous sampling in the psuedo-likelihood computation; default=1e6
whether the mple fit and the null mple fit should be returned (T or F); if false, NULL is returned for both; default==TRUE
the independence theta; if specified and non-NULL, this is ignored except to return its value in the returned ergm; default=NULL, in which case 'theta1' is computed
an indicator of whether the MPLE should be conditional on degree; non-NULL values indicate yes, NULL no; default=NULL.
a list of MCMC related parameters; recognized components include: samplesize : the number of networks to sample Clist.miss : see 'Clist.miss' above; some of the code uses this Clist.miss,
an MHproposal object, as returned by MHproposal
whether this and the C routines should be verbose (T or F); default=FALSE
a logical vector specifying which of the model coefficients are offset, i.e. fixed
additional parameters passed from within; all will be ignored
ergm.mple
returns an ergm object as a list containing several items; for details see the return list in the ergm
ergm.pl
returns a list containing:
xmat : the compressed and possibly sampled matrix of change statistics
zy : the corresponding vector of responses, i.e. tie values
foffset : ??
wend : the vector of weights for 'xmat' and 'zy'
numobs : the number of dyads
xmat.full: the 'xmat' before sampling; if no sampling is needed, this is NULL
zy.full : the 'zy' before sampling; if no sampling is needed, this is NULL
foffset.full : ??
theta.offset : a numeric vector whose ith entry tells whether the the ith curved coefficient?? was offset/fixed; -Inf implies the coefficient was fixed, 0 otherwise; if the model hasn't any curved terms, the first entry of this vector is one of log(Clist$nedges/(Clist$ndyads-Clist$nedges)) log(1/(Clist$ndyads-1)) depending on 'Clist$nedges'
maxMPLEsamplesize: the 'maxMPLEsamplesize' inputted to ergm.pl
According to Hunter et al. (2008):
"The maximizer of the pseudolikelihood may thus easily be found (at least in principle) by using logistic regression as a computational device."
In order for this to work, the predictors of the logistic regression model
must be calculated. These are the change statistics as described
in Section 3.2 of Hunter et al. (2008), put into matrix form
so that each pair of nodes is one row whose values are the vector of change
statistics for that node pair. The ergm.pl function computes these change
statistics and the ergm.mple function implements the logistic regression using
R's glm function. Generally, neither ergm.mple nor ergm.pl should be called
by users if the logistic regression output is desired; instead, use the ergmMPLE
function.
In the case where the ERGM is a dyadic independence model, the MPLE is the same as the MLE. However, in general this is not the case and, as van Duijn et al. (2009) warn, the statistical properties of MPLEs in general are somewhat mysterious.
MPLE values are used even in the case of dyadic dependence models as starting points for the MCMC algorithm.
Hunter DR, Handcock MS, Butts CT, Goodreau SM, Morris and Martina (2008). "ergm: A Package to Fit, Simulate and Diagnose Exponential-Family Models for Networks." _Journal of Statistical Software_, *24*(3), pp. 1-29. http://www.jstatsoft.org/article/view/v024i03
van Duijn MAJ, Gile K, Handcock MS (2009). "Comparison of Maximum Pseudo Likelihood and Maximum Likelihood Estimation of Exponential Family Random Graph Models." _Social Networks_, *31*, pp. 52-62.