python数据分析:商品数据化运营(中)——基于参数优化的Gradient Boosting的销售预测

该博客探讨了使用GridSearchCV和GradientBoostingRegressor进行商品销售预测。GridSearchCV用于参数优化,GradientBoostingRegressor作为集成回归模型,处理包括限量信息、促销活动类型等10个特征的数据。案例中发现数据异常和高相关性特征,通过交叉验证得到的模型得分0.93,显示了模型的预测能力。
摘要由CSDN通过智能技术生成

本案例需要使用超参数交叉检验和优化方法GridSearchCV以及集成回归方法GradientBoostingRegressor

GridSearchCV与GradientBoostingRegressor

GridSearchCV

GridSearchCV用于系统地遍历多种参数组合,通过交叉验证确定最佳效果参数,其实就是穷举法,遍历所有组合。GridSearchCV,它存在的意义就是自动调参,只要把参数输进去,就能给出最优化的结果和参数。但是这个方法适合于小数据集,一旦数据的量级上去了,很难得出结果。

GradientBoostingRegressor

Gradient Tree Boosting或Gradient Boosted Regression Trees(GBRT)是一个boosting的泛化表示,它使用了不同的loss函数。GBRT是精确、现成的过程,用于解决回归/分类问题。Gradient Tree Boosting模型则用于许多不同的领域:比如:网页搜索Ranking、ecology等。

GBRT的优点是:

  • 天然就可处理不同类型的数据(=各种各样的features)
  • 预测能力强
  • 对空间外的异常点处理很健壮(通过健壮的loss函数)

GBRT的缺点是:

+ 扩展性不好,因为boosting天然就是顺序执行的,很难并行化

sklearn.ensemble通过GBRT提供了分类和回归的功能。

案例数据

以下是本数据集的10个特征变量,包括:

  • limit_infor:是否有限购字样信息提示,1代表有,0代表没有。
  • campaign_type:促销活动类型,分类型变量,值域为[0,6]代表7种不同类型的促销活动,例如单品活动、跨店铺活动、综合性活动、3C大品类活动等。
  • campaign_level:促销活动重要性,分类型变量,值域为[0,1],分别代表促销活动本身的不重要或重要性程度。
  • product_level:产品重要性分级,分类型变量,值域为[1,3],分别代表运营部门对于商品重要性的分级。
  • resource_amount:促销资源位数量,整数型变量,代表每次该商品在参加促销活动时有多少个资源位入口。
  • email_rate:发送电子邮件中包含该商品的比例,浮点型变量,值域[0,1],值越大代表包含该商品的电子邮件越多。
  • price:单品价格,整数型变量,代码商品在不同阶段的实际销售价格。
  • discount_rate:折扣率,浮点型变量,值域[0,1],值越大代表折扣力度越大。
  • hour_resouces:在促销活动中展示的小时数,整数型变量,值越大代表展示的时间越长。
  • campaign_fee:该单品的促销费用,整数型变量,值越大代表用于该单品的综合促销费用越高,这里面包含促销费用、广告费用、优惠券费用等综合摊派的费用。

目标变量:orders,代表该单品在每次活动中形成的订单量。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn.ensemble import GradientBoostingRegressor
from sklearn.model_selection import GridSearchCV
import warnings
# 图像在notebook中显示
%matplotlib inline
# 不显示提示
warnings.filterwarnings('ignore')

# 数据载入
df = pd.read_csv('https://raw.githubusercontent.com/ffzs/dataset/master/products_sales.txt')

# 数据的简单查看
df.head().T

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值