题目复述
- 我抓重点讲
- 题目的意思有一个公司开发了一个APP,分发任务给人去拍某种商品的照片,去拍照的人可以收取一些佣金。
- 然后这些佣金有高低之分,我们第一问要做的就是找到这些佣金高低的规律。
- 其中有一些任务未完成,我们第二问要做的就是,找到未完成的原因,并且重新建立一个模型,使得花费佣金最少,完成情况最好。
- 然后第三题说的是很多任务比较密集,其实可以打包发布,那怎么个打包法呢?
- 第四题给出了很多新项目,想办法给新项目定个价呗。
小归纳
- 第一问是问题的基石,分析清楚第一问,后面的会好解答很多。
- 总的来说,这个问题是一个非常经典的数据学习统计问题,现在就开始来慢慢分析。
数据长啥样
首先组委会给咱的数据是长这样的
- 这是描述任务的
- 这个是APP会员的数据
问题1:定价规律
A. 我们要以公司的角度来思考,因为价格是公司定的
- 那公司一开始能拿到的数据有哪些呢?
- 首先公司有会员的全部数据
- 其次公司应该有各个任务的位置。
- 有了这些我们头脑风暴一下,思考到底公司会怎么取定价
- 附近会员越多肯定定价就越便宜,因为会员一下就能去那拍照了。
- 附近任务越密集,肯定也越便宜,因为会员在那转一圈就能解决很多个任务。
- 不同城市有不同的分部,那有可能不同城市有不同城市的定价规则呀。
- 越偏僻,越难去的地方价格按理说会越高。
B. 为了应证我们的观点,我们要对数据进行可视化
B1. 首先我们来看任务分布的城市
B2. 其次我们来看任务的价格(越黑越高)
B3. 我们再来看看会员的城市分布
B4. 在把会员和价格给整合在一起
是不是明显的能看到,会员越多,价格越低。
B5. 我们再单独把价格拎出来
- 首先我们发现,价格其实非常的有层次感。大体可以分为6个层次,65的、65到70的,70到75的,75到80的,80到85的,正好85的。(这说明公司对于任务的某个属性(假设为难度)进行了分层)
- 其次,价格并没有出现很细分的小数,反而都是整数或者xx.5,这说明价格应该是由一个规划好的阶梯式分段函数构成。
综上所述,我们来观测一下这些个变量对于整体模型的影响
- 难度 d i d_i di = 1,2,3,4,5,6,分别对应上面的各个层次。
- 任务密集度 t d i ( x / 9 π k m 2 ) td_i(x/9πkm^2) tdi(x/9πkm2)(经高斯回归法测试,半径为3时,均方误差RMSE达到最小,说明半径为3的任务密集度和价格较为相关(非常不严谨))。
- 会员密集度 m d i ( x / 9 π k m 2 ) md_i(x/9πkm^2) mdi(x/9πkm2),每个任务半径为3公里内有多少个会员。
- c i c_i ci = 1,2,3,4分别代表广州、深圳、佛山、东莞。
我们要生成新的数据,就
- 要知道任务间的距离,需要把经纬度化成直角坐标系,这个过程需要写出,在此省略。
- 需要获得每个坐标的城市,这里我们访问了这个网站,获得了这些数据
于是就把这几个参数丢到高斯回归里面跑呗,看看RMSE的情况
- 四个参数全跑可以达到0.84127
- 去掉城市跑0.84443
- 去掉任务密集度跑0.85319
- 去掉会员密集度跑0.87931
- 去掉难度系数跑3.5543
得到的结果可以说城市其实没啥用,难度系数是最重要的
难度系数单跑都能跑出0.99928。
最准确的版本
- 按照高斯回归建模型也可以,但是准确率还是有点差强人意。
- 而且价格上,也没有达成那种阶梯式的情况。
做到这个地步只能说明价格和这几个因素是密切相关的
问题2
数据可视化
灰色小点代表完成,黑色代表完不成,四个颜色分别代表四个城市。我们可以看到深圳的完成情况特别差,广州、佛山一般、东莞完成情况最好。
我们来看看具体的完成任务比
深圳的完成任务特别少,这是什么原因呢,是不是深圳会员特别少呢?
按很明显,就是深圳定价出现了问题,我们来观察一下各城市任务平均价格。
回到我们刚才对于规律的分析,为什么深圳的任务平均价格最低呢?
- 这是因为深圳非常小,而由于经济发达,人口密度非常大,这就导致了会员非常集中,这样人物的定价当然就低了,但是
- 深圳的人均GDP是全广东省最高,这意味着深圳人的收入高,收入预期也更高,低价无法使他们有动力去完成任务。
- 所以我们在建立新模型的时候,应该充分考虑每个城市的人均GDP以及人口密度,于是新模型呼之欲出。
- 以下略。