2025-05-13
深度学习
00

【训练】Qwen2.5VL 多机多卡 Grounding Box定位(1):http://101.126.150.28:7878/post/2067

【训练】Qwen2.5VL 多机多卡 Grounding Box定位(2):http://101.126.150.28:7878/post/2094

1. 本次更改了数据集

类似这样:

json
展开代码
{ "messages": [ { "content": "<image>点[56,259]所处位置(也即是图中绿色五角星中心所处位置)的信息是什么?需要优先匹配最近UI元素的box。", "role": "user" }, { "content": "<ref>文本-地址</ref><box>[[33, 241, 66, 264]]</box>", "role": "assistant" } ], "images": [ "/img_datasets/img_small_size_28_prompt/000001.jpg" ] }
2025-05-13
深度学习
00

Transformer中计算最复杂的模块

自注意力机制(Self-Attention) 是Transformer中最耗时的部分。


时间复杂度与哪些因素有关?

  • 序列长度 n
  • 隐藏层维度 d
2025-05-13
深度学习
00

解决训练模型时的内存不足问题

在没有额外显卡的情况下,当你遇到训练模型时出现"out of memory"错误,可以尝试以下几种解决方案:

2025-05-13
深度学习
00

训练模型时遇到loss为NaN的现象及解决方法

在深度学习模型训练过程中,遇到loss变成NaN(Not a Number)是一个常见的问题。这种情况通常表明训练过程中出现了数值不稳定性,需要及时处理以避免模型训练失败。以下是这种现象的原因分析和解决方法。

2025-05-13
GRPO
00

一篇很好的解读: https://zhuanlan.zhihu.com/p/20844750193

GRPO:基于群组相对优化的强化学习算法

1. GRPO概述

GRPO (Group Relative Policy Optimization) 是一种用于大型语言模型(LLM)和视觉语言模型(VLM)训练的强化学习算法。它是一种相对优势计算方法,通过对同一输入生成多个输出回答,然后计算相对优势进行优化。

相比于传统的PPO等算法,GRPO的主要特点是:

  • 不需要价值网络(Value Network),简化了训练过程
  • 通过相对评估减少了回报的高方差问题
  • 特别适合处理离散奖励信号,如问答场景中的正确/错误奖励
  • 对同样的问题采样多次,通过组内相对比较学习更好的策略
2025-05-12
深度学习
00

PPO和DPO强化学习方法比较

PPO (Proximal Policy Optimization)

PPO是一种传统的强化学习方法,在RLHF (Reinforcement Learning from Human Feedback)中应用广泛:

  1. 基本组成

    • 策略模型(Actor):生成文本响应
    • 奖励模型(Reward Model):评估响应质量
    • 参考模型(Reference Model):限制与初始模型的偏离
  2. 训练流程

    • 策略模型生成回答
    • 奖励模型对生成的回答打分
    • 通过奖励信号更新策略模型
    • 使用KL惩罚项防止过度偏离参考模型
2025-05-12
深度学习
00

强化学习训练方法概览

LLaMA-Factory 实现了三种主要的强化学习训练方法:PPO、DPO、KTO,每种方法都针对大型语言模型的微调采用不同的策略。

1. PPO (Proximal Policy Optimization)

PPO 是一种基于策略梯度的强化学习算法,是最传统的 RLHF (Reinforcement Learning from Human Feedback) 方法。

原理

  • 使用策略模型生成回答
  • 使用奖励模型评估回答质量
  • 通过奖励信号更新策略模型,同时限制更新幅度以确保稳定性
2025-05-12
深度学习
00

直接偏好优化算法(DPO)详解

DPO算法简介

直接偏好优化(Direct Preference Optimization, DPO)是一种用于语言模型对齐的算法,由Rafailov等人在2023年提出,作为强化学习人类反馈(RLHF)的替代方案。DPO的目标与RLHF相同:使语言模型的输出更好地符合人类偏好,但DPO通过简化流程,直接从人类偏好数据中优化模型,无需单独的奖励模型和复杂的强化学习过程。

为什么需要DPO?

  • 传统RLHF的痛点:RLHF依赖于奖励模型和强化学习(如PPO),这不仅增加了训练复杂性,还容易引入不稳定性。例如,强化学习中的策略更新可能会导致模型性能波动。
  • DPO的优势:DPO直接利用偏好数据进行优化,避免了中间步骤,使得训练过程更加高效且稳定。
2025-05-12
深度学习
00

PPO算法介绍

什么是PPO算法?

近端策略优化(Proximal Policy Optimization, PPO)是一种基于策略梯度的强化学习算法,由OpenAI在2017年提出。PPO算法在保持训练稳定性的同时,能够获得较好的样本效率和性能表现。PPO的核心思想是通过限制策略更新的幅度,避免过大的策略变化导致性能崩溃。

PPO算法有两种主要变体:PPO-Penalty和PPO-Clip。在实际应用中,PPO-Clip因其实现简单且性能优越而被广泛采用。

2025-05-12
深度学习
00

1. 弹性权重整合(Elastic Weight Consolidation, EWC)

概述: EWC 通过在损失函数中添加一个正则化项,防止重要参数偏离先前任务的最优值。这个正则化项基于费舍尔信息矩阵,衡量每个参数对先前任务的重要性。

公式

L(θ)=Lnew(θ)+iλ2Fi(θiθi)2L(\theta) = L_{\text{new}}(\theta) + \sum_i \frac{\lambda}{2} F_i (\theta_i - \theta^*_{i})^2

其中 FiF_i 是费舍尔信息矩阵,θi\theta^*_{i} 是旧任务的最优参数。

代码示例

python
展开代码
import torch def ewc_loss(new_loss, model, fisher_matrix, old_params, lambda_ewc): ewc_penalty = 0 for param, fisher, old_param in zip(model.parameters(), fisher_matrix, old_params): ewc_penalty += torch.sum(fisher * (param - old_param).pow(2)) return new_loss + (lambda_ewc / 2) * ewc_penalty