Machine learning techniques are widely used in many computing applications; for example, in web search engines, spam filtering, speech and image recognition, computer games, machine vision, credit card fraud detection, stock market analysis and product marketing applications. Machine learning implies that there is some improvement that results from the learning program having seen some data. The improvement can be in terms of some performance program (e.g., learning an expert system or improving the performance of a planning or scheduling program), in terms of finding an unknown relation in the data (e.g., data mining, pattern analysis), or in terms of customizing adaptive systems (e.g., adaptive user-interfaces or adaptive agents).
This course will introduce recent developments in the field of machine learning, and it is research-oriented. The practical component of this course involves working on a real-world research project developed with the help of the teaching team. The research project involves the definition of research questions, project planning, data analysis workflow, programming, collaboration and regular communication of project progress in an oral or written form, including writing a literature review and a final research report. Programming skills are necessary for this course. The practical component of the course expects group work.