【文献阅读四】An Effective and Efficient Tuning Framework to Align Large Language Model with Recommendation

文献来源:TALLRec: An Effective and Efficient Tuning Framework to Align Large Language Model with Recommendation
期刊会议:RecSys '23: Proceedings of the 17th ACM Conference on Recommender Systems
本文只是对原文章做的一个初步阅读与理解,如有错误的地方,还请多多指点。想了解更多请原读原文。

一、摘要

本文主要提出了一个关于将 LLM 和推荐系统相结合的微调框架 TALLRec 。该框架是为了解决两个问题:① LLM 的训练任务和推荐任务存在巨大差距; ②预训练期间的推荐数据不充足。该框架通过推荐数据来微调 LLM ,从而建立一个 LRLMs

二、介绍

在最近的实验中,主要依赖上下文学习的方法,将 LLM 视为传统推荐模型 ,即 LLM 用于对这些模型过滤的候选项目进行重新 排序。但是,这些方法只能达到与传统模型差不 多的性能。更糟糕的是,只使用上下文学习可能无法提出建议。原因如下:

  • ①由于训练任务和推荐任务之间的差距,LLM 可能无法很好的与推荐任务对齐,并且在预训练中以推荐为导向的语料库有限;
  • LLM 的效果可能会受到底层的推荐模型影响,由于其容量有限,可能无法将目标物品包含在候选列表中。
    sdsFigure 1

因此,作者提出了 TALLRec ,通过轻量级微调,将 LLM 与推荐任务对齐。为了节省计算资源,采用了少样本进行微调。
实验验证了框架的高效性和鲁棒性:

  1. 我们的 TALLRec 框架可以在少样本场景下快速激发 LLMs 的推荐能力。
  2. 通过 TALLRec 框架训练的LLMs在不同领域(例如,电影→书)上具有很强的泛化能力。

三、TALLRec

如下是框架图:
Figure 2
TALLRec 包含两个阶段:alpaca tuning(主要为了增强LLM的泛化能力)和 rec-tuning(模拟指令微调格式,将 LLM 在推荐任务上微调)。

alpaca tuning

该阶段的微调利用了 Alpaca 来训练 LLM
Formula 1

alpaca tuning 不是很理解,后续在深入了解了解。

rec-tuning

在此之前介绍一下指令微调(Instruction Tuning)。
Table 1
步骤如下:

  • step1:使用自然语言定义一个 task instruction
  • step2:设计并构建输入输出(Task Input/Output);
  • step3:把 Task InstructionTask Input 整合成指令输入,指令输出作为对应输出;
  • step4:把指令输入和指令输出作为格式对,对 LLM 指令微调。

Table 2
推荐微调任务的步骤和指令微调类似。

  • step1: 将推荐数据格式化为指令微调模式
  • step2: 构建 Task Instruction 直接让 LLM 给出答案,并规定 Task Output 输出答案格式(Y/N)
  • step3: 将 Task Input 数据基于 ratings 划分为两类,liked itemsdisliked items,同时包含 target new item
  • step4: 最后整合 Instruction InputInstruction Output

Lightweight Tuning

轻量级的中心前提是当代语言模型可能拥有过多的参数,并且它们的信息集中在较低的内在维度上。因此,我们可以通过调整参数的一个小子集来获得与整个模型相当的性能。具体来说,我们采用 LoRA ,它涉及冻结预训练的模型参数,并将可训练的秩分解矩阵引入到 Transformer 架构的每一层,以促进轻量级调整。因此,通过优化秩分解矩阵,我们可以在保持原始参数处于冻结状态的同时高效地融入补充信息。总的来说,最终的学习目标可以计算为:
Formula 2
通过 LoRA ,我们只需要原始 LLM 参数的千分之一就可以完成训练,完成训练过程。

TALLRec框架微调的LLM是LLaMA,开源且训练集公开。

这里的轻量级微调以及涉及到的秩分解矩阵也不是很明白,也需要后续深入了解。
上述的公式1和公式2出现在这篇论文LoRA: Low-Rank Adaptation of Large Language Models

四、实验结果

RQ1: How does TALLRec perform compared with current LLMbased and traditional recommendation models?

T&F 3

  1. TALLRec 比传统方法和 LLM-based 方法表现的性能要好;
  2. LLM-based 方法表现的性能和随机猜测差不多,但通过 TALLRec 训练的 LLM 性能有很大提升。在推荐任务和语言任务存在着不小 gap ,因此用推荐数据在 LLM 上进行 rec-tuning 很重要;
  3. 传统方法在有限的训练样本上无法快速学习推荐能力;
  4. GRU-BERTDROS-BERT 并没有所有情况下比本体性能表现好,在少样本训练上单纯加入文本描 述并不会增强传统推荐模型的能力。

### RQ2: How do the different components in TALLRec affect its effectiveness?

  1. AT 的性能和 RTTALLRec 比起来下降很多,所以 rec-tuning 是增强LLM的能力的最大因素;
  2. 在样本数小于128时,alpaca-tuning 可以增强 LLM 在新任务上的泛化能力;
  3. 随着样本数的增加,TALLRec 不断超越 baselinerec-tuning 可以利用有限的样本激发 LLM 的推荐能力。

RQ3: How does TALLRec perform under cross-domain recommendation?

Figure 4

  1. 在book数据集上, TALLRec(Movie) 表现的性能很出色,因此 TALLRec 具有跨域泛化能力,而不是像传统的推荐器那样只拟合单一的域。
  2. 在样本数超过64时,TALLRec (Both) 在两个测试集中超过 TALLRec (Movie)TALLRec (Book) 。这表明 TALLRec 可以无缝集成不同领域的数据,从而提高其泛化性能。

(PS: 就Figure 4(b)来说,TALLRec(Both) 并没有在样本数量超过64的时候,性能比另外两种好,不知道为什么作者得出此结论)

五、结论

作者提出 TALLRec 这个微调框架是为了解决 LLM 无法有效的与推荐任务对齐的问题,该框架通过两个阶段的微调(alpaca tuning/rec-tuning)实现。实验数据也表明了 TALLRec 框架可以很好的将 LLM 与推荐任务对齐,并比传统模型的性能更好,此外也展现了不错的跨域泛化能力。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值