Change search
ReferencesLink to record
Permanent link

Direct link
Implementation and Evaluation of a Recommender System Based on the Slope One and the Weighted Slope One Algorithm
KTH, School of Computer Science and Communication (CSC).
KTH, School of Computer Science and Communication (CSC).
2015 (English)Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
Abstract [en]

Recommender systems are used on many different websites today and are mechanisms that are supposed to accurately give personalized recommendations of items to a set of different users. An item can for example be movies on Netflix. The purpose of this paper is to implement an algorithm that fulfills five stated goals of the implementation. The goals are as followed: the algorithm should be easy to implement, be effective on query time, accurate on recommendations, put little expectations on users and alternations of algorithm should not have to be changed comprehensively. Slope One is a simplified version of linear regression and can be used to recommend items. By using the Netflix Prize data set from 2009 and the Root-Mean-Square-Error (RMSE) as an evaluator, Slope One generates an accuracy of 1.007 units. The Weighted Slope One, which takes the relevancy of items into the calculation, generates an accuracy of 0.990 units.  Adding Weighted Slope One to the Slope One implementation can be done without changing the fundamentals of the Slope One algorithm. It is nearly instantaneous to generate a recommendation of a movie with regular Slope One and Weighted Slope One. However, a precomputing stage is needed for the mechanism. In order to receive a recommendation of the implementation in this paper, the user must at least have rated two items.

Abstract [sv]

Rekommendationssystem används idag på många olika hemsidor, och är en mekanism som har syftet att, med noggrannhet, ge en personlig rekommendation av objekt till en mängd olika användare. Ett objekt kan exempelvis vara en film från Netflix. Syftet med denna rapport är att implementera en algoritm som uppfyller fem olika implementationsmål. Målen är enligt följande: algoritmen ska vara enkel att implementera, ha en effektiv tid på dataförfrågan, ge noggranna rekommendationer, sätta låga förväntningar hos användaren samt ska algoritmen inte behöva omfattande förändring vid alternering.  Slope One är en förenklad version av linjär regression, och kan även användas till att rekommendera objekt. Genom att använda datamängden från Netflix Prize från 2009 och måttet Root-Mean-Square-Error (RMSE) som en utvärderare, kan Slope One generera en precision på 1.007 enheter. Den viktade Slope One, som tar hänsyn till varje föremåls relevans, genererar en precision på 0.990 enheter. När dessa två algoritmer kombineras, behövs inte större fundamentala ändringar i implementationen av Slope One. En rekommendation av något objekt kan genereras omedelbart med någon av de två algoritmerna, dock krävs det en förberäkningsfas i mekanismen. För att få en rekommendation av implementationen i denna rapport, måste användaren åtminstone ha värderat två objekt.

Place, publisher, year, edition, pages
Keyword [en]
Slope One, Recommender System, Collaborative-filtering, Netflix Prize
National Category
Computer Science
URN: urn:nbn:se:kth:diva-166438OAI: diva2:811049
Available from: 2015-05-12 Created: 2015-05-10 Last updated: 2015-06-03Bibliographically approved

Open Access in DiVA

fulltext(603 kB)231 downloads
File information
File name FULLTEXT01.pdfFile size 603 kBChecksum SHA-512
Type fulltextMimetype application/pdf

Search in DiVA

By author/editor
Ye, BrianTieu, Benny
By organisation
School of Computer Science and Communication (CSC)
Computer Science

Search outside of DiVA

GoogleGoogle Scholar
Total: 231 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

Total: 770 hits
ReferencesLink to record
Permanent link

Direct link