Algorithms and principles involved in machine learning: focus on perception problems arising in computer vision, natural language processing and robotics; fundamentals of representing uncertainty, learning from data, supervised learning, ensemble methods, unsupervised learning, structured models, learning theory and reinforcement learning; design and analysis of machine perception systems; design and implementation of a technical project applied to real-world datasets (images, text, robotics).

We are witnessing an explosion in data - from billions of images shared online to Petabytes of tweets, medical records and GPS tracks, generated by companies, users and scientific communities. Applications of machine learning and perception are increasing rapidly as more techniques are developed and implemented to address a wide range of scientific and societal problems. Many universities are expanding programs in machine learning and perception, and employers are increasingly recognizing the importance of such knowledge. The course will give students a solid foundation in the basics of machine learning and an introduction to the opportunities in this rapidly maturing field.

A grade of C- or better in prerequisites 2574 and STAT 4604 or STAT 4705 or STAT 4714.

2574, and STAT 4604 or STAT 4705 or STAT 4714: The listed prerequisite courses cover relevant material which includes: data-structures, algorithms, complexity and basic concepts of probability and statistics (random variables, expectation, conditional distributions, Bayes rule, sampling distributions, estimators, likelihood, maximum likelihood).

- Analyze and contrast board classes of machine learning algorithms (supervised vs. unsupervised vs. semi-supervised)
- Describe and apply fundamental concepts of learning from data (maximum likelihood estimation, maximum a posteriori, overfitting vs underfitting, regularization, cross-validation)
- Explain and program supervised learning algorithms for regression (e.g. least squares via pseudo-inverse)
- Explain and program supervised learning algorithms for classification (e.g. logistic regression via gradient descent, support vector machines via Quadratic Programming)
- Describe and program unsupervised learning algorithms for clustering (e.g. kmeans)
- Design and implement a technical project, and apply developed techniques to real-world datasets (images, text, robotics, etc.)

## Topic |
## Percentage of Course |

1. Overview of Machine Learning & Perception: a) Learning from data; b) Overfitting, regularization, cross-validation | 5% |

2. Supervised Learning: a) Nearest Neighbor; b) Naïve Bayes; c) Logistic Regression; d) Support Vector Machines; e) Neural Networks; f) Decision Trees | 25% |

3. Unsupervised & Semi-Supervised Learning: a) Clustering (K-means, GMMS); b) Factor Analysis (PCA, LDA) | 10% |

4. Learning Theory: a) Bias and Variance; b) Probably Approximately Correct (PAC) Learning | 10% |

5. Structured Models: a) Bayesian Networks; b) Hidden Markov Models | 10% |

6. Reinforcement Learning | 10% |

7. Applications of ML to Perception: a) Vision; b) Natural Language Processing | 15% |

8. Design and implementation of a technical project | 15% |

Copyright Â© 2017 Virginia Tech Department of Electrical and Computer Engineering

An Affirmative Action/Equal Opportunity Employer | Privacy Statement | Contact Webmaster