一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 919|回复: 25
收起左侧

[DataScience] 求做过sales prediction的大神分享经验

[复制链接] |试试Instant~ |关注本帖
victorsterling 发表于 2015-11-10 08:50:24 | 显示全部楼层 |阅读模式
100小米
小弟最近在做一个project,简单来说就是预测未来6个月100多家商店的销售额。
现有的数据就是过去5年这个100多家商店的销售情况。


经过我的前期数据处理,可以把training set 转化成以下n*13的矩阵,每一列feature分比为:
StoreDayOfWeekDateSalesCustomersOpenPromoStateHolidaySchoolHolidayStoreTypeAssortmentcompetition_valuepro2


然而实际上,前三列是作为id,个人认为不需要导入model,这三列数据我已经在对数据的前期处理使用过了。 而sales是我们所期望预测的数据,customers是不相关的数据。

所以说,training set 的 features也就是剩下的那些8个features。分别是:
open: 是否开业,factor. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
promotion1: 促销1.factor
stateholiday: 节日,factor
schoolholiday: 节日,factor
storetype: factor.1point3acres缃
assortment:factor
competition_value: numeric, 代表这家店所面临的竞争。
promotion2: 促销2. factor


个人现在的计划是打算用linear regression, SVM, regression decision tree是尝试一下。

但我搜索各种相关资料的时候,并没有发现太多有关这个问题的文献。


希望各位大神给提出意见,或者相关的资料文献。在这里先谢谢大家。
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
所有参与讨论的人都有大米送上。

最佳答案

查看完整内容

首先SVM是不行的因为这是一个回归问题,linear regression,decision tree一般结果会比较差,一般我只会在stack的时候用。推荐用gradient boost和random forest 介绍一个library,里面所有方法都有归档,还自带ensemble,可以慢慢挑: http://topepo.github.io/caret/index.html 总体来说这个项目比较难,一个对Feaure engineering的要求比较高,处理各种时间变量和factors很麻烦,还有一个目标的variance极大,Public LB 10% ...

本帖被以下淘专辑推荐:

RARARAAAAA 发表于 2015-11-10 08:50:25 | 显示全部楼层
首先SVM是不行的因为这是一个回归问题,linear regression,decision tree一般结果会比较差,一般我只会在stack的时候用。推荐用gradient boost和random forest.鏈枃鍘熷垱鑷1point3acres璁哄潧
介绍一个library,里面所有方法都有归档,还自带ensemble,可以慢慢挑:
http://topepo.github.io/caret/index.html

总体来说这个项目比较难,一个对Feaure engineering的要求比较高,处理各种时间变量和factors很麻烦,还有一个目标的variance极大,Public LB 10%的误差,感觉指不定到Private LB上就大于15%了,反正我有很多次碰到,有的时候Cross Vaildation error 比train error 还低,有的时候Cross Validation error 到20%--30%就不会再降了,巨恶心,我已经放弃了。

评分

1

查看全部评分

回复

使用道具 举报

wilsoj 发表于 2015-11-10 09:04:02 | 显示全部楼层
不知道你用什么语言
用R的话,有个rminer的包可以一次跑N个模型
然后出模型结果对比。。. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
https://cran.r-project.org/web/packages/rminer/index.html

评分

1

查看全部评分

回复

使用道具 举报

 楼主| victorsterling 发表于 2015-11-10 09:20:40 | 显示全部楼层
wilsoj 发表于 2015-11-10 09:04. more info on 1point3acres.com
不知道你用什么语言
用R的话,有个rminer的包可以一次跑N个模型
然后出模型结果对比。。

对,用的就是R

数据量略大,我前期处理,就从中午跑到晚上才跑完。
回复

使用道具 举报

 楼主| victorsterling 发表于 2015-11-10 09:31:43 | 显示全部楼层
wilsoj 发表于 2015-11-10 09:04
不知道你用什么语言
用R的话,有个rminer的包可以一次跑N个模型
然后出模型结果对比。。

这个连每个model的best parameters也可以直接自己挑出来?
回复

使用道具 举报

wilsoj 发表于 2015-11-10 10:59:32 | 显示全部楼层
victorsterling 发表于 2015-11-10 09:31
这个连每个model的best parameters也可以直接自己挑出来?

一年前用过的,记不大清楚能不能调参数了。。。
R的包都有说明文件,研究一下吧。。。
回复

使用道具 举报

zhugejun 发表于 2015-11-10 11:31:15 | 显示全部楼层
kaggle competition...
回复

使用道具 举报

 楼主| victorsterling 发表于 2015-11-10 12:25:59 | 显示全部楼层
-google 1point3acres
对,我把这个作为我machine learning那门课的project. 1point 3acres 璁哄潧

大神有啥建议欢迎分享哈2333333333
回复

使用道具 举报

kevin5555 发表于 2015-11-12 02:01:15 | 显示全部楼层
我现在做的就是类似这个的,变量很像,不过最后要求顾客流失情况。我准备用R的regression tree做一次,然后再用sas建regression model做一次。看看哪个好,欢迎一起交流

评分

1

查看全部评分

回复

使用道具 举报

 楼主| victorsterling 发表于 2015-11-12 05:33:03 | 显示全部楼层
kevin5555 发表于 2015-11-12 02:01
我现在做的就是类似这个的,变量很像,不过最后要求顾客流失情况。我准备用R的regression tree做一次,然后 ...
.鏈枃鍘熷垱鑷1point3acres璁哄潧
我也打算考虑用这个,话说还有人说random forest也可以做?. more info on 1point3acres.com
回复

使用道具 举报

childman 发表于 2015-11-15 10:07:26 | 显示全部楼层
这学期在上data mining 课,老师正好拿来这个作为一次作业。基本上就是linear regression, ridge regression, lasso regression 还有 neural network model都跑了一下。然后每个模型R都有对应的package来求最优参数,以及summary之类的。不过我们做的时候并没有舍弃dayofweek以及date这两列。。。

评分

1

查看全部评分

回复

使用道具 举报

rushiwowen92 发表于 2015-11-15 10:51:10 | 显示全部楼层
我也做的是kaggle的哎,只不过选了不一样的题目,确实数据太多了,每次都跑好久担心电脑要崩,话说岂止random tree可以,Decision Tree, Boot Strap Forest, Neural, stepwise统统都行~

评分

1

查看全部评分

回复

使用道具 举报

 楼主| victorsterling 发表于 2015-11-15 11:43:28 | 显示全部楼层
rushiwowen92 发表于 2015-11-15 10:51
我也做的是kaggle的哎,只不过选了不一样的题目,确实数据太多了,每次都跑好久担心电脑要崩,话说岂止rand ...

导入全部数据跑model,我的电脑已经跑了24个小时了,依旧再跑
回复

使用道具 举报

RARARAAAAA 发表于 2015-11-16 13:11:33 | 显示全部楼层
本帖最后由 RARARAAAAA 于 2015-11-18 16:13 编辑

其实我也没事做这个,有机会大家可以组队做。。。
https://www.kaggle.com/ys1993100
回复

使用道具 举报

 楼主| victorsterling 发表于 2015-11-18 21:46:02 | 显示全部楼层
RARARAAAAA 发表于 2015-11-18 16:12
首先SVM是不行的因为这是一个回归问题,linear regression,decision tree一般结果会比较差,一般我只会在s ...

前辈怎么解决数据量很大,跑model跑起来很慢的问题啊??
回复

使用道具 举报

 楼主| victorsterling 发表于 2015-11-18 21:48:35 | 显示全部楼层
RARARAAAAA 发表于 2015-11-16 13:11
其实我也没事做这个,有机会大家可以组队做。。。
https://www.kaggle.com/ys1993100

大神,我怎么加你为好友啊
回复

使用道具 举报

RARARAAAAA 发表于 2015-11-19 11:09:32 | 显示全部楼层
victorsterling 发表于 2015-11-18 21:48. 1point3acres.com/bbs
大神,我怎么加你为好友啊
. Waral 鍗氬鏈夋洿澶氭枃绔,
我也不知道啊,好像没这功能,其实我也是渣渣,瞎做做而已,kaggle上牛人太难多了
回复

使用道具 举报

RARARAAAAA 发表于 2015-11-19 11:10:23 | 显示全部楼层
victorsterling 发表于 2015-11-18 21:46
前辈怎么解决数据量很大,跑model跑起来很慢的问题啊??

你用的什么library跑啊,有些library是很慢的。毕竟80w个数据呢
回复

使用道具 举报

 楼主| victorsterling 发表于 2015-11-19 11:34:18 | 显示全部楼层
RARARAAAAA 发表于 2015-11-19 11:10
你用的什么library跑啊,有些library是很慢的。毕竟80w个数据呢

我用了跑 svm的library(e1071) 很慢,其它还没有试,不过估计都很慢的吧?
. 1point 3acres 璁哄潧
大神一般要跑多久?
回复

使用道具 举报

 楼主| victorsterling 发表于 2015-11-19 11:37:10 | 显示全部楼层
RARARAAAAA 发表于 2015-11-18 16:12
.鏈枃鍘熷垱鑷1point3acres璁哄潧首先SVM是不行的因为这是一个回归问题,linear regression,decision tree一般结果会比较差,一般我只会在s ...

SVM为什么不行呢? SVM不是也可以做regression的吗?
回复

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-6 03:03

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表