Course Syllabus
San José State University
Computer Science Department
CS276 Section 1, Machine Learning on Graphs, Fall 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 1:30-2:30 pm or by appointment |
Class Days/Time: |
Mondays-Wednesdays 10:30-11:45 am |
Classroom: |
MacQuarrie Hall 225 |
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. Class notes 700-900 words.
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:
15% Homework and Activities
10% Participation & Discussions
15% Quizzes
5% Class notes
25% Project
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 videos, and avoid coming late. You may not publicly share or upload material for this course without my consent, 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, Fall 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 |
8/21 |
Introduction |
|
2 |
8/26 |
Motivation and problems |
|
3 |
8/28 |
Graph Algorithms for Network Science |
|
4 |
9/4 |
Network Science tools, Node Statistics intro |
|
5 |
9/9 |
Node statistics |
|
6 |
9/11 |
Edge statistics |
|
7 |
9/16 |
Graph statistics |
9/17 add/drop |
8 |
9/18 |
Traditional ML approaches basics |
|
9 |
9/23 |
Traditional ML approaches on graphs |
|
10 |
9/25 |
Deep Learning basics |
|
11 |
9/30 |
Natural Language Processing and graphs |
|
12 |
10/2 |
Node, edge, and graph representations |
|
13 |
10/7 |
Random walks |
Project proposal |
14 |
10/9 |
Link analysis and web search |
|
15 |
10/14 |
Recommender Systems |
|
10/16 |
Midterm |
||
16 |
10/21 |
Community detection |
|
17 |
10/23 |
Homophily and CNNs |
|
18 |
10/28 |
Graph Neural Networks message passing |
|
19 |
10/30 |
Graph Neural Networks neighborhood aggregation |
|
20 |
11/4 |
Graph Neural Networks applications |
|
21 |
11/6 |
Hierarchical graph representation, GenAI Transformers |
|
22 |
11/13 |
Influence maximization |
Project demo |
23 |
11/18 |
Knowledge graphs embeddings |
|
24 |
11/20 |
GenAI GraphRAG |
Project presentations due |
25 |
11/25 |
Random graphs |
|
26 |
12/2 |
GenAI Graph Generation |
Project due |
27 |
12/4 |
Project presentations |
|
28 |
12/9 |
Project presentations |
|
Final exam Thursday, December 12, 2024⋅9:45am – 12:00pm |