999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于集成模型的移動應用廣告轉化率預測①

2019-11-15 07:08:08何鴻業
計算機系統應用 2019年11期
關鍵詞:特征用戶模型

彭 贊,鄭 瑾,何鴻業

(中南大學 信息科學與工程學院,長沙 410083)

廣告的歷史源遠流長,生活中存在許多不同形式的廣告.近十年來,互聯網產業的高速發展為廣告業提供了嶄新的發展平臺,從根本上改變了廣告業的布局,從而形成了擁有巨大市場價值的互聯網廣告業.美國互聯廣告局指出,在2016年,移動互聯網廣告收入首次在互聯網廣告收入中占比超過50%,達到了50.52%,移動互聯網廣告5年內的復合年均增長率CAGR(Compound Annual Growth Rate)高達87%,與之對比的非移動互聯廣告的CAGR 僅為6%[1].由此可以得到,移動互聯網廣告已經成為了一個擁有巨大價值的產業,如何使廣告主、廣告商以及用戶獲取他們最大的收益是一件十分重要的事.

移動App 廣告預測中一個重要參數為轉化率CVR (ConVersion Rate),它是一個衡量每次行動成本CPA (Cost Per Action/Pay perAction)廣告效果的指標,簡言之就是用戶點擊廣告到成為一個有效激活或者注冊甚至付費用戶的轉化率.目前,中國互聯網尤其是移動互聯網的迅猛發展直接帶動中國互聯網廣告行業的迅速崛起.CVR (Conversion Rate)作為甲方的一個考核標準,一般是限于推廣廣告主和推廣渠道之間的專用名詞,是考核乙方渠道點擊用戶是否真實、是否優質的重要標準,相關的廣告公司越來越重視廣告轉化率或者點擊率的預測[2-4].歸根結底CVR 預測也就是從海量的歷史數據中選取有效的特征數據,特征組合以及機器學習模型來預測CVR,從而提高其準確率.

在此基礎上,本文主要做了以下兩點工作:第一,在特征工程階段,我們使用了統計學和特征工程的方法,獲得了大量有效的特征數據,為我們的研究提供了可靠的基礎;第二,在邏輯回歸(Logistic Regression,LR)、XGBoost、LightGBM 這3 種模型的基礎上,提出了預測App 廣告轉化率的集成模型——SXL 和BLLX.在App 廣告的賽題數據上,驗證SXL 和BLLX模型的有效性,提高App 廣告轉化率的預測能力.

1 相關工作

1.1 機器學習模型

機器學習是一種計算機程序,可以在給定任務T 和性能評估P 下學習一種確定類別的經驗E,如果它在任務T 中的性能可以用P 來衡量,那么它將能夠有效地學習經驗E[5].一般,研究人員把廣告轉化率預測當成一個二分類問題進行研究,機器學習模型中的線性模型可以用來處理該類問題.線性模型劇本簡單易實現的特點,可以處理超大規模的數據[6].文獻[7]首次把廣告點擊率預測問題當作一個回歸問題來處理,并使用傳統機器學習模型邏輯回歸模型(LR),用來預測廣告點擊率.文獻[8]使用L-BFGS(該方法是擬牛頓法的優化算法) 方法來訓練LR 模型,在模型中選擇L1 正則化,避免模型的過擬合,以此來提高預測的準確率.文獻[9]從Web 搜索引擎日志中挖掘點擊數據,利用支持向量機(SVM)實現對廣告點擊率的預測.文獻[10]使用GBDT 模型來處理Facebook 廣告點擊率的非線性特征數據,將Facebook 中的實際數據向量經過獨熱編碼,來進行訓練.在本文研究中,我們結合機器學習的方法,以LR 模型作為對比模型,使用GBDT 的改進模型XGBoost 和LightGBM 進行訓練.

1.2 特征工程

特征工程在機器學習中占有相當重要的地位,特征工程是利用數據領域的相關知識來創建特征并且能夠使機器學習算法達到最佳性能,包括三個子問題:特征選擇、特征提取和特征構造[11].特征選擇的目的是從特征集合中挑選出來一組最具有統計意義的特征子集,達到降低維度的效果,而特征提取是將原始數據轉換成一組具有明顯物理意義或者統計意義的特征.特征構造是從原始數據中人工構建新的特征,它需要人們花大量的時間去研究實際數據,思考數據之間的潛在聯系.特征構造也能夠通過FM (因子分解機)和深度學習(提取訓練模型中隱藏層作為特征)等機器學習方法構造特征.文獻[7]將具體廣告、環境抽象成特征,用特征來達到泛化的目的,從而對廣告點擊率進行預測.文獻[12]假設歷史數據中不同種類的數據之間存在隱含的可能性,使用關鍵詞聚類的方法,將同一層次的數據聚類到一起,形成一個聚類簇,并用該聚類簇預測廣告點擊率.本文研究過程中,使用特征工程處理實際數據,發掘數據中的潛在聯系.

1.3 集成技術

集成模型是一個非常強大的技術,可以提高各種機器學習中任務的準確性.其思想就是充分利用不同分類算法各種的優勢,取長補短,組合形成一個強大的集成框架.文獻[13]中介紹了兩種不同的集成思想來集成模型:1)平均法(Blending):它使用訓練數據訓練多個不同的單一模型,然后將模型的預測結果進行加權平均,借此來提高集成模型的準確率;2) 學習法(Stacking):它一般是將原始數據劃成幾等分,分別訓練第一層的模型,將得到的所有的預測結果組合上原始數據,當作是第二層模型的輸入,然后進行最終的預測.

集成模型存在許多問題,在集成模型過程中應該考慮集成哪些基礎模型、使用什么集成方法和哪種集成模型能夠取得更好的預測能力.文獻[14]融合了GBDT和LR 模型,利用GBDT 模型提取數據中的特征,然后輸入到LR 模型中進行訓練,形成了GBDT+LR 模型,在Bing搜索上取得了不錯的結果.文獻[15]融合了LightGBM、XGBoost、FFM、VW 4 種算法,形成RF+LXFV 集成模型.在本文的實驗中,將這2 種融合模型作為參照進行了對比分析.

在本文中,我們使用了3 種單一模型:LR、XGBoost和LightGBM.在集成思想上,首先我們使用Blending方法,按照一定的權重集成LR、XGBoost、LightGBM,形成BLLX 模型.然后使用Stacking 思想,分別集成XGBoost 和LightGBM,形成SXL 模型.

2 集成模型

本節分析研究所使用的集成模型以及基礎模型,第一部分介紹基礎模型,第二部分介紹集成模型,第三部分分析模型的優缺點.

2.1 基礎模型

2.1.1 LR

LR 模型是優秀的二分類預測模型之一,常常被眾多研究學者使用在點擊率的預測問題中.對于二分類任務來說,它的輸出一般只有兩種情況:0 或者1.LR模型將線性函數的結果通過Sigmoid 函數計算,輸出最終的預測結果.其基本模型如式(1)所示.其中Y為預測結果,x為樣本,w為樣本特征的權重向量,b為模型的偏置.LR 模型一般分為3 部分解決點擊率預測問題:第一,尋找模型的預測函數f(x),通常我們使用sigmoid 函數作為預測函數f(x);第二,建立損失函數loss(w),一般使用極大似然估計法建立loss(w);第三,求解使損失函數loss(w)最小的參數w,一般使用梯度下降的方法求解w.

2.1.2 XGBoost

XGBoost[16]是大規模并行boosted tree 的工具,它是目前最快最好的開源boosted tree 工具包,比常見的工具包快10 倍以上.XGBoost 是以分類回歸樹CART為基礎,對多個CART 進行組合.對于單個的CART,需要找到損失函數最小的一個分類回歸樹,而XGBoost通過加法模型來組合多個CART,將模型上次預測(由t-1 顆樹組合成的模型) 產生的誤差作為參考下一棵樹(第t顆樹)的建立.因此,每加入一棵樹,將其損失函數不斷降低.其算法的流程如下所示:

1)在每次迭代過程中加入一顆新樹f(xi);

2)在每次迭代計算f(xi)的已一階導數和二階導數;

3)計算f(xi)的目標函數的最小損失值Obj,并根據值Obj來生成樹f(xi).

2.1.3 LightGBM

盡管很多學者使用不同的優化算法來提高GBDT的效率,但當數據特征維度過高、數據量過大時,這些算法總是那么不盡人意.他們共同不足的地方是,在計算信息增益時都需要掃描所有的樣本,來找到最佳的劃分點,從而消耗了大量的計算時間.因此,微軟為了解決這方面的問題,提出了Gradient-based One-Side Sampling 梯度單邊采樣(GOSS)和Exclusive Feature Bundling 互斥特征綁定(EFB)兩個算法優化GDBT,將優化后的GDBT 稱為LightGBM[17].

GOSS[17]提出是為了證明梯度較大的樣本在計算信息增益的時起重要作用,從而能夠從數量較小的樣本中獲得相當準確的信息增益估計值.其算法的核心思想是:在總樣本中選取梯度較大的部分樣本,并在剩下樣本中隨機選取出部分樣本,兩者組合成新的樣本來學習新的分類器.這樣的做法是為了采樣的樣本與總樣本的分布一致和訓練小梯度樣本數據,從而在不改變樣本的分布前提下不損失分類器學習的精確并且大大的減少了分類器學習的速率.

EFB[17]是一種能夠減少高維數據的特征數并使損失最小的一種算法,將稀疏特征空間中的非0 值的特征綁定到一起形成一個特征,然后從特征綁定中建立相同的特征直方圖作為單一特征,通過這種方式能夠在無損精度的情況加速GBDT 的訓練.

2.2 基于學習法和平均法的集成模型

本文基于LR、XGBoost 和LightGBM3 種單一模型,使用Stacking 和Blending 集成思想,提出2 種集成模型:SXL 和SSL.

2.2.1 SXL 模型

SXL 模型通過Stacking 技術,集成LightGBM 和XGBoost 兩種單一模型,其整體結構如圖1所示.SXL中S 代表集成模型的技術Stacking,X 和L 分別代表集成模型的基礎模型XGBoost 和LightGBM.Stacking 初等模型層使用XGBoost 模型進行5 折交叉驗證,最終模型從使用LightGBM 作預測.5 折交叉驗證是將原始數據分成5 等分,每次訓練選四折作為訓練數據,另外一折作為測試數據,每一折訓練得到一個預測結果,循環五次,最后將五次預測結果和原始數據拼接,得到最終模型從的訓練數據.最終模型使用LightGBM 訓練初等模型層得到的數據,輸出最終的預測結果.

SXL 模型一共分為兩層,第一層為初等模型層,其中選用XGBoost 為基礎訓練模型;第二層為最終模型層,選用LightGBM 為基礎訓練模型.SXL 模型的實現主要分為以下幾個步驟:1)首先讀取原始特征數據集I;2)按原始特征數據集I,平均分成5 等份Ii(i∈1,2,3,4,5);3)對每一個訓練XGBoost 模型,得到Resulti;4)組合原始特征數據集I和初等模型層訓練后得到的Resulti組合成新特征集D;5) 用訓練最終模型層LightGBM,得到最終預測結果Result.

圖1 SXL 集成模型圖

2.2.2 BLLX 模型

BLLX 模型使用Blending 技術,集成LR、Light GBM、XGBoost 3 種基礎單一模型.整體結構如圖2所示.BLLX 模型是集成3 種單一模型的分別訓練后的結果,通過一定的權重分配,來獲得最后的結果.經過實驗結果的對比,我們最終選擇的模型權重如式(2).

圖2 BLLX 集成模型圖

2.3 性能分析

對于分析數據集,不同的方法處理數據集獲得的結論不同,不同的機器學習模型學習數據集的方法不同,其訓練結果也不一樣.集成技術能夠訓練單一模型,結合它們的優點,提高預測的能力.XGBoost 改進了GBDT 的殘差函數,利用CPU 的多線程,引入正則化項,控制模型的復雜度,使用預排序的方法實現特征并行.LightGBM 使用直方圖算法,使訓練過程加速,擁有更高的訓練效率,相比于XGBoost,它占用更低的內存,具備處理大數據的能力.SXL 模型使用Stacking 集成思想,集成了XGBoost 和LightGBM 的優點,既能夠并行進行訓練,又能夠得到更準確的預測結果.但是模型訓練中多次訓練單一模型,重復讀取大量的數據,會導致模型的訓練時間加倍增長,影響模型的效率,而且Stacking 技術增加了整個模型的復雜度,容易訓練過擬合.BLLX 模型是在LR、XGBoost 和LightGBM 的各自訓練后的結論上進行加權平均,不會導致過擬合的發生,其模型復雜度也沒有SXL 模型高,更容易得到不錯的預測結果.但是如何處理各個模型的權重的問題上,需要經過大量的時間計算,分配每個單一模型的權重值.

3 實驗結果及分析

3.1 實驗數據與預處理

本文采用的數據集來自騰訊社交廣告高校算法大賽,該項比賽是以移動App 廣告為研究對象,要求比賽參與者利用騰訊社交廣告平臺中的真實數據預測App 廣告轉化率,從而能夠提高廣告的投放效果,并且擴大廣告帶來的相關收入.原始數據中包含了以下數據特征:1)廣告相關特征(廣告主信息、廣告的相關信息等);2) 用戶特征(用戶相關信息年齡、性別、學歷、教育情況、婚姻情況等等);3)上下文特征(用戶使用的手機類型、運營商、聯網方式和廣告位置的相關信息等).

由于數據來源于真實的廣告平臺中,每天都能產生大量的歷史數據,每位用戶都可能產生大量的廣告日志記錄,會造成數據中用戶與轉化成功的廣告數量比嚴重不足.且在數據采集過程中,由于一些不可控的原因,會導致數據集中的數據缺失問題.針對此問題,我們根據缺失數據所屬的特征進行分析,若它為連續型特征,我們會根據它的均值進行補充缺失值,若它為離散型特征,則我們會刪除該條數據,雖然刪除缺失值會影響后續模型預測的準確性,但是在本次的App 廣告數據集中,缺失的樣本幾乎只占了樣本總量的0.1%,刪除它并不會影響樣本的總體的分布.在經過處理后,我們的數據樣本中包含9386 404 條數據,其中轉化的App 廣告條數為234 382 條,未轉化的App 廣告條數為9152 022 條.

3.2 評估標準

本文研究的問題是針對數據集中的每條數據樣本,預測用戶點擊并激活App 廣告的轉化率.其本質上屬于一個二分類問題,因為用戶是否激活該App 廣告,只有兩個取值:0 或者1.對數損失(Log-likelihood Loss,LogLoss)是在概率論上定義的一個評估分類器的概率輸出的標準.它能夠通過懲罰錯誤的分類,完成對評估分類器的準確度的量化,為了計算LogLoss值,每個分類器必須提供樣本的所屬類別的概率值.對于一個二分類問題,LogLoss的計算公式如式(3)所示:

式中,yi代表第i個樣本xi的類別,取值為0 或1,pi代表分類器輸出的樣本xi的預測概率值,取值區間在0 到1,N為樣本總量.

3.3 特征提取

3.3.1 基礎特征

基礎特征為數據初始的特征,訓練集中的每一個原始字段都可以作為基礎特征,從而統計相關統計量(例如過去幾天內的用戶點擊總量、用戶是否轉化過當前App 等).以訓練集中的素材creative_id 為例,它是用戶最直接看到的內容,對某個特定的 creative_id,我們統計過去若干天內該 creative_id 的總點擊量、轉化次數和轉化率,作為該 creative_id 取值的3 個特征.它的物理意義是量化地描述了該素材是否更能吸引用戶(點擊量)和發生轉化(轉化率).

3.3.2 用戶信息特征

基礎特征以外,用戶信息特征是非常重要的特征.因為一個App 廣告是否得到激活轉化,都是由用戶主觀上決定的,所以針對用戶的相關行為進行分析對本次實驗是十分重要的.我們通過對用戶行為的分析,提取了一些相關的特征,包括:用戶安裝App 的總量、用戶在轉化該廣告之間的一些行為(點擊之前用戶點擊App 的數量等)、用戶點擊相同素材的廣告總量等等一些與用戶相關的行為特征.

3.3.3 貝葉斯平滑特征

貝葉斯平滑假設所有的廣告都有一個自身的轉化率,這些轉化率服從于一個Beta 分布,其次對于某一個廣告,給定轉化次數和它自身的轉化率,它的點擊次數服從一個伯努利分布,最后用梯度下降來學習這個分布.當我們預測App 廣告CVR 時,機器學習模型非常依賴于統計特征,每個廣告的反饋CVR 都能夠極大的提升預測的準確性.我們使用歷史數據來獲得App 廣告的CVR 時存在一個問題,即在特種提取中我們統計了同一廣告位App 的歷史轉化率,由于廣告位上線有前后區別,而且上線慢的廣告位統計不充分,大多數用戶只點擊過App 廣告一次,那么它的歷史轉化率就是100%.如果拿這個特征訓練模型,可能導致數據偏差.在貝葉斯平滑中,我們一共平滑了兩種數據,一種是App 廣告位置信息的貝葉斯平滑率(CF_pos),一種是App 廣告素材信息的貝葉斯平滑率(CF_cre).

3.4 實驗結果

3.4.1 模型參數設置

在設置XGBoost 和LightGBM 模型參數時,我們選擇使用Python 學習庫中的GridSearchCV 方法,對模型進行參數進行交叉驗證選擇出模型的合適參數,其參數設置如表1和表2所示.

3.4.2 特征提取的影響

我們使用GBDT 模型中對特征評估的方法,對我們在特征提取階段得到的特征進行評估,得到如圖3所示的重要性得分圖.圖中以SF 開始的特征為用戶信息特征,CF 開始的特征為貝葉斯特征,小寫字母開始和BF 開始的特征為基礎特征.從圖中我們可以得到,在經過貝葉斯平滑后得到的兩個特征CF_pos 和CF_cre 的重要性得分最高,我們可以判斷出App 廣告的位置和廣告使用的素材對App 廣告成功轉化有較大的影響.在基礎特征中,年齡age 對App 廣告成功轉化的影響最大,appplatform 得分最低,我們可以得到年齡是決定App 廣告轉化的重要因素之一,而App 的平臺(安卓和蘋果)對App 廣告成功轉化有微弱的影響.因此我們篩選出得分少于100 的特征,得到最終的特征集.

表1 XGBoost 參數表

表2 LightGBM 參數表

接著,我們使用XGBoost 和lightGBM 兩種單一模型對特征進行訓練.V1 階段我們使用原始數據集,V1-V2 和V2-V3 我們加入基礎特征,V3-V4、V4-V5 和V5-V6 階段我們加入用戶信息特征,V6-V7 階段我們加入貝葉斯平滑特征.從圖4中我們可以看出,隨著訓練集中數據特征的增多,兩個模型的LogLoss值趨向于下降,這證明我們提取的特征能夠大幅度的提升模型的預測效果.

圖3 特征重要性得分圖

3.4.3 預測結果分析

在本文實驗中,一共訓練了7 種模型:LR、XGBoost、LightGBM3 種單一模型,GBDT+LR、RF+LXFV 兩種用于廣告轉化率預測的集成模型,以及本文提出了兩種集成模型SXL 和BLLX,7 種模型的訓練結果如表3所示.從表中可以看出,LR 模型的效果最差,其LogLoss為0.1033;BLLX 模型的效果最好其LogLoss為0.0922;在單一模型中,XGBoost 和LightGBM 的預測能力均比LR 模型優秀;而集成模型與單一模型對比中,GBDT+LR 稍微比單一模型差,而其它3 種集成模型均比單一模型好;在4 種集成模型對比中,BLLX 模型和SXL 模型的效果比另外2 種好;在時間成本上,RF+LXFV 的時間成本最高,其原因在于集成了4 種單一模型,導致模型的復雜度提升,從而導致訓練時間過長;SXL 模型在集成模型中,訓練時間最短,為59.8 分鐘.

圖4 不同特征在模型上的效果圖

表3 各模型App 廣告轉化預測的LogLoss 和時間成本

實驗結果充分證明了我們提出的SXL 模型和BLLX模型的有效性與預測轉化率的精準度,在實際使用中,BLLX 模型的時間成本比SXL 模型高,但LogLoss比BLLX 模型低,如果公司使用模型用在廣告系統中,考慮到預測轉化率的精度微弱提高都會帶來巨大的收益情況下,建議使用BLLX 模型;而如果因為時間成本問題,在損失預測精度的情況下,可以考慮SXL 模型.

4 結論

本文通過對App 廣告點擊后激活的轉化率預測問題的研究,使用特征工程,處理數據集,并提出了兩種集成模型SXL 和BLLX.論文以騰訊社交廣告算法大賽中的實際數據為基礎,通過特征工程挖掘出大量的用戶數據特征,提供了模型訓練的訓練集,為模型訓練打下了堅實的基礎.集成模型SXL 和BLLX 在LogLoss方法評估中都要明顯高于傳統機器學習模型和其它集成模型,本文模型的有效性得到了充分的驗證.當然本文也存在很多不足的地方,例如在特征提取中,沒有考慮到時間信息對App 廣告轉化率的影響.在今后的研究中,考慮挖掘時間信息,進一步提高模型的預測能力.

猜你喜歡
特征用戶模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
抓住特征巧觀察
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
3D打印中的模型分割與打包
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
主站蜘蛛池模板: 香蕉视频在线精品| 国产成人亚洲精品色欲AV | 亚洲一级色| 精品无码一区二区在线观看| 国产97视频在线| 国产一区二区网站| 久久午夜影院| 免费一级全黄少妇性色生活片| 91九色最新地址| 在线观看无码av免费不卡网站| 欧美一级高清片久久99| 国产精品人成在线播放| 国产美女精品在线| 国产美女主播一级成人毛片| 亚洲三级成人| 久久久久青草线综合超碰| 色AV色 综合网站| 国产系列在线| 亚洲成人在线免费| aa级毛片毛片免费观看久| 亚洲成a人片| 亚洲区第一页| 亚洲最大福利视频网| 国产午夜精品鲁丝片| 亚洲综合第一区| 欧美精品亚洲精品日韩专| 国产97色在线| 麻豆精品在线播放| 国产视频自拍一区| 日韩东京热无码人妻| 高潮爽到爆的喷水女主播视频 | 国产高清无码麻豆精品| 国产99视频精品免费观看9e| 网久久综合| 一级全免费视频播放| 米奇精品一区二区三区| 精品一区二区三区视频免费观看| 中文字幕在线免费看| 欧美日韩国产成人高清视频| 99久久亚洲综合精品TS| 无码日韩人妻精品久久蜜桃| 久久精品丝袜| 日韩精品一区二区三区免费在线观看| 精品91视频| 亚洲天堂免费| 欧美激情成人网| 精品国产女同疯狂摩擦2| 欧美午夜在线视频| 国产精品成人AⅤ在线一二三四| 婷婷激情亚洲| 五月天久久婷婷| 国产一级毛片高清完整视频版| 99国产在线视频| 在线观看国产精品日本不卡网| 一级成人a毛片免费播放| 五月天综合婷婷| 国产丝袜丝视频在线观看| 成人午夜亚洲影视在线观看| 国产精品19p| 自拍偷拍欧美| 国产午夜福利片在线观看| 午夜三级在线| 无码综合天天久久综合网| 精品一区二区三区无码视频无码| 天堂在线www网亚洲| 国禁国产you女视频网站| 日韩大乳视频中文字幕| a毛片在线| 国产91熟女高潮一区二区| lhav亚洲精品| 免费国产一级 片内射老| 在线五月婷婷| 亚洲浓毛av| 成人午夜在线播放| 最新国产精品第1页| 免费人成又黄又爽的视频网站| 日本高清免费不卡视频| 三上悠亚精品二区在线观看| 色精品视频| 亚洲福利网址| 欧美一级特黄aaaaaa在线看片| 四虎成人精品|