Jamba: A Hybrid Transformer-Mamba Language Model

Jamba: A Hybrid Transformer-Mamba Language Model

相关链接:arXiv
关键字:hybrid architectureTransformerMambamixture-of-experts (MoE)language model

摘要

我们介绍了Jamba,一种新的基于新颖混合Transformer-Mamba混合专家(MoE)架构的基础大型语言模型。具体来说,Jamba交错了Transformer和Mamba层的块,享受两个模型家族的好处。在这些层中的一些层添加了MoE,以增加模型容量,同时保持活跃参数使用量可控。这种灵活的架构允许针对资源和目标的特定配置。在我们实现的特定配置中,我们得到了一个强大的模型,适合在单个80GB GPU中运行。Jamba在大规模构建,相比传统的Transformer,提供了高吞吐量和小内存占用,并且同时在标准语言模型基准测试和长上下文评估中表现出最先进的性能。值得注意的是,该模型对长达256K个token的上下文呈现出强大的结果。我们研究了各种架构决策,例如如何结合Transformer和Mamba层,以及如何混合专家,并且展示了它们在大规模建模中的重要性。我们还描述了在训练和评估Jamba过程中揭示的这些架构的几个有趣特性,并且计划公开不同消融运行的检查点,以鼓励对这个新颖架构的进一步探索。我们根据宽松的许可证公开了我们实现的Jamba的权重。

核心方法

在这里插入图片描述

  1. 混合架构:Jamba结合了Transformer层和Mamba层,这是一种最新的状态空间模型,以及混合专家(MoE)组件。
  2. 灵活配置:通过调整Transformer层和Mamba层的比例,可以在内存使用、高效训练和长上下文能力之间进行平衡。
  3. MoE层:MoE层允许在不增加计算需求的情况下增加模型容量,通过在每两层中应用MoE,使用16个专家,每个token使用前2个专家。
  4. 训练和评估:Jamba在多种基准测试中进行了评估,显示出与具有相似参数数量的Mixtral-8x7B相当的性能,并且在长上下文评估中超过了Mixtral。

实验说明

Jamba模型在一个80GB的GPU上进行了实现和训练,以适应单个GPU的内存限制,同时在质量和吞吐量方面实现了最佳性能。Jamba的特定配置选择了适当的层数、Transformer和Mamba层的比例、MoE的使用频率以及每个MoE层的专家数量,以确保模型可以在单个GPU上运行,同时具有足够的内存来处理输入。

结论

Jamba是一种新颖的架构,它结合了注意力和Mamba层,以及MoE模块,并且我们公开了它的实现,达到了最先进的性能并支持长上下文。我们展示了Jamba在平衡性能和内存需求方面提供的灵活性,同时保持高吞吐量。我们对几种设计选择进行了实验,例如注意力层和Mamba层的比例,并讨论了在开发过程中所做的一些发现,这些发现将为未来的混合注意力-状态空间模型的工作提供信息。为了促进这样的研究,我们计划公开小规模训练运行的模型检查点。我们在此发布的最大的模型具有12B活跃参数和52B可用参数,支持长达256K个token的上下文,并且即使在处理140K-token文本时也能适合单个80GB GPU。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/587498.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DevOps与CI/CD简介

DevOps 是一种软件开发和运维的文化、实践和方法论,旨在通过加强开发团队和运维团队之间的合作和沟通,实现快速、高效、可靠的软件交付和运维。DevOps 是由 Development(开发)和 Operations(运维)两个单词组…

Java基础知识总结(第八篇):集合:Collection(List、Set)、Map、Collections 工具类

声明: 1. 本文根据韩顺平老师教学视频自行整理,以便记忆 2. 若有错误不当之处, 请指出 系列文章目录 Java基础知识总结(第一篇):基础语法 Java基础知识总结(第二篇)&#x…

云智慧发布对象关系型数据库CloudPanguDB,打破传统技术壁垒

近日,云智慧推出关系型数据库CloudPanguDB(中文名称:盘古数据库),旨在通过高兼容性能和创新技术架构,降低企业项目整体运营成本。 无论是处理海量复杂数据,还是构建清晰有序的数据结构关系&…

普通Java工程可执行JAR两种打包方式探讨

文章目录 一、需求概述二、代码结构三、运行结果四、打包设置1. 一体化可执行包2. 带外部依赖lib的可执行包 五、打包运行1. 源码放送2. 打包执行3. 打包结果 一、需求概述 普通Java工程 docker-show 实现了定时打印docker应用信息,现在需要将其打包成可执行Jar部署…

A New Image Contrast Enhancement Algorithmusing Exposure Fusion Framework

Abstract 弱光图像由于能见度低,不利于人类观察和计算机视觉算法。为了解决这一问题,人们提出了许多图像增强技术,但现有的方法不可避免地会出现对比度增强不足和过度增强的问题。在本文中,我们提出了一种图像对比度增强算法来提…

Windows下编译TinyXML(XML文件解析)

作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 TinyXML是什么? TinyXML是一个轻量级的C XML解析器,它提供了一种简单的方法来解析和操作XML文档。TinyXM…

使用tcpdump和wireshark进行服务器抓包分析

目录 前言 1.tcpdump简介 2.Wireshark简介 3.实际案例 4.代码示例 5.总结 前言 服务器抓包分析是一种非常常见和有效的网络故障排查和性能优化手段。通过捕获服务器上的网络流量,可以帮助我们深入了解服务器与其它设备之间的通信情况,发现问题并进…

应用方案 | 内置ALC的音频前置放大器D2538A和D3308芯片

一、应用领域 D2538A和D3308是芯谷科技推出的两款内置ALC(音频限幅器)的前置音频放大器芯片,其中D2538A为单通道,D3308为双通道,它特别适用于胎心仪、个人医疗防护、立体声收录机、盒式录音机等涉及音频放大与限幅的产…

微软云学习环境

微软公有云 - Microsoft Azure 本文介绍通过微软学习中心Microsoft Learn来免费试用Azure上的服务,也不需要绑定信用卡。不过每天只有几个小时的时间。 官网 https://docs.microsoft.com/zh-cn/learn/ 实践 比如创建虚拟机,看到自己的账号下多了Learn的…

【代码】C语言|保留小数点后n位并四舍五入,便于处理运算和存储不善的浮点数

前言 有个人跟我说浮点数运算起来非常麻烦,总是算着算着丢失精度,导致计算结果取int的时候取不准。毕竟系统也没有自动根据这个数的精度四舍五入的功能。 比如int(2.999999999999999)2,但是float(2.999999999999999)3.000000。 我觉得这个问…

2024最新软件测试【测试理论+ 抓包与网络协议】面试题(内附答案)

一、测试理论 3.1 你们原来项目的测试流程是怎么样的? 我们的测试流程主要有三个阶段:需求了解分析、测试准备、测试执行。 1、需求了解分析阶段 我们的 SE 会把需求文档给我们自己先去了解一到两天这样,之后我们会有一个需求澄清会议, …

升级一下电脑,CPU换I5-14600K,主板换华硕B760M

刚给自己电脑升级了一下,CPU从 AMD R5 5600X 换成 Intel I5-14600K,主板换成了华硕的 TUF GAMING B760M-PLUS WIFI D4。 因为我现有的两根内存是DDR4的,所有我选了个支持DDR4内存的主板。 我发现用AMD处理器时将系统从Win10升级到Win11后变…