Systemy rekomendacyjne Mikolaj Morzy, Politechnika Poznanska
O czym będzie ten wykład? Przeciążenie informacją Systemy rekomendacyjne content-based collaborative filtering trust-based random walk paradigm Systemy rekomendacyjne wczoraj i dziś Zasady tworzenia systemów rekomendacyjnych
Świat jest bardzo zatłoczony
Przeciążenie informacją Information overload: stan otrzymywania zbyt dużej ilości informacji aby dokonywać racjonalnych decyzji lub pozostawać zorientowanym w dziedzinie Alvin Toffler, "Future Shock" 1970) w Stanach Zjednoczonych dziennie drukuje się 800 książek jedno wydanie NYT zawiera więcej informacji niż człowiek z XVII w. spotykał w trakcie całego życia w ciągu ostatnich 30 lat ludzkość wyprodukowała więcej informacji niż przez wcześniejsze 5000 lat statystyczny Amerykanin widzi dziennie 16000 reklam, logo, metek i etykietek
5 sekund w tym czasie na świecie wysłano 14 milionów e-maili obejrzano 60 tysięcy wideo na YouTube na świecie powstało 100 GB nowych danych 10 tysięcy ludzi zalogowało się na Facebooka
Wyszukiwanie i przeglądanie Information retrieval, searching proces znajdowania statycznej informacji składowanej w bazie danych książka, indeks wyszukiwarki, kolekcja artykułów) poszukiwana informacja jest znana a priori Information filtering, browsing proces porządkowania dynamicznego strumienia informacji i nadawanie priorytetów informacji wynik nie jest znany, nie wiadomo, czy istnieje
Kto może pomóc Czy Google może pomóc? tylko jeśli wiem, czego szukam Czy Facebook może pomóc? tylko jeśli moje gusta zgadzają się z gustami moich znajomych Czy eksperci mogą pomóc? tylko jeśli zgadzam się dostać te same odpowiedzi co wszyscy inni tylko jeśli lubię to co eksperci
System rekomendacyjny Technologia filtrowania informacji wykorzystywana w serwisach e- commerce do prezentowania informacji o produktach które z dużym prawdopodobieństwem mogą być interesujące dla klientki/klienta definicja wg Webopedii Typy systemów rekomendacyjnych bazujące na cechach ocenianych produktów bazujące na środowisku społecznym systemy hybrydowe
Przykłady systemów rekomendacyjnych Netflix 65% wypożyczeń w wyniku rekomendacji Google News 38% więcej ruchu dzięki rekomendacjom Amazon 35% sprzedaży w następstwie rekomendacji wg. Celma & Lamere, ISMIR'2007
Rekomendacje w Amazonie
Co można rekomendować? Reklamy Inwestycje finansowe Restauracje Kawiarnie Płyty muzyczne Filmy Programy TV Książki Ubrania Tagi Artykuły prasowe Partnerki/partnerów Przyjaciół Wykłady i kursy Artykuły naukowe Cytowania Lekarstwa Programy komputerowe
Główna koncepcja rekomendacji The Long Tail: Why the Future of Business is Selling Less of More Chris Anderson, Hyperion, New York, 2006
Rekomendacje w oparciu o zawartość Rekomendowanie produktów na podstawie podobieństwa cech i zawartości content-based recommendation, CBR) atrybuty strony WWW: słowa, odnośniki, obrazki, tagi, URL, komentarze, tematy, tytuły muzyka: styl, rytm, melodia, harmonia, słowa, metadane, artysta, oceny ekspertów, głośność, energia, czas, spektrum, czas trwania, częstotliwość, tonacja, styl, tempo kontekst: czas, lokalizacja, aktywność, społeczność, emocja użytkownik: wiek, płeć, zawód, czas, dochód, wykształcenie, lokalizacja, język, stan cywilny, hobby, zainteresowania, sposób korzystania z WWW, członkostwo w klubach, opinie, tagi
Sposoby wyliczania podobieństwa dla CBR Miary podobieństwa odległość cosinusowa TFIDF Odległość Kullbacka-Leiblera Odległość euklidesowa Odległość Hamminga X x KL x Q x P x P Q P D ) ) )log ) X x E x Q x P Q P D 2 )) ) ) X x X x X x C x Q x P x Q x P Q P Q P Q P D 2 2 ) ) ) ) )
Wady i zalety CBR Zalety prostota implementacji dostępność danych, możliwość automatycznej ekstrakcji atrybutów produktów Wady dużo szumu w danych np. niepoprawne tagi) wiele atrybutów ma charakter subiektywny stosunkowo łatwe do oszukania
Rekomendacje w oparciu o społeczność Rekomendowania produktów na podstawie opinii innych osób collaborative filtering rec., CFR) ogólna koncepcja: wykorzystanie ocen jawnie specyfikowanych przez użytkowników, brak wykorzystania atrybutów rekomendowanych produktów idea: istnieją osoby podobne do Ciebie i Tobie spodobają się te produkty, które im się podobają
Sposoby generowania CFR wg. użytkowników wg. produktów
Wady i zalety CFR Zalety niezależne od domeny zastosowania prostota implementacji, efektywność pozwala na "szczęśliwy traf" Wady trudność w oszacowaniu podobieństwa użytkowników macierz ocen jest bardzo rzadka 99%) stronniczość w ocenie bardzo popularnych przedmiotów problem "zimnego startu" łatwość oszukiwania
Metody oparte na zaufaniu Sieć zaufania agregacja pojedynczych ocen zaufania do sieci propagacja zaufania w sieci generowanie rekomendacji w oparciu o wyliczone wartości zaufania poświęcimy temu osobny wykład
Rekomendacje w oparciu o losowy spacer Dany jest graf G=V,E), gdzie G=U+P jest zbiorem węzłów reprezentujących użytkowników U) oraz produkty P) każdy węzeł w G może mieć swoje atrybuty A) dla użytkowników: kategorie, wolumen sprzedaży, wydawane kwoty dla produktów: kategorie, ceny, kolory, producenci, E jest zbiorem krawędzi między elementami G Zadanie polega na zarekomendowaniu, dla danego węzła uu, zbioru węzłów p i P uszeregowanych zgodnie z pewnym kryterium odpowiedniości
Kryteria odpowiedniości rekomendacji Homofilia Rzadkość Wpływ społeczny Bliskość społeczna Dołączanie preferencyjne
Homofilia Dwie osoby współdzielące atrybuty mają większe prawdopodobieństwo zostania połączonymi w grafie niż osoby niewspółdzielące atrybutów 100-200 zł kosmetyki
Rzadkość Atrybuty występujące rzadko są prawdopodobnie dużo ważniejsze do łączenia niż atrybuty występujące często muzyka cerkiewna płyty CD
Wpływ społeczny Atrybuty współdzielone przez osoby podobne do danej osoby są istotne przy określaniu rekomendacji dla danej osoby gry wideo
Bliskość społeczna Prawdopodobieństwo powiązania między dwoma węzłami maleje wykładniczo w funkcji odległości między węzłami
Preferencyjne dołączanie Prawdopodobieństwo dołączenia do węzła jest proporcjonalne do stopnia tego węzła
Szkic algorytmu Na bazie grafu G=V,E) utwórz nowy graf G'=V',E') który będzie zawierał dodatkowe węzły i krawędzie reprezentujące atrybuty A) oraz powiązania między użytkownikami U) i produktami P) a atrybutami A) Dla zadanego węzła uu uruchom n razy algorytm losowego spaceru na grafie G' w celu znalezienia względnej ważności węzłów p i P każdego klienta anonimowego reprezentuj jako osobny węzeł dla nowego klienta przy każdym uruchomieniu algorytmu losowego spaceru wybierz inny węzeł każdy spacer jest relatywnie krótki
Przykład grafu z produktami płyty DVD jazz 50-80 zł
Konstrukcja grafu Waga krawędzi użytkownik-produkt Waga krawędzi użytkownik/produkt-atrybut N a u): liczba atrybutów użytkownika u N p u): liczba produktów użytkownika u : parametr sterujący znaczeniem struktury i podobieństwa atrybutów 0 ) 0 ) ) 1 0 ) 0 ) ) ), u N u N if u N u N u N if u N p w u a p p a p p 0 ) 0 ) ) 1 0 ) 0 ) ) 1 ), u N u N if u N u N u N if u N a w u p a a p a a
Odpowiedniość produktów i atrybutów Algorytm losowego spaceru wylicza odpowiedniości produktów i atrybutów zgodnie ze wzorami r r p 1 )* 1 )* w u, p)* r 1 )* u uu p) aa p) w p', a)* a r p ' p' P p) w p, a)* r a * r 0 p Up): zbiór użytkowników, którzy kupili produkt p Ap): zbiór atrybutów opisujących produkt p Pp): zbiór produktów współdzielących atrybuty z produktem p : prawdopodobieństwo skoku losowego
Model uproszczony Użytkownicy i produkty nie posiadają swoich atrybutów ) 0 * )*, )* 1 p U u p u p r r p w u r ) ' ')*, p P p u r p p p w r P r p 1 0 prawdopodobieństwo przeskoczenia do losowego produktu prawdopodobieństwo przejścia do danego produktu poprzez nawigację sieci 0 * )* 1 p u p u p R R W R p u p p R W R obliczenia w notacji macierzowej
Możliwe rozwiązania Wyliczenie globalnego rozkładu stacjonarnego zalety: proste obliczenie przez iteracyjne mnożenie macierzy wady: statyczna lista węzłów sposób: losowanie "bliskich" węzłów z rozkładu stacjonarnego Wyliczenie lokalnego spaceru losowego zalety: zróżnicowane odpowiedzi, rozwiązanie problemu "zimnego startu", duża elastycznośćszczególnie w przypadku wykorzystania atrybutów) wady: koszt obliczeniowy sposób: wykonać n niezależnych spacerów o długości k sposób: wykonać wiele niezależnych spacerów o długości k i uśrednić ich wyniki, wybierając n najbardziej odpowiednich
Dlaczego to działa? Homofilia: dwie osoby współdzielące atrybuty mają więcej różnych ścieżek za pomocą których można do siebie dojść 100-200 zł kosmetyki
Dlaczego to działa? Rzadkość: rzadkie atrybuty mają znacznie mniejszą liczbę krawędzi wyjściowych, dzięki czemu każda krawędź wyjściowa ma większą wagę muzyka cerkiewna płyty CD
Dlaczego to działa? Wpływ społeczny: jeśli atrybut jest współdzielony przez sąsiadów w grafie, to losowy spacer często będzie przechodził przez dany atrybut gry wideo
Dlaczego to działa? Bliskość społeczna: losowy spacer częściej odwiedza węzły położone bliżej danego węzła
Dlaczego to działa? Preferencyjne dołączanie: popularny węzeł będzie posiadał wiele krawędzi incydentnych, zatem z danego węzła będzie łatwiej trafić do popularnego węzła
Wczoraj i dziś Systemy rekomendacyjne wczoraj próbują przewidzieć produkty filmy, książki, płyty) które mogą być interesujące dla użytkownika na podstawie profilu użytkownika i cech produktu Systemy rekomendacyjne dziś pomagają użytkownikom odnaleźć interesującą informację ułatwiając połączenia społeczne
Wiem co zrobisz następnego lata Jakie filmy powinienem obejrzeć? Netflix, Amazon, RatingZone Jakiej muzyki powinienem słuchać? CDNow już Amazon), Last.fm, Pandora Jakie strony powinienem odwiedzić? Alexa Jakie żarty mnie rozśmieszą? Jester: http://eigentaste.berkeley.edu/user/index.php Z kim powinienem pójść na randkę? Yenta: http://www.meetyenta.com/
Rekomendacje a zaufanie Użytkownicy postrzegają "osobowość" systemu rekomendacyjnego chcą rozumieć powody rekomendacji Pierwsze wrażenie ma kluczowe znaczenie Podejścia Amazon: potwierdzenie preferencji użytkownika, rekomendowane produkty są znajome ale mało użyteczne), niewiele nowej informacji MediaUnbound: eksploracja przestrzeni produktów, ciekawsze i bardziej nieoczekiwane rekomendacje ale mało efektywne)
Ułatwienie uczestnictwa Zasada projektowania zapytaj we właściwym momencie ułatwiaj i zachęcaj do odpowiedzi
Ułatwienie kontroli Zasada projektowania umożliwiaj łatwe filtrowanie umożliwiaj kontrolę nad rekomendacjami
Niespełniona obietnica Ogólnie rzecz biorąc, systemy rekomendacyjne nie spełniły pokładanych w nich nadziei Żaden system rekomendacyjny nie stał się porównywalnie popularny z wyszukiwarkami brak wystarczającej informacji problem "zimnego startu" problem z efektywnym interfejsem spam i próby oszustwa trudne do zrozumienia i kontrolowania
Zmiana paradygmatu Społeczne systemy sieciowe Friendster, Orkut, MySpace, LinkedIn Blogosfera Wiki Google AdSense YouTube Interfejsy: AJAX, Flash
Przykład nowego systemu: Last.fm
Cechy Last.fm Przyjazny i intuicyjny interfejs Wiele punktów wejścia do systemu wykresy, tagi, użytkownicy, nowe produkty Nacisk na aspekt społeczny jakich stacji słuchają inni użytkownicy fora dyskusyjne i pamiętniki
Inne nowe systemy rekomendacyjne
Cechy nowoczesnych systemów rekomendacyjnych Zawartość generowana przez użytkowników globalne uczestnictwo wykorzystanie "mądrości tłumów" Dostęp do długiego ogona produktów Włączenie sieci społecznych Rich User Experience Elementy pracy i rozrywki
Zasada 1: użyteczność System musi być użyteczny zanim zostanie spersonalizowany przechowywanie zdjęć i dokumentów agregacja wiadomości forum dyskusyjne Personalizacja na bazie zgromadzonych danych
Zasada 2: uczestnictwo Najważniejszym zasobem są użytkownicy wyrażanie sztuki, humor, tagi, komentarze, linki niejawne tworzenie tworzenie przez konsumpcję) remix: modyfikowanie cudzej kontrybucji
Zasada 3: proces społeczny Uczestnictwo jest procesem społecznym aktualizacja w czasie rzeczywistym tworzy wrażenie konwersacji profile i zdjęcia nadają systemowi "ludzki charakter"
Zasada 4: natychmiastowa nagroda Rekomendacje tworzone natychmiast po otrzymaniu danych od użytkownika Pandora: stacja na podstawie jednej piosenki Spotback: kolekcja na podstawie jednego artykułu
Zasada 5: niezależność Warunki funkcjonowania "mądrości tłumu" różnorodność poznawcza niezależność decentralizacja łatwość agregacji
Zasada 6: dostęp do długiego ogona Długi ogon musi być dostępny rekomenduj różnorodne produkty unikaj list "top 10" pilnuj, żeby rekomendacje się nie ustabilizowały Czas jest istotnym wymiarem systemu ułatwienie szybkiego ruchu produktów listy "what's fresh today"
Zasada 7: jawne metadane Metadane muszą być dostępne i linkowalne jawne tagi i listy użytkowników umożliwienie pivoted browsing unikalny URL dla każdego typu zawartości
Zasada 8: publiczne vs prywatne Ludzie chętnie się dzielą Ludzie nie lubią być oszukiwani i wykorzystywani Ludzie dbają o swój status społeczny Funkcjonalność filtrowanie tematów i kategorii zarządzanie profilami poziomy dostępności elementów profilu
Wykorzystane materiały Trust in Recommender Systems Paolo Massa, Universita' di Trento e ITC/iRST RecSys: Recommender Systems Tran The Truyen Design Strategies for Recommender Systems Rashmi Sinha, Uzanto.com