论文《Where to Go Next for Recommender Systems? ID- vs.Modality-based recommender models revisited》

Where to Go Next for Recommender Systems? ID- vs.Modality-based recommender models revisited

论文核心议题是:纯基于多模态的模型MoRec(modality-based recommendation model)能否比纯基于ID的模型IDRec(e ID-based model)效果好?

研究4个问题:
(i)MoRec和IDRec,哪一个在实际的推荐中效果更好,特别是热启问题中
(II)NLP及CV领域的最新进展能不能提升MoRec
(iii)怎样有效利用多模态表示,是直接使用还是必须调整
(iv)MoRec在实际应用中有哪些关键挑战

IDRec:使用唯一的ID标识用户和item,使用这些用户与其交互的item数据学到的模型。当前推荐领域基本都是。
缺点:
a. 高度依赖ID的交互,当用户和item交互比较少时很难学习,例如冷启问题
b. 跨平台迁移性不好,这样无法运用到大模型,发挥到大模型的优势
c. 无法利用到其他领域(NLP/CV)的最新大模型进展
d. 在可解释性及可视化方面相对有明显的缺陷

MoRec之前一直在冷启方面有应用,但是在常规推荐方面很少应用。随着BERT、GPT、ChatGPT、ViT的发展,基于多模态的推荐还是大有可为。

问题一:配备多模态编码ME(modality encoders),在常规推荐中是否比IDRec要好
评估模型结构:DSSM、SASRec

问题二:最近的NLP及CV领域的进展能否提升准确性
a. 通过参数量不同的ME比较
b. 通过性能强弱不同的的ME比较
c. NLP和CV数据集上面有pre-train和没有预训练的ME比较

问题三:MoRec学到的表示是否通用
将ME编码的Embedding作为特征丢到two-stage(TS)里面,和ME直接end-to-end(E2E)学习相比较

loss如下:负采样常规做法, L L L是用户序列长度
在这里插入图片描述
数据集情况
MIND:微软新闻推荐平台的数据集,使用每个文章的标题表示这个item
HM:H&M平台衣服购买数据集
Bili:在线视频推荐平台
HM集Bili数据集使用和item有关的图像表示item(每个item一张图)

最理想的数据集是用户和item的交互仅受到标题或者文本的影响,但是HM及Bili数据集很明显不满足,不过确实很难找到理想的数据集。
在这里插入图片描述
每个图片的size设置为 224 × 224 224\times224 224×224 ,每个标题设置为30个tokens。MIND中设置用户最近23个交互item作为序列sequence;HM及Bili选取最近13个交互的图片。交互数量小于5个的用户剔除,因为不考虑冷启问题。

数据集长下面这样:论文提到图片里面包括了价格及文本描述,但是纯多模态的模型无法利用到,IDRec可以用到这些信息,如果多模态的应用上效果会更上一层楼。
在这里插入图片描述

实验设置
IDRec 的设置:
学习率设置 γ \gamma γ in {1𝑒-3, 5𝑒-4, 1𝑒-4, 5𝑒-5}
embedding_size in m {64, 128, 256, 512, 1024, 2048, 4096}.
batch_size DSSM:1024 SASRec:128
weight decay β \beta β in {0.1, 0.01, 0}

MoRec的设置,因为是预训练好的,学习率设置较小
学习率设置 γ \gamma γ in {1𝑒-4, 5𝑒-5, 1𝑒-5}
weight decay β \beta β in {0.1, 0.01, 0}

DSSM中MLP的层数设置 l l l in {0, 1, 3, 5},不过提到设置为0总是最好;SASRec 的Transformer block layer中 head_num 设置为2;其他参数IDRec和MoRec相同。对于IDRec和MoRec,除了item encoder不同外,其他的结构都相同,结构如下,对于视频和文本的输出通过一个DT-layer转换下,形成和IDRec相同的维度的向量。

在这里插入图片描述
处理文本时使用预训练的BERT和RoBERT作为多模态编码器ME,处理视频时使用预训练的RecNet和Swin Transformer作为ME。

实验结果分析

在这里插入图片描述

DSSM比SASRec要差些,而且差的非常多。在DSSM结构中,MoRec都比IDRec要差,但是在SASRec中情况反过来了,MoRec要比IDRec要好,提升较大。说明需要一个比较强的基线和训练方法才能充分发挥多模态的优势。后面的实验都是基于SASRec来做的。

MoRec vs IDRec

对比MoRec和IDRec在样本比较充分的item上面效果。分别把交互数量小于20,50,100的用户从数据集中去掉,新的数据集记为warm-20,warm-50, warm-100,对比MoRec和IDRec在这三个数据集上的效果。

在这里插入图片描述

在这里插入图片描述
结论:用户交互的样本越充分,IDRec效果越好,符合预期。同时,MoRec在warm-20和warm-50中效果比IDRec好,在warm-100中比IDRec略差。说明使用了强大的ME的MoRec在常规推荐中效果还是非常有竞争力的。

更大的MoRec

实验证明预训练模型越大的MoRec效果越好,说明NLP及CV领域新出现的大模型可以应用到推荐中,潜力无限。
在这里插入图片描述

实验验证预训练PE(pre-train)后的ME比随机初始化后从头开始训练TFS(training-from-scratch)效果要好
在这里插入图片描述

ME抽取的多模态特征是否通用

通过2种方式验证多模态抽取的方式是否通用,一个是经典的two-stage(TS)推荐方式,将多模态抽取的特征表示加入到常规的推荐系统中,为了增强适配性,在TS基础上面加入了dense层(TS-DNN),另外一种是端到端(E2E)的训练。可以但大量TS的效果很差,TS-DNN要好很多,但是比IDRec还是要差些,E2E的效果最好。整体说明ME抽取的向量表示还是不够通用。
在这里插入图片描述

关键挑战

训练成本
越大的预训练模型,耗时及计算成本越高,这也是多模态端到端很难实际大规模落地的原因。
在这里插入图片描述

额外的预训练
使用数据集对ME进行第二轮预训练效果较好,
在这里插入图片描述

结合IDRec和MoRec

把IDRec和MoRec结合起来,向量表示通过 add 或者 concat方式 聚合起来。结果如下
与 IDRec 和 MoRec 之间的最佳结果相比,基于 TS 和 E2E 的 MoRec 都没有改进。 通过添加 ID 特征,基于 E2E 的 MoRec 性能甚至比纯 IDRec 和纯 MoRec 更差。 以前的出版物经常声称通过为 IDRec添加多模态功能来获得更好的结果。 可能是在常规(相对于冷启动)设置中,基于 E2E 的 MoRec 和 IDRec 都从用户-项目交互数据中学习用户偏好,因此它们不能相互补充,而对于基于 TS 的 MoRec,由于 ID Embedding 比不变的模态特征好太多,它们的组合也没有改善结果。 第二个原因可能是在结合 ID 和多模态特征时需要更高级的技术。 其实从另一个角度来看,具有ID特征的MoRec会失去MoRec的很多优势。 例如,具有 ID 特征的 MoRec 不适合构建基础推荐模型,因为由于隐私等问题ID 不易转移。
在这里插入图片描述

模型坍塌

MoRec没有合适的超参数(主要是学习率)时容易坍塌。这可能是因为 ME 之前已经在 NLP 和 CV 数据集上进行了预训练,其学习步幅可能与其他从头开始训练的模块不同。 相比之下,即使有许多不同的𝛾,IDRec 也没有崩溃。
在这里插入图片描述

附录

MoRec在冷启上面完爆IDRec,如下图
在这里插入图片描述
用到的预训练模型

模型参数量地址
BERTtiny4Mhttps://huggingface.co/prajjwal1/bert-tiny
BERTsmall29Mhttps://huggingface.co/prajjwal1/bert-small
BERTbase109Mhttps://huggingface.co/bert-base-uncased
RoBERTabase125Mhttps://huggingface.co/roberta-base
OPT125M125Mhttps://huggingface.co/facebook/opt-125M
ResNet1812Mhttps://download.pytorch.org/models/resnet18-5c106cde.pth
ResNet3422Mhttps://download.pytorch.org/models/resnet34-333f7ec4.pt
ResNet5026Mhttps://download.pytorch.org/models/resnet50-19c8e357.pth
Swin-T28Mhttps://huggingface.co/microsoft/swin-tiny-patch4-window7-224
Swin-B88Mhttps://huggingface.co/microsoft/swin-base-patch4-window7-224
MAEbase86Mhttps://huggingface.co/facebook/vit-mae-base
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值