Semester.ly

Johns Hopkins University | EN.600.475

Machine Learning

3.0

credits

Average Course Rating

(4.17)

Machine learning is subfield of computer science and artificial intelligence, whose goal is to develop computational systems, methods, and algorithms that can learn from data to improve their performance. This course introduces the foundational concepts of modern Machine Learning, including core principles, popular algorithms and modeling platforms. This will include both supervised learning, which includes popular algorithms like SVMs, logistic regression, boosting and deep learning, as well as unsupervised learning frameworks, which include Expectation Maximization and graphical models. Homework assignments include a heavy programming components, requiring students to implement several machine learning algorithms in a common learning framework. Additionally, analytical homework questions will explore various machine learning concepts, building on the pre-requisites that include probability, linear algebra, multi-variate calculus and basic optimization. Students in the course will develop a learning system for a final project. [Analysis or Applications]

Fall 2012

(4.21)

Fall 2014

(3.96)

Spring 2014

(4.33)

Fall 2012

Professor: Mark Dredze

(4.21)

Students mentioned that the lectures were engaging, interesting, and helpful in making sure they understood the material thoroughly. The downside was that lectures were hard to follow, especially for students who were new to the topic. Some students also thought some assignments were poorly written or unclear. Students suggested having more practical examples or hands-on activities, as well as better feedback on homework. Students considering this course should have some probability and linear algebra background. They are advised to start assignments early, as the course is a lot of work and it’s easy to get behind.

Fall 2014

Professor: Mark Dredze

(3.96)

Students thought the best aspect of this course was the instructor who they described as being both approachable and an effective teacher. While students believed that the programming assignments were useful exercises, students found that the weakest element of the class was the analytical portion of assignments which students thought didn’t match well with the material being taught in lectures. Some students felt the course could be improved by covering a smal er number of topics so that what was taught could be explained in greater depth, as wel as slowing the pace of the course. Students thought it was important for potential participants in the class to know that a strong math background as well as knowledge of Java programming were valuable for this class.

Spring 2014

Professor: Mark Dredze

(4.33)

The best aspects of this class were the interesting material covered, homework and projects that reinforced the topics from lectures, and a knowledgeable and effective instructor. The mix of writing and code, along with the real world applicability of the assignments was appreciated by most students. The worst aspects of the course were the heavy reliance on guest lectures leading to some inconsistencies, the midterm was very difficult, and the workload is quite high. Some suggestions to improve the course included returning to the no-midterm version of the course, more feedback on homework, and having some real data practice. Prospective students should know that the workload for this class is very heavy, you should have a strong understanding of Java, linear algebra, calculus, probability, and statistics.