Announcements

Course Info

Welcome to CS91.3. This is a research methodology course that focuses on developing research skills in Computer Science (CS) & Brain-Computer Interfaces (BCI). This course will introduce machine learning and deep learning algorithms and their implementation in CS and BCI interdisciplinary research. We investigate the empirical research methods for their applicability and suitability to a research problem. This course will focus on a subset of topics including: classification, clustering, dimensionality reduction, transfer learning, regression, and time series analysis. This is a project-oriented course intended to walk through the steps needed to conduct publishable research as an undergraduate researcher. The related research methods and frameworks will be demonstrated as research projects targeting CS conferences.

Please be aware that many elements on the course website will change throughout the semester, including the course schedule. It is your responsibility to review the course website periodically for updates.

We value any and all student feedback. Please be constructive in any comments so that we can adjust the course as best possible. This semester, we are using EdSTEM to manage course discussions and announcements.

Meeting Times:

Section Days Time Room Instructor

1

MWF

11:30 AM - 12:20 PM

SCI 199, or Zoom

Xiaodong Qu

Lab Day Time Room Instructor

A

Thur

1:05 PM - 2:35 PM

SCI 240, or Zoom

Xiaodong Qu

B

Thur

2:45 PM - 4:15 PM

SCI 240, or Zoom

Xiaodong Qu

Support Staff & Office Hours

Name Office Hours Location

Xiaodong Qu

Monday 2:00 PM - 4:00 PM (and by appt)

SCI 252, or Zoom

Course Goals

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

  • Understand the basics research methodologies in CS and BCI, and the strengths and weakness of each of these methodologies.

  • Given a top CS conference, by reading the recent best posters (two pages), know what a good publishable research poster looks like, and know how to write such a poster, and how much time it may take, apply the knowledge and skills to the mid-term project.

  • Given a top CS conference, by reading the recent best papers (ten pages), and reviewers feedback, know what a good publishable research paper looks like, and know how to write such a paper, and how much time it may take, apply the knowledge and skills to the final project.

  • Given a timeline, know how to set up your own research goals, long-term and short-term, using time management skills, confirm it is doable before a certain deadline.

  • Given a Computer Science (CS) Conference or Journal, know how to evaluate it, and figure out whether it is a good match with your current research goals.

  • Understand roles of authors and reviewers. Know how to review research articles in these domains.

Schedule

WEEK DAY ANNOUNCEMENTS TOPIC & READING NOTES & LABS
1

Jan 17

Martin Luther King Jr. (MLK) Day Holiday.

Jan 19

 

Course Introduction

Notes
Lab 1: Review a Poster

Jan 21

 
2

Jan 24

 

Research Background

  • Literature Review
  • ML and BCI example papers
  • Your Understanding of the field

Notes
Lab 2: Review Papers

Jan 26

 

Jan 28

 
3

Jan 31

 

Research Problems

  • Title, Keywords, Abstract and Algorithms
  • Your Research Problems
  • Your Research Problems for mid-term
  • Your Research Problems for final

Notes
Lab 3: Research Problems

Feb 02

 

Feb 04

Drop/Add Ends

4

Feb 07

 

Research Data

  • Your Research Datasets
  • Linear Discriminant Analysis (LDA)
  • Support Vector Machine (SVM)
  • Example Papers

Notes
Lab 4: Research Data

Feb 09

 

Feb 11

 
5

Feb 14

 

Research Design

  • Research Design
  • Example Papers
  • Your Research Design
  • Classification
  • Clustering
  • Supervised Learning
  • Unsupervised Learning
  • Ensemble methods
  • Random Forest
  • Paper Formatting

Notes
Lab 5: Research Design

Feb 16

 

Feb 18

 
6

Feb 21

 

Research Analysis

  • Example Papers
  • Machine Learning
  • Deep Learning
  • Statistics
  • Your Research Analysis
  • Your paper section, Methods

Notes
Lab 6: Research Analysis

Feb 23

 

Feb 25

 
7

Feb 28

 

Research Write-Up

  • Results
  • Discussion
  • Future Work
  • Limitation
  • Conclusion

Notes
Lab 7: Double-Blind Review

Mar 02

Mid-Term Due

Mar 04

 
 

Mar 07

Spring Break

Mar 09

Mar 11

8

Mar 14

 

Review Process

  • Review Guidelines
  • Review Decisions
  • Authors Response
  • Improvement based on Reviews

Notes
Lab 8: Authors Response

Mar 16

 

Mar 18

 
9

Mar 21

 

CNN

  • Introduction
  • Code
  • Example Papers

Notes
Lab 9: What is CNN

Mar 23

 

Mar 25

 
10

Mar 28

 

CNN in your Research

  • Algorithms
  • Results
  • Example Papers

Notes
Lab 10: CNN in your Paper

Mar 30

 

Apr 01

 
11

Apr 04

 

RNN

  • Algorithms
  • Example Papers
  • Advantage

Notes
Lab 11: What is RNN

Apr 06

 

Apr 08

 
12

Apr 11

 

RNN in your Research

  • Best Practices
  • Resources
  • Example Papers

Notes
Lab 12: Five Peer Reviews

Apr 13

 

Apr 15

 
13

Apr 18

 

Peer Review Abstract

  • 800 Words
  • Figures, Tables and Code
  • References
  • Overleaf and LaTeX

Notes
Lab 13: Authors Response

Apr 20

 

Apr 22

 
14

Apr 25

 

Submission to the Conferences

  • Strength and Weakness
  • Time Management
  • Learning beyond this Course

Notes
Lab 14: External Review Results

Apr 27

 

Apr 29

 
 

May 10

Final Project, Due 23:59 EST

Grading Policies

Grades will be weighted as follows:

35%

Lab assignments

30%

Midterm Project

30%

Final Project

5%

Class Participation

Lab Policy

This course features weekly lab assignments which are the largest component of your course grade. Lab attendance is required by all students. You must attend the lab session for which you are enrolled.

Lab assignments will typically be released on Wednesday and will be due by midnight on the following Tuesday. You are strongly encouraged to start early and to attend the 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 Tuesdays 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 College’s medical excuse policy states that you must be seen and diagnosed by the Worth 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 Student Disability Services (via email at studentdisabilityservices@swarthmore.edu) 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.

For details about the accommodations process, visit the Student Disability Services website.

To receive an accommodation for a course activity, you must have an official accommodation letter from the Office of Student Disability Services 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 Student Disability Services.

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

EdSTEM

This semester, we are using EdSTEM to manage course discussions and announcements.