Rozwiązany problem: jak zrobić lepszy system rankujący reklamy.

Uwaga: starają się estymować np. CTR, ale nie ma nacisku na wycenę.

System rankujący reklamę w Meta jest wielu-etapowy (multi-stage). Tzn. że jest kilka modeli ułożonych w kaskadę od najprostszego (najszybszego) do najbardziej skomplikowanego (najwolniejszego). Każdy z nich filtruje zbiór reklam tak, że do kolejnego etapu przechodzi tylko TOP-k reklam z obecnego etapu.

Tradycyjnie w takim modelu multi-stage każdy etap uczony jest tylko na danych ground-truth, tzn. na reklamach faktycznie pokazanych użytkownikowi, dla których mamy etykiety mówiąc “czy kliknął”, “czy skonwertował”, itd. Skutek tego jest taki, że wcześniejsze etapy są uczone na znacznie innych danych niż te, które musi wyceniać na produkcji.

Bias / calibration

Jeśli model estymujący CTR jest unbiased (tzn. jego błąd predykcji )) to wybierając najlepszą reklamę spośród kandydatów, predykcja dla tej najlepszej reklamy będzie zbiasowana!

Załóżmy, że prawdziwy CPM reklamy pochodzi z rozkładu normalnego . Niech to będzie zmienna losowa reprezentująca predykcję modelu. Model jest unbiased. Wtedy .

Co jednak dzieje się na produkcji? Wybieramy top- reklam (u nas w szczególności ), które pokazujemy użytkownikowi. Okazuje się, że reklama na pozycji (wśród posortowanych reklam po scorze z modelu, ) ma predykcję zbiasowaną, ponieważ: gdzie , to CDF rozkładu normalnego.

Intuicyjnie: mimo, że model jest średnio skalibrowany na całej populacji, to dla części kalibracji niedoszacowuje, a dla części przeszacowuje. Więc, kiedy wybieramy top- reklam na podstawie predykcji, to naturalnie częściej wybieramy te, na których model przeszacował.

Rozwiązanie

Semi-Supervised Knowledge Distillation

W takiej wieloetapowej (multi-stage) predykcji model z kolejnego kroku () jest nauczycielem dla modelu z kroku poprzedniego (). Dlaczego? Bo jest dobrze skalibrowany na swoim datasecie, podczas gdy model nie. Więc jak to w Distillation, model trenujemy na labelach nie-binarnych pochodzących z modelu .

Feature Selection

Oprócz distillation (jak wyżej) to modele na wcześniejszym etapie mają mniej cech. W związku z tym mają również proces oparty na Perturbation Feature Importance, który pozwala im wybrać cechy do prostszego modelu.

Foundation Models

Dla modelu z ostatniego etapu robią Distillation z dużego foundation Model. Co więcej, student-model, mający przewidywać CTR, uczony jest multi-task w taki sposób, że dodajemy mu 1) dependent task (np. CVR, reachability; dependent task bierze predykowany CTR jako wejście do kolejnej warstwy) oraz 2) auxiliary task (np. czy kliknie w inną reklamę na tej stronie, ile czasu spędzi na stronie, itp.).