Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
171 lines (121 sloc) 13.9 KB

Introduction to Machine Learning

CSE491 2018 Fall

Instructor: Jiayu Zhou [email] and Inci M. Baytas [email]

  • Time: Monday and Wednesday 10:20am - 11:40am

  • Location: Engineering Building, EB 1230

  • Office Hours: Monday and Wednesday, after class in EB 1230 until no one is in the classroom or 12:30p

  • Textbook: Learning from Data, Yaser S. Abu-Mostafa, Malik Magdon-Ismail, and Hsuan-Tien Lin, 2012. Webpage

Teaching Assistant: Kaixiang Lin

  • Office Hours: Thursday 11:00am - 12:00pm and by appointments.

  • Location: EB 3203

Course Description

An introduction to the field of machine learning, including linear models for regression and classification, generative models, support vector machines and kernel methods, neural networks and deep learning, decision trees, unsupervised learning and dimension reduction. (3 credits)

Student Learning Outcomes and Assessment

Student learning outcomes include (1) understanding the foundation, major techniques, applications, and challenges of machine learning; (2) the ability to apply basic machine learning algorithms for solving real-world problems. The learning outcomes will be assessed based on a combination of homework assignments and exams.

Recommended Background

In this course you will be extensively involved a variety of math topics, especially, linear algebra and matrix computation, basics about probability theory and numerical optimization. An online quiz will be available before the class for self-assessment.

You will be using Python for programming.

Tentative Class Contents

  • Introduction
  • Review: Linear algebra
  • Perceptron
  • Linear regression
  • Review: Probability
  • Logistic regression
  • Naïve Bayes classifier
  • Generative versus discriminative models
  • Generalization and overfitting
  • Decision tree and random forests
  • Support vector machines and kernel methods
  • Unsupervised learning and K-means clustering
  • Dimension reduction, principal component analysis (PCA)
  • Neural networks and Deep learning

Course Policies

Course Announcements

Announcements will be emailed to the course mailing list. A welcome note will be sent to the mailing list at the beginning of the semester. If you do not receive the welcome message before the first class, please send mail to me.


  • Homework (*): 40%
  • Exam 1: 20%
  • Exam 2: 20%
  • Final: 20%

Final grades will be assigned based on absolute percentage as follows:

Absolute percentage Grade
[ 100, 90 ] 4.0
( 90, 85 ] 3.5
( 85, 80 ] 3.0
( 80, 75 ] 2.5
( 75, 70 ] 2.0
( 70, 60 ] 1.0
( 60, 0 ] 0.0

where [ ] denotes inclusion and ( ) denotes exclusion. The instructor reserves the right to move the thresholds down (but not up) based on the distribution of final percentages.


All homework must be done independently, or you will be penalized for plagiarism. The instructor and the TA will be carefully looking into your code.

Most homework contains a written component and a programming component. Therefore, most homework submission should include a report and some Python code. The report and code files should be submitted in MSU D2L hard-copy BEFORE class on the due date (one submission per student). Code submissions may have a later due date than the written part. Late penalty is 15% point deduction per day for the first three days, after which the submission will not be accepted. Exceptions/extensions can be given to students with documented and valid excuse. Students need to provide evidence for their excuse and must notify the instructor at least two days before the original due date. A student may request up to 2 excused extensions. The aforementioned late penalty also applies to extensions.


Students will be required to complete two in-class exams and one final exam. In-class exams will focus on topics taught since the last exam. The final exam will be comprehensive.

Class Participation

Students are required to attend all classes and actively participate in discussions.

Honors Options

Students seeking H-Option would need to propose and complete a project (see for class project examples in CSE847). The student submits their intent to pursue the H-Option (using a form in Student-Instructor Forms) near the beginning of the semester with a description of what is to be done. The form will be approved or rejected after careful review. Students need to provide a short (1-2 paragraphs) description of the H-Option project that they would like to complete. It must be something that is directly related to the course. Other than that, there is a lot of flexibility. Once approved, a Github repository will be set up for the project, and then students can develop code and Latex report in the repository.

Once the project is complete, students need to submit a short report (2-4 pages ACM Latex template) and the completed project no later than the last week of classes. Students will then be assessed whether the requirements were met. Note that it is a department requirement for H-Option credit that students receive at least a 3.5 in the course.

Other Policies

Spartan Code of Honor

Student leaders have recognized the challenging task of discouraging plagiarism from the academic community. The Associated Students of Michigan State University (ASMSU) is proud to be launching the Spartan Code of Honor academic pledge, focused on valuing academic integrity and honest work ethics at Michigan State University. The pledge reads as follows:

As a Spartan, I will strive to uphold values of the highest ethical standard. I will practice honesty in my work, foster honesty in my peers, and take pride in knowing that honor is worth more than grades. I will carry these values beyond my time as a student at Michigan State University, continuing the endeavor to build personal integrity in all that I do.

The Spartan Code of Honor academic pledge embodies the principles of integrity that every Spartan is required to uphold in their time as a student, and beyond. The academic pledge was crafted with inspiration of existing individual college honor codes, establishing an overarching statement for the entire university. It was formally adopted by ASMSU on March 3, 2016, endorsed by Academic Governance on March 22, 2016, and recognized by the Provost, President, and Board of Trustees on April 15, 2016. Student conduct that is inconsistent with the academic pledge is addressed through existing policies, regulations, and ordinances governing academic honesty and integrity: Integrity of Scholarship and Grades, Student Rights and Responsibilities, and General Student Regulations.

Sign Spartan Code of Honor here!

Academic Honesty

Article 2.3.3 of the Academic Freedom Report states that The student shares with the faculty the responsibility for maintaining the integrity of scholarship, grades, and professional standards. In addition, the (insert name of unit offering course) adheres to the policies on academic honesty as specified in General Student Regulations 1.0, Protection of Scholarship and Grades; the all University Policy on Integrity of Scholarship and Grades; and Ordinance 17.00, Examinations. (See Spartan Life: Student Handbook and Resource Guide and/or the MSU Web site: Therefore, unless authorized by your instructor, you are expected to complete all course assignments, including homework, lab work, quizzes, tests and exams, without assistance from any source. You are expected to develop original work for this course; therefore, you may not submit course work you completed for another course to satisfy the requirements for this course. Also, you are not authorized to use the Web site to complete any course work in this course.

Additionally, examples of academic dishonesty include (but are not limited to):

  • Copying another student's code or exam answers
  • Using code implemented by someone else intended to solve this class's assignments (i.e., don't get someone else to do your assignment for you!).
  • Using code independently implemented by someone else without attributing credit (i.e., you can use tools, libraries, or code snippets from the web, but only with proper citation.)
  • Writing code that deceptively passes the test cases, but doesn't solve the problem given. In other words, abusing automatic grader mechanisms to gain unearned points
  • Using websites and sources, whose purpose is to provide assignment solutions (e.g. using sites such as for any purpose regarding this class).
  • Distributing course content without instructor permission.
  • Submitting a solution that you don't understand / can't explain to an instructor.
  • Providing false information to the instructor about matters related to the course.
  • Facilitating another student in any of these activities.

If using online revision control systems such as, ensure your code is not publicly accessible. Failing to do so may allow someone to easily copy your code putting yourself at risk.

Students who violate MSU academic integrity rules may receive a penalty grade, including a failing grade on the assignment or in the course. Contact your instructor if you are unsure about the appropriateness of your course work. (See also the Academic Integrity webpage.)

Use of Turnitin

Consistent with MSU's efforts to enhance student learning, foster honesty, and maintain integrity in our academic processes, I have chosen to use a tool called Turnitin to compare your papers with multiple sources. The tool will compare each paper you submit to an extensive database of prior publications and papers, providing links to possible matches and a 'similarity score.' The tool does not determine whether plagiarism has occurred or not. Instead, I will make a complete assessment and judge the originality of your work. All submissions to this course may be checked using this tool.

You should submit papers to Turnitin Dropboxes without identifying information included in the paper (e.g., name or student number), the Desire 2 Learn system will automatically show this information to me when I view the submission, but the information will not be retained by Turnitin. If you forget and submit your paper with your identifying information on it, it will be retained in the Turnitin repository. Your submissions will be retained only in the MSU repository hosted by Turnitin.

Accommodations for Students with Disabilities (from RCPD)

Michigan State University is committed to providing equal opportunity for participation in all programs, services and activities. Requests for accommodations by persons with disabilities may be made by contacting the Resource Center for Persons with Disabilities at 517-884-RCPD or on the web at Once your eligibility for an accommodation has been determined, you will be issued a Verified Individual Services Accommodation (VISA) form. Please present this form to me at the start of the term and/or two weeks prior to the accommodation date (test, project, etc.). Requests received after this date may not be honored.

Disruptive Behavior

Article 2.III.B.4 of the Academic Freedom Report (AFR) for students at Michigan State University states: The student’s behavior in the classroom shall be conducive to the teaching and learning process for all concerned. Article 2.III.B.10 of the AFR states that The student has a right to scholarly relationships with faculty based on mutual trust and civility. General Student Regulation 5.02 states: No student shall ... interfere with the functions and services of the University (for example, but not limited to, classes ...) such that the function or service is obstructed or disrupted. Students whose conduct adversely affects the learning environment in this classroom may be subject to disciplinary action through the Student Judicial Affairs office.

Limits to confidentiality

Essays, journals, and other materials submitted for this class are generally considered confidential pursuant to the University's student record policies. However, students should be aware that University employees, including instructors, may not be able to maintain confidentiality when it conflicts with their responsibility to report certain issues to protect the health and safety of MSU community members and others. As the instructor, I must report the following information to other University offices (including the Department of Police and Public Safety) if you share it with me:

--Suspected child abuse/neglect, even if this maltreatment happened when you were a child,

--Allegations of sexual assault or sexual harassment when they involve MSU students, faculty, or staff, and

--Credible threats of harm to oneself or to others.

These reports may trigger contact from a campus official who will want to talk with you about the incident that you have shared. In almost all cases, it will be your decision whether you wish to speak with that individual. If you would like to talk about these events in a more confidential setting you are encouraged to make an appointment with the MSU Counseling Center.

Drops and Adds

The last day to add this course is Sept 4, 2018. The last day to drop this course with a 100 percent refund and no grade reported is Sept 24, 2018. The last day to drop this course with no refund and no grade reported is 8:00 pm Oct 17, 2018. You should immediately make a copy of your amended schedule to verify you have added or dropped this course.


The preparation of this course has benefited from CPTS 483 at Washington State University (Instructor: Dr. Shuiwang Ji), CSE 591 (Dr. Jieping Ye now in UMich) and CSE 575 (Dr. Hanghang Tong) at Arizona State University.