Kaggle知识点:时序数据与Embedding

时序数据与Embedding

在最近查看腾讯赛赛题介绍的时候突然发现赛题有点熟悉,进而在看渔佬对今年腾讯赛分享,以及大白对DCIC海洋赛的比赛总结时,思路逐渐清晰:所有的时序序列都可以用Embedding的操作。

本文将以几个历史比赛案例(按照参赛的时间排序),讲解时序数据与Embedding的应用场景。文章末尾将介绍与腾讯赛相似的几个历史赛题。

01 蛋白质序列

第一次在非典型NLP领域看到Embedding是在“基于人工智能的药物分子筛选”比赛中,这个比赛任务是根据蛋白质序列来预测蛋白质和小分子之间的亲和力数值。

Kaggle知识点:时序数据与Embedding_第1张图片

这个开源还是小伍哥的开源,使用蛋白质序列训练一个词向量,然后使用LightGBM进行训练。小伍哥在2年前都这么帅了,赞!

texts = [[word for word in re.findall(r'.{3}',document)] 
               for document in list(protein_concat['Sequence'])]


model = Word2Vec(texts,size=n,window=4,min_count=1,negative=3,
                 sg=1,sample=0.001,hs=1,workers=4)

这是一个两年前的比赛,当然Top获奖方案还是需要使用一些领域知识。所以在没有领域知识的情况下或许无脑Embedding是一个不错的选择。

小伍哥的分享:

https://www.pkbigdata.com/common/bbs/topicDetails.html?tid=1025

B榜第三名的分享:

https://www.pkbigdata.com/common/bbs/topicDetails.html?tid=1377

02 病毒序列

第二次在非典型NLP比赛中到Embedding是在“第三届阿里云安全赛”中,这个比赛任务是需要根据程序的API序列进行分类。

Kaggle知识点:时序数据与Embedding_第2张图片

这场比赛我参加过,也因此在线下赛认识了大白。安全赛中也是不同的病毒API是一个单词,执行序列组成一个样本。

但是在这个比赛中,由于API个数比较少,所以Embedding反而没有TF-IDF有效。当然在stacking阶段,Embedding也是有提升的。

03 船舶序列

最近一次是在最近结束的DCIC海洋赛中看到了Embedding,这也是一个非典型的NLP比赛,赛题任务需要根据渔船的运动轨迹进行行为分类。

Kaggle知识点:时序数据与Embedding_第3张图片

这场比赛大白也参加了,每个渔船id的速度、经纬度看做是一个序列信息,利用速度、经纬度的分位数统计量,将浮点特征分桶转成一个类型特征。

使用深度学习的word2vec的CBOW算法无监督训练,获取经纬度(x-y)和速度(speed)的类型向量,每个渔船id的经纬度和速度向量取平均作为特征,这个思路和Fasttext比较类似。

大白的分享:

【时序多分类赛题】2020数字中国创新大赛-智慧海洋建设top5方案(含源码)

04 APP序列

最近一次是在易观用户性别年龄预测比赛中遇到,这也是一个非典型的NLP比赛,赛题任务需要根据用户手机APP使用序列来对用户的年龄和性别进行分类。

Kaggle知识点:时序数据与Embedding_第4张图片

在易观这场比赛中,chizhu获得了冠军,我是亚军。这场比赛的核心也是APP序列建模,使用Embedding构建特征。

chizhu在易观的分享:

https://github.com/chizhu/yiguan_sex_age_predict_1st_solution

看到这里,有没有发现本次腾讯赛的赛题也是这个路子。大赛的题目尝试从另一个方向来验证这个假设,即以用户在广告系统中的交互行为作为输入来预测用户的人口统计学属性。

如果你参加了本次腾讯赛,chizhu 的分享可以参考。Coggle数据科学也会持续关注,大家一起学起来~

往期精彩回顾




适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑AI基础下载(pdf更新到25集)机器学习的数学基础专辑本站qq群1003271085,加入微信群请回复“加群”获取一折本站知识星球优惠券,复制链接直接打开:https://t.zsxq.com/yFQV7am喜欢文章,点个在看

你可能感兴趣的:(Kaggle知识点:时序数据与Embedding)