Social Networks and Online Markets
Academic year 2021–2022
We are surrounded by networks. The Internet, one of the most advanced artifacts ever created by mankind, is the paradigmatic example of a "network of networks" with unprecedented technological, economical and social ramifications. Online social networks have become a major driving phenomenon on the web since the Internet has expanded as to include users and their social systems in its description and operation. Technological networks such as the cellular phone network or the energy grid support many aspects of our daily life. Moreover, there is a growing number of highly-popular user-centric applications in Internet that rely on social networks for mining and filtering information, for providing recommendations, as well as for ranking of documents and services. In this course we will present the design principles and the main structural properties and theoretical models of online social networks and technological networks, algorithms for data mining in social networks, and the basic network economic issues, with an eye towards the current research issues in the area.
Announcements
The second homework is out; it is due on June 21.
The first homework is out; it is due on May 22.
You can follow the class online, using zoom. For that you need to register; email Aris for details.
Classes start on Monday, February 21.
Remember to register your email; details will be given in the first class.
Topics that we will cover
- Properties of social networks
- Models for social networks
- Community detection
- Spectral techniques for community detection
- Neural-network embeddings
- Graph neural networks
- Cascading behavior in social networks and epidemics
- Influence maximization and viral marketing
- Influence and homophily
- Game theory on networks
- Network traffic
- Selfish routing and price of anarchy
- Auctions
- Algorithmic market design
- Market Equilibria: characterization and computation
- Two-sided markets and sharing economy
- Do two set of homeworks and a light oral exam
- Do a project and a heavier oral exam
- Homework 1 (due: 22/5/2021, 23.59)
- Homework 2 (due: 21/6/2021, 23.59)
Instructors
Aris Anagnostopoulos, Sapienza University of Rome
Stefano Leonardi, Sapienza University of Rome
When and where:
Monday 15.00–17.00, SPV, Via Eudossiana 18, Room 41
Wednesday 13.00–17.00, Via Ariosto 25, Room A3
Office hours
You can use the office hours for any question regarding the class material, general questions on networks, the meaning of life, pretty much anything. Send an email to the instructors for arrangement.
Textbook and references
The main textbook is the book Networks, Crowds, and Markets: Reasoning About a Highly Connected World, by David Easley and Jon Kleinberg.
In addition, we will cover material from various other sources, which we will post online as the course proceeds.
Exam format
There are two main ways to be examined for the course (to be confirmed after the first classes):
Syllabus
Date | Topic | Reading |
February 21 | Introduction to social networks and online markets, Properties of complex networks. | Chapters 1, 2, slides |
February 23 | Properties of complex networks (cont.), Tie strength | Chapters 3.1, 4.1, notes |
February 28 | Affiliation networks, the Erdős–Rényi random-graph model | Chapter 4.3, notes |
March 7 | The Erdős–Rényi random-graph model (cont.), the preferential attachment model | notes |
March 9 | The preferential attachment model (cont.), Epidemics and influence | slides |
March 14 | Influence vs. correlation in social networks | Chapter 8.4 of the book Social Media Mining by R. Zafarani, M. Ali Abbasi, and H. Liu, slides |
March 16 | Models of influence, influcence maximization in social networks | Paper by D. Kempe, J. Kleinberg, and E. Tardos, slides |
March 21 | Community detection and densest subgraph. | Sections 1 and 3 of Moses Charikar's paper |
March 23 | Graph clustering and sparsest cut. | Chapters 1, 2–2.2, 3, 4.2 of Luca Trevisan's notes |
March 28 | Spectral clustering. | Paper by Ulrike von Luxburg |
March 30 | Introduction to NNs and GNNs. | |
April 4 | Lab on graphs in Python | Lab page by Andrea Mastropietro |
April 6 | Lab on GNNs | Lab page by Andrea Mastropietro |
April 11 | Introduction to game theory. | Slides, notes by Vincenzo Bonifaci. |
April 13 | Solution concepts in games. | Slides |
April 20 | Solution concepts in games (cont). | Slides |
April 27 | Solution concepts in games (cont). | Slides on solution concepts |
May 2 | Introduction to congestion games | Slides on congestion games |
May 4 | Efficiency at an Equilibrium | Slides on efficiency at equilibria |
May 9 | Mechanism Design: Single Parameter Environments – Part 1 | Slides on single parameter environments (part 1) |
May 11 | Mechanism Design: Single Parameter Environments – Part 2 | Slides on single parameter environments (part 2) |
May 16 | Mechanism Design: Multi Parameter Environments | Slides on multi parameter environments |
May 18 | Computational Social Choice | Slides on computational social choice |
May 23 | Computational Social Choice – Distortion | Slides on distortion in computational social choice |
May 25 | Improving Distortion via Queries | Slides on improving distortion via queries |
Homeworks
Collaboration policy (read carefully!): You can discuss with other students of the course about the homeworks and the projects. However, you must understand well your solutions and the final writeup must be yours and written in isolation. In addition, even though you may discuss about how you could implement an algorithm, what type of libraries to use, and so on, the final code must be yours. You may also consult the internet for information, as long as it does not reveal the solution. If a question asks you to design and implement an algorithm for a problem, it's fine if you find information about how to resolve a problem with character encoding, for example, but it is not fine if you search for the code or the algorithm for the problem you are being asked. For the homeworks and projects, you can talk with other students of the course about questions on the programming language, libraries, some API issue, and so on, but both the solutions and the programming must be yours. If we find out that you have violated the policy and you have copied in any way you will automatically fail. If you have any doubts about whether something is allowed or not, ask the instructor.