搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
喵喵爱编程
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
经典算法题总结:二叉树篇
2
(数据科学学习手札40)tensorflow实现LSTM时间序列预测
3
经纬坐标系中求点到线段距离的方法_经纬度坐标线段的长度怎么算
4
基于NXP IMX8M + FPGA体外诊断POCT设备
5
Hadoop集群datanode磁盘不均衡的解决方案
6
C语言中的浮点数存储:深入探讨_c float64
7
清华源等镜像地址_清华镜像网址
8
学容器必须懂 bridge 网络 - 每天5分钟玩转 Docker 容器技术(32)
9
代码随想录训练营Day27:贪心算法05区间问题
10
XXX高校数字化校园数据中心建设方案
当前位置:
article
> 正文
InternLM 技术报告解读(一)- 训练框架,模型架构,数据处理_llm预训练 所用 训练框架
作者:喵喵爱编程 | 2024-08-18 22:25:05
赞
踩
llm预训练 所用 训练框架
大型语言模型的发展包括预训练、监督微调(SFT
)和基于人类反馈的强化学习(
RLHF
)
等主要阶段。
过去关于LLM
的技术报告
很少关注预训练数据的处理。
InternLM2详细描述了如何为预训练 准备文本、代码和长文本数据。
如何有效地延长LLM
的上下文长度目前是研究的热点,因为许多下游应用,如检索增强生成(RAG
)
和代理模型
,依赖于长上下文。
本次技术报告就详细的阐述关于数据处理,预训练以及微调模型的技术细节。
一. 训练框架以及模型架构
1.1 InternEvo
在开始之前,我们首先选择我们的训练框架,我们使用的高效的轻量级预训练框架InternEvo进行模型训练。
这个框架使得我们能够在数
千个
GPU
上扩展模型训练。它通过数据(
Data Parallelism
)、张量(
Tensor Parallelism,
2019
)、序列(
Sequence Parallelism,
2023
)和管道(
Pipeline Parallelism,
2019
)并行技
术来实现这一点。为了进一步提升
GPU
内存效率,
InternEvo
整合了各种
Zero Redundancy
Optimizer (ZeRO,
2020
)策略,显著减少了训练所需的内存占用。此外,为了提高硬件利用
我们还引入了
FlashAttention
技术(
2023
)和混合精度训练(
Mixed Precision Training,
2017
),使用
BF16。
InternEvo在序列长度方面也表现出强大的扩展性, 支持训练不同规模的
LLM
, 例如
在
256,000
个令牌的序列长度下训练
InternLM-7B
, 可以达到接近
88%
的
MFU
。 相比之
下,
DeepSpeed-Ulysses
和
Megatron-LM
只能达到大约
65%
的
MFU
。对于更大规模的
LLM
,
如
300
亿或
700
亿参数的模型,训练性能的提升也同样明显。
1.2 模型架构
我们选择遵循
LLaMA
的结构设计原则。
为了提高效率,我们将
W
k
、
W
q
和
W
v
矩阵合并,这在预训练阶段带来了超过
5%
的训练加速。此外,为了 更好地支持多样化的张量并行(tp
)变换,我们重新配置了矩阵布局。对于每个头的
W
k
、
W
q
和
W
v
,我们采用了交错的方式,如下图所示。
二. 训练数据集
2.1 文本数据
我们的预训练数据集中的文本数据可以根据来源分为网页、论文、专利和书籍。为了将这
些来源转化为预训练数据集,我们首先将所有数据标准化为特定格式,按类型和语言分类,
并以
JSON Lines (jsonl)
格式存储。然后,我们对所有数据应用一系列处理步骤,包括基于
规则的过滤、数据去重、安全过滤和质量过滤。这最终形成了丰富、安全且高质量的文本
数据集。
整个数据处理流程首先将来自 不同来源的数据标准化,得到格式化数据
(
Format data
)。接着,通过应用启发式统计规则 进行数据筛选,获取清洗数据
(
Clean data
)。然后,使用局部敏感哈希(
LSH
)方法进行 数据去重,得到去重数据
(
Dedup data
)。随后,我们采用复合安全策略过滤数据,得到
安 全数据(
Safe data
)。针对不同来源的数据,我们采用了不同的质量过滤策略,最终获得
高 质量预训练数据(
High-quality pre-training data
)
2.2 代码数据
同时,我们也加入了大量的代码数据,
我们从多个来源收集数据,包括直接从
GitHub
爬取,公共数据集,以及与编
程和编码相关的在线资源(如问答论坛、教程网站和
API
文档),数据来源统计如图。
所有数据转换为统一的
Markdown
格式。然而,一小部分数据仍然存在损坏
的
HTML
或
XML格式。
代码数据的去重与处理自然语言类似,只是在分词(
tokenization
)上有所区别,
这影响了超参数的选择。
3.3 长文本数据
处理非常长的上下文(
¿32K
个令牌)在研究大语言模型(
LLMs
)中越来越受到关注,这拓
宽了应用范围,包括书籍摘要、支持长期对话以及处理涉及复杂推理步骤的任务。预训练
数据是扩展模型上下文窗口的关键因素。我们遵循
Lv et al.
(
2024
)
中提到的长文本预训练数
据准备过程,包括数据过滤管道,统计过滤器,语言模型困惑度过滤器,阈值选择等。
所有提议过滤器前后的数据分布。整个过滤过程去除了大部分网页数据 (Common Crawl)和专利数据,而书籍和论文数据大部分得以保留。
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/喵喵爱编程/article/detail/999453
推荐阅读
article
SQL
Server
时间
算差值/常用函数_
sql
server
获取某
日期
于当前的年份差...
DATEDIFF()是计算
时间
差值的直接工具,而DATEADD()CONVERT()CAST()DATEPART()和E...
赞
踩
article
基于
Visual
Studio
版本的
AI
编程
助手
_
wpf
编程
ai辅助软件...
本文介绍了基于
Visual
Studio
的
AI
编程
助手Fitten Code的使用,包括安装、智能补全代码、
AI
问答、代...
赞
踩
article
什么
是
地理信息系统
(
GIS
)?...
地理信息系统
,简称
GIS
(Geographic Information System)。顾名思义,
地理信息系统
是
处理...
赞
踩
article
[240523]
微软
推出
Surface
Pro
11
:
Copilot
+ PC |
微软
Bu...
-
微软
推出
Surface
Pro
11
:
Copilot
+ PC- Microsoft
Build
大会推动 AI...
赞
踩
article
Llama3
模型
试用笔记_
model
-00001-
of
-00004.
safetensors
...
听了晓华老师分享的
模型
微调第一节课,其中有不少知识点需要后续查询资料了解,所以我对知识要点做了部分记录总结。同时
模型
微调...
赞
踩
article
DPDK
virtio
-
user
介绍及
使用
笔记...
Rusty Russell提出了
virtio
的模型和实现:
virtio
: Towards a De-Facto Stan...
赞
踩
article
电子行业数字工厂
管理系统
解决方案
...
电子行业数字工厂
管理系统
解决方案
是电子企业实现数字化转型的重要工具。通过集成多个核心模块和功能,实现生产过程的全面数字化...
赞
踩
article
数据仓库
分层
设计
,
零基础一看就会
_
数仓
分层
设计
...
理解
数仓
分层
中的
分层
设计
实施 什么是
分层
? 决定数据在
数据仓库
中处理的流程 数据从进入...
赞
踩
article
运维最新
微软
的
千载难逢
机遇:从
桌面操作系统
到
AI
技术
的
统治地位(1),
Linux
运维性能优化总结...
最近很多小伙伴找我要
Linux
学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!最近很...
赞
踩
article
mysql
常用
的
数据
类型
_
类型
不是
mysql
中
常用
的
数据
类型
。...
mysql
常用
的
数据
类型
(1) 数值类SMALLINT(Length)2字节范围:-32768 ~ 32767,或者 ...
赞
踩
article
2024年
信息系统
项目管理
师
1批次上午客观
题
参考答案
及
解析
(1)_2024
信息系统
项目管理
师
题
目...
项目评估指在项目可行性研究的基础上,由第三方(国家、银行或有关机构)根据国家颁布的政策、法规、方法、参数和条例等,从国民...
赞
踩
article
ChatGPT
辅助
学术论文
中
论证
内容
的
获取和编写...
例如,如果你
的
论文主题是“人工智能在医疗领域
的
应用”,你
的
论点可以是“人工智能显著提高了医疗诊断
的
准确性和效率”。例如,...
赞
踩
article
如何完美解决 `safetensors_
rust
.Safetensor
Error
:
Error
wh...
在使用 Rust 语言进行机器学习模型处理时,是一个常见的错误。本文将详细介绍该错误的成因、解决方案以及相关代码示例。通...
赞
踩
article
《
码农
职场
》:
IT
求职者
的
职场
宝典...
亲爱的读者们,今天我要向大家推荐一本专为
IT
行业
求职者
量身定制的
职场
指南——《
码农
职场
》。这本书不仅仅是一本求职手册,更...
赞
踩
article
为什么普通的
机器
学习
/
深度
学习
算法
无法
处理
时间
序列
数据
?你了解
时序
算法
设计过程中的核心需求吗?_
深度
...
为什么普通的
机器
学习
/
深度
学习
算法
无法
处理
时间
序列
数据
?你了解
时序
算法
设计过程中的核心需求吗?_
深度
学习
时序
模型
对
数据
有...
赞
踩
article
高级
数据结构
——
红
黑树
_构造一颗10个
节点
的
高度最高
的
红
黑树
...
文章详细介绍了
红
黑树
的
概念、性质、插入操作及其验证过程,并对比了
红
黑树
与AVL树
的
区别。
红
黑树
是一种自平衡
的
二叉搜索树,...
赞
踩
article
Solana
中文
白皮书
翻译_
sol
中文
白皮书
...
本文提出了一种新的区块链架构,其基础是一种能够验证链上事件发生的先后顺序及时间间隔的新共识算法,称作工作历史证明PoH算...
赞
踩
article
算法
_记忆化
搜索
DFS_
地宫
取宝_记忆化
搜索
算法
...
X 国王有一个
地宫
宝库。是 n x m 个格子的矩阵。每个格子放一件宝贝。每个宝贝贴着价值标签。
地宫
的入口在左上角,...
赞
踩
article
RabbitMQ
-Java-
死信
队列
_
java
rabblitmq
死信
队列
的实现...
这篇博客详细介绍了
RabbitMQ
中的
死信
交换(DLX)机制,包括
死信
产生的原因,如消息被拒绝、TTL过期或
队列
长度限制...
赞
踩
article
solaris
白皮书下载
_
solaris
系统
编程
pdf
...
Solaris X64解决方案:http://sunevent.bizcom.com.cn/events/cn/s10w...
赞
踩
相关标签
服务器
sqlserver
visual studio
AI编程
ide
microsoft
copilot
人工智能
Surface
ai
NPU
ARM
笔记
虚拟化
低代码
运维
5G
科技
经验分享
社交电子
制造
数据仓库
计算机水平考试
信息系统项目管理师