The Katz Centrality
Explore Katz centrality to address limitations of eigenvector centrality in directed graphs. Learn how it assigns baseline centrality to nodes, preventing zero propagation issues, and apply it with NetworkX in Python for more accurate network importance measures.
We'll cover the following...
A problem with eigenvector centrality
Eigenvector centrality has a nice intuition of grabbing the importance from the neighbors of a node in order to determine its importance. However, for directed graphs, we can end up with a problem when we have nodes with an in-degree equal to zero.
In the case of an in-degree of zero, the importance of that node is going to be zero (or very close to it). Therefore, it will pass a zero value for its neighbors, making their eigenvector centrality become way smaller. If a node receives a connection only for a node with zero in-degree, then this node will also be zeroed.
This phenomenon is called zero-propagation, and it is something we want to avoid. Let’s look at an example of this:
Here’s how we can calculate the eigenvector centrality for this network:
Notice how the values for nodes