1. 程式人生 > 實用技巧 >Estimating Conversion Rate in Display Advertising from Past Performance Data 論文閱讀筆記

Estimating Conversion Rate in Display Advertising from Past Performance Data 論文閱讀筆記

摘要

在定向展示廣告中,目標是確定向最有可能採取購買產品或訂閱時事通訊等行動的線上使用者展示橫幅廣告的最佳機會。找到最好的廣告投放,即向用戶展示廣告的機會,需要估計在瀏覽器上看到廣告的使用者將採取行動的概率,即使用者將轉換的概率。然而,轉換概率估計是一項具有挑戰性的任務,因為在不同的資料維中存在極端的資料稀疏性,並且很少發生轉換事件。在本文中,我們提出了我們的方法來估計轉化率,它依賴於過去的使用者,釋出者和廣告客戶資料層次的效能觀察。更具體地說,我們在不同的選擇層次上各自建立轉換事件模型的二項分佈並且獨立的估計分佈引數。然後,我們將演示如何使用邏輯迴歸結合這些單獨的估計器來準確地識別轉換事件。在我們的介紹中,我們還討論了主要的實際考慮,如資料不平衡、缺失資料和輸出概率校準,這使得估計問題更加困難,但仍需要解決的實際實現的方法。我們提供了真實的廣告活動的結果來證明我們提出的方法的有效性。

INTRODUCTION

在線上展示廣告世界中,廣告主試圖通過將他們的圖形廣告嵌入釋出者網頁的內容,例如新聞入口網站的頁面,來向許多使用者營銷他們的產品。廣告商的主要目標是在合適的環境下接觸到最容易接受廣告的網路受眾,他們將參與他們展示的廣告,並最終根據活動的型別採取所需的行動,例如,品牌廣告或直接產品營銷。實現這一目標的複雜性如此之高,以至於廣告商需要一種被稱為需求方平臺(DSP)的專門技術解決方案。

在多個直接購買市場或廣告交換平臺上,通過實時拍賣或競價,可以獲得廣告印象,dsp幫助為許多不同的廣告主同時管理此類展示廣告活動。在直接購買市場中,印象價格是根據釋出者和廣告主之間直接進行的商務談判預先確定的。另一方面,在實時廣告交換中,DSPs必須為每個展現提交出價(通過廣告呼叫提交),展現在公開拍賣中賣給出價最高的人。DSPs是將所有關於使用者、頁面、廣告和活動約束的資訊彙集在一起為廣告主做出最佳決策的平臺(見2.1的概述)。

廣告客戶為每個廣告呼叫尋求最優出價,以使他們的活動表現最大化。廣告印象的最佳出價取決於印象對特定廣告商的價值。這個值作為活動效能引數提供給dsp,形式為每次點選成本(CPC)或每次行動成本(CPA)目標。如果CPC或CPA的目標設定,那麼可以確定最優投標價格的預期cost-per-impression,等於這個印象的點選通過率(CTR)乘以CPC的目標,或轉化率(表格)乘以CPA目標[8]。

在這個場景中,效能直接取決於CTR或CVR的估計情況,而效能優化可以看作是準確估計CTR或CVR的問題。如果CTR或CVR被高估,投標價格將總是高於他們應該有的價格,廣告商將浪費競選預算在無用的印象;另一方面,如果這些數量被低估了,廣告客戶將會錯過高價值的印象,這些印象可能會導致行動,而宣傳活動將無法達到預期效果。

CTR和CVR與使用者在特定環境下與廣告互動的意圖直接相關,它們基本上很難直接建模和預測。實際上,CVR甚至比CTR更難估計,因為轉換事件比點選事件要少得多。另外,檢視轉換在日誌記錄過程中有更長的延遲(有時長達一週),這使得離線建模更加困難。最後,廣告服務系統需要實時執行,需要在幾毫秒內完成CVR或CTR估計、最優競價價格計算和提交到交易所的競價。

本文提出了一種簡單而有效的估計廣告印象CVR的方法,並應用於DSP中。我們的轉化率估計方法在使用者、釋出者和廣告商資料層次的跨產品的不同選擇層次上建立了轉換事件的模型,並分別用二項分佈估計了分佈引數。使用邏輯迴歸將這些單獨的估計器組合起來,以獲得一個最終的估計,該估計可以更準確地預測每種印象的轉換結果。

本文的其餘部分如下。在第二章中,我們回顧了廣告呼叫流程,闡述了我們的問題,並討論了文獻中的相關工作。在3中,我們使用跨資料層次的過去效能觀察來描述CVR估計器,並描述使用邏輯迴歸作為結合這些個別率估計以提高預測效能的一種手段。在DSP的CVR建模過程中遇到的各種實際問題和提出的解決方案在4中進行了討論。徹底的實驗結果在5和6列出一些結論和可能的未來工作。

BACKGROUND AND RELATED WORK

在本節中,我們首先回顧廣告呼叫流。然後,我們提出了一個給定廣告印象的事件轉化率估算問題。最後,我們解釋了使用者、釋出者和廣告客戶的資料層次結構,並討論了之前在文獻中有關估計罕見事件的一些工作。

Overview of Ad Call Flow

為了正確地理解所提出的方法,讓我們使用圖1中簡化的ad呼叫流。考慮這個圖形周圍的矩形邊框,右邊是供應方或發行方。供應方提供可以放置廣告的頁面。左邊是需求或廣告主的一面。需求方提供廣告和約束,如目標和預算約束。

在這裡插入圖片描述

給定一個具有個人資料的使用者、具有某些上下文的頁面以及來自不同廣告商的活動(其中活動包括一些約束和廣告),目標(有時稱為計算式廣告的基本問題)是在約束條件下為使用者和頁面找到最好的廣告。接下來將藉助圖1中編號的步驟來解釋這一過程的機制。

當一個使用者(帶有id標籤)在一個網頁(帶有URL)上進行瀏覽時,呼叫過程開始了。呼叫首先到達與釋出者整合的廣告交換臺。廣告交換臺將和傳送給需求方平臺(DSP),以請求一個廣告和一個出價。請求通常包含其他資訊,如用於目標定位的地理位置。合作dsp可能響應或不響應該請求;那些響應的(投標dsp)需要使用和來分別收集關於使用者和頁面的更多資訊。使用者和頁面的資訊通常是通過資料管理平臺提供的。競價的dsp也通過他們以前建立的廣告搜尋,找到一組候選廣告,可以針對使用者和頁面。本文的貢獻是在決策引擎的基礎上,從候選廣告中選擇最優的廣告並計算相應的出價。

出價的dsp返回他們的提議廣告和出價對到廣告交換臺。一旦廣告交換臺收集了所有的出價,它將執行一個拍賣(通常是第二次價格拍賣)並確定中標的出價和相應的廣告。然後,它將獲勝的廣告和創意的位置傳回瀏覽器。然後,瀏覽器收集創造性的內容,並最終將頁面返回給使用者。

注意,整個流程需要在十分之一秒內完成,這樣使用者在瀏覽器上開啟頁面時就可以看到帶有廣告的頁面。此外,頂級的dsp每秒可以接到多達50萬次這樣的廣告呼叫,因為數億使用者在任何時候都在瀏覽器上開啟頁面。這種延遲和吞吐量限制給每個競價DSP和它們的決策引擎帶來了極大的時間限制。該方法在時間約束條件下執行良好。

Problem Setup and Formulation

假設 U, P, A 分別代表使用者、頁面、廣告。目標是在所有n個廣告中找到具有最高轉換概率的廣告。數學上,可以寫成
在這裡插入圖片描述
注意,在單個使用者級別上,事件只有兩種可能的結果:轉換或不轉換。然後我們可以看到一個轉換事件可以被建模為一個伯努利隨機變數。

在這裡插入圖片描述
等式1的寫法變為:
在這裡插入圖片描述
對轉換事件結果建模的一種方法是使用一組顯式的特性來表示使用者、釋出者和廣告,並構建一個分類模型。這種方法的例子可以在贊助搜尋廣告中找到[10,15]。由於低層次的資料特徵與使用者對顯示廣告採取行動的直接意圖關聯不大,因此基於這些特徵的模型在我們的環境中表現不佳。另一個想法是計算這個廣告在這個網站上向“相似”使用者顯示的次數,然後觀察這些印象中有多少導致了轉換。然後,該使用者的轉化率可以簡單地估計為所有相似使用者之間的總轉化率除以總印象數。這種使用者分組可以通過基於某種相似性度量的顯式聚類實現,也可以通過使用資料層次結構的隱式實現,我們將在下一節中解釋。

Data Hierarchies

在顯示廣告上下文中,使用者、釋出者和廣告客戶相關的資料可以視為遵循某種層次結構。例如,DSP中的每個廣告都可以被認為屬於一個廣告活動,而這個廣告活動又屬於一個廣告主(例如,廣告主:Acme Cars -》廣告活動: 2011年年終銷售 -> 廣告:難以置信的年終銷售活動!)類似地,將顯示廣告的網站位於由出版商擁有的頂級域(TLD)之下,而出版商本身可能屬於基於其主要內容的某個類別(例如,出版商型別:News -> publisher: Acme City Times - > Page: Auto News)。圖2.2展示了使用者、釋出者和廣告客戶資料的層次結構示例分類。請注意,此圖不代表Turn Inc.的資料分類,它主要是為了說明目的和清晰的表示。

在這裡插入圖片描述
資料層次結構使我們能夠定義顯式或隱式使用者叢集。顯性使用者聚類,正如我們所猜測的那樣,是基於一組特徵(如人口統計資訊、地理特徵、收入水平、經常訪問的網站型別、活動水平等)來表示每個使用者,並基於一些相似度量(如歐氏距離)來聚類。另一方面,隱式叢集是基於使用資料層次結構而不是使用者特性的。例如,訪問某個類別網站(如體育)的使用者組可以視為一個隱式叢集。我們可以用笛卡爾乘積{Users×Publisher Type}來表示這個分組。作為另一個例子,我們還可以考慮向廣告活動(比如Acme Cars)顯示廣告的所有使用者在特定站點(例如,Acme Times Autos)上的“年度結束銷售”,可以用笛卡爾產品表示{使用者出版商型別廣告}。如果我們假設使用者、釋出者和廣告主資料在它們各自的資料層次結構中有’ Lu、’ Lp和’ La ‘級別,那麼就有’Lu×’ Lp×La’這樣一個可能的隱式使用者叢集。那麼,給定adrequest ={user: ui, page: pj},我們可以從資料層次結構中確定合適的顯式和隱式使用者叢集,並使用每個級別的過去計數資料(即印象數量和轉換數量)來獲得不同的估計

CONVERSION RATE ESTIMATION

在本節中,我們將詳細介紹我們的換算率(CVR)估算方法。我們首先重新訪問資料層次結構,並解釋過去來自層次結構中不同層次的觀察如何產生一個給定廣告呼叫所需CVR的弱估計量。然後,我們討論如何使用邏輯迴歸將這些弱估計量結合起來得到更準確的估計量。

Past Performance at Different Hierarchical Levels

回想一下等式(1),給定一個由{user: ui, page: pj}引數化的ad請求,我們希望找到CVR值最高的ad ak
∗ijk。正如我們在上一節中所解釋的那樣,如果我們可以確定一組使用者,他們的使用者
CVR與使用者ui相似,我們可以做如下近似:
在這裡插入圖片描述
其中,Cui表示ui所屬的使用者叢集。
請注意,這種近似依賴於一個明確的使用者聚類,並觀察在Cui中訪問pj網站時被顯示的所有使用者。那麼,pijk最簡單的可能估計為:
在這裡插入圖片描述
這個方法的精確性有兩個前提:

  1. 使用者叢集找的精確。
  2. 使用者叢集的數目較大,不然不具有統計意義。

這個資料稀疏問題可以通過增加使用者、釋出者和廣告商的資料層次來緩解,因為在更高的層次上肯定會比在更低的層次上有更多的觀察結果。然後我們可以將式(6)推廣為:
在這裡插入圖片描述
Cpj和Cak分別定義了網頁和廣告客戶的分組。這些分組是由各自的資料層次所指示的,如圖2.2所示。