ERK'2019, Portorož, 223-226 223 Gradnja napovednih modelov za klike na oglase v družabnih omrežjih Vesna Novak, Matej Guid Univerza v Ljubljani, Fakulteta za raˇ cunalništvo in informatiko E-pošta: vesna.n@gmail.com, matej.guid@fri.uni-lj.si Building prediction models for advertisement clicks in social networks The revenues from large social networks, which today are measured in billions of dollars and increasing year by year, mostly come from online advertising. Advertising on social networks is becoming an increasingly impor- tant form of advertising for products and services. A typical social networking ad campaign contains multi- ple ad groups and each ad group contains multiple ads. When managing advertising campaigns, it is particularly important to decide which ad groups and ads are to be active and for which more advertising money should be earmarked. We compared different prediction models for predicting clicks on ads on social networks to optimize the management of display advertising campaigns. With optimization, decision support for campaign managers and automation of display campaign management can be improved, maximizing the number of clicks. 1 Uvod Družabna omrežja so internetna spletna mesta družabnih medijev, ki jih uporabljamo z namenom povezovanja s prijatelji, družino, sodelavci ali strankami. Kar 45% ce- lotne svetovne populacije uporablja vsaj eno družabno omrežje, število uporabnikov pa iz dneva v dan strmo na- rašˇ ca [1]. Ker lahko ima družabno mreženje poleg soci- alnega tudi poslovni namen ni nenavadno, da je postalo pomembna osnova za upravljalce oglaševalskih kampanj. Oglaševanje na družabnih omrežjih je v porastu, namenja se mu vedno veˇ c oglaševalskega denarja. Slovenski ogla- ševalci so v letu 2017 digitalnemu oglaševanju namenili 47,2 milijona evrov, ocenjuje pa se, da bo v letu 2019 ob- seg investicij v digitalno oglaševanje obˇ cutno presegel 60 milijonov evrov. 82% oglaševalcev bo oglaševalo na dru- žabnih omrežjih, med oblikami digitalnega oglaševanja pa naj bi letos najveˇ c sredstev namenili ravno prikaznemu oglaševanju [2]. Pri oglaševanju se sprašujemo kaj je namen oglaše- vanja, kdo je ciljna skupina, kakšno bo sporoˇ cilo, katere kanale za oglaševanje uporabiti, koliko denarja nameniti doloˇ cenemu oglasu, kako meriti in oceniti rezultate [3]. Pri vseh teh vprašanjih bi bilo koristno vnaprej vedeti, ˇ ce sploh in koliko klikov na oglas priˇ cakovati. S tem bi se upravljalcu oglaševalskih kampanj olajšala odloˇ citev, katere oglase ali oglasne skupine pustiti aktivne in ko- liko denarja jim nameniti. S pomoˇ cjo strojnega uˇ cenja na preteklih podatkih poskušamo zgraditi napovedni model, ki z napovedovanjem ˇ casovnih vrst kar se da uspešno na- pove prihodnost klikov na oglas in s tem upravljalcu ogla- ševalske kampanje pomaga pri upravljalskih odloˇ citvah, prav tako pa je pomembna informacija pri samodejnem upravljanju oglaševalskih kampanj. Na realnih podatkih iz družabnih omrežij Facebook in Twitter, ki so agregirani na urnem nivoju in po skupi- nah oglasov, smo primerjali razliˇ cne algoritme za napo- vedovanje ˇ casovnih vrst (angl. time series forecasting): XGBoost, ARIMA, V AR in LSTM nevronske mreže ter ugotavljali njihovo zmožnost za napovedovanje veˇ c ˇ ca- sovnih toˇ ck (ur) vnaprej. Gradnja napovednih modelov za napovedovanje do- godkov na družabnih omrežjih, še zlasti v kontekstu ogla- ševanja, je dandanes izredno aktualna tema, vendar je akademskih ˇ clankov s tega podroˇ cja relativno malo. V ˇ clanku [4], kjer napovedujejo klike na oglase na družab- nem omrežju Facebook so izpostavili, da na konˇ cno na- poved najbolj vpliva pravilen izbor informacij, torej ti- stih, ki predstavljajo zgodovinske podatke o uporabniku ali samem oglasu. Tudi v ˇ clanku [5], kjer napovedu- jejo razmerje med prikazi in kliki (CTR) 1 na družabnem omrežju Twitter, za bolj uspešne napovedi izpostavljajo pomembnost znaˇ cilk, povezanih z uporabnikom, njego- vimi meta podatki in zgodovino njegovih klikov. Naš na- bor podatkov teh informacij ne zajema. S preizkušanjem in primerjavo bomo skušali ugotoviti, kateri parametri in koliko izmed teh, ki jih imamo na voljo, najbolj vpli- vajo na napovedno toˇ cnost pri napovedovanju klikov na oglase, za razliˇ cna ˇ casovna obdobja. S tem se veliko bolj približamo perspektivi upravljalca oglaševalskih akcij, ki ima tipiˇ cno na voljo statistike oglasov v preteklih dneh, sprejeti pa mora odloˇ citev, katerim oglasom bo v priho- dnje namenil veˇ c oz. manj oglaševalskega denarja. Ve- ˇ cina sorodnih del se osredotoˇ ca na napovedovanje samo ene toˇ cke vnaprej [6], medtem ko je naš namen ugotoviti, za koliko ur vnaprej so napovedi še smiselne [7]. Prav tako želimo primerjati razliˇ cne modele, tako univariatne kot multivariatne, in ugotoviti, ˇ ce in katere zunanje zna- ˇ cilke lahko pripomorejo k boljši napovedni toˇ cnosti. 1 Razmerje, ki pove, kako pogosto uporabniki, ki vidijo oglas, tega na koncu tudi kliknejo. 224 Povpreˇ cje Min 25% 50% Max Facebook 23,01 0 6 15 341 Twitter 10,91 0 0 1 1223 Tabela 1: Statistiˇ cni podatki klikov. Slika 1: Prikaz nekaj ˇ casovnih vrst, ki prikazujejo število klikov na oglase v družabnem omrežju Facebook. 2 Metode Podatki, ki smo jih uporabili v tem delu, obsegajo tipiˇ cne najpomembejše statistike oglaševalskih akcij na družab- nem omrežju Facebook (clicks, actions, amount, impres- sions, link clicks, conversions, page likes, engagements, social clicks, social impressions, video views) in Twitter (clicks, impressions, conversions, engagements, retwe- ets, replies, likes, app clicks, url clicks, follows in 9 atri- butov povezanih z ogledi videov). Podatki ne zajemajo informacij o samem uporabniku ali oglasu in so agregi- rani na urni nivo, brez vmesnih manjkajoˇ cih ur. Facebook podatki obsegajo 60 ˇ casovnih vrst klikov razliˇ cnih dolžin – med 63 in 305 zaporednih ˇ casovnih toˇ ck, medtem ko Twitter podatki obsegajo 36 ˇ casovnih vrst klikov, tipiˇ cno precej daljših, kot pri Facebook podatkih - med 281 in 1127 zaporednih ˇ casovnih toˇ ck. Skupno imamo torej na voljo 96 ˇ casovnih vrst razliˇ cnih dolžin. Statistiˇ cne po- datke klikov obeh družabnih omrežij prikazuje tabela 1. Primer nekaj ˇ casovnih vrst, ki prikazujejo število klikov na oglase iste oglasne skupine je razviden iz slike 1. Za napovedovanje ˇ casovnih vrst uporabljamo programski jezik Python in knjižnice NumPy, pandas, PyFlux, TensorFlow in Keras. V nadaljevanju so pred- stavljeni algoritmi oz. metode, ki smo jih uporabili za gradnjo napovednih modelov. 2.1 ARIMA Model ARIMA je splošen model za napovedovanje in eden izmed najpogosteje uporabljenih metod za analizo ˇ casovnih vrst. Obstaja veliko razliˇ cnih ARIMA modelov, osnovni pa je poznan kot ARIMA(p, d, q) in je sesta- vljen iz avtoregresijskega dela reda p (AR), diferencira- nja stopnje d (I) in modela drseˇ cih sredin reda q (MA). Vsi ARIMA modeli temeljijo na univariatnih napovedih, uporabljajo torej podatke le ene ˇ casovne vrste in ne vklju- ˇ cujejo podatkov soležnih ˇ casovnih vrst, ki pogosto lahko vsebujejo pomembne informacije za bolj natanˇ cne napo- vedi. Uporabili smo model ARIMA iz knjižnice PyFlux, ki s funkcijo predict(h) omogoˇ ca preprosto napovedova- nje h toˇ ck v prihodnost [8]. 2.2 V AR Model vektorske avtoregresije (angl. vector autoregres- sion, VAR) je eden izmed bolj uspešnih, fleksibilnih in enostavnih modelov za uporabo pri analizi multivariatnih ˇ casovnih vrst [9]. Je razširitev univariatnega avtoregre- sivnega modela v dinamiˇ cno multivariatno ˇ casovno vr- sto. Model V AR se je kot posebej uporaben izkazal za opisovanje dinamiˇ cnega obnašanja pri ekonomskih in fi- nanˇ cnih ˇ casovnih vrstah [10]. Uporabili smo model V AR iz knjižnice StatsModels. 2.3 XGBoost XGBoost (angl. eXtreme Gradient Boosting) je metoda, ki omogoˇ ca vzporedno gradnjo veˇ cjega števila odloˇ citve- nih dreves na eni sami napravi, kar ji omogoˇ ca tudi do veˇ c kot 10-krat višjo ˇ casovno uˇ cinkovitost od obstojeˇ cih implementacij Gradient Boosting metode [11]. Z algo- ritmom XGBoost smo ugotavljali pomembnost zunanjih znaˇ cilk. Po priˇ cakovanjih sta poleg klikov v prejšnjih ˇ ca- sovnih toˇ ckah najpomembnejši znaˇ cilki “impressionns“ in “social_clicks“. 2.4 LSTM Za napovedovanje ˇ casovnih vrst se vse bolj uporabljajo povratne nevronske mreže (angl. Recurrent neural ne- tworks, RNN), predvsem njihova razliˇ cica nevronske mreže z dolgim kratkoroˇ cnim spominom (angl. Long Short-Term memory neural networks, LSTM). Uporabljajo se za multivariatne napovedi pri napovedovanju ˇ casovnih vrst [12]. LSTM nevronske mreže so dandanes sposobne preseˇ ci univariatne modele za napovedovanje ˇ casovnih vrst [13], zato jih želimo poleg klasiˇ cnih modelov pre- izkusiti tudi v naši raziskavi. 2.5 Vztrajnostni model Za ovrednotenje modelov in doloˇ citev uspešnosti napove- dnih vrednosti uporabljamo urni vztrajnostni model, kjer predpostavimo, da bo število klikov v naslednji uri enako številu klikov v prejšnji uri. 3 Izvedba poskusov Da bi dobili ˇ cim bolj primerljive rezultate med modeli, se pri vseh modelih uˇ cimo na isti uˇ cni množici in napo- vedujemo na isti testni množici za vse ˇ casovne vrste. Za napovedovanje uporabljamo sprehod naprej (angl. walk- forward validation), prikazan na sliki 2, kjer se pri na- povedovanju v vsakem koraku uˇ cna množica poveˇ cuje za eno toˇ cko, testna pa se za eno toˇ cko pomanjša, ne glede na to, koliko toˇ ck vnaprej napovedujemo. Korakov je to- liko, kolikor je dolga testna množica, zmanjšana za 24 ur. Konˇ camo takrat, ko je seštevek uˇ cne množice, koraka in števila želenih napovednih toˇ ck veˇ cji ali enak velikosti ˇ casovne vrste. 225 Slika 2: Sprehod naprej. Za ocenjevanje napovedne toˇ cnosti uporabljamo ko- ren povpreˇ cne kvadratne napake (angl. root mean squa- red error, RMSE). Napovedujemo od 1 do 24 toˇ ck vna- prej. V primeru napovedovanja ene toˇ cke vnaprej dobimo 24 vrednosti, ki jih nato uporabimo za izraˇ cun RMSE. V primeru napovedovanja 24 ur vnaprej dobimo samo 1 vrednost, ta pa predstavlja seštevek vseh 24 napovedanih vrednosti. Testna množica pri napovedovanju je dolga 24 toˇ ck (en dan), dolžina uˇ cne množice pa je odvisna od ve- likosti ˇ casovne vrste. Zmanjšana je le za velikost testne množice. Psevdokoda 1 prikazuje postopek obdelave po- datkov in napovedovanja prihodnjih vrednosti. Postopek je enak za vse modele, le pri LSTM smo zaradi stoha- stiˇ cne lastnosti nevronskih mrež model testirali deset krat za isto napoved in pri tem uporabili povpreˇ cne vrednosti. Psevdokoda 1 Obdelava podatkov in napovedovanje 1: formodel2fvsimodelig do 2: Priprava prejetih podatkov 3: for obdelava 2 fodstranitev trenda; normalizacija;standardizacija;logaritemska preslikavag do 4: Obdelava podatkov 5: Iskanje parametrov z mrežnim iskanjem 6: Shranjevanje najustreznejših parametrov 7: Razdelitev na uˇ cno in testno množico 8: for vsakT iz testne množice do 9: Uˇ cenje na uˇ cni množici 10: Napovedovanje testne množice 11: Inverz obdelave / vrnitev trenda, sezonskosti 12: Izraˇ cun RMSE 13: Beleženje rezultatov 14: end for 15: end for 16: end for 3.1 Optimizacija parametrov in obdelava podatkov Preden se ˇ casovno vrsto lahko uporabi na modelih za na- povedovanje, jo je potrebno ustrezno pripraviti in poiskati ustrezne parametre, ki jih model zahteva. Ker veˇ cina upo- rabljenih algoritmov predpostavlja, da je ˇ casovna vrsta stacionarna, ji s predhodno obdelavo odstranimo trend in sezonskost. Predhodno ˇ casovno vrsto obdelalamo še s Slika 3: Povpreˇ cni RMSE za vseh 60 skupin oglasov dru- žabnega omrežja Facebook, za napovedi od 1 do 24 na- povednih toˇ ck vnaprej. standardizacijo, normalizacijo in logaritemsko preslikavo ter primerjamo rezulate za razliˇ cne kombinacije parame- trov in obdelav. Pri multivariatnih modelih zunanje znaˇ cilke poišˇ cemo s pomoˇ cjo matrike intenzitete (angl. heat map), ki prika- zuje, kako moˇ cno so atributi med seboj korelirani. Pri ARIMA modelu najustreznejše parametre p, d in q poi- šˇ cemo z mrežnim iskanjem (angl. grid search). Ravno tako za iskanje zamika in kriterijske funkcije pri modelu V AR uporabimo mrežno iskanje. 4 Rezultati Ker smo poskuse izvajali na dveh podmnožicah ˇ casov- nih vrst, za vsako družabno omrežje posebej, rezultate predstavljamo v loˇ cenih podpoglavjih. Prav tako smo loˇ ceno izvajali poskuse z LSTM nevronskimi mrežami, zato so primerjave LSTM nevronskih mrež z ostalimi mo- deli predstavljene posebej. 4.1 Facebook Primerjava modelov XGBoost, ARIMA in V AR za na- povedi od 1 do 24 ˇ casovnih toˇ ck vnaprej je prikazana s sliko 3. Slika prikazuje izraˇ cunane povpreˇ cne RMSE, za vseh 60 skupin oglasov družabnega omrežja Facebook. Poskusi so pokazali dobro delovanje modela XGBoost, sledi mu model ARIMA. Rezultati nakazujejo, da se pri napovedovanju nekaj toˇ ck vnaprej multivariatni modeli XGBoost odliˇ cno obnesejo, vendar pa z oddaljenostjo do- godkov, ki so predmet napovedovanja, napovedna toˇ c- nost XGBoost modelov upada v primerjavi z univaria- tnimi modeli ARIMA. 4.2 Twitter ˇ Casovne vrste družabnega omrežja Twitter so daljše, po- slediˇ cno so daljše uˇ cne množice, kar je pri veˇ cini napove- dnih modelov prednost. Tudi poskusi na ˇ casovnih vrstah družabnega omrežja Twitter so pokazali najboljše delo- vanje modela XGBoost. Sledi mu model ARIMA. Tudi pri ˇ casovnih vrstah družabnega omrežja Twitter se izkaže, da pri napovedih 13 ˇ casovnih toˇ ck in veˇ c vnaprej modela ARIMA preseže uspešnost modela XGBoost. 4.3 Primerjava z LSTM nevronskimi mrežami LSTM nevronske mreže dosegajo najboljšo napovedno toˇ cnost, ne glede na velikost napovednega okna, njihova slabost pa je v ˇ casovni potratnosti. Za napoved, denimo 226 Slika 4: Povpreˇ cni RMSE za vseh 36 skupin oglasov dru- žabnega omrežja Twitter, za napovedi od 1 do 24 napove- dnih toˇ ck vnaprej. Slika 5: Primerjava vseh modelov za napovedi od 1 do 24 toˇ ck vnaprej za eno ˇ casovno vrsto. Slika 6: Povpreˇ cni RMSE za 3 skupine oglasov družab- nega omrežja Facebook, za napovedi od 1 do 24 napove- dnih toˇ ck vnaprej. ene toˇ cke vnaprej, je model povpreˇ cno potreboval 448 se- kund, medtem ko so ostali modeli napoved izvedli pov- preˇ cno v 3 sekundah. Primer rezultatov na oglasni sku- pini, kjer smo primerjali uspešnost LSTM mrež z ostalimi metodami, je prikazan na sliki 5, medtem ko slika 6 s pov- preˇ cnimi RMSE prikazuje primerjavo LSTM nevronskih mrež z ostalimi modeli za tri skupine oglasov. LSTM nevronske mreže so bile v povpreˇ cju boljše za 1,98% v primerjavi z XGBoost modelom. 5 Zakljuˇ cek Z gradnjo napovednih modelov smo primerjali veˇ c metod za napovedovanje klikov na oglase v družabnih omrež- jih. Osredotoˇ cili smo se na družabni omrežji Facebook in Twitter, za kateri smo imeli na voljo realne podatke. S kriterijsko funkcijo RMSE smo pokazali, da so napo- vedi v skladu s priˇ cakovanji. Sledijo si v priˇ cakovanem vrstnem redu: model LSTM za multivariatne napovedi dosega najboljšo napovedno toˇ cnost, sledijo mu regre- sijski model XGBoost, model ARIMA in model V AR v navedenem vrstnem redu. Zanimali so nas tudi rezu- lati napovedi veˇ c ˇ casovnih toˇ ck vnaprej. Opažamo, da uporabljene metode, še zlasti LSTM nevronske mreže in XGBoost v uporabljeni domeni omogoˇ cajo smiselne na- povedi do 24 ur vnaprej. Slabost LSTM nevronskih mrež je v njihovi ˇ casovni potratnosti. Po izraˇ cunih je ˇ cas izva- janja LSTM nevronskih mrež 150 krat poˇ casnejši v pri- merjavi z ostalimi metodami. Literatura [1] Christina Newberry. 130 Social Media Stati- stics that Matter to Marketers in 2019. https: //blog:hootsuite:com/social-media- statistics-for-social-media-managers/, Mar 2019. [2] Tanja Fon. V sloveniji investicije v digitalno oglaše- vanje v letošnjem letu višje za 25 odstotkov. https: //iprom:si/v-sloveniji-investicije- v-digitalno-oglasevanje-v-letosnjem- letu-visje-za-25-odstotkov/, Mar 2019. [3] P Barwise. Harvard Business Essentials: Marketers Tool- kit, 2006. [4] Xinran He, Junfeng Pan, Ou Jin, Tianbing Xu, Bo Liu, Tao Xu, Yanxin Shi, Antoine Atallah, Ralf Herbrich, Stu- art Bowers, et al. Practical lessons from predicting clicks on ads at Facebook. In Proceedings of the Eighth Interna- tional Workshop on Data Mining for Online Advertising, pages 1–9. ACM, 2014. [5] Cheng Li, Yue Lu, Qiaozhu Mei, Dong Wang, and San- deep Pandey. Click-through prediction for advertising in twitter timeline. In Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pages 1959–1968. ACM, 2015. [6] Shuai Yuan, Jun Wang, and Xiaoxue Zhao. Real-time bid- ding for online advertising: measurement and analysis. In Proceedings of the Seventh International Workshop on Data Mining for Online Advertising, page 3. ACM, 2013. [7] Jason Brownlee. 4 Strategies for Multi-Step Time Series Forecasting - Machine Learning Masteryn. https://machinelearningmastery:com/ multi-step-time-series-forecasting/, 2017. [8] G Box and G Jenkins. Time Series Analysis-Forecasting and Control. San Francisco: Holden Day. 553 p. 1970. [9] Helmut Lütkepohl, Markus Krätzig, and Peter CB Phil- lips. Applied time series econometrics. Cambridge uni- versity press, 2004. [10] Eric Zivot and Jiahui Wang. Vector autoregressive models for multivariate time series. Modeling Financial Time Se- ries with S-PLUS R , pages 385–429, 2006. [11] Tianqi Chen, Tong He, Michael Benesty, Vadim Khotilo- vich, and Yuan Tang. Xgboost: extreme gradient boosting. R package version 0.4-2, pages 1–4, 2015. [12] Jason Brownlee. Deep Learning for Time Series Foreca- sting. 2018. [13] Kasun Bandara, Christoph Bergmeir, and Slawek Smyl. Forecasting Across Time Series Databases using Long Short-Term Memory Networks on Groups of Similar Se- ries. arXiv preprint arXiv:1710.03222, 2017.