Syllabus đź“–

Table of contents

  1. About
    1. Acknowledgements
    2. Lecture
    3. Discussion
    4. Office Hours
  2. Course Tools
  3. Student Learning Outcomes
  4. Communication
  5. Suggested Reading
  6. Assignments
    1. Project Proposal
    2. Pull Request Days
    3. Status Report & Finalized Proposal
    4. The Final Project
    5. Deadlines and Grace Days
  7. Grades
    1. Regrade Requests
    2. Letter Grades and Incompletes
  8. Academic Dishonesty
  9. Students Requiring Accommodations
  10. Syllabus Changes

About

Welcome to CS 175: Project in Artificial Intelligence!

This course aims to enable students to construct a working artificial intelligence system and evaluate its capabilities, including the impact of knowledge representation on a real-world problem.

In this course offering, collaborating domain specialists from the open source community will highlight use cases that can benefit from the application of machine learning in its understanding of a particular phenomenon. Facilitated by the instructional staff, small student teams will assess the needs and requirements of the problem while developing project proposals. Using best practices from software engineering, students will develop project repositories that demonstrate good modular design with respect to different components of their machine learning pipeline. Documentation, testing, version control, and continuous integration practices ensure that the system is reproducible. Students will present in their results in a Final Showcase to collaborating subject matter experts and the broader community.

Prerequisites: COMPSCI 171 and COMPSCI 178

Acknowledgements

This course is adapted from UC Berkeley’s CS194-080 Full Stack Deep Learning, created by Sergey Karayev, Josh Tobin, and Pieter Abbeel with recent contributions from Charles Frye and Jake Knapp’s The Sprint. The course research workflow is inspired by the 2023 Heliophysics Inovation in Technology and Science Solar Dynamics Observatory (HITS-SDO) SEARCH program coordinated by Subhamoy Chatterjee and Andres Jaramillo-Munoz of Southwest Research Institute. Course logo and artwork was contributed by Naomi Valentin and Jazmine Encarnacion respectively. Finally, this quarter’s research challenge would not be possible without the contributions of the IEEE Image Analysis and Data Fusion Technical Committee (IADFTC) of the Geoscience and Remote Sensing Society (GRSS) who worked with the wider community to put together remote sensing challenges through their annuall Data Fusion contests.

Lecture

Lecture time will introduce main concepts and techniques of machine learning, facilitation of a research design sprint, as well as cover domain knowledge necessary to get started. Consistent attendance is strongly recommended as you will get the opportunity to ask questions, interact with our scientific collaborator, and participate in group discussions.

Slides will be available online after each lecture with some latency to encourage attendance.

Discussion

There are two discussions:

  • Discussion A1: M 12-12:50PM ICS 180
  • Discussion A2: M 12-12:50PM ICS 180

Discussion sessions are focused on implementation and practice with tooling via assignments and troubleshooting specifics with respect to your project implementation.

Office Hours

See the Calendar tab of the course website for the most up to date schedule and instructions.

Office hours are a great opportunity to get your questions answered with respect to assignments, your project results, and the tooling. When meeting with course staff remember to keep your questions detailed, descriptive, and specific. We understand that it can be difficult to troubleshoot models, but we hope you can assist us in assisting you by being clear on your proposed intent and model architecture. Results in the form of output logs and plots can be helpful in diagnosing issues as well.

Course Tools

Course content will be linked from this website but there are additional platforms that you’ll need to access:

  • Ed Discussion: We will be using Ed Discussion as our course message and discussion board.

  • Canvas: We will use Canvas to disseminate up to date information with respect to your grades.

  • Github Classroom: We will use Github classroom for assignments to help you build confidence for the final group project. The final project in this course will involve programming in Python and dexterity with deep learning frameworks like PyTorch and PyTorch Lightning. We will also be using github actions, a continuous integration tool.

  • Miro: The whiteboard used in the project planning and design sprint phase.

Note that we will be using Canvas only as a gradebook this quarter. Please do not contact the staff through Canvas – we will be focusing our attention on Ed Discussion

Student Learning Outcomes

In addition to the course tools, we will use several different tools to develop our machine learning models.

  • We will use PyTorch and PyTorch Lightning.

  • We will use Deep Learning for different computer vision tasks.

  • We will manage and monitor our experiments using Weights & Biases.

  • We will package and deploy our system.

  • We will maintain project repositories using software engineering best practices.

Communication

This quarter we will be using Ed as our course message board. If you have a question about anything pertinent to the course, post it with the appropriate category tag on Ed. We ask that you make your questions public to the class so that the other students may benefit from the interaction in addition to getting a chance to answer as well. Course staff will try to answer any questions you have regularly.

Please use Ed instead of email, since this will help keep all course communication in one place. Please do not send course staff questions about course content over email or social media–Ed is where to go!

Suggested Reading

Suggested reading will be linked with the corresponding lecture as we move through the course. To get the most out of it, we recommend reading it after lecture and before assignment submission.

Assignments

Assignments will help you gain practice with tools and concepts from machine learning that will assist you in identifying models and techniques to solve different aspects of the research problem presented.

Project Proposal

The project proposal will be due early in the quarter following the close of the design sprint. It should represent the full end-to-end solution proposed and identify why it may be beneficial to the original research question it seeks to answer. It should include all team members involved along with a flowchart describing all system components, timeline, and proposed team schedule.

Pull Request Days

Code reviews for each team will take place throughout the quarter. It is recommended that teams open github issues for each feature or enhancement they would like to add to their project and create a development branch using their issue number. The team must designate a rotating member to initiate the pull request, the corresponding issue that would close, explain changes, and screenshot outcomes for their discussion TA to review. Following feedback received by the staff, team members must adjust and merge the changes by the deadline specified to receive full credit.

Status Report & Finalized Proposal

Present midterm milestones that have been reached as well as refinement of the ML system components. At this stage, baseline models should be identified and prototyped in addition to the presentation of a team accountability and reporting policy.

The Final Project

For the final project, you can work in groups of 4 people maximum. In terms of time commitment, expect to take roughly 40-50 hours per person total.

Your final project will be graded based on several factors.

  • Repository - The repository must have the appropriate structure and documentation for reproducibility of the study.
  • Technical Memorandum - Final project paper (template to be linked)
  • Poster - A companion poster presentation
  • Final Showcase Presentation - A short 5 min project presentation that will be recorded and open to the public on TBD.

Deadlines and Grace Days

Life happens, we get it. Each student is allowed up to 3 “grace days” to use towards their individual assignement and each team is allowed 4 “grace days” to use towards their project deadlines. How you choose to distribute them is up to you but once you run out, and you still haven’t submitted the assignment you will receive a zero for the assignment. Due to the time sensitivity of the task, design sprint exercises are not eligible for “grace day” usage. If you submit team project proposal, status report, or final project items late you and all team members will have to use grace days.

Grades

ComponentWeightNotes
Participation15%Attendance & Engagement
Assignments20% 
Proposal10% 
Pull Requests15%5% each x 3
Status Report10% 
Final Repository with Documentation10% 
Poster5% 
Presentation10% 
Tech Memo5% 

Regrade Requests

If you’d like to request a regrade on any assignment, you must do so within one week of the assignment being graded. If you think there is a problem with how your written question was graded, submit a regrade request through Gradescope.

Letter Grades and Incompletes

We will use a standard scale for assigning letter grades (there are no exceptions to the following scale):

Letter GradeAA-B+BB-C+CC-DF
Percentage93+90+87+83+80+77+73+70+60+below 60

Academic Dishonesty

Academic Dishonesty will not be tolerated. If the staff determines that academic dishonesty has occurred, we will enforce the UCI Academic Integrity and Student Conduct Procedures. Campus-wide sanctions are determined by the Associate Dean of your department. Please note that instances of academic dishonesty will be reflected in the final grade because dishonesty devalues the learning experience for the whole class.

Students Requiring Accommodations

Any student who feels he or she may need an accommodation based on the impact of a disability should contact me privately to discuss his or her specific needs. Also contact the Disability Services Center at (949) 824-7494 as soon as possible to better ensure that such accommodations are implemented in a timely fashion.

Syllabus Changes

The staff reserve the right to change this syllabus without limitation and without prior notice. If any item or policy is modified, the teaching staff will notify students directly.