Network Science
Full course description
Many aspects of everyday life and science can be represented as networks: social networks represent relationship (links) between people (nodes); brain activity can be represented via synapses (links) between neurons (nodes); the street map is formed of roads (links) that connect at intersections (nodes); authors of scientific papers connect to each others in a citation network, with directed links from the paper cited to the paper citing it; communication networks connect routers via physical or logical links; etc. Network analysis plays a significant role in the “big data” analytics because of size, data velocity, or computational complexity.
This course focuses on the study of network structures and dynamic processes on networks using real data from various disciplines, including socio-technological platforms, biology, social science, and economics. Topics cover the analysis and modeling of complex networks, network dynamics, community detection, network resilience and contagion, as well as processing of network structures for machine learning tasks.
Prerequisites
Desired prior knowledge: Introductory knowledge of programming for data analysis, particularly in Python; algorithms; algorithmic complexity.
Prerequisites: Introductory courses in algorithms, data structures, and data analytics.
Recommended reading
"Networks, Crowds, and Markets: Reasoning About a Highly Connected World" by David Easley and Jon Kleinberg.
Additional literature: Graph Theory and Complex Networks: An Introduction by Maarten van Steen