From Distance Maps to Changing Relationship Profiles
Day 9 represented unobserved relationship patterns in two ways:
Additive Effects
The SRM asked whether some actors repeatedly appear across many relationships and whether the two directions of a pair remain connected.
Discrete Roles
Blockmodels asked whether partner lists can be summarized by a few recurring patterns.
Today asks whether one particular pairing can have its own history after accounting for actors that appear across many relationships.
Syrian Armed Organizations
Was tactical cooperation scattered across unrelated pairs, or concentrated among organizations with overlapping sets of partners?
Changing State-Pair Relationships
When high-volume conflictual relationships change, does a state become more involved across many relationships, or do particular directed relationships change in their own ways?
The model comes after the relationship and the question are clear.
The same latent term can do very different jobs:
A useful map does not automatically reveal ideology, rivalry, or another named trait. The model finds a pattern; we still have to justify its meaning.
| Model | Question | What It Lets Us Say |
|---|---|---|
| SRM | Are some actors involved across many relationships, regardless of partner? | Broad involvement can change even when we do not know which bilateral relationship changed |
| Distance | Is cooperation concentrated among organizations with overlapping partner lists? | Organizations with similar overall cooperation patterns are placed near one another |
| Factor | Can actors play similar or complementary parts without belonging to one group? | Actors can engage the same kinds of partners without engaging one another |
| AME | Is change spread across all of a state’s relationships or concentrated in particular directed pairs? | Broad state involvement and the history of a particular ordered pair are separated |
Pairs placed closer together in the fitted latent space have a higher probability of a tie.
\[ \operatorname{logit}\Pr(Y_{ij}=1) =\alpha+x_{ij}^{\mathsf T}\beta-\lVert z_i-z_j\rVert \]
The model runs a familiar idea backward: ties go in, and positions that make those ties plausible come out.
Baseline
\(\alpha\)
Overall tendency for pairs to connect
Measured Features
\(x_{ij}^{\mathsf T}\beta\)
Observed pair or actor information
Hidden Distance
\(\lVert z_i-z_j\rVert\)
How far apart the fitted positions are
Tie Probability
\(\operatorname{logit}^{-1}(\eta_{ij})\)
The result on a zero-to-one scale
\[ p(Y\mid Z,\alpha,\beta) =\prod_{i<j}p_{ij}^{y_{ij}}(1-p_{ij})^{1-y_{ij}} \]
One tie does not place two actors. Their complete patterns of ties and non-ties determine where the model can put them.
We observe who relates to whom. The estimator searches for coefficients and actor positions that make the complete pattern plausible.
The posterior says what is being learned. MCMC says how the computer explores it.
\[ p(\alpha,\beta,Z,\Sigma\mid Y,X) \propto \underbrace{p(Y\mid X,\alpha,\beta,Z)}_{\text{network fit}} \times \underbrace{p(\alpha,\beta,Z,\Sigma)}_{\text{prior structure}} \]
The posterior contains many plausible maps and coefficient values, weighted by how well they explain the network and how plausible they are under the prior.
Imagine reconstructing a seating chart from observed relationships:
A posterior draw is one plausible explanation of the same observed network. It is not a new network or a new set of actors.
What They Can Tell Us
What They Cannot Tell Us
What It Buys
If actor \(i\) is near both \(j\) and \(k\), then \(j\) and \(k\) cannot be arbitrarily far apart. Clustered ties and triangles become more likely.
What It Imposes
One map ties similar relationship profiles to direct proximity. That can be awkward when actors play the same role but do not connect to one another.
The geometry raises the probability of clustered ties. It does not make closure deterministic.
Organizations
31
Syrian armed organizations
Period
2012 to 2015
July through June
Cooperative Pairs
86
Pairs with at least one joint operation
Density
18.5%
Share of possible undirected pairs
Gade et al. (2019) provide the cooperation data.
The fitted map summarizes this coded network. It does not recover every changing relationship during the Syrian conflict.
Two dimensions make the result readable. They are a modeling choice, not a fact the data discovered for us.
The focused check follows two quantities that do not change when the map rotates:
In the matching seeded run, both effective sample sizes exceed 1,500.
Use coefficient traces together with fitted distances and probabilities. Those are the quantities we eventually interpret.
A Defensible Reading
Organizations placed near one another recorded joint operations with many of the same partners, so the model gives pairs in that part of the map a higher chance of a tie.
An Overreach
The first axis is ideology, the second is power, or a nearby pair necessarily formed a stable coalition.
One joint operation does not determine two positions. Every organization’s full pattern of ties contributes to the map.
Independent Baseline
18.5%
Expected weak transitivity near network density
Distance Simulations
28.7%
Average across replicated networks
Observed Network
35.7%
Weak transitivity in the Gade projection
Predictive Interval
17.4% to 39.0%
Variation across replications
The fitted geometry reproduces much of the clustering. It does not show that one joint operation caused another tie to close.
Al-Nusrah Front and Ahrar al-Sham Islamic Movement sit in the same tightly connected part of the map. They recorded an operation with one another, and each also recorded operations with 18 of the same other organizations. The map reproduces much of the observed clustering, but it mainly reinforces Day 9’s tactical-core finding rather than supplying a new explanation. We use it to understand the distance model and then move on.
What we would report:
Suppose two groups mostly connect across groups:
The Relationship Pattern
Members of the same group have similar partner profiles because they connect to the other group.
The Distance Tension
Similar profiles encourage similar positions, but similar positions also raise their direct tie probability.
The problem is not that distance can never approximate the pattern. The problem is that a small Euclidean map represents it inefficiently.
Ask two questions in order:
When a longer, well-mixed run reproduces the same miss, the limitation belongs to the model’s geometry rather than the chain length.
Before seeing the network, we chose:
The plot is the fitted geometry conditional on those choices, not the one true map hidden inside the network.
Dimension, geometry, and curvature require an argument and sensitivity checks (Lubold, Chandrasekhar, and McCormick 2023).
Direct Proximity
Two actors are similar because they are likely to connect to one another.
This is the natural distance-model story.
Similar Relationship Profiles
Two actors are similar because they connect to the same kinds of partners, even if they do not connect to each other.
This is stochastic equivalence.
For an ordered relationship from \(i\) to \(j\):
\[ g\!\left(E[Y_{ij}\mid\cdot]\right) =\eta_{ij} =\beta_0+\mathbf{x}_{ij}^{\mathsf T}\boldsymbol{\beta}. \]
What Is Observed
\(Y_{ij}\) and the measured pair characteristics \(\mathbf{x}_{ij}\)
What Regression Estimates
The baseline and coefficients that move the relationship score up or down
The factor model keeps this outcome, link function, and linear predictor. It adds structure to the part ordinary regression leaves unexplained.
\[ \eta_{ij} =\beta_0+\mathbf{x}_{ij}^{\mathsf T}\boldsymbol{\beta} +a_i+b_j \]
Source Effect \(a_i\)
Moves every relationship beginning with actor \(i\)
Target Effect \(b_j\)
Moves every relationship aimed at actor \(j\)
These terms explain why a row or column is broadly high. They cannot explain why one particular source-target combination is high and another involving the same source is low.
If source capability \(c_i\) and target vulnerability \(r_j\) are measured, and their main effects are already in \(\mathbf{x}_{ij}\), an ordinary regression can include
\[ \delta\,c_i r_j. \]
The rank-one factor model uses the same multiplication:
\[ \delta\,u_i v_j, \]
but \(u_i\) and \(v_j\) are not measured variables. The model learns them from repeated source-target patterns in the relationship matrix.
Observed interaction: multiply two known characteristics. Latent interaction: estimate the two characteristics and their product together with the rest of the model.
With one latent dimension and \(\delta=1\):
| Target C: \(v_C=1.5\) | Target D: \(v_D=-2\) | |
|---|---|---|
| Source A: \(u_A=2\) | \(2(1.5)=3\) | \(2(-2)=-4\) |
| Source B: \(u_B=-1\) | \(-1(1.5)=-1.5\) | \(-1(-2)=2\) |
Actor A does not have one universally positive factor effect. Its contribution is positive with C and negative with D. This is pair-specific fit, not broad source activity.
\[ \eta_{ij} =\beta_0+\mathbf{x}_{ij}^{\mathsf T}\boldsymbol{\beta}+a_i+b_j +\underbrace{\sum_{r=1}^{R}\delta_r u_{ir}v_{jr}}_{\text{\(R\) latent interactions}} \]
Equivalently,
\[ \eta_{ij} =\beta_0+\mathbf{x}_{ij}^{\mathsf T}\boldsymbol{\beta}+a_i+b_j +\mathbf{u}_i^{\mathsf T}D\mathbf{v}_j. \]
If \(U\) and \(V\) were known, their products could enter a regression like ordinary interaction predictors. The hard part is estimating those unknown profiles jointly with everything else.
| Viewer | Star Wars | Alien | Blade Runner | Casablanca | Pretty Woman |
|---|---|---|---|---|---|
| Mike | 1 | 1 | 1 | 0 | 0 |
| Cindy | 3 | 3 | 3 | 0 | 0 |
| Hyerin | 4 | 4 | 4 | 0 | 0 |
| Emily | 5 | 5 | 5 | 0 | 0 |
| Cassy | 0 | 2 | 0 | 4 | 4 |
| Juan | 0 | 0 | 0 | 5 | 5 |
| Max | 0 | 1 | 0 | 2 | 2 |
Instead of explaining 35 scores separately, can a few repeated viewer and movie profiles reconstruct almost all of the matrix?
Zero is a recorded score in this toy example. It is not a missing value.
\[ M=UDV^{\mathsf T} \]
Viewer Profiles
Rows of \(U\)
How each viewer loads on the shared directions
Movie Profiles
Rows of \(V\)
How each movie loads on the same directions
Pattern Strength
Diagonal of \(D\)
How much squared matrix magnitude each direction reconstructs
What We Keep
Two repeated row-column directions rather than 35 unrelated cell explanations
What We Recover
99.3% of the squared magnitude of the uncentered matrix, with an RMSE of 0.227
This is squared matrix magnitude, not automatically “variance explained,” because the matrix was not centered. It also does not prove that two psychological traits generated the ratings.
Split each singular value across the two sides:
\[ P=U_RD_R^{1/2},\qquad Q=V_RD_R^{1/2},\qquad \widehat m_{ij}=\mathbf p_i^{\mathsf T}\mathbf q_j. \]
For Emily and Star Wars:
\[ \widehat m_{\text{Emily, Star Wars}} =p_{\text{Emily},1}q_{\text{Star Wars},1} +p_{\text{Emily},2}q_{\text{Star Wars},2}. \]
The same viewer coordinate can raise one fitted score and do little for another because it is always multiplied by the movie’s coordinate. That pair-specific product is what separate viewer and movie intercepts cannot supply.
In a directed network, the same actors appear on both sides of the matrix, but the jobs differ:
\[ z_{ij}\approx u_i^{\mathsf T}v_j. \]
Source Profile \(u_i\)
Which targets repeatedly appear in actor \(i\)’s outgoing relationship pattern
Target Profile \(v_j\)
Which sources repeatedly appear in actor \(j\)’s incoming relationship pattern
The product says whether this particular source profile fits this particular target profile. Additive effects still handle broad source activity and target exposure.
| Truncated SVD | Latent Factor or AME Model |
|---|---|
| Minimizes squared reconstruction error | Fits a likelihood or posterior for the outcome |
| Treats every supplied cell as observed | Defines missing dyads, structural zeros, and the risk set |
| Has no predictors or actor effects | Can include predictors, additive actor effects, and reciprocity |
| Produces a point decomposition | Can quantify uncertainty |
We do not run svd() on an adjacency matrix and call it AME. SVD shows why low-rank products compress repeated row-column patterns. The probability model estimates that surface together with everything else.
For a directed relationship:
\[ \gamma(u_i,v_j)=u_i^{\mathsf T}v_j \]
Multiply matching coordinates and add them:
Distance says “near or far.” A factor surface can also represent compatible opposites and recurring source-target roles.
The model learns these pieces together:
\[ p(\beta,a,b,U,V,\Sigma\mid Y,X) \propto p(Y\mid X,\beta,a,b,U,V,\Sigma)\,p(\beta,a,b,U,V,\Sigma) \]
For a probit AME model, the sampler first represents each zero or one with a latent continuous relationship score. Given those scores, it cycles through regression, actor-effect, factor, and variance updates.
The target is a joint posterior for all model pieces. SVD explains the low-rank scaffold, but one SVD of the adjacency matrix is not an AME estimate.
For a symmetric eigenmodel:
\[ \gamma(u_i,u_j)=u_i^{\mathsf T}\Lambda u_j \]
| Sign of \(\lambda_r\) | What That Component Represents |
|---|---|
| Positive | Similar scores receive a positive contribution, an assortative pattern |
| Negative | Opposite scores receive a positive contribution, a disassortative pattern |
| Mixed signs | Both relationship patterns are present in the fitted surface |
The sign describes a fitted component. It does not identify the social mechanism that generated the network.
Distance-Generated Network
Both fitted weights are positive. The factor model sees the assortative pattern planted by proximity.
Across-Group Network
The dominant fitted weight is large and negative. The factor model captures the complementary role pattern that the two-dimensional distance map missed.
This is an illustration of representational flexibility, not proof that one model wins on every dataset.
| Use This | When This Is the Defensible Starting Point |
|---|---|
| Distance model | Proximity is meaningful, a parsimonious map matters, and role mixing is not central |
| Factor or eigenmodel | Similar and complementary roles may both shape ties |
| Full AME | Measured predictors, broad actor tendencies, reciprocity, and pair profiles all matter |
Check prediction, posterior reproduction, stability, and interpretability. A more flexible model has to earn the extra complexity.
Day 9 used the ICEWS panel to ask which states appeared in many above-threshold relationships as the coded source or target.
Day 10 asks what the additive scores could not:
When a high-volume conflictual relationship changes, is the change spread across many partners or concentrated in a particular directed state pair?
The outcome equals one when an ordered state pair has more than 20 coded material-conflict events in a year. It measures high coded event volume, not conflict initiation or severity.
Panel
18 states
13 annual directed networks
Ordered Pair-Years
3,978
No self-pairs
Threshold Crossings
244
Move from zero to one
Threshold Exits
218
Move from one to zero
A dynamic model needs observed change, not merely time-varying parameters. The 462 status changes give it something to learn.
\[ Y^*_{ijt} =\alpha_t+\mathbf{x}_{ijt}^{\mathsf T}\boldsymbol\beta +a_{it}+b_{jt} +\mathbf{u}_{it}^{\mathsf T}\mathbf{v}_{jt} +e_{ijt}. \]
| Piece | Job |
|---|---|
| \(\alpha_t\) | Let the whole network become busier or quieter |
| \(\mathbf{x}_{ijt}^{\mathsf T}\boldsymbol\beta\) | Account for Polity gap and same region |
| \(a_{it}\) | Track whether events are coded from state \(i\) across many partners |
| \(b_{jt}\) | Track whether events are coded toward state \(j\) across many partners |
| \(\mathbf{u}_{it}^{\mathsf T}\mathbf{v}_{jt}\) | Track whether this exact directed pair is unusually likely after those broad patterns |
Additive Paths
\(a_{it}\) and \(b_{jt}\) answer whether ICEWS records events from or toward a state across many different partners in a year.
Multiplicative Paths
\(\mathbf{u}_{it}^{\mathsf T}\mathbf{v}_{jt}\) asks whether one exact directed state pair is more or less likely to cross the threshold than those broad patterns imply.
A state can appear with many partners without every particular relationship being equally likely. The two directions of one pair can also follow different paths.
netify Keeps the Panel Alignednetify() receives the ordered state-pair-year table and keeps the design choices visible:
source and target preserve direction.year defines the 13 network slices.symmetric = FALSE keeps Iran-Syria separate from Syria-Iran.missing_to_zero = FALSE prevents an unobserved dyad from becoming a recorded zero.to_lame() returns 13 aligned outcome matrices and 13 aligned predictor arrays.
The estimator has two connected jobs:
The baseline, measured predictors, broad actor paths, and pair-specific factor surface divide the first job. Smoothing penalties handle the second.
The model can let a state become active across many partners without treating every particular relationship as equally unusual.
At each binary-response update, the estimator approximately minimizes
\[ \sum_{t,i\ne j}w_{ijt}(z_{ijt}-\widehat\eta_{ijt})^2 +\lambda_{ab}\,\text{actor jumps} +\lambda_{uv}\,\text{factor jumps} +\lambda_\alpha\,\text{intercept jumps}. \]
This is a penalized point estimate, not an MCMC sample or a direct one-step maximization of the exact binary likelihood. The smoothing settings are fixed tuning values, and rank greater than zero creates possible local solutions.
lame() CallAll four validation starts converged to essentially the same fitted probability surface. The 100 bootstrap refits also completed successfully.
Each line pools across all partners. It does not identify which relationship changed or why it changed.
The axes can rotate and reflect. Use this as an overview, then interpret a named pair’s inner product and fitted probability.
| Rank | ROC AUC | Precision-Recall AUC | Brier |
|---|---|---|---|
| 0 | 0.825 | 0.676 | 0.118 |
| 1 | 0.837 | 0.694 | 0.113 |
| 2 | 0.837 | 0.695 | 0.113 |
| 3 | 0.833 | 0.686 | 0.116 |
| 4 | 0.839 | 0.687 | 0.115 |
The test hides both directions and all 13 years for each unordered pair.
Ranks one and two are tied in held-pair prediction. We keep rank two because it improves temporal reproduction and gives a readable two-dimensional profile display. Higher rank does not earn a consistent gain.
Iran toward Syria rises from about 2% in 2002 to 92% in 2012. Syria toward Iran rises earlier, reaching about 69% in 2011. The model preserves that difference in timing.
| Check | Rank 0 | Rank 2 | Years |
|---|---|---|---|
| Density | 13 | 13 | 13 |
| Source-rate variation | 13 | 13 | 13 |
| Target-rate variation | 13 | 13 | 13 |
| Reciprocity | 5 | 6 | 13 |
| Cyclic triadic dependence | 11 | 12 | 13 |
| Transitive triadic dependence | 10 | 12 | 13 |
Rank two captures annual volume, uneven state involvement, and most triadic structure. Reciprocity remains the main annual miss.
Rank zero covers 2 of 12 observed transitions. Rank two covers 8 of 12. The improvement is large, but four transitions still miss.
The estimated chance for Iran toward Syria rises from about 2% in 2002 to 92% in 2012. Syria toward Iran rises on a different timetable, reaching about 69% in 2011. These are changes in coded event volume, not a causal account of the Syrian conflict or a measure of battlefield severity.
Dorff, Gallop, and Minhas (2020) study directed ACLED battle ties among 37 Nigerian armed organizations from 2000 through 2016.
| Model | ROC AUC | Precision-Recall AUC |
|---|---|---|
| AME | 0.92 | 0.33 |
| Measured predictors plus a lagged tie | 0.82 | 0.26 |
| Measured predictors only | 0.79 | 0.15 |
The factors place organizations in similar roles when they repeatedly fight the same kinds of opponents, even when they operate in different places and pursue different projects. The wider post-2009 increase in fitted battle risk is a system-level descriptive result, not a randomized effect of Boko Haram’s uprising.
Suppose the latent outcome contains an omitted relational pattern \(W\):
\[ Y^*=\beta X+\gamma W+e, \qquad W=\alpha X+z. \]
Substitution gives
\[ Y^*=(\beta+\gamma\alpha)X+\gamma z+e. \]
If the omitted pattern is related to the measured predictor, the network alone cannot tell us how much of their shared pattern belongs to \(X\) and how much belongs to \(W\).
AME can represent patterned dependence. It cannot turn that dependence adjustment into automatic confounding control (Minhas et al. 2022).
The result is not “two factors.” Iran toward Syria and Syria toward Iran follow different paths even after accounting for how often each state appears across all of its partners. That is a description of coded event volume, not an explanation of why the conflict changed.