商品交易价格预测分析
1、项目描述
商品交易价格预测模型使用python语言开发建立,使用统计预测方法对数据进行清洗,采用线性回归、随机森林等多种方法对数据进行回归分析,采用MAE评价指标对模型进行评价,使用网格搜索需求最优解,加权融合多种模型优化建模结果,实现对商品交易价格精准回归预测的目标。
2、项目背景
随着互联网技术的蓬勃发展,传统的商品销售逐渐转向线上销售模式。发展迅猛的线上电商平台为人们带来便利的同时,也让消费者对线上的商品价格波动产生困惑。特别是对于二手商品交易市场而言,其商品价格边界更加模糊,容易使得消费者产生抵触心理,也让线上二手商品交易平台难以安排合理的销售决策。为了明确价格波动趋势,从而辅助平台制定合理的销售策略,消除消费者抵触心理,增强用户黏度,本项目使用机器学习算法对某二手车交易平台数据进行了数据挖掘,建立了商品交易价格预测模型。
3、项目介绍
本项目数据来自某交易平台的二手车交易记录,总数据量超过40w,包含31列变量信息,其中15列为匿名变量。数字全都脱敏处理,都为label encoding形式,即数字形式。
字段表如下:
Field | Description |
---|---|
SaleID | 交易ID,唯一编码 |
name | 汽车交易名称,已脱敏 |
regDate | 汽车注册日期,例如20160101,2016年01月01日 |
model | 车型编码,已脱敏 |
brand | 汽车品牌,已脱敏 |
bodyType |
车身类型:豪华轿车:0,微型车:1,厢型车:2,大巴车:3,敞篷车:4,双门汽车:5,商务车:6,搅拌车:7 |
fuelType | 燃油类型:汽油:0,柴油:1,液化石油气:2,天然气:3,混合动力:4,其他:5,电动:6 |
gearbox | 变速箱:手动:0,自动:1 |
power | 发动机功率:范围 [ 0, 600 ] |
kilometer | 汽车已行驶公里,单位万km |
notRepairedDamage | 汽车有尚未修复的损坏:是:0,否:1 |
regionCode | 地区编码,已脱敏 |
seller | 销售方:个体:0,非个体:1 |
offerType | 报价类型:提供:0,请求:1 |
creatDate | 汽车上线时间,即开始售卖时间 |
price | 二手车交易价格(预测目标) |
v系列特征 | 匿名特征,包含v0-14在内15个匿名特征 |
本项目建立的商品价格预测模型采用MAE评价指标。
本项目通过机器学习算法实现了一个对二手车交易价格的预测模型,旨在解决人们二手车交易价格波动认识较为模糊的问题。通过本模型的预测,平台用户能够较为理性的认识交易价格波动,从而消除因对商品价格波动认识模糊而产生的抵触心理;平台管理者则能够依靠预测结果根据用户个人需求合理进行销售策略的安排和制定,实现商品销售的个性化和定制化。
4、项目流程
项目流程图如下图所示。
5、项目成果
-
数据分析
缺失值查询。将原始数据中存在空缺的部分筛选出来,下图中白色条纹即为存在缺失值。
价格数据分布查看,属于无界约翰逊分布。
频数统计。
相关性分析。
特征间关系。
-
特征工程
- 异常处理:
- 通过箱线图(或 3-Sigma)分析删除异常值;
- BOX-COX 转换(处理有偏分布);
- 长尾截断;
- 特征归一化/标准化:
- 标准化(转换为标准正态分布);
- 归一化(抓换到 [0,1] 区间);
- 针对幂律分布,可以采用公式: log(1+x1+median)log(1+x1+median)
- 数据分桶:
- 等频分桶;
- 等距分桶;
- Best-KS 分桶(类似利用基尼指数进行二分类);
- 卡方分桶;
- 缺失值处理:
- 不处理(针对类似 XGBoost 等树模型);
- 删除(缺失数据太多);
- 插值补全,包括均值/中位数/众数/建模预测/多重插补/压缩感知补全/矩阵补全等;
- 分箱,缺失值一个箱;
- 特征构造:
- 构造统计量特征,报告计数、求和、比例、标准差等;
- 时间特征,包括相对时间和绝对时间,节假日,双休日等;
- 地理信息,包括分箱,分布编码等方法;
- 非线性变换,包括 log/ 平方/ 根号等;
- 特征组合,特征交叉;
- 仁者见仁,智者见智。
- 特征筛选
- 过滤式(filter):先对数据进行特征选择,然后在训练学习器,常见的方法有 Relief/方差选择发/相关系数法/卡方检验法/互信息法;
- 包裹式(wrapper):直接把最终将要使用的学习器的性能作为特征子集的评价准则,常见方法有 LVM(Las Vegas Wrapper) ;
- 嵌入式(embedding):结合过滤式和包裹式,学习器训练过程中自动进行了特征选择,常见的有 lasso 回归;
- 降维
- PCA/ LDA/ ICA;
- 特征选择也是一种降维。
-
建模调参
采用回归模型进行建模,使用交叉验证对模型进行评测,并绘制学习率曲线和验证曲线。通过网格搜索方法进一步寻找模型最优参数。
-
模型融合
使用简单加权融合进一步优化模型,并通过交叉验证等方式搜索最优权重,通过MAE对模型结果进行验证。通过融合得到的MAE如下:
MAE of Weighted of val: 730.877443666 Sta inf: _min -2816.93914153 _max: 88576.7842223 _mean 5920.38233546 _ptp 91393.7233639 _std 7325.20946801 _var 53658693.7502
远远优于简单线性回归的2597.45638384
6、项目总结
本项目采用商业数据进行数据挖掘,实现了对商品交易价格的预测。项目通过现有机器学习算法将实际数据进行分析挖掘,辅助了行业商品的销售决策,真切地将数据价值进行了挖掘利用,将数据转化为决策资源。帮助平台实现了根据用户不同需求定制个性化销售策略,有效地消除了用户因价格波动产生的抵触心理,增强了平台用户黏度,提升了平台业内口碑。