作者:广州大学IStar战队

1、赛题理解和数据探索

第五题拿到的数据这回黑白标签样本都有了,但是除了标签外训练数据还有其他的 fqdn,查了下有些是属于 cdn 环境的域名,需要先对数据处理下,以及从测试集中筛选一批 fqdn来预测黑白域名。
第一件事合并数据(access数据,没有合并 ip 表格数据)

将所有表格数据合并后的训练集一共有 1988 个,而其中只有 1760 个能匹配到 access表的对应数据。为了保证特征的不缺失,最后训练集只留下 1760 个具备完整特征的样本。同 样从测试集筛选出的样本数有 8802 个,后来发现在 8802 中其实已经包括了训练集的标签 数据,猜测其实测试数据和训练数据其实是一份数据罢了。
也就是综述我们目前有的训练样本数量是 1760 需要测试的样本数量是 7042,目标二分类。
明确目标就开始构造和第四题差不多的特征了。
预处理对域名和 IP 进行切割

2、特征工程

1、对 hour,day, request_cnt/total_request,ip_cnt 数值特征统计最大、最小,均值,方 差,中位数等特征
2、对’ encoded_fqdn_last、encoded_value、encoded_value_first 做 nunique 和 count 特 征,
3、对’hour’, ‘day’, ‘request_cnt’,’requestCnt’,’ip_cnt 做分位数特征,刻画不同时段的变化情 况
4、对’encoded_fqdn’,’day’,’hour’,’encoded_fqdn_first’,encoded_fqdn_last, encoded_value_first, 等类别特征做 value_counts()统计 并对它们的’ ip_cnt’,’request_cnt’,’requestCnt’ 等统计刻画
5、类别交叉特征 ,提取[‘ encoded_value_first’, ‘encoded_fqdn_last’]等类别的统计他们的 共现次数、unique、熵、比例偏好的特征
6、将数据按时间排序后 以一个 fqdn 为一个文章,他的(encoded_value )脱敏前缀作为单词 合并,统计 tfidf、count 降维形成 20 维和 w2c 20 维的向量。

3、模型预测

总共特征 200 余个,本次模型采用 lgb 和 cat 模型分别预测然后 0.5 权重加权融合的结果, 其中 lgb 的特征选用了除了 tfidf、count 和 w2c 特征外的统计特征进行预测。而 catboost 则使用部分统计特征和 tfidf、count 和 w2c 进行预测。两者的结果加权融合。

4、总结

本次只对access表的fqdn数据进行了预测,分数就已达到83+,后续优化方向再考虑flint的fqdn部分效果应该效果会更好

Categories:

Comments are closed