0
雷锋网 AI 科技评论按:如果你向一个人仅仅展示一段视频中的几帧,他通常可以推测出视频里发生的是什么事件以及屏幕上会显示出什么。例如,如果我们在视频开始时的帧中看到了一堆堆叠起来的罐头,在视频中间的帧中看到了有人将手指放在了视频的底部,而在视频后面的帧中看到这堆罐头倒了,我们可以猜测出手指也许推了罐头一把。然而,计算机却很难思考出这一点。
在前段时间举行的 2018 年欧洲计算机视觉大会(ECCV2018)上,周博磊与麻省理工学院的研究人员一共提出了一个附加的视频处理模块,该模块可以帮助被人们称为卷积神经网络(CNN)的人工智能系统填补视频帧之间的空白,从而大大提升了网络的活动识别能力。 雷锋网 AI 科技评论简介如下。
研究人员将这个模块称为时序关系网络(TRN),它能够学习视频中的物体在不同的时间发生了怎样的变化。它通过分析一些在视频的不同阶段描绘某种活动的关键帧(例如,堆叠放置的物体被推倒。)来做到这一点。接着,它可以使用相同的过程识别一段新视频中相同类型的活动。
在实验中,该模块在识别数百种基本活动时,表现大大超过了现有的模型,这些活动就像将某些物体戳倒、将物体抛向空中,或者渐渐竖起大拇指。它还能更加准确地预测出视频中接下来会发生什么。例如,在给定少量的早期视频帧的情况下,推测出两只手在轻微地撕扯一张纸。
在未来,这个模块可以被用来帮助机器人更好地理解它们周围发生了什么。
论文第一作者、前 MIT 计算机科学和人工智能实验室(CSAIL)博士生、现任香港中文大学计算机科学专业助理教授周博磊说:「我们构建了一个人工智能系统,我们用它来识别物体的变化,而不是识别物体外观。该系统并不会对所有的帧进行处理,它会挑出关键帧,然后使用这些帧的时序关系,识别究竟发生了什么。这将提高系统的效率,使其能够准确地实时运行」。
这篇论文的联合作者是CSAIL 首席科学家 Antonio Torralba(他同时也是MIT 电子工程和计算机科学系的教授)、CSAIL 首席研究员Aude Oliva,以及CSAIL 研究助理 Alex Andonian。
目前常常被用于活动识别的两种卷积神经网络模块存在效率和准确率方面的缺陷。其中第一种模型时准确的,但是在做预测之前必须逐帧对视频进行分析,这样做的计算复杂度是很大的,运行起来十分缓慢。另一种模型被称为双流卷积神经网络,它的准确率较之于前一种模型低一些,但计算效率更高。双流网络使用一个流来提取一个视频帧的特征,然后将结果与「光流」(提取出的一组关于每个像素点运动的信息流)融合在一起。提取光流的计算复杂度同样很高,所以这个模型仍然没有那么高效。
「我们想要在这两种模型(效率与准确率)之间找到一种折中的方式」。
研究人员在三个众包的进行各种各样活动的短视频数据集上训练并测试了它们的模块。第一个数据集叫做「Something-Something」,它是由TwentyBN 公司构建的,包含174 个活动类别的超过20万条短视频,比如说戳倒一个物体或举起一个物体。第二个数据集是「Jester」,它包含关于27 种不同的手势的大约15 万条视频,例如竖起大拇指或向左挥击。第三个数据集是由卡内基梅隆大学的研究人员构建的「Charades」,它包含157 个活动类别的超过1 万条短视频,比骑自行车或打篮球。
当我们拥有一个视频文件时,研究人员构建的模块每间隔一段时间同时以两帧一组、三帧一组或四帧一组处理顺序排列的帧。然后,模块会迅速分配一个概率,它代表物体在这些帧之间的变化与一个特定的活动类别相匹配的可能性。例如,如果我们要使用模块处理两个帧,其中后一帧在屏幕的底部显示了一个物体,而这个物体在前一帧中出现在屏幕顶部,该模块就会为活动「将物体向下移动」分配一个高的概率。如果此时第三帧显示物体在屏幕的中间,那么这个概率还会继续增加,以此类推。通过这种方法,该模块可以在最能代表某类活动的帧中学习对象变换的特征。
在测试中,配备了新模块的卷积神经网络使用两帧准确地识别出了许多活动,但是通过采样更多的帧,准确率还能被继续提升。对于Jester 数据集来说,模块在活动识别中达到了最高的95% 的准确率,击败了一些现有的模型。
新模块甚至在模糊分类任务「Something-Something」上也得到了正确的结果。例如,包括「假装打开一本书」和「打开一本书」之类的行动。为了将二者区分开来,该模块只是对一些关键帧进行了取样,例如,一只手在较早的帧中放在一本书旁边,而在较晚的书中则远离了这本书。
其它的一些活动识别模型也对关键帧进行处理,但是并没有考虑帧与帧之间的时序关系,这会降低它们的准确率。研究人员指出,他们的TRN 模块在某些测试中比那些关键帧模型的准确率提升了几乎一倍。
在给定的视频帧有限的情况下,该模块在预测活动方面的表现也优于其他模型。在处理了前25% 的帧之后,该模块的准确率比对比基线模型搞了几个百分点。当处理了50% 的帧之后,该模块的准确率的准确率提高了10% 到40%。例如,根据两只手在较早的帧中的位置来判断纸张是否会被撕开一点,并且预测一只向前伸出的举起的手会向下滑动。
「这对机器人应用十分重要,」周博磊说。「当你执行某种特定的动作时,你会想要一个机器人能够事先知道接下来会发生什么」。
接下来,研究人员的目标是提高模块的复杂程度。首先,他们将同时实现活动识别和物体识别。然后,他们希望引入一些「直观的物理知识」,这能够帮助该模块理解物体的实际物理性质。「因为我们知道这些视频中的许多物理学原理,我们可以训练该模块学习这些物理定律,并用它们来识别新的视频,」周博磊说。「我们也将开源所有的代码和模型。活动理解是目前人工智能领域一个令人兴奋的研究课题」。
论文地址:https://arxiv.org/abs/1711.08496
via mit.csail,雷锋网 AI 科技评论编译
雷峰网版权文章,未经授权禁止转载。详情见转载须知。