You are on page 1of 29

Measure of metrics

Degree, Eigenvector and Katz Centrality

MA 653: Network Science


Instructor: Ashok Singh Sairam
ashok@iitg.ac.in
Detecting community structure
• Want to calculate a weight wij for every pair i, j of vertices in the
network
• One possible way to calculate weight: the number of node-
independent paths between vertices
• Node-independent path: Two paths are node independent (aka vertex
independent) if they share no nodes other than the starting and ending
vertices
A B A B

MA 653: Network Science 2


Independent paths and connectivity
• Two paths connecting a given pair of vertices are edge independent if
they share no edges
• Two vertex-independent paths are also edge-independent (the
opposite is not true)
• The number of independent paths between a pair of vertices is called
connectivity of the vertices
Ex: Independent paths and connectivity
• Find the number of edge independent and vertex independent paths
between nodes A and B.

A B

MA 653: Network Science 4


Cut set: vertex cut set
• A cut set (or more properly vertex cut set), is a set of vertices whose
removal will disconnect a specified pair of vertices
• This set can be thought as the bottleneck for the connectivity of this specific
pair of nodes
• For example, the node C form cut set of size 1 for the nodes A and B

A C B
Cut set: edge cut set
• An edge cut set, is a set of edges whose removal will disconnect a
specified pair of vertices
• A minimum cut set is the smallest cut set that will disconnect a
specified pair of vertices
• Cut set need not be unique as can be seen from this example

W X

A B

Y Z
Menger’s theorem
• The size of the minimum vertex cut set is equal to the number of
independent paths between the same nodes
• The choice of the vertex is also important W X
• Example: Cut set is 2 for nodes A and B
A B
but removing W and Z will not disconnect,
while removing X and Y will disconnect Y Z

• The same holds true for edges


• The edge version of the theorem is important for the maximum flow
problem
Max-flow/min-cut theorem
• In the general case we have weighted networks
• Minimum edge cut set is a cut set such that the sum of the weights
on the edges has the minimum possible value

• The maximum flow between a given pair of vertices in a network is


equal to the sum of the weights on the edges of the minimum edge
cut set that separates the same two vertices
• Intuitively, the “low” weight edges form bottlenecks that do not allow the
flow between the two vertices to increase.
Review
1. Find the diameter of the network
2. Write down the incidence matrix of the network.
• It is a n x m matrix B, where n and m are the
number of vertices and edges, respectively s.t.

3. A simple network consists of n nodes in a single


component. What is the maximum possible
number of edges it could have? What is the
minimum number of edges it could have?

MA 653: Network Science 9


Centrality
• Centrality is a widely studied concept
• What is centrality?
• Quantification of the intuitive notion of the importance of a node in a
network
• The most important/central nodes in a network
• Centrality is generally computed per vertex
• We will refer to the centrality of a vertex i as xi or ci

MA 653: Network Science 10


Degree Centrality
• What makes a node central in a
network?
• Lots of one-hop connections from the
node
• degree centrality
• Lots of one-hop connections from the
node relative to the size of the graph
• Normalized degree centrality

MA 653: Network Science 11


Degree centrality
• The simplest centrality metric is degree centrality
• It is simply the degree of node
• For a directed network we have in- and out-degree centralities
• Each one appropriate for different circumstances
• Simple, yet illuminating measure
• Social network  nodes of high degree might be thought of as one with
access to more information sources, with more prestige, etc.
• Citation network  a paper with more citations (in-degree centrality) might
be roughly thought of as influential

12
Another example
• Degree centrality, however, can
be deceiving, because it is a
purely local measure

MA 653: Network Science 13


Eigenvector centrality
• Degree centrality assumes all neighbors are equal  Only the number
of neighbors matter
• However, in many circumstances the importance of a vertex increases if it is
connected to important nodes  eigenvector centrality
• Assume initially everyone has score xi=1 and we update its centrality
using the sum of the scores/centralities of his neighbor’s
xi  k 1 x j
nodes j that are
k-1 is the constant of probability
neighbours of i

14
Eigenvector centrality
• Making use of the adjacency matrix we can rewrite the equation as

• In terms of matrix notation, we can rewrite as

• where x is the eigenvector with elements equal to the centrality


scores
• In other words, x is the eigenvector of the adjacency matrix
• There are n different eigenvectors of the n x n adjacency matrix. Which one to
use?

15
Finding eigenvalues and eigenvectors

• Step 1:
• Step 2:

• Step 3: Solve for , are the eigenvalues


• Step 4: Consider in ,
• Step 5: Solve ,

• Step 6: Similarly solve for


MA 653: Network Science 16
Perron Frobenius Theorem
• We will use the following result
Perron Frobenius theorem: A real square matrix with positive entries
has a unique largest real eigenvalue and that the corresponding
eigenvector has strictly positive components
• This means, for a matrix like adjacency matrix with all elements non-
negative, there is only one eigenvector that has all elements non-
negative
• The leading eigenvector
• Thus the value of k must be equal to the largest eigenvalue

MA 653: Network Science 17


Computing Eigen vector centrality
• Power iteration is one of many eigenvalue algorithms that may be used to find
this dominant eigenvector.
• Find x(1). What does it represent?

=?

Compute x(2), x(3) and so on


MA 653: Network Science 18
……………

Stop when the eigenvector


value converges

MA 653: Network Science 19


Steps to compute Eigenvector centrality
• Start with an initial centrality vector x.
• Multiply the adjacency matrix A by x, x(1).
• Normalize the resulting vector.
• Repeat steps 2 and 3 until x converges to the dominant eigenvector

MA 653: Network Science 20


Eigenvector centrality for directed networks
• For directed graphs, the adjacency matrix is general asymmetric
• Thus, we can compute the Eigenvector centrality based on the out-
degree and the in-degree
• A node is considered to be more important if it has out-going links to nodes
that in turn have a larger out-degree (i.e., more out-going links)
• A node is considered to have a higher “prestige”, if it has in-coming links from
nodes that themselves have a larger in-degree (i.e., more in-coming links)
• We get two leading eigenvectors
• “left” eigenvector corresponds to out-edges
• “right” eigenvector corresponds to in-edges
• Which one to use?
21
Eigenvector centrality for directed networks
• In most cases, we use the right eigenvector
• The centrality in most of the cases is conferred by other vertices pointing
towards you

• where x is the right leading eigenvector


• Justification: Centrality is bestowed by other nodes pointing towards
you
• Ex: On WWW, a page is considered important if other pages point towards it
• One can set up a page that points to thousand other pages, but that does not make the
page important

22
Issues: Eigenvector centrality for directed
networks
• What is the eigenvector centrality of A ?
• Of B ?
• Only vertices that are in a strongly connected
component of two or more vertices, or the out-
component of a strongly connected component
can have non-zero eigenvector centrality.

• In acyclic graphs, such as citation network, there are no strongly connected


components
• eigenvector centrality is 0, that is completely useless

23
Katz centrality
• Recall that the eigenvector centrality is a weighted degree obtained
from the leading eigenvector of A

• Thoughts on how to modify the above formula for directed networks?


𝑥𝑖 =𝑘
−1
∑ 𝐴𝑖𝑗 𝑥 𝑗 + 𝛽
𝑗
where β is a constant initial weight given to each vertex so that its out
degree matters.

MA 653: Network Science 24


Katz centrality
• In order to overcome the problem of eigenvector centrality in
directed networks we can tweak the and give each vertex a small
amount of centrality “for free”

• The first term is the normal eigenvector centrality and the second is the
“free” part.
• 1 is the uniform vector (1, 1, 1, …)
• By setting β=1 we have:
• Katz centrality

25
Choice of α
• α governs the balance between the eigenvector centrality
contribution and the constant term
• For small α the Katz centrality is dominated by the constant factor and
hence all vertices have a centrality of 1 (given β=1)
• For large values of α Katz centrality diverges
• As α increases the determinant first crosses zero when α=1/κ1,
where κ1 is the largest eigenvalue of A
• Hence α should be less than 1/κ1

26
Extension of Katz centrality
• A possible extension of the above definition is to assign different
constant centrality to different vertices

xi    Aij x j   i  x  ( I  A)  


j

• βi is some intrinsic, non-network contribution to the centrality for


each vertex
• E.g., in a social network the importance of an individual might depend on
non-network factors as well, such as age or income etc.

27
Summary
• Degree centrality: Lots of one-hop connections
• Eigenvector centrality: Lots of one-hop connections to high centrality
vertices
• Katz centrality: Lots of one-hop connections to high out-degree
vertices
• When is it appropriate to use degree centrality?
• When is it appropriate to use eigenvector centrality?
• When is it appropriate to use katz centrality?

MA 653: Network Science 28


Review
• Consider a connected k-regular undirected network (every node has
degree k and there is only one component)
• Show that the uniform vector 1=(1, 1, 1, …) is an eigenvector of the adjacency
matrix with eigenvalue k.
• Find the Katz centralities of all nodes in the network as a function of k.

MA 653: Network Science 29

You might also like