4月30日,2021腾讯广告算法大赛初赛已经正式拉开帷幕。2021腾讯广告算法大赛由腾讯广告主办,腾讯云AI、腾讯大数据、腾讯招聘、腾讯高校合作以及英伟达联合主办。TI-ONE与英伟达共同支持AI算法平台,同时与腾讯大数据Angel全栈机器学习平台共同提供算法资源支持。
与此同时,本届赛事与计算机国际学术顶会ACM Multimedia强强联合,围绕视频广告开设的两大赛道,已成功入选2021年ACM MM grand challenge,国际影响力进一步提升。
为助力选手更好参与赛事,腾讯广告算法大赛特邀前排选手进行上分思路分享。本次我们邀请到的是赛道一第一、二周的周冠军来给我们分享一下他的做题思路。
大家好,我是赛道一前两周的周冠军。今天很荣幸有机会和大家分享一下比赛经验心得。在此次本赛中我并没有使用官方提供的baseline,主要还是因为我不是一个TFboy,把握不住baseline,所以就选择了放弃baseline,自己重新写了一个。接下来主要讲下我大概是如何做这道题目的。
01数据说明
这里我并不会介绍所有的数据,因为有很多数据是冗余的,也有一些是用不到的。因此,我只介绍我们需要的所有数据,分别是视频,文本和标注。
视频:
algo-2021/dataset/videos/train_5k_A.zip
algo-2021/dataset/videos/test_5k_A.zip
文本:
algo-2021/dataset/tagging/tagging_dataset_train_5k/text_txt
algo-2021/dataset/tagging/tagging_dataset_test_5k/text_txt
标注:
algo-2021/dataset/structuring/GroundTruth/train5k.txt
02特征抽取
因为刚开始比赛,我并没有使用太多的模态,只使用了文本和视频特征,对于音频特征,之后会进行尝试。
对于文本特征,我们不需要太多的操作,直接使用huggingface的hfl/chinese-roberta-wwm-ext预训练模型就行,base和large的模型都试过了,最后还是base的好。
对于视频特征,我们可以使用baseline或者在Github找,相关的工作也有很多,最后找了一个,使用Ti-one的一张V100,处理1万的视频大概4个小时。最后得到的视频特征形式是[L*fps,dim]的特征矩阵,其实L是视频的时长,fps表示每秒采样多少个特征。做完这些准备工作后就能进行下一步了。
03分段
在分段任务中我们直接使用视频特征,也就是[L*fps,dim]的特征矩阵。我们根据标注数据(algo-2021/dataset/structuring/GroundTruth/train5k.txt),得到{x0,x1,..,xn}的转幕点,然后把这些转幕点映射到[L*fps,dim]的特征矩阵,得到长度为L*fps的01向量,其中1表示转幕点。最后通过卷积网络,对每一个特征进行二分类。预测时根据阈值,得到不同的幕。最后,对于测试集的一个视频,我们可以得到k个幕[(t_s1, t_e1),(t_s1,t_e1),…(t_sk,t_ek)].
04分类
对于分类,我们首先使用标注数据得到训练集的所有幕和类别。然后根据幕的起止时间从[L*fps,dim]的特征矩阵中获得相应部分的视频特征[L’,dim],最后将这视频特征和文本特征联合起来进行分类即可。
预测时,我们使用第3节中得到的所有预测的幕,然后进行分类。最后使用阈值或者topk的方式,得到每一幕的可能类别。提交时,将同一视频的结果全部合并起来就好。
看完双周冠军的分享,大家是否也对比赛更有信心了呢?想要获取更多TIONE教程,点击“赛事专题”,进入智能钛AI开发者社区,轻松玩转大赛,赢取百万奖金!