天池公交客流预测比赛

赛题与数据

竞赛题目

本次大赛要求选手根据广州市内及广佛同城公交线路的历史公交刷卡数据,挖掘固定人群在公共交通中的行为模式。建立公交线路乘车人次预测模型,并用模型预测未来一周(20150101-20150107)每日06时至21时每小时段各个线路的乘车人次。Part2将更换一批新数据。

大赛开放20140801至20141231五个月广东部分公交线路岭南通用户刷卡数据,共涉及近200万用户2条线路约800多万条数据记录。同时大赛提供20140801至20150131期间广州市的天气状况信息。

数据说明

乘车刷卡交易数据表(gd_train_data)

列名

类型

说明

示例

Use_city

String

使用地

广州

Line_name

String

线路名称

线路1

Terminal_id

String

刷卡终端ID

4589bb610f9be53a43a7bc26bb40e44d

Card_id

String

卡片ID

8ce79e0b647053f191d20c5552eb49f0

Create_city

String

发卡地

佛山

Deal_time

String

交易时间(yyyymmddhh)

2014091008

Card_type

String

卡类型

学生卡

 

公交线路信息表(gd_line_desc)

列名

类型

说明

示例

Line_name

String

线路名称

线路1

Stop_cnt

String

线路站点数量

24

Line_type

String

线路类型

广州市内/广州佛山跨区域

 

广州市天气状况信息(gd_weather_report)

列名

类型

说明

示例

Date_time

String

日期

2014/8/1

Weather

String

天气状况(白天/夜间)

小雨

Temperature

String

气温(最高/最低)

36℃/26℃

Wind_direction_force

String

风向风力(白天/夜间)

无持续风向≤3级/无持续风向≤3级

 

预测数据集为这些公交线路在20150101-20150107每个线路每日06时至21时各个小时段的乘车人次总和。(注:21时指的是21:00-21:59这个时间段

选手需要提交结果表(gd_predict.txt)

列名

类型

说明

示例

Line_name

string

线路名称

线路1

Deal _date

string

日期

20150101

Deal_hour

string

小时段

08

Passenger_count

bigint

乘车人次

1234

 

提交文件示例

文件需用UTF-8字符编码;提交的文件内容格式如下,或参见文件sample_for_offline.txt。

 

 

评估指标

评估指标的设计主要期望选手对未来一周(20150101-20150107)每天06时至21时每个小时段各个线路乘车人次的总量数据预测的越准越好,积分公式的计算方法:计算每天每个小时段各个线路预测值的相对误差,然后根据用户预测乘车人次的相对误差,通过得分函数映射得到每个预测记录的得分,最后将所有预测记录得分求和除以理想状况的满分,得到最终评分。

 

关键解决方案:

首先对数据做了整合,原始数据是200多万用户的刷卡信息800万条左右,要整合成2条线路各个时间段的客流,整合之后也就7200条左右,其中有一些缺失的天气数据,取的是前后两天的平均值。

天气特征类似小雨、晴天,还有线路类型,卡类型这种按照分类进行独热编码处理,时间天数按照1-7分类,小时段按照1-24分类,站点数量,风力,温度这种直接就是数值化,再求均值除方差归一化

天气后来也加上了数值化,取的是该种天气的乘车人次/总的乘车人次 ,相当于一个占比。

每一个时间段取了前三天的前三个时间段也就是九个特征,相当于构造了九个特征,对于要预测的时间段,由于前三天的流量也是预测值,不适合做特征,所以取的是前一个星期的同一天的前三天的数据。

  • 根据过去五个月公交线路刷卡数据,预测未来一周各个公交线路每日06时至21时乘车人次。
  • 数据中时间根据每星期1-7天分类,将天气及其它特征做数值化以及热编码处理,按照时间段窗口构造特征数据集。
  • 通过随机森林和GBDT实现预测,取两个模型的结果进行组合,准确率79.21%,top30.
posted @ 2017-04-08 12:09  fisherinbox  阅读(1780)  评论(2编辑  收藏  举报