Your browser is ancient!
Upgrade to a different browser to experience this site.

Network Modeling and Analysis in Python

What You'll Learn

  • Understand the fundamental principles underlying network structures and apply NetworkX to analyze these principles in real-world networks.
  • Describe the practical uses of network generation models, and learn to apply various such models to create synthetic networks.
  • Identify several basic diffusion models and use them to run simulations using real and synthetic networks.
  • Describe the practical uses of the community detection problem and use algorithms to detect and evaluate community structure in real networks.
4 Modules
28 Hours
7 hrs per module (approx.)
Rating

About Network Modeling and Analysis in Python

In “Network Modeling and Analysis in Python,” you will learn how different types of network analysis can be used to make sense of complex systems. You’ll learn how algorithms can be used to better understand disease epidemics, human community structure, and the flow of information on social media. This course combines network theory with empirical analysis of real-world networks using the Python library NetworkX. You’ll learn about community structure in networks as well as several popular algorithms for community detection and applications.

This course introduces a wide range of advanced network models. You’ll study random network generation models and how they can be used to create realistic graphs and explain how networks function. You’ll also learn about models that explain diffusion and the spread of epidemics in networks, such as the SI, SIS, SIR, independent cascade, and linear threshold models.

This is the third course in “More Applied Data Science with Python,” a four-course series focused on helping you apply advanced data science techniques using Python. It is recommended that all learners complete the Applied Data Science with Python specialization prior to beginning this course.

Skills You'll Gain

  • Data Analysis
  • Probability Distribution
  • Python (Programming Language)

What You'll Earn

Certificate of Completion:
Certificates of completion acknowledge knowledge acquired upon completion of a non-credit course or program.
Experience Type
100% Online
Format
Self-Paced
Subject
  • Data Science
  • Technology
Platform
Coursera
Welcome Message

Welcome to Network Modeling and Analysis in Python, a course focused on understanding and modeling complex networks. Learners analyze real-world network data, explore community structure, generative models, and diffusion processes, and identify influential nodes using Python tools.
This abbreviated syllabus description was created with the help of AI tools and reviewed by staff. The full syllabus is available to those who enroll in the course.

Course Schedule

Module 1: Connectivity in Networks

  • Video: Welcome to Network Modeling and Analysis in Python
  • Reading: MADSwPy Certificate Roadmap
  • Reading: Course Syllabus
  • Reading: Introduction to Jupyter Notebook
  • Discussion Prompt: Meet Other Learners
  • Reading: Help Us Learn About You
  • Video: Homophily and Assortativity
  • Video: Structural Holes
  • Video: K-core Decomposition
  • Graded Assignment: Knowledge Check: Connectivity in Networks
  • Video: Demo: Connectivity NetworkX Tutorial
  • Ungraded Lab: Module 1 NetworkX Tutorial
  • Reading: Optional Readings and Resources
  • Reading: Review of Key Concept
  • Reading: Network Definitions and Vocabulary
  • Reading: Network Connectivity
  • Reading: Influence Measure and Network Centralization
  • Reading: Network Evolution
  • Graded Assignment: Optional-Review of Key Concepts
  • Graded: Module 1 Assignment
  • Graded: Module 1 Programming Assignment: Connectivity in Networks

Module 2: Community Structure in Networks

  • Video: What is Community Detection?
  • Video: Modularity
  • Graded Assignment: Knowledge Check: Introduction to Community Detection
  • Video: The Girvan-Newman Algorithm
  • Video: Agglomerative Hierarchical Clustering
  • Video: Label Propagation with Asynchronous Updating
  • Video: Label Propagation with Synchronous Updating
  • Graded Assignment: Knowledge Check: Community Detection Algorithms
  • Role Play: Communities in Networks
  • Video: Assessing the Quality of a Partition
  • Graded Assignment: Knowledge Check: Assessment and Applications
  • Video: Demo: Community Structure NetworkX Tutorial
  • Ungraded Lab: NetworkX Tutorial 2
  • Reading: Optional Readings and Resources
  • Graded: Module 2 Assignment
  • Graded: Module 2 Programming Assignment: Community Structure in Networks

Module 3: Network Generative Models

  • Video: Introduction to Network Generative Models
  • Video: The Erdős–Rényi Model
  • Graded Assignment: Knowledge Check: The Erdős–Rényi Model
  • Video: The Stochastic Block Model
  • Video: The Configuration Model
  • Graded Assignment: Knowledge Check: The Stochastic Block Model and The Configuration Model
  • Video: Demo: Generative Models NetworkX Tutorial
  • Ungraded Lab: Module 3 NetworkX Tutorial
  • Reading: Optional Readings and Resources
  • Graded: Module 3 Assignment
  • Graded: Module 3 Programming Assignment

Module 4: Models of Diffusion in Networks

  • Video: Introduction to Diffusion in Networks
  • Video: The SIS Model
  • Video: The SIR Model
  • Graded Assignment: Knowledge check: Basic Models of Diffusion in Networks (Part 1)
  • Video: The Independent Cascade Model
  • Video: The Linear Threshold Model (Part 1)
  • Video: The Linear Threshold Model (Part 2)
  • Graded Assignment: Knowledge Check: Basic Models of Diffusion in Networks (Part 2)
  • Reading: Honduras Social Networks
  • Video: Introduction to the Influence Maximization Problem
  • Video: Properties of the Influence Maximization Problem
  • Video: Greedy Algorithm for the Influence Maximization Problem
  • Video: Heuristics and Nomination Strategy
  • Video: Applications of Community Detection
  • Graded Assignment: Knowledge Check: The Influence Maximization Problem
  • Video: Demo: Diffusion NetworkX Tutorial
  • Ungraded Lab: Module 4 NetworkX Tutorial
  • Reading: Optional Readings and Resources
  • Graded: Module 4 Assignment
  • Graded: Module 4 Programming Assignment: Models of Diffusion on Networks
Grading Policy

There are four graded assignments in this course that make up 28% of your final grade. There are also four programming assignments that make up 72% of your final grade.

Course content developed by U-M faculty and managed by the university. Faculty titles and affiliations are updated periodically.

Advanced Level

Learners will benefit from a background in linear algebra, and it is recommended that they proceed through this series in the suggested order.

Enrollment Options

Individuals

This experience is available to individual learners on the following platforms:

U-M Community

Students, faculty, staff, and alumni of the University of Michigan get free access.

Organizations

Special pricing and tailored programming bundles available for organizational partners.

What are Coursera and edX?

Michigan Online learning experiences may be hosted on one or more learning platforms. Platform features may vary, including payment models, social communities, and learner support.

Coursera

  • Hosts online courses, series, and Teach-Outs from Michigan Online
  • Enroll and preview courses anytime
  • May earn a non-credit certificate from Coursera

edX

  • Hosts online courses and series from Michigan Online
  • Many offer a free (limited) audit option
  • May earn a non-credit certificate from edX

For more information visit the What are Coursera and edX? FAQ section

Reviews and Ratings

1.0

2 Ratings from Coursera

Michigan Online
For You

Sign up for a Michigan Online account to customize your experience!