Skip to content

Latest commit

 

History

History
143 lines (83 loc) · 11.3 KB

syllabus.md

File metadata and controls

143 lines (83 loc) · 11.3 KB
layout title
page
Syllabus

Teaching staff

Instructor: Eric Darve, ME, ICME, [email protected]. Prof. Darve is a Professor in Mechanical Engineering and a faculty member affiliated with ICME.

Teaching assistants:

  • Kingway Liang (head TA), Mechanical Engineering; [email protected]
  • Kailai Xu from ICME will also be assisting

Lectures and class material

Online teaching is a new thing for most of us and I will still experimenting with different approaches and solutions. We will need to make adjustments to our expectations, be flexible, and make changes as we discover what works and does not work.

The class will be structured around the following elements.

Some of the material for the class is posted on canvas, under Course Videos, and on GitHub.

The lectures will be pre-recorded. The slides are on GitHub. The videos are recorded using Panopto and stored on canvas.

At this time, I am not planning on live lectures, at least as a default. There are practical difficulties including network bandwidth, connection reliability, and time difference. Instead, it will be a combination of pre-recorded lectures and slides.

To supplement the lectures, we will have a combination of exercises and homework assignments. Exercises are short questions that can be answered by reading the slides and watching the videos. Homework assignments will be based primarily on Python and will require some code development and analysis.

The home page for this class on GitHub contains useful books, articles, web links, recorded lectures, etc, that are relevant to this class.

Forum

To communicate we will post messages using canvas announcements.

In addition, we will be using the canvas discussion board, which provides a structured form of communication.

There is also a Slack workspace. You will need to join the workspace for this class.

  1. Go to stanford.enterprise.slack.com
  2. Search for cme216-spring2020-forum.
  3. Sign in and make a request to join the workspace.
  4. One of the members of the teaching staff will need to approve your request to join.

Check the channels in the workspace.

student-lounge is sort of a free for all space where you can freely chat with other students.

When you join the workspace, I encourage you to break the ice and post a short message in student-lounge to introduce yourself. For example, your name, your major, where you are currently located. If you feel more adventurous, add one thing you are grateful for, right now.

Since the class is taught virtually, it is important to maintain contact with the teaching staff and other students. We encourage you to freely share information, questions, feedback, comments, etc, on Slack in the appropriate channel. Slack is meant to be a more flexible and open-ended way to communicate while canvas will be reserved for more specific discussions such as deadlines, logistics, ...

It is critical that you send feedback about the class to the teaching staff. It could be some comments, things you wish were done differently, or maybe some special difficulty you are facing right now. For feedback, you can use

Rules of conduct. On the forum, please observe the following code of conduct:

  • Be civil, considerate, and courteous to everyone. The forum is meant to be a safe and welcoming space to get help. If your message is not useful to other students, yourself or the instructors, you should probably just delete it.
  • Access to the various forums will be revoked without warning if you post an inappropriate, disrespectful, demeaning, or abusive message.

Office hours

The teaching staff will have office hours. These will be posted on canvas. Regular class time, Wednesdays and Fridays from 1:30 PM to 3 PM, will be used for office hours with the instructor, to discuss the class material, exercises, and homework assignments. This will be done using Zoom. The link will be posted on the canvas calendar. There is a calendar feed option on canvas that you can use so that you can see the canvas calendar in other applications, e.g., webmail.stanford.edu.

For office hours, we will use zoom. We will probably use a combination of a "Waiting Room", which requires the host to let you in, and "Breakout Rooms", which allow splitting participants into small groups (in this case, we will have each student in their own private "room"). This will allow managing one-on-one discussions with potentially more than one participant in zoom.

Grading

This class can be taken for CR/NC only. The grading will be done as follows:

  • Final project: 30%
  • Reading assignments and short exercises: 20%
  • Homework: 50%

An overall score of 70% is required in order to receive a CR score in the course. Assignments will be accepted up to 1-day late for 80% of their original value (unless there is an OAE accommodation).

We will use gradescope for homework submission and grading. Search for CME 216 Spring 2020. You should be automatically enrolled if you are listed on canvas.

The final project will be determined by each student. It should be based on one of the topics covered during the quarter, such as TensorFlow, physics-informed learning, or reinforcement learning. You will have to prepare a 5-page report. For the project you will have to

  • propose a machine learning task in engineering,
  • review briefly the literature and relevant methods for this problem,
  • propose an algorithm and write some Python code to solve the problem,
  • present some benchmark results,
  • comment and discuss the results and conclusions of your work.

Contents of the class

The tentative contents of the class is shown below. Adjustments will be made depending on how long it takes to cover each topic.

  • Introduction to machine learning; support vector machines
  • Deep learning; this will be the bulk of this quarter. We will learn how to use TensorFlow. Although very popular as well, we will not cover PyTorch.
  • Physics-informed learning. We will discuss how deep neural networks can be used to solve partial differential equations.
  • Generative deep networks; this has been a very useful tool in engineering to model stochastic variables. We will briefly discuss physics-informed GANs.
  • Reinforcement learning and optimal control.

Although TensorFlow can be used with many languages, we will focus on the standard interface using Python. Knowing Python is a pre-requisite for this class.

Pre-requisites

The main pre-requisite is Python, which will be used for most of the homework assignments and for demonstrating the algorithms in class. We will use TensorFlow and Keras to learn about deep learning.

You should also know basic methods in optimization such as gradient descent to minimize a function.

Towards the end, we will discuss numerical solutions of partial differential equations for example with the finite-difference method. But only the basics are required and we will give you pointers if you have not seen these methods previously.

You should also know basics about probability and statistics.

We hope you will enjoy this class and find it useful!

Students with Documented Disabilities

Students who may need an academic accommodation based on the impact of a disability must initiate the request with the Office of Accessible Education (OAE). Professional staff will evaluate the request, review appropriate medical documentation, recommend reasonable accommodations, and prepare an Accommodation Letter for faculty dated in the current quarter in which the request is being made. The letter will indicate how long it is to be in effect. Students should contact the OAE as soon as possible since timely notice is needed to coordinate accommodations.

The OAE is located at 563 Salvatierra Walk.

Phone: 723-1066

URL: oae.stanford.edu

Honor Code and Office of Community Standards

We take the honor code very seriously. The honor code is Stanford's statement on academic integrity first written by Stanford students in 1921. It articulates university expectations of students and faculty in establishing and maintaining the highest standards in academic work. It is agreed to by every student who enrolls and by every instructor who accepts appointment at Stanford. The Honor Code states:

  1. The Honor Code is an undertaking of the students, individually and collectively

    (a) that they will not give or receive aid in examinations; that they will not give or receive unpermitted aid in class work, in the preparation of reports, or in any other work that is to be used by the instructor as the basis of grading;

    (b) that they will do their share and take an active part in seeing to it that others as well as themselves uphold the spirit and letter of the Honor Code.

  2. The faculty on its part manifests its confidence in the honor of its students by refraining from proctoring examinations and from taking unusual and unreasonable precautions to prevent the forms of dishonesty mentioned above. The faculty will also avoid, as far as practicable, academic procedures that create temptations to violate the Honor Code.

  3. While the faculty alone has the right and obligation to set academic requirements, the students and faculty will work together to establish optimal conditions for honorable academic work.

Note that the student who lets others copy his work is as guilty as those who copy. Violations include at least the following circumstances: copying material from another student, copying previous year solution sets, copying solutions found using Google, copying solutions found on the internet. You will be automatically reported without a warning if a violation is suspected. The Office of Community Standards is in charge of determining whether a violation actually occurred or not.

Please do not post any material from this class online. This will encourage honor code violation, and penalize other students. This is also a violation of copyright.

If found guilty of a violation, your grade will be automatically lowered by at least one letter grade, and the instructor may decide to give you a "No Pass" or "No Credit" grade. The standard sanction from OCS for a first offense includes a one-quarter suspension from the University and 40 hours of community service. For multiple violations (e.g., cheating more than once in the same course), the standard sanction is a three-quarter suspension and 40 or more hours of community service.

Honor Code statement and information