GPT3, llama2, InternLM2技术报告对比

2024-04-01 07:28

本文主要是介绍GPT3, llama2, InternLM2技术报告对比,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

GPT3(September 22, 2020)是大语言应用的一个milestone级别的作品,Llama2(February 2023)则是目前开源大模型中最有影响力的作品,InternLM2(2023.09.20)则是中文比较有影响力的作品。

今天结合三篇技术汇报,尝试对比一下这三个方案的效果。

参考GPT3,关于模型(Model and Architectures)的介绍分为了几个部分,包括Training Dataset, Training Process,而InternLM2包括了Pretrain和Alignment,LLama包括预训练,微调和安全。针对这个大致的划分,我们可以对比模型的具体细节效果。

1. 预训练

2. 微调,对齐

2.  模型结构及大小

模型大小

GPT3是175B参数,此外也提供了一些小版本。模型结构与GPT2一致。是一个纯decoder的transformer架构(没有深究了)。

LLama2则是70--700B参数

InternLM2则是1.8B到20B的参数量。

模型结构

GPT-3和GPT-2模型结构一致,都是采用了decoder形式的transformer架构。

LLama2则是基于LLama,增加了Context Length(from 2048 tokens to 4096 token),将Grouped-Query Attention替代MHA(multi-head attention)。

而LLama的架构则是基于Transformer,然后采用了其他方案的改进:RMSNorm(gpt3),Relu -> SwiGLU activation function(PaLM), absolute positional embeddings ->Rotary Embeddings (GPTNeo]),

而 InternLM2技术报告中,强调了它们很大参考了 LLama,但是还做了如下调整。

to better support diverse tensor parallelism (tp) transformations, we have reconfigured the matrix layout. Rather than stacking the Wk , Wq, and Wv matrices in a straightforward manner, we adopt an interleaving approach for each head’s Wk , Wq, and Wv, as depicted in Figure 2.

按我的理解,就是基于qkv三个权重矩阵的合并实现加速。

预训练

GPT-3论文对于训练策略的介绍比较简单,具体可以参考【5】,但是,它强调了pretrain,one-shot,zero-shot这几种任务的难度截然不同,

而关于数据集,主要介绍了Common Crawl dataset,而关于训练策略,不管是正文,还是附录,都没有多余的介绍了。

LLama,它使用English CommonCrawl以及github,wiki等大量数据进行训练。

相比于前两者,InternLM2则详细介绍了数据的准备过程,但是有趣的点,似乎没有。

Tokenize

GPT3使用的tokenize方式为reversible tokenization, 和GPT2一致。·

LLama2的tokenize的方式采用bytepair encoding (BPE) algorithm。训练集包含了1.4T个Token。

InternLM的Tokenize则采用了GPT-4所使用的tokenize方式。

finetune

在GPT-3的论文中强调了finetuning可以增加LLM针对特定任务的表现,但是也会影响模型的泛化性,并且,夸大了它的实际效果。作者把finetune和few shot,one-shot,zero-shot这几种方式对比,fine-tune显然是相对笨拙的方式。即使这样,他依然可以优化在各个场景中llm的效果。在GPT-3中,特定任务的使用都提到了finetune,但是finetune的细节并没有提及,在llama中,finetune也没有看到细节的介绍。而在InternLM中,则有alignment一大个章节来讲述finetune。

其中提到,为了对齐,他使用了 supervised fine-tuning (SFT) 和 reinforcement learning from human feedback (RLHF) 。针对RLHF,具体提出了coolRLHF,值得注意的是,在TR中,有大量篇幅用于介绍coolRLHF这一方案。

参考文档

[1] https://arxiv.org/pdf/2403.17297.pdf

[2] https://arxiv.org/pdf/2005.14165.pdf

[3] https://arxiv.org/pdf/2307.09288.pdf

[4] The Illustrated GPT-2 (Visualizing Transformer Language Models) – Jay Alammar – Visualizing machine learning one concept at a time.

[5] https://d4mucfpksywv.cloudfront.net/better-language-models/language_models_are_unsupervised_multitask_learners.pdf

这篇关于GPT3, llama2, InternLM2技术报告对比的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/866560

相关文章

Qt如何实现文本编辑器光标高亮技术

《Qt如何实现文本编辑器光标高亮技术》这篇文章主要为大家详细介绍了Qt如何实现文本编辑器光标高亮技术,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以了解下... 目录实现代码函数作用概述代码详解 + 注释使用 QTextEdit 的高亮技术(重点)总结用到的关键技术点应用场景举例示例优化建议

关于MyISAM和InnoDB对比分析

《关于MyISAM和InnoDB对比分析》:本文主要介绍关于MyISAM和InnoDB对比分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录开篇:从交通规则看存储引擎选择理解存储引擎的基本概念技术原理对比1. 事务支持:ACID的守护者2. 锁机制:并发控制的艺

CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比

《CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比》CSS中的position属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布... css 中的 position 属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布局和层叠关

Java中的登录技术保姆级详细教程

《Java中的登录技术保姆级详细教程》:本文主要介绍Java中登录技术保姆级详细教程的相关资料,在Java中我们可以使用各种技术和框架来实现这些功能,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录1.登录思路2.登录标记1.会话技术2.会话跟踪1.Cookie技术2.Session技术3.令牌技

Linux中的more 和 less区别对比分析

《Linux中的more和less区别对比分析》在Linux/Unix系统中,more和less都是用于分页查看文本文件的命令,但less是more的增强版,功能更强大,:本文主要介绍Linu... 目录1. 基础功能对比2. 常用操作对比less 的操作3. 实际使用示例4. 为什么推荐 less?5.

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

基于Go语言实现Base62编码的三种方式以及对比分析

《基于Go语言实现Base62编码的三种方式以及对比分析》Base62编码是一种在字符编码中使用62个字符的编码方式,在计算机科学中,,Go语言是一种静态类型、编译型语言,它由Google开发并开源,... 目录一、标准库现状与解决方案1. 标准库对比表2. 解决方案完整实现代码(含边界处理)二、关键实现细

PostgreSQL 序列(Sequence) 与 Oracle 序列对比差异分析

《PostgreSQL序列(Sequence)与Oracle序列对比差异分析》PostgreSQL和Oracle都提供了序列(Sequence)功能,但在实现细节和使用方式上存在一些重要差异,... 目录PostgreSQL 序列(Sequence) 与 oracle 序列对比一 基本语法对比1.1 创建序

Java使用WebView实现桌面程序的技术指南

《Java使用WebView实现桌面程序的技术指南》在现代软件开发中,许多应用需要在桌面程序中嵌入Web页面,例如,你可能需要在Java桌面应用中嵌入一部分Web前端,或者加载一个HTML5界面以增强... 目录1、简述2、WebView 特点3、搭建 WebView 示例3.1 添加 JavaFX 依赖3

exfat和ntfs哪个好? U盘格式化选择NTFS与exFAT的详细区别对比

《exfat和ntfs哪个好?U盘格式化选择NTFS与exFAT的详细区别对比》exFAT和NTFS是两种常见的文件系统,它们各自具有独特的优势和适用场景,以下是关于exFAT和NTFS的详细对比... 无论你是刚入手了内置 SSD 还是便携式移动硬盘或 U 盘,都需要先将它格式化成电脑或设备能够识别的「文