個性化電商廣告推薦系統介紹

日萌社

人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度學習實戰(不定時更新)


 

一 個性化電商廣告推薦系統介紹

1.1 數據集介紹

  • Ali_Display_Ad_Click是阿里巴巴提供的一個淘寶展示廣告點擊率預估數據集

    數據集來源:天池競賽

  • 原始樣本骨架raw_sample

    淘寶網站中隨機抽樣了114萬用戶8天內的廣告展示/點擊日誌(2600萬條記錄),構成原始的樣本骨架。 字段說明如下:

    1. user_id:脫敏過的用戶ID;
    2. adgroup_id:脫敏過的廣告單元ID;
    3. time_stamp:時間戳;
    4. pid:資源位;
    5. noclk:爲1代表沒有點擊;爲0代表點擊;
    6. clk:爲0代表沒有點擊;爲1代表點擊;

    用前面7天的做訓練樣本(20170506-20170512),用第8天的做測試樣本(20170513)

  • 廣告基本信息表ad_feature

    本數據集涵蓋了raw_sample中全部廣告的基本信息(約80萬條目)。字段說明如下:

    1. adgroup_id:脫敏過的廣告ID;
    2. cate_id:脫敏過的商品類目ID;
    3. campaign_id:脫敏過的廣告計劃ID;
    4. customer_id: 脫敏過的廣告主ID;
    5. brand_id:脫敏過的品牌ID;
    6. price: 寶貝的價格

    其中一個廣告ID對應一個商品(寶貝),一個寶貝屬於一個類目,一個寶貝屬於一個品牌。

  • 用戶基本信息表user_profile

    本數據集涵蓋了raw_sample中全部用戶的基本信息(約100多萬用戶)。字段說明如下:

    1. userid:脫敏過的用戶ID;
    2. cms_segid:微羣ID;
    3. cms_group_id:cms_group_id;
    4. final_gender_code:性別 1:男,2:女;
    5. age_level:年齡層次; 1234
    6. pvalue_level:消費檔次,1:低檔,2:中檔,3:高檔;
    7. shopping_level:購物深度,1:淺層用戶,2:中度用戶,3:深度用戶
    8. occupation:是否大學生 ,1:是,0:否
    9. new_user_class_level:城市層級
  • 用戶的行爲日誌behavior_log

    本數據集涵蓋了raw_sample中全部用戶22天內的購物行爲(共七億條記錄)。字段說明如下:

    user:脫敏過的用戶ID; time_stamp:時間戳; btag:行爲類型, 包括以下四種:​ 類型 | 說明​ pv | 瀏覽​ cart | 加入購物車​ fav | 喜歡​ buy | 購買 cate_id:脫敏過的商品類目id; brand_id: 脫敏過的品牌id; 這裏以user + time_stamp爲key,會有很多重複的記錄;這是因爲我們的不同的類型的行爲數據是不同部門記錄的,在打包到一起的時候,實際上會有小的偏差(即兩個一樣的time_stamp實際上是差異比較小的兩個時間)

1.2 項目效果展示

1.3 項目實現分析

  • 主要包括

    • 一份廣告點擊的樣本數據raw_sample.csv:體現的是用戶對不同位置廣告點擊、沒點擊的情況
    • 一份廣告基本信息數據ad_feature.csv:體現的是每個廣告的類目(id)、品牌(id)、價格特徵
    • 一份用戶基本信息數據user_profile.csv:體現的是用戶羣組、性別、年齡、消費購物檔次、所在城市級別等特徵
    • 一份用戶行爲日誌數據behavior_log.csv:體現用戶對商品類目(id)、品牌(id)的瀏覽、加購物車、收藏、購買等信息

    我們是在對非搜索類型的廣告進行點擊率預測和推薦(沒有搜索詞、沒有廣告的內容特徵信息)

    1. 推薦業務處理主要流程: 召回 ===> 排序 ===> 過濾
      • 離線處理業務流
        • raw_sample.csv ==> 歷史樣本數據
        • ad_feature.csv ==> 廣告特徵數據
        • user_profile.csv ==> 用戶特徵數據
        • raw_sample.csv + ad_feature.csv + user_profile.csv ==> CTR點擊率預測模型
        • behavior_log.csv ==> 評分數據 ==> user-cate/brand評分數據 ==> 協同過濾 ==> top-N cate/brand ==> 關聯廣告
        • 協同過濾召回 ==> top-N cate/brand ==> 關聯對應的廣告完成召回
      • 在線處理業務流
        • 數據處理部分:
          • 實時行爲日誌 ==> 實時特徵 ==> 緩存
          • 實時行爲日誌 ==> 實時商品類別/品牌 ==> 實時廣告召回集 ==> 緩存
        • 推薦任務部分:
          • CTR點擊率預測模型 + 廣告/用戶特徵(緩存) + 對應的召回集(緩存) ==> 點擊率排序 ==> top-N 廣告推薦結果
    2. 涉及技術:Flume、Kafka、Spark-streming\HDFS、Spark SQL、Spark ML、Redis
      • Flume:日誌數據收集
      • Kafka:實時日誌數據處理隊列
      • HDFS:存儲數據
      • Spark SQL:離線處理
      • Spark ML:模型訓練
      • Redis:緩存

1.4 點擊率預測(CTR--Click-Through-Rate)概念

  • 電商廣告推薦通常使用廣告點擊率(CTR--Click-Through-Rate)預測來實現

    點擊率預測 VS 推薦算法

    點擊率預測需要給出精準的點擊概率,比如廣告A點擊率0.5%、廣告B的點擊率0.12%等;而推薦算法很多時候只需要得出一個最優的次序A>B>C即可。

    點擊率預測使用的算法通常是如邏輯迴歸(Logic Regression)這樣的機器學習算法,而推薦算法則是一些基於協同過濾推薦、基於內容的推薦等思想實現的算法

    點擊率 VS 轉化率

    點擊率預測是對每次廣告的點擊情況做出預測,可以判定這次爲點擊或不點擊,也可以給出點擊或不點擊的概率

    轉化率指的是從狀態A進入到狀態B的概率,電商的轉化率通常是指到達網站後,進而有成交記錄的用戶比率,如用戶成交量/用戶訪問量

    搜索和非搜索廣告點擊率預測的區別

    搜索中有很強的搜索信號-“查詢詞(Query)”,查詢詞和廣告內容的匹配程度很大程度影響了點擊概率,搜索廣告的點擊率普遍較高

    非搜索廣告(例如展示廣告,信息流廣告)的點擊率的計算很多就來源於用戶的興趣和廣告自身的特徵,以及上下文環境。通常好位置能達到百分之幾的點擊率。對於很多底部的廣告,點擊率非常低,常常是千分之幾,甚至更低

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章