通过语言模型奖励实现视频大型多模态模型的直接偏好优化

在人工智能领域,大模型(LLM)的泛化能力一直是研究的重点。最新的研究通过直接偏好优化(DPO)技术,显著提升了LLM在视频指令跟随等任务中的表现。然而,提供信息丰富的反馈以检测生成响应中的幻觉现象,仍然是一个重大挑战。

本文针对这一问题,提出了一种创新的解决方案,即通过直接偏好优化(DPO)技术对视频大型多模态模型(LMM)进行优化。本方法利用详细的视频字幕作为视频内容的代理,这不仅为语言模型提供了丰富的上下文信息,而且极大地增强了模型对视频问答(QA)预测的评分能力。这种方法的优势在于:

成本效益:相比于传统的基于人类偏好数据的收集方法,该方法大幅降低了成本,同时保持了高效的反馈系统。

可扩展性:通过使用语言模型生成的详细字幕,该方法能够处理更大规模的视频数据,而不受人类评估的局限。

鲁棒性:新框架在评估生成响应的事实上准确性方面表现出色,尤其是在检测幻觉现象方面,显著提高了模型的鲁棒性。

性能提升:实验结果表明,应用DPO方法后,视频LMM在视频QA任务上的性能得到了显著提升,确立了新的最先进性能基准。

方法

使用GPT-4V创建视频字幕数据集的工作流程

图1展示了研究者们提出的工作流程图,其中包括以下几个关键步骤:a) 使用GPT-4V创建详细的视频字幕数据集b) 为SFT生成视频指令数据c) 将字幕集成到反馈循环中以增强DPO

研究者们首先采用了GPT-4V模型来生成详细的视频字幕。这个过程包括从WebVid、VIDAL和ActivityNet等数据集中选取视频,并从中均匀提取十帧作为视频内容的代表。这些帧序列被用作GPT-4V模型的输入,以生成与视频内容相匹配的连贯字幕。研究者们精心设计了提示(prompt),以确保字幕能够全面反映视频内容,包括时间动态、世界知识、物体属性、空间关系等要素。

接下来,研究者们利用从详细视频字幕中生成的视频指令数据进行监督式微调(SFT)。他们从ActivityNet、WebVid和VIDAL数据集中随机抽取一定数量的字幕,并使用ChatGPT基于这些详细视频字幕生成问题-答案对。这一步骤确保了指令数据与视频内容的事实一致性,并且为模型的微调提供了丰富的训练材料。

如何使用ChatGPT生成与视频字幕相关的三个问答对的指导方针

最后,研究者们提出了一种成本效益高的方法,通过DPO使用语言模型的反馈作为奖励。这种方法避免了直接使用GPT-4V进行奖励蒸馏的高成本和低效率。研究者们首先从SFT阶段的指令对中随机选择一部分,然后使用SFT模型生成多个响应。接着,他们利用ChatGPT处理包括问题、真实答案、模型预测和详细描述的输入,生成包括自然语言解释和数值奖励分数的输出。这个分数反映了预测答案的事实对齐程度和整体质量。

DPO方法,包括从LLM(Large Language Model)中采样多个输出,使用ChatGPT作为基于语言的反馈生成奖励分数,以及构建偏好数据集的过程

图2提供了所提出的基于事实增强的直接偏好优化(DPO)方法的详细说明。这个流程图包括以下几个关键组成部分:

  1. 多模型输出采样:使用大型语言模型(LLM)以一定温度参数(例如1.0)采样多个输出响应,这些响应是针对给定的视频和问题对生成的。

  2. 使用GPT-4V生成详细字幕数据集:GPT-4V模型接收视频帧序列作为输入,并生成详细的字幕,这些字幕捕捉了视频中的关键信息和事件。

  3. 生成SFT视频指令数据:利用详细的视频字幕,通过类似的方法生成视频指令数据,这些数据随后用于监督式微调(SFT)。

  4. 基于语言模型反馈的DPO:在DPO阶段,使用ChatGPT处理包括问题、真实答案、模型预测和详细字幕的输入。ChatGPT根据这些信息生成自然语言解释和奖励分数,这些解释和分数作为模型预测的事实对齐和质量的度量。

  5. 构建偏好数据集:根据ChatGPT提供的分数,选择高分数的响应作为正面例子,低分数的响应作为负面例子,构建用于DPO训练的偏好数据集。

  6. DPO目标定义:定义DPO的目标函数,该函数使用偏好数据集中的正面和负面例子来优化策略模型,使其生成更受偏好的响应。

  7. 评估和奖励分配:评估者使用图15中的提示对模型预测的答案进行评估,考虑相关性、准确性、清晰度和完整性,并给出一个1到5的分数。

  8. DPO训练:使用上述生成的奖励数据,通过DPO方法训练策略模型,使其学习生成更准确、相关且高质量的答案。

为了评估所提出的奖励分配方法的有效性,进行了与GPT-4V的比较分析。他们将这种方法与GPT-4V直接基于视频帧的评估系统进行了对比。研究团队从不同的视频数据集中抽取了样本,并为每个样本生成了问题和模型预测答案。使用GPT-4V对这些答案进行评分,结果显示,基于字幕的评估与GPT-4V的评分存在中等程度的正相关性,表明通过字幕代理的评估方法能够可靠地反映视频内容的理解。

大多数ChatGPT给出的评分都落在GPT-4V评分的一个标准差范围内,这进一步证明了使用字幕作为代理进行评估的适用性。这项评估不仅支持了研究者们的方法,而且为未来可能的改进提供了有价值的见解,例如通过引入更精细的评分系统或利用更先进的模型来提高评估的准确性。

评估使用字幕代替实际视频帧作为代理的奖励分配方法的有效性,通过比较ChatGPT和GPT-4V作为评估者时的分数差异和一致性

实验 

研究者们采用了Video-LLaVA作为视频LMM的骨干网络。这个模型使用了LanguageBind编码器来处理图像和视频帧输入,并通过一个MLP投影器将视觉嵌入映射到文本空间,最后使用Vicuna作为大型语言模型。在训练过程中,他们首先使用来自ALLaVA的650k图像字幕数据和他们自己蒸馏的900k视频字幕进行字幕预训练。在这个阶段,他们冻结了LanguageBind视觉编码器,并微调了MLP投影器和LLM。接下来,他们使用图像和视频领域的指令数据对模型进行微调,以提高其遵循指令的能力。在DPO训练阶段,他们使用了17k偏好数据进行训练。

不同模型在零样本视频问答基准测试中的表现,包括准确率得分

研究者们在MSVD-QA、MSRVTT-QA和TGIF-QA等三个基准数据集上评估了模型的性能。他们使用特定版本的ChatGPT来评估模型预测,并发现不同版本的ChatGPT对评估指标的绝对分数有显著影响,但模型的相对排名相对稳定。他们选择了一个特定的ChatGPT版本进行评估,并在实验中发现,与其他基线模型相比,他们的LLAVA-HOUND-DPO模型在视频QA任务上取得了显著的性能提升。

MSRVTT-QA和MSVD-QA中的示例,展示了LLAVA-HOUND-DPO生成更好响应的能力和现有基准评估的关键局限性

为了克服现有基准评估的局限性,研究者们提出了一种新的评估方法,该方法使用GPT-4V生成的详细字幕作为支持证据。他们为基准数据集中的相同视频生成了新的问答对,并应用了前面提出的奖励系统。这种新的长形式QA评估能够更全面地支持评估响应的相关性、准确性、清晰度和完整性。

视频问答(QA)基准评估方法
使用提出的基准评估方法在领域内(In-domain)和领域外(Out-of-domain)数据集上不同模型的性能评估结果
左侧图表展示了DPO模型在训练周期数上的测试集准确率。右侧图表比较了将DPO模型作为排名器(Ranker)与直接作为生成器(Generator)的性能差异

研究者们还分析了预训练对视频字幕生成能力的影响。他们展示了模型在不同数据集上的表现,涵盖了总共900k的蒸馏数据实例。使用GPT-4V进行自评估,作为性能的上限,而Video-LLaVA模型则作为比较分析的基线。结果表明,使用更多的蒸馏数据可以显著提高模型在领域内和跨领域数据集上的性能。尽管如此,与GPT-4V模型相比,仍存在一定的性能差距。

不同训练数据百分比下,模型在视频字幕任务上的表现,使用GPT-4V进行自我评估

研究者们还评估了特定数据子集的泛化潜力,揭示了不同类型数据集在训练时面临的不同泛化挑战。例如,WebVid子集侧重于相对静态场景,需要较少的数据即可有效训练,而VIDAL子集则以动态场景转换和多样化的视频主题为特点,可能需要更多的数据来实现有效的训练。

本研究不仅展示了预训练对提升视频字幕生成能力的重要性,而且还突显了在多样化数据集上进行训练的必要性。随着人工智能技术的不断进步,本研究的发现不仅为视频理解和多模态交互领域提供了宝贵的见解,也为未来的研究和模型开发奠定了坚实的基础。

论文链接:https://arxiv.org/abs/2404.01258

GitHub 地址:https://github.com/RifleZhang/LLaVA-Hound-DPO

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

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

相关文章

自然语言处理课程论文:《Attention is all you need》复现与解读

目录 1.背景介绍 1.1 文献介绍 1.2 研究背景 1.3 知识概述 1.3.1 机器翻译 1.3.2 attention机制与self-attention机制 2.数据来源与处理 2.1 数据集描述 2.2 数据处理 3. 模型架构 ​​​​​​​3.1 Positional Embedding ​​​​​​​3.2 Multi-Head Attention ​​​​​…

Qt-Advanced-Docking-System示例程序

写了一些简单的示例程序,帮助我更好地使用和了解Qt-Advanced-Docking-System 1.写一个如图页面布局的程序 m_pDockMangernew ads::CDockManager(this);this->setCentralWidget(m_pDockManger);ads::CDockWidget* centerDockWidgetnew ads::CDockWidget("中…

通过 PHP 实现自动爬虫爬取,以及分析抓取的数据

近年来,随着互联网的发展,数据爬取成为许多企业和个人所关注和需要的问题。数据爬取是通过编程技术从互联网上自动抓取数据进行分析,以达到自身的目的。其中,php 是一种非常常用且具有优势的编程语言,下面我们将讨论如…

JetBrains WebStorm 2024 mac/win版:效率至上,编码无忧

JetBrains WebStorm 2024 是一款专为前端开发者和全栈工程师打造的高 级集成开发环境(IDE)。它提供了对JavaScript、TypeScript、HTML5、CSS等技术的全面支持,帮助开发者更高效地进行前端开发。 WebStorm 2023 mac/win版获取 WebStorm 2024 拥有强大的智能代码补全…

从一万英尺外看libevent(源码刨析)

从一万英尺外看libevent 温馨提示:阅读时间大概二十分钟 前言 Libevent是用于编写高速可移植非阻塞IO应用的库,其设计目标是: 可移植性:使用libevent编写的程序应该可以在libevent支持的所有平台上工作。即使没有好的方式进行非…

js实现拖拽排序

<!DOCTYPE html> <html lang"zh"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>拖拽排序</title><style>* {margin: 0;p…

manim边学边做--SingleStringMathTex

SingleStringMathTex是Mobjects分类中用来显示数学公式的class。 manim中有3个可以用来显示数学公式的class&#xff0c;还有两个是MathTex和Tex&#xff0c;后续再介绍。 从SingleStringMathTex的名称中也可以看出&#xff0c;它是用来显示只有一行的简单公式。 SingleStrin…

Elasticsearch:使用 semantic_text 简化语义搜索

作者&#xff1a;来自 Elastic Carlos Delgado, Mike Pellegrini semantic_text - 你知道&#xff0c;用于语义搜索&#xff01; 你是否想开始使用语义搜索来搜索数据&#xff0c;但专注于模型和结果而不是技术细节&#xff1f;我们引入了 semantic_text 字段类型&#xff0c;…

OpenAI开发者大会:OpenAI如何再次掀起AI领域的浪潮

对于AI行业的从业者来说&#xff0c;他们可能度过了一个不眠之夜。 北京时间2023年11月7日凌晨&#xff0c;美国人工智能公司OpenAI的开发者大会隆重举行。OpenAI的创始人Sam Altman与同事仅用短短45分钟的时间&#xff0c;在台上发布了他们团队的最新成果——GPT-4 Turbo。这一…

linux文本粘贴格式错乱的问题

vi/vim :set paste然后再 insert, 粘贴

vue+canvas画布实现网页签名效果

1、签名自定义组件代码示例&#xff1a; qianMing.vue <template><!-- 容器&#xff0c;包含画布和清除按钮 --><div class"signature-pad-container"><!-- 画布元素&#xff0c;用于用户签名 --><canvasref"canvas" <!--…

junit mockito 异常

业务代码 Slf4j Service RequiredArgsConstructor public class UserHomeServiceImpl implements UserHomeService { Overridepublic UserInfoVO queryUserInfo(String userId, String type) throws Exception {if ("1".equals(type)) {if (StrUtil.isEmpty(userId)…

深入解析FTP:原理、架构与搭建方式

在当今互联网世界中&#xff0c;文件传输是日常工作和生活中不可或缺的一部分。FTP&#xff08;File Transfer Protocol&#xff0c;文件传输协议&#xff09;作为一种老而弥坚的协议&#xff0c;一直在文件传输领域发挥着重要作用。本文将从技术人的角度&#xff0c;详细分析F…

current.txt-记录了已发布的HIDL接口的哈希值

current.txt 文件在 Android Open Source Project (AOSP) 的 HIDL (Hardware Interface Definition Language) 架构中用于记录已发布的 HIDL 接口的哈希值。这个文件对于确保 HIDL 接口的稳定性和兼容性至关重要&#xff0c;因为它允许开发者跟踪和管理接口的变化。 以下是关于…

学习金字塔模型

学习金字塔模型由美国缅因州巴特尔教育研究所&#xff08;National Training Laboratories, Bethel, Maine&#xff09;开发&#xff0c;它展示了不同学习活动的平均知识保留率。这种方法可以帮助人们理解不同学习方式的有效性&#xff0c;从而更好地选择适合的学习方法。学习金…

关键时刻,了解可燃气体报警器探头使用年限至关重要

可燃气体报警器是工业生产、商业场所及家庭安全中不可或缺的重要设备&#xff0c;它能够实时监测环境中可燃气体&#xff08;如天然气、液化石油气等&#xff09;的浓度&#xff0c;并在浓度达到预设的阈值时发出警报&#xff0c;以预防火灾和爆炸等危险事件。 而作为报警器核…

来聊聊Redis所实现的Reactor模型

写在文章开头 我们都知道解决C10k问题的最好方案就是通过在IO多路复用的基础上通过reactor模型实现高性能的网络并发程序&#xff0c;借助这个设计&#xff0c;redis的主线程也是基于IO多路复用以reactor模型的思路实现了一个高性能的单线程内存数据&#xff0c;本文将带领读者…

为什么CDN加速后网站访问速度较慢

小提示&#xff0c;这种场景出现的概率比较低。 背景说明 使用天翼云CDN加速后&#xff0c;正常情况下网站各个维度的性能指标均会得到明显提升&#xff0c;具体的性能指标以及相关参数信息&#xff0c;详情请见&#xff1a;性能指标。如果使用CDN加速后没有得到预期的性能提…

一种改进最大相关峭度解卷积的滚动轴承故障诊断方法(MATLAB)

近年来&#xff0c;最大相关峭度解卷积受到了研究人员越来越多的关注&#xff0c;陆续有多篇研究论文将该方法应用于滚动轴轴承故障诊断。MCKD是由McDonald提出的一种解卷积方法&#xff0c;其算法中设计了一个新的目标函数——相关峭度&#xff0c;并以此为优化目标设计一系列…

HTML(24)——过渡

过渡 作用&#xff1a;可以为一个元素在不同的状态之间切换的时候添加过渡效果 属性名&#xff1a;transition(复合属性) 属性值&#xff1a;过渡的属性 花费时间(s) 提示&#xff1a; 过渡的属性可以是具体的CSS属性也可以为all&#xff08;两个状态属性值不同的所有属性…