当前位置: 首页 > news >正文

【LLM之Base Model】Weaver论文阅读笔记

研究背景

当前的大型语言模型(LLM)如GPT-4等,尽管在普通文本生成中表现出色,但在创造性写作如小说、社交媒体内容等方面,往往不能很好地模仿人类的写作风格。这些模型在训练和对齐阶段,往往使用的是大规模的、质量较低的网络文本或机器生成文本,这导致了模型生成的内容虽流畅但缺乏创造性和人类风格。

研究目标

Weaver模型系列旨在通过预训练和特定领域的对齐,使LLMs在创意和专业写作方面表现得更加人性化和多样化。Weaver通过引入一系列新的数据合成和对齐方法,使其能够生成更具创造性和符合人类风格的文本,从而满足内容创作的多样需求。

相关工作

当前的LLMs在大规模网络数据上进行预训练,通常使用由众包人员标注的数据进行对齐。然而,这些模型往往在创意写作中表现不足。与之相比,Weaver通过引入“Instruction Backtranslation”框架和Constitutional DPO算法,显著提高了模型的写作能力。Weaver通过结合现有的先进技术,如LLaMA的改进设计以及Rotary Embedding等,进一步优化了模型的写作表现。

方法论

数据处理

Weaver模型使用了一种创新的数据合成框架,用于在对齐阶段解锁模型的写作能力。首先,通过对高质量故事、小说和文案的收集,生成与写作任务相关的高质量指令-响应对。此外,还采用了结合规则和机器学习的方法来过滤低质量文本,以确保训练数据的高质量和多样性。
在SFT阶段,收集了34个子领域和50万的指令-输出对:
在这里插入图片描述
在偏好对齐阶段,使用Constitutional DPO方法收集以下领域任务的dpo数据
在这里插入图片描述

解决方案

Instruction Backtranslation

【指令反向翻译】(Instruction Backtranslation)是一个核心方法,用于合成高质量的训练数据,以改进语言模型按照具体指令生成文本的能力。这个过程通过以下几个步骤实现:

  • 从专业写作者那里收集高质量内容:首先从专业内容创建者如作家和编辑那里收集高质量的故事、小说章节、博客文章等内容。
  • 合成指令-响应对:通过反向翻译框架,将收集到的内容转化为指令-响应对。具体来说,对于每个高质量的文本,模型会生成一个与之对应的指令,使得该文本可以作为这一指令的合理响应。
  • 扩展和多样化的指令生成:该框架不仅重新生成已有指令,还能创造新的指令,以引导模型产生与原始文本风格或内容相符的新文本。这样做可以显著提高数据的多样性和覆盖范围。
  • 提高数据注释质量:通过自动化的反向翻译过程减少人工注释的需求,降低成本,同时通过精确控制生成过程来提高注释数据的质量。
Constitutional DPO

提出Constitutional DPO算法,用于模型偏好的优化。Constitutional DPO 是一种用于调整大型语言模型(LLMs)的新型方法,旨在通过学习遵循专家定义的原则,从而优化模型的输出质量。这种方法结合了几种现有技术的优势,包括Constitutional AI、RLCD(Reinforcement Learning with Critic-Demonstrations)、以及DPO(Direct Preference Optimization)。此算法利用专家注释的原则来合成反例,以此校准模型输出,确保其遵循特定的写作原则和风格。
在这里插入图片描述
具体来说,Constitutional DPO 通过以下步骤工作:
(1)原则定义与注释:首先,邀请人类专家(如专业作家、编辑)为不同的写作任务注释原则。这些原则不仅包括简短的描述,还包含一个遵循该原则的案例和一个违反该原则的案例,以及解释为什么这些案例符合或违反原则的自然语言推理。
(2)负面示例生成:在每个原则下,基于高质量的文本样本,使用语言模型(如GPT)生成与正面示例相对的负面示例。负面示例通过最小化修改原始响应来违反特定原则,但不影响其他好的方面。这种方法生成的偏好数据噪声较少,特别是在需要较高标准的写作领域中,能够提供更加有原则性和针对性的学习信号。
(3)偏好数据优化:利用生成的正负样本对,作为 DPO 训练的输入数据对 (yw, yl)。通过这种方式,每个数据对都包含了对应原则的关键训练信号,有助于模型在微调过程中学习并遵循这些原则。

实验

能力体系设计

大类中类小类
指令遵循领域小说写作
指令遵循领域非小说创意性写作
指令遵循领域营销写作
指令遵循领域技术写作
指令遵循任务内容编写
指令遵循任务大纲编写
指令遵循任务润色
指令遵循任务风格转换
指令遵循任务扩写/缩写
指令遵循任务头脑风暴
指令遵循任务文章审核
指令标注--
答案评估--
RAG--
Function call--

实验设计

数据方面
阶段量级备注
Pretrain50B将小说数据(即小说和故事)和非小说数据(即文章、论文、报告等)混合在一起。它的比例是1: 1。我们还将中文和英语数据与4: 1的部分混合,使Weaver同时支持中文和英语。
Sft40w
DPO2.5w
评价指标

Weaver模型在一个专门设计的创意写作基准测试(WriteBench)上进行了评估,该测试覆盖了多种写作领域和任务,包括小说写作、创意非小说写作、技术写作和市场营销写作,用以全面评估模型的写作能力。
WriteBench 包含了超过1000条测试指令,覆盖了上述多个写作领域。为了保证评估的公平性和客观性,WriteBench 的数据收集和选择过程由一个独立的评估团队进行。这些测试指令被用于生成模型的输入提示,并记录模型的输出以进行比较。

消融方面

主要选择了市面上比较有名的模型,如GPT4、qwen等,直接使用WriteBench中的相同指令作为所有被测试的llm的输入提示,并收集模型输出作为响应。

实验结论

实验结果显示,Weaver模型在所有大小配置上均优于现有的更大的通用LLM。特别是Weaver Ultra模型,在多个创意写作场景中表现优异,超过了GPT-4等先进模型。
在这里插入图片描述
在这里插入图片描述

参考资料

  • 论文
  • 模型体验

相关文章:

【LLM之Base Model】Weaver论文阅读笔记

研究背景 当前的大型语言模型(LLM)如GPT-4等,尽管在普通文本生成中表现出色,但在创造性写作如小说、社交媒体内容等方面,往往不能很好地模仿人类的写作风格。这些模型在训练和对齐阶段,往往使用的是大规模…...

泰坦尼克号 - 从灾难中学习机器学习/Titanic - Machine Learning from Disaster(kaggle竞赛)第一集(了解赛题)

此次目的: hello大家好,俺是没事爱瞎捣鼓又分享欲爆棚的叶同学!!!准备出几期博客来记录我学习kaggle数据科学入门竞赛的过程,顺便也将其中所学习到的知识分享出来。这是第一集(了解赛题&#x…...

使用C++调用PyTorch模型的弯弯绕绕,推荐LibTorch加载,C++处理

需求:使用C调用Pytorch模型,对处理后的图像进行预测。 第一种,使用C调用Python代码处理,使用pybind11源代码再末尾 缺点,导入Python包非常麻烦,执行的C程序找不到cv2 torch包等等 本人解决了cv2 numpy等包&…...

实现异形(拱形)轮播图

项目需要实现如上图所示的轮播图。 实现思路: 1.项目引入使用普通轮播图。 2.根据轮播图个数,动态给可视范围的第一个轮播图和最后一个轮播图添加样式。 代码实现: 经调研,使用slick轮播图(官网地址 https://kenwheel…...

【软件测试】2024年职业院校技能大赛高职组“软件测试”赛项样题

目录 任务一:功能测试(45 分) 任务二:自动化测试(15 分) 任务三:性能测试(15 分) 任务四:单元测试(10 分) 任务五:接…...

python数组和队列

一、数组 如果一个列表只包含数值,那么使用array.array会更加高效,数组不仅支持所有可变序列操作(.pop、.insert、.extent等),而且还支持快速加载项和保存项的方法(.fromfile、.tofile等) 创建…...

Vision Transformer(ViT)一种将Transformer架构应用于计算机视觉领域的模型

Vision Transformer(ViT)是一种将Transformer架构应用于计算机视觉领域的模型,它通过自注意力机制处理图像数据,与传统的卷积神经网络(CNN)相比,ViT能够更好地捕捉全局依赖关系。以下是对ViT的详…...

得到任务式 大模型应用开发学习方案

根据您提供的文档内容以及您制定的大模型应用开发学习方案,我们可以进一步细化任务式学习的计划方案。以下是具体的任务式学习方案: 任务设计 初级任务 大模型概述:阅读相关资料,总结大模型的概念、发展历程和应用领域。深度学…...

使用el-menu跳转时偶尔会出现路由已经变了,但是页面却显示空白的情况

刚开始我以为是我数据加载的问题,后来又看有人说是template里不能包多个div,但我去看我出错的组件,并没有出现两个div。 后来我就把每个都给改了,即使是elemen-ui的标签也全部改在一个div里,就发现没问题了。 我改的…...

C语言家教记录(七)

C语言家教记录(七) 导语字符串字面量变量读写字符串操作函数惯用法数组 结构联合枚举总结与复习 导语 本次授课的内容如下:字符串,结构体、联合体、枚举 辅助教材为 《C语言程序设计现代方法(第2版)》 字…...

【数据结构】——十大排序详解分析及对比

【数据结构】——十大排序详解分析及对比 文章目录 【数据结构】——十大排序详解分析及对比前言1. 排序的概念及其运用1.1 排序的概念1.2 排序的应用 2. 插入排序2.1 直接插入排序2.2 希尔排序 3. 选择排序3.1 选择排序3.2 堆排序 4 交换排序4.1 冒泡排序4.2 快速排序4.2.1 霍…...

散点图适用于什么数据 thinkcell散点图设置不同颜色

在数据可视化的众多工具和技巧中,散点图是一种极为有效的方式,能够揭示变量之间的关系,尤其是在探索数据集的相关性、分布趋势、集群现象时。而在众多助力于制作高质量散点图的工具中,think-cell插件以其高效的操作和丰富的功能&a…...

1. windows搭建Kafka教程

目录 1. 部署zookeeper 1.1 下载地址 1.3 修改zoo配置 1.4 启动zookeepe服务 02 部署kafka 2.1 下载组件包 2.2 解压安装包 2.3 修改配置 2.4 启动kafka服务端 1. 部署zookeeper 1.1 下载地址 下载地址: kafka/zookeeper 下载地址 (qq.com) 1.2 解压 (…...

XSS复现

目录 XSS简单介绍 一、反射型 1、漏洞逻辑: 为什么有些标签可以触发,有些标签不能触发 可以触发的标签 不能触发的标签 为什么某些标签能触发而某些不能 二、DOM型 1、Ma Spaghet! 要求: 分析: 结果: 2、J…...

怎么利用XML发送视频彩信

传统的短信推广主要以文字为主,用户接收到的信息往往显得单调乏味。而视频彩信则不同,它结合了视频和音频的优势,通过生动的画面和悦耳的音乐,给用户带来强烈的视听冲击,从而极大地提高了用户的吸引力。 XML成功返回示…...

5G+工业互联网产教融合创新实训室解决方案

一、建设背景 随着第五代移动通信技术(5G)的快速普及和工业互联网的迅猛发展,全球制造业正面临着前所未有的深刻变革。5G技术凭借其超高的传输速率、极低的延迟以及大规模的连接能力,为工业自动化、智能制造等领域带来了革命性的…...

象棋布局笔记

文章目录 布局中炮(当头炮)当头炮的缺点如何应对平车压马平炮对车的理解中炮对屏风马急进中兵 中炮盘头马盘头马两翼突破 盖马三锤 反宫马克制反宫马 顺手炮 士角炮56炮破解56炮 小当头 屏风马7卒分支3卒分支屏风马红车二进六败招(黑未挺7卒前直接进车)马八进九变车三退一变马二…...

百度AI智能云依赖库OpenSSL库和Curl库及jsoncpp库安装

开发百度AI项目时,需要用到https协议,因此需要安装OpenSSl和curl库。 若只安装curl库,只支持http协议,不支持https协议。此外,还需要jsoncpp库,用以组包及解析与百度AI通信的json格式协议。 1.Ubuntu上安装…...

智慧空调离线语音控制方案:NRK3301芯片的深度解析与应用

随着AI技术的大爆发和智能家居的风潮,语音交互已成为智能家居产品的一项必备技能,在家电、音箱、穿戴设备乃至墙壁开关等贴近生活的产品中应用越来越广泛,智能语音识别是当前最热门的方案之一。 九芯智能顺应家居行业智能语音交互市场需求&a…...

基础第3关:LangGPT结构化提示词编写实践

提示词: # Role: 伟大的数学家 ## Profile - author: LangGPT - version: 1.0 - language: 中文 - description: 一个伟大的数学家,能够解决任何的数学难题 ## Goals: 根据关键词进行描述,避免与已有描述重复。 ## Background: 你正在被…...

synchronized 学习

学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...

CentOS下的分布式内存计算Spark环境部署

一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...

《用户共鸣指数(E)驱动品牌大模型种草:如何抢占大模型搜索结果情感高地》

在注意力分散、内容高度同质化的时代,情感连接已成为品牌破圈的关键通道。我们在服务大量品牌客户的过程中发现,消费者对内容的“有感”程度,正日益成为影响品牌传播效率与转化率的核心变量。在生成式AI驱动的内容生成与推荐环境中&#xff0…...

css的定位(position)详解:相对定位 绝对定位 固定定位

在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...

成都鼎讯硬核科技!雷达目标与干扰模拟器,以卓越性能制胜电磁频谱战

在现代战争中,电磁频谱已成为继陆、海、空、天之后的 “第五维战场”,雷达作为电磁频谱领域的关键装备,其干扰与抗干扰能力的较量,直接影响着战争的胜负走向。由成都鼎讯科技匠心打造的雷达目标与干扰模拟器,凭借数字射…...

Mac下Android Studio扫描根目录卡死问题记录

环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...

力扣-35.搜索插入位置

题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...

【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看

文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...