School of Computing

Machine Learning

NUS SoC, 2017/2018, Semester I
Lecture Theatre 19 (LT 19) / Tuesdays 14:00-16:00

Note: This website is for Sem I, 2017/2018. The current course is available at
Last updated: November 16 - Updated final assessment venue.
July 23 - Updated Tutorial 4 timing, fixed syllabus.
July 4 - First update.

Module Description, Aims and Objectives:

Module Description, Aims and Objectives:This module introduces basic concepts and algorithms in machine learning and neural networks. The main reason for studying computational learning is to make better use of powerful computers to learn knowledge (or regularities) from the raw data. The ultimate objective is to build self-learning systems to relieve human from some of already-too-many programming tasks. At the end of the course, students are expected to be familiar with the theories and paradigms of computational learning, and capable of implementing basic learning systems.

Starting this semester, I will also be maintaining a Facebook page (accessible from the FB link on the top menu) for this course across cohorts. Current students and alumni are welcome to contribute news and items of potential interest to the page (i.e., ML news, job openings specific to ML).

N.B. We will be teaching and using the Python programming language throughout this class. We will using Python 3.4.x

Course Characteristics

  • Modular credits: 4.
  • Prerequisites: (CS2010 or its equivalent) and (ST1232 or ST2131 or ST2132 or ST2334) and (MA1101R or MA1311 or MA1506) and (MA1102R or MA1505 or MA1521)
  • Instructor: Min-Yen KAN, <> Office: AS6 05-12 (x61885).

    Teaching Assistants:

    • Mr Karim Magdi Abdelfattah Ibrahim
    • Mr Jay Nandy
    • Mr Ryutaro Oikawa
    • Mr Animesh Prasad

    Office hours are held (before and after class), but more commonly by appointment. Emails to me as a default are assumed to be public, and my replies and your anonymized email will likely be posted to IVLE. Please let me know if you do not want the contents of your email posted; I will be happy to honor your requests.

  • Workload: (2-1-0-3-3) Translation:
    2 lecture hours per week
    1 hour of tutorials or labs per week
    3 hours for projects, assignments, fieldwork, etc. per week
    3 hours for preparatory work by a student per week
  • Textbooks:
    • Required:
      Yaser S. Abu-Mostafa, Malik Magdon-Ismail, Hsuan-Tien Lin. (2012) Learning from data : a short course.
      [ Check LINC for book ] [ Book website (includes supplemental material and forum) ]
    • Recommended:
      • Christopher M. Bishop (2007) Pattern Recognition and Machine Learning.
        [ Check LINC for book ]
      • Hal III Daumé (2015) A Course on Machine Learning. Draft.
        [ Book Website - entire digital copy available. ]
  • Tutorials: Note: There will be ten tutorial sessions. Tutorials start 31 Aug 2017. Half will be live in the tutorial classroom, the others may be recorded; class policy has yet to be finalized for this.
    • Tutorial Group 4: Thursdays, (09:00-10:00; SR9 COM1 #02-09)
    • Tutorial Group 1: Thursdays, (12:00-13:00; SR9 COM1 #02-09)
    • Tutorial Group 2: Thursdays, (13:00-14:00; SR9 COM1 #02-09)
    • Tutorial Group 3: Thursdays, (14:00-15:00; SR9 COM1 #02-09)
    • Tutorial Group 5: Fridays, (12:00-13:00; SR6 COM1 #02-03)
    • Tutorial Group 6: Fridays, (13:00-14:00; SR6 COM1 #02-03)
  • Final Assessment: 25 Nov 9:00-11:00. (Yes, we know -- we are going to ruin your Friday night and Saturday morning)
    Venue: Seminar Room 1 (SR1;COM1 #02-06)

Note to NUS-external visitors: Welcome! If you're a fellow ML course instructor looking for lecture material, you can see the Syllabus menu item on the nav bar for a preview. Please contact me if you'd like to use any of my material. Thanks!