Communities - PowerPoint PPT Presentation

About This Presentation
Title:

Communities

Description:

Title: No Slide Title Author: Sociology Research Laboratory Last modified by: James Moody Created Date: 2/4/2001 6:20:23 PM Document presentation format – PowerPoint PPT presentation

Number of Views:135
Avg rating:3.0/5.0
Slides: 183
Provided by: Sociol2
Learn more at: https://people.duke.edu
Category:

less

Transcript and Presenter's Notes

Title: Communities


1
Communities Roles
  • Two types ways of identifying nodes that go
    together
  • Communities/Groups
  • Cohesive subgroups literature start w. Freeman
  • Network Operationalization
  • Graph Theoretic
  • Heuristic Algorithms
  • Graph search modularity
  • Cluster analysis
  • LDA/Principle components
  • Fundamental limitations
  • Roles/Positions
  • Literature grounded in structural anthropology
    kinship
  • Roles as relations imply paired sets
  • Goal is to identify nodes with common patterns
  • Original is CONCOR
  • Alternatives based on triads, other clusterings

2
Social Sub-groups
Lin Freeman The sociological concept of Group
Focus on collectivities that are Relatively
small, informal, and involve close personal
ties. What we would call Primary
Groups What (network) structure characterizes
such a group?
Goal Identify (a) non-overlapping groups that
allow one to (b) identify internal group
structure.
3
Social Sub-groups
Lin Freeman The sociological concept of Group
Winships Model
1) Assign people to equivalence classes that are
hierarchically nested
4
Social Sub-groups
Lin Freeman The sociological concept of Group
Winships Model
In words, this means that whatever metric you
define, a person is closer to themselves than to
anyone else, that the relation be symmetric, and
that triads be transitive (which, given the
symmetric condition, means that they be
complete). You can then identify partitions by
scaling the proximity, such that these three
conditions are met.
5
Social Sub-groups
Lin Freeman The sociological concept of Group
Winships Model
6
Social Sub-groups
Lin Freeman The sociological concept of Group
Winships Model
total
A-G
H-K
A-C
D-G
7
Social Sub-groups
Lin Freeman The sociological concept of Group
Granovetters Model
Proceed exactly as in Winship, but treat
intransitivity differently when looking at strong
or weak ties.
If x and y are strongly connected, and y and z
are strongly connected, then x and z should be at
least weakly connected.
8
Social Sub-groups
Lin Freeman The sociological concept of Group
Granovetters Model
An example of a graph fitting the prohibition
against G-intransitive relations.
9
Social Sub-groups
The Davis - Old South Example
10
Social Sub-groups
The Davis - Old South Example Ties gt 2
11
Social Sub-groups
The Davis - Old South Example Ties gt 3
12
Social Sub-groups
The Davis - Old South Example Ties gt 4
Meets the G-transitivity condition
13
Social Sub-groups
The Davis - Old South Example Ties gt 5
Stronger than the G-transitivity condition
14
Social Sub-groups
Lin Freeman The sociological concept of Group
Freeman argues that the G-intransitivity model
fits the data best for each of the 7 groups he
studies. Substantively, the types of groups
this model predicts are very similar to those
predicted by the general transitivity model,
except re-cast as a valued relation. Empirically,
if you want to identify groups based on levels
like this, you can use PAJEK and walk through the
model in just the same way as we did with Old
South or you can use UCI-NET (or program it,
its not hard)
15
Methods How do we identify primary groups in a
network?
  • A) Classic graph theoretical methods Cliques
    and extensions of cliques
  • Cliques
  • k-cores
  • k-plexes
  • Freeman (1992) Models
  • K-components (we talked about these already)
  • B) Algorithmic methods search through a network
    trying to maximize for a particular pattern (I.e.
    like Frank Yasumoto)
  • Adjust assignment of actors to groups until a
    particular pattern of ties (block diagonal,
    usually) is identified.
  • Standard models
  • - Factions (UCI-NET)
  • - KliqueFinder (Frank)
  • RNM/CROWDS/JIGGLE (Moody)
  • Principle component analysis (PCA)
  • Flow models (MCL)
  • Modularity Maximization routines
  • - General Distance Clustering Methods

16
Methods How do we identify primary groups in a
network?
Graph Theoretical Models.
Start with a clique. A clique is defined as a
maximal subgraph in which every member of the
graph is connected to every other member of the
graph. Cliques are collections of nodes where
density 1.0.
  • Properties of cliques
  • Density 1.0
  • Everyone connected to n-1 alters
  • Distance between every pair is 1
  • Ratio of within group ties to between group ties
    is infinite
  • All triads are transitive

17
Methods How do we identify primary groups in a
network?
Graph Theoretical Models.
In practice, complete cliques are not very
useful. They tend to overlap heavily and are
limited in their size.
Graph theorists have thus relaxed the complete
connectivity requirement (with varying degrees of
success). See the Moody White paper on cohesion
for a discussion of many of these attempts.
18
Methods How do we identify primary groups in a
network?
Graph Theoretical Models.
k-cores Every person connected to at least k
other people.
Ideally, they would look something like this
(here two 3-cores). However, adding a single
tie from A to B would make the whole graph a
3-core
19
Methods How do we identify primary groups in a
network?
Graph Theoretical Models.
Extensions of this idea include
K-plex Every member connected to at least n-k
other people in the graph (recall in a clique
everyone is connected to n-1, so this relaxes
that condition. n-clique Every person is
connected by a path of N or less (recall a clique
is with distance 1). N-clan same as an
n-clique, but all paths must be inside the
group. Ive never had much luck with any of
these methods empirically. Real data is usually
too messy to work well. You should try them, and
gain some intuition for yourself. The place to
start is in UCINET.
20
Methods How do we identify primary groups in a
network?
Graph Theoretical Models.
UCINET will compute all of the best-known graph
theoretic treatments for subgroups
21
Methods How do we identify primary groups in a
network?
Graph Theoretical Models.
Consider running different methods on a known
group structure
22
Methods How do we identify primary groups in a
network?
Graph Theoretical Models.
23
Methods How do we identify primary groups in a
network?
Graph Theoretical Models.
Cliques
24
Methods How do we identify primary groups in a
network?
Cliques
The only way to get something meaningful from
this is to analyze the clique overlap matrix,
which is what the Clique by partion dataset
does, using cluster analysis
25
Methods How do we identify primary groups in a
network?
Heuristic strategies for identifying primary
groups Search 1) Fit Measure
Identify a measure of groupness (usually a
function of the number of ties that fall within
group compared to the number of ties that fall
between group). 2) Algorithm to maximize fit.
Once we have the index, we need a clever method
for searching through the network to maximize the
fit. Destroy Break apart the network
in strategic ways, removing the weakest parts
first, whats left are your primary groups. See
edge betweeness MCL Evade Dont
look directly, instead find a simpler problem
that correlates Examples Generalized cluster
analysis, Factor Analysis, RM.
26
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
Segregation Index (Freeman, L. C. 1972.
"Segregation in Social Networks." Sociological
Methods and Research 6411-30.)
Freeman asked how we could identify segregation
in a social network. Theoretically, he argues,
if a given attribute (group label) does not
matter for social relations, then relations
should be distributed randomly with respect to
the attribute. Thus, the difference between the
number of cross-group ties expected by chance and
the number observed measures segregation.
27
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
Consider the (hypothetical) network below. There
are two attributes in this network people with
Blue eyes and Brown eyes and people who are
square or not (they must be hip).
28
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
Segregation Index
Mixing Matrix
Seg -0.25
Seg 0.78
29
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
Segregation Index
One problem with the segregation index is that it
is not margin free. That is, if you were to
change the distribution of the category of
interest (say race) by a constant but not the
core association between race and friendship
choice, you can get a different segregation
level. One antidote to this problem is to use
odds ratios. In this case, and odds ratio tells
us the relative likelihood that two people in the
same category will choose each other as friends.
30
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
Odds Ratios
The odds ratio tells us how much more likely
people in the same group are to nominate each
other. You calculate the odds ratio based on the
number of ties in a group and their relative
size, based on the following table
Member of Same Group Different
Group Friends A
B Not Friends C D
OR AD/ BC
31
Odds Ratios
There are 6 hip people and 9 square people in
this network. This implies that there are the
following number of possible ties in the network
Observed
Hip Square Hip 20
3 23 Square 3 30 33 23 33
56
Hip Square Hip 30
54 Square 54 72 Diagonal
ni(ni-1) off diagonal ni2
Group Same
Dif Yes 50 6 Friend
No 52 102
OR (50)102 / 52(6) 16.35
32
Complete Network Analysis Network Connections
Social Subgroups
Segregation index compared to the odds ratio
Friendship Segregation Index
r.95
Log(Same-Sex Odds Ratio)
33
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
The second problem is that the Segregation index
has no clear maximum if every node is assigned
to a single group the value can be higher than if
everyone is assigned to the right group. -- it
tends to have a monotonically changing score.
This means you cant just keep adjusting nodes
until you see a best fit, but instead have to
look for changes in fit. The modularity score
solves this problem by re-organizing the
expectation in a way that forces the value to 0
if everyone is in a single group.
34
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
We can also measure the extent that ties fall
within clusters with the modularity score
Where s indexes clusters in the network ls is
the number of lines in cluster s ds is the sum
of the degrees of s L is the total number of
lines
M has the advantage of going to 0 if there is
only 1 group, which means maximizing the score is
sensible
35
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
We can also measure the extent that ties fall
within clusters with the modularity score
 
Where m is the number of edges k is the
degree Aij is the edge weight between
ij d(cicj) is 1 if in the same group g is the
resolution parameter
Q has the advantage of going to 0 if there is
only 1 group, which means maximizing the score is
sensible. Note resolution parameter means N of
groups is not truly automatic
36
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
Modularity Scores Comparison to Segregation Index
comparing values for known solutions
Modularity Score Plotted against Segregation
Index for various nets
37
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
Number of groups ?
In-group Density ?
38
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
  • Louvain Method (Blondel et al) in PAJEK R
  • Factions in UCI-NET
  • Multiple options for the exact factor maximized.
    I recommend either the density or the correlation
    function, and I would calculate the distance in
    each case.
  • Franks KliqueFinder
  • Moodys crowds / Jiggle
  • Generalized blockmodel in PAJEK
  • iGraph (R) has a couple that see this sort
    (Fast-Greedy is good)

39
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
Factions in UCI-NET
40
Factions in UCI-NET
41
Factions in UCI-NET
42
Factions in UCI-NET
Reduced BlockMatrix 1 2 3 4 5 6
-- -- -- -- -- -- 1 59 1 2 14 1 0 2 1
54 0 1 12 2 3 1 2 55 0 1 12 4 9 1
1 51 0 0 5 0 12 2 0 62 1 6 1 0 9
2 0 64
Fit perfectly
43
Methods How do we identify primary groups in a
network?
Search Optimize a partition to fit
UCINET
  • Biggest drawbacks of FACTIONS are
  • SLOW
  • Have to specify the number of groups.

44
  • PAJEK Generalized Blockmodel

45
  • PAJEK Generalized Blockmodel

46
  • PAJEK Generalized Blockmodel

Fits fine, but its slow!
47
  • R Fast Greedy

This is a direct optimization of Modularity
48
  • PAJEK Louvain

This is a direct optimization of Modularity
49
Methods How do we identify primary groups in a
network?
Evade Find a cheap indicator, and
cluster/optimize that
Cluster analysis
In addition to tools like FACTIONS, we can use
the distance information contained in a network
to cluster observations that are close to each
other. In general, cluster analysis is a set of
techniques that allows you to identify
collections of objects that are simmilar to each
other in some degree. A very good reference is
the SAS/STAT manual section called, Introduction
to clustering procedures. (http//wks.uts.ohio-s
tate.edu/sasdoc/8/sashtml/stat/chap8/index.htm)
(See also Wasserman and Faust, though the
coverage is spotty). We are going to start with
the general problem of hierarchical clustering
applied to any set of analytic objects based on
similarity, and then transfer that to clustering
nodes in a network.
50
Cluster analysis
Imagine a set of objects (say people) arrayed in
a two dimensional space. You want to identify
groups of people based on their position in that
space. How do you do it?
How Smart you are
How Cool you are
51
Methods How do we identify primary groups in a
network?
Evade Find a cheap indicator, and
cluster/optimize that
Start by choosing a pair of people who are very
close to each other (such as 15 16) and now
treat that pair as one point, with a value equal
to the mean position of the two nodes.
x
52
Methods How do we identify primary groups in a
network?
Evade Find a cheap indicator, and
cluster/optimize that
Now repeat that process for as long as possible.
53
Methods How do we identify primary groups in a
network?
Evade Find a cheap indicator, and
cluster/optimize that
This process is captured in the cluster tree
(called a dendrogram)
54
Methods How do we identify primary groups in a
network?
Evade Find a cheap indicator, and
cluster/optimize that
  • As with the network cluster algorithms, there are
    many options for clustering. The three that I
    use most are
  • Wards Minimum Variance -- the one I use almost
    95 of the time
  • Average Distance -- the one used in the example
    above
  • Median Distance -- very similar
  • Again, the SAS manual is the best single place
    Ive found for information on each of these
    techniques.
  • Some things to keep in mind
  • Units matter. The example above draws together
    pairs horizontally because the range there is
    smaller. Get around this by standardizing your
    data.
  • This is an inductive technique. You can find
    clusters in a purely random distribution of
    points. Consider the following example.

55
Methods How do we identify primary groups in a
network?
Evade Find a cheap indicator, and
cluster/optimize that
Cluster analysis
The data in this scatter plot are produced using
this code
data random do i1 to 20 xrannor(0)
yrannor(0) output end run
56
Methods How do we identify primary groups in a
network?
Evade Find a cheap indicator, and
cluster/optimize that
Cluster analysis
Resulting dendrogram
57
Resulting cluster solution
Cluster analysis
58
Methods How do we identify primary groups in a
network?
Evade Find a cheap indicator, and
cluster/optimize that
Cluster analysis
Cluster analysis works by building a distance
matrix between each pair of points. In the
example above, it used the Euclidean distance
which in two dimensions is simply the physical
distance between the points in a plot. Can
work on any number of dimensions. To use
cluster analysis in a network, we base the
distance on the path-distance between pairs of
people in the network. Consider again the
blue-eye hip example
59
Methods How do we identify primary groups in a
network?
Evade Find a cheap indicator, and
cluster/optimize that
Cluster analysis
Distance Matrix 0 1 3 2 3 3 4 3 3 2 3 2 2 1 1 1 0
2 2 2 3 3 3 2 1 2 2 1 2 1 3 2 0 3 2 4 3 3 2 1 1 1
2 2 3 2 2 3 0 1 1 2 1 1 2 3 3 3 2 1 3 2 2 1 0 2 1
1 1 1 2 2 3 3 2 3 3 4 1 2 0 1 1 2 3 4 4 4 3 2 4 3
3 2 1 1 0 2 2 2 3 3 4 4 3 3 3 3 1 1 1 2 0 1 2 3 3
4 3 2 3 2 2 1 1 2 2 1 0 1 2 2 3 3 2 2 1 1 2 1 3 2
2 1 0 1 1 2 2 2 3 2 1 3 2 4 3 3 2 1 0 1 2 2 3 2 2
1 3 2 4 3 3 2 1 1 0 1 1 2 2 1 2 3 3 4 4 4 3 2 2 1
0 2 2 1 2 2 2 3 3 4 3 3 2 2 1 2 0 1 1 1 3 1 2 2 3
2 2 2 3 2 2 1 0
60
Methods How do we identify primary groups in a
network?
Evade Find a cheap indicator, and
cluster/optimize that
The distance matrix implies a space that nodes
are embedded within. Using something like MDS,
we can represent the space implied by the
distance matrix in two dimensions. This is the
image of the network you would get if you did
that.
61
Cluster analysis
When you use variables, the cluster analysis
program generates a distance matrix. We can,
instead use the network distance matrix directly.
If we do that with this example network, we get
the following
62
Cluster analysis
63
Cluster analysis
In SAS you use two commands to get a cluster
analysis. The first does the hierarchical
clustering. The second analyzes the cluster
output to create the tree. Example 1. Using
variables to define the space (like income and
musical taste)
proc cluster dataa methodave outclustd
std var x y id node run proc tree
dataclustd ncl5 outcluvars run
64
Cluster analysis
proc iml include 'c\moody\sas\programs\modules
\reach.mod' / blue eye example /
mat2j(15,15,0) mat21,2 14 151 / lines
cut here / mat215,1 14 2 41
dmatreach(mat2) mattrib dmat format1.0
print dmat id1nrow(dmat) idid
ddatiddmat create ddat from ddat /
creates the dataset / append from
ddat quit data ddat (typedist) / tells
SAS it is a distance / set ddat /
matrix / run
Example 2. Using a pre-defined distance matrix
to define the space (as in a social network). You
first create the distance matrix (in IML), then
use it in the cluster program.
65
Cluster analysis
Example 2. Using a pre-defined distance matrix
to define the space (as in a social
network). Once you have it, the cluster program
is just the same.
proc cluster dataddat methodward
outclustd id col1 run proc tree dataclustd
ncl3 outnetclust copy col1 run proc freq
datanetclust tables cluster run proc print
datanetclust var col1 cluster run
66
Methods How do we identify primary groups in a
network?
Evade Find a cheap indicator, and
cluster/optimize that
Moodys CROWDS algorithm combines the search
approach with an initial cluster analysis and a
routine for determining how many clusters are in
the network. It does so by using the Segregation
index and all of the information from the cluster
hierarchy, combining two groups only if it
improves the segregation fit for both groups.
67
Methods How do we identify primary groups in a
network?
Destroy Remove lines/nodes until what is left
over reveals something of interest
The logic behind these algorithms is that you
remove some weak links and see what is left.
Most popular is the edge betweenness algorithm.
68
Methods How do we identify primary groups in a
network?
Destroy Remove lines/nodes until what is left
over reveals something of interest
UCINET has the MCL (Markov clustering, based on
flow betweenness in a random walk sense)
algorithm programmed.
69
Evade look for something that correlates with
your split
Newmans Leading Eigenvector (in R this is the
bottom partition, not the best fit, which
aggregates/joins from here)
70
Evade look for something that correlates with
your split
The Recursive Neighborhood Means algorithm
creates the variables that are then used in the
cluster analysis to identify groups.
  • Start by randomly assigning every node a value on
    k variables
  • Then calculate the average for each variable for
    the people each person is tied to
  • Repeat this process multiple times
  • ? This results in people who have many ties to
    each other having similar values on the k random
    variables. This similarity then gets picked up
    in a cluster analysis.

71
Example of the RNM procedure
Time 3
Time 2
Time 1
72
Example of the RNM procedure
73
As an example, consider the process active on a
known-to-be clustered networks, starting with 2
random k variables. You get something like this,
where the nodes are now placed according to their
resulting values on the 2 variables.
74
(No Transcript)
75
The algorithm does a good job uncovering clusters
in fake datasets.
76
The algorithm does a good job uncovering clusters
in fake datasets.
77
Compared to real data RNM Partition on the
Prison data
78
Strategies for identifying primary groups

Evade
Factor Analysis Treat the adjacency/similarity
matrix as a set of N variables and look for
latent factors that explain the variance in the
data.
IQ
SES
1.0
1.0
Math Score
Income
0.0
0.0
d
d
We often use simple indicators and assume they
measure our concepts
79
Strategies for identifying primary groups

Evade
Factor Analysis Treat the adjacency/similarity
matrix as a set of N variables and look for
latent factors that explain the variance in the
data.
IQ
SES
Income
Reading Score
Occupation
Highest Degree
House Size
Languages Spoken
Math Score
d
d
d
d
d
d
d
But we dont have to! We can imagine that each
latent concept causes our indicators, and build a
measurement model.
80
Strategies for identifying primary groups

Evade
Factor Analysis Treat the adjacency/similarity
matrix as a set of N variables and look for
latent factors that explain the variance in the
data.
But we dont have to! We can imagine that each
latent concept causes our indicators, and build a
measurement model.
81
Strategies for identifying primary groups

Evade
Factor Analysis Treat the adjacency/similarity
matrix as a set of N variables and look for
latent factors that explain the variance in the
data.
In a network, we assume that the tie pattern is
an imperfect measure of an underlying latent
structure that we can explain with similar
factors. Instead of lots of measurements we
have many columns in the adjacency (sim) matrix,
and we can summarize that with factor scores. --
works best if the similarity matrix has more
information so multiple account data are
perfect. or you can transform the data in some
way to more information (like use a distance
matrix.
82
Strategies for identifying primary groups

Evade
Factor Analysis Treat the adjacency/similarity
matrix as a set of N variables and look for
latent factors that explain the variance in the
data.
Here is code I used in the PROSPER data
/ this section builds info on how to weight
dyads for in-group, out-group. / twostp((adjma
tadjmat)gt0)adjmat / make it either direction
w. the first term / ttieadjmattwostp /1 if
tie contributes to a transitive triple
/ ttie((ttiettie)) adjrawadjmat
adjmat(adjmatadjmat) / force it to be
symetric, 1asym 2reciped / adjmatadjmat-diag(
adjmat) / remove any self ties
/ d2reachlim((adjmatgt0),3) / re-weight to
bias toward recip ties / wm_4
(d21)(adjmat2)8 / recip direct ties
/ wm_2a (d21)(adjmat1)4 / unrecip
direct ties / wm_1 2(d22)/ ties 2-steps
out / wm_p5 0(d23) / ties 3-steps out -
note it's zeroed out here/ wmwm_4wm_2awm_1w
m_p5(3(ttie/(max(ttie)))) / transitivity is
at the end/ wmwm-diag(wm)
83
Strategies for identifying primary groups

Evade
Factor Analysis Treat the adjacency/similarity
matrix as a set of N variables and look for
latent factors that explain the variance in the
data.
Here is code I used in the PROSPER data
/ run factor analysis. Note nfactors is a high
value, should only take those w. EV gt 2, but
this gives us room... / proc factor
rotatevarimax minminev outfactset
datasymmat nfactors175 outstatfscores
noprint run quit
84
Strategies for identifying primary groups

Evade
Result
85
Strategies for identifying primary groups

Evade
Result
Each column is a person, these are the factor
loadings for each person on each retained factor.
86
Strategies for identifying primary groups

Evade
Result
Sociogram for a single school
87
Strategies for identifying primary groups

Evade
Result
  • Sociogram for a single school.
  • Problem is that there are no necessary
    connectivity checks you can get groups that
    are disconnected.
  • Biggest strengths are
  • Really fast
  • Allows for overlapping groups
  • Gives you embeddedness scores based on factor
    loadigs

88
Strategies for identifying primary groups

Hybrid
The Crowds Algorithm 1. Identify members of
network bicomponents, remove people not included.
2. Cluster the reduced network. - Identify
optimal number of groups (TREEWALK) -
For each level of the cluster partition tree do
(BFS) -Move up the tree from smaller to
larger groups. -If the fit for both groups
is improved by joining them then do so. -If
not, then identify group at that level.
-End TREEWALK. Do until all groups are
identified (GLOBAL LOOP) 3. Evaluate node
fit. Do until nodes cannot be moved
For each identified cluster do
(GRPCHECK) - Ensure group is a
bi-component. -Calculate effect on
group a of moving node j to group a.
-Calculate effect on j's present group of
removing j. - If there is a
positive net gain to moving j from own group to
a, then do so. End. 4. Identify
Bridging members. -If removing j from group a
would improve the fit of group a, AND assigning j
to any other group would lower the fit for that
group, then j is considered a bridge. Place all
bridges in separate class. 5. Group Check. Check
returns to combining groups. IF merging groups
would improve the fit of all groups to be merged,
then do so. - Evaluate bridges, to be sure that
they are not bridging two groups that have now
merged. End Global loop.  
89
Social Sub-groups
Frank Yasumoto Action and Structure
They expect to find evidence of enforceable trust
within social subgroups and evidence of
reciprocity between such groups. To do so, they
must identify primary subgroups within the
network. They do so using a density based
criterion. Franks algorithm iteratively assigns
nodes to subgroups until a parameter that
maximizes in-group density is reached. Basic
model is logit(Yij) a gij Seek to find
an assignment of nodes to groups (g) that
maximizes fit. This results in a block diagonal
adjacency matrix, where most of the ties fall
along the diagonal.
90
Relations among the French Financial Elite (as
drawn by FY)
Relations within group are weighted heavier than
between to generate this picture
Group-weighted MDS
91
Return to first question What is a group?
  • The simple notions of a complete clique are
    difficult to square w. real-world data.
  • Density is an indicator, but subject to
    over-grouping (no connectivity) and
    star-patterns.
  • Groups are likely internally differentiated
    with core vs. periphery members
  • Most sociological theories of groups rest on
    transitive closure and short distances
  • Theres a sense that members are equal a
    tight-knit group
  • The group should be fairly small face-to-face
    scale
  • The social processes underlying the group turn on
    reciprocity, trust, communication, homogeneity of
    norms beliefs.
  • Almost all require a comparative set in-group to
    out-group. It is relational not essential.
  • Cross-cutting social circles would lead us to
    expect overlapping groups, but in practice most
    methods do not do that, as its analytically too
    cumbersome.
  • Practically, group detection is hard and most
    methods will give you (slightly) different
    results. You can compare results using a Rand
    statistic (proportion of pairs similarly
    categorized in two partitions), but for small
    settings these differences can matter.

92
Fast Greedy
Louvain
Edge Between
RNM (CROWDS)
Markov Chain
Leading Eigenvect
93
(No Transcript)
94
Roles Positions
  • Overview
  • Social life can be described (at least in part)
    through social roles.
  • To the extent that roles can be characterized by
    regular interaction patterns, we can summarize
    roles through common relational patterns.
  • Identifying these sets is the goal of block-model
    analyses.
  • Nadel The Coherence of Role Systems
  • Background ideas for White, Boorman and Brieger.
    Social life as interconnected system of roles
  • Important feature thinking of roles as connected
    in a role system social structure
  • White, Boorman and Breiger Social structure
    from Multiple Networks I. Blockmodels of Roles
    and Positions
  • The key article describing the theoretical and
    technical elements of block-modeling

95
Nadel The Coherence of Role Systems
  • Elements of a Role
  • Rights and obligations with respect to other
    people or classes of people
  • Roles require a role compliment another person
    who the role-occupant acts with respect to
  • Examples
  • Parent - child, Teacher - student, Lover -
    lover, Friend - Friend, Husband - Wife, etc.
  • Nadel (Following functional anthropologists and
    sociologists) defines logical types of roles,
    and then examines how they can be linked together.

96
Nadel The Coherence of Role Systems
Nadel describes how various roles fit together to
form a coherent whole. Roles are collected in
people through the summation of
roles Necessary Some roles fit together
necessarily. For example, the expected
interaction patterns of son-in-law are implied
through the joint roles of Husband and
Spouse-Parent Coincidental Some roles tend
to go together empirically, but they need not
(businessman club member, for example).
Distinguishing the two is a matter of
usefulness and judgement, but relates to social
substitutability. The distinction reverts to how
the system as a whole will be held together in
the face of changes in role occupants.
97
Nadel The Coherence of Role Systems
Given that roles can be identified as going
together is there a logic that underlies their
connection? Nadel uses a functional description
based on ascription and achievement
98
Nadel The Coherence of Role Systems
And he gives an example of a simple role system
Nadels task is to make sense of these roles, to
identify how they are interconnected to form a
system -- a coherent structure. This is a
difficult task to do analytically, as the
eventual failure of Parsonian functionalism shows.
99
White et al From logical role systems to
empirical social structures
With the fall of parsons and functionalism in the
late 60s, many of the ideas about social
structure and system were also tossed. White
et al demonstrate how we can understand social
structure as the intercalation of roles, without
the a priori logical categories. Start with some
basic ideas of what a role is An exchange of
something (support, ideas, commands, etc) between
actors. Thus, we might represent a family as
100
White et al From logical role systems to
empirical social structures
Start with some basic ideas of what a role is
An exchange of something (support, ideas,
commands, etc) between actors. Thus, we might
see an exchange network such as
Provides food for
101
White et al From logical role systems to
empirical social structures
Start with some basic ideas of what a role is
An exchange of something (support, ideas,
commands, etc) between actors. Which is a
summary of a (sort of) family.
H
W
C
C
C
Provides food for
(and there are, of course, many other relations
inside the family)
102
White et al From logical role systems to
empirical social structures
The key idea, is that we can express a role
through a relation (or set of relations) and thus
a social system by the inventory of roles. If
roles equate to positions in an exchange system,
then we need only identify particular aspects of
a position. But what aspect? Block modeling
focuses on equivalence positions. Structural
Equivalence
Two actors are structurally equivalent if they
have the same types of ties to the same people.
That is, they have the exact same ties.
103
Structural Equivalence
A single relation
104
Structural Equivalence
Graph reduced to positions
105
Alternative notions of equivalence
Instead of exact same ties to exact same alters,
you look for nodes with similar ties to similar
types of alters
106
Blockmodeling basic steps
In any positional analysis, there are 4 basic
steps 1) Identify a definition of
equivalence 2) Measure the degree to which pairs
of actors are equivalent 3) Develop a
representation of the equivalencies 4) Assess
the adequacy of the representation
107
1) Identify a definition of equivalence
Structural Equivalence Two actors are
equivalent if they have the same type of ties to
the same people.
108
1) Identify a definition of equivalence
Automorphic Equivalence Actors occupy
indistinguishable structural locations in the
network. That is, that they are in isomorphic
positions in the network. Two graphs are
isomorphic if there is some mapping of nodes to
positions that equates the two. For example, all
030T triads are isomorphic. A graph is
automorphic, if there are patterns internal to
the graph that are equated (if the mapping goes
from the set of nodes in the graph to other nodes
in the graph). In general, automorphicaly
equivalent nodes are equivalent with respect to
all graph theoretic properties (I.e. degree,
number of people reachable, centrality, etc.) and
are structurally indistinguishable. Key
difference from structural equivalence is
relaxing of the necessity of being linked to the
same nodes.
109
Automorphic Equivalence
110
1) Identify a definition of equivalence
Regular Equivalence Regular equivalence does
not require actors to have identical ties to
identical actors or to be structurally
indistinguishable. Actors who are regularly
equivalent have identical ties to and from
equivalent actors. If actors i and j are
regularly equivalent, and actor i has a tie
to/from some actor, k, then actor j must have the
same kind of tie to/from some actor l, and actors
k and l must be regularly equivalent. So
effectively this is a recursive definition, and
not necessarily unique. There may be several
ways to assign actors to clusters that satisfy
this definition. (This is related to graph
colorings, regular equivalence definitions are
those where nodes have neighbors of the same
color).
111
Regular Equivalence
There may be multiple regular equivalence
partitions in a network, and thus we tend to want
to find the maximal regular equivalence position,
the one with the fewest positions.
112
Role or Local Equivalence While most
equivalence measures focus on position within the
full network, some measures focus only on the
patters within the local tie neighborhood. These
have been called local role equivalence.
Note that Structurally equivalent actors are
automorphically equivalent, Automorphically
equivalent actors are regularly
equivalent. Structurally equivalent and
automorphically equivalent actors are role
equivalent In practice, we tend to ignore some
of these fine distinctions, as they get blurred
quickly once we have to operationalize them in
real graphs. It turns out that few people are
ever exactly equivalent, and thus we approximate
the links between the types. In all cases, the
procedure can work over multiple relations
simultaneously. The process of identifying
positions is called blockmodeling, and requires
identifying a measure of similarity among nodes.
113
Blockmodeling is the process of identifying these
types of positions. A block is a section of the
adjacency matrix - a group of people.
0 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 0
0 0 0 1 0 0 1 0 0 1 1 1 1 0 0 0 0 1 0 1 0 0 0 1 1
1 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 1 1 0 1 0 0 1
0 0 0 0 0 1 1 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0
0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0
0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0
0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0
Here I have blocked structurally equivalent actors
114
Once you block the matrix, reduce it, based on
the number of ties in the cell of interest. The
key values are a zero block (no ties) and a
one-block (all ties present)
1 2 3 4 5 6 1 0 1 1 0 0 0 2 1 0 0 1 0 0 3 1 0 1
0 1 0 4 0 1 0 1 0 1 5 0 0 1 0 0 0 6 0 0 0 1 0 0
1
2
3
4
5
6
1
. 1 1 1 0 0 0 0 0 0 0 0 0 0 1 . 0 0 1 1 0 0 0 0 0
0 0 0 1 0 . 1 0 0 1 1 1 1 0 0 0 0 1 0 1 . 0 0 1 1
1 1 0 0 0 0 0 1 0 0 . 1 0 0 0 0 1 1 1 1 0 1 0 0 1
. 0 0 0 0 1 1 1 1 0 0 1 1 0 0 . 0 0 0 0 0 0 0 0 0
1 1 0 0 0 . 0 0 0 0 0 0 0 0 1 1 0 0 0 0 . 0 0 0 0
0 0 0 1 1 0 0 0 0 0 . 0 0 0 0 0 0 0 0 1 1 0 0 0 0
. 0 0 0 0 0 0 0 1 1 0 0 0 0 0 . 0 0 0 0 0 0 1 1 0
0 0 0 0 0 . 0 0 0 0 0 1 1 0 0 0 0 0 0 0 .
2
3
4
5
6
Structural equivalence thus generates 6 positions
in the network
115
Once you partition the matrix, reduce it
. 1 1 1 0 0 0 0 0 0 0 0 0 0 1 . 0 0 1 1 0 0 0 0 0
0 0 0 1 0 . 1 0 0 1 1 1 1 0 0 0 0 1 0 1 . 0 0 1 1
1 1 0 0 0 0 0 1 0 0 . 1 0 0 0 0 1 1 1 1 0 1 0 0 1
. 0 0 0 0 1 1 1 1 0 0 1 1 0 0 . 0 0 0 0 0 0 0 0 0
1 1 0 0 0 . 0 0 0 0 0 0 0 0 1 1 0 0 0 0 . 0 0 0 0
0 0 0 1 1 0 0 0 0 0 . 0 0 0 0 0 0 0 0 1 1 0 0 0 0
. 0 0 0 0 0 0 0 1 1 0 0 0 0 0 . 0 0 0 0 0 0 1 1 0
0 0 0 0 0 . 0 0 0 0 0 1 1 0 0 0 0 0 0 0 .
1 2 3 1 1 1 0 2 1 1 1 3 0 1 0
1
2
3
Regular equivalence
(here I placed a one in the image matrix if there
were any ties in the ij block)
116
To get a block model, you have to measure the
similarity between each pair. If two actors are
structurally equivalent, then they will have
exactly similar patterns of ties to other people.
Consider the example again
C and D match on 12 other people
1
2
3
4
5
6
C D Match 1 1 1 0 0 1 . 1 0 1 . 0 0
0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1
1 0 0 1 0 0 1 0 0 1 0 0 1 Sum 12
1
. 1 1 1 0 0 0 0 0 0 0 0 0 0 1 . 0 0 1 1 0 0 0 0 0
0 0 0 1 0 . 1 0 0 1 1 1 1 0 0 0 0 1 0 1 . 0 0 1 1
1 1 0 0 0 0 0 1 0 0 . 1 0 0 0 0 1 1 1 1 0 1 0 0 1
. 0 0 0 0 1 1 1 1 0 0 1 1 0 0 . 0 0 0 0 0 0 0 0 0
1 1 0 0 0 . 0 0 0 0 0 0 0 0 1 1 0 0 0 0 . 0 0 0 0
0 0 0 1 1 0 0 0 0 0 . 0 0 0 0 0 0 0 0 1 1 0 0 0 0
. 0 0 0 0 0 0 0 1 1 0 0 0 0 0 . 0 0 0 0 0 0 1 1 0
0 0 0 0 0 . 0 0 0 0 0 1 1 0 0 0 0 0 0 0 .
2
3
4
5
6
117
If the model is going to be based on asymmetric
or multiple relations, you simply stack the
various relations
Stacked
Romance 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0
0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
H
W
0 0 1 1 1 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Feeds 0 0 1 1 1 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0
C
C
C
0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0
Romantic Love
Provides food for
Bicker 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0
0 1 1 0
Bickers with
0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0
118
For the entire matrix, we get
0 8 7 7 5 5 11 11 11 11 7 7 7 7 8 0
5 5 7 7 7 7 7 7 11 11 11 11 7 5 0 12 0
0 8 8 8 8 4 4 4 4 7 5 12 0 0 0 8
8 8 8 4 4 4 4 5 7 0 0 0 12 4 4 4 4
8 8 8 8 5 7 0 0 12 0 4 4 4 4 8 8
8 8 11 7 8 8 4 4 0 12 12 12 8 8 8 8 11
7 8 8 4 4 12 0 12 12 8 8 8 8 11 7 8
8 4 4 12 12 0 12 8 8 8 8 11 7 8 8 4 4
12 12 12 0 8 8 8 8 7 11 4 4 8 8 8 8
8 8 0 12 12 12 7 11 4 4 8 8 8 8 8 8 12
0 12 12 7 11 4 4 8 8 8 8 8 8 12 12 0
12 7 11 4 4 8 8 8 8 8 8 12 12 12 0
(number of agreements for each ij pair)
119
The metric used to measure structural equivalence
by White, Boorman and Brieger is the correlation
between each nodes set of ties. For the
example, this would be
1.00 -0.20 0.08 0.08 -0.19 -0.19 0.77 0.77
0.77 0.77 -0.26 -0.26 -0.26 -0.26 -0.20 1.00
-0.19 -0.19 0.08 0.08 -0.26 -0.26 -0.26 -0.26
0.77 0.77 0.77 0.77 0.08 -0.19 1.00 1.00
-1.00 -1.00 0.36 0.36 0.36 0.36 -0.45 -0.45
-0.45 -0.45 0.08 -0.19 1.00 1.00 -1.00 -1.00
0.36 0.36 0.36 0.36 -0.45 -0.45 -0.45
-0.45 -0.19 0.08 -1.00 -1.00 1.00 1.00 -0.45
-0.45 -0.45 -0.45 0.36 0.36 0.36 0.36 -0.19
0.08 -1.00 -1.00 1.00 1.00 -0.45 -0.45 -0.45
-0.45 0.36 0.36 0.36 0.36 0.77 -0.26 0.36
0.36 -0.45 -0.45 1.00 1.00 1.00 1.00 -0.20
-0.20 -0.20 -0.20 0.77 -0.26 0.36 0.36 -0.45
-0.45 1.00 1.00 1.00 1.00 -0.20 -0.20 -0.20
-0.20 0.77 -0.26 0.36 0.36 -0.45 -0.45 1.00
1.00 1.00 1.00 -0.20 -0.20 -0.20 -0.20 0.77
-0.26 0.36 0.36 -0.45 -0.45 1.00 1.00 1.00
1.00 -0.20 -0.20 -0.20 -0.20 -0.26 0.77 -0.45
-0.45 0.36 0.36 -0.20 -0.20 -0.20 -0.20 1.00
1.00 1.00 1.00 -0.26 0.77 -0.45 -0.45 0.36
0.36 -0.20 -0.20 -0.20 -0.20 1.00 1.00 1.00
1.00 -0.26 0.77 -0.45 -0.45 0.36 0.36 -0.20
-0.20 -0.20 -0.20 1.00 1.00 1.00 1.00 -0.26
0.77 -0.45 -0.45 0.36 0.36 -0.20 -0.20 -0.20
-0.20 1.00 1.00 1.00 1.00
Another common metric is the Euclidean distance
between pairs of actors, which you then use in a
standard cluster analysis.
120
The initial method for finding structurally
equivalent positions was CONCOR, the CONvergence
of iterated CORrelations.
Concor iteration 1
1.00 -.77 0.55 0.55 -.57 -.57 0.95 0.95 0.95 0.95
-.75 -.75 -.75 -.75 -.77 1.00 -.57 -.57 0.55 0.55
-.75 -.75 -.75 -.75 0.95 0.95 0.95 0.95 0.55 -.57
1.00 1.00 -1.0 -1.0 0.73 0.73 0.73 0.73 -.75 -.75
-.75 -.75 0.55 -.57 1.00 1.00 -1.0 -1.0 0.73 0.73
0.73 0.73 -.75 -.75 -.75 -.75 -.57 0.55 -1.0 -1.0
1.00 1.00 -.75 -.75 -.75 -.75 0.73 0.73 0.73
0.73 -.57 0.55 -1.0 -1.0 1.00 1.00 -.75 -.75 -.75
-.75 0.73 0.73 0.73 0.73 0.95 -.75 0.73 0.73 -.75
-.75 1.00 1.00 1.00 1.00 -.77 -.77 -.77 -.77 0.95
-.75 0.73 0.73 -.75 -.75 1.00 1.00 1.00 1.00 -.77
-.77 -.77 -.77 0.95 -.75 0.73 0.73 -.75 -.75 1.00
1.00 1.00 1.00 -.77 -.77 -.77 -.77 0.95 -.75 0.73
0.73 -.75 -.75 1.00 1.00 1.00 1.00 -.77 -.77 -.77
-.77 -.75 0.95 -.75 -.75 0.73 0.73 -.77 -.77 -.77
-.77 1.00 1.00 1.00 1.00 -.75 0.95 -.75 -.75 0.73
0.73 -.77 -.77 -.77 -.77 1.00 1.00 1.00 1.00 -.75
0.95 -.75 -.75 0.73 0.73 -.77 -.77 -.77 -.77 1.00
1.00 1.00 1.00 -.75 0.95 -.75 -.75 0.73 0.73 -.77
-.77 -.77 -.77 1.00 1.00 1.00 1.00
121
The initial method for finding structurally
equivalent positions was CONCOR, the CONvergence
of iterated CORrelations.
Concor iteration 2
1.00 -.99 0.94 0.94 -.94 -.94 0.99 0.99 0.99 0.99
-.99 -.99 -.99 -.99 -.99 1.00 -.94 -.94 0.94 0.94
-.99 -.99 -.99 -.99 0.99 0.99 0.99 0.99 0.94 -.94
1.00 1.00 -1.0 -1.0 0.97 0.97 0.97 0.97 -.97 -.97
-.97 -.97 0.94 -.94 1.00 1.00 -1.0 -1.0 0.97 0.97
0.97 0.97 -.97 -.97 -.97 -.97 -.94 0.94 -1.0 -1.0
1.00 1.00 -.97 -.97 -.97 -.97 0.97 0.97 0.97
0.97 -.94 0.94 -1.0 -1.0 1.00 1.00 -.97 -.97 -.97
-.97 0.97 0.97 0.97 0.97 0.99 -.99 0.97 0.97 -.97
-.97 1.00 1.00 1.00 1.00 -.99 -.99 -.99 -.99 0.99
-.99 0.97 0.97 -.97 -.97 1.00 1.00 1.00 1.00 -.99
-.99 -.99 -.99 0.99 -.99 0.97 0.97 -.97 -.97 1.00
1.00 1.00 1.00 -.99 -.99 -.99 -.99 0.99 -.99 0.97
0.97 -.97 -.97 1.00 1.00 1.00 1.00 -.99 -.99 -.99
-.99 -.99 0.99 -.97 -.97 0.97 0.97 -.99 -.99 -.99
-.99 1.00 1.00 1.00 1.00 -.99 0.99 -.97 -.97 0.97
0.97 -.99 -.99 -.99 -.99 1.00 1.00 1.00 1.00 -.99
0.99 -.97 -.97 0.97 0.97 -.99 -.99 -.99 -.99 1.00
1.00 1.00 1.00 -.99 0.99 -.97 -.97 0.97 0.97 -.99
-.99 -.99 -.99 1.00 1.00 1.00 1.00
122
The initial method for finding structurally
equivalent positions was CONCOR, the CONvergence
of iterated CORrelations.
Concor iteration 3
1.00 -1.0 1.00 1.00 -1.0 -1.0 1.00 1.00 1.00 1.00
-1.0 -1.0 -1.0 -1.0 -1.0 1.00 -1.0 -1.0 1.00 1.00
-1.0 -1.0 -1.0 -1.0 1.00 1.00 1.00 1.00 1.00 -1.0
1.00 1.00 -1.0 -1.0 1.00 1.00 1.00 1.00 -1.0 -1.0
-1.0 -1.0 1.00 -1.0 1.00 1.00 -1.0 -1.0 1.00 1.00
1.00 1.00 -1.0 -1.0 -1.0 -1.0 -1.0 1.00 -1.0 -1.0
1.00 1.00 -1.0 -1.0 -1.0 -1.0 1.00 1.00 1.00
1.00 -1.0 1.00 -1.0 -1.0 1.00 1.00 -1.0 -1.0 -1.0
-1.0 1.00 1.00 1.00 1.00 1.00 -1.0 1.00 1.00 -1.0
-1.0 1.00 1.00 1.00 1.00 -1.0 -1.0 -1.0 -1.0 1.00
-1.0 1.00 1.00 -1.0 -1.0 1.00 1.00 1.00 1.00 -1.0
-1.0 -1.0 -1.0 1.00 -1.0 1.00 1.00 -1.0 -1.0 1.00
1.00 1.00 1.00 -1.0 -1.0 -1.0 -1.0 1.00 -1.0 1.00
1.00 -1.0 -1.0 1.00 1.00 1.00 1.00 -1.0 -1.0 -1.0
-1.0 -1.0 1.00 -1.0 -1.0 1.00 1.00 -1.0 -1.0 -1.0
-1.0 1.00 1.00 1.00 1.00 -1.0 1.00 -1.0 -1.0 1.00
1.00 -1.0 -1.0 -1.0 -1.0 1.00 1.00 1.00 1.00 -1.0
1.00 -1.0 -1.0 1.00 1.00 -1.0 -1.0 -1.0 -1.0 1.00
1.00 1.00 1.00 -1.0 1.00 -1.0 -1.0 1.00 1.00 -1.0
-1.0 -1.0 -1.0 1.00 1.00 1.00 1.00
123
The initial method for finding structurally
equivalent positions was CONCOR, the CONvergence
of iterated CORrelations.
Concor iteration 3
1.00 1.00 1.00 1.00 1.00 1.00 1.00 -1.0 -1.0 -1.0
-1.0 -1.0 -1.0 -1.0 1.00 1.00 1.00 1.00 1.00 1.00
1.00 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0 1.00 1.00
1.00 1.00 1.00 1.00 1.00 -1.0 -1.0 -1.0 -1.0 -1.0
-1.0 -1.0 1.00 1.00 1.00 1.00 1.00 1.00 1.00 -1.0
-1.0 -1.0 -1.0 -1.0 -1.0 -1.0 1.00 1.00 1.00 1.00
1.00 1.00 1.00 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0
-1.0 1.00 1.00 1.00 1.00 1.00 1.00 1.00 -1.0 -1.0
-1.0 -1.0 -1.0 -1.0 -1.0 1.00 1.00 1.00 1.00 1.00
1.00 1.00 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0
-1.0 -1.0 -1.0 -1.0 -1.0 -1.0 1.00 1.00 1.00 1.00
1.00 1.00 1.00 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0
1.00 1.00 1.00 1.00 1.00 1.00 1.00 -1.0 -1.0 -1.0
-1.0 -1.0 -1.0 -1.0 1.00 1.00 1.00 1.00 1.00 1.00
1.00 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0 1.00 1.00
1.00 1.00 1.00 1.00 1.00 -1.0 -1.0 -1.0 -1.0 -1.0
-1.0 -1.0 1.00 1.00 1.00 1.00 1.00 1.00 1.00 -1.0
-1.0 -1.0 -1.0 -1.0 -1.0 -1.0 1.00 1.00 1.00 1.00
1.00 1.00 1.00 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0
1.00 1.00 1.00 1.00 1.00 1.00 1.00
1 3 4 7 8 9 10 2 5 6 11 12 13 14
124
Repeat the process on the resulting 1-blocks
until you have reached structural equivalent
blocks
Because CONCOR splits every sub-group into two
groups, you get a partition tree that looks
something like this
125
CONCOR example
Consider a simple senate voting network
Network is dense, since every cell has some
score and dynamic the pattern changes over
time. Color by structural equivalence
126
CONCOR example
Consider a simple senate voting network
Network is dense, since every cell has some
score and dynamic the pattern changes over
time. Adjust position to collapse SE positions.
127
CONCOR example
Consider a simple senate voting network
Network is dense, since every cell has some
score and dynamic the pattern changes over
time. And then adjust color, line width, etc.
for clarity. While weve gone some distance with
identifying relevant information from the mass,
how do we account for time?
128
CONCOR example
Repeat at each wave, linking positions over time
129
CONCOR example
130
Automorphic and Regular equivalence are more
difficult to find, and require iteratively
searching over possible class assignments for
sets that have the same graph theoretic patterns.
Usually start with a set of nodes defined as
similar on a number of network measures, then
look within these classes for automorphic
equivalence classes. The classic reference is
REGE (White Reitz 1985), which recursively
defines the degree of equivalence between pairs
and then adjusts for as many iterations as you
specify. A theoretically appealing method for
finding structures that are very similar to
regular equivalence, role equivalence, uses the
triad census. Each node is involved in
(n-1)(n-2)/2 triads, and occupies a particular
position in each of these triads. These
positions are summarized in the following figure
131
Network Sub-Structure Triads
(0)
(1)
(2)
(3)
(4)
(5)
(6)
003
012
102
111D
201
210
300
021D
111U
120D
Intransitive
Transitive
021U
030T
120U
Mixed
021C
030C
120C
132
An Example of the triad census
Type Number of
triads ---------------------------------------
1 - 003 21 ----------------------
----------------- 2 - 012 26
3 - 102 11 4 - 021D
1 5 - 021U 5 6 -
021C 3 7 - 111D
2 8 - 111U 5 9 - 030T
3 10 - 030C 1
11 - 201 1 12 - 120D
1 13 - 120U 1 14 -
120C 1 15 - 210
1 16 - 300
1 --------------------------------------- Sum (2
- 16) 63
133
Triadic Position Census 36 Positions within 16
Directed Triads
Indicates the position.
134
Triadic Position Census 40 Positions within all
mutual ties but two types of relations
135
36 36 10 10 10 10 43 43 43 43 43 43 43 43 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 20 20 41 41 41 41 14 14 14 14
14 14 14 14 9 9 11 11 11 11 12 12 12 12 12 12
12 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 10 10 1 1 1 1 8
8 8 8 8 8 8 8 2 2 10 10 10 10 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 5 5
5 5 1 1 1 1 1 1 1 1
Triad position vectors for the example network,
resulting in 3 positions
136
Correlating each persons triad position vector
with each other persons results in the following
tabl
Write a Comment
User Comments (0)
About PowerShow.com