PyCon X


2nd - 5th May 2019

Demystifying Network Science with Python

Prerequisite: Basic knowledge of python. No concepts of Network Science are required to be known beforehand.

Talk Description - Have you ever wondered about the science of evolution of real world networks such as social networks or complex biological ones? Or how are we all socially only 6 connections or less away from each other?Or how networks are an indispensable part of our lives? Lets unravel some intriguing concepts of Network Science using Python.

The aim is to show how we can use python to study networks data and graphs to understand various applications using NetworkX, a library in Python for analyzing networks data and also Matplotlib for visualizing the data. This talk also aims to showcase how these concepts of network science play an essential role in analyzing the spread of certain phenomenon such as hate crime, origin of rumours etc. in social media networks, studying target networks of medicine and drug discovery, identify whether a medicine could be used to treat multiple illnesses by analyzing the regional spread of a medicine in the cellular network, and more so, studying the functioning of our entire human body which is in itself a complex network. Further, this talk will also throw light on knowledge graphs/networks and their increasing role in NLP applications, for extracting and deriving actionable insights, and even providing evidence for worldly relationship triples.

The talk would be mainly divided into the following sections:

  • 1) Introduction to Network Science and Applications in daily Lives

  • 2) Introduction to NetworkX library of Python: Creating Simple networks using it and playing around with various functionalities it provides.

  • 3) Networks and their characteristics: Nodes, Degree of a Node, Hubs, Authorities, Topological factors like Clustering Modularity, Betweenness Centrality, Characteristic Path Length, Degree Distribution. Computing the above properties in Python using NetworkX. Types of Networks such as Small World, Scale Free, and Random networks and using NetworkX for comparison.

  • 4) The Watts and Strogatz Model: Explaining the evolution of a small world network through code in python , Simulations and visualizations in Python. Citing relevance to social networks evolution, biological evolution, NLP.

  • 5)Error and Attack Tolerance of Various Networks: Explaining the vulnerabilities of various networks through a thorough analysis, again using code in python (using networkX), simulations and various Visualizations. Relating it to Disease networks (eg: which nodes should the medicine target to eradicate the disease) and other examples.

  • 6) Using NetworkX to relate the concepts talked about previously to Social media analytics, Knowledge graphs and their use in Natural Language Processing, using relevant examples. Visualizations using Matplotlib.

  • 7) Conclusion: Connecting the dots. Reflections on the things learned so far.

Feedback form:

Do you have some questions on this talk?

New comment