The goal of machine learning is to build computer systems that automatically solve problems using
sample data and past experience. This course provides an overview of the state-of-art algorithms along with their theoretical
and practical aspects. In this course, students will have an opportunity to have hands-on experience to understand the basic
principles of these machine learning algorithms.
Bayesian decision theory, parametric methods, nonparametric methods, decision trees, linear discrimination,
multilayer perceptrons, unsupervised learning and clustering, hidden Markov models, and reinforcement learning.
- Familiarity with the basic probability theory, statistics, and artificial intelligence.
- Knowledge of a programming language(Java, C/C++, Matlab, etc.) to write reasonably non-trivial programs.
Midterm: 30% (open book and open notes)
Final: 35% (open book and open notes)
Quizzes will be given in class, without advance notice. The quizzes are going to be about the content of the lecture
that is being delivered at the time of the quiz. Students that take a quiz will automatically be granted half of its full points.
Homeworks will be programming assignments that require students to implement machine learning algorithms.
Students are expected to work in groups of 3-4 for the assignments. For each assignment, students will be expected to write a detailed
report on their findings by running their algorithms on given data sets. For most of the assignments, students will have one-week duration.
Assignments are expected to be turned in at the beginning of the 1st lecture hour on the due date, before the lecture
starts. For the late assignments that are turned after the lecture starts, each group will be given a total of three grace days (whole or
partial) for the whole semester. Once these late days have been exhausted, no late assignments will be accepted. As an example, if Group A
submits their 2nd assignment 29 hours late, they will have used two late days and have only one day left. If Group A then submits their
4th assignment 5 hours late, they will have used their remaining late day. If Group A submits their 5th assignment 1 minute late, this
assignment will not be accepted.
Copying or communicating during an exam is cheating. Students caught cheating on an exam will be subject to
disciplinary action, as explained in the "Student Disciplinary Rules and Regulation"
Students in the same group are expected to work together. On the other hand, students in different groups are not
allowed to discuss the solutions of programming assignments or to get help to write their codes and reports. Students caught cheating on
assignments will also be subject to disciplinary action.