Review of
Statistical Models for networks
&
New(ish) ERGM 4.x features
Statistical Models for Networks
Simple Random Graphs
Long history of model development for networks.
Here we are just hinting at what is here and why useful.
We often want a way to build models that explain the topology in a network and the interplay of networks and outcomes. The foundation of these models are built on random graph models.
Statistical Models for Networks
For deeper review:
(2009)
(2013)
(2020)
And a dizzying array of new papers...
Network inference differs from many of the inference problems we are used to.
“Would we see the observed graph if the process was random?”
“Is the observed structure/outcome random (conditional on some feature)?”
Common association tests (correlations, regressions, etc.) assume case independence; randomization provides a non-parametric way to evaluate statistical significance, since the standard formulas will not work.
Difficult to sample: There are few well-established ways to partially sample a network; though random graph tools are making that possible.
Simulate social processes. We often want to test measures, models or methods on a large collection of networks with known properties, but have no access to real data.
Statistical Models for Networks
Inference problems
That is we can think of this as either a graph of n nodes and assume all edges have equal probability of being present (G(N,p)) or we can imagine a (set of) graph(s) chosen at random from the set of all graphs with n nodes and m edges (G(N,M)).
Number of unique undirected graph patterns by number of nodes
But, enumeration is usually impossible…so we use construction rules that ensure even probability of all graphs in the space.
* Note a subtle difference here: the G(N,P) model will have random variability in number of edges due to random chance…ignorable in limit of large networks.
Statistical Models for Networks
Simple random graphs
Note a core difficulty: We want to compare our observed network to the class of all graphs (with similar properties), but we have no sampling frame of graphs.
In a Erdos random graph - each dyad has the same probability of being tied –so algorithm is a simple coin-flip on each dyad.
degree will be Poisson distributed, and the nodes with high degree are likely to be at the intuitive center.
Statistical Models for Networks
Simple Random Graphs
�
Simple random graph with 1000 nodes and average degree=2.4 🡪 p=0.0024.
Statistical Models for Networks
Simple Random Graphs
Network connectivity changes rapidly as a function of network volume.
In a Erdos-reyni random network, when the average degree is <1, the network is always disconnected. When it is >2, there is a “giant component” that takes up most of the network.
Note that this is dependent on mean degree, not density, so applies to networks of any size.
Average Degree
Statistical Models for Networks
Simple Random Graphs
Simple random is a very poor model for real life, so not really a fair null. Imagine you know the mixing by category in a network, you can use that to generate a network that has correct probability by mixing category:
We can condition on more features – degree distribution, dyad distribution, mixing…
These can take us a long ways towards getting a reasonable null.
Some are easy:
Statistical Models for Networks
Less Random Graphs
Simple random is a very poor model for real life, so not really a fair null. Imagine you know the mixing by category in a network, you can use that to generate a network that has correct probability by mixing category:
mixprob
wht blk oth
wht .0096 .0016 .0065
blk .0013 .0085 .0045
oth .0054 .0045 .0067
…so generate a random graph with similar mixing probability
Observed
Statistical Models for Networks
Less Random Graphs
Simple random is a very poor model for real life, so not really a fair null. Imagine you know the mixing by category in a network, you can use that to generate a network that has correct probability by mixing category:
mixprob
wht blk oth
wht .0096 .0016 .0065
blk .0013 .0085 .0045
oth .0054 .0045 .0067
…so generate a random graph with similar mixing probability
Random
Statistical Models for Networks
Less Random Graphs
Simple random is a very poor model for real life, so not really a fair null. Imagine you know the mixing by category in a network, you can use that to generate a network that has correct probability by mixing category:
mixprob
wht blk oth
wht .0096 .0016 .0065
blk .0013 .0085 .0045
oth .0054 .0045 .0067
…so generate a random graph with similar mixing probability
This is better than simple random, but still far off. But the logic is there – constrain the sample space to “fit” your network.
Degree distributions don’t match
Statistical Models for Networks
Less Random Graphs
Statistical Models for Networks
Less Random Graphs
mixprob
wht blk oth
wht .0096 .0016 .0065
blk .0013 .0085 .0045
oth .0054 .0045 .0067
If this works ok…
..and this is probably better still…
(some arbitrary similarity buckets)
So let’s get rid of the buckets entirely, go with arbitrary similarity in multi-dimensional space:
x
y
..then this likely works better…
Introduction to Random & Stochastic
Latent Space Models
Introduction to Random & Stochastic
Latent Space Models
Simple latent distance model:
Given a distribution of points in the space defined by z, probability of a tie decreases with their distance in the latent space.
Z can be as many dimensions as you want; typically we try to fit the minimum number of dimensions that provide reasonable fit to the data.
Introduction to Random & Stochastic
Latent Space Models
2d solution for Sampson monistary data
Z = a dimension in some unknown space that, once accounted for makes ties independent.
In addition, we can now embed z within a group structure, which adds probability of ingroup ties.
Introduction to Random & Stochastic
Latent Space Models: with groups
Introduction to Random & Stochastic
Latent Space Models
Example with the Prosper data, with three groups
Introduction to Random & Stochastic
Latent Space Models
Statistical Models for Networks
Modeling the network – build intuition
Oftentimes our goal is to predict the network itself, and we care about the particular network process that might generate the observed network. We can build a model for that!
Goal is to build a probability model for edges in the network (Yij) as a function of features of i (X), features of j(Z) and dyad-specific features (Q).
For now, think of this as a simple logit model:
Observed Network
Intercept only model:
Goal is to build a probability model for edges in the network (Yij) as a function of features of i (X), features of j(Z) and dyad-specific features (Q).
Parameter | Estimate |
Intercept | -1.13 |
| |
All cells equal to density of the network
Observed density is 0.24
Statistical Models for Networks
Modeling the network – build intuition
Add Sender effects
Parameter | Estimate |
Intercept | -2.51 |
Sender Degree | 0.57 |
Sum of the rows will equal sender degree, pij constant across columns
Goal is to build a probability model for edges in the network (Yij) as a function of features of i (X), features of j(Z) and dyad-specific features (Q).
1
1
2
3
5
1
1
2
2
4
Obs
Statistical Models for Networks
Modeling the network – build intuition
Parameter | Estimate |
Intercept | -2.57 |
Target Degree | 0.59 |
Sum of the columns will equal target in-degree, pij constant across rows
or Target effects
Goal is to build a probability model for edges in the network (Yij) as a function of features of i (X), features of j(Z) and dyad-specific features (Q).
1
1
2
4
4
1
1
2
2
4
Obs:
Statistical Models for Networks
Modeling the network – build intuition
Or both sender & target effects
Parameter | Estimate |
Intercept | -4.15 |
Sender Degree | 0.66 |
Target Degree | 0.69 |
Cells with same marginal sums will be the same
or both marginal effects
Goal is to build a probability model for edges in the network (Yij) as a function of features of i (X), features of j(Z) and dyad-specific features (Q).
1
1
2
4
4
1
1
2
2
4
Obs:
1
1
2
3
5
1
1
2
2
4
Obs
Statistical Models for Networks
Modeling the network – build intuition
Full model has dyad-specific covariates
Parameter | Estimate |
Intercept | -9.12 |
Sender Degree | 0.49 |
Target Degree | 0.87 |
Dyad Similarity | 1.86 |
Dyadic similarity sharpens fit within volume-specific dyads and allows us to capture either mixing features (same race, same sex, etc.) or structural features (reciprocity, shared friends, etc.).
Add dyad-specific features
Goal is to build a probability model for edges in the network (Yij) as a function of features of i (X), features of j(Z) and dyad-specific features (Q).
Statistical Models for Networks
Modeling the network – build intuition
Add dyad-specific features
Goal is to build a probability model for edges in the network (Yij) as a function of features of i (X), features of j(Z) and dyad-specific features (Q).
This simple model does OK…
- Bold cells tend to be high-probability
Statistical Models for Networks
Modeling the network – build intuition
Add dyad-specific features
Goal is to build a probability model for edges in the network (Yij) as a function of features of i (X), features of j(Z) and dyad-specific features (Q).
This simple model does OK…
- Bold cells tend to be high-probability
- But some clear misses
Statistical Models for Networks
Modeling the network – build intuition
Add dyad-specific features
Goal is to build a probability model for edges in the network (Yij) as a function of features of i (X), features of j(Z) and dyad-specific features (Q).
This simple model does OK…
- Bold cells tend to be high-probability
- But some clear misses
- and false positives
Statistical Models for Networks
Modeling the network – build intuition
Add dyad-specific features
Goal is to build a probability model for edges in the network (Yij) as a function of features of i (X), features of j(Z) and dyad-specific features (Q).
This simple model does OK…
- Bold cells tend to be high-probability
- But some clear misses
- and false positives
We miss because (a) poor model specification or (b) poor model estimation.
Most of the work in the last few years (decades) has been on fixing these problems and extending the classes of networks we can model
Statistical Models for Networks
Modeling the network – build intuition
A key twist on this intuition “model” above is that while it is estimated on dyads (i.e. our observations in the dataset will be ij dyads), the model is of the entire network – including all the dependencies.
Substantively, the approach is to ask whether the graph in question is an element of the class of all random graphs with the given known elements. For example, all graphs with 5 nodes and 3 edges, or, put probabilistically, the probability of observing the current graph given the conditions.
Statistical Models for Networks
Modeling the network: ERGM
The “p1” model of Holland and Leinhardt is the classic foundation – the basic idea is that you can generate a statistical model of the network by predicting the counts of types of ties (asym, null, sym). They formulate a log-linear model for these counts; but the model is equivalent to a logit model on the dyads:
Note the subscripts! This implies a distinct parameter for every node i and j in the model, plus one for reciprocity.
Statistical Models for Networks
Modeling the network: ERGM
Once you know the basic model format, you can imagine other specifications:
Key is to ensure that the specification doesn’t imply a linear dependency of terms.
Model fit is hard to judge, and for all but the simplest specifications, the se’s are “approximate” ☺
Statistical Models for Networks
Modeling the network: ERGM
Statistical Models for Networks
Modeling the network: ERGM
Analytic & estimation solutions came with some careful thinking on the underlying structure on this model. Start with a re-expression of a general graph model:
So here, we’re just asking the probability of observing our network, given some network statistics.
We need a way to express the probability of the graph that doesn’t depend on that constant. It turns out we can do this by conditioning on a ‘complement’ graph.
First some terms:
After some algebra:
Which ends up being a logit model on z, where z are “change statistics” or counts of features on the full graph when that statistic for the ij dyad is differenced.
Statistical Models for Networks
Modeling the network: ERGM
Statistical Models for Networks
Modeling the network: ERGM
Steps in estimating an ERGM
Question is the likelihood of a network given an observed set of network mixing statistics.
The set of such statistics (“terms”) is large…and growing.
Intuitively, these capture a social process you think is driving network formation.
Statistical Models for Networks
ERGM: Model Specification
Theory
Small-Worlds
Preferential
Attachment
Homophily
Social Balance
Birds of a feather…
Colloquialism
Structural
Signature
Model Term
A friend of a friend...
A friend of an enemy…
Don’t I know your…
or
Kevin Bacon game…
Rich get richer..
First mover advantage
NodeMatch()
Balance, Transitivity,
GWESP
Clustering & k-paths
In-degree, k-stars
Statistical Models for Networks
ERGM: Model Specification
Model Sensitivity
ERGM models are sensitive to model specification, and work best if you have a good intuition about how the interdependencies in a network operate – problem is few of us have that that intuition!
Model Degeneracy: Intuitively, it happens when the network sample space implied by the model does not contain any instances of your model.
Example: Simple model of edges & triangles.
Intuitively, we’d expect from balance a positive coefficient on triangles.
Statistical Models for Networks
ERGM: Model Specification
Statistical Models for Networks
ERGM: Model Specification
Triangles
Intuition from regression: β(triangle) is positive
P(x=x)
Statistical Models for Networks
ERGM: Model Specification
But the generative model really says “more closed triads is good”
So if this is good…
..this is better!
But, we rarely have complete cliques in observed data. So the model will produce a set of statistics that match on average, but combining the right proportion of empty and complete graphs.
Statistical Models for Networks
ERGM: Model Specification
..so what you really want is:
Triangles
P(x=x)
Or that there are marginal decreasing returns to each *additional* closed triad
GWESP
Note this is one example of why model specification matters. ERGMs are less forgiving of model miss-specification than your standard OLS/GLM. Feature or bug…depends on perspective.
New Specifications for ERGM
ERGMs have been generalized in many ways:
New specifications & Tools
See Scott Duxbury’s great new book & his presentation later today.
Statistical Models for Networks
ERGM: Generalizations: Dynamics
Statistical Models for Networks
ERGM: Generalized Syntax changes
Key new feature in the 4.x version of ERGM is the ability to dynamically parameterize models on-the-fly in the model specification step.
Statistical Models for Networks
ERGM: Generalized Syntax changes
Key new feature in the 4.x version of ERGM is the ability to dynamically parameterize models on-the-fly in the model specification step.
Here are two ways to fit a square term to the nodecov() function on grade.
Statistical Models for Networks
ERGM: Generalized Syntax changes
Key new feature in the 4.x version of ERGM is the ability to dynamically parameterize models on-the-fly in the model specification step.
m3<-ergm(net~edges+
nodefactor((~Grade) %>% COLLAPSE_SMALLEST(2,99)))
summary(m3)
This is both 11 and 12
Statistical Models for Networks
ERGM: Generalized Syntax changes
Key new feature in the 4.x version of ERGM is the ability to dynamically parameterize models on-the-fly in the model specification step.
You can also:
Statistical Models for Networks
ERGM: Generalized Syntax changes
Key new feature in the 4.x version of ERGM is the ability to dynamically parameterize models on-the-fly in the model specification step.
Statistical Models for Networks
ERGM: Generalized Syntax changes
Key new feature in the 4.x version of ERGM is the ability to dynamically parameterize models on-the-fly in the model specification step.
Statistical Models for Networks
ERGM: Generalized Syntax changes
Just like you can subset the graph, you can constrain the sample space to which the graph is generalized.
-- simple ones are common (degree distribution, etc.)
But now can add constraints based on dyad and attribute features as well, which is particularly useful when there are “structural zeros” in your data that cannot change.
Statistical Models for Networks
ERGM: Generalized Syntax changes
Key new feature in the 4.x version of ERGM is the ability to dynamically parameterize models on-the-fly in the model specification step.
Way to get conditional effect of mutuality by grade difference
Statistical Models for Networks
ERGM: Generalized Syntax changes
Interaction effects!
Statistical Models for Networks
ERGM: Generalized Syntax changes
Interaction effects!
Currently limited to dyad-independent model terms
Statnet treats the network as binary with a valued attribute. So the edge list defines a link between nodes i&j, then an edge attribute assigns its value. These need to be explicitly referenced as the response variable!
Statistical Models for Networks
ERGM: Generalizations: Valued ties
Valued ties based on attributes
Base edges in the network object
Statistical Models for Networks
ERGM: Generalizations: Valued ties
Statistical Models for Networks
ERGM: Generalizations: Valued ties
Terms:
Dyad independent terms need to be written as “form=sum”
Attribute to fit
One parameter per group type
form for valued ties
(“nonzero” is alternate)
Reference distribution
Edge attribute containing values
Intercept is “sum” not “edges”
Reference distribution parameter – trials
Statistical Models for Networks
ERGM: Generalizations: Valued ties
Strong evidence for baseline homophily on group
Statistical Models for Networks
ERGM: Generalizations: Valued ties
Count data come w. their own issues, particularly zero-inflation & overdispersion.
�Zero Inflation:
Sig & neg implies more zero’s than expected
Overdispersion is explained in the vignette
Statistical Models for Networks
ERGM: Generalizations: Valued ties
Terms unique to valued ties:
Mutuality. Need to think about what ‘reciprocation’ in a valued sense means. They offer a handful of options with mutual(form=):
"product" Sum of products of reciprocating edge values
"geometric" Sum of geometric mean of reciprocating edge values:
"min" Minimum of reciprocating edge values"nabsdiff" Absolute difference of reciprocating edge values:
cyclicalweights
Or nodeicovar, nodeocovar
Statistical Models for Networks
ERGM: Generalizations: Valued ties
Statistical Models for Networks
ERGM: Generalizations: Valued ties
Terms unique to valued ties:
Triad terms: transitiveweights () and cyclicweights() have the same form:
transitiveweights(v2-path, vcombine, vaffect)
i
k
j
i
k
j
Transitive: creates directed triple
cyclic: creates closed cycle
Function | | Option | Meaning |
v2-path | What is strength of 2-path yik, ykj | Min=smallest of the 2 values, conservative. Geomean: combined value – more sensitive | |
vcombine | Given a set of 2-paths i🡪j🡪k, how to combine? | Max= use the strongest, conservative Sum:=use the sum, more sensitive | |
vaffect | Given combined strength, how related to yij? | Min= smallest, conservative Geomean= average. | |
Statistical Models for Networks
ERGM: Generalizations: Valued ties
Statistical Models for Networks
ERGM: Generalizations: Valued ties using latentnet
A similar set of distribution & response constraints are available for latentnet
Allows for random sender & receiver effects as well and many/most of the attribute nodematch sorts of terms you might want.
Statistical Models for Networks
ERGM: Generalizations: ergm.rank
Rank data involve one actor comparing all others to each other, or observations of interactions (common in animal networks).
Constraints on the distribution of ranks change the underlying sufficient statistics and sample support space, so terms are unique.
Characterized in terms of “promoting” alters rather than “change” in ties.
Terms:
Statistical Models for Networks
ERGM: Generalizations: ergm.rank
Example of ergm.rank on 15 successive weeks of Newcomb data
Statistical Models for Networks
ERGM Generalizations: multiple networks
Ergm.multi allows the estimation of models across multiple networks simultaneously.
This allows one to effectively fit multi-level models to adjust within-network parameters for between-network characteristics, which is particularly important for size comparisons.
Statistical Models for Networks
ERGM Generalizations: multiple networks
Construct a multi-network object by putting them together:
multvill<-Networks(list(v1,v2,v4,v5,v7))
multvill
7 village networks
Statistical Models for Networks
ERGM Generalizations: multiple networks
Specify your mode simultaneously to all networks in the object and, optionally, allow the parameters to vary by features of the network.
#base no net level 2 vars
m0<-ergm(multvill ~ N(~edges + mutual) + N(~nodematch("SchdCaste",diff=TRUE)), estimate = "MPLE")
summary(m0)
(note I split the formula into two N() parts…not needed for this model but going to use it later)
Not recommended!
Statistical Models for Networks
ERGM Generalizations: multiple networks
Specify your mode simultaneously to all networks in the object and, optionally, allow the parameters to vary by features of the network.
#add log size
m1<-ergm(multvill ~ N(~edges + mutual, lm=~log(n)) + N(~nodematch("SchdCaste",diff=TRUE)), estimate = "MLE")
summary(m1)
Base coeff:
..modified by
size
Statistical Models for Networks
ERGM Generalizations: multiple networks
Specify your mode simultaneously to all networks in the object and, optionally, allow the parameters to vary by features of the network. Features can differ by part of the model
Base coeff:
..modified by
size
..modified by
Prop of families w small kids
ERGM Generalizations & New functionality
Scope
🡪 As near as I can tell…this really means that we are looking at multiplex networks, and I don’t see any bits on between-layer edge terms.
ERGM Generalizations & New functionality
Data manipulation
Trickiest bit we have found is that you need to have a “wide” edgelist format for the edge attributes
ERGM Generalizations & New functionality
Data manipulation
ERGM Generalizations & New functionality
Syntax bits
They have developed a really slick way of telling the model what part of the network to use & how to treat combinations of layers. This is the “layer logic” syntax.
Conjunction: (A ∧ B) – relation exists if it exists in both
Disjunction: (A ∨ B) – relation exists if it exists in either
Exclusive disjunction A ⊕ B: -- relation in a or b but NOT both
These operators allow one to combine networks in very flexible ways
ERGM Generalizations & New functionality
Model terms:
Conway–Maxwell–Binomial Model
Not recommended!
ERGM Generalizations & New functionality
ERGM Generalizations & New functionality
Conditional density by layer pairs
ERGM Generalizations & New functionality
Introduction to Random & Stochastic
Generalizations
AMEN: Additive & multiplicative effects models (Hoff & Volfovsky)
Basic social relations model
Dyad
effects
Row
effects
Column
effects
Row
error
Col
error
dyad
error
More general frame:
Latent
multiplicative
covariance
Model is very general; can deal with y on any scale (binary to real values), fits latent space & observed covariates.
Computationally intensive…
Introduction to Random & Stochastic
Generalizations
Comparing multiple networks: QAP
The substantive question is how one set of relations (or dyadic attributes) relates to another.
For example:
If we observe a correlation, is it statistically significant/unexpected by chance?
Statistical Models for Networks
Randomization – Net as independent variable
Assessing the correlation is straight forward, as we simply correlate each corresponding cell of the two matrices:
Marriage
1 ACCIAIUOL 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
2 ALBIZZI 0 0 0 0 0 1 1 0 1 0 0 0 0 0 0 0
3 BARBADORI 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0
4 BISCHERI 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0
5 CASTELLAN 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0
6 GINORI 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
7 GUADAGNI 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0 1
8 LAMBERTES 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0
9 MEDICI 1 1 1 0 0 0 0 0 0 0 0 0 1 1 0 1
10 PAZZI 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
11 PERUZZI 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0
12 PUCCI 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
13 RIDOLFI 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1
14 SALVIATI 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0
15 STROZZI 0 0 0 1 1 0 0 0 0 0 1 0 1 0 0 0
16 TORNABUON 0 0 0 0 0 0 1 0 1 0 0 0 1 0 0 0
Business
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 1 1 0 0 1 0 1 0 0 0 0 0
4 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0
5 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0
6 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0
7 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0
8 0 0 0 1 1 0 1 0 0 0 1 0 0 0 0 0
9 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 1
10 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
11 0 0 1 1 1 0 0 1 0 0 0 0 0 0 0 0
12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
14 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
16 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
Dyads:
1 2 0 0
1 3 0 0
1 4 0 0
1 5 0 0
1 6 0 0
1 7 0 0
1 8 0 0
1 9 1 0
1 10 0 0
1 11 0 0
1 12 0 0
1 13 0 0
1 14 0 0
1 15 0 0
1 16 0 0
2 1 0 0
2 3 0 0
2 4 0 0
2 5 0 0
2 6 1 0
2 7 1 0
2 8 0 0
2 9 1 0
2 10 0 0
2 11 0 0
2 12 0 0
2 13 0 0
2 14 0 0
2 15 0 0
2 16 0 0
Correlation:
1 0.3718679
0.3718679 1
Statistical Models for Networks
Randomization – Net as independent variable
But is the observed value statistically significant?
Can’t use standard inference, since the assumptions are violated. Instead, we use a permutation approach.
Essentially, we are asking whether the observed correlation is large (small) compared to that which we would get if the assignment of variables to nodes were random, but the interdependencies within variables were maintained.
Do this by randomly sorting the rows and columns of the matrix, then re-estimating the correlation.
Statistical Models for Networks
Randomization – Net as independent variable
Procedure:
a) randomly sort one of the matrices
b) recalculate the correlation
c) store the outcome
3. compare the observed correlation to the distribution of correlations created by the random permutations.
Statistical Models for Networks
Randomization – Net as independent variable
Statistical Models for Networks
Randomization – Net as independent variable
Statistical Models for Networks
Randomization – Net as independent variable
Correlation is simplest possible association metric, can extend these permutation models to other association metrics – including multiple regression, logits, etc.
Runtime can be slow for complicated models, but provides a fair baseline test if autocorrelation is your main concern.
There is some concern that permutation-based tests are generous to the investigator; as “randomly sorted” is not a particularly realistic null, but constrained permutation tests perform better and can outperform parametric models under some circumstances.
UCI-NET (still, IMHO) has some of the most extensive network permutation tools available…
Formal Properties of the model
The model is directly related to spatial econometric models:
If we allow the model to run over t and W remains constant:
Where the two coefficients (α and β) are estimated directly (See Doreian, 1982, SMR).
This is the linear network auto correlation model, best bet with cross-sectional data (and randomization trick to estimate se)
Network Diffusion & Peer Influence
Peer Influence Dynamics
There are two common ways to test for peer associations through networks.
The first estimates the parameters (α and β) of the network autocorrelation model directly, the second transforms the network into a dyadic model, predicting similarity among actors.
Peer influence model:
Network Diffusion & Peer Influence
Peer Influence Dynamics
This is the linear network autocorrelation model, and as specified, the model makes strong assumptions about equilibrium opinion and static relations.
🡪 Some variants on this also expand e to include alternative autocorrelation in the error structure.
There are two common ways to test for peer associations through networks.
The first estimates the parameters (α and β) of the network autocorrelation model directly, the second transforms the network into a dyadic model, predicting similarity among actors.
Peer influence model:
Network Diffusion & Peer Influence
Peer Influence Dynamics
Note that since WY∞ is a a simple vector -- weighted mean of friends Y -- which can be constructed and added to your GLM model. That is, multiple Y by a W matrix, and run the regression with WY as a new variable, and the regression coefficient is an estimate of α. This is what Doriean calls the QAD estimate of peer influence.
It’s wrong, a will be biased, but it’s often not terribly wrong if most obvious selection factors are built int0 X
An obvious problem with this specification is that cases are, by definition, not independent, hence “network autocorrelation” terminology.
In practice, the QAD approach (perhaps combined with a GLS estimator) results in empirical estimates that are “virtually indistinguishable” from MLE (Doreian et al, 1984)
The proper way to estimate the peer equation is to use maximum likelihood estimates, and Doreian gives the formulas for this in his paper, and Carter Butts has implemented in in R with the LNAM procedure.
An alternative is to use non-parametric approaches, such as the Quadratic Assignment Procedure, to estimate the effects.
Network Diffusion & Peer Influence
Peer Influence Dynamics
Peer influence through Dyad Models
The model is now expressed at the dyad level as:
Where Y is a matrix of similarities, A is an adjacency matrix, and Xk is a matrix of similarities on attributes
Advantages include ease of specifying relation-specific similarity functions. You can add different features of a relation by adjusting/adding “Aij” variables.
Disadvantage is that now in addition to network autocorrelation, you have repeated cases (on both sides).
But these can be dealt with using non-parametric modeling & testing techniques (QAP, for example). (which we will go over this afternoon)
Network Diffusion & Peer Influence
Peer Influence Dynamics