一 个性化电商广告推荐系统介绍
1.1 数据集介绍
-
Ali_Display_Ad_Click是阿里巴巴提供的一个淘宝展示广告点击率预估数据集
数据集来源:天池竞赛
-
原始样本骨架raw_sample
淘宝网站中随机抽样了114万用户8天内的广告展示/点击日志(2600万条记录),构成原始的样本骨架。 字段说明如下:
- user_id:脱敏过的用户ID;
- adgroup_id:脱敏过的广告单元ID;
- time_stamp:时间戳;
- pid:资源位;
- noclk:为1代表没有点击;为0代表点击;
- clk:为0代表没有点击;为1代表点击;
用前面7天的做训练样本(20170506-20170512),用第8天的做测试样本(20170513)
-
广告基本信息表ad_feature
本数据集涵盖了raw_sample中全部广告的基本信息(约80万条目)。字段说明如下:
- adgroup_id:脱敏过的广告ID;
- cate_id:脱敏过的商品类目ID;
- campaign_id:脱敏过的广告计划ID;
- customer_id: 脱敏过的广告主ID;
- brand_id:脱敏过的品牌ID;
- price: 宝贝的价格
其中一个广告ID对应一个商品(宝贝),一个宝贝属于一个类目,一个宝贝属于一个品牌。
-
用户基本信息表user_profile
本数据集涵盖了raw_sample中全部用户的基本信息(约100多万用户)。字段说明如下:
- userid:脱敏过的用户ID;
- cms_segid:微群ID;
- cms_group_id:cms_group_id;
- final_gender_code:性别 1:男,2:女;
- age_level:年龄层次; 1234
- pvalue_level:消费档次,1:低档,2:中档,3:高档;
- shopping_level:购物深度,1:浅层用户,2:中度用户,3:深度用户
- occupation:是否大学生 ,1:是,0:否
- 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 项目效果展示
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pTLK2umq-1691640464238)(/img/1545049355235.png)]
1.3 项目实现分析
-
主要包括
- 一份广告点击的样本数据raw_sample.csv:体现的是用户对不同位置广告点击、没点击的情况
- 一份广告基本信息数据ad_feature.csv:体现的是每个广告的类目(id)、品牌(id)、价格特征
- 一份用户基本信息数据user_profile.csv:体现的是用户群组、性别、年龄、消费购物档次、所在城市级别等特征
- 一份用户行为日志数据behavior_log.csv:体现用户对商品类目(id)、品牌(id)的浏览、加购物车、收藏、购买等信息
我们是在对非搜索类型的广告进行点击率预测和推荐(没有搜索词、没有广告的内容特征信息)
- 推荐业务处理主要流程: 召回 ===> 排序 ===> 过滤
- 离线处理业务流
- 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 广告推荐结果
- 数据处理部分:
- 离线处理业务流
- 涉及技术: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)”,查询词和广告内容的匹配程度很大程度影响了点击概率,搜索广告的点击率普遍较高文章来源:https://www.toymoban.com/news/detail-641301.html
非搜索广告(例如展示广告,信息流广告)的点击率的计算很多就来源于用户的兴趣和广告自身的特征,以及上下文环境。通常好位置能达到百分之几的点击率。对于很多底部的广告,点击率非常低,常常是千分之几,甚至更低文章来源地址https://www.toymoban.com/news/detail-641301.html
到了这里,关于一、 个性化电商广告推荐系统介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!