快讯|大数据挑战赛周周星评选已出炉,比赛继续等你来战!

2b1f94333f7ef3cbc0e53850ebb0c727.png

7月3日,中国高校计算机大赛-大数据挑战赛进入到了初赛阶段周周星的奖项评选环节,通过对参赛选手在线提交结果的实时测评(以3日12点的Public榜成绩为准),第一周周周星在校生队伍和在职队伍成绩最优的名单已出炉(见下图),恭喜获奖的两支队伍!

2ef3c99ee2f04483d4471fec85c4f618.png

获奖的两支队伍对大赛有哪些实战的经验呢,让我们一起听听他们的分享吧!

0686f9984e957be039e674170e0779d5.png队获奖经验分享

1) 数据全部都用了,共26440条(含测试集)。

2) 赛题理解

对正在运行的集群有若干监控系统

  1. 数值监控如nvidia-smi/top/du等,见metric表

  2. 系统日志(赛题中粗略看含有spring/mysql/hadoop/kafka/nvidia/ssh/mongodb等若干种类型),见log表

  3. 追踪日志(赛题中暂未发现调用图拓扑结构),见trace表

    根据上述信息,对该集群该时段的状态进行“多标签分类”(MultiLabel),需要注意的是,NO_FAULT应与其他类别互斥

3) 特征工程

从三张表的缺失率来看,trace是信息最完善的,其次是metric,再其次是log。

trace表:

timestamp ---> 描述性统计 std/skew/kurt (由于每个id的timestamp没法对齐,所以不做min/max/mean/ptp统计)

diff = endtime - starttime ---> mean/std/ptp (trace的调用时间差,是去量纲的,所有id都可比,所以进行mean/ptp统计)

timestamp/diff ---> 时序统计 autocorr/fft/angle (参考kaggle地震赛特征工程)

其他类别特征 ---> entropy, nunique, 以及合理的分布统计

metric表(没挖明白):

在数据修正后,只有52000(52*1000)和-1(缺失)两种长度,构建特征have_metric的二值特征。

对不同tag,在官方给出的解释中,相同tag可比,不同tag时间不可比,即相同timestamp只表示相对顺序,无法表示绝对顺序。

故groupby('timestamp')的特征应该是失效的,尝试构造groupby('tag')['timestamp']的统计特征,发现在线下也没有提升。

后续考虑使用复杂的方法挖掘,如arima,autoencoder等。

log表:

根据不同的服务类型,可以写多种模板判断在哪种类型中,分享一个可供参考的正则表达式:

spring_boot_pattern = re.compile(r"\s*(INFO|ERROR|WARN|DEBUG) \d+ --- \[(.*?)\] (.*?) : \[(.*?)\]\[(.*?)\]\[(.*?): (.*?)\]")

多种正则表达式让非结构化文本信息有损的转换为结构化信息,即我们可以使用message_collect来收集每一条的解析信息,后构造统计特征。

当然,我们也可以使用nlp的技巧,用海量数据训练word2vec/tfidf,对每个id的所有message计算w2v/tfidf的统计特征,但因为太慢,还没来得及试。

4) 模型选择

OVR + Tree,需要注意的是,sklearn并未支持其包裹模型的Early Stopping,换而言之,我们拿同一套参数跑所有的类别是不合理的,不同类别应该需要不同的树迭代数目,不同的参数。

最理想的情况是对每一种分类都搜索其最优参数,我们需要重写OVR函数,让model.fit(x, y)处加入对应模型的超参设置。

NN,数据天然适合神经网络,不需要多个模型,我们可以直接端到端训练模型。实验下来看,9个独立二分类要比concat更好。且比树模型的线上线下gap要低很多。

5) 对抗验证

将train的数据设置为1,test的数据设置为0,进行KFold二分类,发现auc在0.9以上,说明模型将测试集、训练集分的很开(肯定分布不同),所以线下线上的gap这么大。

将上述模型的特征重要性靠前的删除(即有效区分了训练集测试集,即分布差异大的),online是掉分的,猜测训练集或者测试集有部分noise数据(导致的差异大)。

6) 迭代

线下看,当NO_FAULT类别的auc`显著`提升时,该次提升是可信的。

在baseline的基础上,将3)中提到的特征工程实现并细化,可以到比较高的分~

ECNU-马千里获奖经验分享

非常荣幸能拿到大挑赛第一周的周周星,说实话这题的背景我还没有理解清楚,就非常简单的尝试了很多特征,碰运气到了前排。

我目前使用的特征较为朴素,跟蛇佬第一天发的baseline所用的方法类似。

Trace源

根据特征重要性来看,trace中start_time-end_time计算得出的差值所衍生的特征非常好用。另外,类别变量与数值型变量交叉能衍生极多特征,也能提升分数。

在这个数据源上,可以明显的看到训练集与测试集的分布偏移,所以需要做特殊处理。

下面是我的一些分析(训练集只取了第0个文件夹)

Count代表该service在几个样本上出现过,label_n代表该service上第n个标签的均值。可以看到有一个故障源在测试集的trace中从来没出现过, 不知道会对线上结果会有什么影响?

eba233bbb0adfdecfaf422023fd4d176.png 

d190eda7aad043fc13c2e77bcda12659.png

可以看到有些host_ip在测试集从来没出现过,但是不同host又代表了什么呢?

63a706f0cb71ad922000dc505158bee3.png 

68bb16de008453ab37b22d9791b0c891.png

Metric源

单用这一个数据源做出来的auc是0.5,所以或许这个源完全没有信息。可能是我提取特征的方式有问题。对于Metric特征需要注意的是,不同的序列量纲差距极大。我到现在还不清楚每个service以及value代表什么,因为同一个service内也有不同量纲的序列。我的猜测是量纲代表了不同的测量内容比如cpu利用率,service代表了不同的机子。我的分析是根据不同的service进行的,或许是错的,可能需要根据量纲来分析。

我查看过序列的稳定性,但是序列的稳定性和标签似乎无关。以下是几个例子:

对于ODI4MTMxNDkzODEzNTg5OTE4Mg==故障源,稳定的可能异常,不稳定的可能异常,大家可以多看几个样本,序列似乎跟标签没有关系。

d238f038-0d88-11ee-bbb5-525400d4ffe4和d238f222-0d88-11ee-bbb5-525400d4ffe4正常

952a5b4a2738f68d555626903b399c3c.png

d239614e-0d88-11ee-bbb5-525400d4ffe4和d2397e18-0d88-11ee-bbb5-525400d4ffe4异常

2ba1a97c8efba41af7ff988936a45e90.png

d0f0d71dc480b375db970cd122679de8.png661ae60f5ab507867fef79b822a17252.png 

抽取部分样本画到一起(红色代表异常,绿色代表正常,序列做了分段平均处理)

f38952987f8401e54a35b7eb5514f63e.png

52eddb4601166d28257ffe48fc273bab.png 

我看不出来什么有用的信息,所以目前我几乎没有提取metric的信息。

Log源

message这一列格式非常难提取,我尝试了提取关键词,但是没有明显的效果。但是service和timestamp两列所衍生的特征对结果有挺大的提升。具体做法是先用timestamp做差分,算出每条消息和下一条消息之间的时间差,然后按service分组,统计组内时间差的均值、方差等等。

讨论

我排查过大量异常样本,但是任何一个样本上,我人眼完全无法从Log、Metric源中发现任何异常,我还未理解业务背景,service、message、timestamp到底代表什么?为什么数据没有按照timestamp排序?

大赛组委会为每周的周周星获奖者提供了精美实用的礼品,包括清华活力校园时尚印花T恤、机械革命 耀·C510三模无线游戏手柄、罗技(Logitech)无线蓝牙超薄静音轻音键盘、罗技(Logitech)无线蓝牙鼠标。别再犹豫啦,快叫上你的小伙伴一起角逐吧!

722e1b174162c8cdd3a89f7a72d4caa0.png

目前,已有来自390多所高校和多家企事业单位的2300多人报名参赛,参赛选手可以继续从指定网站下载比赛的训练数据和测试数据,并在线提交结果,报名截止至7月24日12:00。相信幸运会降临在有准备的人,第二周的周周星获奖者也许就是你哦!

8b28d5b5d9ef5a1bbf22258fa8a6bb78.png

欢迎了解更多(数据派THU菜单栏-大赛入口)

• 大赛官网:http://nercbds.tsinghua.edu.cn/bdc/

• 大赛小程序:可赛

• 大赛邮箱:data@tsinghua.edu.cn

• 大赛 QQ 群:762146461 / 901317172

d0a4ecf23114ed2f534f7e3db71d67ca.png

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值