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

2 大语言模型基础-2.2 生成式预训练语言模型GPT-2.2.2 有监督下游任务微调-Instruct-GPT强化学习奖励模型的结构改造与维度转换解析

2 大语言模型基础-2.2 生成式预训练语言模型GPT-2.2.2 有监督下游任务微调-1.Instruct-GPT强化学习奖励模型的结构改造与维度转换解析

        • 一、预训练模型(如GPT-3)的原始结构 vs 奖励模型结构
        • 二、维度转换实例:以GPT-3小型模型为例
        • 三、为什么可以这样改造?原理逻辑
        • 四、补充:隐藏状态的聚合方式

一、预训练模型(如GPT-3)的原始结构 vs 奖励模型结构

RLHF阶段要先在预训练模型基础上微调一个SFT模型出来,然后在SFT基础上做奖励模型,奖励模型把SFT模型的最后一个线性层+softmax层移除,换成一个 d_model × 1 的线性层,从而输出标量的打分值。下面是详细的介绍。

1. 原始GPT-3分类头结构

  • 输入:最后一个编码器输出的隐藏状态向量,维度为 d_model(如GPT-3中小模型d_model=768)。
  • 分类头
    • 线性层(维度转换):d_model × vocab_size(如768 × 50257,vocab_size为词表大小)。
    • Softmax层:将线性层输出转换为概率分布(和为1),用于预测下一个token。

2. 奖励模型的回归头改造

  • 输入:同上,最后一个编码器的隐藏状态向量(维度d_model)。
  • 回归头
    • 移除:原分类头的线性层和Softmax层。
    • 替换:添加一个新的线性层,维度为 d_model × 1,直接输出一个标量值(奖励分数)。
img
二、维度转换实例:以GPT-3小型模型为例

场景:假设GPT-3小型模型的参数如下:

  • 最后一个编码器输出维度:d_model = 768
  • 原词表大小:vocab_size = 50257

1. 原始分类头的维度转换

输入向量维度:768(隐藏状态)  
↓  
线性层权重矩阵维度:768 × 50257  
↓  
线性层输出维度:50257(每个token的未归一化分数)  
↓  
Softmax输出:50257(概率分布,和为1)  

2. 奖励模型回归头的维度转换

输入向量维度:768(隐藏状态)  
↓  
新线性层权重矩阵维度:768 × 1  
↓  
输出维度:1(标量奖励分数,无Softmax)  

核心区别

  • 原分类头的目标是“多分类预测”,需要映射到词表大小维度并归一化概率;
  • 奖励模型的目标是“回归评分”,直接映射到1维标量,无需概率归一化。
三、为什么可以这样改造?原理逻辑
  1. 任务性质的一致性
    预训练模型的隐藏状态已包含语义、语法等高层特征,奖励模型只需在此基础上学习“人类偏好”的评分规则,无需预测token分布。

  2. 线性层的灵活性
    线性层可将高维语义空间映射到1维评分空间,本质是学习一个“偏好函数”,输入为模型输出的语义表示,输出为分数。

  3. 与强化学习的兼容性
    标量奖励分数可直接作为强化学习的反馈信号(如PPO算法中的奖励值),而无需像概率分布一样进行额外处理。

四、补充:隐藏状态的聚合方式

上述例子假设直接使用“最后一个token的隐藏状态”作为线性层输入,但实际中可能采用:

  • 池化操作:对整个序列的隐藏状态取平均或最大值,综合评估输出整体质量;
  • 特殊token标识:在输出序列末尾添加“奖励标识token”,取其隐藏状态作为评分依据。

无论哪种方式,最终维度转换均为 d_model → 1,核心逻辑不变。

http://www.xdnf.cn/news/1074979.html

相关文章:

  • [论文阅读] Neural Architecture Search: Insights from 1000 Papers
  • 超表面重构卡塞格林望远镜 | 从传统架构到新型光学系统
  • 最大矩形最大正方形-力扣
  • 优雅草蜻蜓HR人才招聘系统v2.0.9上线概要 -优雅草新产品上线
  • 飞算JavaAI 2.0.0深度测评:自然语言编程如何重构开发生产力?
  • 键盘第一下无反应
  • 04密码加密
  • C#程序调用cmd执行命令
  • 卡片跳转到应用页面(router事件)
  • 生成式人工智能实战 | 变分自编码器(Variational Auto-Encoder, VAE)
  • 基于STM32温湿度检测—串口显示
  • HTML5 实现的圣诞主题网站源码,使用了 HTML5 和 CSS3 技术,界面美观、节日氛围浓厚。
  • k8s pod深度解析
  • k8s创建定时的 Python 任务(CronJob)
  • 【c/c++1】数据类型/指针/结构体,static/extern/makefile/文件
  • 机器学习9——决策树
  • 新生代潜力股刘小北:演艺路上的璀璨新星
  • ROS常用的路径规划算法介绍
  • 面试复盘6.0
  • Java面试宝典:基础四
  • SpringSecurity6-oauth2-三方gitee授权-授权码模式
  • 详解快速排序
  • 宏任务与微任务和Dom渲染的关系
  • 左神算法之螺旋打印
  • Redis Cluster Gossip 协议
  • 在Linux系统中部署Java项目
  • 设计模式之装饰者模式
  • 2.安装Docker
  • 怎样学习STM32
  • 暴力风扇方案介绍