Warsaw Data Science Meetup #26 – maj 2017

9 maja miałem okazję zaprezentować w ramach meetupu Warsaw Data Science koncepcję budowy silników rekomendacyjnych. Na realnym przykładzie zbioru filmów omawiałem krok po kroku kolejne etapy budowy mechanizmu rekomendacyjnego wykorzystującego techniki zaczerpnięte z teorii zbiorów rozmytych i logiki rozmytej.

Przygotowanie prezentacji stanowiło duże wyzwanie. Wiedziałem, że w ciągu godziny muszę przedstawić w sposób zrozumiały i klarowny nie tylko ideę działania zbiorów rozmytych ale także sposób ich implementacji w silniku rekomendacji. Co więcej, chciałem to wszystko podeprzeć „namacalnym” przykładem pokazującym jak wyglądają od strony matematyczno-algorytmicznej poszczególne etapy – począwszy od matematycznego zapisu rekomendacji poprzez przygotowanie modelu aż do wyznaczanie rekomendacji.

Na wstępie omówiłem zarys historyczny metod miękkiego modelowania. Podkreśliłem również wkład jaki mieli Polacy w jego rozwój (J. Łukasiewicz, E. Kofler, Z. Pawlak). Kolejnym krokiem było zobrazowanie różnic pomiędzy tradycyjną logiką – dwuwartościową – a logiką rozmytą.

Po przedstawieniu podstaw teoretycznych przeszedłem do praktyki. Posłużyłem się projektem który opisywałem na łamach bloga: „Silnik rekomendacji filmów„. Baza miała nieco ponad 2,7 tys. filmów. Sam silnik rekomendacji bazował na metodzie filtrowania opartej o indywidualne preferencje użytkownika (Content Based Filtering). Przedstawiłem jej plusy i minusy w odniesieniu do filtrowania opartego o preferencje użytkowników o podobnym guście (Collaborative Filtering).

Rekomendacje były wyznaczane dla fikcyjnego użytkownika, który jest fanem kina gangsterskiego i ocenił tylko 3 filmy:

  • Ojciec Chrzestny,
  • Chłopcy z Ferajny,
  • Kasyno.

Chciałem pokazać, że w sytuacji gdy dany użytkownik ocenił niewiele filmów, filtrowanie CBF działa bardzo dobrze i przynosi dużo lepsze efekty niż CF. Potwierdziło to demo, podczas którego wyznaczyłem rekomendacje. W top 20 rekomendacji było wiele szlagierów kina gangsterskiego, m.in.:

  • Donnie Brasco,
  • Wrogowie Publiczni,
  • Blow,
  • Człowiek z blizną.

Jeśli nie miałeś okazji uczestniczyć w prezentacji, to link do mojej prezentacji, oraz wszystkich wspomnianych w niej materiałów wraz z bibliografią znajdują się poniżej.

Materiały z prezentacji:

Prezentacja w formacie .pptx
Prezentacja w formacie .pdf
Projekt „silnik rekomendacji filmów”
Zrzut bazy danych
Wszystkie pliki użyte do zbudowania silnika rekomendacji filmów

Bibliografia:

Wprowadzenie do modelowania rozmytego w silnikach rekomendacji
Zbiory rozmyte dla początkujących
Collaborative Filtering z użyciem logiki rozmytej
Mathematics of Fuzzy Sets and Fuzzy Logic
Fuzzy Sets and Fuzzy Logic – theory and applications

Podobał Ci się ten artykuł?

Jeśli tak, to zarejestruj się, by otrzymywać informacje o nowych wpisach. Dodatkowo w prezencie wyślę Ci bezpłatny poradnik 🙂

Bądź pierwszy, który skomentuje ten wpis!

Dodaj komentarz

Twój adres email nie zostanie opublikowany.


*