Introduction to Network Analysis (INA)
Course schedule
The lectures start on Feb 16th, 2023 and the labs start on Feb 20th, 2023.
- Lectures: Thursday at 11:15am in PR 22
- Labs (hands-on & consultations):
- Monday at 12:15pm in PR 8
- Monday at 3:15pm in PR 8
- Wednesday at 4:15pm in PR 8
- Thursday at 2:15pm in PR 7 (or 4)
- Office hours: by agreement on Zoom
Every student can attend any labs and consultations.
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 about 25 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 such as Machine Learning with Graphs (see network courses design).
Except for good programming skills in some general purpose language (preferably Python), 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 two 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 group course project. Students can choose the project topic on their own or select one of the suggested topics. Projects must be done in groups of three or four students, whereas other group sizes will be allowed only in exceptional cases.
The final exam will be an open-book written exam for which you register in StudIS, while students can also ask for an oral exam. Students must score at least 50% on the exam to pass the course. The schedule of the exams is shown below.
- Jun 7th, 2023 at 12:00pm in PR 22
- Jun 29th, 2023 at 12:00pm in PR 22
- Sep 4th, 2023 at 12:00pm in PR 22
The course grade is based 25% on two homeworks (12.5% each), 25% on the course project and 50% on the final exam. Additional points may be awarded based on course challenges, participation, commitment etc.
Assignments & submission
All course assignments will be out and due according to course syllabus, and must be submitted before Friday at 11:59pm.
Students can prepare their assignments in either English or Slovene. Each assignment must be submitted to Gradescope (entry code G2JD8Y) and eUcilnica (using options below), and must include assignment cover sheet with signed honor code! An assignment is considered submitted only when both 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).
- Menczer, F., Fortunato, S. & Davis, C.A., A First Course in Network Science (Cambridge University Press, 2020).
- 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
Please use Piazza for all course-related disscussions and also personal matters.