Áttekintés
Az ajánlórendszerek olyan információszűrő alkalmazások, amik segítenek megtalálni a releváns tartalmat/termékeket a felhasználóik számára. Ahogy egyre inkább nő az elérhető információ, úgy válnak az ajánlórendszerek is egyre népszerűbbé.
Az ajánlórendszerek legfontosabb része az ajánlóalgoritmus, ami eldönti az egyes termékekről, hogy azok egy adott felhasználó számára relevánsak-e, majd egy, a releváns termékekből összeállított, ajánlási listát állít elő számukra. Az ilyen algoritmusokat többféle szempont szerint lehet osztályozni. Az egyik felosztás explicit és implicit feedback alapú algoritmusokat különböztet meg az alapján, hogy az algoritmus milyen típusú adatokat használ fel. Az explicit feedback explicite tartalmazza a felhasználói preferenciákat, például értékelések formájában: alacsony értékelés azt jelenti, hogy a felhasználónak nem tetszik a termék (negatív preferencia), míg a magas értékelés pozitív preferenciát kódol. Ezzel szemben az implicit feedback nem írja le közvetlenül a felhasználói preferenciákat. Erre lehet példa a felhasználók korábbi vásárlásainak listája. Egy vásárlás esemény megléte nem jelent feltétlenül pozitív preferenciát (pl.: megvette és csalódott benne), míg a vásárlás hiánya alig jelent valamit (pl.: a felhasználó nem is tudott a termék létezéséről). Egy fontos jellemzője az implicit feedback-nek, hogy nem tartalmazza negatív felhasználói preferenciákat. Az explicit feedback gyűjtése sokkal nehezebb, mivel a felhasználók többsége nem motivált abban, hogy értékeljék a termékeket.
Bár gyakorlati alkalmazásokban az implicit feedback alapú eset sokkal fontosabb, a terület kutatása jóval le van maradva az explicit módszerekétől. Ennek több oka is van, mint például az, hogy az implicit eset egy sokkal nehezebb probléma; az implicit algoritmusok kiértékelése nem annyira egzakt, mint az explicit módszereké; a jelentősebb versenyek (kezdve a Netflix versenytől) explicit adatokon operálnak, mivel az őket szponzráló nagyobb cégeknek elegendő explicit feedback áll rendelkezésükre; stb. Ennek ellenére úgy gondolom, hogy az implicit eset sokkal fontosabb, mivel (a) a legnagyobbak kivételével a legtöbb szolgáltatók/weboldalak számára nem áll rendelkezésre elegendő explicit feedback; (b) az implicit feedback mennyisége minden esetben több nagyságrenddel nagyobb, mint az explicit feedback-é; (c) implicit feedback-et minden felhasználó hátrahagy, míg explicitet csak egy kis töredékük, ugyanakkor az ajánlórendszer célja, hogy MINDEN felhasználó számára releváns ajánlatokat adjon.
A kutatásom központi témája a az implicit feedback alapú ajánlóalgoritmusok, azon belül is leginkább a modell alapú kollaboratív szűréssel működő megoldások. Foglalkozok még a kontextus vezéreltséggel is implicit algoritmusokban. A kontextus vezéreltség nagyvonalakban annyit jelent, hogy különböző helyzetekben más termékeket ajánlunk ugyanannak a felhasználónak (pl.: hétvégente délután családi filmeket, míg hétköznap éjszaka horror filmeket). Néhány kontextus információ figyelembevételével jelentősen meg lehet növelni az ajánlóalgoritmusok pontosságát. Ezen kívül azzal is foglalkozok, hogy hogyan lehet egyéb információforrásokat transzparens módon a faktorizáció alapú módszerekbe integrálni (pl.: termék metaadatok, felhasználó demografikus adatai, stb).
Főbb kutatási területeim
- Implicit feedback és kollaboratív szűrés alpú működő algoritmusok
- Kontextus vezéreltség
- Egyéb információforrások integrálása a faktorizációs megoldásokba
Meoldások
A kutatás még a korai szakaszában tart és az eredmények publikálása elmarad hozzá képest. Ezért jelenleg nem részletezem itt az eredményeket, mivel a módszerek egy része még fejlesztés vagy publikálás alatt áll, és így nem beszélhetek róluk. Nézz vissza később, mivel ahogy egy-egy kutatási blokk befejeződik, frissítem ezt a szekciót.
Addig is javaslom a területhez kapcsolódó cikkeim előzetes verzióinak olvasását.
Anyagok
iTALS: kontextus vezérelt tenzor módszer implicit feedback-en (cikk, ENG)
Az iTALS egy kontextus-vezérelt kollaboratív szűrés alapú módszer. A felhasználó-termék-kontextus(ok) problémát egy bináris tenzorral modellezzük, a cellákhoz emellett súlyokat is rendelünk, aszerint, hogy mennyire vagyunk biztosak az általuk reprezentált információban. A cikkben levezetünk egy ALS alapú algoritmust, ami képes ezt a tenzort hatékonyan faktorizálni. Emellett bevezetünk egy új (eddig nem használt) kontextus típuszt, a szekvencialitást. Ez a kontextus lehetővé teszi az asszociációs szabályokhoz hasonló szabályok integrálását a faktorizációs keretbe, és a különböző ismétlődési mintázattal rendelkező termékek szétválasztását, és ezáltal a hatékonyabb ajánlást. A cikk az ECML/PKDD konferencán került bemutatásra 2012. szeptemberében.
iTALS: kontextus vezérelt tenzor módszer implicit feedback-en (diasor, ENG)
Az előadásom diasora az ECML/PKDD 2012 konferencián.
Megtekintés SlideShare-en
iTALS: kontextus vezérelt tenzor módszer implicit feedback-en (poszter, ENG)
Az ECML/PKDD 2012-es cikkemhez készült poszter, remek áttekintés a módszer fő tulajdonságairól, ugyanakkor egyes részletek nem jelennek meg rajta.
Mátrixfaktorizáció inicializálása (cikk, ENG)
A cikk bemutatja, hogy miért fontos a mátrixfaktorizációs eljárások inicializálásával foglalkozni, valamint ismertet egy érdekes inicializálási módszert (SimFactor). Ezen kívül bemutatja a kontext alapú inicializálást is. A második CaRR (Context-awareness in Retrieval and Recommendations) workshopon került bemutatásra, 2012. februárjában.
Mátrixfaktorizáció inicializálása (diasor, ENG)
A CaRR 2012 workshopon bemutatott prezentációmhoz tartozó diasor.
Megtekintés SlideShare-en
Mátrixfaktorizáció inicializálása (bővített folyóiratcikk, ENG)
Ez a cikk a CaRR 2012-es cikk bővített verziója, ami a J.UCS folyóiratban jelent meg 2013 októberében. Főbb frissítések: (1) Sim2Factor algoritmus: hasonlóság alapú hasonlóság felhasználásával történő inicializálás; (2) különböző hasonlóságfüggvény vizsgálata; (3) több kísérlet új adatbázisokon.
Kontextus vezérelt hasonlóságok a faktorizációs keretrendszerben (cikk, ENG)
Ez a cikk az ajánlórendszerekkel kapcsolatos fő kutatásomhoz kapcsolódó, érdekes kiegészítő témát mutat be. Ez a kontextus vezérelt (feature vektor alapú) hasonlóságok előzetes vizsgálata. Ez a projekt az alábbi négy terület metszetében helyezkedik el: (1) implicit feedback alapú ajánlások; (2) kontextus / kontextus vezéreltség; (3) item-to-item ajánlások (terméket ajánlunk termékhez); (4) mátrix / tenzor faktorizáció. A projekt célja annak vizsgálata, hogy a kontextus használható-e arra, hogy pontosabb termékhasonlóságokat számítsunk, a feature vektorok segítségével. A cikk bemutatja a kontextus vezérelt hasonlóságok két szintjét: (1) a kontextust csak a tanítás során használjuk, de ahasonlóság számításához nem; (2) a kontextust a tanítás során és a hasonlóságszámításnál is használjuk. A cikket a harmadik CaRR (Context-awareness in Retrieval and Recommendations) workshopon mutattam be, 2013. februárjában.
Kontextus vezérelt hasonlóságok a faktorizációs keretrendszerben (diasor, ENG)
A CaRR 2013 workshopon bemutatott prezentációmhoz tartozó diasor.
Megtekintés SlideShare-en
Folytonos kontextus dimenziók modellezése faktorizációs algoritmusokban (cikk, ENG)
A cikkben két módszert mutatok be, amik segítségével a folytonos kontextus dimenziós modellezhetők faktorizációs algoritmusokban. A jelenleg alkalmazott módszerrel ellentétben a javasolt módszerek nem szenvednek a kontextus állapotok merevségétől, vagy attól, hogy figyelmen kívül hagyjuk a kontextus állapotok sorrendjét. Az eredmények kiemelkedő javulást mutatnak az alap módszerhez képest. A negyedik CaRR (Context-awareness in Retrieval and Recommendations) workshopon került bemutatásra, 2014. áprilisában.
Folytonos kontextus dimenziók modellezése faktorizációs algoritmusokban (diasor, ENG)
A CaRR 2014 workshopon bemutatott prezentációmhoz tartozó diasor.
Megtekintés SlideShare-en