TSKS11 Networks: Models, Algorithms and Applications
TSKS11 Networks: models, algorithms and applications is an
inter-disciplinary course on network science. Network science has
applications in the analysis of, for example, social networks,
information networks, computer/communication networks and biological
- Models and representations of networks, adjacency matrix, degree distribution, modularity, Laplacian
- Weighted and signed networks, structural balance ("friends and foes"), homophily, betweenness
- Centrality metrics: "who is most influential" (Google PageRank, Katz, hub/authority, closeness)
- Algorithms for network partitioning and detection of communities
- Network models, random (Poisson) networks, scale-free networks, degree correlations
- Power laws, growth models, information cascades and viral phenomena
- Network formation and growth, preferential attachment, percolation
- World-is-small phenomena, searchability and reachability ("six-degrees-of-separation")
- Diffusion, random walks and cascades on networks
- Collaborative filtering on bipartite graphs (recommendation system)
The course consists of a series of lectures, tutorials, and a number of hands-on computer sessions. In these sessions we will:
- Analyze and visualize large networks using software tools, especially Gephi and SNAP. We will be using synthetic data and real data from social networks, among others SNAP datasets, and the DBLP database. The focus is on the interpretation and understanding of the results.
- Implement and experiment with some algorithms for network analysis, specifically centrality metric (incl. Google PageRank) computation, and network partitioning. The purpose is to obtain a deeper understanding for how these algorithms work.
- Implement a recommendation system that uses collaborative filtering to suggest movies to viewers based on grades given by other viewers (similar to what is being used by services such as NetFlix). We will train and evaluate the performance of this system using real data from the "Movielens" project, consisting of millions of grades set by real (but anonymized) users on real movies. The focus is on the ability to implement a basic algorithm, and propose and evaluate improved algorithms.
Documents and files:
- Lecture and tutorial plan.
- ZIP file with lecture slides, answers to the tutorial problems, and supplementary course notes.
- ZIP file with material for the hands-on sessions.
- M. Newman, Networks: An Introduction, Oxford University Press, 2010.
- E. Estrada and P. A. Knight, A First Course in Network Theory, Oxford University Press, 2015.
- V. Latora, V. Nicosia, G. Russo, Complex networks, Cambridge University Press, 2017.
- E. Estrada, The Structure of Complex Networks: Theory and Applications, Oxford University Press, 2011.
- Gephi, software for the analysis of large networks
- Stanford Network Analysis Project (Python/C++ library for analysis of large networks, and data sets)
- Course description in the LiTH study guide
- Short video with information about the course
Erik G. Larsson
Last updated: 2018 10 07 13:04