Aula polska: Rekomendacje filmów na Filmaster.pl

11
Filmaster.pl Komputerowe wróżbiarstwo Czyli jak poprawić rekomendacje o 20%? Jakub Tlałka
  • date post

    17-Oct-2014
  • Category

    Technology

  • view

    1.250
  • download

    2

description

Komputerowe wróżbiarstwo Czyli jak poprawić rekomendacje o 20%? Jakub Tlałka

Transcript of Aula polska: Rekomendacje filmów na Filmaster.pl

Page 1: Aula polska: Rekomendacje filmów na Filmaster.pl

Filmaster.plKomputerowe wróżbiarstwoCzyli jak poprawić rekomendacje o 20%?

Jakub Tlałka

Page 2: Aula polska: Rekomendacje filmów na Filmaster.pl

Czym jest Filmaster?

Filmaster to otwarty, społecznościowy serwis dla miłośników kina.

Można na nim prowadzić filmowego bloga, oceniać filmy i dyskutować z innymi

użytkownikami. Bonusem są spersonalizowane rekomendacje.

Kod napisany w języku Python przy użyciu frameworka Django i bazy PostgreSQL.

Dostępny na wolnej licencji AGPLv3. Każdy może go użyć/poprawić.

Page 3: Aula polska: Rekomendacje filmów na Filmaster.pl

Rekomendacje: Najprostsze podejście

Określamy podobieństwo użytkowników na

podstawie wspólnie ocenionych filmów.

Przewidywana ocena filmu to średnia ważona oceny pozostałych użytkowników,

gdzie wagą jest zbieżność gustu.

Page 4: Aula polska: Rekomendacje filmów na Filmaster.pl

Nowy algorytm rekomendacji

Zakładamy że na ocenę wpływają pewne

abstrakcyjne cechy. Dla każdej z nich liczymy:

- istotność dla każdego z użytkowników - poziom cechy w rozważanych filmach

Na podstawie wyliczonych współczynników

obliczamy przewidywaną ocenę dla każdej

pary (użytkownik, film).

Page 5: Aula polska: Rekomendacje filmów na Filmaster.pl

Ocena rekomendacji

RMSE – wskaźnik skuteczności algorytmu

R - zbiór wszystkich ocen

g(r) – przewidywana ocena

Page 6: Aula polska: Rekomendacje filmów na Filmaster.pl

Co się poprawiło?Stary algorytm Nowy algorytm

RMSE 1,55 1,30

Szybkość (0,5 mln ocen)

4 godziny(Python)

20 minut(C++)

Dostępność zasobów

Baza mocno obciążona

Jednorazowa aktualizacja

Możliwości ulepszenia

Nikłe Duże: Netflix ma RMSE 0,85

Page 7: Aula polska: Rekomendacje filmów na Filmaster.pl

Problemy...

Przewidywane oceny wychodziły poza skalę

Rozwiązanie: usunięcie sztucznych ograniczeń

Spore wahanie rekomendacji w skali dziennej

Rozwiązanie: na razie brak...

Page 8: Aula polska: Rekomendacje filmów na Filmaster.pl

Problemy...

Przy złym doborze współczynników algorytm

wymyka się spod kontroli

Rozwiązanie: Kontrola poprawności przy

użyciu RMSE, skalowanie współczynników w

przypadku nieprawidłowego działania

Page 9: Aula polska: Rekomendacje filmów na Filmaster.pl

Więcej problemów...

Problemy związane z rozmiarem danych (obecnie ponad pół miliona ocen,

ponad 8,5 mln rekomendacji)

Rozwiązanie: aktualizacja danych przez czyszczenie bazy rekomendacji wraz z indeksami, a potem wrzucanie nowych

wyników i odnawianie indeksów.

Page 10: Aula polska: Rekomendacje filmów na Filmaster.pl

Zastosowania

Opisane podejścia można stosować w przypadku dowolnego zbioru obiektów

podlegających ocenie: literatura, muzyka

Wyliczane współczynniki mogą służyć również do określania podobieństwa między

obiektami

Znajdowanie cech wspólnych między pozornie różnymi obiektami

Page 11: Aula polska: Rekomendacje filmów na Filmaster.pl

Przyłącz się!

www: filmaster.pl, filmaster.com

portal dla deweloperów: filmaster.org

fan page: facebook.com/FilmasterCom

kod: bitbucket.org/filmaster/filmaster-test

filmaster@