|
General info Syllabus Calendar Projects Matlab Mailing List |
The practical component of the class, in particular the programming parts of the homework assignments, will be carried out in Matlab. It is by far the most commonly used language in machine learning research community today, as well as in other, related fields of research such as computer vision or signal processing. It is also increasingly common in industry. Because of that, there is a vast amount of code available on the Web, with excellent implementations of many learning algorithms. Matlab is a high-level scripting language; one does not have to declare variables, define types or explicitly deal with memory allocation and pointers. There are also excellent built-in visualization tools. So, it is very easy to quickly develop and debug implementations of relatively complicated algorithms, without being bogged down in gritty coding details. Matlab is easy to use, and if used properly, it can be very powerful and efficient, although of course it has its limitations. The main trick is to understand the idea of "vectorizing" everything; as a rule, any operation that can be expressed in terms of vector or matrix operation will execute very, very fast. If you have not previously worked with Matlab, you may find it helpful to go over this Matlab Tutorial. The TAs will also provide help with learning Matlab, as necessary. Below are a few links to useful material elsewhere. A lot of these tutorials are quite lengthy and include more detail than you will probably need.
|