Announcements

Course Info

This course (CSCI 4364 (6364) Machine Learning) provides a comprehensive introduction to the algorithms and frameworks that enable computers to learn from data and perform specific tasks more effectively. We will begin by exploring supervised learning, focusing on prediction tasks. As the course progresses, we’ll delve into other key areas of machine learning, including unsupervised learning, semi-supervised learning, and deep learning. Along the way, you’ll gain a deep understanding of general machine learning methodologies, the frameworks used to analyze and validate algorithms, and the theoretical foundations underpinning these techniques.

Please note that the course website is a dynamic resource. Many elements, including the course schedule, may be updated throughout the semester as we adapt to the learning needs and progress of the class.

Please make it a habit to regularly check the course website for updates. Staying informed is key to your success in this course.

We highly value your feedback and encourage you to share your thoughts throughout the semester. Constructive comments are especially appreciated, as they help us make meaningful adjustments to the course. This semester, we will use a shared Google folder to manage all course discussions and announcements, ensuring everyone stays connected and informed.

Meeting Times:

Section Days Time Room Instructor

1

Friday

09:30 AM - 12:00 PM

PHIL B152

Xiaodong Qu

Support Staff & Office Hours

Name Office Hours Location

Xiaodong Qu

TBD or By Appointment

SEH 4640 or Zoom

Course Goals

By the end of the course, we hope that you will have developed the following skills:

  • several machine learning frameworks, including supervised learning, unsupervised learning, and hybrid approaches

  • various algorithms for the frameworks we explore, including the variation in data representation

  • how to choose and apply an appropriate framework and algorithm for a new problem

  • practical considerations for data, including data preprocessing, feature engineering, and resource constraints

  • the core concept of generalization, and the associated theoretical tools for inspecting both our data and models

  • theoretical and empirical evaluation of performance

Grading Policies

Grades will be weighted as follows:

42%

Lab assignments

25%

Midterm Project

25%

Final Project

8%

Class Participation

Schedule

WEEK DAY TOPIC & READING NOTES & LABS HW
1

01/16

 

Course Introduction

Notes 1
Lab 1

2

01/23

 

Supervised Learning (Linear Models)

  • Core concepts and assumptions
  • Linear models
  • Linear Discriminant Analysis (LDA)
  • Support Vector Machines (SVM)
  • Linear decision boundaries
  • Example datasets

Notes 2
Lab 2

3

01/30

 

Supervised Learning (Nonlinear Models)

  • Local and tree-based methods
  • Nearest Neighbors
  • Decision Trees
  • Ensemble methods

Notes 3
Lab 3

4

02/06

 

Unsupervised Learning (Clustering)

  • Core concepts
  • Clustering methods
  • K-means
  • Hierarchical Clustering
  • DBSCAN

Notes 4
Lab 4

5

02/13

 

Unsupervised Learning (More)

  • Signal decomposition
  • Principal Component Analysis (PCA)
  • Independent Component Analysis (ICA)
  • Outlier detection

Notes 5
Lab 5

6

02/20

 

Midterm Project

  • Introduction to ML Research
  • What ML research looks like
  • Reading ML papers
  • Example ML studies
  • Research questions
  • Project abstract (≈800 words)

Notes 6
Lab 6

7

02/27

Mid-Term Due

Deep Learning (Foundations)

  • Neural network basics
  • Backpropagation (conceptual)
  • Convolutional Neural Networks (CNNs)

Notes 7
Lab 6

8

03/06

 

Deep Learning (CNNs)

  • CNN architectures
  • Training and regularization
  • Applications and examples

Notes 8
Lab 7

 

03/13

Spring Break (no classes)

9

03/20

 

Deep Learning (RNNs)

  • Recurrent neural networks (RNNs) overview
  • Sequence modeling
  • Long Short-Term Memory (LSTM)

Notes 9
Lab 8

10

03/27

 

Deep Learning (LSTMs)

  • LSTM architecture and intuition
  • Training and limitations
  • Comparison with CNNs
  • Final paper: first draft due

Notes 10
Lab 8

11

04/03

 

Deep Learning (Transformers)

  • Transformer overview
  • Self-attention (intuition)
  • Model components
  • Final paper: peer review (Draft 1)

Notes 11
Lab 9

12

04/10

 

Deep Learning (Transformers)

  • Encoder–decoder models
  • Training and scaling
  • Applications and examples

Notes 12
Lab 9

13

04/17

 

Deep Learning (Model Comparison)

  • CNNs vs LSTMs vs Transformers
  • Strengths and limitations
  • Use cases
  • Final paper: peer review (Draft 2)

Notes 13
Lab 10

14

04/24

 

Reinforcement Learning (Overview)

  • Reinforcement learning basics
  • Example systems (AlphaGo, AlphaFold)
  • Applications and future directions
  • Final paper: due

Notes 14
Lab 10

 

05/06

Final Project Due 23:59 EST

Inclusion Statement

Diversity, inclusion, and a mutual sense of belonging are all core values of this course. All participants in this course must be treated with respect by other members of the GW CS community. We must all strive, students and faculty both, to never make anyone feel unwelcome or unsafe in any way. Violations of these principles are viewed as unacceptable, and we take them very seriously. If you ever feel discriminated against or otherwise excluded, no matter how minor the offense, we encourage you to reach out to Xiaodong, or one of the college deans.

Lab Policy

This course features weekly lab assignments which are the largest component of your course grade.

Lab assignments are typically released on Fridays and are due the following Thursday. You are strongly encouraged to start early and to use Office Hours for possible questions.

You will submit your assignments electronically using emails. You may submit your assignment multiple times, and a history of previous submissions will be saved. You are encouraged to submit your work regularly.

Late Policy

Labs will typically be due Thursdays before midnight. Late submissions will not be accepted. Even if you do not fully complete a lab assignment you should submit what you have done to receive partial credit.

If you feel that you need an extension on an assignment or that you are unable to attend class for two or more meetings due to a medical condition (e.g., extended illness, concussion, hospitalization) or other emergency, you must contact the dean’s office and your instructors. Faculty will coordinate with the deans to determine and provide the appropriate accommodations. Note that for illnesses, the GW Excuse Note Policy states that you must be seen and diagnosed by the Student Health Center if you would like them to contact your class dean with corroborating medical information.

Academic Integrity

Academic honesty is required in all your work. Under no circumstances may you hand in work done with or by someone else under your own name. Discussing ideas and approaches to problems with others on a general level is encouraged, but you should never share your solutions with anyone else nor allow others to share solutions with you. You may not examine solutions belonging to someone else, nor may you let anyone else look at or make a copy of your solutions. This includes, but is not limited to, obtaining solutions from students who previously took the course or solutions that can be found online. You may not share information about your solution in such a manner that a student could reconstruct your solution in a meaningful way (such as by dictation, providing a detailed outline, or discussing specific aspects of the solution). You may not share your solutions even after the due date of the assignment.

In your solutions, you are permitted to include material which was distributed in class, material which is found in the course textbook, and material developed by or with an assigned partner. In these cases, you should always include detailed comments indicating on which parts of the assignment you received help and what your sources were.

When working on quizzes, exams, or similar assessments, you are not permitted to communicate with anyone about the exam during the entire examination period (even if you have already submitted your work). You are not permitted to use any resources to complete the exam other than those explicitly permitted by course policy. (For instance, you may not look at the course website during the exam unless explicitly permitted by the instructor when the exam is distributed.)

Failure to abide by these rules constitutes academic dishonesty and will lead to a hearing of the College Judiciary Committee. According to the Faculty Handbook:

Because plagiarism is considered to be so serious a transgression, it is the opinion of the faculty that for the first offense, failure in the course and, as appropriate, suspension for a semester or deprivation of the degree in that year is suitable; for a second offense, the penalty should normally be expulsion.

This policy applies to all course work, including but not limited to code, written solutions (e.g. proofs, analyses, reports, etc.), exams, and so on. This is not meant to be an enumeration of all possible violations; students are responsible for seeking clarification if there is any doubt about the level of permissible communication.

The general ethos of this policy is that actions which shortcut the learning process are forbidden while actions which promote learning are encouraged. Studying lecture materials together, for example, provides an additional avenue for learning and is encouraged. Using a classmate’s solution, however, is prohibited because it avoids the learning process entirely. If you have any questions about what is or is not permissible, please contact your instructor.

Academic Accommodations

If you believe you need accommodations for a disability or a chronic medical condition, please contact Disability Support Services (DSS) at GW to arrange an appointment to discuss your needs. As appropriate, the office will issue students with documented disabilities or medical conditions a formal Accommodations Letter. Since accommodations require early planning and are not retroactive, please contact Student Disability Services as soon as possible.

To receive an accommodation for a course activity, you must have an official accommodation letter from the Disability Support Services (DSS) at GW and you need to meet with course staff to work out the details of your accommodation at least two weeks prior to the activity.

You are also welcome to contact any of the course staff privately to discuss your academic needs. However, all disability-related accommodations must be arranged, in advance, through Disability Support Services (DSS) at GW.

Programming Style

Programming is not a dry mechanical process, but a form of art. Well written code has an aesthetic appeal while poor form can make other programmers and instructors cringe. Programming assignments will be graded based on style and correctness. Good programming practices usually include many of the following principles:

  • A comment at the top of the program that includes:

    • Program authors

    • Date or Dates

    • A brief description of what the program does

  • Concise comments that summarize major sections of your code

  • Meaningful variable and function names

  • Function comments that include:

    1. description of what function does

    2. description of input value(s) (parameter values)

    3. description of return value

  • Well organized code

  • White space or comments to improve legibility

  • Avoidance of large blocks of copy-pasted code