Machine Learning is the process of deriving abstractions of the real world from a sparse set of observations. This process is at the heart of scientific investigation. The observations can include software, webpages, DNA microarrays, motion capture data, images, computer game logs, music, video, controlled simulations and so on. Thus ML is about letting computers infer models of what they should be doing, as opposed to us telling them what to do precisely through excruciating programming.
The pre-requisites are linear algebra, calculus and basic statistics or probability. I recommend this course to anyone who took a course in graphics, numerical computation, computer vision, AI or probabilistic graphical models in term 1. The course homeworks and projects are diverse: there will be projects on numerical computing, projects focusing on applications, and projects on core machine learning issues. The projects will favour students with good theoretical skills and/or students with good practical skills.
nando at cs.ubc.ca