CS690: Machine Learning
Spring 2012
Time and Location: Tue, Thu 1:10pm – 3:00pm, ARC 101
Instructor: Razvan Bunescu
Office: Stocker 337
Office Hours: Mon 9:10 – 10am, Wed 11:10am – 12pm, Fri 11:10am – 12pm, or by email appointment
Email: bunescu @ ohio edu
Textbook:
Pattern Recognition and Machine Learning by Christopher Bishop. Springer, 2007.
Recommended Supplementary Texts:
Machine Learning by Tom Mitchell. McGraw Hill, 1997
Pattern Classification by Richard O. Duda, Peter E. Hart, & David G. Stork. Wiley-Interscience, 2001
The Elements of Statistical Learning: Data Mining, Inference, and Prediction by T. Hastie, R. Tibshirani, & J. H. Friedman. Springer Verlag, 2009
Course description:
Machine Learning is concerned with the design and analysis of
algorithms that enable computers to automatically find patterns in the
data. This introductory course will give an overview of the main
concepts, techniques and algorithms that are relevant for the theory
and practice of machine learning. The course will cover the
fundamental topics of classification, regression and clustering,
starting with simple learning models such as perceptrons, decision
trees and logistic regression, and ending with more advanced models
including Support Vector Machines, Conditional Random Fields and
Bayesian networks. The description of the formal properties of the
algorithms will be supplemented with motivating applications in a wide
range of areas including natural language processing, computer vision,
bioinformatics and music analysis.
Prerequisites:
The students are expected to be comfortable with programming in C/C++/Java,
and to exhibit a basic level of mathematical
dexterity. Relevant background material in linear algebra, probability
theory and information theory will be made available during the
course.
Lecture notes:
- Syllabus & Introduction
- Regression with Linear Models
- Fisher Linear Discriminant
- Perceptrons and Kernels
- Support Vector Machines
- Support Vector Machines [Trends and Controversies] , Marti Hearst, Susan Dumais, Edgar Osuna, John Platt, Bernhard Scholkopf, IEEE Intelligent Systems, 13(4), 1998
- A Tutorial on Support Vector Machines for Pattern Recognition, Christopher J. C. Burges, Data Mining and Knowledge Discovery 1998
- Nearest Neighbor Methods
- Feature Selection
- Decision Trees
- Naive Bayes
- Logistic Regression
- Hidden Markov Models
- Conditional Random Fields
- PCA, Clustering
Homework Assignments:
Final Project:
Other online reading materials:
- James H. Martin's Introduction to probabilities
- Jason Eisner's equestrian Introduction to probabilities
- Inderjit Dhillon's Linear Algebra Background
- Strang's Video Lectures on Linear Algebra
- Convex Optimization, Stephen Boyd and Lieven Vandenberghe, Cambridge University Press 2004
- New ranking algorithms for parsing and tagging: Kernels over Discrete Structures, and the Voted Perceptron, Michael Collins and Nigel Duffy, ACL 2002
- Convolution Kernels for Natural Language, Michael Collins and Nigel Duffy, NIPS 2001
- Text Classification using String Kernels, Huma Lodhi, Craig Saunders, John Shawe-Taylor, Nello Cristianini, Chris Watkins and Bernhard Scholkopf, JMLR 2002
- Optimizing Search Engines Using Clickthrough Data, Thorsten Joachims, KDD 2002
Machine learning software:
- Weka Data Mining Software in Java
- SVMlight Implementation of SVMs in C
- LIBSVM Implementation of SVMs in C++ and Java
- MALLET Java implementations of logistic regression, HMMs, linear chain CRFs, and other ML models.
- SVM applet demonstrating SVMs, by Hakan Serce
- k-Nearest Neighbor short animated video, by Antal van den Bosch