Course Syllabus

San José State University
Computer Science Department
CS276 Section 2, Machine Learning on Graphs, Spring 2024

Course and Contact Information

Instructor:

Aikaterini Potika

Office Location:

MacQuarrie Hall 215

Telephone:

408-9245134

Email:

katerina.potika@sjsu.edu

Office Hours:

Mondays-Wednesdays 9:30-10:00 am  and Mondays 12-1 pm or by appointment

Class Days/Time:

Mondays-Wednesdays 1:30-2:45 pm

Classroom:

MacQuarrie Hall 223

Prerequisites:

CS 146 (with a grade of "C-" or better in each); or instructor consent.

Course Format 

Faculty Web Page and MYSJSU Messaging 

Course materials such as syllabus, handouts, notes, assignment instructions, etc. can be found on Canvas Learning Management System course login website at http://sjsu.instructure.com. You are responsible for regularly checking with the messaging system through MySJSU at http://my.sjsu.edu (or other communication systems as indicated by the instructor) to learn of any updates.

Course Description 

Graphs are a powerful way to model networks. Networks contain a plethora of valuable information about the underlying data of various scientific fields. Students are introduced to various network analysis and machine learning techniques to help them extract, analyze, and visualize networks. 

Course Learning Outcomes (CLO)

Upon successful completion of this course, students will be able to:

  • CLO1 Select techniques for analyzing complex networks. 
  • CLO2 Recognize and compute network properties and features, like node centralities, similarities, graphlets, and graph kernels.
  • CLO3 Integrate machine learning techniques, like clustering and classification, for graph problems.
  • CLO4 Create and use deep learning techniques for graph, node, and edge problems.

Required Texts/Readings 

Textbooks recommended

Graph Representation Learning, by William L. Hamilton

Networks, Crowds, and Markets: Reasoning About a Highly Connected World, by David Easley and Jon Kleinberg, Cambridge University Press, ISBN-13 978-0521195331

Network Science by Albert-László Barabási, Cambridge University Press, ISBN-13 978-1107076266

Introduction to Machine Learning with Applications in Information Security by By Mark Stamp, 2nd edition, Chapman & Hall, ISBN-13 978-1032204925

Deep Learning,  Ian Goodfellow, Yoshua Bengio, Aaron Courville, MIT press, ISBN-13 978-0262035613

Knowledge Graphs: Fundamentals, Techniques, and Applications, by Mayank Kejriwal, Craig A. Knoblock and Pedro Szekely, MIT press, ISBN-13 978-0262045094

Online resources: paper, tutorials.

Course Requirements and Assignments

Success in this course is based on the expectation that students will spend, for each unit of credit, a minimum of 45 hours over the length of the course (normally three hours per unit per week) for instruction, preparation/studying, or course-related activities, including but not limited to internships, labs, and clinical practica. Other course structures will have equivalent workload expectations as described in the syllabus.

Final Examination or Evaluation

Faculty members are required to have a culminating activity for their courses, which can include a final examination, a final research paper or project, a final creative work or performance, a final portfolio of work, or other appropriate assignments.

Homework assignments: individual, regularly assigned will include written problem assignments, and perhaps some online exercises. Solutions will not be posted. The homework is a tool for you to learn the material and prepare for the exams. 

Reading assignments: Reading assignments will regularly be for the next class (see schedule). 

Quizzes: Unannounced quizzes may be given during class, each of 10 minutes total. These will generally be problems from the reading assignment and/or the homework.

Class notes and Activities: In-class note-taking of a topic, writing a small report, and hands-on examples of the problems and methods we cover using various datasets. 

Group Project: A programming project of your choice related to the course’s topics in groups of no more than three students. Never use any code you find on the web unless given by me. The penalty for late submission is 5% for every 3 days up to 9 days, after that, no submission will be accepted. The final presentation at the end of the semester is mandatory.

Participation: In-class participation and activities, online polls etc.

Midterm exam: There will be one written Midterm exam during the semester. 

Final exam: One written final exam. 

The exams will contain multiple-choice questions, short answer questions, and questions that require pseudocode and/or computations.

Grading Information

Determination of Grades

Final Grade:

25% Project

10% Homework

10% Participation & Discussions 

15% Quizzes

5% Class notes 

5% Activities 

15% Midterm 

15% Final  

The final exam is comprehensive. 

Grade

Percentage

A plus

96 to 100%

A

93 to 95%

A minus

90 to 92%

B plus

86 to 89 %

B

82 to 85%

B minus

78 to 82%

C plus

74 to 77%

C

70 to 73%

C minus

65 to 69%

D plus

62 to 64%

D

58 to 61%

D minus

55 to 57%

F

<54%

Classroom Protocol

Attendance is highly recommended. Please avoid disturbing the class: turn-off cell phones (or put them on vibrate mode), no text messaging in the class or the exams, no taking pictures and video, and avoid coming late. Without my consent, you may not publicly share or upload material for this course such as exam questions, lecture notes, or solutions.

University Policies

Per University Policy S16-9 (http://www.sjsu.edu/senate/docs/S16-9.pdf), relevant information to all courses, such as academic integrity, accommodations, dropping and adding, consent for recording of class, etc. is available on the Office of Graduate and Undergraduate Programs’ Syllabus Information web page at http://www.sjsu.edu/gup/syllabusinfo/”.

CS276: Machine Learning on graphs, Spring 2024

The schedule is subject to change with fair notice and how the notice will be made available 

Lesson

Date

Topic

Reading/Projects

(part of chapters covered)

1

1/24

Introduction

2

1/29

Motivation and problems

3

1/31

Graph Algorithms for Network Science

4

2/5

Network Science tools, Node Statistics intro

5

2/7

Node statistics

6

2/12

Edge statistics

7

2/14

Graph statistics

8

2/19

Traditional ML approaches basics

9

  2/21

Traditional ML approaches on graphs

10

2/26

Deep Learning basics

11

2/28

Natural Language Processing and graphs

12

3/4

Node, edge, and graph representations

13

3/6

Random walks

Project proposal

14

3/11

Link analysis and web search

15

3/13

Recommender Systems

16

3/18

Community detection

3/20

Midterm

17

3/25

Homophily and CNNs

18

3/27

Graph Neural Networks message passing

4/1-4/5

Break

 

19

4/8

Graph Neural Networks neighborhood aggregation

Project demo

20

4/10

Graph Neural Networks applications

21

4/15

Hierarchical graph representation

22

4/17

Influence maximization

23

4/22

Knowledge graphs 

24

4/24

Knowledge graphs embeddings

Project presentations due

25

4/29

KGs embeddings, IM

 

25

5/1

Random graphs

 

 

 

26

5/6

Graph Generation

Project due

27

5/8

Project presentations

 

28

5/13

Project presentations

 

Final exam

Thursday, May 16, 12:15-2:30 PM