ImpressTV Zrt. kutatási témák 1. Cím: Média tartalmak automatikus címkézése és adatbővítése Kulcsszavak: adatbányászat, statisztika, metaadat, felhasználói viselkedés, ajánlórendszerek Probléma: A média tartalmak (elsősorban filmek) ajánlására fejlesztett rendszerek esetében azzal szembesülünk, hogy nem minden tartalomra rendelkezünk megfelelő mennyiségű, a filmes tartalmakra vonatkozó metaadattal, illetve azzal, hogy a rendelkezésre álló metaadat minősége erősen ingadozik. Ez a televíziós szolgáltatók (IPTV és kábeltelevíziós szolgáltatók, Over the Top szolgáltatók) számára azért jelent problémát, mert az általuk megvásárolt és on-demand szolgáltatások keretében ajánlott tartalmak esetén fontos az, hogy a felhasználó rendkívül gyorsan megtalálja a neki tetsző tartalmakat, illetve hogy egy tartalom a lehető leggyorsabban ajánlható legyen (item cold start probléma). Feladat: A feladat egy olyan rendszer kialakítása, amely segítségével a felhasználói eseményekből (eventek) vonunk le a tartalmakra vonatkozó következtetéseket, illetve amelynek segítségével képesek leszünk arra, hogy a média tartalmakat automatikusan a rájuk vonatkozó címkékkel (tagekkel) lássuk el, elősegítve ezzel a tartalmak gyorsabb besorolását, a tartalom és metaadat alapú ajánló algoritmusok sebességének növelését, illetve az érthetőbb ajánlás magyarázatokat. Opcionális irány olyan módszerek kidolgozása, melyek külső forrásból további információkat szereznek (metaadat szolgáltatók, wikipedia, műsorok feliratainak feldolgozása, kommentek értelmezése) és beleépítik a meglévő adatok közé. Előfeltétel: programozói tudás, gépi tanulás, statisztikai ismeretek 2. Cím: Nézettségmérés új módszerei avagy Audience measurement Kulcsszavak: IPTV, felhasználói viselkedés, média, ajánlórendszerek Probléma: Annak ellenére, hogy az IPTV szolgáltatók és a kábeltelevíziós szolgáltatók elvben minden Set Top Boxról származó információt képesek loggolni, mérnöki szempontból mind a mai napig rendkívül kezdetleges megoldásokat használnak a szolgáltatók a televíziós tartalomfogyasztás pontos mérésére. A probléma sok esetben annyi, hogy a szolgáltatók hiába képesek 20 másodpercenként információt gyűjteni a felhasználói szokásokról, nem tudják az összegyűjtött nagy mennyiségű adatot kezelni. Feladat: A feladat főbb megoldandó kérdései a következők: hogyan tudjuk a nézettséget értelmezni (mi az, amit mérnünk kell, és mely adatok a fontosak) és vizualizálni (mit és hogyan tudunk megjeleníteni, illetve értelmezni), illetve hogyan nyerjük ki azt a preferenciát, hogy a felhasználó egy adott csatornát néz vagy pedig egy az adott csatorna programján belül egy adott tartalom (item) érdekli, valamint a szerkesztők milyen hatékonyan pozícionálják a műsorujságot az egyes csatornákon. A feladatot a hallgatók akár egyénileg, akár több hallgató csoportosan is választhatja, a feladat pedig több féléven át is folytatható. Előfeltétel: programozói tudás, statisztikai és adatvizualizációs eszközök, klaszterezési módszerek ismerete 1
3. Kereszt domén (cross domain) ajánlások Kulcsszavak: ajánlórendszerek, felhasználói viselkedés, IPTV Probléma: A Netflixhez hasonló videós tartalomszolgáltatók elterjedésével együtt jelentős probléma az európai IPTV és kábeltelevíziós szolgáltatók számára az, hogy az on-demand tartalomfogyasztás (VOD fogyasztás, PayTV fogyasztás) alacsony, a felhasználók az esetek 90%-ában elő televíziós tartalmakat fogyasztanak. Az üzleti cél tehát az, hogy a felhasználó számára releváns fizetős tartalmakat ajánljunk, ehhez azonban olyan ajánló algoritmusok kifejlesztésére van szükség, amelyek képesek arra, hogy az élő adásokon megismert felhasználói / tartalomfogyasztási szokások alapján on-demand (VOD vagy PayTV) tartalmakat ajánljanak. Feladat: A megoldandó ajánlási probléma az, hogy nem minden élő tartalomfogyasztási eseménynek (eventnek) van reális tartalma a számunkra, illetve nem minden felhasználónak van on-demand kölcsönzési eseménye, emiatt a lineáris tartalomfogyasztásból ki kell emelni azokat a faktorokat, amelyekből következtethetünk a VOD fogyasztásra (pl: míg az esti blockbuster film megnézése relevás ebből a szempontból, az esti hírek már kevésbé). A cél tehát az, hogy meg kell találni a két domain közötti összefüggést. A feladat első lépése az, hogy meg kell vizsgálni, hogy a tudományos világban más területeken milyen kutatások vannak hasonló cross-domain ajánlásokra, és a más tudományterületeken levő módszereket kell adaptálni a televíziós világra. A feladat megoldásához igény esetén az ImpressTV Zrt. a saját fejlesztésű adatbányászati keretrendszerét biztosítja, amihez Java programozói ismeret szükséges. A feladatot a hallgatók akár egyénileg, akár több hallgató csoportosan is választhatja, a feladat pedig több féléven át is folytatható. Előfeltétel: gépi tanulási és programozási ismeretek, illetve az ajánlórendszerben alkalmazott algoritmusok 4. Hibrid filtering média tartalmakra Kulcsszavak: adatbányászat, statisztika, felhasználói viselkedés, metaadatok, ajánlórendszerek Probléma: Az ajánlórendszerek fejlesztése során egyre inkább látszik az, hogy szükség van metaadat alapú rendszerek (Content-based filtering) és a felhasználói viselkedés alapú rendszerek (collaborative filtering) egyesítésére. Az általunk fejlesztett, a világ egyik legnagyobb tube oldalán, a Dailymotion.com-on futó ajánlórendszernél például azzal a problémával kerültünk szembe, hogy egy videóhoz sok címke (tag) tartozik, de ténylegesen csak a címkék kis része releváns. A hibrid szűrés egyik előnye pontosan az lenne, hogy a fogyasztási szokások elemzésével következtethetnénk arra, hogy mely tagek relevánsak, és melyek nem. Másik előnye a két megközelítés előnyének ötvözése (pl: újonnan bevezetett tartalmak ajánlása a meglévő fogyasztási szokások alapján) Feladat: A feladat során a hallgató egy modellt építene arra vonatkozóan hogy melyik metaadat releváns, és melyik nem. A feladat során első lépésben a kollaboratív szűréssel elősegítjük a metaadat szignifikancia feltárását, második lépésben pedig kombinálnánk a két eltérő algoritmus családot és kialakítanánk egy olyan rendszer prototípusát, amely az ajánlás generálás során a már ismert tartalmakra felhasználói viselkedést elemző algoritmusokat használ, az új tartalmakra pedig metaadat alapú szűrést. A feladat megoldásához igény esetén az ImpressTV Zrt. a saját fejlesztésű adatbányászati keretrendszerét biztosítja, amihez Java programozói ismeret szükséges. A feladatot a hallgatók akár egyénileg, akár több hallgató csoportosan is választhatja, a feladat pedig több féléven át is folytatható. Előfeltétel: programozás (Java), kollaborative és tartalom alapú szűrés, ajánlórendszer algoritmusok ismerete 2
5. Ajánlási stratégiák, avagy «the Winner Takes it all» Kulcsszavak: felhasználói viselkedés, metaadatok, ajánlórendszerek Probléma: Az ajánlórendszerek televíziós szolgáltatóknál történő telepítése során többször szembesülünk azzal a problémával, hogy a felhasználónak többféle tartalomfogyasztási preferenciája van: pld az esetek 75%-ában komédiákat néz, 25%-ban pedig horrorfilmeket. A collaborative filtering algoritmusok esetén jellemző megfigyelés a The Winner Takes it all jelenség, mely szerint a user alapú modellezés során a legjellemzőbb preferencia érvényesül. Emiatt az ajánlások egysíkúvá válhatnak (elsősorban a mátrix faktorizációs módszereknél). Feladat: A feladat tehát az, hogy úgy ajánljuk az egyes videós és televíziós tartalmakat, hogy azok egyrészt illeszkedjenek a felhasználói preferenciákhoz, másrészt lehessen jól külön vehető preferenciákat kialakítani, illetve az ajánlási listában a preferenciák elosztását megfelelően kialakítani. Másik feladat annak a problémának a megoldása, hogyan lehet olyan ajánló algoritmust kialakítani, amely megfelelően diverz ajánlásokat szolgáltat, ugyanakkor megmarad az ajánlások pontossága is. A feladat megoldásához igény esetén az ImpressTV Zrt. a saját fejlesztésű adatbányászati keretrendszerét biztosítja, amihez Java programozói ismeret szükséges. A feladat több féléven át is folytatható. Előfeltétel: programozás (Java), algoritmuselmélet, statisztika 6. Tartalomajánló algoritmusok inkrementális tanulása Kulcsszavak: ajánlórendszer modellek, gépi tanulás Probléma: Az ajánlórendszerek ipari alkalmazásánál jelentős probléma a felhasználói és tartalom modellek frissen tartása és adaptív modellezése. Ennek az egyik legelterjedtebb megközelítése a teljes modellbázis időszakos újratanítása (pl: teljes mátrix faktorizációs algoritmus futtatása az összes felhasználóra és termékre), azonban ebben az esetben a tanítási idő (függően az ügyfél domain méretétől) nagyon hosszú is lehet. A megoldandó probléma ilyenkor az, hogy lehet megoldani a modellek frissitését anélkül hogy teljesen ujratanitsuk a modellt. Feladat: A feladat annak vizsgálata, hogyan lehet ezt mérni, és milyen tanítási stratégiát kell alkalmazni: pl Δt-ben érkező információt milyen matematikai formulával építsuk be a meglévő modellekbe, hogy az az elméleti modellhez konvergáljon. A feladat része emellett a meglevő, az adatbányászatban már ismeri algoritmusok(ials Implicit Alternating Least Squares, SGD Stochastic Gradient Descent vagy szomszéd módszer) kipróbálása, illetve annak kutatása, hogy az általunk preferált rendszerekhez van-e inkrementális módszer. A feladat több féléven át is folytatható: az első félév során a cél irodalmazás alapján a preferált módszer kiválasztása, második félében a kiválasztott módszerek implementálása. A feladathoz az ImpressTV Zrt. a saját fejlesztésű adatbányászati keretrendszerét biztosítja. Előfeltétel: programozói tudás (Java), analízis, gépi tanulás 3
7. Magas rendelkezésre állású, elosztott rendszerű taralomajánló módszerek Kulcsszavak: elosztott rendszerek, ajánlórendszer modellek, gépi tanulás Probléma: A big data elterjedésével egyre komolyabb probléma az, hogy egy adott felhasználónak egyre nagyobb halmazból kell ajánlanunk. A probléma minden esetben az, hogyan lehet predikciós időben elosztottá tenni az egyes kiértékeléseket úgy, hogy a szolgáltatási szerződésben (SLA-ban) meghatározott időn belül (100-200 millisecumdum) választ adjunk. A megoldás érdekében elengedhetetlen az, hogy bizonyos számításokat párhuzamosítsunk. Feladat: A feladat a rendelkezésre álló elosztott rendszerek feltérképezése, illetve a feladatra leginkább alkalmas elosztott rendszer (pld Hadoop alváltozatai) felmérése és kiválasztása, majd következő félében a kiválasztott rendszer alapszintű implementálása. Meg kell találni azt a rendszert, amely a leginkább alkalmas az általunk használt ajánló algoritmusok futtatására, illetve ezen algoritmusok párhuzamosítására. A feladatot a hallgatók akár egyénileg, akár több hallgató csoportosan is választhatja, a feladat pedig több féléven át is folytatható. Előfeltétel: programozási tapasztalat, elosztott rendeszerek ismerete 8. Tartalomajánló algoritmusok elosztott rendszerű tanítása Kulcsszavak: elosztott rendszerek, adatbázisok, ajánlórendszer modellek, gépi tanulás Probléma: A big data elterjedésével egyre komolyabb probléma az, hogy az adatokon futatott gépi tanulás egy szerveren mind memória kapacítási korlátok miatt, mind a futási idő szignifikáns növekedése miatt az ajánlórendszer szolgáltatóknak egyre nehezebben kivitelezhető. Fontos szempont, hogy az algoritmusok tanulási ideje egy korláton belül maradjon ezzel fenntartva a modellfrissítés megfelelő gyakoriságát, illetve hogy a rendszertelepítések során rendelkezésre álló időben (change window) el tudják végezni mind a beállítási műveleteket, mind a gépi tanulás és élesítés folyamatát. A megoldás a standard modell építési módszerek (pl: mátrix faktorizáció, szomszéd módszerek) párhuzamosítása, illetve az elosztott környezet implementálása. Feladat: A feladat első lépése az ajánlórendszerek területén alkalmazott adatbányászati algoritmusok megismerése, illetve irodalomkutatás, hogy milyen párhuzamosított megodások születtek ezen módszerekre, opcionálisan a meglévő módszerek továbbfejlesztése. Következő lépés a rendelkezésre álló elosztott rendszerek feltérképezése (adatbázis, ill processzek futtatása), illetve a feladatra leginkább alkalmas megoldások felmérése és kiválasztása. A feladat több féléven át is folytatható: az első félév során a cél irodalmazás alapján a preferált módszer kiválasztása, második félében a kiválasztott módszerek implementálása. A feladatot a hallgatók akár egyénileg, akár több hallgató csoportosan is választhatja, a feladat pedig több féléven át is folytatható. Előfeltétel: programozási tapasztalat, elosztott rendszerek és adatbázisok ismerete Az ImpressTV-ről Az ImpressTV öt kontinensen jelen lévő, ajánlórendszer-szolgáltatást nyújtó vállalat, amely a Netflix Prize fináléjába jutott, magyar Gravity R&D Zrt. televíziós portfóliójának felvásárlásával jött létre 2014-ben. A céget brit, telekommunikációs területen tapasztalt befektetők vezetik, budapesti technológiai központjában pedig összeszokott, magyar fejlesztői csapat tevékenykedik. A vállalat főbb szolgáltatásai: személyre szabott ajánlások nyújtása, hirdetések targetálása, adatelemzés, prediktív elemzés és felhasználói adatbázissal kapcsolatos mérések, jellemzően nemzetközi telekommunikációs vállalatok és egyéb tartalomszolgáltatók számára. 4
Az ImpressTV ügyfelei között tudhatja többek közt a Magyar Telekomot, az Ivi.ru-t, Oroszország vezető video streaming szolgáltatóját, valamint a CenturyLink-et, az USA egyik legnagyobb telekommunikációs vállalatát is. Az ImpressTV 21 algoritmus optimális kombinációját használja a lehető legpontosabb, valós idejű ajánlások megtalálásához. A metaadatok felhasználása mellett a cég élen jár az ajánlások fogyasztói viselkedés és fogyasztási körülmények (eszköz, hely, idő, stb.) alapján történő kialakításában. Az ImpressTV a végfelhasználót helyezi a működése középpontjába: a legfontosabb cél nem a filmes tartalmak katalogizálása, hanem a tévénézők ízlésének mélyebb megismerése és kiszolgálása. 5