Publication Date

Spring 2017

Degree Type

Master's Project

Degree Name

Master of Science (MS)


Computer Science

First Advisor

Chris Pollett

Second Advisor

Katerina Potika

Third Advisor

Leonard Wesley


collaborative filtering, recommendation systems


A recommendation system analyzes user behavior on a website to make suggestions about what a user should do in the future on the website. It basically tries to predict the “rating” or “preference” a user would have for an action. Yioop is an open source search engine, wiki system, and user discussion group system managed by Dr. Christopher Pollett at SJSU. In this project, we have developed a recommendation system for Yioop where users are given suggestions about the threads and groups they could join based on their user history. We have used collaborative filtering techniques to make recommendations and have tried to leverage user and the thread or group biases to make predictions. We have also made use of term frequency- inverse document frequency to improve our recommendations. We have integrated the recommendation system with Yioop and tested its effectiveness by asking nearly 100 users and found that it recommended exciting and interesting threads and groups 90 percent of the time.