Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε ...

33
Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε συστήματα διαδραστικής τηλεόρασης. Γιαννακοπούλου Παναγιώτα - Σπαχή Διονυσία ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

description

ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε συστήματα διαδραστικής τηλεόρασης. Γιαννακοπούλου Παναγιώτα - Σπαχή Διονυσία. - PowerPoint PPT Presentation

Transcript of Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε ...

Page 1: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε

συστήματα διαδραστικής τηλεόρασης.

Γιαννακοπούλου Παναγιώτα - Σπαχή Διονυσία

ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ

ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

Page 2: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

System architecture- Block diagram

Media Player Web Browser Proxy Server BBC

Data SetSemantics Component

Media Content

Management System

Streaming Server

Profiles Control System

Web Server

IMDBRecommendation System

Content Based

Filtering

Collaborative Filtering

Client

Media Content

System

Subscriber Profiles/ Ratings

Server

Page 3: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

System architecture – Server side Streaming Server: Ο open source Darwin Streaming Server της Apple

παρέχει VoD και Live Streaming υπηρεσίες [1].

Media Content System: Tο σύστημα στο οποίο αποθηκεύονται τα αρχεία video στον streaming server.

Media Content Management System: Προσδίδει έναν μοναδικό κωδικό σε κάθε νέα ταινία που εισάγεται στο media content system, το CRID (Content Reference IDentifier).

Subscribers’ Profiles/ Ratings: Βάση δεδομένων που περιέχει τα προσωπικά στοιχεία των χρηστών όνομα, επίθετο, username, password, ηλικία, φύλο, επάγγελμα και ένα σύνολο

από είδη ταινιών που αρέσουν στο χρήστη.

και τις βαθμολογίες τους οι βαθμολογίες δίνονται είτε έμμεσα είτε άμεσα από τους χρήστες.

Αποτελείται από τους πίνακες users, profiles, ratings και cbratings.

Page 4: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

System architecture – Server side Profiles Control System: Σύστημα αναγνώρισης της ταυτότητας

του χρήστη (user authentication/sign in) και εγγραφής του (registration).

Web Server: Apache Tomcat web server [2]

Semantics Component: Κομμάτι του συστήματος που επικοινωνεί με εξωτερικές πηγές και αντλεί πληροφορίες για τις ταινίες. Η πηγή πληροφοριών είναι το IMDB [3]. Τα δεδομένα που αντλεί για κάθε ταινία είναι: ο τίτλος, τα είδη της (genres), η πλοκή, ο πρωταγωνιστής,

το έτος παραγωγής, ο σκηνοθέτης, ο παραγωγός, ο σεναριογράφος και η ομιλούμενη γλώσσα.

Page 5: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

System architecture – Server side Data Set: MovieLens dataset [4]. Χρησιμοποιήθηκε για τα

πειράματα και την αξιολόγηση του συστήματος. Αποτελείται από 100K βαθμολογίες που δόθηκαν από 943 χρήστες για 1682 ταινίες. Το dataset αποτελείται από 3 πίνακες: users (UserID::Gender::Age::Occupation::ZipCode), movies (MovieID::Title::Genres) and ratings(UserID::MovieID::Rating::Timestamp)

Recommendation System: Συνδυασμός δύο αλγόριθμων σε έναν υβριδικό που προτείνει ταινίες στους χρήστες. Ο συνδυασμός αλγορίθμων έχει αποδειχθεί ότι δίνει βελτιωμένα αποτελέσματα σε σχέση με αυτά που θα έδινε κάθε αλγόριθμος ξεχωριστά. Οι αλγόριθμοι που συνδυάστηκαν είναι οι collaborative filtering και content based. Επιπλέον με τις συστάσεις ταινιών παρέχεται στο χρήστη και επεξήγηση για τη σύσταση.

Page 6: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

System architecture – Client side Proxy Server: Για λήψη των EPG data από το site του BBC

εγκαταστάθηκε ο Jetty [5] open source web server.

Web Browser: Mozilla Firefox 3.0.5 web browser [6].

Media Player: Για αναπαραγωγή video ενσωματώθηκε στο web browser ο QuickTime Player Pro 7.5 [7]. Ο client ελέγχει τον media player με το QTJava API [8].

BBC: Παρέχει το πρόγραμμα του BBC TV και Radio για 7 ημέρες [9] σε TvAnytime format [10],[11].

Page 7: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Content based

Υλοποιήθηκε ένας bag-of-words naive Bayesian text classifier που επεκτάθηκε να χειρίζεται διανύσματα από «σάκους λέξεων» [12].

Η απεικόνιση των ταινιών διαρθρώνεται στα πεδία (slots): πρωταγωνιστής, είδος ταινίας, σκηνοθέτης, παραγωγός, συγγραφέας, χρονολογία παραγωγής, γλώσσα ταινίας.

Μια ταινία μπορεί να έχει περισσότερες από μία τιμές σε ορισμένα slots → (bag-of-words). Αντιπροσωπεύεται συνολικά από ένα διάνυσμα από bag-of-words.

Πρόβλημα πιθανοτικής κατηγοριοποίησης 5 κλάσεων → Υπολογίζεται η πιθανότητα μιας ταινίας να λάβει βαθμολογία από 1 έως 5.

Page 8: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Content based Φάση εκπαίδευσης (Εκμάθηση προφίλ χρηστών)

Δημιουργία των bags-of-words όλων των slots (όλες οι δυνατές λέξεις του slot). Για κάθε χρήστη

Εύρεση συνόλου ταινιών N που έχει βαθμολογήσει (training movies ). Εύρεση της πιθανότητας κάθε κλάσης:

για όπου

Εύρεση των υπο-συνθήκη πιθανοτήτων κάθε λέξης του slot, δεδομένου ότι ανήκει στην κλάση και στο slot :

όπου ,

= πλήθος λέξεων «σάκου» του m slot της ταινίας, = φορές εμφάνισης της λέξης της ταινίας στο slot

Smoothing των μηδενικών πιθανοτήτων λέξεων.

kw

1

N

j eje

P c N

1: 5j

1

| , ,N

k j m ej kem j me

P w c s n L c s

, 1, 2,...,5jc j , 1, 2,...,7ms m

1

0ej

e j

1

,N

j m ej me

L c s d

, 1eM e N

md

kemn kw eM ms

Page 9: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Content based

Φάση πρόβλεψης (Πρόβλεψη βαθμολογιών)

Για όλες τις ταινίες της βάσης: Εύρεση των posterior πιθανοτήτων για την ταινία Μ για όλες τις κλάσεις με βάση

τον κανόνα του Bayes.

Ανάθεση της ταινίας Μ στην κλάση c που υπολογίστηκε η μεγαλύτερη πιθανότητα (rating = c).

Δημιουργία πίνακα user-ratings.

1 1

| | ,mdS

j

j mi j mm i

P cP c M P a c s

P M

Page 10: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Content based - προβλήματα

Περιορισμένη ανάλυση περιεχομένου: Περιορίζονται από τα χαρακτηριστικά γνωρίσματα που είναι συνδεμένα με τα αντικείμενα. Αν δύο διαφορετικά αντικείμενα αντιπροσωπεύονται από το ίδιο σύνολο χαρακτηριστικών γνωρισμάτων, είναι όμοια.

Υπερειδίκευση: Μπορούν να συστηθούν μόνο αντικείμενα που σημειώνουν υψηλό σκορ σε σχέση με το προφίλ του χρήστη → ο χρήστης περιορίζεται στη σύσταση αντικειμένων παρόμοια με εκείνα που έχει ήδη βαθμολογήσει.

Cold-Start Problem: Ο χρήστης πρέπει να βαθμολογήσει έναν ικανοποιητικό αριθμό αντικειμένων ώστε να κατανοηθούν οι προτιμήσεις του χρήστη.

Page 11: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Collaborative filtering

Εφαρμόστηκε ο Collaborative filtering with cluster based smoothing [13].Είναι ένας memory based Pearson correlation coefficient αλγόριθμος. Σύνοψη αλγόριθμου:

Clustering: Ομαδοποίηση των χρηστών του dataset σε Ν ομάδες με k-means [14] και κριτήριο τη συνάρτηση συσχέτισης Pearson:

Ο k-means τερματίζει όταν ελαχιστοποιηθεί ο αριθμός των χρηστών που αλλάζουν cluster ανάμεσα σε δύο επαναλήψεις.

Data smoothing: Συμπληρώνονται οι βαθμολογίες κάθε χρήστη για τις ταινίες του dataset που δεν έχει βαθμολογήσει. Οι νέες βαθμολογίες βασίζονται στις βαθμολογίες που έχουν δώσει οι υπόλοιποι χρήστες του cluster του.

' '

'( )

( ) ( ),( ( ) )

( )( )u

u

u u

Cu C t u

u u CuR t R R t ό

R t RR t

C t

' '

'

'

' '

' '

( ) ( )

u,u 2 2

( ) ( ) ( ) ( )

( ( ) ( ))( ( ) ( ))

sim( ( ) ( )) ( ( ) ( ))

u u u ut T u T u

u u u ut T u T u t T u T u

R t R t R t R t

R t R t R t R t

( ),

( ),( ) { u

u

R t u tu R tR t

Page 12: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Collaborative filtering

Προεπιλογή των γειτόνων: Ένταξη κάθε νέου χρήστη σε ένα από τα clusters. Αρχικά υπολογίζεται η συσχέτισή του με όλα τα centroids. Τελικά τοποθετείται στο cluster με το οποίο έχει τη μεγαλύτερη συσχέτιση.

Επιλογή των κοντινότερων γειτόνων: Το σύνολο των κοντινότερων γειτόνων είναι οι κ χρήστες του cluster με τους οποίους ο νέος χρήστης έχει τη μεγαλύτερη ομοιότητα.

Πρόβλεψη βαθμολογίας: Πρόβλεψη της βαθμολογίας του νέου χρήστη για όλες τις ταινίες του dataset με βάση τις βαθμολογίες των κοντινότερων γειτόνων.

a a

a

a a

u u( )

u,u2 2 2

u u( ) ( )

( ( ) ( ))( ( ) ( ))

sim( ( ) ( )) ( ( ) ( ))

a

a a

ut u ut T u

ut u ut T u t T u

w R t R t R t R t

w R t R t R t R t

1{ tutw

a a

1 ,

u u1 ,

( ( ) )R ( ) R

a

a

Ki ut u u u u

Ki ut u u

w sim R t Rt

w sim

Page 13: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Collaborative filtering - προβλήματα Cold-Start Problem: Δημιουργείται από τους νέους χρήστες στο σύστημα

που δεν έχουν βαθμολογήσει κανένα αντικείμενο → το σύστημα αδυνατεί να βρει παρόμοιους χρήστες-γείτονες και δεν μπορεί να κάνει προβλέψεις.

First-Rater Problem: Δημιουργείται από τα νέα αντικείμενα στο σύστημα που δεν έχουν βαθμολογηθεί από κανένα χρήστη. Ο CF εξαρτάται αποκλειστικά από τη βαθμολογία των άλλων χρηστών → το σύστημα δεν μπορεί να δημιουργήσει προτάσεις στους χρήστες για αυτά τα αντικείμενα μέχρι να λάβουν έναν ικανοποιητικό αριθμό βαθμολογιών.

Gray sheep Problem: Ο χρήστης συμπίπτει με τα σύνορα μεταξύ των υπαρχόντων κλάσεων των χρηστών → δεν μπορεί να ταξινομηθεί σε καμία κλάση!

Data Sparsity: Οφείλεται στο γεγονός ότι οι χρήστες βαθμολογούν μόνο ένα μικρό αριθμό αντικειμένων.

Page 14: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Hybrid approach – Which are the problems to solve? Πρόβλημα του content based είναι ότι προτείνει

μόνο παρόμοιες ταινίες με αυτές που ο χρήστης έχει ήδη δει. Επίσης πάσχει από το cold start πρόβλημα.

Εχθροί του collaborative filtering είναι το cold start, το data sparsity και το gray sheep πρόβλημα.

Πώς θα τους συνδυάσουμε ώστε ο ένας να καταστέλλει τα προβλήματα του άλλου??

Page 15: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Hybrid approach – In which order ? Σύμφωνα με τον Burke [15] το αποδοτικότερο σχήμα είναι το

σειριακό (cascade hybrid).

Ο πρώτος αλγόριθμος δίνει τις προβλέψεις του σε μία σειρά από διατεταγμένες κλάσεις Β0-Βn [16]. Στην ίδια κλάση ταξινομούνται οι ταινίες που είναι το ίδιο καλές προτάσεις.

O δεύτερος αλγόριθμος βελτιώνει τα αποτελέσματα του πρώτου.

Με ποια σειρά θα συνδυάσουμε τους δύο αλγόριθμους?

Page 16: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Hybrid approach – In which order ? Έστω ότι εφαρμόζουμε πρώτα τον collaborative filtering. Θα

έχουμε να αντιμετωπίσουμε: Data sparsity και Cold start

Ενώ αν εφαρμόσουμε πρώτα τον content based: Cold start

γιατί ο content based εξαλείφει το data sparsity!!

Επιπλέον τοποθετήσαμε στη φόρμα εγγραφής του χρήστη μία λίστα από είδη ταινιών που μπορεί να βαθμολογήσει. Έτσι αντιμετωπίσαμε και το cold start πρόβλημα.

Page 17: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Explanations – Why?

Για να γνωρίζει ο χρήστης το λόγο που του προτάθηκε η ταινία.

Για να εμπιστευτεί τις προτάσεις του συστήματος.

Για να καταλάβει καλύτερα τον τρόπο που λειτουργεί το σύστημα.

Για να μη χάνει το χρόνο του με ταινίες που δεν θα του αρέσουν.

Page 18: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Explanations – Content based

Είναι τα features της ταινίας που την καθιστούν παρόμοια με τις άλλες ταινίες που ο χρήστης έχει αξιολογήσει θετικά.

Για την ταινία που πρότεινε ο αλγόριθμος συγκρίνονται όλες οι υπο-συνθήκη πιθανότητες των λέξεων της ταινίας.

Το κάθε slot της ταινίας μπορεί να έχει περισσότερες από μία τιμές (bags-of-words).

Το feature του slot με τιμή τη μεγαλύτερη υπο-συνθήκη πιθανότητα είναι το «ισχυρό» feature της ταινίας (με τη μεγαλύτερη διαχωριστική ικανότητα) και αποτελεί το λόγο για τον οποίο προτάθηκε η συγκεκριμένη ταινία.

Page 19: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Explanations – Collaborative Filtering Είναι το ποσοστό των κοντινότερων γειτόνων που έχουν

αξιολογήσει θετικά την ταινία – Explanations Ratio (ER)

Ορίζουμε κατώφλι την κατώτερη βαθμολογία που θεωρείται θετική αξιολόγηση.

Στο ποσοστό των κοντινότερων γειτόνων προσμετρούνται όσοι έχουν βαθμολογήσει την ταινία πάνω από το κατώφλι. Για 1<i<K, αν PositiveCounter =PositiveCounter+1

thR

iu thR >R

PositiveCounter

KER

Page 20: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Experiments – Content based Το αρχικό dataset που χρησιμοποιήθηκε περιέχει 943 χρήστες

και 1682 ταινίες.

Για την εκπαίδευσή του για κάθε χρήστη χρησιμοποιήθηκε το 50% των ταινιών που έχει βαθμολογήσει ο χρήστης.

Στόχος είναι η εύρεση του dataset που θα δίνει καλύτερα αποτελέσματα στον Collaborative Filtering αλγόριθμο και κατ’ επέκταση στον υβριδικό.

Για κάθε χρήστη το ΜΑΕ μετρήθηκε ως

με το μέγεθος του test set.

i

u j u ju Tuser

R t R tMAE

T

T

Page 21: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Experiments – Content based Πείραμα 1: Απόδοση CB ανάλογα με το σύνολο των

βαθμολογιών ανά χρήστη.

First set of experiments

0,895

0,905

0,915

0,925

0,935

0,945

0,955

18 21 25 40 60 80 105

# user ratings / user

MA

E

100

200

300

400

500

600

700

800

900

1000

# users

MAE

Page 22: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Experiments – Content based Πείραμα 2: Απόδοση CB ανάλογα με τα features που

χρησιμοποιούνται για να περιγράψουν μια ταινία.

Page 23: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Experiments – Content based Πείραμα 3: Απόδοση CB ανάλογα με το πλήθος των

βαθμολογιών ανά ταινία (με # user_ratings / user > 40).

Ελαττώνεται πολύ

το πλήθος των

ratings! -> ο

CF δεν μπορεί

να εξάγει

αποτελέσματα!

Second set of experiments

0,885

0,89

0,895

0,9

0,905

0,91

0,915

0,92

0,925

5 15 20 30

# user ratings / movie

MA

E

570

670

770

870

970

1070

1170

1270

1370

MAE

# movies

# users

Page 24: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Experiments – Content based Πείραμα 4: Απόδοση CB θέτοντας κριτήρια στα features των

ταινιών (με # user_ratings / user > 40).

Ελαττώνονται πολύ

το πλήθος ταινιών

και χρηστών -> ο

CF δεν μπορεί

να εξάγει

αποτελέσματα!

Page 25: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Experiments – Collaborative filtering Για να μπορεί να δώσει προβλέψεις, στα πειράματα

συμμετείχαν οι χρήστες με περισσότερες από 40 βαθμολογίες – 622 από τους 943.

Οι 200 πρώτοι χρήστες χρησιμοποιούνται πάντα για training και ένα ποσοστό από τους τελευταίους για evaluation.

Από τους evaluation users λήφθηκε υπ’ όψη ένα μέρος των βαθμολογιών τους (Evaluation Ratings Per User - ERPU).

Page 26: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Experiments – Collaborative filtering 1ο σετ πειραμάτων για διαφορετικές τιμές της παραμέτρου λ

(0<λ<1). λ = 0: ο collaborative filtering χρησιμοποιεί τις βαθμολογίες των

κοντινότερων γειτόνων για προβλέψεις. λ = 1: χρησιμοποιεί τις μέσες τιμές των βαθμολογιών των

κοντινότερων γειτόνων. F irst se t o f e xp e rime n ts

0,00000

0,20000

0,40000

0,60000

0,80000

1,00000

1,20000

1,40000

187 193 199 205 211 218 224 230 236 243

N u m b e r o f t r a i n i n g u se r s

MA

E

λ = 0

λ = 0.1

λ = 0.2

λ = 0.3

λ = 0.4

λ = 0.5

Page 27: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Experiments – Collaborative filtering 2ο σετ πειραμάτων για διαφορετικές τιμές της ERPU

(5, 7, 10, 12, 15, 17 και 20 ).

S e co n d se t o f e xp e rime n ts

0

0,2

0,4

0,6

0,8

1

1,2

1,4

1,6

187 193 199 205 211 218 224 230 236 243

N u m b e r o f tra in in g u se rs

MA

E

ERPU = 5

ERPU = 7

ERPU = 10

ERPU = 12

ERPU = 15

ERPU = 17

ERPU = 20

Page 28: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Experiments - Hybrid

Στο 1ο σετ πειραμάτων όμοια με το 1ο σετ πειραμάτων collaborative filtering αλλάξαμε τις τιμές της παραμέτρου λ.

Το 2ο σετ πειραμάτων είναι ίδιο με το 2ο σετ του collaborative filtering. Αλλάξαμε τις τιμές της ERPU.

Το 3ο σετ πειραμάτων είναι ίδιο με το 3ο σετ πειραμάτων του content based.

Πώς θα επηρεαστεί ο υβριδικός από τις αλλαγές??

Page 29: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Experiments - Hybrid

Ο υβριδικός δεν επηρεάζεται από τις αλλαγές στον collaborative filtering!!

First se t of e xpe rime nts

0,83000

0,84000

0,85000

0,86000

0,87000

0,88000

0,89000

0,90000

0,91000

0,92000

0,93000

187 193 199 205 211 218 224 230 236 243

Nu m b e r o f tra in in g u se rs

MA

E

λ = 0

λ = 0.1

λ = 0.2

λ = 0.3

λ = 0.4

λ = 0.5

Page 30: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Experiments - Hybrid

Καλύτερη επίδοση για ERPU=5.

S e co n d se t o f e xp e rime n ts

0,00000

0,20000

0,40000

0,60000

0,80000

1,00000

1,20000

1,40000

1,60000

187 193 199 205 211 218 224 230 236 243

N u m b e r o f tra in in g u se rs

MA

E

E R P U = 5

E R P U = 7

E R P U = 10

E R P U = 12

E R P U = 15

E R P U = 17

E R P U = 20

Page 31: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Experiments - Hybrid

Ο υβριδικός δεν επηρεάζεται από τις αλλαγές στον content based!!

Third set of experiments

0,83000

0,84000

0,85000

0,86000

0,87000

0,88000

0,89000

0,90000

0,91000

0,92000

0,93000

187 193 199 205 211 218 224 230 236 243

N u m b e r o f tra in in g u se rs

MA

E (

hy

bri

d) cbratings_noyear

cbratings_nolangu

cbratings_ nowriteryear

cbratings_ nowriteryearlangu

cbratings_nolanguyear

Page 32: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

Hybrid vs Collaborative filteringΟ υβριδικός έχει καλύτερη απόδοση και πιο σταθερή πορεία.

Μέσο MAE(colfilt)=1,12 Μέσο ΜΑΕ(hybrid)=0,89Τυπική απόκλιση(colfilt)=0,014 Τυπική απόκλιση(hybrid)=0,067

F irs t s e t o f e x p e rime n ts

0,00000

0,20000

0,40000

0,60000

0,80000

1,00000

1,20000

1,40000

187 193 199 205 211 218 224 230 236 243

N u m b e r o f tra in in g u se rs

MA

E

λ = 0

λ = 0.1

λ = 0.2

λ = 0.3

λ = 0.4

λ = 0.5

hybrid

Page 33: Ένας υβριδικός αλγόριθμος για συστάσεις ταινιών σε  συστήματα διαδραστικής τηλεόρασης.

References

1. http://developer.apple.com/opensource/server/streaming/index.html2. http://tomcat.apache.org/3. http://www.imdb.com 4. http://www.grouplens.org/node/73#attachments5. http://www.mortbay.org/jetty/6. http://www.mozilla.com/en-US/firefox/firefox.html7. http://www.apple.com/quicktime/8. http://developer.apple.com/quicktime/qtjava/9. http://backstage.bbc.co.uk/data/7DayListingData?v=16wk10. http://www.tv-anytime.org/11. http://www.bbc.co.uk/opensource/projects/tv_anytime_api/12. Mooney, R. J., P. N. Bennett, and L. Roy. Book recommending using text categorization with

extracted information. In Recommender Systems. Papers from 1998 Workshop. Technical Report WS-98-08. AAAI Press, 1998.

13. Gui-Rong Xue, Chenxi Lin, Qiang Yang, WenSi Xi, Hua-Jun Zeng , Yong Yu and Zheng Chen, Scalable Collaborative filtering Using Cluster-based smoothing* . In Proceedings of the 2005 ACM SIGIR Conference, Salvador, Brazil, 2005, pp. 114-121

14. http://www.clustan.com/k-means_critique.html15. Robin Burke. Hybrid Recommender Systems: Survey and Experiments. California State

University, Fullerton 2002.16. Robin Burke. Integrating Knowledge-based and Collaborative-filtering Recommender

Systems. In Workshop on AI and Electronic Commerce, AAAI 1999.