SlideShare una empresa de Scribd logo
1 de 45
Descargar para leer sin conexión
Systemy rekomendacji




                   Adam Kawa
    Seminarium: Systemy przetwarzania informacji
              09.01.2008, godz. 12:15
Systemy rekomendacji
   Plan prezentacji
       Wprowadzenie
       Metody zbierania informacji o użytkowniku
       Techniki rekomendacji
       Problemy, trudności i wyzwania
       Przykłady aplikacji
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.
Wprowadzenie
   Definicja [1]
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
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
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)
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)
Systemy rekomendacji
   Plan prezentacji
       Wprowadzenie
       Metody zbierania informacji o użytkowniku
       Techniki rekomendacji
       Problemy, trudności i wyzwania
       Przykłady aplikacji
Metody zbierania informacji
   Metody zbierania informacji o użytkowniku
       Profilowanie jawne (explicit profile)
       Profilowanie domniemane (implicit profile)
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
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
Systemy rekomendacji
   Plan prezentacji
       Wprowadzenie
       Metody zbierania informacji o użytkowniku
       Techniki rekomendacji
       Problemy, trudności i wyzwania
       Przykłady aplikacji
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
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)
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
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
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
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
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
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
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
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
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)
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
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
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
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
               
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
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.
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
Systemy rekomendacji
   Plan prezentacji
       Wprowadzenie
       Metody zbierania informacji o użytkowniku
       Techniki rekomendacji
       Problemy, trudności i wyzwania
       Przykłady aplikacji
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)
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)
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
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
Problemy, trudności i wyzwania
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
Aplikacje
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ł”
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.
Aplikacje
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)
Systemy rekomendacji




     Dziękuję za uwagę!
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

Más contenido relacionado

La actualidad más candente

Context-aware Recommendation: A Quick View
Context-aware Recommendation: A Quick ViewContext-aware Recommendation: A Quick View
Context-aware Recommendation: A Quick ViewYONG ZHENG
 
Recsys 2014 Tutorial - The Recommender Problem Revisited
Recsys 2014 Tutorial - The Recommender Problem RevisitedRecsys 2014 Tutorial - The Recommender Problem Revisited
Recsys 2014 Tutorial - The Recommender Problem RevisitedXavier Amatriain
 
Introduction to Recommendation Systems
Introduction to Recommendation SystemsIntroduction to Recommendation Systems
Introduction to Recommendation SystemsTrieu Nguyen
 
Recommender Systems (Machine Learning Summer School 2014 @ CMU)
Recommender Systems (Machine Learning Summer School 2014 @ CMU)Recommender Systems (Machine Learning Summer School 2014 @ CMU)
Recommender Systems (Machine Learning Summer School 2014 @ CMU)Xavier Amatriain
 
Learning to Rank for Recommender Systems - ACM RecSys 2013 tutorial
Learning to Rank for Recommender Systems -  ACM RecSys 2013 tutorialLearning to Rank for Recommender Systems -  ACM RecSys 2013 tutorial
Learning to Rank for Recommender Systems - ACM RecSys 2013 tutorialAlexandros Karatzoglou
 
An introduction to Recommender Systems
An introduction to Recommender SystemsAn introduction to Recommender Systems
An introduction to Recommender SystemsDavid Zibriczky
 
Overview of recommender system
Overview of recommender systemOverview of recommender system
Overview of recommender systemStanley Wang
 
Recent advances in deep recommender systems
Recent advances in deep recommender systemsRecent advances in deep recommender systems
Recent advances in deep recommender systemsNAVER Engineering
 
Recommender system algorithm and architecture
Recommender system algorithm and architectureRecommender system algorithm and architecture
Recommender system algorithm and architectureLiang Xiang
 
Bpr bayesian personalized ranking from implicit feedback
Bpr bayesian personalized ranking from implicit feedbackBpr bayesian personalized ranking from implicit feedback
Bpr bayesian personalized ranking from implicit feedbackPark JunPyo
 
Deep Learning for Recommender Systems RecSys2017 Tutorial
Deep Learning for Recommender Systems RecSys2017 Tutorial Deep Learning for Recommender Systems RecSys2017 Tutorial
Deep Learning for Recommender Systems RecSys2017 Tutorial Alexandros Karatzoglou
 
How to build a recommender system?
How to build a recommender system?How to build a recommender system?
How to build a recommender system?blueace
 
Introduction to Matrix Factorization Methods Collaborative Filtering
Introduction to Matrix Factorization Methods Collaborative FilteringIntroduction to Matrix Factorization Methods Collaborative Filtering
Introduction to Matrix Factorization Methods Collaborative FilteringDKALab
 
Interactive Recommender Systems
Interactive Recommender SystemsInteractive Recommender Systems
Interactive Recommender SystemsRoelof van Zwol
 
Kdd 2014 Tutorial - the recommender problem revisited
Kdd 2014 Tutorial -  the recommender problem revisitedKdd 2014 Tutorial -  the recommender problem revisited
Kdd 2014 Tutorial - the recommender problem revisitedXavier Amatriain
 
Recommender systems using collaborative filtering
Recommender systems using collaborative filteringRecommender systems using collaborative filtering
Recommender systems using collaborative filteringD Yogendra Rao
 
Recommendation System
Recommendation SystemRecommendation System
Recommendation SystemAnamta Sayyed
 
Deeper Things: How Netflix Leverages Deep Learning in Recommendations and Se...
 Deeper Things: How Netflix Leverages Deep Learning in Recommendations and Se... Deeper Things: How Netflix Leverages Deep Learning in Recommendations and Se...
Deeper Things: How Netflix Leverages Deep Learning in Recommendations and Se...Sudeep Das, Ph.D.
 

La actualidad más candente (20)

Context-aware Recommendation: A Quick View
Context-aware Recommendation: A Quick ViewContext-aware Recommendation: A Quick View
Context-aware Recommendation: A Quick View
 
Recsys 2014 Tutorial - The Recommender Problem Revisited
Recsys 2014 Tutorial - The Recommender Problem RevisitedRecsys 2014 Tutorial - The Recommender Problem Revisited
Recsys 2014 Tutorial - The Recommender Problem Revisited
 
Introduction to Recommendation Systems
Introduction to Recommendation SystemsIntroduction to Recommendation Systems
Introduction to Recommendation Systems
 
Recommender Systems (Machine Learning Summer School 2014 @ CMU)
Recommender Systems (Machine Learning Summer School 2014 @ CMU)Recommender Systems (Machine Learning Summer School 2014 @ CMU)
Recommender Systems (Machine Learning Summer School 2014 @ CMU)
 
Learning to Rank for Recommender Systems - ACM RecSys 2013 tutorial
Learning to Rank for Recommender Systems -  ACM RecSys 2013 tutorialLearning to Rank for Recommender Systems -  ACM RecSys 2013 tutorial
Learning to Rank for Recommender Systems - ACM RecSys 2013 tutorial
 
An introduction to Recommender Systems
An introduction to Recommender SystemsAn introduction to Recommender Systems
An introduction to Recommender Systems
 
Overview of recommender system
Overview of recommender systemOverview of recommender system
Overview of recommender system
 
Recent advances in deep recommender systems
Recent advances in deep recommender systemsRecent advances in deep recommender systems
Recent advances in deep recommender systems
 
Recommender system algorithm and architecture
Recommender system algorithm and architectureRecommender system algorithm and architecture
Recommender system algorithm and architecture
 
Bpr bayesian personalized ranking from implicit feedback
Bpr bayesian personalized ranking from implicit feedbackBpr bayesian personalized ranking from implicit feedback
Bpr bayesian personalized ranking from implicit feedback
 
Deep Learning for Recommender Systems RecSys2017 Tutorial
Deep Learning for Recommender Systems RecSys2017 Tutorial Deep Learning for Recommender Systems RecSys2017 Tutorial
Deep Learning for Recommender Systems RecSys2017 Tutorial
 
How to build a recommender system?
How to build a recommender system?How to build a recommender system?
How to build a recommender system?
 
Recommender systems
Recommender systemsRecommender systems
Recommender systems
 
Recommender Systems
Recommender SystemsRecommender Systems
Recommender Systems
 
Introduction to Matrix Factorization Methods Collaborative Filtering
Introduction to Matrix Factorization Methods Collaborative FilteringIntroduction to Matrix Factorization Methods Collaborative Filtering
Introduction to Matrix Factorization Methods Collaborative Filtering
 
Interactive Recommender Systems
Interactive Recommender SystemsInteractive Recommender Systems
Interactive Recommender Systems
 
Kdd 2014 Tutorial - the recommender problem revisited
Kdd 2014 Tutorial -  the recommender problem revisitedKdd 2014 Tutorial -  the recommender problem revisited
Kdd 2014 Tutorial - the recommender problem revisited
 
Recommender systems using collaborative filtering
Recommender systems using collaborative filteringRecommender systems using collaborative filtering
Recommender systems using collaborative filtering
 
Recommendation System
Recommendation SystemRecommendation System
Recommendation System
 
Deeper Things: How Netflix Leverages Deep Learning in Recommendations and Se...
 Deeper Things: How Netflix Leverages Deep Learning in Recommendations and Se... Deeper Things: How Netflix Leverages Deep Learning in Recommendations and Se...
Deeper Things: How Netflix Leverages Deep Learning in Recommendations and Se...
 

Similar a Systemy rekomendacji

Metoda WebQuest w pracy nauczyciela bibliotekarza
Metoda WebQuest w pracy nauczyciela bibliotekarzaMetoda WebQuest w pracy nauczyciela bibliotekarza
Metoda WebQuest w pracy nauczyciela bibliotekarzaMarcin Malinowski
 
DLabs PyData MeetUp 9/03/2017
DLabs PyData MeetUp 9/03/2017DLabs PyData MeetUp 9/03/2017
DLabs PyData MeetUp 9/03/2017DLabs
 
Warsztat: Zabawa w agencję interaktywną. Projekt od A do Z.
Warsztat: Zabawa w agencję interaktywną. Projekt od A do Z.Warsztat: Zabawa w agencję interaktywną. Projekt od A do Z.
Warsztat: Zabawa w agencję interaktywną. Projekt od A do Z.Tomasz Karwatka
 
Zabawa w agencję interaktywną. Projekt od A do Z. Tomasz Karwatka, Divante i ...
Zabawa w agencję interaktywną. Projekt od A do Z.Tomasz Karwatka, Divante i ...Zabawa w agencję interaktywną. Projekt od A do Z.Tomasz Karwatka, Divante i ...
Zabawa w agencję interaktywną. Projekt od A do Z. Tomasz Karwatka, Divante i ...Biznes 2.0
 
Porównanie bibliotek cyfrowych JBC i WSL wg zasad przewodnika NISO Anna Mielec
Porównanie bibliotek cyfrowych JBC i WSL wg zasad przewodnika NISO Anna MielecPorównanie bibliotek cyfrowych JBC i WSL wg zasad przewodnika NISO Anna Mielec
Porównanie bibliotek cyfrowych JBC i WSL wg zasad przewodnika NISO Anna MielecAnna Mielec
 

Similar a Systemy rekomendacji (7)

Metoda WebQuest w pracy nauczyciela bibliotekarza
Metoda WebQuest w pracy nauczyciela bibliotekarzaMetoda WebQuest w pracy nauczyciela bibliotekarza
Metoda WebQuest w pracy nauczyciela bibliotekarza
 
DLabs PyData MeetUp 9/03/2017
DLabs PyData MeetUp 9/03/2017DLabs PyData MeetUp 9/03/2017
DLabs PyData MeetUp 9/03/2017
 
Warsztat: Zabawa w agencję interaktywną. Projekt od A do Z.
Warsztat: Zabawa w agencję interaktywną. Projekt od A do Z.Warsztat: Zabawa w agencję interaktywną. Projekt od A do Z.
Warsztat: Zabawa w agencję interaktywną. Projekt od A do Z.
 
Zabawa w agencję interaktywną. Projekt od A do Z. Tomasz Karwatka, Divante i ...
Zabawa w agencję interaktywną. Projekt od A do Z.Tomasz Karwatka, Divante i ...Zabawa w agencję interaktywną. Projekt od A do Z.Tomasz Karwatka, Divante i ...
Zabawa w agencję interaktywną. Projekt od A do Z. Tomasz Karwatka, Divante i ...
 
Metoda WebQuest
Metoda WebQuestMetoda WebQuest
Metoda WebQuest
 
Metoda WebQuest
Metoda WebQuestMetoda WebQuest
Metoda WebQuest
 
Porównanie bibliotek cyfrowych JBC i WSL wg zasad przewodnika NISO Anna Mielec
Porównanie bibliotek cyfrowych JBC i WSL wg zasad przewodnika NISO Anna MielecPorównanie bibliotek cyfrowych JBC i WSL wg zasad przewodnika NISO Anna Mielec
Porównanie bibliotek cyfrowych JBC i WSL wg zasad przewodnika NISO Anna Mielec
 

Más de Adam Kawa

Hadoop Operations Powered By ... Hadoop (Hadoop Summit 2014 Amsterdam)
Hadoop Operations Powered By ... Hadoop (Hadoop Summit 2014 Amsterdam)Hadoop Operations Powered By ... Hadoop (Hadoop Summit 2014 Amsterdam)
Hadoop Operations Powered By ... Hadoop (Hadoop Summit 2014 Amsterdam)Adam Kawa
 
Big Data At Spotify
Big Data At SpotifyBig Data At Spotify
Big Data At SpotifyAdam Kawa
 
Apache Hadoop In Theory And Practice
Apache Hadoop In Theory And PracticeApache Hadoop In Theory And Practice
Apache Hadoop In Theory And PracticeAdam Kawa
 
Hadoop Adventures At Spotify (Strata Conference + Hadoop World 2013)
Hadoop Adventures At Spotify (Strata Conference + Hadoop World 2013)Hadoop Adventures At Spotify (Strata Conference + Hadoop World 2013)
Hadoop Adventures At Spotify (Strata Conference + Hadoop World 2013)Adam Kawa
 
Hadoop Playlist (Ignite talks at Strata + Hadoop World 2013)
Hadoop Playlist (Ignite talks at Strata + Hadoop World 2013)Hadoop Playlist (Ignite talks at Strata + Hadoop World 2013)
Hadoop Playlist (Ignite talks at Strata + Hadoop World 2013)Adam Kawa
 
Apache Hadoop YARN, NameNode HA, HDFS Federation
Apache Hadoop YARN, NameNode HA, HDFS FederationApache Hadoop YARN, NameNode HA, HDFS Federation
Apache Hadoop YARN, NameNode HA, HDFS FederationAdam Kawa
 
Apache Hadoop Java API
Apache Hadoop Java APIApache Hadoop Java API
Apache Hadoop Java APIAdam Kawa
 
Apache Hadoop Ecosystem (based on an exemplary data-driven…
Apache Hadoop Ecosystem (based on an exemplary data-driven…Apache Hadoop Ecosystem (based on an exemplary data-driven…
Apache Hadoop Ecosystem (based on an exemplary data-driven…Adam Kawa
 
Apache Hadoop YARN
Apache Hadoop YARNApache Hadoop YARN
Apache Hadoop YARNAdam Kawa
 
Data model for analysis of scholarly documents in the MapReduce paradigm
Data model for analysis of scholarly documents in the MapReduce paradigm Data model for analysis of scholarly documents in the MapReduce paradigm
Data model for analysis of scholarly documents in the MapReduce paradigm Adam Kawa
 
Introduction To Apache Pig at WHUG
Introduction To Apache Pig at WHUGIntroduction To Apache Pig at WHUG
Introduction To Apache Pig at WHUGAdam Kawa
 
Introduction To Elastic MapReduce at WHUG
Introduction To Elastic MapReduce at WHUGIntroduction To Elastic MapReduce at WHUG
Introduction To Elastic MapReduce at WHUGAdam Kawa
 

Más de Adam Kawa (12)

Hadoop Operations Powered By ... Hadoop (Hadoop Summit 2014 Amsterdam)
Hadoop Operations Powered By ... Hadoop (Hadoop Summit 2014 Amsterdam)Hadoop Operations Powered By ... Hadoop (Hadoop Summit 2014 Amsterdam)
Hadoop Operations Powered By ... Hadoop (Hadoop Summit 2014 Amsterdam)
 
Big Data At Spotify
Big Data At SpotifyBig Data At Spotify
Big Data At Spotify
 
Apache Hadoop In Theory And Practice
Apache Hadoop In Theory And PracticeApache Hadoop In Theory And Practice
Apache Hadoop In Theory And Practice
 
Hadoop Adventures At Spotify (Strata Conference + Hadoop World 2013)
Hadoop Adventures At Spotify (Strata Conference + Hadoop World 2013)Hadoop Adventures At Spotify (Strata Conference + Hadoop World 2013)
Hadoop Adventures At Spotify (Strata Conference + Hadoop World 2013)
 
Hadoop Playlist (Ignite talks at Strata + Hadoop World 2013)
Hadoop Playlist (Ignite talks at Strata + Hadoop World 2013)Hadoop Playlist (Ignite talks at Strata + Hadoop World 2013)
Hadoop Playlist (Ignite talks at Strata + Hadoop World 2013)
 
Apache Hadoop YARN, NameNode HA, HDFS Federation
Apache Hadoop YARN, NameNode HA, HDFS FederationApache Hadoop YARN, NameNode HA, HDFS Federation
Apache Hadoop YARN, NameNode HA, HDFS Federation
 
Apache Hadoop Java API
Apache Hadoop Java APIApache Hadoop Java API
Apache Hadoop Java API
 
Apache Hadoop Ecosystem (based on an exemplary data-driven…
Apache Hadoop Ecosystem (based on an exemplary data-driven…Apache Hadoop Ecosystem (based on an exemplary data-driven…
Apache Hadoop Ecosystem (based on an exemplary data-driven…
 
Apache Hadoop YARN
Apache Hadoop YARNApache Hadoop YARN
Apache Hadoop YARN
 
Data model for analysis of scholarly documents in the MapReduce paradigm
Data model for analysis of scholarly documents in the MapReduce paradigm Data model for analysis of scholarly documents in the MapReduce paradigm
Data model for analysis of scholarly documents in the MapReduce paradigm
 
Introduction To Apache Pig at WHUG
Introduction To Apache Pig at WHUGIntroduction To Apache Pig at WHUG
Introduction To Apache Pig at WHUG
 
Introduction To Elastic MapReduce at WHUG
Introduction To Elastic MapReduce at WHUGIntroduction To Elastic MapReduce at WHUG
Introduction To Elastic MapReduce at WHUG
 

Systemy rekomendacji

  • 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, trudności i wyzwania  Przykłady 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ó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. Wprowadzenie  Definicja [1]
  • 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. 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. 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. 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. Systemy rekomendacji  Plan prezentacji  Wprowadzenie  Metody zbierania informacji o użytkowniku  Techniki rekomendacji  Problemy, trudności i wyzwania  Przykłady 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 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. 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. Systemy rekomendacji  Plan prezentacji  Wprowadzenie  Metody zbierania informacji o użytkowniku  Techniki rekomendacji  Problemy, trudności i wyzwania  Przykłady aplikacji
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. Systemy rekomendacji  Plan prezentacji  Wprowadzenie  Metody zbierania informacji o użytkowniku  Techniki rekomendacji  Problemy, trudności i wyzwania  Przykłady aplikacji
  • 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. 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. 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. 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
  • 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
  • 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. 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.
  • 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. Systemy rekomendacji Dziękuję za uwagę!
  • 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