美图有一套智能标签化服务模型,这个服务模型分两部分,如下图所示,上面是离线过程,下面是线上过程。线上拿到视频,输入相应的标签或者特征。离线过程中的自动标注就是上面提到算法标注,会用到自动标注输出的数据和标签进行一个模型的训练。我们会拿到这个数据进行模型训练,进行模型的评估,评估的时候用的数据也是我们标注好的一部分验证数据。当评估的准确率达到我们的域值之后,我们就认为模型可用了,就会更新到线上。
算法的运行性能,智能视觉分析平台其实包括很多,除了视频之外还有很多其它图象的算法,但相比较而言,视频算法的复杂度较高。这里以视频分类的技术为例,介绍一下我们是怎么做的。
视频分类大部分分这几种形式。第一种是我们简单的对视频进行抽帧,使用 CNN 网络提取一些特征,进行融合,再对最后的结果进行分类。这种方法没有考虑到视频的时域信息。还有一些其他的算法,如上图所示左下方及右侧两种算法。他们都会考虑到视频的时域信息,但缺点是复杂度太高,很难被应用于实际场景中。
经过对短视频的应用场景的测评,第一种方法已经可以做到很好的准确率,相比较其它方案而言,它的时间复杂度也非常低。
在视频分类方面,美图也有一些前沿的研究成果,我们跟中科院合作提出一个基于类脑智能的无监督的视频特征学习和行为识别的方法。
业界、学术界,有很多种模型,但在实际业务场景中,看似庞大的网络,其效果却不一定那么理想。更重要的是,对于我们来说,怎么能从海量的业务数据中抽取最关键、最重要的数据,用来训练出一个适用于业务场景的模型。我们也在多媒体内容分析平台的构建中总结了几点,我们认为有三个信息非常重要:
推理服务:一方面对获得的数据进行推理分析,另一方面对完成训练的模型更新上线;
数据服务:提供用于模型训练的标注数据,其核心模块是算法自动标注;
训练服务:它包含训练触发模块,会定期更新模型训练。
前面提到的都是我们进行一个内容分析,大部分以标签输出为主。其实用标签描述事情是存在一些问题的,一个是时效性,上图是我们分别在 3 月和 8 月总结出的一部分标签体系中的标签变化,其实差别还是挺大的。第二个问题是不完备。想用标签去描述一个视频或一张图片的话,需要非常多的维度。如果我们在进行视频的检索,在搜索的时候想比较两个视频的相似度怎么办?如果用标签的话就非常难。
上图是视频检索的流程,是将 2003 年谷歌提出的文本检索的过程应用到视频的检索方案。它包括两部分,一是构建目标检索库,二是检索。获取到一些视频后,从视频中抽取帧,对这些帧图象提取特征,进行聚类,然后去构建视觉词表。
特征对比有有类,二进制特征和浮点特征,有各自的优缺点。二进制特征一个比较大的优点是存储高效、距离计算高效,缺点是可表征的范围比较小。浮点特征欧式距离、抗极值干扰,距离表征值比较大,理论上讲是从零到无穷的。
上图我们一个简单的思路。我们会基于前面构建的多层次的变向体系,用多级的标签指引这个网络进行学习。另外会用 triplet loss,对同一个视频,我们会抽取 5 帧,然后在不同的时间段再抽取 5 帧,这样形成一个正样本对。从一个视频和其它视频组成负样本对,让他学习到什么样的信息才是视频特拥有的特征。
上图是一个短视频相似检索服务的架构,左边是离线模块,右边是在线模块。离线是批量训练,生成哈希值。
总结
在这个平台建设过程中我们也遇到一些问题,也有一些思考。主要是这几点:
AI 让多媒体技术有了更大的应用空间,视频领域仍有大量业务场景需要 AI 助力;
数据仍是当前阶段 AI 算法有效落地的核心元素,越接近业务场景,领域数据的重要性越明显;
通用算法技术的作用在弱化,需要结合具体业务场景深入优化;
技术领域需要进行持续探索,算法性能问题、细粒度语义理解、互联网多媒体内容智能交互等。
本文转载自公众号声网 Agora(ID:shengwang-agora)。
原文链接:
https://mp.weixin.qq.com/s/kJSrHQFAygqnMbXlE_sa-g
评论