优酷视频元素内容召回系统:多级多模态引擎探索

2020 年 7 月 8 日 DataFunTalk
DataFunCon线上大会,火热报名中~

点击图片了解详情



分享嘉宾:崇懿 阿里文娱 技术专家

编辑整理:李沛欣

内容来源:阿里文娱技术

出品平台:DataFunTalk


导读:多级多模态引擎是为推荐搜索定制的专业化的召回引擎。优酷视频搜索在基础的文本Query搜索系统的基础上,不断探索视频搜索的特色,在多模态输入、多级多模态索引、跨模态检索上积累很多实践经验,在C端及B端都有线上应用。创新的脚步在持续,多模态图引擎已经研发完成即将应用于线上,此次分享也会揭开面纱。本次分享题目为优酷的视频元素内容召回系统,主要介绍:

  • 搜索多模态输入和人脸搜

  • 多级多模态引擎及应用

  • 多模态图引擎揭秘

01
搜索多模态输入和人脸搜

1. 优酷视频搜索业务介绍

先简单说一下优酷视频搜索的业务,优酷的搜索业务涵盖 APP、WEB、大屏、OTT、 PC的客户端,还有支付宝、淘宝等应用的小程序,都有优酷搜索的功能。搜索的结果页会根据用户的意图和搜索结果呈现出不同的组织形式。

用户意图以节目为主,会呈现节目的搜索结果页;用户也会搜索宽泛意图的Query,有聚合类型的结果页;会有UCG视频的结果;还会有明星;组织形式会非常多,会根据用户的意图,搜索结果的内容,做不同的呈现。

2. 用户交互形态

优酷视频搜索业务有很多用户交互的形态,在APP端大家能看到的就是常用的文本搜索,在大屏端,常用的有首字母搜索的能力,这都属于文本输入的搜索;APP端、大屏的OTT端搜索,还有语音搜索的能力,通过对话语音的录入,获得搜索结果。

现在在大屏端已经有了多轮对话的能力。在右侧的例子里面可以展现出来,如果用户通过语音录入:"我想看刘德华的电影",就会给出搜索结果,如果继续去讲说"和周润发一起演的电影",这就会在现有的结果基础上再进行筛选。多轮对话的搜索能力,在现有大屏场景上是非常好的体验。当然现在还在设想多模态的搜索,它可以拍摄图像、录入视频,通过各种多模态的输入能力,触发搜索。

3. 视频多级元素内容

介绍一下什么叫做多级的元素内容。简单的去定义一下视频九级的分类等级。

  • 宏观:频道、节目

  • 微观:帧的粒度、帧的区域、对象、由帧和镜头组成的叙事场景、描述的故事等

会把整个的视频分成多个等级。基于现在的AI能力的理解,会把不同的对象,镜头,动作等,都能识别处理出来,做为整个视频召回的基础能力。

4. 搜索多模态输入

大家先看关于多模态输入的视频,这是比较有科技感的宣传片。

大家可以看到,在整个的宣传片里面,可以根据录入的视频和图像,识别出来里面的人物,可能和人物相关的作品,与人物有关的新闻的内容。用手机作为载体,输入视频图像等不同模态。

5. 人脸搜

上面这张PPT里面展现的是阿里文娱内部在做的人脸搜的产品,它通过手机拍照,从相册里面去选择图片,来搜索和明星相似的人脸。 

介绍一下人脸搜的整个系统结构。它作为搜索的多模态输入的基本形态,左侧图展现的是几个模块,首先是有输入端,APP提供拍照、从相册里选择图片、上传等功能。在端侧会先做图像的初步压缩和裁剪。它的图片不是通过直接请求到后端,先会走图片上传流程。

阿里通用的就是AUS服务,把图片上传到服务端,返回 URL, APP端会把 URL及其他参数请求搜索服务。通过在线图片计算服务,首先对上传的图片进行包括人脸识别、人脸向量化等图片处理。拿到图片的特征后,到引擎里去做检索,这里会包含向量的检索,识别出来人物的名称做倒排的检索等。

现在APP端有很多开源的端智能能力,阿里最近开源的MMN框架,在端侧就可以做关键点的识别、分类预测等。这个框架会提高图像处理能力,实现比较好的交互。比如拍海报,上面的人物就可以自动把人脸框出来,并且给出人的名字,类似的能力直接在端上就可以实现。

这是整个的多模态输入的基础框架,在语音的场景,视频录入的场景,都可以沿用这套基础框架进行支持。 

02
多级多模态引擎及应用

下面介绍一下多级多模态引擎的设计。

1. 索引结构

索引结构分为三个等级,以视频帧里面的人脸为例,每个视频的索引等级都是单独做分布式的索引,整个索引设计中不仅包括向量的索引结构,还包括倒排的索引结构等。

2. 跨层级跨模态检索

跨层级检索:

先讲一下跨层级的检索,一个比较简单的流程是:根据用户输入的层级,比如说用户要检索人脸,最终想拿到包含人脸的视频,用户输入的是一张图片,最终返回结果会是视频的片段。在这套引擎里面会有系统自适应的推理能力,给出整个检索路径。 

跨模态检索:

另外就是跨模态的检索,主要支持文本和向量间的跨模态。刚才有提到例子通过人脸的向量以及对图片的理解,人脸识别就可以给出来人的名字。可以根据向量和人的名字一起检索,做到从人脸向量到名字文本的跨模态检索的能力。 

整个执行流程,右侧图可以看出来它是图的结构,是一个DAG的结构,整个引擎底层执行框架的设计,是DAG执行框架,在这上面是希望是能做到更高的并行,另外可以更提供更好的扩展性。

最关键的两个步骤:

  • 多层级的Merge:系统自动的做层级之间的检索来组成整个检索路径;

  • 在最上层做多层级排序:根据召回的所有层级,以及关联的层级信息,做最终的排序。

3. 多级多模态引擎的应用

分享一下现在在线应用上的几个例子,对在2C端,大家在优酷APP中就可以体验,比如搜易烊千玺跳舞,就会有优酷智能搜索的结果,这里面是合集。点进去可以看到包含有易烊千玺跳舞片段的视频,而且检索会把易烊千玺跳舞的时间点都给得出来。

除了2C端的智能搜索的应用,在2B端也做过很做了很多尝试:

  • 搜镜头。因为对于内容的创作生产,寻找素材是很需要智能搜索,所以在2B端,你可以搜类似《长安十二时辰》相关的片段,他对应的就会给出很短的视频片断,基于对视屏内容的解构,给出来的镜头。通过多级多模态检索引擎,就可以检索出来。

  • 搜台词。会给出相关的出现过类似台词的视频,这些台词都是出现在不同剧里的,也是通过多级多模态引擎去检索,检索的是某剧包含该台词的视频片段。

这就是整个的多模态引擎的设计和应用。

03
多模态图引擎

下面也分享一下最近在思考和研发的多模态图引擎。

1. 搜索知识图谱的应用

大家对知识图谱都比较熟悉,尤其是做搜索的或者常用搜索引擎的同学。在搜索引擎里面你可以去搜索问题。比如说:邓超的妻子是谁,在百度和Google都会给出对应的卡片,直接就能得到正确答案,并且给出图像的介绍。比如说搜索《重生》电视剧的演员是谁,《重生》有多少集,这些问题都可以直接回答出来,这些就是知识图谱的应用。

2. 文娱行业知识图谱的构建

在对于刚才提到的多模态的信息,是视频行业所涵盖的知识,就会构建出文娱行业的知识图谱。

从宏观讲,视频节目之间都有关联,它可能是与某制作公司或者某大的IP相关联同时刚才也有提到,在微观层面它会有场景、事件,还会有里面动作、表情和物体的识别。经过系统的构建,就会生成文娱行业的知识图谱。从这一点做更深入的思考,在原有的引擎上提出,要建设多模态的图引擎。

3. 图引擎

简单的跟大家介绍一下图引擎。在Apache里面有个顶级的开源项目Tinkerpop,它给出了图数据库、图分析系统的标准定义,还给出了通用图数据语言Gremlin。

现在的图数据库的应用还是非常广泛的,阿里有开源的图数据库GDB,百度、头条都有推出一些相关的图数据库。

这张图展现的是图数据库的排行。大家都知道Neo4j,JanusGraph、Titan等图数据库。在知识图谱的应用上,包括搜索、社交领域等都会有比较丰富的应用。

而Gremlin所支持图遍历的能力,其实是一种动态召回的能力。把基本的图遍历过程分成了filter,map等5种类型,基本上涵盖了所有需要的查询过程。

4. 多模态图遍历应用场景

在刚才讲到从多模态的输入到对于多模态引擎的设计,这基于我们对于视频行业的理解和思考。刚才提到了整个的文娱行业会有比较丰富的知识图谱,需要用图引擎去做检索服务。另外必须要打造的功能点是有多模态的召回能力,这张图里面就很好展现了应用场景。

例如,用户搜索:"和邓超老婆长得像的女演员出演的电视剧",整个图里面展现的是图遍历的过程,下面是对应的Gremlin语句。

通过邓超搜索到人,根据知识关系,可以知道他的老婆是孙俪。同时怎么去描述它长得像?

这要用到多模态向量检索,通过孙俪的人脸向量的表征,进行向量检索,可能会搜出"蒋勤勤"或者"刘涛",直接给出人物的实体 ( entity ),再推理出他们出演的电影作品或电视剧,给出最终的结果。

在此过程中,在图遍历的基础能力上,又扩展了多模态的检索能力,从中间增加了VectorQuery的能力。因为在视频行业里面,除了刚才提到的整个知识库以外,多媒体内容需要做表征、检索,这就成为图引擎应用于文娱行业的创新点。

5. 多模态图引擎的索引设计

图引擎一般基于顶点、边去构建整个图谱,通过顶点和边的构建来支持图的多轮检索能力。分布式的索引,在Searcher上,会根据主键去做分片,分片上会包含KV和KKV的索引结构,以及倒排和向量的索引结构。这些会更加方便、高效地支持图遍历能力。 

6. 图遍历支持模型服务

在视频元素内容召回能力上,图遍历支持模型服务是强需求。因为在整个召回过程中会做图片的表征,进行实体的打分、排序,在图遍历过程中提供 model的step,step可以调用本地的模型,或者是通过远程访问调用深度模型、需要GPU跑的模型,再返回到检索链路中。

04

总结和展望

随着整个人工智能技术的逐渐丰富,视频行业将会把知识库的内容做得更加丰富和完善,刚才也展现了里面的冰山一角。这些都给引擎带来非常大的挑战,也提供了非常大的机会。我们希望通过搜索引擎更深入地迭代,来更好地满足用户交互体验。

在多模态输入能力上,对现有很多智能设备,包括家里的大屏电视、能力非常强大的手机等,都是为用户提供了更好的交互体验场景,这些场景都需要有多模态的搜索能力做为基础。

今天的分享就到这里,谢谢大家。

嘉宾介绍:

崇懿,阿里文娱技术专家。 多年搜索 推荐系统研发经验,目前在阿里巴巴文娱负责搜索工程,致力打造具有视频特色的搜索引擎。

在文末分享、点赞、在看,给个三连击呗~~


大会推荐:

一年一度的DataFun大会上线啦,100余位嘉宾参与的干货分享,点击图片了解详情哦!

社群推荐:

欢迎加入 DataFunTalk 大数据/知识图谱交流群,跟同行零距离交流。如想进群,请识别下面的二维码,根据提示自主入群。
文章推荐:

因果推断在阿里文娱用户增长中的应用

阿里文娱搜索算法实践与思考

关于我们:

DataFunTalk 专注 于大数据、人工智能技术应用的分享与交流。发起于2017年,在北京、上海、深圳、杭州等城市举办超过100场线下沙龙、论坛及峰会,已邀请近500位专家和学者参与分享。其公众号 DataFunTalk 累计生产原创文章300+,百万+阅读,6万+精准粉丝。

🧐分享、点赞、在看,给个三连击呗!👇

登录查看更多
4

相关内容

一次相遇 一段故事 一个全新的开始
【KDD2020-阿里】可调控的多兴趣推荐框架
专知会员服务
28+阅读 · 2020年8月11日
Python导论,476页pdf,现代Python计算
专知会员服务
260+阅读 · 2020年5月17日
【WWW2020-微软】理解用户行为用于文档推荐
专知会员服务
35+阅读 · 2020年4月5日
【阿里技术干货】知识结构化在阿里小蜜中的应用
专知会员服务
97+阅读 · 2019年12月14日
 图像内容自动描述技术综述
专知会员服务
86+阅读 · 2019年11月17日
Query 理解和语义召回在知乎搜索中的应用
DataFunTalk
24+阅读 · 2020年1月2日
腾讯推荐引擎组员工:谈谈推荐系统架构
腾讯大讲堂
14+阅读 · 2019年10月23日
视频内容理解在Hulu的应用与实践
AI前线
12+阅读 · 2019年2月16日
推荐算法:Match与Rank模型的交织配合
从0到1
15+阅读 · 2017年12月18日
爱奇艺个性化推荐排序实践
机器学习研究会
7+阅读 · 2017年11月12日
自然语言处理在人机对话中的应用
京东大数据
8+阅读 · 2017年8月11日
Arxiv
3+阅读 · 2019年8月26日
Next Item Recommendation with Self-Attention
Arxiv
5+阅读 · 2018年8月25日
Recurrent Fusion Network for Image Captioning
Arxiv
3+阅读 · 2018年7月31日
Arxiv
5+阅读 · 2018年6月4日
VIP会员
相关资讯
Query 理解和语义召回在知乎搜索中的应用
DataFunTalk
24+阅读 · 2020年1月2日
腾讯推荐引擎组员工:谈谈推荐系统架构
腾讯大讲堂
14+阅读 · 2019年10月23日
视频内容理解在Hulu的应用与实践
AI前线
12+阅读 · 2019年2月16日
推荐算法:Match与Rank模型的交织配合
从0到1
15+阅读 · 2017年12月18日
爱奇艺个性化推荐排序实践
机器学习研究会
7+阅读 · 2017年11月12日
自然语言处理在人机对话中的应用
京东大数据
8+阅读 · 2017年8月11日
Top
微信扫码咨询专知VIP会员