百度PaddlePaddle AI大赛经验分享

2018年4月初,由百度与科赛网联合发起的“PaddlePaddle AI大赛-预测精彩视频片段”顺利收官。经过近3个月的初赛、复赛、决赛,以及来自行业专家组成的评委团的最后评审,6支队伍最终获奖,来自上海交通大学研究生林天威夺得冠军,贡献了与百度内部技术专家水平相当的算法解决方案。

赛题回顾:18000个精彩片段预测

机位多、时间长,在电视综艺的拍摄过程中,后期剪辑师面临巨大的素材筛选压力。

本次PaddlePaddle AI大赛聚焦于综艺节目精彩片段预测,力图帮助电视综艺编导从业者实现对海量的拍摄素材自动标记,筛选出可能受观众喜爱的“精彩片段”,一定程度上辅助导演进行素材的初步粗剪,提高其生产效率与质量。

提及本次赛题,来自复旦大学计算机视觉方向研二在读的吕烁调侃:“看到赛题,我想可以光明正大的在实验室看综艺节目了”。

在此次比赛中,百度BROAD(Baidu Research Open-Access Dataset)数据集为选手提供了丰富的数据支持,其提供的视频精彩片段数据集囊括了1500个来自爱奇艺的长视频,总时长约1200小时,而选手的任务,就是通过时序行为检测算法,从18000个精彩小视频中自动标注出精彩部分。

一个行为哪一帧算开始,哪一帧算结束,在时序行为问题中,AI开发者首先面对的,是时序行为的边界处理;除此之外,相对普通的图像识别问题,时序行为算法既需要识别图像的信息,又必须结合时序的信息,从静态图像到动态识别,难度再次放大;而回到本次提供的视频片段,其跨度从20分钟到2小时不等,巨大的时长跨度再次增加时序动作检测的难度。

如何让时序检测算法更高效应用于真实场景,赛事主办方和参赛选手们都给出了自己的优化方案。

全力支持:BROAD+PaddlePaddle+K-Lab

若要实现全自动标注视频精彩片段,大量的数据与模型训练尤为重要。在此次比赛中,百度BROAD(Baidu Research Open-Access Dataset)数据集为选手提供了丰富的数据支持。赛事除提供了1200小时爱奇艺视频数据外,还提供了视频帧的图片特征序列,这也是全球首创的公开精彩片段标注数据集,相当程度上降低了选手的计算成本。

除此之外,大赛全程在科赛网的K-Lab中进行,加载BROAD数据集、模型训练、调用PaddlePaddle均可在统一便捷的计算环境中完成;此外,复赛阶段还免费提供了百度云深度学习开发卡的GPU算力,直接打开K-Lab即可使用,无需任何安装或申请,为参赛者提供更强的算力,显著提升了参赛者模型的分数。

人工智能时代,人才、算法、数据、计算资源都是行业的关键要素。

PaddlePaddle AI大赛不仅提供了开源深度学习框架PaddlePaddle、开放的BROAD数据集供开发者使用,更是提供了GPU资源供复赛选手使用。

丰富资源的支持有利于加速培养深度学习领域人才,进一步推动人工智能技术的发展,让人工智能更快更好得落地,影响行业、生活的方方面面。

算法方案:时序动作提名/检测

“验证了自己设计的算法能在时序检测任务上发挥很好的效果”。

单人组队的林天威从初赛到决赛都保持前列,这得益于他在视频分析领域的持续研究。他目前于上海交通大学自动化系计算机视觉实验室硕士在读,师从赵旭教授。一年前,他开始关注视频分析算法,实验室研究课题也与此相关。在此之前,他还曾在2017 CVPR会议上举办的ActivityNet大规模视频动作理解竞赛中获得“时序动作提名”和“时序动作检测”两项任务的冠军,在时序检测任务处理上已颇有章法。谈及本次赛题,他有以下拆解思路:

“这个赛题实际就是视频分析中的temporal action localization(时序动作检测)任务,可以直接用之前(ActivityNet竞赛)的方法来做;在开始具体的实验前,我会先去分析数据集中的数据分布情况,供实验中做参考。”

目前时序动作提名/检测方向主要有两类框架:一类是top-down的框架,即预先在每个时间位置上关联多个不同尺度的anchor 片段,再通过全连接或卷积层来对anchor片段的类别或边界修正值进行预测;

另一类是bottom-up的框架,即先对每个时间位置上的动作概率进行评估,再通过每种聚类或规则算法生成提名或检测结果。林天威在去年ActivityNet竞赛中结合使用了两种框架的算法,而本次赛事的模型则属于bottom-up框架。

“人能看到各种色彩,但在计算机里它们只是0~255而已”。

相对于冠军选手的厚积薄发,同样单人出战的吕烁则是首次接触视频分析领域,此次比赛他拿到了排行榜的第五名。

吕烁目前复旦大学计算机硕士二年级在读,研究方向为计算机视觉。他给自己的团队取名“我怎么知道对不队”,灵感来源于对深度学习的理解(果然是很应景啊):

“深度学习的过程其实就是个判断的过程吧,模型就是在不停地问:我认为这个属于1,对不对?这个属于0,对不对?”。

“给计算机安上了眼睛的过程中,传统的分析方法碰到了一些瓶颈,而深度学习为我们打开了一扇大门,让没有生命的电子元件,去看去听去理解,这是一件足够酷的事情”。

这次赛事中,吕烁三次调整了自己的算法设计:从直接分类,到简单卷积再到到跨层连接,而核心都在与过拟合作斗争。

云众数据jizhi.ai(集智景略)团队则是由公司合伙人/创始人带队参战。拿到赛题后,二者都从已有业务经验中迅速迁移出算法设计,再调试优化。

集智团队首先对视频帧进行了分析。基于主办方提供的resnet50与deepspeech预处理后的特征向量,集智主攻不同时间点特征,继而基于循环神经网络进行特征组合,实现一个不错的效果;为了提高分类准确率,集智调用了栈式lstm框架,基于残差神经网络的“跳过”机制,增加神经循环网络层数到八层,从而在保证准确率的前提下大幅增加了训练结果的准确性;此外集智通过全连接层合并了视频与音频,将结果进一步送入网络结构中,最终实现了55mAP的预测准确率。

云众数据则利用RNN中LSTM中记忆单元的引入,帮助记住更多上下文的信息。在RNN的实践基础上,云众专注于预测每帧精彩与否:即在生成测试数据集时,如出现连续多帧的精彩帧,则确定为精彩开始;如出现连续多帧的非精彩,则精彩结束。至于精彩阈值和连续多少帧算精彩,则作为超参数在验证集上进行验证。

“本次百度视频AI大赛吸引人的地方之一就是尝试在百度公开的BOARD数据集上进行视频逐帧分类任务,视频质量相对于国外其他数据集要高,标注准确,很适合作为视频研究的目标”。