一个轻量但不失高效的DPO训练框架:OpenDPO

DPO的损失函数可以做如下恒等变换,可以发现蓝色框中的结果是一个可以预计算的常数。因此,在使用DPO进行优化时,我们完全可以离线计算常数部分,在线只需要加载进行训练,这样和sft的训练相差无几。 根据 ...

一个轻量但不失高效的SFT训练框架:OpenSFT

OpenSFT,顾名思义,一个开源的SFT训练框架,基于 accelerator + deepspeed + ring flash attention 实现。 本项目实现了length-pack数据组 ...

蒙特卡洛法近似KL散度的艺术:从有偏估计到零方差优化

在强化学习和概率建模的世界里,KL散度如同一位沉默的裁判,默默地衡量着两个概率分布之间的差异。然而,当面对高维空间或复杂分布时,KL散度的计算常常令人望而却步。本文将揭示一种优雅的近似方法,利用蒙特卡 ...

大模型SFT经验

本文转载自https://zhuanlan.zhihu.com/p/809229182,作者ybq。 这篇文章介绍一下大模型的 sft 如何去做。相比较于上一篇文章介绍的 pretrain ,sft ...

大模型预训练经验

本文转载自https://zhuanlan.zhihu.com/p/718354385,作者ybq。 这篇文章介绍下如何从零到一进行 pretrain 工作。 类似的文章应该有很多,不同的地方 ...

反向 KL 散度与正向 KL 散度

给定两个分布 ,它们可能在相同的变量 上定义,但其分布形状各异。两者之间的距离可以通过 相对熵 (Relative Entropy) 来度量,其定义如下: 或者在连续情形下为: 其中: 1. 该指标 ...

百面大模型-9

什么是策略梯度? 首先从文本生成角度简单介绍一下强化学习: 因为状态-动作空间非常庞大,将强化学习应用于对话生成是一个巨大的挑战。在这种背景下,我们将人类交互视为“环境”。在每个时间步 ,代理(即AI ...

百面大模型-8

大模型PPO中的奖励是什么? 在强化学习的过程中,奖励通常只在序列结束时才会出现,其他中间步骤的奖励为 0,折扣因子为 1,为Reward Model输出的标量结果。 为了防止模型被 Reward M ...

百面大模型-7

DPO的损失函数是什么,第一步的loss为多少? DPO的损失函数通常设计为最大化策略模型(即正在训练的模型)对偏好数据(chosen)和非偏好数据(rejected)之间的预测差异。具体来说,损失函 ...

百面大模型-6

当前LLM的对齐过程通常分为SFT和RLHF两个阶段,我们是否有可能直接跳过SFT阶段而进入RLHF阶段? 可以。论文ORPO: Monolithic Preference Optimizatio ...