多模态推荐系统综述:四、模型优化

news2024/11/16 5:28:01

四、模型优化

由于多模态信息的存在,当多模态编码器和推荐模型一起训练时,模型训练的计算要求大大增加。因此,多模态推荐模型在训练过程中可以分为两类:端到端训练和两步训练。
端到端训练可以利用反向传播获得的每个梯度来更新模型中所有层的参数。而两步训练包括第一阶段预训练多模态编码器和第二阶段面向任务的优化。
在这里插入图片描述

4.1 端到端训练

由于多模态推荐系统使用图片、文本、音频和其他多媒体信息,因此在处理这些多模态数据时,通常采用其他领域中的一些常用编码器,如Vit[13]、Resnet[17]、Bert[12]。这些预训练模型的参数往往非常庞大。例如,Vit-Base[13]的参数数量达到86M,这对计算资源来说是一个巨大的挑战。

为了解决这一问题,大多数MRS直接采用预训练编码器,仅以端到端的模式训练推荐模型。

NOVA和VLSNR使用预训练编码器对图像和文本特征进行编码,然后通过模型嵌入得到的多模态特征向量,并向用户推荐。结果表明,在不更新编码器参数的情况下引入多模态数据也可以提高推荐性能。
MCPTR通过推荐和对比损耗,仅用100个历元微调编码器参数。

一些端到端的推荐方法也旨在减少计算量,同时提高推荐性能,它们通常会减少培训时需要更新的参数数量。

例如,MKGformer是一种多层变压器结构,其中共享了许多关注层参数以减少计算量。
FREEDOM设计用于冻结图结构的一些参数,显著降低内存开销,并实现去噪效果以提高推荐性能。

FREEDOM: A Tale of Two Graphs: Freezing and Denoising Graph Structures for Multimodal Recommendation 2023

以前的工作将多模态特征融合到项目ID嵌入中以丰富项目表示,因此无法捕获潜在的语义项目结构。在这种背景下,LATTICE提出明确地学习项目之间的潜在结构,并实现多模态推荐的最新性能。然而,我们认为LATTICE的潜在图结构学习是无效的和不必要的。实验证明,在训练前冻结其项目结构也能获得竞争性成绩。
基于这一发现,我们提出了一个简单而有效的模型,称为FREEDOM,该模型冻结了项目-项目图,同时对多模式推荐中的用户-项目交互图进行去噪。从理论上讲,我们通过图谱的角度来研究自由度的设计,并证明它在图谱上有一个更紧的上界。在对用户项交互图进行去噪处理时,设计了一种对度敏感的边缘剪枝方法,在对图进行采样时以较高的概率剔除可能存在的噪声边缘。
在这里插入图片描述

4.2 两步训练

与端到端模式相比,两阶段训练模式能够更好地针对下游任务,但对计算资源的要求更高。因此,很少有MRS采用两步训练法。
PMGT参考Bert的结构,提出了一种预训练图变换器。它学习项目表示有两个目标:图结构重构和屏蔽节点特征重构。在POG中,训练一个经过训练的变形金刚学习服装匹配知识,然后通过一个布料生成模型向用户推荐。
此外,在顺序推荐任务中,它是常见的,在这种情况下,很难在端到端方案中训练模型。
例如,在预训练阶段,MML首先通过元学习训练元学习者以增加模型泛化,然后训练项目嵌入生成器第二阶段。此外,TESM和Victor分别预训练了一个设计良好的图神经网络和一个视频转换器。

参考论文

Multimodal Recommender Systems: A Survey

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1377854.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024.1.11 关于 Jedis 库操作 Redis 基本演示

目录 引言 通用命令 SET & GET EXISTS & DEL KEYS EXPIRE & TTL TYPE String 类型命令 MGET & MSET GETRANGE & SETRANGE APPEND INCR & DECR List 类型命令 LPUSH & LRANG LPOP & LPOP BLPOP & BRPOP LLEN Set 类型命…

Shutter Encoder多媒体转换v17.8

软件介绍 多媒体包含种类繁多的各种文件格式,每种格式都有其不同的特征和所谓的“怪癖”。 因此,如果使用多种图像、视频或音频格式,找到一个集中的软件来从一个地方处理所有这些格式可能会非常棘手。 这就是 Shutter Encoder 基本上允许做的…

科研绘图(二)气泡图

气泡矩阵图(Bubble Matrix Plot),通常用于显示三个变量之间的关系。这种图表类型将数据点表示为气泡的形式,其中气泡的大小通常表示第三个数值变量的大小。图表的X轴和Y轴代表两个分类或定量变量。颜色可能代表另一个分类变量或是…

计算机缺失msvcp120.dll的最新解决方法,实测可以完美修复

在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是“msvcp120.dll丢失”。msvcp120.dll是Microsoft Visual C Redistributable Package的一部分,它是运行许多基于Windows操作系统的应用程序所必需的动态链接库文件之一。如果计算机…

矿山无人驾驶方案

矿山无人驾驶运输系统,可实现露天矿采煤装载运输的无人化,满足智能矿山安全、高效、绿色、环保等目标。 无人驾驶应用的总体技术架构包括“车端、场端、云端”三个层面以及相应的安全保障体系,其中车端的智能矿卡具备车辆感知、通信、决策和执…

数字信号处理教程学习笔记1-第2章时域中的离散信号和系统

信号处理的任务示意方框图 模拟信号和数字信号分别是啥样的,有啥区别

【AI视野·今日CV 计算机视觉论文速览 第286期】Tue, 9 Jan 2024

AI视野今日CS.CV 计算机视觉论文速览 Tue, 9 Jan 2024 Totally 121 papers 👉上期速览✈更多精彩请移步主页 Daily Computer Vision Papers Dr$^2$Net: Dynamic Reversible Dual-Residual Networks for Memory-Efficient Finetuning Authors Chen Zhao, Shuming Li…

富唯智能新研发的复合机器人,轻松破解汽车底盘零配件生产中的难题

随着汽车工业的快速发展,对于底盘零配件的需求也日益增长。为了满足市场需求,智能物流解决方案在汽车底盘零配件生产中扮演着越来越重要的角色。如何实现高效、准确的生产和物流管理,以满足市场快速变化的需求,成为了汽车生产商亟…

日期类的实现|运算符重载的复用

前言 通过前面C入门与类与对象的学习,今天我们将运用所学的知识点完成一个Date类。 本节目标 运用所学知识完成Date类。详细讲解运算符各种重载。理解运算符重载的复用。 一、Date类的六个默认成员函数 六个成员函数,Date类只需要自己实现构造函数即可…

比尔盖茨:如果只能解决一个问题,我的答案总是营养不良

谷禾健康 当地时间12月19日,微软联合创始人、亿万富翁比尔盖茨发布了对来年的年度预测,称 2024 年将是一个“转折点”。 在这封长达 10 页的信中他展示了对人工智能领域的更多创新、婴儿营养不良问题的突破、气候变化谈判的进展等多方面的期待。 人工智能…

vue-virtual-scroll-list(可单选、多选、搜索查询、创建条目)

element-ui-解决下拉框数据量过多问题(vue-virtual-scroll-list)_element-ui下拉框数据太多如何优化-CSDN博客 的升级版 参考链接:封装el-select,实现虚拟滚动,可单选、多选、搜索查询、创建条目-CSDN博客 1.封装组件 select.v…

计算机组成原理-计算机的发展(计算机系统 硬件发展 软件发展 微处理器和微计算机的发展 摩尔定律 发展趋势)

文章目录 总览什么是计算机系统软件硬件的发展第一代第二代第三代第四代微处理器的发展相关人物摩尔定律 软件的发展目前的发展趋势小结 总览 什么是计算机系统 软件 语言处理程序就是编译程序之类的 调试代码就是服务程序 硬件的发展 第一代 逻辑元件:处理电信…

通达信波动指数指标公式,识别盘整还是趋势

波动指数(Choppiness Index)是由澳大利亚商品交易员E.W. Dreiss开发的技术指标,用来判断市场是盘整还是趋势。该指标属于非方向性指标,不用于判断市场方向,而仅用于识别市场趋势。 指标的取值范围为0到100,数值越高,表…

Linux进程管理、ps命令、kill命令

每一个程序在运行的时候都会被操作系统注册为系统中的一个进程 补充一下操作系统的内容: 进程实体(又称进程映像):程序段、相关数据段、PCB三部分构成 进程是进程实体的运行过程,是系统进行资源分配的一个独立单位 …

xtdrone用键盘控制无人机飞行 无法起飞

运行案例 解锁无人机螺旋桨转动但无法起飞 也未报错 解决方法: 在QGC中修改:PX4飞控EKF配置 将PX4使用的EKF配置为融合GPS的水平位置与气压计高度。 如果我们想使用视觉定位,就需要把修改配置文件。 此修改意味着EKF融合来自mavros/vision_…

【QUARTZ】springboot+quartz动态配置定时任务

Quartz 介绍 Quartz 定时任务可分为Trigger(触发器)、Job(任务)和Scheduler(调度器),定时任务的逻辑大体为:创建触发器和任务,并将其加入到调度器中,如下图所…

【Android+物联网】Android封装MQTT连接阿里云物联网平台

前言: 亲测可行,本文实现Android封装MQTT连接阿里云物联网平台。将MQTT协议和连接阿里云平台的操作通过Android studio写入APP中,并简单设计UI。实现手机APP远程控制单片机LED灯亮灭的功能。 关于《Android软件开发》,见如下专栏…

Unity填坑-灯光烘焙相关

Unity填坑-灯光烘焙相关 文章目录 Unity填坑-灯光烘焙相关前言一、Light的模式二、光的效果分类三、各种Light模式与烘焙的说明1.Realtime,实时光2.baked,烘焙光3.mixed,混合 四、实时全局光五、其他说明1.动态物体的全局光照效果2.手机使用烘焙注意的点3.其他设置 前言 项目组…

gem5学习(12):理解gem5 统计信息和输出——Understanding gem5 statistics and output

目录 一、config.ini 二、config.json 三、stats.txt 官方教程:gem5: Understanding gem5 statistics and output 在运行 gem5 之后,除了仿真脚本打印的仿真信息外,还会在根目录中名为 m5out 的目录中生成三个文件: config.i…

Mr_HJ / form-generator项目学习-增加自定义的超融组件(二)

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码: https://gitee.com/nbacheng/n…