上一篇中介绍了以为热心参赛者的代码和流程。这篇将记录自己的策略更新过程。
一 数据特征统计分析
几个主要的点:
(1)各类行为与转化(购买)之间的关联关系,包括浏览、加入购物车、关注
(2)已购商品的复购率
(3)性别与商品的关联程度
二 特征提取
包括用户特征,商品特征,和用户历史行为特征
三 模型构建
1、商品候选集确认 - 用户&相关商品,不应该是整个商品集;可能使用到关联分析,协同过滤
2、模型选择 - 分类
3、代码编写与参数调整
4、效果评估与迭代优化
以下分别按照上面描述进行整理。
二 操作
1、用户id数据预处理
用户行为数据,提供的JData_Action_201602.csv 中的user_id是浮点型,都带了个.0,直接跟JData_User.csv关联稍有麻烦,当然主要是看着不爽,所以先把几个action文件的数据规范化
(1)格式化user_id 【使用awk 命令,gsub函数】
awk '$0 ~ /.0,/ {gsub(".0,", ",", $0); print}' JData_Action_201602.csv > Format_JData_Action_201602.csv
(2)用户行为合并
原始数据中,用户的行为是每行一条数据,无法形成行为序列,所以这里加一步中间数据的处理,便于分析用户的商品浏览到购买的全流程行为。给的文件字段说明,是'user_id','sku_id','time','model_id','type','cate','brand' 七个字段,但解析的过程中发现,有不少记录按照逗号分割后,是6个,例如:
266079.0,138778,2016-01-31 23:59:02,,1,8,403
266079.0,138778,2016-01-31 23:59:03,0,6,8,403
200719.0,61226,2016-01-31 23:59:07,,1,8,30
追查后,发现是第一步处理时导致部分空值丢失。。所以重写编写了脚本,这里一并完成user_id的处理在脚本中实现。
(2.1)用户维度聚合
(2.2)用户维度,同一个商品的行为序列再次聚合,一个商品一个元组
(3)正样本提取
先明确一下正负样本的定义:
正样本:有过非购买行为,且有购买行为的用户记录(针对同一商品)
负样本:有过浏览等行为,但最终没有购买行为的用户记录
初步的目标,就是从有非购买行为,且有购买行为的用户中,分析出其中隐藏的规律,并利用这个规律,对其他有行为的用户进行购买行为的预测
上一篇中介绍了以为热心参赛者的代码和流程。这篇将记录自己的策略更新过程。
一 数据特征统计分析
几个主要的点:
(1)各类行为与转化(购买)之间的关联关系,包括浏览、加入购物车、关注
(2)已购商品的复购率
(3)性别与商品的关联程度
二 特征提取
包括用户特征,商品特征,和用户历史行为特征
三 模型构建
1、商品候选集确认 - 用户&相关商品,不应该是整个商品集;可能使用到关联分析,协同过滤
2、模型选择 - 分类
3、代码编写与参数调整
4、效果评估与迭代优化
以下分别按照上面描述进行整理。
二 操作
1、用户id数据预处理
用户行为数据,提供的JData_Action_201602.csv 中的user_id是浮点型,都带了个.0,直接跟JData_User.csv关联稍有麻烦,当然主要是看着不爽,所以先把几个action文件的数据规范化
(1)格式化user_id 【使用awk 命令,gsub函数】
awk '$0 ~ /.0,/ {gsub(".0,", ",", $0); print}' JData_Action_201602.csv > Format_JData_Action_201602.csv
(2)用户行为合并
原始数据中,用户的行为是每行一条数据,无法形成行为序列,所以这里加一步中间数据的处理,便于分析用户的商品浏览到购买的全流程行为。给的文件字段说明,是'user_id','sku_id','time','model_id','type','cate','brand' 七个字段,但解析的过程中发现,有不少记录按照逗号分割后,是6个,例如:
266079.0,138778,2016-01-31 23:59:02,,1,8,403
266079.0,138778,2016-01-31 23:59:03,0,6,8,403
200719.0,61226,2016-01-31 23:59:07,,1,8,30
追查后,发现是第一步处理时导致部分空值丢失。。所以重写编写了脚本,这里一并完成user_id的处理在脚本中实现。
(2.1)用户维度聚合
(2.2)用户维度,同一个商品的行为序列再次聚合,一个商品一个元组
(3)正样本提取
先明确一下正负样本的定义:
正样本:有过非购买行为,且有购买行为的用户记录(针对同一商品)
负样本:有过浏览等行为,但最终没有购买行为的用户记录
初步的目标,就是从有非购买行为,且有购买行为的用户中,分析出其中隐藏的规律,并利用这个规律,对其他有行为的用户进行购买行为的预测