w dzisiejszych czasach niezależnie od tego, czy oglądasz film na YouTube, film na Netflix czy produkt na Amazon, otrzymasz rekomendacje dotyczące większej liczby rzeczy do obejrzenia, Polubienia lub zakupu. Możesz podziękować pojawieniu się algorytmów uczenia maszynowego i systemów rekomendujących za ten rozwój.
Systemy rekomendujące mają daleko idący zakres, więc zamierzamy zerować na ważne podejście zwane filtrowaniem współpracy, które filtruje informacje za pomocą interakcji i danych zebranych przez system od innych użytkowników. Opiera się na założeniu, że ludzie, którzy zgodzili się na ocenę pewnych elementów, prawdopodobnie zgodzą się ponownie w przyszłości.
szybki podkład na systemach polecających
System polecający to podklasa filtrowania informacji, która ma na celu przewidzenie „oceny” lub „preferencji”, które użytkownik da produkt, taki jak produkt, film, piosenka itp.
Systemy rekomendujące dostarczają spersonalizowanych informacji poprzez poznanie zainteresowań użytkownika poprzez ślady interakcji z tym użytkownikiem. Podobnie jak algorytmy uczenia maszynowego, system rekomendujący dokonuje predykcji na podstawie wcześniejszych zachowań użytkownika. W szczególności został zaprojektowany w celu przewidywania preferencji użytkownika dla zestawu elementów na podstawie doświadczenia.
matematycznie zadanie rekomendacji ma być:
- Zestaw użytkowników (U)
- zestaw elementów (I), które mają być zalecane do u
- Naucz się funkcji opartej na przeszłych danych interakcji użytkownika, która przewiduje podobieństwo elementu I do U
Systemy rekomendujące są zasadniczo podzielone na dwa typy w oparciu o dane używane do wnioskowania:
- filtrowanie oparte na treści, które wykorzystuje Atrybuty elementów.
- filtrowanie współpracujące, które oprócz atrybutów elementów wykorzystuje zachowanie użytkownika (interakcje).
niektóre kluczowe przykłady systemów rekomendujących w pracy to:
- rekomendacje produktów w serwisie Amazon i innych witrynach handlowych
- rekomendacje filmów i programów telewizyjnych w serwisie Netflix
- rekomendacje artykułów w serwisach informacyjnych
czym jest filtrowanie oparte na współpracy?
wspólne filtrowanie filtruje informacje za pomocą interakcji i danych zebranych przez system od innych użytkowników. Opiera się na założeniu, że ludzie, którzy zgodzili się na ocenę pewnych elementów, prawdopodobnie zgodzą się ponownie w przyszłości.
koncepcja jest prosta: kiedy chcemy znaleźć nowy film do obejrzenia, często pytamy naszych znajomych o rekomendacje. Oczywiście mamy większe zaufanie do rekomendacji od przyjaciół, którzy dzielą gusta podobne do naszych.
większość wspólnych systemów filtrowania stosuje tak zwaną technikę opartą na indeksie podobieństwa. W podejściu opartym na sąsiedztwie liczba użytkowników jest wybierana na podstawie ich podobieństwa do aktywnego użytkownika. Wnioskowanie dla aktywnego użytkownika odbywa się poprzez obliczenie średniej ważonej ocen wybranych użytkowników.
systemy filtrowania Kooperacyjnego koncentrują się na relacji między użytkownikami a elementami. O podobieństwie pozycji decyduje podobieństwo ocen tych pozycji przez użytkowników, którzy ocenili obie pozycje.
istnieją dwie klasy wspólnego filtrowania:
- User-based, która mierzy podobieństwo między docelowymi użytkownikami a innymi użytkownikami.
- oparty na elementach, który mierzy podobieństwo między elementami, które użytkownicy oceniają lub z którymi wchodzą w interakcję, a innymi elementami.
wspólne filtrowanie przy użyciu Pythona
metody współpracy są zwykle opracowywane przy użyciu macierzy narzędziowej. Zadaniem modelu recommender jest poznanie funkcji przewidującej użyteczność dopasowania lub podobieństwa do każdego użytkownika. Macierz użyteczności jest zazwyczaj bardzo rzadka, Ogromna i usunęła wartości.
w następujących macierzach, każdy wiersz reprezentuje użytkownika, podczas gdy kolumny odpowiadają różnym filmom Pixara. Podobieństwo cosinusów jest najprostszym algorytmem potrzebnym do znalezienia podobieństwa wektorów. Ostatnia, która jest macierzą użytkową po pierwszej macierzy, zawiera tylko częściowe dane, które są potrzebne do przewidzenia wiarygodności oczekiwanej oceny przez „korzeń”, który może być podany przez użytkownika.
w następujących macierzach każdy wiersz reprezentuje użytkownika, podczas gdy kolumny odpowiadają różnym filmom, z wyjątkiem ostatniego, który rejestruje podobieństwo między tym użytkownikiem a użytkownikiem docelowym. Każda komórka reprezentuje ocenę, którą użytkownik daje temu filmowi.
cosine_similarity(p, q) = p.q
|p|.|q|
cosine_similarity(joe, beck) =
gdy nowy użytkownik dołącza do platformy, stosujemy najprostszy algorytm, który oblicza cosinus lub korelację podobieństwa wierszy (użytkowników) lub kolumn (filmów) i zaleca elementy, które są k-najbliżsi sąsiedzi.
jest to wiele równań, które mogą zajmować się kwestią miar podobieństwa, niektóre obejmują:
- podobieństwo Pearsona
- podobieństwo Jaccard
- korelacja rang Spearmana
- średnie różnice kwadratowe
- bliskość–wpływ–popularność podobieństwo
RelatedRead More About Data Science