Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Systemy rekomendacji

6.671 visualizaciones

Publicado el

Publicado en: Tecnología
  • Inicia sesión para ver los comentarios

Systemy rekomendacji

  1. 1. Systemy rekomendacji Adam Kawa Seminarium: Systemy przetwarzania informacji 09.01.2008, godz. 12:15
  2. 2. Systemy rekomendacji Plan prezentacji  Wprowadzenie  Metody zbierania informacji o użytkowniku  Techniki rekomendacji  Problemy, trudności i wyzwania  Przykłady aplikacji
  3. 3. Wprowadzenie Definicja Systemy rekomendacji to programy, które  strają się przedstawić informacje o przedmiotach (np. muzka, filmy), którymi dany użytkownik mógłby 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.
  4. 4. Wprowadzenie Definicja [1]
  5. 5. Wprowadzenie Przyczyny powstania [2]  przyrost liczby użytkowników (większe zróżnicowanie ich potrzeb)  przyrost ilości danych (udostępnianych oraz poszukiwanych)  ten sam czas, który można poświęcić na znalezienie interesujących informacji  ten sam czas, który można poświęcić na zrozumienie i wykorzystanie znalezionych informacji
  6. 6. Wprowadzenie Możliwe korzyści [2]  Dla użytkowników  szybki dostęp do poszukiwanych zasobów  możliwość otrzymania informacji zgodnej z preferencjami i oczekiwaniami  Dla właścicieli:  pozyskanie licznej grupy klientów  możliwość zdefiniowania grup docelowych, do których mogą być kierowane szczegółowe treści i oferty  zdobycie uznania wśród użytkowników za dostosowanie portalu do ich potrzeb  szansa na pozyskanie lojalności  konkurencyjność wobec serwisów, które nie stosują takich praktyk
  7. 7. Wprowadzenie Problem rekomendacji (uproszczony) [3] Niech  C - zbiór wszystkich użytkowników  I - zbiór rekomendowanych przedmiotów (np. ksiązki, filmy, usługi finansowe)  R - uporządkowany zbiór (np. liczb całkowitych z zakresu <1,100>)  u : C× I  R - funkcja użyteczności przedmiotu i dla użytkownika c. Zadanie: ∀ c∈C , i c =max u c ,i i∈I (dla każdego użytkownika znaleźć przedmiot o największej wartości funkcji użyteczności)
  8. 8. Systemy rekomendacji Problem rekomendacji (uproszczony) [2]  Ogólna idea działania  identyfikacja użytkownika (zebranie infromacji o nim)  analiza danych (stworzenie profilu użytkownika reprezentującego jego preferencje)  indywidualizacja zasobów (rekomendacja przedmiotów najbardziej pasujących do profilu danego użytkownika)
  9. 9. Systemy rekomendacji Plan prezentacji  Wprowadzenie  Metody zbierania informacji o użytkowniku  Techniki rekomendacji  Problemy, trudności i wyzwania  Przykłady aplikacji
  10. 10. Metody zbierania informacji Metody zbierania informacji o użytkowniku  Profilowanie jawne (explicit profile)  Profilowanie domniemane (implicit profile)
  11. 11. Metody zbierania informacji Profilowanie jawne (explicit profile)  uzyskiwanie informacji bezpośrednio od użytkownika poprzez wypełnianie 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 niechęcią ze strony użytkownika  trudności w pozyskiwaniu dużej liczy informacjii
  12. 12. Metody zbierania informacji Profilowanie domniemane (implicit profile)  obserowanie zachowań użytkownika, np.  prowadzenie archiwum zakupionych przedmiotów  utrzymywanie listy ostatnio przeglądanych przedmiotów  analiza cech oglądanych przedmiotów  analiza czasu poświęconego na oglądanie 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 większej ilości informacji
  13. 13. Systemy rekomendacji Plan prezentacji  Wprowadzenie  Metody zbierania informacji o użytkowniku  Techniki rekomendacji  Problemy, trudności i wyzwania  Przykłady aplikacji
  14. 14. Techniki rekomendacji Techniki rekomendacji  Niespersonalizowane  Oparte na użytkowniku (user-based)  Oparte na zawartości (content-based)  Kolaboratywne filtrowanie (collaborative filtering)  Oparte na użytkowniku (user-based)  Hybrydowe metody (hybrid methods) - lączące powyższe techniki
  15. 15. Techniki rekomendacji Niespersonalizowane (non-personalized) [1]  Rekomendacja najpopularniejszych przedmiotów wszystkim użytkownikom.  popularność: oceny użytkowników, dane sprzedaży, oglądalność itd.  obliczenie średniej oceny popularności dla każdego przedmiotu  rekomendacja przedmiotów z najwyższą średnią ocen  np. prezentacja listy 10 najpopularniejszych filmów (komedii)
  16. 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, płeć, 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. 17. Techniki rekomendacji Oparte na użytkowniku (user-based) [1]  znalezienie użytkowników o podobnych cechach  np. algorytm K-najbliższych sąsiadów z funkcją odległości: D(u,v) = dwiek(u,v) + dpłec(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 sąsiadów Pa , j= ∑ r u , j⋅w a , j , w a , j =min  1 , max waga  ∑ wa , u D a , u
  18. 18. Techniki rekomendacji Niespersonalizowane (non-personalized) oraz oparte na użytkowniku (user-based) [1]  Zalety  możliwość obliczenia rekomendacji bez konieczności zebrania informacji na temat cech przedmiotów oraz preferencji i gustów użytkownika  Wady i problemy  niski stopień personalizacji rekomendacji  niewystarczający współczynnik trafności rekomendacji
  19. 19. Techniki rekomendacji Oparte na zawartości (content-based) [1]  Rekomendacja przedmiotów o podobnych cechach, jak te przedmioty, którymi użytkownik był w przeszłości zainteresowany.  cechy przedmiotów: np. film - rodzaj, reżyser, obsada, opis, słowa kluczowe, nagrody itd.  zebranie informacji na temat cech przedmiotów  znalezienie najbardziej podobnych przedmiotów do preferowanych wcześniej przez użytkownika  rekomendacja przedmiotów najbardziej pasujących do profilu użytkownika
  20. 20. Techniki rekomendacji Oparte na zawartości (content-based)  zebranie informacji na temat cech przedmiotów  najczęściej 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 ksiązke za pomocą wektora zbiorów słów kluczowych tzn. ksiązka = [autor, tytuł, temat, opis, ...] temat = [...], opis = [...]  internetowe bazy danych, np. http://www.imdb.com/  booty intenetowe
  21. 21. Techniki rekomendacji Oparte na zawartości (content-based) [3]  zebranie informacji na temat cech przedmiotów  miara poziomu istotności (ważności) słowa k i w dokumencie dj  term frequency/inverse document frequency (TF-IDF) N - liczba rekomendowanych dokumentów ni - ilość dokumentów, w których występuje słowo kluczowe ki fij - ilość wystąpień słowa kluczowego ki w dokumencie dj f i, j TF i , j = - frekwencja słowa ki w dokumencie dj max f z , j f z, j ∈d j N IDF i =log   - odwrotna frekwencja dokumentu dla słowa ki ni w i , j =TF i , j ×IDF i - waga słowa ki w dokumencie dj content  d j =[w 1, j , w2, j ,... , w m , j ] - opis dokumentu dj
  22. 22. Techniki rekomendacji Oparte na zawartości (content-based)  określenie profilu użytkownika na podstawie zebranych danych  user_profile(c) = [wc1, wc2, ..., wcm], wektor wag, gdzie waga wci oznacza poziom istotności słowa kluczowego ki dla użytkownika c.  średnie wagi słów kluczowych w mierze TF-IDF  prawdopodobieństwa istotności słów kluczowych obliczone przez sieć Bayessowska  rekomendacja przedmiotów najbardziej pasujących do profilu użytkownika  u(c,i) = score(user_profile(c), content(i))  cosinus kąta między wektorami w w  c⋅ i u c ,i =cos c ,  i = w w ∥ c∥ ×∥  i∥ w w
  23. 23. Techniki rekomendacji Oparte na zawartości (content-based)  inne metody wykorzystywane w rekomendacji opartej na zawartości  obliczanie funkcji użyteczności z wykorzystaniem pewnego modelu wyuczonego na podstawie danych treningowych  naiwny klasyfikator bayessowski  oszacowuje prawdopodbieństwo, ż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 opisujących przedmiot pj P  p j ∈C i = PC i | k 1, j ∧...∧k n , j   przy (upraszczającym) założeniu niezależności słów kluczowych P  p j ∈C i =P C i  ∏x P  k x , j |C i   wysoka trafność klasyfikacji
  24. 24. Techniki rekomendacji Oparte na zawartości (content-based)  Wady i problemy  ograniczona analiza zawartości  konieczność reprezentowania opisu przedmiotu w formie umożliwiającej jego automatyczną analizę przez komputer (np. tekst) lub wprowadzenia go ręcznie  trudności w analizie zawartości niektórych przedmiotów np. obrazów, dźwięków, strumieni video  nie rozróznianie różnych przedmiotów reprezentowanych przez identyczne zbiory cech (nieuwzględnianie jakości przedmiotu)
  25. 25. Techniki rekomendacji Oparte na zawartości (content-based)  Wady i problemy  zbyt wysoka specjalizacja  rekomendacja jedynie dla przedmiotów pasujących do profilu użytkownika (zbyt jednorodne alternatywy, brak „niespodziewanych” rekomendacji)  wysokie prawdopodobieństwo rekomendacji niemalże identycznych przedmiotów (np. newsy opisujące te same wydarzenie)  problem nowego użytkownika (new user problem)  niemożliwość udzielenia trafnych rekomendacji dla użytkownika, który nie ocenił wystarczająco dużej liczby przedmiotów
  26. 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, oglądalność 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. 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  i∈I u ,v similarity u , v =  ∑  r u ,i −r u 2× ∑  r v , i−r v 2 i∈I u , v i∈I u , v  cosinus kąta między 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 u⋅v similarity u , v =cosu ,  v = w w ∥ u∥ ×∥  v∥ w w
  28. 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  (uwzględnienie 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. 29. Techniki rekomendacji Kolaboratywne filtrowanie oparte na użytkowniku (user-based collaborative filtering)  Zalety  możliwość rekomendacji produktów, bez konieczności zebrania informacji na temat ich atrybutów, cech.  możliwość rekomendacji produktów, których atrybuty są niedostępne lub trudne w analizie np. obrazy, dźwięki, idee, opinie.  możliwość rekomendacji przypadkowych, ale odpowiadających preferencjom użytkownika przedmiotów
  30. 30. Techniki rekomendacji Kolaboratywne filtrowanie oparte na użytkowniku (user-based collaborative filtering)  Wady i problemy  new user problem  new item problem - brak możliwości rekomendacji nowych przedmiotów zanim nie zostaną one ocenione przez wystarczająco dużą liczbę użytkowników  sparsity problem - brak ocen danego użytkownika dla zdecydowanej więszości przedmiotów; rzadka macierz użytkownik-przedmiot  niewystarczająco dobre rekomendacje dla użytkowników o zróżnicowanych opiniach lub nietypowych preferencjach.
  31. 31. Techniki rekomendacji Hybrydowe systemy rekomendacji (hybrid recommender systems)  Rekomendacja przedmiotów z jednoczesnym wykorzystaniem różnych technik rekomendacji (najczęściej - opartej na zawartości i kolaboratywnego filtrowania) w celu uniknięcia ograniczeń związanych z ich niezależnym stosowaniem.  Przykład: Content-Boosted Collaborative Filtering  poprawa istniejących danych na temat użytkowników i przedmiotów poprzez wykorzystanie cechy osobistych użytkowników oraz zawartości przedmiotów (wygenerowanie pseudo-ocen)  spersonalizowane rekomendacje przy użytciu kolaboratywnego filtrowania  lepsze wyniki niż te, które dają niezależnie działające rekomendacje oparte na zawartości, kolaboratywne filtrowanie oraz proste systemy hybrydowe
  32. 32. Systemy rekomendacji Plan prezentacji  Wprowadzenie  Metody zbierania informacji o użytkowniku  Techniki rekomendacji  Problemy, trudności i wyzwania  Przykłady aplikacji
  33. 33. Problemy, trudności i wyzwania Problemy, trudności i ich typowe rozwiązania  wielowymiarowe rekomendacje [3]  uwzględnienie dodatkowych „kontekstowych informacji” (np. dzień tygodnia, pora roku, miejsce)  zdefiniowanie funkcji użyteczności nad wielowymiarową dziedziną D 1 ×...× D n zamiast dwuwymiarowej użytkownik× przedmiot tj. u: D1 ×...× D n  R np. d3 - miejsce oglądania filmu (kino, mieszkanie); d4 - czas (dzień roboczy, weekend, ranek, wieczór); d5 - osoby towarzyszące (rodzice, dziewczyna, przyjaciele)  redukcja do problemu dwuwymiarowej rekomendacji przez wybranie elementów spełniających dodatkowe „kontekstowe kryteria” (tagi tekstowe)
  34. 34. Problemy, trudności i wyzwania Problemy, trudności i ich typowe rozwiązania  multikryterialne oceny [3]  wykorzystanie ocen wielu kryteriów przy końcowej ocenie danego przedmiotu np. rekomendacja restauracji - ocena jedzenia, dekoracji oraz serwisu  kombinacja liniowa ocen wszystkich kryteriów  optymalizacja oceny „naważniejszego” kryterium, traktując pozostałe jako stałe, niech np.  fc(r), dc(r), sc(r) – oceny użytkownika c dotyczące odpowiednio jedzenia, dekoracji i serwisu w restarauracji r  wybranie fc(r) jako najważniejszego kryterium oceny restauracji r  znalezienie restauracji r o największej wartości fc(r), t.że dc(r)>d i sc(r)>s  konieczność szacowania niektórych wartości spośród fc(r), dc(r), sc(r)
  35. 35. Problemy, trudności i wyzwania Problemy, trudności i ich typowe rozwiązania  złośliwi użytkownicy [3]  oszukiwanie systemów rekomendacji w celu zwiększenia popularności własnych przedmiotów  zatrudnianie użytkowników wysoko oceniających wskazane przedmioty  wykorzystanie botów internetowych generujących „sztuczne zainteresowanie” wskazanymi przedmiotami  inwazyjność - trudności w jawnym zbieraniu informacji  profilowanie doniemane - zbieranie i analizowanie np. danych sprzedaży, częstości i czasu oglądania przedmiotu, sekwencji kliknięć na stronie
  36. 36. Problemy, trudności i wyzwania Problemy, trudności i ich typowe rozwiązania  zbyt wysoka specjalizacja  unikanie rekomendacji zbyt podobnych przedmiotów do tych, którymi użytkownik był zainteresowany w przeszłości  cold-start oraz sparsity problem  zbyt mało danych w początkowej fazie działania systemu (new user, new item problem)  wykorzystanie cech osobowych użytkownika oraz zawartości przedmiotu ● pseudo-oceny dla przedmiotów, które nie zostały ocenione przez danego użytkownika
  37. 37. Problemy, trudności i wyzwania
  38. 38. Problemy, trudności i wyzwania The Netflix $1 Million Prize  konkurs ogłoszony przez Netflix, internetową wypożyczalnie filmów w październiku 2006 roku.  zasady i idea konkursu  poprawa współczynnika trafności systemu rekomendacji Netfixa o 10%  udostępnienie 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
  39. 39. Aplikacje
  40. 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 odsłuchiwanych piosenek i gustach „muzycznych sąsiadó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, dzięki czemu można słuchać muzyki oznaczonej w wybrany sposób np. „early british rock”, „piosenkarze, których X by lubił”
  41. 41. Aplikacje Levis / Style Finder  rekomendacja produktów firmy odzieżowej Levi StrausTM  wymagane informacje na temat płci oraz ocena minimum 4 „napisów”, „subkategorii” spośród kategorii: muzyka, wygląd, 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 zadeklarowało, iż kupiłoby rekomendowany produkt.
  42. 42. Aplikacje
  43. 43. Aplikacje hakia  wyszukiwarka internetowa, która umożliwia kontakt z osobami szukającymi informacji na podobny temat  rekomendacje przedstawiane przez ludzi (silna analogia do „ustnej promocji” przedmiotu)
  44. 44. Systemy rekomendacji Dziękuję za uwagę!
  45. 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

×