1. Systemy rekomendacji
Adam Kawa
Seminarium: Systemy przetwarzania informacji
09.01.2008, godz. 12:15
2. Systemy rekomendacji
Plan prezentacji
Wprowadzenie
Metody zbierania informacji o u甜ytkowniku
Techniki rekomendacji
Problemy, trudnoci i wyzwania
Przykady aplikacji
3. Wprowadzenie
Definicja
Systemy rekomendacji to programy, kt坦re
straj si przedstawi informacje o przedmiotach (np. muzka, filmy),
kt坦rymi dany u甜ytkownik m坦gby by zainteresowany
wykorzystuj w tym celu zebrane informacje na temat preferencji i cech
u甜ytkownika, preferencji i cech innych u甜ytkownik坦w oraz atrybut坦w
przedmiot坦w.
5. Wprowadzenie
Przyczyny powstania [2]
przyrost liczby u甜ytkownik坦w (wiksze
zr坦甜nicowanie ich potrzeb)
przyrost iloci danych (udostpnianych oraz
poszukiwanych)
ten sam czas, kt坦ry mo甜na powici na
znalezienie interesujcych informacji
ten sam czas, kt坦ry mo甜na powici na
zrozumienie i wykorzystanie znalezionych
informacji
6. Wprowadzenie
Mo甜liwe korzyci [2]
Dla u甜ytkownik坦w
szybki dostp do poszukiwanych zasob坦w
mo甜liwo otrzymania informacji zgodnej z preferencjami i oczekiwaniami
Dla wacicieli:
pozyskanie licznej grupy klient坦w
mo甜liwo zdefiniowania grup docelowych, do kt坦rych mog by
kierowane szczeg坦owe treci i oferty
zdobycie uznania wr坦d u甜ytkownik坦w za dostosowanie portalu do ich
potrzeb
szansa na pozyskanie lojalnoci
konkurencyjno wobec serwis坦w, kt坦re nie stosuj
takich praktyk
7. Wprowadzenie
Problem rekomendacji (uproszczony) [3]
Niech
C - zbi坦r wszystkich u甜ytkownik坦w
I - zbi坦r rekomendowanych przedmiot坦w (np. ksizki, filmy, usugi
finansowe)
R - uporzdkowany zbi坦r (np. liczb cakowitych z zakresu <1,100>)
u : C I R - funkcja u甜ytecznoci przedmiotu i dla u甜ytkownika c.
Zadanie:
cC , i c =max u c ,i
iI
(dla ka甜dego u甜ytkownika znale添 przedmiot o najwikszej wartoci funkcji
u甜ytecznoci)
8. Systemy rekomendacji
Problem rekomendacji (uproszczony) [2]
Og坦lna idea dziaania
identyfikacja u甜ytkownika (zebranie infromacji o nim)
analiza danych (stworzenie profilu u甜ytkownika reprezentujcego jego
preferencje)
indywidualizacja zasob坦w (rekomendacja przedmiot坦w najbardziej
pasujcych do profilu danego u甜ytkownika)
9. Systemy rekomendacji
Plan prezentacji
Wprowadzenie
Metody zbierania informacji o u甜ytkowniku
Techniki rekomendacji
Problemy, trudnoci i wyzwania
Przykady aplikacji
10. Metody zbierania informacji
Metody zbierania informacji o u甜ytkowniku
Profilowanie jawne (explicit profile)
Profilowanie domniemane (implicit profile)
11. Metody zbierania informacji
Profilowanie jawne (explicit profile)
uzyskiwanie informacji bezporednio od u甜ytkownika poprzez wypenianie
kwestionariuszy lub odpowiadanie na pytania, np.
ocena przedmiotu w skali liczbowej
uszeregowanie listy przedmiot坦w od najbardziej do najmniej ulubionych
utworzenie listy przedmiot坦w, kt坦re u甜ytkownik (nie) lubi.
subiektywny obraz profilu u甜ytkownika
spotykane z niechci ze strony u甜ytkownika
trudnoci w pozyskiwaniu du甜ej liczy informacjii
12. Metody zbierania informacji
Profilowanie domniemane (implicit profile)
obserowanie zachowa u甜ytkownika, np.
prowadzenie archiwum zakupionych przedmiot坦w
utrzymywanie listy ostatnio przegldanych przedmiot坦w
analiza cech ogldanych przedmiot坦w
analiza czasu powiconego na ogldanie przedmiotu
wyszukiwanie innych u甜ytkownik坦w o podobnych gustach
rzeczywisty i aktualny obraz profilu u甜ytkownika na podstawie jego
faktycznego zachowania
niewidoczne dla u甜ytkownika
umo甜liwia zebranie wikszej iloci informacji
13. Systemy rekomendacji
Plan prezentacji
Wprowadzenie
Metody zbierania informacji o u甜ytkowniku
Techniki rekomendacji
Problemy, trudnoci i wyzwania
Przykady aplikacji
14. Techniki rekomendacji
Techniki rekomendacji
Niespersonalizowane
Oparte na u甜ytkowniku (user-based)
Oparte na zawartoci (content-based)
Kolaboratywne filtrowanie (collaborative filtering)
Oparte na u甜ytkowniku (user-based)
Hybrydowe metody (hybrid methods) - lczce powy甜sze techniki
15. Techniki rekomendacji
Niespersonalizowane (non-personalized) [1]
Rekomendacja najpopularniejszych przedmiot坦w wszystkim u甜ytkownikom.
popularno: oceny u甜ytkownik坦w, dane sprzeda甜y, ogldalno itd.
obliczenie redniej oceny popularnoci dla ka甜dego przedmiotu
rekomendacja przedmiot坦w z najwy甜sz redni ocen
np. prezentacja listy 10 najpopularniejszych film坦w (komedii)
16. Techniki rekomendacji
Oparte na u甜ytkowniku (user-based) [1]
Rekomendacja tych samych przedmiot坦w grupom u甜ytkownik坦w o wsp坦lnych
cechach osobistych.
cechy osobiste: wiek, pe, kraj, zaw坦d, stan cywilny itd.
znalezienie u甜ytkownik坦w o podobnych cechach
rekomendacja przedmiot坦w wybieranych przez u甜ytkownik坦w o podobnych
cechach
17. Techniki rekomendacji
Oparte na u甜ytkowniku (user-based) [1]
znalezienie u甜ytkownik坦w o podobnych cechach
np. algorytm K-najbli甜szych ssiad坦w z funkcj odlegoci:
D(u,v) = dwiek(u,v) + dpec(u,v) + dhobby(u,v) + ...
dwiek(u,v) = | u.wiek v.wiek | / max_roznica_wiek
rekomendacja przedmiot坦w wybieranych przez u甜ytkownik坦w o podobnych
cechach
np. rednia wa甜ona ocen ssiad坦w
Pa , j=
r u , jw a , j , w a , j =min
1
, max waga
wa , u D a , u
18. Techniki rekomendacji
Niespersonalizowane (non-personalized) oraz oparte na
u甜ytkowniku (user-based) [1]
Zalety
mo甜liwo obliczenia rekomendacji bez koniecznoci zebrania informacji
na temat cech przedmiot坦w oraz preferencji i gust坦w u甜ytkownika
Wady i problemy
niski stopie personalizacji rekomendacji
niewystarczajcy wsp坦czynnik trafnoci rekomendacji
19. Techniki rekomendacji
Oparte na zawartoci (content-based) [1]
Rekomendacja przedmiot坦w o podobnych cechach, jak te przedmioty, kt坦rymi
u甜ytkownik by w przeszoci zainteresowany.
cechy przedmiot坦w: np. film - rodzaj, re甜yser, obsada, opis, sowa kluczowe,
nagrody itd.
zebranie informacji na temat cech przedmiot坦w
znalezienie najbardziej podobnych przedmiot坦w do preferowanych wczeniej
przez u甜ytkownika
rekomendacja przedmiot坦w najbardziej pasujcych do profilu u甜ytkownika
20. Techniki rekomendacji
Oparte na zawartoci (content-based)
zebranie informacji na temat cech przedmiot坦w
najczciej wykorzystywane s tekstowe opisy przedmiot坦w za pomoc
s坦w kluczowych, np.
system rekomendacji stron internetowych Fab reprezentuje stron
internetow za pomoc 100 najistotniejszych s坦w
system rekomendacji ksi甜ek LIBRA reprezentuje ksizke za pomoc
wektora zbior坦w s坦w kluczowych tzn.
ksizka = [autor, tytu, temat, opis, ...]
temat = [...], opis = [...]
internetowe bazy danych, np. http://www.imdb.com/
booty intenetowe
21. Techniki rekomendacji
Oparte na zawartoci (content-based) [3]
zebranie informacji na temat cech przedmiot坦w
miara poziomu istotnoci (wa甜noci) sowa k i w dokumencie dj
term frequency/inverse document frequency (TF-IDF)
N - liczba rekomendowanych dokument坦w
ni - ilo dokument坦w, w kt坦rych wystpuje sowo kluczowe ki
fij - ilo wystpie sowa kluczowego ki w dokumencie dj
f i, j
TF i , j = - frekwencja sowa ki w dokumencie dj
max f z , j
f z, j d j
N
IDF i =log - odwrotna frekwencja dokumentu dla sowa ki
ni
w i , j =TF i , j IDF i - waga sowa ki w dokumencie dj
content d j =[w 1, j , w2, j ,... , w m , j ] - opis dokumentu dj
22. Techniki rekomendacji
Oparte na zawartoci (content-based)
okrelenie profilu u甜ytkownika na podstawie zebranych danych
user_profile(c) = [wc1, wc2, ..., wcm], wektor wag, gdzie waga wci oznacza
poziom istotnoci sowa kluczowego ki dla u甜ytkownika c.
rednie wagi s坦w kluczowych w mierze TF-IDF
prawdopodobiestwa istotnoci s坦w kluczowych obliczone przez sie
Bayessowska
rekomendacja przedmiot坦w najbardziej pasujcych do profilu u甜ytkownika
u(c,i) = score(user_profile(c), content(i))
cosinus kta midzy wektorami
w w
c i
u c ,i =cos c , i =
w w
c i
w w
23. Techniki rekomendacji
Oparte na zawartoci (content-based)
inne metody wykorzystywane w rekomendacji opartej na zawartoci
obliczanie funkcji u甜ytecznoci z wykorzystaniem pewnego modelu
wyuczonego na podstawie danych treningowych
naiwny klasyfikator bayessowski
oszacowuje prawdopodbiestwo, 甜e dany przedmiot p nale甜y do
j
pewnej klasy Ci (np. odpowiedni, nieodpowiedni) na podstawie
danego zbioru s坦w kluczowych k1,j,..., kn,j opisujcych przedmiot pj
P p j C i = PC i | k 1, j ...k n , j
przy (upraszczajcym) zao甜eniu niezale甜noci s坦w kluczowych
P p j C i =P C i x P k x , j |C i
wysoka trafno klasyfikacji
24. Techniki rekomendacji
Oparte na zawartoci (content-based)
Wady i problemy
ograniczona analiza zawartoci
konieczno reprezentowania opisu przedmiotu w formie
umo甜liwiajcej jego automatyczn analiz przez komputer (np. tekst)
lub wprowadzenia go rcznie
trudnoci w analizie zawartoci niekt坦rych przedmiot坦w np. obraz坦w,
d添wik坦w, strumieni video
nie rozr坦znianie r坦甜nych przedmiot坦w reprezentowanych przez
identyczne zbiory cech (nieuwzgldnianie jakoci przedmiotu)
25. Techniki rekomendacji
Oparte na zawartoci (content-based)
Wady i problemy
zbyt wysoka specjalizacja
rekomendacja jedynie dla przedmiot坦w pasujcych do profilu
u甜ytkownika (zbyt jednorodne alternatywy, brak niespodziewanych
rekomendacji)
wysokie prawdopodobiestwo rekomendacji niemal甜e identycznych
przedmiot坦w (np. newsy opisujce te same wydarzenie)
problem nowego u甜ytkownika (new user problem)
niemo甜liwo udzielenia trafnych rekomendacji dla u甜ytkownika, kt坦ry
nie oceni wystarczajco du甜ej liczby przedmiot坦w
26. Techniki rekomendacji
Kolaboratywne filtrowanie oparte na u甜ytkowniku
(user-based collaborative filtering) [1]
rekomendacja przedmiot坦w, kt坦rymi byli zainteresowani inni u甜ytkownicy o
podobnych preferencjach i oczekiwaniach
analogia do ustnej rekomendacji
oceny u甜ytkownik坦w, dane sprzeda甜y, ogldalno itd.
zebranie informacji na temat gust坦w u甜ytkownika
znalezienie u甜ytkownik坦w o najbardziej podobnych preferencjach i gustach
rekomendacja na podstawie preferencji podobnych u甜ytkownik坦w
27. Techniki rekomendacji
Kolaboratywne filtrowanie oparte na u甜ytkowniku
(user-based collaborative filtering)
znalezienie u甜ytkownik坦w o najbardziej podobnych preferencjach i
oczekiwaniach
I u , v ={i I : ru ,i , r v , i }
wsp坦czynnik korelacji Pearsona
r u , i r u r v , i r v
iI u ,v
similarity u , v =
r u ,i r u 2 r v , ir v 2
iI u , v iI u , v
cosinus kta midzy wektorami
u =[ r u ,i : r u , i I u , v ] ,
w v =[r v , i : r v ,i I u , v ]
w
w w
uv
similarity u , v =cosu , v =
w w
u v
w w
28. Techniki rekomendacji
Kolaboratywne filtrowanie oparte na u甜ytkowniku
(user-based collaborative filtering) [3]
rekomendacja na podstawie preferencji podobnych u甜ytkownik坦w
1
r u , i=
N
r u ' ,i
u ' U '
r u , i=k u similarity u , u ' r u ' ,i
u ' U '
r u , i= r u k u
similarity u , u' r u ' , i r ' (uwzgldnienie u甜ycia
u
u ' U '
r坦甜nych skali ocen przez r坦甜nych u甜ytkownik坦w)
k u =1/ similarity u , u'
u ' U '
r u - rednia ocen u甜ytkownika u
29. Techniki rekomendacji
Kolaboratywne filtrowanie oparte na u甜ytkowniku
(user-based collaborative filtering)
Zalety
mo甜liwo rekomendacji produkt坦w, bez koniecznoci zebrania informacji
na temat ich atrybut坦w, cech.
mo甜liwo rekomendacji produkt坦w, kt坦rych atrybuty s niedostpne lub
trudne w analizie np. obrazy, d添wiki, idee, opinie.
mo甜liwo rekomendacji przypadkowych, ale odpowiadajcych
preferencjom u甜ytkownika przedmiot坦w
30. Techniki rekomendacji
Kolaboratywne filtrowanie oparte na u甜ytkowniku
(user-based collaborative filtering)
Wady i problemy
new user problem
new item problem - brak mo甜liwoci rekomendacji nowych przedmiot坦w
zanim nie zostan one ocenione przez wystarczajco du甜 liczb
u甜ytkownik坦w
sparsity problem - brak ocen danego u甜ytkownika dla zdecydowanej
wiszoci przedmiot坦w; rzadka macierz u甜ytkownik-przedmiot
niewystarczajco dobre rekomendacje dla u甜ytkownik坦w o
zr坦甜nicowanych opiniach lub nietypowych preferencjach.
31. Techniki rekomendacji
Hybrydowe systemy rekomendacji (hybrid
recommender systems)
Rekomendacja przedmiot坦w z jednoczesnym wykorzystaniem r坦甜nych technik
rekomendacji (najczciej - opartej na zawartoci i kolaboratywnego
filtrowania) w celu uniknicia ogranicze zwizanych z ich niezale甜nym
stosowaniem.
Przykad: Content-Boosted Collaborative Filtering
poprawa istniejcych danych na temat u甜ytkownik坦w i przedmiot坦w
poprzez wykorzystanie cechy osobistych u甜ytkownik坦w oraz zawartoci
przedmiot坦w (wygenerowanie pseudo-ocen)
spersonalizowane rekomendacje przy u甜ytciu kolaboratywnego filtrowania
lepsze wyniki ni甜 te, kt坦re daj niezale甜nie dziaajce rekomendacje oparte
na zawartoci, kolaboratywne filtrowanie oraz proste systemy hybrydowe
32. Systemy rekomendacji
Plan prezentacji
Wprowadzenie
Metody zbierania informacji o u甜ytkowniku
Techniki rekomendacji
Problemy, trudnoci i wyzwania
Przykady aplikacji
33. Problemy, trudnoci i wyzwania
Problemy, trudnoci i ich typowe rozwizania
wielowymiarowe rekomendacje [3]
uwzgldnienie dodatkowych kontekstowych informacji (np. dzie
tygodnia, pora roku, miejsce)
zdefiniowanie funkcji u甜ytecznoci nad wielowymiarow dziedzin
D 1 ... D n zamiast dwuwymiarowej u甜ytkownik przedmiot tj.
u: D1 ... D n R
np. d3 - miejsce ogldania filmu (kino, mieszkanie); d4 - czas (dzie
roboczy, weekend, ranek, wiecz坦r); d5 - osoby towarzyszce (rodzice,
dziewczyna, przyjaciele)
redukcja do problemu dwuwymiarowej rekomendacji przez wybranie
element坦w speniajcych dodatkowe kontekstowe kryteria (tagi tekstowe)
34. Problemy, trudnoci i wyzwania
Problemy, trudnoci i ich typowe rozwizania
multikryterialne oceny [3]
wykorzystanie ocen wielu kryteri坦w przy kocowej ocenie danego przedmiotu
np. rekomendacja restauracji - ocena jedzenia, dekoracji oraz serwisu
kombinacja liniowa ocen wszystkich kryteri坦w
optymalizacja oceny nawa甜niejszego kryterium, traktujc pozostae jako
stae, niech np.
fc(r), dc(r), sc(r) oceny u甜ytkownika c dotyczce odpowiednio jedzenia,
dekoracji i serwisu w restarauracji r
wybranie fc(r) jako najwa甜niejszego kryterium oceny restauracji r
znalezienie restauracji r o najwikszej wartoci fc(r), t.甜e dc(r)>d i sc(r)>s
konieczno szacowania niekt坦rych wartoci spor坦d fc(r), dc(r), sc(r)
35. Problemy, trudnoci i wyzwania
Problemy, trudnoci i ich typowe rozwizania
zoliwi u甜ytkownicy [3]
oszukiwanie system坦w rekomendacji w celu zwikszenia popularnoci
wasnych przedmiot坦w
zatrudnianie u甜ytkownik坦w wysoko oceniajcych wskazane
przedmioty
wykorzystanie bot坦w internetowych generujcych sztuczne
zainteresowanie wskazanymi przedmiotami
inwazyjno - trudnoci w jawnym zbieraniu informacji
profilowanie doniemane - zbieranie i analizowanie np. danych sprzeda甜y,
czstoci i czasu ogldania przedmiotu, sekwencji klikni na stronie
36. Problemy, trudnoci i wyzwania
Problemy, trudnoci i ich typowe rozwizania
zbyt wysoka specjalizacja
unikanie rekomendacji zbyt podobnych przedmiot坦w do tych, kt坦rymi
u甜ytkownik by zainteresowany w przeszoci
cold-start oraz sparsity problem
zbyt mao danych w pocztkowej fazie dziaania systemu (new user, new
item problem)
wykorzystanie cech osobowych u甜ytkownika oraz zawartoci przedmiotu
pseudo-oceny dla przedmiot坦w, kt坦re nie zostay ocenione przez danego
u甜ytkownika
38. Problemy, trudnoci i wyzwania
The Netflix $1 Million Prize
konkurs ogoszony przez Netflix, internetow wypo甜yczalnie film坦w w
pa添dzierniku 2006 roku.
zasady i idea konkursu
poprawa wsp坦czynnika trafnoci systemu rekomendacji Netfixa o 10%
udostpnienie bazy danych klient坦w (ponad 100 milion坦w ocen, 17,770
film坦w, 480,189 os坦b) jako zbioru treningowego
testowanie system坦w na aktualizowanych (utajnionych) danych
nagroda - 1.000.000 $ (wci甜 do wygrania!!)
dotychczasowe najlepsze wyniki
1. 8.50%, B.Bell i Y.Koren - AT&T Research,
8. 7.62%, Arek Paterek Uniwersytet Warszawski
40. Aplikacje
Last.fm
internetowa radiostacja i system muzycznych rekomendacji
ponad 20 milion坦w aktywnych u甜ytkownik坦w z 232 kraj坦w
rekomendacje bazowane na podstawie odsuchiwanych piosenek i gustach
muzycznych ssiad坦w
mo甜liwo rekomendacji przez u甜ytkownik坦w wybranych wykonawc坦w,
utwor坦w lub album坦w muzycznych innym u甜ytkownikom
mo甜liwo tagowania artyst坦w, album坦w i utwor坦w, dziki czemu mo甜na
sucha muzyki oznaczonej w wybrany spos坦b np. early british rock,
piosenkarze, kt坦rych X by lubi
41. Aplikacje
Levis / Style Finder
rekomendacja produkt坦w firmy odzie甜owej
Levi StrausTM
wymagane informacje na temat pci oraz
ocena minimum 4 napis坦w, subkategorii
spor坦d kategorii: muzyka, wygld, zabawa w
skali 1-7.
kolaboratywne filtrowanie oparte na
u甜ytkowniku (user-based collaborative
filtering)
prezentacja listy Top-6 przedmiot坦w
wzrost rednio o 33 % warto zakup坦w
realizowanych w sklepie internetowym
87% badanych zadeklarowao, i甜 kupioby
rekomendowany produkt.
43. Aplikacje
hakia
wyszukiwarka internetowa, kt坦ra
umo甜liwia kontakt z osobami
szukajcymi informacji na
podobny temat
rekomendacje przedstawiane
przez ludzi (silna analogia do
ustnej promocji przedmiotu)
45. Systemy rekomendacji
Bibliografia
[1] What is a Recommender System?, Juntae Kim
[2] Personalizacja portalu jako instrument marketingu,
http://marketing.nf.pl/Artykul/7623/Personalizacja-portalu-jako-instrument-marketingu/
[3] Toward the Next Generation of Recommender Systems: A Survey of the
State-of-the-Art and Possible Extensions, Gediminas Adomavicius, Alexander
Tuzhilin
Content-Boosted Collaborative Filtering for Improved Recommendations, Prem
Melville and Raymond J. Mooney and Ramadass Nagarajan
Recommender Systems in E-Commerce, J. Ben Schafer, Joseph Konstan, John
Riedl
Explanation for Recommender Systems: Satisfaction vs. Promotion, Mustafa
Bilgic