社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  aigc

WWW 2024 | 华为、清华提出个性化多模态生成新方法,让AIGC更懂你

PaperWeekly • 1 年前 • 320 次点击  

Stable Diffusion、Midjourney 和 Sora 等文生图/视频模型获得惊人的效果,但他们对于不同的人生成的结果都一样,不具备个性化。下面这篇论文中,来自华为和清华的研究者率先让多模态生成的内容个性化,使生成的内容更懂用户,更具吸引力。

论文标题:
PMG: Personalized Multimodal Generation with Large Language Models

收录会议:

ACM Web Conference 2024

论文链接:

https://arxiv.org/abs/2404.08677

代码链接:

https://github.com/mindspore-lab/models/tree/master/research/huawei-noah/PMG


个性化生成指的是将用户的偏好作为依据进行生成,让用户更容易对生成的内容产生兴趣。图 1 展示了其在聊天软件中的应用场景,当用户输入“很好玩!”时,聊天软件能够捕捉用户开心、快乐的情绪,并自动生成笑脸表情供用户使用。


个性化生成则会进一步考虑用户历史行为中表现出的对“可爱的小猫”的偏好,进而生成更可能受用户青睐的笑脸猫表情。除此之外,该技术还可以广泛应用于电商(例如生成个性化背景、人体形态、颜色)、在线广告、游戏、创作辅助等领域。

▲ 图1. 在聊天软件中个性化生成能够根据用户偏好,生成符合其偏好的表情包。



方法

本工作提出了一个基于大语言模型的个性化多模态内容生成方法,称为 PMG(Personalized Multimodal Generation)。下面图 2 用个性化生成《泰坦尼克号》电影海报为例展示了其模型结构。

1.1 方法总览

▲ 图2 PMG 的模型结构


在本例中,用户历史行为指的是其观影和对话历史,目标物品则是电影《泰坦尼克》真实的电影海报。实现个性化的第一步是提取用户偏好,这里我们利用大模型对用户历史行为进行分析来实现。我们采用两个互补的方法:


① 通过冻结的大语言模型,从用户行为数据中提取出能够明确表达其偏好的自然语言关键词(称为“硬用户偏好”);


② 训练可调整的大语言模型,从用户行为中学习出隐含的偏好向量(称为“软用户偏好”)。


与此同时,目标物品(即电影《泰坦尼克》)也被大模型转换为显式关键词(称为“目标物品关键词”)用于控制生成的具体内容。最终,这些用户偏好信息和目标项关键词将被整合到生成模型(例如扩散模型或多模态大语言模型)中,得到既反映用户个性偏好、又符合目标物品的多模态生成结果。

1.2 关键词生成

为了从用户的历史行为中提取出反映其个性化偏好的关键词,我们人工构造了提示词以对大语言模型进行指导。具体来说,提示模板中包含三个关键要素:任务指令 、属性 和任务示例

任务指令 描述了需要大语言模型执行的任务(即“提取用户偏好”)。属性 是各个场景中生成时需要重点关注的多个角度,例如对于表情包可以是“情绪、角色、风格”,对于电影海报可以是“年代、演员、类型”等等。示例 则提供了期望的输出格式和样例关键词,不仅有助于指导模型的回答,也确保了输出结果的标准化。

有了这个提示模板,我们就可以让大语言模型针对每个属性 生成相应的用户偏好关键词 ,并将它们组合在一起,形成全面反映用户偏好的关键词集合。

生成目标项目关键词 的过程则相对简单,这里只有一个单独的 ,且没有涉及到对话数据

1.3 隐向量生成

在关键词生成模块中,我们已经提取出的关键词集合 ,这种离散的语义表示能够直观地概括关键信息。而为了更加精准地反映用户偏好和目标物品的特征,我们还引入了连续的隐向量表示,以期捕捉更丰富和细腻的语义特征。

这种结合关键词和隐向量的混合表示方式,可以很好地弥补单一表示形式的不足。自然语言关键词虽然易于理解和解释,但表达能力受限,而隐向量虽然可以提供更精细的语义刻画,却需要更多的训练资源和计算开销。只有将两者进行混合表示,才能够兼顾准确性和效率。

隐向量的训练过程如图 3 所示。为了增强大语言模型对多模态生成任务的理解,消除生成过程中的语义偏差,我们引入 P-Tuning V2 [1] 和多模态表大模型进行微调,称之为“偏差校正大模型”。这些多模态表征会被传递给大语言模型,并且它们在向量层中的对应参数是可训练的。

在  P-Tuning V2 的方法中,每个 Transformer 层的向量序列都被添加了 个前缀向量 它们和多模态表征 一起作为该模型的可训练参数。该过程可以表示为:

其中 表示大语言模型的两部分输出, 被作为从多模态表征中提取出的偏好隐向量,这部分输出将被用于后续的生成任务。生成器结合这个偏好隐向量以及用户关键词,生成出最终的多模态内容,生成的结果与监督信号进行 MSE 损失计算,并通过反向传播的方式,更新可训练的偏差校正大模型参数。

▲ 图3 用户偏好向量训练流程

1.4 用户偏好和目标项的平衡

在生成推理过程中,总共有两个重要的条件需要考虑,即用户偏好条件和目标项条件,简单地进行组合可能导致过于关注其中一个条件,而忽略了另一个条件,我们需要一种方法来平衡两者在生成过程中的权重。对此,我们引入了两个指标来评估生成结果的质量:


① 个性化水平:这个指标反映了生成内容与用户偏好之间的相似程度。它可以帮助我们确保生成结果能够契合用户的个人喜好。


② 准确度:这个指标则衡量了生成内容与目标内容之间的匹配程度。它可以确保生成结果能够满足预期的目标要求。


通过同时监控这两个指标,我们可以全面地评估生成效果,确保在满足用户偏好和目标要求之间达到适当的平衡。具体来说,这两个指标的计算是通过预训练的多模态网络(如 CLIP),将生成结果 和关键词 转换为向量 ,它们之间的余弦相似度被作为个性化水平 和准确度
平衡这两个指标的方式为最大化 对数的加权和:

由于取了对数,优化目标会更重视弱势指标的数值提升。超参数 通常设置为0.5,也可以根据使用场景和需求进行调整,以实现不同程度的个性化。


实验结果

为了验证 PMG 模型的性能,我们设计了服装图像、电影海报、表情符号三个典型的应用场景,使用 Llama2-7B 作为基础的大模型进行了实验,生成效果如图 3 至  5 所示。在每个场景中,PMG 都能够生成反映用户偏好的个性化内容。


(1)服装图像生成:我们使用时尚服装数据集 POG,基于用户的历史浏览记录,生成个性化的服装图像。例如,为男性用户生成更偏男性风格的服装,为女性用户生成更偏女性风格的服装。


(2)电影海报生成:我们使用 MovieLens 数据集,根据用户的观影历史,生成个性化的电影海报。例如,为喜欢看卡通电影的用户,生成更卡通风格的电影海报。


(3)表情符号生成:利用用户的对话和表情使用记录,生成个性化的表情符号。例如,为喜欢小动物的用户,生成一些小猫咪表情。

▲ 图3 服装场景生成效果

▲ 图4 电影海报场景生成效果

▲ 图5. 表情包场景生成效果


我们用 POG 和 MovieLens 数据集对服装和电影海报这两个场景进行了量化评估,评估采用图像相似度指标 LPIPS 和 SSIM,其中“历史”列表示生成结果与用户历史交互项目之间的相似度,用于衡量生成的个性化程度;“目标”列表示生成结果与目标物品之间的相似度,用于衡量生成的准确度。测试结果如下表,PMG 在实现了在不损失准确度的情况下,大幅度提升了生成结果的个性化程度。

我们也通过用户调研的方式进行了评估,结果是 PMG 产生的内容得分远超过没有个性化的生成内容,这表明个性化多模态生成能够有效改善用户体验,将有广阔的应用空间和巨大的商业潜力。



总结

在这篇论文中,我们提出了一种名为 PMG 的方法,用于个性化多模态生成。利用大型语言模型,我们提取用户偏好并将其作为生成器的生成条件以实现个性化。个性化多模态生成技术有巨大的应用潜力,但相关研究尚处于探索阶段,这项工作为其进一步发展铺平了道路,使得创造定制和引人入胜的用户体验成为可能。



参考文献

[1] Liu, X., Ji, K., Fu, Y., Tam, W. L., Du, Z., Yang, Z., & Tang, J. (2021). P-tuning v2: Prompt tuning can be comparable to fine-tuning universally across scales and tasks. arXiv preprint arXiv:2110.07602.



更多阅读


#投 稿 通 道#

 让你的文字被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。


📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算


📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿


△长按添加PaperWeekly小编



🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧


·
·
·

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/171906
 
320 次点击