写点什么

一文深度解读多模态大模型视频检索技术的实现与使用

  • 2024-01-25
    浙江
  • 本文字数:6005 字

    阅读完需:约 20 分钟

一文深度解读多模态大模型视频检索技术的实现与使用

当视频检索叠上大模型 Buff。

万乐乐|技术作者


视频检索,俗称“找片儿”,即通过输入一段文本,找出最符合该文本描述的视频。


随着视频社会化趋势以及各类视频平台的快速兴起与发展,「视频检索」越来越成为用户和视频平台实现高效查找视频、定位目标内容的新需求。


对于个人用户而言,面对海量的在线视频资源,快速准确地通过关键词或描述找到感兴趣的视频十分重要。同时,在个人存储设备如手机或网络云盘中,用户也存在检索自己拍摄录制的视频资料的需求。


而对于视频剪辑师和制作团队来说,在庞大的媒资库中搜索所需的视频片段或素材是一项日常基础工作。精准高效的视频检索技术可以满足其在短时间内锁定匹配的素材,有效提升创作效率。


某新媒体编辑网站媒资搜索截图


此外,对于视频平台和监管部门来说,如何在数以亿计的视频库中定位到包含劣迹艺人的视频并下线,也是巨大的挑战。


「视频检索」技术的发展与应用不仅是解决信息过载、提高数据处理效率的有效途径,更是在满足个人用户、专业创作者乃至整个视频行业发展的迫切需要中扮演着至关重要的角色。


本文将回顾视频检索技术的发展历程,并揭秘隐藏在新一代自然语言视频检索技术背后的大模型。


01 视频检索现状


视频检索是怎么实现的?我们以优酷搜片为例,优酷的视频检索技术基于:


• 主要搜索内容为标题与描述;

• 通过多模态内容识别人物、ASR、OCR,转化为文本搜索;

• 具有一定 Query 理解能力与实体知识匹配(转化为搜索关键词);

• 具有一定的通过语义理解的 Query 意图分析(识别诸如 How To 类问题)。


图片来源:阿里文娱技术团队


上述技术方案的能够满足使用者基本的视频检索需求,但是也存在缺陷


• 大量视觉信息无法参与检索召回:基于现有多模态算法的搜索,只能识别处于标签体系内的人、物、ASR、OCR 等内容,大量视觉信息(比如在蓝天翱翔的飞鸟),无法文本化参与检索。

• 强依赖知识图谱与语义分析:知识图谱的维护与更新、意图理解的能力,均需要不断地投入与更新,使用负担较大。

• 基于关键词的搜索丢失语义联系:以“马老师骑自行车”为例,基于关键词的搜索只能合并搜索“马老师”和“自行车”两个关键词,丢失“骑”这个概念,导致召回偏差。


与此同时,随着时代发展,大家找片子的手法也越来越刁钻。使用者希望不再满足于某个关键词,而是希望使用类似下面的自然语言,去匹配视频本身的内容,而不仅仅是人、物、ASR、OCR 可文本化的内容,比如:足球运动员受伤、飞机穿越天门山、春风化雨育桃李......


如果要实现这样智能的搜索效果,应该怎么做呢?我们先来回顾视频检索技术的发展历程。


02 视频检索技术发展历程


第一代:基于文本的传统视频检索

在网络还不发达的时代,计算机对于音视频的处理能力及其有限,媒体数据仅仅被当作是文本数据的扩展。为了能够搜索媒体数据,网站编辑一般会对媒体数据做一次人工编目:取好标题,写好描述,甚至会手动添加若干关键词。


所以,传统的视频检索,本质上是退化为文本检索,通过利用关系型数据库(如 mysql)或文本倒排数据库(ElasticSearch)的能力,对文本分词,进行检索排序。



第二代:基于 AI 标签的跨模态视频检索

随着互联网音视频数据量的日益增长,媒资人工编目已经到了不可持续的地步,必然要求更高生产力技术的引入。


到 21 世纪 10 年代,基于 CNN 架构神经网络的日趋成熟,AI 已能简单理解和认识视频中的客观实体,并能通过分类模型给视频分类,此时智能标签技术便应运而生。以阿里云视频云的智能标签技术为例,它能够给视频自动打出以下标签:


• 客观实体:名人/政治人物/敏感人物、地标、Logo

• 场景与动作事件

• 时间、地域、人物等关键词

• 视频类目信息


第二代视频检索技术是在第一代技术的基础上,对视觉、听觉的模态进行了自动分析,将其转化为文本数据,其总体架构仍然未变,仍是基于文本的检索。



第三代:基于大模型的自然语言视频检索

上述搜索依赖于关键字或标签进行内容索引和检索,但这类方法存在明显的限制,尤其是对于非文本内容,如:图片、视频,用有限的标签来描述它们的全面信息是非常困难的。这些标签可能既无法覆盖所有相关的概念,也无法表达内容的细致差异和深层含义。


随着 AIGC 和所谓的“通用人工智能(AGI)”崛起,尤以大语言模型(LLM)为代表的大模型全面应用为契机,第三代视频检索技术开始成熟。LLM 内部包含着人类海量知识的表征,将 LLM 延展到音视频模态,我们即可实现对媒体数据的表征。


多模态表征大模型能够将文本、图片、音频、视频等内容转换成高维空间中的向量表示,也称为嵌入(embeddings)。这些嵌入可以捕捉到内容的语义信息,并将其映射到一个连续的向量空间内,使得语义上相似的内容在这个向量空间中彼此接近。


大模型检索技术支持自然语言搜索,用户可以用自己的话描述他们想要找的内容,而不是依赖于预先定义好的关键词或标签。通过对自然语言描述的理解,大模型可以将这些描述转换为相应的向量表示,并在高维空间中寻找最匹配的内容。



第三代检索技术的优势在于它的灵活性和表现力。用户不必再局限于有限的关键字,而可以用自己的语言进行更精确和细腻的描述。同时,由于大模型能够理解内容的深层意义,搜索结果通常更加相关和准确,增强了用户体验,并为获取和发现信息提供了更加强大的工具。


例如,一个用户想要找到一张描绘“一个穿着古代盔甲的战士在日落时分静立在山巅”的图片和视频。在传统的基于标签的搜索系统中,用户可能需要尝试各种组合的关键词,比如“战士”、“盔甲”、“日落”、“山巅”等。而在大模型的跨模态检索系统中,用户可以直接输入完整的描述,检索系统会理解其语义并返回匹配的图片和视频。


03 自然语言视频检索上线


阿里云视频云基于达摩院的多模态表征大模型,在点播和智能媒体服务中上线了自然语言视频检索。并结合已有的 AI 标签检索、人脸检索、图像相似度检索,形成了完整的多模检索解决方案


自然语言视频检索演示:https://v.youku.com/v_show/id_XNjM2MzE5NTg5Ng==.html


我们当前实现的自然语言视频检索技术,支持性能参数:


• 最大支持 10 万小时规模的视频中召回相关片段

• 在 10QPS 搜索速度下 RT<1 秒

• 召回的片段准确率达到 80%以上


当然,在实现自然语言视频检索的过程中,我们也遇到了一系列的难点和挑战。



下文将讲述我们如何克服这些难点与挑战,并介绍实现的技术原理与方案,以及未来视频检索进化的方向。


04 多模态表征大模型算法


算法原理

CLIP 是 OpenAI 在 2021 年提出的一个视觉分类模型,在没有微调的情况下,预训练模型能够在下游任务中达到十分出色的迁移效果。为了摆脱监督学习对标注数据集的强依赖,CLIP 采用了自监督对比学习方案,从互联网收集的 4 亿对图文数据对中学习图像和文本的对应关系,进而获得了视觉-语言的对齐能力。


CLIP 预训练模型包含两个主要模块:Text Encoder 和 Image Encoder,其中 Text Encoder 用来提取文本的特征,采用 63M 参数的 text transformer 模型,而 Image Encoder 用来提取图像的特征,采用基于 CNN 架构的 ResNet 模型或者基于 tansformer 架构的 ViT 模型。



基于文本搜索图像是 CLIP 的一个最直接的应用,先将待检索图像送入 Image Encoder 生成图像特征并存储,再将检索文本送入 Text Encoder 生成文本特征,使用文本特征与存储的图像特征逐一进行比对,其中余弦相似度最高的就是检索得到的图像。


CLIP 虽然是基于文本-图像对训练的,它也可以很自然的推广到文本-视频检索任务中:对视频抽帧获得关键帧图像,再将关键帧图像送入 Image Encoder 提取图像特征即可。


算法选型

尽管 CLIP 具有优异的 zero-shot 迁移能力,但它是基于英文数据集训练的,要将其应用到中文搜索中需要非常麻烦的翻译工作。为了避免增加翻译模块而引入额外的计算量,我们找到了达摩院发布的两个开源中文检索模型:TEAM 和 ChineseCLIP。


TEAM 是达摩院在 2022 年发布的一项工作,作者在 CLIP 的双塔结构上新增了一个名为 Token Embeddings AlignMent(TEAM)的模块,该模块用于对 token 级别的图像特征与文本特征做显式对齐,并为输入的图文对生成匹配得分。


所述框架中 Image Encoder 采用 vit-large-patch14 结构,Text Encoder 采用 bert-base 结构。作者还构建了一个 10 亿级规模的中文视觉-语言与训练数据集(通过夸克收集),通过在这个数据集上对所提出框架进行预训练,在中文跨模态检索基准测试(Flickr8K-CN, Flickr30K-CN 和 COCO-CN )中达到了先进的性能。



ChineseCLIP 是达摩院在 2022 年发布的另一项工作,主要是基于 2 亿规模的中文数据集(原生中文数据+汉化中文数据)完成了对 CLIP 的汉化工作,而模型结构没有做大的改动。


为了实现跨模态基础模型对中文数据的高效迁移,作者开发了一种两阶段预训练方法,其核心思想是利用 LiT(Locked-image Tuning)使文本编码器能够从 CLIP 的基础视觉模型中读出高质量的表示,然后将整个模型转移到新的预训练数据域。


首先使用已有预训练模型对图文双塔做参数初始化,其中 Image Encoder 使用 CLIP 的参数,Text Encoder 使用中文 RoBERTa 的参数。第一阶段,冻结 Image Encoder 参数,只对 Text Encoder 进行预训练参数更新;第二阶段,通过对比学习同时微调 Image Encoder 和 Text Encoder。通过两阶段训练,在中文跨模态检索测试(MUGE, Flickr30K-CN, 和 COCO-CN)中达到了最先进的性能。



算法评测

基于阿里云视频云 AI 编辑部长期积累的数据,最终采用了一些短视频作为测试视频集。该视频集以几分钟到 10 几分钟的短视频为主,包含新闻、宣传片、访谈、动画等各种类型的视频,这也十分符合视频云客户定位。



将测试视频集入库之后,我们设计了一些自然语言句子作为搜索的 query,会保证 query 一定有对应的视频。考虑到视频集规模较小,我们最终只评估召回 TOP1 的准确率。


经过实际测试,TEAM 和 ChineseCLIP 都能够达到 TOP1 返回 80%的准确率,二者都可作为大模型特征提取器嵌入系统框架中。


05 搜索工程技术方案


在系统架构设计上,我们的搜索服务架构采用 Core-Module 设计体系,把最核心不易变化的搜索流程设计为 Core 模块,把各种不同的搜索业务,分开做成不同的 Module。搜索 Core 模块内部有个 Module 管理器,管理所有 Module(Module 设计上允许自注册)。


每个 Module 包含 3 个接口信息分为特征提取、查询改写、聚合打分。



上述传统搜索、跨模态检索、大模型搜索分别对应 3 种 Module,另外还支持新增人脸搜索、DNA 搜索 Module,后续其他搜索 Module 可以支持扩展。



入库流程上,媒资入库时支持多维度的内容理解:


• 基础信息 base-module:传统搜索引擎

• 智能标签 aiLabel-module:依托达摩院自研智能标签算法,支持物体、场景、地标、事件、LOGO、字幕 OCR、语音 ASR、词、类目、主题、人物角色、自定义标签识别

• 人脸特征 face-module:人脸识别

• DNA 特征 dna-module:同源检测特征提取

• 大模型特征 mm-module:多模态大模型特征提取,进行内容理解


把媒资按照不同维度进行内容理解,传统标量数据存 ES 构建倒排索引,向量数据存在自研分布式向量数据库。



搜索流程中,跨模态大模型搜索根据用户 query 文本,再经过大模型提取文本特征,搜索向量底库得到目标内容,针对视频内容会先聚合片段方便后续展示命中视频媒资内部的细节信息。用户也可以进行传统 ES 文本搜索得到目标内容,用户可以结合两种搜索方式使用,多路召回能力目前还于内测中。


当前视频抽帧频率是 1 秒 1 帧,大模型搜索命中可以得到秒级别的片段信息,满足用户精准定位目标内容需求;依托了我们自研的分布式向量数据库,支持海量数据(10 亿级别)特征数据存储,搜索时延在 1s 内。


目前针对自然语言描述搜索 TOP1 准确率达 80%,针对复杂语义的理解搜索还存在困难,后续结合 LLM 做改进优化。


人脸检索支持以图搜,多模检索支持以文搜,大模型检索支持以文搜、以图搜。



扩展性上,大模型搜索支持多租户,各租户之间数据相互隔离,既支持低成本共享实例,也支持高性能独享实例;用户管理媒资数据时支持建立多个搜索库,每个搜索库可分别设置搜索索引,搜索索引底层算子支持配置选择;用户根据搜索库增删改查媒资数据,满足客户不用使用场景,搜索架构具有高扩展性、可靠性、稳定性。



06 总结和展望


本文介绍了智能媒体服务的跨模态大模型检索技术实现和使用,我们把媒资进行多维度分析,使用传统的基于 ES 的标量检索和基于向量的特征检索有机结合,满足用户对长视频的内容理解和跨模态精准检索的需求。


但是,视频检索技术还远远没有进化到终点,在下面几个方面仍待优化与突破。


一是算法的提升。


准召率优化:当前达摩院表征大模型 TEAM 和 ChineseClip,召回准确率达 80%;达摩院在研新多模态信息表征合一模型 MBA 召回准确率可达 93%,后续待接入。


新的模态融合:当前接入的表征大模型,仅支持文本与图像的对齐,音频模态是缺失的。想象一下,如果我搜“空山新雨后”,找到了一幅搭配雨声的山水风景视频,是多么酷的体验。


多表征融合:当前算法仅基于句子级别的文本,以及帧级别的图像进行特征提取,其实是丢失了视觉中的人物、物体等客观实体细节的。理想中的表征大模型,应该是多表征融合的。例如我搜“梅西捧着金球奖”,出现的应该是梅西拿着金球奖,而不是 C 罗捧着金靴奖。这意味着表征大模型需要有人物识别和文字识别的能力,而不仅仅依赖训练中的文本-图像对。


二是成本与性能的平衡。


表征特征压缩:当前是 768 维 float32 维向量,已经实现了 float32 压缩为 uint8 搜索效果基本保持一致,正在探索压缩为 01 二值向量,实现低成本存储与搜索。


基于片段的表征:当前视频每秒抽取一帧进行特征计算存储,已经研究出视频片段合并,提前进行特征聚合减少抽帧数量,降低存储同时提升搜索效率。


三是在工程与体验上。


多路召回:针对 AI 标签搜索、人脸检索、大模型检索,支持用户进行同时搜索,搜索结果合并后重新打分排序。


检索增强 LLM:支持对用户复杂搜索语句的理解,搜索时针对用户 query 语句进行 query 改写实现 QP 能力,识别 filter、groupBy 等字段进行搜索语句 SQL 式转换,搜索结果结合原始 query 通过大模型再次分析过滤排序等;自然语言搜索增强形式,结合大模型实现问答式搜索,支持企业快速构建媒资知识库。


目前,自然语言视频检索已在阿里云智能媒体服务(IMS)上线,欢迎大家咨询体验。


媒资搜索产品文档:https://help.aliyun.com/document_detail/2582336.html


欢迎加入官方答疑「钉钉群」咨询交流:30415005038


参考文献及大模型:


[1] 《视频搜索太难了!阿里文娱多模态搜索算法实践》:https://mp.weixin.qq.com/s/n_Rw8oa0Py7j_hPIL1kG1Q

[2] 《深度 | 上亿用户每天看 100 分钟!基于多模态 Embedding 及检索的短视频内容理解》:https://mp.weixin.qq.com/s/M_E89uEPkWrMRBan1kF8AQ

[3] 《优酷推出“AI 搜片” | 模糊搜索精准匹配,解决找片难》:https://mp.weixin.qq.com/s/Wr09Sfn3XxJ-CqvJmeC-Uw

[4] ChineseClip 模型:https://modelscope.cn/models/iic/multi-modal_clip-vit-base-patch16_zh/summary

[5] TEAM 图文检索模型:https://modelscope.cn/models/iic/multi-modal_team-vit-large-patch14_multi-modal-similarity/summary

发布于: 刚刚阅读数: 4
用户头像

公众号:视频云技术 2020-10-20 加入

「视频云技术」你最值得关注的音视频技术公众号,每周推送来自阿里云一线的实践技术文章,在这里与音视频领域一流工程师交流切磋。

评论

发布
暂无评论
一文深度解读多模态大模型视频检索技术的实现与使用_云计算_阿里云视频云_InfoQ写作社区