Awesome
CCF-StateGrid--用电异常行为识别
本次比赛TNT_000队伍获得二等奖。总体思路如下:
1.特征思路
按照时间划分的基础属性特征(B:Base):
● 用户每1/2/3/4/5周的用电量和,电表起始度数和,电表终止度数和,用户记录数
● 用户每2/3/4/5/6天的用电量和,电表起始度数和,电表终止度数和,用户记录数
按照时间划分的用户用电前后相似度特征(S:Similarity):
● 用户每4/5周前后两个时间段的用电量、电表起始度数、电表终止度数、用户记录数PCC相似度
● 用户每4/5周前后两个时间段的用电量、电表起始度数、电表终止度数、用户记录数余弦相似度
按照时间划分的用户Pooling特征(P:Pool):
● 用户用电记录按照时间构成28*37二维矩阵,一维代表时间,一维代表用电量。
● 按照2*2的大小对矩阵进行取最大值,平均值,标准差统计
● 按照3*3的大小对矩阵进行取最大值,平均值,标准差统计
按照时间划分的用户统计特征属性(D:Describe):
● 用户每1/2/3/4/5周的用电量,电表起始度数,电表终止度数,用户记录数的统计特征
● 用户每2/3/4/5/6天的用电量,电表起始度数,电表终止度数,用户记录数的统计特征
● 统计特征有最大,最小,均值,方差,异常值个数,中位数等等
2.模型:
● Xgboost 单模型(B+D) cv-3 线下0.914 线上0.92244
● Xgboost 单模型(B+S+D) cv-3线下0.915 线上0.92288
3.文件解释:
../stateGrid/
- feature:放置特征文件夹
- matrixFeature:B特征文件夹
- description:D特征文件夹
- stack:stack结果文件
- trend:S特征文件夹
- data:放置原始数据及原始数据预处理
- importance:xgb对特征重要性评价文件
- src:源代码文件
- excute.py 配置文件及执行文件
- function.py 构造特征函数文件
- model.py 模型相关函数文件
- result:结果文件
- model:模型文件