问题介绍
构建预测模型"预估用户的购买意向",即给定广告点击相关的用户(user)、广告商品(ad)、检索词(query)、上下文内容(context)、商店(shop)等信息的条件下,预测广告产生购买行为的概率(pCVR),形式化定义为:pCVR=P(conversion=1 | query, user, ad, context, shop)。
(1)日常的转化率预估
(2)特殊日期的转化率预估
评估指标
用logloss评估模型效果(越小越好)
其中表示测试集样本数量,表示测试集中第个样本的真实标签,表示第个样本的预估转化率。logloss更关注和观察数据的吻合程度,AUC更关注rank order。
数据
5类数据(用户信息、广告商品信息、基础数据、上下文信息和店铺信息)。基础数据表提供了搜索广告最基本的信息,以及“是否交易”的标记。广告商品信息、用户信息、上下文信息和店铺信息等4类数据,提供了对转化率预估可能有帮助的辅助信息。如果一条样本的某个字段为“-1”,表示这个样本的对应字段缺乏数据。
基础数据
instance_id:样本编号,Long
is_trade:是否交易的标记位,Int类型;取值是0或者1,其中1 表示这条样本最终产生交易,0 表示没有交易
item_id:广告商品编号,Long类型
user_id:用户的编号,Long类型
context_id:上下文信息的编号,Long类型
shop_id:店铺的编号,Long类型
广告商品信息
item_id:广告商品编号,Long类型
item_category_list:广告商品的类目列表,String类型;从根类目(最粗略的一级类目)向叶子类目(最精细的类目)依次排列,数据拼接格式为"category_0;category_1;category_2",其中 category_1 是 category_0 的子类目,category_2 是 category_1 的子类目
item_property_list:广告商品的属性列表,String类型;数据拼接格式为 "property_0;property_1;property_2",各个属性没有从属关系
item_brand_id:广告商品的品牌编号,Long类型
item_city_id:广告商品的城市编号,Long类型
item_price_level:广告商品的价格等级,Int类型;取值从0开始,数值越大表示价格越高
item_sales_level:广告商品的销量等级,Int类型;取值从0开始,数值越大表示销量越大
item_collected_level:广告商品被收藏次数的等级,Int类型;取值从0开始,数值越大表示被收藏次数越大
item_pv_level:广告商品被展示次数的等级,Int类型;取值从0开始,数值越大表示被展示次数越大
用户信息
user_id:用户的编号,Long类型
user_gender_id:用户的预测性别编号,Int类型;0表示女性用户,1表示男性用户,2表示家庭用户
user_age_level:用户的预测年龄等级,Int类型;数值越大表示年龄越大
user_occupation_id:用户的预测职业编号,Int类型
user_star_level:用户的星级编号,Int类型;数值越大表示用户的星级越高
上下文信息
context_id:上下文信息的编号,Long类型
context_timestamp:广告商品的展示时间,Long类型;取值是以秒为单位的Unix时间戳,以1天为单位对时间戳进行了偏移
context_page_id:广告商品的展示页面编号,Int类型;取值从1开始,依次增加;在一次搜索的展示结果中第一屏的编号为1,第二屏的编号为2
predict_category_property:根据查询词预测的类目属性列表,String类型;数据拼接格式为 “category_A:property_A_1,property_A_2,property_A_3;category_B:-1;category_C:property_C_1,property_C_2” ,其中 category_A、category_B、category_C 是预测的三个类目;property_B 取值为-1,表示预测的第二个类目 category_B 没有对应的预测属性
店铺信息
shop_id:店铺的编号,Long类型
shop_review_num_level:店铺的评价数量等级,Int类型;取值从0开始,数值越大表示评价数量越多
shop_review_positive_rate:店铺的好评率,Double类型;取值在0到1之间,数值越大表示好评率越高
shop_star_level:店铺的星级编号,Int类型;取值从0开始,数值越大表示店铺的星级越高
shop_score_service:店铺的服务态度评分,Double类型;取值在0到1之间,数值越大表示评分越高
shop_score_delivery:店铺的物流服务评分,Double类型;取值在0到1之间,数值越大表示评分越高
shop_score_description:店铺的描述相符评分,Double类型;取值在0到1之间,数值越大表示评分越高
特征工程
(1)基础特征:基础数据、广告商品信息、用户信息、上下文信息、店铺信息。转化时间戳特征。
(2)统计类特征:主要用到三种度量方式:count,unique,mean,分别从全局、天、小时三种时间粒度来构造。
(3)时间差特征:从用户点击商品的时间差来反映用户购买商品的可能性,”短时间内点击“相同商品购买的可能性会比较大。用户点击商品无非三个位置:首次点击、中间点击、末次点击,往往最后一次浏览购买可能性最大。
(4)分段特征:对小时、score、rate进行构造,这类离散化后的特征对异常数据有很强的鲁棒性,刻画出用户习惯操作和偏好。
(5)概率特征:主要构造了转化率特征和比例特征。转化率特征主要统计的是历史转化率,一是刻画转化率的变化情况,二是反应某个特征大概转化情况,特征我们进行了单特征和多特征组合构造转化率特征。比例特征用来刻画某类用户的偏好。
(6)其他特征:重复出现次数分段(存在很多用户在同一时间下进行多次点击,统计其出现次数(same_time_expo_cnt)。用户对相同商品点击次数对于次数大于2的进行标记(user_large2))、predict_category_property(用户搜索某商品时显示预测的类别属性影响着用户点击情况,构造了预测类别属性与用户点击商品类别属性的交集个数与相似度)
模型训练
上述构造特征的过程能够上到数百个特征,但是又不可能对所有特征进行训练,因为里面可能包含很多冗余特征。使用warpper的方式来进行特征选择。将前向搜索、后向搜索、随机搜索进行组合筛选出最终特征。
参考文献
https://tianchi.aliyun.com/competition/entrance/231647/introduction
https://zhuanlan.zhihu.com/p/36858386
https://tianchi.aliyun.com/course/video?liveId=5531
https://github.com/YouChouNoBB/ijcai-18-top2-single-mole-solution
网友评论