Skip to main content


Showing posts from November, 2011

Modeling with Octave

The discipline of machine learning (ML) can be understood as a particular study of data. Data is everything, and it contains patterns and a certain degree of uncertainty. The aim of the field is to identify those and exploit them to solve complex problems. Often algorithms for obtaining such patterns are not easy to implement, involving abstract mathematical concepts and vague descriptions of the internal processes that guide the learning mechanisms. In this particularly discouraging environment there are several useful tools to help with the understanding of the ML techniques. Octave is such a tool.
Octave allows the extensive use of vectorization to exploit parallelism and modeling complex algorithms in a very fourth-generation programming language fashion. I started with Octave due to Standord's ml-class course and I have to say that the experience has been very positive. In one of the exercises we had to implement a handwritten character recognizer, that is, a type of perceptr…