Introduction to Network Analysis (INA)
Course staff
- Lovro Šubelj (instructor)
- Ilya Makarov (head TA)
- Lovro Šubelj (instructor)
Course schedule
The lectures start on Feb 14th, 2022, while other meetings start on Feb 21st, 2022.
- Lectures: Monday at 2:15pm in PR 22 (FRI)
- Labs (hands-on analyses):
- Thursday at 3:15pm in PR 5 (FRI)
- Friday at 10:15am in PR 6 (FRI)
- Friday at 2:15pm online (Zoom)
- Consultations (on coursework):
- Monday at 11:15am in PR 5 (FRI)
- Friday at 12:30pm online (Zoom)
- Office hours: by agreement (Piazza)
Every student can attend any labs or consultations. All online labs will be recorded.
Outline & objective
Networks or graphs are ubiquitous in everyday life. Examples include online social networks, the Web, terrorist affiliations, LPP bus map, plumbing systems and your brain. Many such real-world networks reveal characteristic patterns of connectedness that are far from regular or random. However, while small networks can be drawn by hand and analyzed by a naked eye, real-world networks require specialized computer algorithms, techniques and models. This led to the emergence of a new scientific field more than 20 years ago denoted network analysis or network science.
The course will first introduce the field of network analysis and highlight the differences between classical graph theory and modern network science. In the main part of the course, students will learn about fundamental concepts and techniques for the analysis of real-world networks including node centralities and equivalence, motifs and graphlets, blockmodeling, community detection, role discovery, link prediction, network modeling, sampling, comparison and visualization. The last part of the course will be devoted to selected practical applications of network analysis in fraud detection, software engineering, information science and other.
The objective of the course is to present a broad spectrum of network analysis concepts and techniques, clarify their theoretical foundations and demonstrate their practical applicability. The lectures will give theoretical discussion on network concepts and present efficient algorithms and techniques for their analysis, while students will work on practical examples of applying network analysis within labs and their coursework. The topics covered were selected thus to be suitable for a wide range of students and to serve as an introduction to more advanced network analysis courses like Machine Learning with Graphs and Advanced Topics in Network Science (see network courses design).
Except for good programming skills in some general purpose language (e.g. Python, Java, C/C++), there are no specific prerequisites for the course. However, students will benefit from a solid knowledge in graph theory, probability theory and statistics, and linear algebra.
Coursework & grading
Students are expected to attend and actively participate in lectures and labs.
The ongoing coursework will consist of three homeworks on network analysis concepts and techniques. Each homework will require certain amount of programming, some analytical derivations and some practical applications to real-world problems.
The main part of the coursework will consist of a substantial course project. Students will be encouraged to submit a report describing their course project to the preprint server arXiv.org or make their work publicly available. Students can select the project topic on their own, while the course staff will also prepare a few project topics every student can work on (come to consultations). Projects must be done in groups of three students, whereas other group sizes will be allowed only in exceptional cases.
The final exam will be an online open-book written exam for which you register in StudIS, while students can also apply for an oral exam. Students must score at least 50% on the exam to pass the course. Time and place of written exams is shown below.
- May 31st, 2022 at 11:00am in PR 4 (FRI) or online (Zoom)
- Jun 13th, 2022 at 11:00am in PR 5 (FRI) or online (Zoom)
- Aug 19th, 2022 at 11:00am in PR 5 (FRI) or online (Zoom)
Course grade will be based 30% on homeworks (10% on each homework), 30% on course project (5% on proposal and 25% on report), 35% on final exam and 5% on course challenges, quizzes, participation and commitment.
Assignments & submission
All course assignments will be out and due according to course syllabus, and must be submitted before Friday at 11:59pm. Twice during the semester you can take advantage of late days, which means that an assignment is submitted late. Late days for an assignment that is due this Friday expire next Monday at 11:00am.
Students should prepare their assignments in English. Each assignment must be submitted to Gradescope (entry code 6PDZD3), eUcilnica (using options below) and/or other, and must include assignment cover sheet with signed honor code! An assignment is considered submitted only when all parts have been submitted.
Literature & materials
All course materials will be posted periodically on this web page. The following course books are recommended as background reading.
- Barabási, A.-L., Network Science (Cambridge University Press, 2016).
- Newman, M.E.J., Networks: An Introduction (Oxford University Press, 2010, 2018).
- Coscia, M., The Atlas for the Aspiring Network Scientist (e-print arXiv:210100863v2, 2021).
- Easley, D. & Kleinberg, J., Networks, Crowds, and Markets (Cambridge University Press, 2010).
- de Nooy, W., Mrvar, A. & Batagelj, V., Exploratory Social Network Analysis (Cambridge University Press, 2011).
- Estrada, E. & Knight, P.A., A First Course in Network Theory (Oxford University Press, 2015).
- Barabási, A.-L., Network Science (Cambridge University Press, 2016).
Course discussions