營銷演算法之爭落幕 簡化程式碼與遷移學習成最大贏家

AI前線發表於2019-02-26
營銷演算法之爭落幕 簡化程式碼與遷移學習成最大贏家
編輯 | Debra
AI 前線導讀:北京時間 6 月 5 日,IJCAI 2018 阿里媽媽國際廣告演算法大賽決賽在杭州正式結束,8 支決賽隊伍經過了演講、答辯和 5 名評委的合議之後,最終由 DOG 隊獲得了冠軍,藍鯨燒香隊和躺分隊分列二三名,禁止實習咋找工作啊隊和強東隊獲得創新獎,這五支隊伍共同獲得了 7 月前往斯德哥爾摩參加 IJCAI 2018 主會的參會資格。

更多幹貨內容請關注微信公眾號“AI 前線”,(ID:ai-front)

賽題介紹

此次大賽以“挖掘更多的技術及人才,賦能整個營銷生態”目標,賽程包括了初賽、複賽和決賽三個階段。而賽題也是隨著賽程的推進逐步深入開放資料,難度也逐步增加。

此次大賽的賽題採用的資料均來自於真實業務場景,作為阿里巴巴旗下的大資料營銷平臺,阿里媽媽擁有阿里集團的核心商業資料,這些資料一直被用於採用深度學習、線上學習、強化學習等人工智慧技術來高效精準預測使用者購買意向。但是,電商平臺是一個複雜的生態系統,使用者行為偏好、商品長尾分佈、熱點事件營銷等因素都會給轉化率預估帶來了巨大挑戰。如何更好地利用海量的交易資料來高效準確地預測使用者的購買意向,是人工智慧和大資料在電子商務場景中需要繼續解決的技術難題。

本次比賽以阿里電商廣告為研究物件,提供平臺的海量真實交易資料,參賽選手通過人工智慧技術構建預測模型預估使用者的購買意向,即給定廣告點選相關的使用者(user)、廣告商品(ad)、檢索詞(query)、上下文內容(context)、商店(shop)等資訊的條件下預測廣告產生購買行為的概率(pCVR),形式化定義為:

pCVR=P(conversion=1 | query, user, ad, context, shop)。結合淘寶平臺的業務場景和不同的流量特點,定義了“日常的轉化率預估”和“特殊日期的轉化率預估”兩類挑戰。

而通過選手的介紹也會發現此次的賽題難度所在,初賽時提供了前七天的資料預測第八天,而複賽則是提供了第八天上午的資料預測下午,相應的資料量也在增加,在初賽時訓練資料集為 48 萬,測試資料集為 6 萬;複賽時,訓練資料集為 1000 萬,測試資料集為 173 萬。

選手決賽解題思路

在通過層層篩選之後,有 8 支隊伍進入了最終決賽。這些隊伍的成員均是來自大學、科研機構或者科技公司,實力與經驗兼備。

冠軍 DOG 隊:簡化程式碼與遷移學習

決賽的爭奪顯得異常激烈,最終奪得桂冠的是由來自產業界的花志祥單人組成的 DOG 隊。

花志祥先解釋了之前初賽和複賽的解題思路。前七天的資料比較平穩,而第八天出現了較大的波動,因此根據 1 到 7 天的資料同時預測第八天上午和下午的資料,這其實就是使用了遷移學習的方法,在普通的場景下預測促銷場景的情景。然後再結合第八天促銷當日上午的銷量訓練模型來獲取結果,即預測當日下午的資料。而這個整個模型只利用 Lightgbm 來做。

營銷演算法之爭落幕 簡化程式碼與遷移學習成最大贏家

在模型特徵方面使用了四種。統計特徵方面包括了使用者點選商品 item 個數、最後一次搜尋時間、看的最大頁數、搜尋小時平均、互動時間等;時差特徵方面主要考慮了兩次互動之間的時長,在真實場景中就包括了使用者、商品 item 互動、商品品類 item_category、商品品牌 item_brand_id 兩次互動的時長等,這些因素在排序特徵中則表現為使用者與商品的互動次數。

在表徵特徵方面,使用了詞袋統計了 property 是否存在、統計使用者的所有檢視在特徵上的佔比、統計 item 被檢視的使用者在這些特徵上的佔比的平均情況,而借用這些特徵建模以實現對使用者行為的精準預測。在核心程式碼方面,選手只用了一頁就成功展現,簡潔的程式碼也是幫助其取得勝利的原因。

營銷演算法之爭落幕 簡化程式碼與遷移學習成最大贏家

評委們對 DOG 隊的評價為“遷移學習的使用讓人眼前一亮,整個的方法簡單,有效,思路清晰”。

亞軍藍鯨燒香隊:模型資料完整全面

決賽獲得亞軍的是由來自產業界的 BRYAN、桑楡、李困困三人組成的藍鯨燒香隊。

主講人首先把賽題進行了分析,業務場景、搜尋和轉化預估是其中重點;資料分析方面,每天的樣本和交易數、每天交易率、每小時的轉化率進行整體趨勢預估;資料型別進行劃分,缺失資料採用平均數填充和眾數填充的方式填充;使用者分析方面,藉助使用者點選次數發現低頻訴求,購買次數發現長尾分佈,二者結合可發現即時興趣和目標明確使用者;然後深入分析後找到資料裡的隱藏資訊,最後可以繪製每天的點選數趨勢。

為提升優化演算法的效率,減少線上成績的運氣性成分,同時避免演算法過度依賴於線上資料集的問題,因此採用了線下測試的方法,線上驗證的優化線上下有顯著的提升。在模型設計方面,團隊設計了主模型、全域性資料模型、時間資訊模型等三個模型來實現精準預測。

營銷演算法之爭落幕 簡化程式碼與遷移學習成最大贏家

在特徵方面,藍鯨燒香把特徵群分成了三類特徵群,一類原始特徵包括了基礎特徵;二類簡單特徵包括了轉化率特徵、排名特徵、佔位元徵、趨勢特徵等;三類複雜特徵則包括了 query 互動特徵、使用者互動特徵、競爭特徵、業務特徵等。利用多種特徵進行線下測試後找到不同特徵群對預測準確度的提升,以找到重要的特徵。而在模型融合方面,則是採用了簡單加權融合的方式來融合 LightGBM 模型。

營銷演算法之爭落幕 簡化程式碼與遷移學習成最大贏家

評委對藍鯨燒香隊的評價為“演講令人印象深刻,整個的模型資料等各方面都非常全面和完整,也取得了非常好的效果”。

季軍躺分隊:業務的深刻理解

獲得季軍的隊伍是由浙江工業大學陳波成、中南大學羅賓理和天津大學吳昊三人組成的躺分隊。

躺分隊先對賽題進行了解析,他們認為賽題的難點,一方面在於如何在正常流量資料中,找到適合表達促銷或突變的特徵;另一方面如何在模型選擇上,如何找到儘快落地於工業界的輕量級框架。通過分析後發現,最後一天為大促日,因此建模方向可以分成兩種,一種是常規思路針對 User 和各項互動建模,另一種則是針對促銷時探求變化進行建模。

因此,躺分隊提初了四套訓練方案,分辨是針對變化的 Only-7、全量資料的 All-day、全量資料的取樣 Sample-All、全量統計特徵提取 Day7 特徵 All-to-7。分別對賽題進行了驗證。

在特徵工程方面,躺分隊先對基礎特徵進行分列,然後去掉取值變化小的列,再去掉缺失值過多的列。在使用者特徵方面,通過基礎資料確定使用者偏好行為;再通過時間差等推出使用者的近期行為情況。然後對店鋪吸引的人群狀況和廣告吸引的人群狀況等進行畫像。

營銷演算法之爭落幕 簡化程式碼與遷移學習成最大贏家

藉助這些特徵可以使用前 7 天的資料來預測第八天的概率值,推算 Item_property_list 與 predict_category_property 的匹配程度,因為考慮到賽題實際場景,當使用者檢索時,查詢詞的預測的類目有與檢索詞相匹配,使用者更有機會購買。

在模型選擇方面選擇了神經網路,這樣可以將 ID 特徵放入交叉層連續特徵 Embedding。總結後發現,首先是應當對促銷時期應考慮變化特徵,其次合理的特徵提取框架是致勝之道,再者多模型的融合可以提升精度較多。

營銷演算法之爭落幕 簡化程式碼與遷移學習成最大贏家

評委對躺分隊的評價為“對整個的系統思考非常的完整,業務理解深刻,業務分析到位”。

創新獎:禁止實習咋找工作啊隊與強東隊

在原本的計劃中,決賽將會產生兩支特別獎的隊伍,但是禁止實習咋找工作啊隊與強東隊兩支隊伍的表現讓評委組臨時決定把獎項修改為創新獎,去鼓勵在過程中有創新想法的這兩支隊伍。

禁止實習咋找工作啊隊由中科院莊曉敏、中科院計算所張衛民、香港科技大學李昊陽三人組成。他們首先將資料區分了時間區間,有效的利用了不同特點的歷史資料,以統計特徵分析使用者行為;這樣做發現了兩個使用者的行為特點,第一 User 資料稀疏大部分使用者只在一天出現,第二資料少的使用者轉化率反而高。

因此,對資料少的使用者採用構造特徵區分出來,便於模型總體判斷;而對資料較多的使用者則直接用構造特徵具體表現使用者行為。時間特徵方面包括了小時熱點、趨勢特徵、視窗等很多都是強特徵;而比較特殊的一點在於 Embedding 特徵,同一個使用者點選過的 item 按照時間順序排序,作為一個 doc, 這樣一個 doc 實際表示的是使用者的點選序列。Doc 中的每個”word”(item) 的上下文, 表示的是使用者關注的跟這個 item 類似的 item;同理還能推算出 Shop 和 User 的特;而 Embedding 特徵在幾個模型上實驗,線下提升萬分之 3+~ 萬分之 6+;此外,因為被越多優質的網頁所指的網頁,它是優質的概率就越大,使用者點選的 PageRank 值也一樣重要。

營銷演算法之爭落幕 簡化程式碼與遷移學習成最大贏家

模型演算法方面,組合特徵模型需要不同單模型特徵拼接做一定篩選;Kfold-average 模型的話,單模型做 10fold,9 個 fold 訓練,預測 test 集合,10fold 做 avg。能有效降低 variance,結果有提升且更加穩定。最終選定的模型便如上圖所示。

評委對禁止實習咋找工作啊隊的評價為“團隊比較有特色,充分的挖掘了使用者序列化行為資訊、使用者表達,提升了效果”。

強東隊則是由吉林大學李強、山東大學沈鼕鼕、中南大學蔣浩然三人組成。他們首先對賽題進行了分析,發現購物互動中 98% 的使用者點選次數是在 10 次以下的。對此做出一些特徵點,比如首次點選、點選次數總和、最愛商品等。但是真正對此次比賽有用的是深度學習的一些特徵,這其中主要有三種,單種類特徵的 encoding、連續特徵的分桶之後的 encoding、多特徵的 pad 之後使用 attention 加權。

多特徵能夠通過 pad 能輸入到 Embedding 層,隊伍借鑑了 DIN 網路的思路,建立 attention 層對多特徵加權。深度學習領域的 ctr 模型中大部分模型都在優化特徵的二階組合。在一階和二階使用 lr 層和 fm 層,fm 層優化到線性,多階特徵也可以使用 cin 層或者 mvm 層,考慮到 cin 層的複雜度過高,使用了簡便的 mvm 層組合無限階特徵。

在 deep 層可以獲取特徵間的非線性關係,輸入分別為離散特徵的 embdding,連續特徵分桶後的 embdding,多特徵 attention 之後的加權向量。將 lgb 的葉子進行 encoding 放入 deep 層,可以更加顯性的獲得特徵的組合資訊。

營銷演算法之爭落幕 簡化程式碼與遷移學習成最大贏家

值得注意的是,在 DL 模型除錯時,應當儘量使用矩陣運算;對 embedding 層使用一維的 dropout 會減少過擬合風險;NN 特徵隨機性比較大,每次訓練出來的模型有隨機性,可以多次取平均;使用 hashtrick 大大減少資源的損耗。評委對強東隊的評價為“利用深度學習方法進行端到端的學習,裡面涉及了工業模型,在所有選手中非常亮眼”。

相關文章