Social and Information Network Analysis
Autumn 2012

Course Information

Meeting Times and Locations

Tuesday & Thursday 9:30AM - 10:45AM in Gates B1

In the first two weeks of the class we will also hold 4 recitation sessions:

Tentative Course Schedule

Important Dates

Out on
Due on
Homework #0
September 24
October 4
Assignment #1
October 11
Reaction paper / Project proposal
October 18
Homework #2
October 25
Homework #3
November 8
Project milestone
November 15 (NO LATE DAYS)
Homework #4
November 29
Project poster presentation
December 10; 12-3pm
Project Report
Monday December 10 at 11:59am (NO LATE DAYS)

See FAQ for information on how to submit assignments and other work.

Course description

World Wide Web, blogging platforms, instant messaging and Facebook can be characterized by the interplay between rich information content, the millions of individuals and organizations who create and use it, and the technology that supports it.

The course will cover recent research on the structure and analysis of such large social and information networks and on models and algorithms that abstract their basic properties. Class will explore how to practically analyze large scale network data and how to reason about it through models for network structure and evolution.

Topics include methods for link analysis and network community detection, diffusion and information propagation on the web, virus outbreak detection in networks, and connections with work in the social sciences and economics.


Students are expected to have the following background:

The recitation sessions in the first weeks of the class will give the overview of the expected background.

Course materials

There is no official text for this course. Notes and reading assignments will be posted periodically on the course web site. The following books are recommended as optional reading:

Course handouts and other reading materials can be downloaded here.


The coursework for the course will consist of:


The idea for the problem sets is to practice some skills that will be required for the project. The homeworks will contain written questions and questions that require some programming. Specifically, we will be working both on mathematical models of networks and analyzing real network data, for example, how to find stable sets in structural balance theory or how to optimally seed the network to maximize the influence. Second, we will also work with network datasets to get a flavor of types of questions one asks in network analysis. For example, using citation data create a small citation network, compute degree distributions, clustering coefficients, node centralities.

Questions: We try very hard to make questions unambiguous, but some ambiguities may remain. Ask (i.e., post a question on Piazza) if confused or state your assumptions explicitly. Reasonable assumptions will be accepted in case of ambiguous questions.

Honor code: We strongly encourage students to form study groups. Students may discuss and work on homework problems in groups. However, each student must write down the solutions independently, and without referring to written notes from the joint session. In other words, each student must understand the solution well enough in order to reconstruct it by him/herself. In addition, each student should write on the problem set the set of people with whom she/he collaborated.

Further, since we occasionally reuse problem set questions from previous years, we expect students not to copy, refer to, or look at the solutions in preparing their answers. It is an honor code violation to intentionally refer to a previous year's solutions. This applies both to the official solutions and to solutions that you or someone else may have written up in a previous year.

Late assignments: Each student will have a total of two late days to use for homeworks, reaction papers and project proposals. One late day expires at the start of every class. (This means that if the assignment is due on Thursday then the first late day expires on the following Tuesday at the start of the class.) Once late days are exhausted, any assignments turned in late will be penalized 50% per late day. However, no assignment will be accepted more than one late day after its due date, and late days cannot be used for the final project writeup.

Assignment submission: To hand in an assignment, write down the date and time of submission, and leave it in the submission cabinet on 1st floor Gates building, near the east entrance. You can find a photo of it here. It is an honor code violation to write down the wrong time.

All homeworks should include the Homework cover sheet (PDF, LATEX).

Regular (non-SCPD) students should submit hard-copies of assignments. Additional materials like source code and plots should be submitted with the homework.

If you are an SCPD student, you should submit all your files via SCPD. Do not forget to include the SCPD cover page as well as the cover sheet (PDF, LATEX).

Regrade policy: We take great care to ensure that grading is fair and consistent. Since we will always use the same grading procedure, any grades you receive are unlikely to change significantly. However, if you feel that your work deserves a regrade, please submit a written request within a week of receiving your grade. In your request, indicate which components of your submission you would like regraded, and prepare a clear and concise argument why you feel we should regrade those components. However, note that we reserve the right to regrade the entire assignment.

For grading questions, please talk to us during office hours. If you want a regrade, drop the homework and the request into the submission box in the Gates B-wing.

Reaction paper / Project proposal

This assignment consists of two parts. The first part is a reaction paper to several published research papers, and the second part is a proposal for the project you want to pursue for this class. Ideally the two parts should be related: your reactions to published papers should inform the project you will work on. Students can (and are strongly encouraged) to work in groups of up to 3 people on the assignment.

Part 1: Reaction paper component. The course is based on material from the last few years. This means that most of it in form of research papers, which raise lot of interesting issues that have yet to be explored. The goal of the reaction paper section is that students familiarize themselves more in depth with the material covered in class, do reading beyond what was covered in class.

Students will pick at least two or three related papers where at least one has been mentioned in class or the book (see course handouts) or any other paper clearly related to course topics (if in doubt check with course staff about the papers you aim to read). Students should carefully read the papers and write a short (approximately 2-3 pages) reaction paper about the content of the chosen papers. You should be thinking beyond what you read, and not just take other people's work for granted. The reaction paper should address the following questions:

Reaction papers should not just be summaries of the papers you read. The last two bullets should form the most substantial part of the document. Answering these questions can be a very good way to explore a potential project topic. The reaction paper should be concluded with a section with a description of some promising further research directions and questions, and how could they be pursued. The reaction paper has to include at least some amount of each of the following two types of content:

In prior versions of the course, the reaction paper has been a very good way to explore a potential project topic.

Some examples of reaction papers:

Part 2: Project proposal. The project proposal component should build on the reaction paper component. The purpose of the reaction paper is to survey the related work and identify what are strengths and weaknesses of the papers and how they may be addressed. The proposal should then focus on what are some promising further research directions and questions: How precisely do you plan to pursue them? What methods/data do you plan to use? The proposal should contain at least some amount of each of the following two types of content:

When writing the proposal you should try to answer the following questions:

Some other points to note:

We strongly encourage you to work in groups of 3 people. It is hard for us to balance the grading based on the group size. This means that projects will be graded about the same regardless of how many people are in the group -- working in groups is strongly encouraged!

Here are some examples of past project proposals:

Class Project

There can be three kinds of class projects:

Ideally, projects will be a mix of the three types of projects outlined above. For some useful project themes, go here. As with the reaction paper, the project should contain at least some amount of mathematical analysis, and some experimentation on real or synthetic data. You can also check previous student project reports.

There are four deliverables (Click the respective deliverable to know more):

You can work in groups of 3 people on the project.

Previous student project reports:

Project Milestone

Project Report

Course staff will use the following guidelines when grading your final project writeups. Keep in mind however, that if there is a good reason why your project doesn't match the rubric below, we will take that into consideration when grading your report. For example, we recognize that purely theoretical or data analysis projects may not fit the rubric below perfectly, and that depending on your project you may want swap the ordering of certain sections. But hopefully all projects can be roughly mapped to the criteria below.

Project Poster Session

The goal of the poster session is to give you a chance to see what your classmates have been working on, so make sure to go around and explore the posters. TAs will walk around and talk to you. At least two TAs will stop by your poster to talk to you.

General info Logistics

Pick up poster boards (20"x30") between 9am and 11:30am on the day of the poster session in the InfoLab Lab (Gates 423, the lab room with glass walls in the middle of Gates A Wing on 4th floor). After 11:30am you will be able to pick up the poster boards from the Packard atrium.

Check out easels starting at 11:30am from the Packard atrium. As these are expensive and we need to return them to the CS department, we'll require an ID card as collateral

Set up posters in any of the black squares on the map. The Packard building managers have requested that we not set up in front of the large pieces of artwork or in front of any major hallways or fire exits. So, consult the map if you are in doubt.

Return easels AND POSTER BOARDS after the poster session from 3:15pm to 3:45pm


The grading will be based:


General course questions should be posted Piazza.

Piazza requires @stanford.edu emaill address to register. If you do not have @stanford.edu address, send us email with your email address and we will register you.

If you need to reach the course staff, you can reach us at cs224w-aut1213-staff@lists.stanford.edu (consists of the TAs and the professor).