当前位置:网站首页>美团·阿里关于多模态召回的应用实践
美团·阿里关于多模态召回的应用实践
2022-07-04 12:33:00 【Weiyaner】
1. 美团多模态召回-搜索业务应用
多模态的召回任务,主要在召回和排序列表中存在POI、图片、文本、视频等多种模态结果,如何保证Query和多模态搜索结果的相关性面临着很大的挑战,目前更多的多模态召回主要应用于电商,短视频推荐搜索等领域。
常见的多模态召回任务,给定一段query文本,输出图片/视频相似度最高的topk作为结果返回,也就是将item项换成了图片/视频。将query-query匹配任务转换成了query-image匹配任务,通过训练多模态召回模型,对Query-Image样本对进行相关性打分,然后对相关性分数进行排序,确定最后的召回列表。
多模态模型的两大流派
随着Goolge BERT模型在自然语言处理领域的巨大成功,在多模态领域也有越来越多的研究人员开始借鉴BERT的预训练方法,发展出融合图片/视频(Image/Video)等其他模态的BERT模型,并成功应用与多模态检索、VQA、Image Caption等任务中。因此,考虑使用BERT相关的多模态预训练模型(Vision-Language Pre-training, VLP),并将图文相关性计算的下游任务转化为图文是否匹配的二分类问题,进行模型学习。
目前,基于Transformer模型的多模态VLP算法主要分为两个流派:
单流(单塔)模型
在单流模型中文本信息和视觉信息在一开始便进行了融合,直接一起输入到Encoder(Transformer)中。
模型代表:ImageBERT,VisualBERT、VL-BERT
ImageBERT: Qi, D., Su, L., Song, J., Cui, E., Bharti, T., and Sacheti, A. Imagebert: Cross-modal Pre-training with Large-scale Weak-supervised Image-text Data. arXiv preprint arXiv:2001.07966 (2020).
VisualBERT: Li L H, Yatskar M, Yin D, et al. Visualbert: A simple and performant baseline for vision and language[J]. arXiv preprint arXiv:1908.03557, 2019.
VL-BERT: Su W, Zhu X, Cao Y, et al. Vl-bert: Pre-training of generic visual-linguistic representations[J]. arXiv preprint arXiv:1908.08530, 2019.
双流(双塔)模型
在双流模型中文本信息和视觉信息一开始先经过两个独立的Encoder(Transformer)模块,然后再通过Cross Transformer来实现不同模态信息的融合。
LXMERT : Tan, H., and Bansal, M. LXMERT: Learning Cross-modality Encoder Representations from Transformers. arXiv preprint arXiv:1908.07490 (2019).
ViLBERT : Lu J, Batra D, Parikh D, et al. Vilbert: Pretraining task-agnostic visiolinguistic representations for vision-and-language tasks[C]//Advances in Neural Information Processing Systems. 2019: 13-23.
Text-Image Matching任务
对每一个Query-Image 样本对进行相似性打分,进而对每个Query的候选图片进行相关度排序,得到最终结果。多模态匹配问题通常有两种解决思路:
- 将不同模态数据映射到不同特征空间,然后通过隐层交互这些特征学习到一个不可解释的距离函数,如图 (a)所示。
- 将不同模态数据映射到同一特征空间,从而计算不同模态数据之间的可解释距离(相似度),如图(b)所示。
以上也就是多模态任务的主要的两个流派:单塔/交互型和双塔/表征型模型。
一般情况下,单塔的效果会更好,由于文本和图片的特征信息进行了充分的交互,为模型隐层提供更多的交叉特征信息。
2 阿里·内容推荐场景下多模态语义召回的若干实践
前言
内容推荐系统作为精准匹配用户和内容的手段,在内容分发的链路中举足轻重,而其中召回则决定了整个推荐系统的上界。
内容分发平台中,基于行为的召回模型通过个性化建模不同尺度的用户兴趣,构建个性化的内容消费体验。但是完全依赖平台上的可用日志信息,会使得推荐系统容易陷入自旋,进一步加重信息茧房效应,优质的长尾内容无法得到更加公平的有效分发,不利于整个平台的生态健康.
由于用户交互数据的稀疏性,基于用户行为的模型使得他们的兴趣表征容易出现较大的bias, 需要有相应的手段保证这部分用户的兴趣匹配。
content-base的召回方式由于与行为解耦,在缓解此类问题上具有一定的优势,传统的content-base方法包括标签、属性等召回,一定程度上能够缓解这类问题,但是标签和属性的匹配一般都比较hard, 泛化能力和扩展能力存在一定的瓶颈,而随着多模态和深度召回模型的演进,采用多模态和语义召回模型解决content-base问题成为众多推荐平台的利器之一。
多模态召回
语义包含多层次的信息,除了文本标签之外还有视觉音频等,二者均对用户的决策具有一定的影响,两者相结合能够更好的表征出视频的语义信息和人格化特征。
在推荐系统召回中更全面的理解视频内容也有益于更加全面的理解用户推荐意图,从而提升推荐的效果。目前业界比较常见的方案是多模态建模,将文本和视频等多种模态进行融合,互相促进表达,能够达到更全面理解视频内容的目的。
一般而言文本视频融合有多种模式,通过参考业界和学术界的研究,多模态召回采用了video bert的架构,通过双流输入+later fusion 以及文本mask, 视频帧mask等辅助任务,更好的学习出多模态表达的内容,整体模型架构如下:
1 多模态召回v1.0: 向量v2v
基于大规模预训练模型,我们能够得到全部内容的多模态表征,融合了视觉和文本的表征一定程度上能够给推荐系统赋予找相似的能力。我们先后上线了视觉相似v2v和视觉聚类召回,前者基于多模态预训练表征,刻画用户trigger视频到分发视频的相似度,在线进行v2v召回。
通过1.0可以实现用户兴趣空间的表征,解决了寻找相似性问题。但是在内容分发平台,频繁的推荐相似性doc会产生用户疲劳,信息茧房等问题。
因此可以通过一种更加泛化的“找相似”的方法去匹配用户兴趣。
2 多模态召回v2.0:聚类中心召回
我们采用了聚类召回的方法,通过k-means聚类,将连续的、广泛的多模态空间降维为离散的、被约束的聚类空间。K-means聚类之后更有可能去触达到更广泛的用户兴趣,而且召回的内容更为发散。从图中可以得知,k-means聚类有更大概率命中用户兴趣(交叉部分面积较大),并且召回的类目更为发散。
3 多模态召回v3.0:个性化多模态内容召回
多模态表征在训练的时候由于采用的是自监督的方式,仅仅建模内容本身的特征。
但是在实际的情况下,一个视频中所描述的东西可能仅仅只有一部分是用户感兴趣的,如果我们在召回的是将全部视频内容的表征去进行相似度计算的话,很容易引入噪声而影响真正对大多数人都较为感兴趣的部分。
所以我们需要有某种指导信号对我们已有的表征进行进一步个性化区分,我们希望达到的目标是,我们学习出的内容表征函数f(x)能够既能一定程度上能够表征内容,同时也能突出群体最感兴趣的部分。
很自然的,结合用户行为进行多模态表征finetune是值得尝试的方向,所以我们提出了结合多模态表征和用户行为的内容表征模块该模块结合海量用户偏好信号和预训练ready的表征,得到更贴合实际业务场景的内容表达
需要注意的是,虽然这里的样本也是基于可用的平台日志,但是统计类的特征和id类(contentId等)并没有被使用,因为我们的目标不是个性化的召回模型,而是通过群体智慧,对内容表征提炼出适配大多数用户的表达。
我们认为用户真实的表达Eu应该包含两个部分,ECu和EPu, 前者可以理解为对内容的无偏偏好,后者可以理解为个性化的偏好。而内容Ei本身也应该包含两个部分ECi和EPi, 前者ECi可以表达为内容本身的特征,在我们的模型里可以认为是通过滤波器对我们的多模态等特征的输入进行过滤得到的共同特征表现,而EPi则表示为内容的bias. 所以我们的模型在用户侧和item侧分别设计了两个bias, 来提取出个性化的偏执信息。
整个模型架构如下:
整个模型采用的是contrastive learning(对比学习)的框架,正样本来自于点击,负样本来自于随机采样+部分hard sample. 预训练好的多模态表征作为整个模型的输入。通过训练,我们便可以学习出一个能融合多模态和行为的语义表征函数G。
边栏推荐
- Globalsign's SSL certificate products
- Source code analysis of the implementation mechanism of multisets in guava class library
- Lvs+kept highly available cluster
- Vit (vision transformer) principle and code elaboration
- 17.内存分区与分页
- What if the chat record is gone? How to restore wechat chat records on Apple Mobile
- C language: the sorting problem of circle number reporting
- I want to talk about yesterday
- Can Console. Clear be used to only clear a line instead of whole console?
- Star leap plan | new projects are continuously being recruited! MSR Asia MSR Redmond joint research program invites you to apply!
猜你喜欢
DVWA range exercise 4
vim 出现 Another program may be editing the same file. If this is the case 的解决方法
Hongke case study on storm impact in coastal areas of North Carolina using lidar
DC-5靶机
[the way of programmer training] - 2 Perfect number calculation
Bottom Logic -- Mind Map
C language array
JD home programmers delete databases and run away. Talk about binlog, the killer of MySQL data backup
Complementary knowledge of auto encoder
Tableau makes data summary after linking the database, and summary exceptions occasionally occur.
随机推荐
Ml and NLP are still developing rapidly in 2021. Deepmind scientists recently summarized 15 bright research directions in the past year. Come and see which direction is suitable for your new pit
Exness: positive I win, negative you lose
The latest idea activation cracking tutorial, idea permanent activation code, the strongest in history
Pat 1059 prime factors (25 points) prime table
Introduction to the button control elevatedbutton of the fleet tutorial (the tutorial includes the source code)
ArgMiner:一个用于对论点挖掘数据集进行处理、增强、训练和推理的 PyTorch 的包
16. Memory usage and segmentation
DVWA range exercise 4
Possible to restore a backup of SQL Server 2014 on SQL Server 2012?
Fastlane one click package / release app - usage record and stepping on pit
Fly tutorial 02 advanced functions of elevatedbutton (tutorial includes source code) (tutorial includes source code)
Flet教程之 按钮控件 ElevatedButton入门(教程含源码)
Understand bloomfilter in one article
JD home programmers delete databases and run away. Talk about binlog, the killer of MySQL data backup
C language function
Classification and application of AI chips
Openssl3.0 learning 20 provider KDF
Global and Chinese markets of NOx analyzers 2022-2028: Research Report on technology, participants, trends, market size and share
Cadence physical library lef file syntax learning [continuous update]
[notes] in depth explanation of assets, resources and assetbundles