Search engines, such as Google, YouTube and Flickr, have had a huge impact on how people find and use information (e.g., webpages, videos, photos). Recommendation system like Netflix, Facebook, and Pandora, help people discover new and exciting things (e.g., movies, friends, songs). In this course, we will explore how information retrieval (IR) and recommendation systems (RecSys) are designed and implemented.
The first half of the class will be devoted to developing traditional IR skills such as web-crawling, text & multimedia processing, boolean & vector-space modeling, classification, clustering, and similarity analysis. The second half of the course will be devoted to creating a information retrieval or recommendation system as a collaborative class project. For this project, groups of students will design and develop individual components of this large-scale system. In the final weeks we will combine these components and (if all goes well) launch a new IR/RecSys for public use on the Internet.
COURSE FORMAT/STYLE: Lecture, Lab Meeting, Programming Assignments, Research Paper Reading and Dissection Collaborative Final Project
COURSE REQUIREMENTS & GRADING: Strong programming experience (CS220 or above) is required. Experience with Python is recommended. Advanced web programming (e.g., CS205) experience will also be useful but is not necessary.