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

Qwen文章阅读笔记

一、Pretraining

用大量的数据来训练模型,是模型更全面理解世界和世界的复杂性。

1.数据

数据的规模对于模型的鲁棒性是至关重要的

创建一个有质量的数据集:

  • 增加数据的多样性
  • 过滤低质量的数据
  • 上采样某个数据源

使用多任务指令预训练语言模型可以提高其零样本学习和少量样本学习性能。(主要是因为这种预训练方式能够让模型学习到更广泛的知识和更丰富的表示,从而在面对新任务时能够更好地迁移和泛化。)。为了提高模型的性能,把高质量的数据放入预训练阶段。

最后,作者们提到他们构建了一个包含高达3万亿个标记(tokens)的数据集。

2.分词

Qwen利用BPE进行分词(tokenization)从开源的快速BPE标记器tiktoken (Jain, 2022)开始,并选择词汇表cl100k base作为起点。把数字分成个位数。

Qwen的最终词表是152k

3.架构

QWEN是使用Transformer架构的修改版本设计的,使用LLaMA模型的方法进行训练大模型

  • Embedding and output projection:the untied embedding approach
  • Positional embedding:RoPE (Rotary Positional Embedding)
  • Bias:add biases in the QKV layer of attention
  • Pre-Norm & RMSNorm:pre-normalization is the most widely used approach, which has been shown to improve training stability compared to post-normalization but Recent research has suggested alternative methods for better training stability Additionally, we have replaced the traditional layer normalization technique described in (Ba et al., 2016) with RMSNorm

  • Activation function:SwiGLU

4.训练

  • WAY: the standard approach of autoregressive language modeling
  • To create batches of data:we shuffle and merge the documents, and then truncate them to the specified context lengths.
  • Flash Attention
  • optimizer:adopt the standard optimizer AdamW for pretraining optimization

All the models are trained with BFloat16 mixed precision for training stability.

5.上下文长度扩展

Transformer limitations:have a significant limitation in terms of the context length for their attention mechanism.

have implemented simple training-free techniques:solely applied during inference to extend the context length of the model. key techniques: have used is NTK-aware interpolation

To further improve performance: dynamic NTK-aware interpolation [It dynamically changes the scale by chunks, avoiding severe performance degradation.]

These techniques allow us to effectively extend the context length of Transformer models without compromising their computational efficiency or accuracy.

QWEN  incorporates two attention mechanisms:LogN-Scaling and window attention

We also observed that the long-context modeling ability of our model varies across layers 

二、对齐

未与人类行为对齐的pretrained model不能很好的与人类进行交互。最近的研究表明使用supervised finetuning(SFT)和reinforcement learning from human feedback(RLHF)可以显著提高LLM的自然对话能力。下面就是研究这两个技术在Qwen上的应用。

1.SFT

为了利用SFT能理解人类的行为,SFT的第一步就是对一个pretrained model在聊天类型的数据上进行微调。下面是详细的细节解释:数据构造和训练方法。

1.1.数据

1.数据质量:

增强监督微调数据集的能力

  • 传统数据集:以问答或指令回答的形式组织自然语言内容。

  • 作者的方法:注重标注更自然、更类似人类对话的互动数据,从而提升对话模型对真实人类交互的适应能力。

为了确保模型能够推广到广泛的场景中,排除了提示模板中格式化可能限制其功能的数据

语言模型的安全性:偏置、暴力等

2.训练方法:

训练方法也能显著的影响模型的最终性能:使用ChatML风格格式,可以增强模型准确处理和分析复杂会话数据的能力。

1.2.训练

与预训练一样,我们还应用下一个标记预测作为SFT的训练任务。将损失掩码应用于系统和用户输入。

训练模型利用the AdamW optimizer

2.RLHF

虽然SFT已被证明是有效的,但我们承认它的概括和创造能力可能有限,而且容易过度拟合。为了解决这个问题,我们已经实现了从人类反馈的强化学习(RLHF),以进一步调整SFT模型与人类的偏好,使用下面的方法:

这个方法的过程涉及:训练奖励模型并使用邻近策略优化(PPO)开展策略训练。

2.1.奖励模型

创建一个成功的奖励函数,首先第一步就是进行预训练和微调

1.预训练过程(偏好模型预训练PMP)

需要大量的比较数据的数据集,这个数据集由样本对组成,每个样本对包含针对单个查询的两个不同响应及其对应的偏好。

2.微调

微调也是在这类比较数据上进行的,但由于存在高质量的标注,所以质量更高

在微调阶段,我们会收集各种提示,并根据QWEN模型的反馈调整奖励模型。


http://www.kler.cn/a/441959.html

相关文章:

  • 前沿技术趋势洞察与分析:探寻科技变革的多维密码
  • 【神经网络基础】
  • 创建一个简单的spring boot+vue前后端分离项目
  • Android Studio:Linux环境下安装与配置
  • Spring自定义BeanPostProcessor实现bean的代理Java动态代理知识
  • svn tag
  • 问题总结一
  • 深入探索Vue.js中的插值表达式:数据绑定的艺术
  • MapGIS 10.7大数据GIS升级!打造数据要素底座,赋能新质生产力
  • 自签名CA证书
  • 在 Linux 系统中,让 apt 使用 HTTP 代理
  • 文件上传之文件内容检测
  • 项目23:简易网络爬虫 --- 《跟着小王学Python·新手》
  • 突破时间与空间限制的富媒体百宝箱——智能工具箱:让云上内容生产更easy
  • 如何评估并持续优化AI呼入机器人的使用效果
  • ae学习笔记
  • Spring基础分析07-Spring JdbcTemplate
  • 【软件工程复习】
  • Android 解决“Could not resolve all artifacts for configuration ‘:classpath‘方法
  • 白话java设计模式
  • 单片机:实现pwm调光(附带源码)
  • 【人工智能数学基础篇】——深入详解基本概率论之概率分布(正态分布、伯努利分布等)、期望、方差等概念
  • 少样本学习之CAML算法
  • 【DevOps工具篇】SCM之Gitlab
  • 【BUG记录】Apifox 参数传入 + 号变成空格的 BUG
  • Cherno C++学习笔记 P41 运算符与重载