Evening Lab Sessions



Hassan Mahmud.

Lab leaders:

Daniel Visentin, Jieyi Liao, Tor Lattimore, Myank Daswani.

Lab Details

Welcome to the ANU MLSS 2010 lab sessions. The labs will be held at the Physics Lecture Theatre starting at 8:00pm and lasting for approximately one and a half hours. The purpose of the labs is to introduce the participants to some basic machine learning algorithms. There will be five sessions, each of which will consist of two sections: the first section will be a lecture describing the algorithm to be covered in that lab, and in the second section, the participants will be invited to implement the algorithm and test them out on synthetic and real, benchmark data sets. The partcipants are provided with a handout and code for each session (see link below to download archive containing the details for each). The lecture section will largely follow the handouts. The code given is a partial implementation of the relevant algorithm which the participants will be asked to complete during the labs. The sessions, and their leaders, are as follows:

DateSession Leader
Mon, Sept 27 Lab 1: Introduction to Python and Linear Regression. Jieyi Liao
Tue, Sept 28: Lab 2: Naive Bayes and logistic regression. Daniel Visentin
Thu, Sept 30 Lab 3: Neural Networks Tor Latimore
Mon, Oct 4 Lab 4: Principal Component Analysis Daniel Visentin
Tue, Oct 5 Lab 5: K-means Clustering via EM Mayank Daswani

The handouts and code for the labs are available in this archive (updated 26/09/10 - new version of session 5 handout) . Solutions to all the labs (including Thursday's lab) are here. Updated handout and code for Monday, Oct 4th are here and here. Updated material for Tuesday, October 5 session are here.

These notes are all based on the introductory machine learning course given at ANU and the slides for this course can be found here.


Participant Background

The labs will assume that the participants have good grasp of basic linear algebra, probability theory and real analysis. For those wishing to brush up on their linear algebra and probability, this slide and this slide may be helpful.


All the algorithm implementations will be done using Python 2.6.5 and the SciPy, NumPy, matplotlib and PyLab packages for this version of Python. The required software for your machine can be downloaded here: Python, NumPy 1.5 SciPy 0.8 matplotlib 1.0.


While we will cover Python during the lectures, the participants might want to look at online tutorials for Python - for instance and for NumPy. It is a fairly straightforward language and those who are familiar with programming should not have any trouble picking it up on the fly.

Page created by: Hassan Mahmud, 23/10/2010. If there are any problems with links, or if you are having any problem with downloading, please email hassan at hassan.mahmud at anu.edu.au