We have described our approach to a term project on a machine learning course: instead of making a full implementation of the programs needed to solve a machine learning problem, the students work with the ready implementation and concentrate on the modeling and experimentation aspect. We have described a courseware package and our preliminary experiences with our current class of machine learning students, who are completing the exercise. Our experience is that the students have been helpful in providing technical feedback on compiling the programs on different operating systems, and on the technical implementations of the programs. Most active students have suggested improvements as regards to the general cross-platform build commands that make the program package available in many different platforms with the C compiler.
Others have argued that there is a need for open source software in machine learning [Sonnenburg et al., 2007]. When using open source packages in teaching, the students will get used to using and possibly extending existing software rather than rewriting everything from scratch. It also promotes the spirit of sharing software in open source form.
After the exercise has been completed in the end of this semester, feedback will be put in refining the exercises and the implementation. Also, time estimates for completing the exercises may be more accurately given. After the feedback round, the implementation and the documentation will be made available to the machine learning and data mining community with a liberal open source license.