Prezentacja z Data Science Summit 2017 o wykorzystaniu metod uczenia maszynowego w reklamie RTB w firmie Adform. Prezentacja zawiera opis RTB oraz przykład modelowania optymalizacji CPC. Dodatkowo przedstawione są metody wykorzystywane dla zapewnienia odpowiednich restrykcji czasowych. Na koniec - trendy, linki, referencje.
5. @btwardow
Real-Time Bidding
Yuan, Y., Wang, F., Li, J., & Qin, R. (2014). A survey on real time bidding advertising. Proceedings of 2014 IEEE
International Conference on Service Operations and Logistics, and Informatics, SOLI 2014, 418–423. http://doi.org/
10.1109/SOLI.2014.6960761
6. @btwardow
Cel
• Reklama bardziej relewantna i przynosząca więcej
zysków - bierzemy udział w aukcji tylko wtedy kiedy
wiemy, że użytkownik jest zainteresowany ofertą
• Lepsze wykorzystanie środków reklamodawców -
ten sam budżet może przynieść więcej konwersji
Aby uzyskać powyższe cele musimy wykorzystać
algorytmy z predykcją oraz optymalizacją celu
reklamodawcy
7. @btwardow
CPM, CPC, CPL,… - co to
takiego?
• CPM - Cost Per Mile (1000) wyświetleń
• CPC - Cost Per Click
• CPL - Cost Per Lead (Acquisition, Conversion)
• …
Wszystkie aukcje wysłane do AdX są w
cenach CPM!
9. @btwardow
Jakie dane są
wykorzystywane
• Dane Historyczne
• Bid Requests - informacje wysłane przez SSP/AdX do DSP
• Wyświetlenia reklamy
• Kliki
• Wyświetlenia stron przez użytkownika (Tracking Points)
• inne (zdarzenia js, crawling offline,…)
• Utrzymywane online
• Cookie Profiles - profile użytkownika
10. @btwardow
Informacje w Bid Request
• CookieId
• URL
• IP (a więc też. Country, City z bazy geolokalizacyjnej)
• IAB Category
• UA, Mobile App Id
• Slot Size (np. 180x150)
• Slot Position (np. above the fold)
• ….
11. @btwardow
Co jest Big Data?
• bid request
• wyświetlenia
• kliki
• odwiedziny stron
• inne zdarzenia użytkownika (“widzialność”, video,
…)
12. @btwardow
Profile Użytkownika
Otrzymane na podstawie działań użytkowników
Przykładowe dane:
odwiedzone domeny/TP
kraj, urządzenie, rozmiar ekranu
w jakie reklamy ostatnio klikał
kategorie IAB
dane z DMP + segmentacje
oraz wiele innych…
Główne źródło personalizacji przy aukcji online
Z względów prawnych mogą następować pewne ograniczenia w wykorzystywaniu danych
14. @btwardow
Model predykcji kliku
• p(Click|Imp)
• Wykorzystanie regresji logistycznej do predykcji
• łatwa w zrozumieniu i ew. szukaniu błędów
• szybka metoda (mamy tylko parę ms na obliczenia)
15. @btwardow
• >1M cech dla każdej obserwacji
• większość to cechy typu “one-hot encoded”
• modelowanie interakcji, np: client x domena
• bardzo szybka predykcja online: cechy binarne + odfiltrowane do
najistotniejszych (~50K) + mało aktywnych dla konkretnej aukcji
• regularyzacja L1 do filtrowania cech:
• pozwala na utrzymanie odpowiedniego poziomu ewaluacji czasu
modelu
Dlaczego regularyzacja L1?
16. @btwardow
Sampling & The hashing
trick
• Sampling
• podejście brute-force nie przejdzie
• odpowiednie próbkowanie jest rozwiązaniem ( + korekta wyrazu wolnego)
• zbiory przykładów neg/pos silnie niezbalansowane
• “The hashing trick”
• wszystkie cechy kodujemy do 2^N bitowej przestrzeni (w większości N
<32 i tyle maksymalnie będziemy mieć wag)
• szybkie obliczanie on-line (liczba cech x hash() x mnożenie wag)
• Inne warte uwagi: decision tree encoding [5], embedding [1, 2]
17. @btwardow
Follow the regularized
leader (FTRL) [6]
• online machine learning
• przykładowy kod dla wersji FTRL-Proximal:
• python: https://www.kaggle.com/jiweiliu/ftrl-
starter-code
• go (concurrent, l1&l2): https://gist.github.com/
ceshine/f7f93046c58fe6ee840b
18. @btwardow
Przykład obliczenia
prawdopodobieństwa kliku
Otrzymujemy zapytanie:
Cookie 3000657545365 is at www.gazeta.pl
Jakie jest prawdopodobieństwo kliku reklamy iPhone 7?
Wpływ cechy (“+” - pozytywny, “-“ - negatywny)
URL: www.gazeta.pl (+)
Position 1 – visible without scrolling (+)
Banner size 930x180 (+)
Screen size 1920x1080 (+)
Cookie has visited these domains:
apple.com(+)
macrumors.com(+)
plotek.pl (+)
t-mobile.com(+)
samsung.com(-)
Bierzemy pod uwagę wszystkie cechy dla których mamy
niezerowe wagi w modeli i obliczamy prawdopodobieństwo.
19. @btwardow
Cena aukcji - CPM
• Reklamodawca podaję cenę docelową (lub maksymalną) CPC dla
kampanii
• Model predykcji kliku umożliwia przejście z ceny CPC do CPM dla
pojedynczej aukcji
• Sprawdzenie czy model jest poprawnie skalibrowany:
• samo patrzenie na AUC/RIG nie wystarczy
bidpriceCP M = p(click) ⇤ targetCP C
CPCeffective =
P
win price
total clicks
⇠
P
bid price
P
p(click)
= targetCP C
20. @btwardow
Inne przykłady optymalizacji
• Inne cele: CPL, NBC, CPE,…
• Np. dla CPL w wersji gdzie konwersja następuje po
kliku budujemy 2 modele: dla p(click|impr) oraz
p(lead|click)
21. @btwardow
ML w innych aspektach
• DSP: Forecasting, Bid Landscape, Bidding
Strategy Optimizations, traffic filtering, fraud &
anomaly detection
• DMP: look-a-like algorithms
• SSP side <> DSP
22. @btwardow
ML w RTB
trendy i co warto obserwować
• wiele wspólnego z systemami rekomendacji => modele
bazujące na faktoryzacji - FM/FFM [4] (to już ma parę lat)
• deep learning: embedding ( [1] Enno @Adform, [2] Meta-
Prod2Vec), mariaż - wide& deep [3], user’s sessions
modeling [7]
• Watch: https://github.com/wnzhang/rtb-papers
• Inspiracje z konkursów typu Kaggle (niestety w
większości nie do zaaplikowania, np. bazujące na
odnalezionym przecieku)
24. @btwardow
Reference
[1] Shioji, E. and Arai, M., 2017. Neural Feature Embedding for User Response Prediction in Real-Time Bidding
(RTB). arXiv preprint arXiv:1702.00855.
[2] Conneau, A., Smirnova, E., & Vasile, F. (2016). Meta-Prod2Vec - Product Embeddings Using Side-Information
for Recommendation. RecSys.
[3] Cheng, H.T., Koc, L., Harmsen, J., Shaked, T., Chandra, T., Aradhye, H., Anderson, G., Corrado, G., Chai,
W., Ispir, M. and Anil, R., 2016, September. Wide & deep learning for recommender systems. In Proceedings of
the 1st Workshop on Deep Learning for Recommender Systems (pp. 7-10). ACM.
[4] Juan, Y., & Lin, C. (2016). Field-aware Factorization Machines for CTR Prediction. RecSys. http://doi.org/
10.1145/2959100.2959134
[5] He, X., Bowers, S., Candela, J. Q., Pan, J., Jin, O., Xu, T., … Herbrich, R. (2014). Practical Lessons from
Predicting Clicks on Ads at Facebook. Proceedings of 20th ACM SIGKDD Conference on Knowledge Discovery
and Data Mining - ADKDD’14, 1–9. http://doi.org/10.1145/2648584.2648589
[6] McMahan, H. B., Holt, G., Sculley, D., Young, M., Ebner, D., Grady, J., … Kubica, J. (2013). Ad click
prediction: a view from the trenches. Proceedings of the 19th ACM SIGKDD International Conference on
Knowledge Discovery and Data Mining, 1222–1230. http://doi.org/10.1145/2487575.2488200
[7] Bartłomiej Twardowski. 2016. Modelling Contextual Information in Session-Aware Recommender Systems
with Neural Networks.10th ACM Conference on Recommender Systems (RecSys '16). ACM, DOI: https://doi.org/
10.1145/2959100.2959162