1 / 30

Ontwikkeling van aanbevelingsalgoritmen voor online social games

Ontwikkeling van aanbevelingsalgoritmen voor online social games. Jan Heuninck. Overzicht. Massive Media Masterproef Onderzoek Implementatie Conclusie. Massive Media. Online mediagroep Netlog Sociale netwerksite 76 miljoen leden (juni 2011) Gatcha! Online gameplatform

ganya
Télécharger la présentation

Ontwikkeling van aanbevelingsalgoritmen voor online social games

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Ontwikkeling van aanbevelingsalgoritmen voor online social games Jan Heuninck

  2. Overzicht • Massive Media • Masterproef • Onderzoek • Implementatie • Conclusie

  3. Massive Media • Online mediagroep • Netlog • Sociale netwerksite • 76 miljoen leden (juni 2011) • Gatcha! • Online gameplatform • Netlog & Facebook

  4. Masterproef • Doel • Onderzoek en implementatie van aanbevelingsalgoritmen • Games aanbevelen aan de gebruiker • Snelheid en performantie!

  5. Masterproef • Twee luiken • Onderzoek • Gatcha!-data • Collaborative filtering • Evaluatie • Implementatie

  6. Gatcha!-data • Algemeen • Enkele cijfers • Miljoenen gebruikers • ± 235 games • > 25 miljoen gameplays per maand • Nodig om appreciatie voor games numeriek voor te stellen • Interval Masterproef > Onderzoek

  7. Gatcha!-data • Expliciete ratings • Waardering met sterren • Niet elke gebruiker geeft een score • Impliciete ratings • Gameplays • Combinatie Game-afhankelijk Masterproef > Onderzoek

  8. Gatcha!-data Masterproef > Onderzoek

  9. Collaborative filtering • Algemeen • Aanbevelingen genereren a.d.h.v. data van alle gebruikers • Toch gepersonaliseerd • Score voorspellen en ranglijst opstellen • Gebruikt bij o.a. Amazonen Netflix Masterproef > Onderzoek

  10. Collaborative filtering • Implementatie • Geheugengebaseerd • Aanbevelingen rechtstreeks genereren • Geen trainingsfase • Slecht schaalbaar • Modelgebaseerd • Eerst model opbouwen • Rekenintensief, maar periodiek • On the fly Masterproef > Onderzoek

  11. Collaborative filtering • Gelijkaardigheidsmetrieken (1) • Euclidische afstand • Meetkunde • Afstand in tweedimensionaal vlak • Pearson correlatiecoëfficiënt • Lineaire onafhankelijkheid tussen 2 vectoren • Brengt ratinggedrag van de gebruiker in rekening Masterproef > Onderzoek

  12. Collaborative filtering • Gelijkaardigheidsmetrieken (2) • Cosinusgelijkaardigheid • Hoek tussen 2 vectoren • Jaccard-coëfficiënt • Doorsnede / unie van 2 sets Masterproef > Onderzoek

  13. Collaborative filtering • Item-based collaborative filtering • Games onderling met elkaar vergelijken • Geheugengebruik Masterproef > Onderzoek

  14. Collaborative filtering • User-based collaborative filtering • Gebruikers onderling met elkaar vergelijken • Geheugengebruik • Niet gebruikt omwille van groot aantal gebruikers bij Gatcha! Masterproef > Onderzoek

  15. Onderzoek • Evaluatie • Algemeen • Evaluatiemetrieken • Parameters • Resultaten Masterproef

  16. Evaluatie • Algemeen • In samenwerking met IBCN • Training- en testset • Scores voorspellen en vergelijken met werkelijke waarde • Rekencluster Universiteit Gent Masterproef > Onderzoek

  17. Evaluatie • Evaluatiemetrieken • ROC-curve • Kwaliteit beoordelen • Mean absolute error (MAE) • Afwijking voorspelling t.o.v. werkelijke waarde Masterproef > Onderzoek

  18. Evaluatie Masterproef > Onderzoek

  19. Evaluatie • Parameters • User-based / Item-based • Gelijkaardigheidsmetriek • Expliciete en/of impliciete ratings • Cut-off waarde Masterproef > Onderzoek

  20. Evaluatie • Resultaten • User-based collaborative filtering • Extreem lange uitvoeringstijd • Slechte resultaten Masterproef > Onderzoek

  21. Evaluatie • Resultaten • Item-based collaborative filtering • Gecombineerde ratings (50-50) • Pearson correlatiecoëfficiënt • Goede resultaten (AUC en MAE) Masterproef > Onderzoek

  22. Masterproef • Onderzoek • Implementatie • Werkwijze • Optimalisatie • Uitvoeringssnelheid

  23. Werkwijze • Python code → PHP code • Code integreren in Gatcha! • Optimalisatie • Gearman • Memcached • Database Masterproef > Implementatie

  24. Optimalisatie • Gearman • Open source • Jobs distribueren over meerdere processen • Voordelen • Snellere uitvoering van taken • Parallelle uitvoering • Grote schaalbaarheid Masterproef > Implementatie

  25. Optimalisatie • Gearman • Gebruik • Ophalen/converteren data • Gelijkaardigheden berekenen Masterproef > Implementatie

  26. Optimalisatie • Memcached • Open source • Caching • Gebruikt door Netlog, Facebook en Twitter • Query’s, objecten en HTML cachen • Database ontlasten Masterproef > Implementatie

  27. Optimalisatie • Database • Intensief gebruik maken van MySQL • Geheugengebruik minimaliseren • Opslag • Geconverteerde ratings • Item-gelijkaardigheidsmodel Masterproef > Implementatie

  28. Uitvoeringssnelheid • Voorbeeld • berekenen van de impliciete ratings 30 x sneller! Masterproef > Implementatie

  29. Conclusie • Item-based collaborative filtering • Pearson correlatiecoëfficiënt • Belang van impliciete ratings • Performance boost door databank en optimalisatietechnieken

  30. Vragen?

More Related