论文精读--The Llama 3 Herd of Models

Abstract

Modern artificial intelligence (AI) systems are powered by foundation models. This paper presents a new set of foundation models, called Llama 3. It is a herd of language models that natively support multilinguality, coding, reasoning, and tool usage. Our largest model is a dense Transformer with 405B parameters and a context window of up to 128K tokens. This paper presents an extensive empirical evaluation of Llama 3. We find that Llama 3 delivers comparable quality to leading language models such as GPT-4 on a plethora of tasks. We publicly release Llama 3, including pre-trained and post-trained versions of the 405B parameter language model and our Llama Guard 3 model for input and output safety. The paper also presents the results of experiments in which we integrate image, video, and speech capabilities into Llama 3 via a compositional approach. We observe this approach
performs competitively with the state-of-the-art on image, video, and speech recognition tasks. The resulting models are not yet being broadly released as they are still under development.
翻译:
现代人工智能(AI)系统由基础模型驱动。本论文介绍了一组新的基础模型,称为Llama 3。这是一组语言模型,原生支持多语言、编码、推理和工具使用。我们最大的模型是一个拥有4050亿参数的密集Transformer,支持最长128K的上下文窗口。本论文对Llama 3进行了广泛的实证评估。我们发现,Llama 3在大量任务上提供了与GPT-4等领先语言模型相当的质量。我们公开发布了Llama 3,包括预训练和后训练版本的4050亿参数语言模型,以及用于输入和输出安全的Llama Guard 3模型。

本论文还展示了将图像、视频和语音能力集成到Llama 3中的实验结果,采用了组合方法。我们观察到,这种方法在图像、视频和语音识别任务上的表现可以与当前最先进的技术相媲美。这些模型尚未广泛发布,因为它们仍处于开发阶段。

总结:

主要卖点:1.Dense架构,与其他模型的MOE架构不同

2.先训练出文本的能力后,加一些图像、视频等能力,偏保守的方案,因为加其他模态以后训练难收敛

Introduction

在预训练阶段,用大量的数据做预测下一个词的任务

在后训练阶段,让模型按照指令去做一些事情,或者对齐到一个人的喜好上,或者提升一些特定能力

Llama3数据堆到15T,而且是在多语言上。15T已经够大了,之后专注于提升数据质量就行,没必要扩充数据集了

没有使用MOE架构,就是对传统方法做大,后训练就做一个SFT、reject sampling和DPO

这里玩小心机,benchmark的对比是经过了不同的shot和CoT的,Llama系列缺乏调教,需要shot和CoT辅助后效果会更好,然而现实使用中还是希望zero-shot的

评价指标解读:

MMLU:各个考试里的多选题,考察知识面

IFEval:听从指令的程度

Pretrain

Pretrain-Data

清洗

数据更新到23年末

从多个数据源抓取数据,可能包括视频的字幕、书籍、互联网数据等

当数据含有大量PII信息或标记为危害网站时把信息扔掉

自己做了个parser,因为纯文字的信息不是大多数,html清洗容易洗掉很多数据;对数学公式和代码块针对性清洗

说markdown对模型有害,所以把markdown都扔了,但GPT等模型的输入输出都支持markdown;因为Llama的训练数据是爬取的web html信息,数据的格式以html template的方式呈现,所以markdown在这里对模型有影响

去重

按URL去重、正文抽出来相似度高于阈值去重(MinHash)、重复字数超过6个的行去重

启发式过滤

计算n-gram,如果n很大且重复比较多,就丢掉

设计一个dirty words列表放训练效果不好的词

计算文档与总体文档之间的KL散度,差太多说明这篇文档内容比较奇怪

模型分类

训练模型判断文章质量,用FastText或Roberta

推理数据

训练模型判断文章是否有推理性的数据,对其进行更细致的提取

多语言

抓了176个语言

Data Mix

知识分类

把网上爬取到的数据分类,进行加权

Scaling Law

采取多个混合比例

Summary

50%通用数据,25%数学和reasonable token,17%代码,8%多语言

Annealing data

在少数量的代码和数学上退火能帮助提升效果

预训练完之后的后训练阶段,开放一点学习率对高质量少量的代码和数学数据进行训练

Model Architecture

使用dense架构的transformer

GQA

节省内存

蓝色代表self attention,红色代表多头注意力,绿色是权重矩阵,红色是不同长度的也就是不同头算出的qkv

当需要计算一个新的注意力时,需要用新的q和之前的每个k计算注意力分数,如果讲之前的k和v保留,则需要放入内存中,这就是kv cache

GQA就将多头注意力的kv分组存成一个矩阵,因为他俩几乎是一样的

Attention Mask

对于一个消息窗口,例如8k,可能窗口中的输入来自多个文档,当计算注意力时,多个文档相互计算,但解码时只关注自己的文档,把其他的mask掉

Vocabulary

128K,相较于GPT4的100K,多了28K支持多语言

一个单词占用的token数变少

RoPE

使用RoPE做位置编码,超参数theta调大,从而支持比较长的上下文窗口

Scaling Law

小模型的验证误差可以用来预测一个大模型的验证误差,但预测下一个token的能力并不代表解决问题的能力,且小模型也并不能完全代表大模型性能

改进1.预测模型在downstream上的loss,也就是更关心具体任务

改进2.把Llama2的预测也拿过来训练

固定算力时,模型变小,可以训练的token数就变多

红色点连起来可以看到,loss随着模型增大差不多算是线性下降

x轴是预测下个词的似然估计

紫色的是Llama3用来做实验的小模型,中间用了Llama2的模型你和一条曲线,最后来预测Llama3 405B似然估计

Infrastructure, Scaling, and Efficiency

pass

相关推荐
andyguo15 小时前
ChatGPT Atlas vs Chrome:AI 浏览器的新纪元
人工智能·chrome·chatgpt
北京迅为16 小时前
【北京迅为】iTOP-4412精英版使用手册-第六十七章 USB鼠标驱动详解
linux·人工智能·嵌入式·4412
余俊晖17 小时前
RLVR训练多模态文档解析模型-olmOCR 2技术方案(模型、数据和代码均开源)
人工智能·算法·ocr·grpo
这张生成的图像能检测吗17 小时前
(论文速读)开放词汇3D场景理解的掩蔽点-实体对比
人工智能·计算机视觉·图像生成·1024程序员节·开放词汇·3d重建
大象耶18 小时前
计算机视觉六大前沿创新方向
论文阅读·人工智能·深度学习·计算机网络·机器学习
TMT星球19 小时前
加速进化发布Booster K1,打造AI时代的苹果公司
人工智能
tangchen。19 小时前
YOLOv4 :兼顾速度与精度!
人工智能·计算机视觉·目标跟踪
郑清19 小时前
Spring AI Alibaba 10分钟快速入门
java·人工智能·后端·ai·1024程序员节·springaialibaba
学术头条19 小时前
用视觉压缩文本!清华、智谱推出Glyph框架:通过视觉-文本压缩扩展上下文窗口
人工智能·深度学习·计算机视觉
Mrliu__19 小时前
Opencv(一): 用Opencv了解图像
人工智能·opencv·计算机视觉