GPT4模型架构的泄漏与分析
迄今为止,GPT4 模型是突破性的模型,可以免费或通过其商业门户(供公开测试版使用)向公众提供。它为许多企业家激发了新的项目想法和用例,但对参数数量和模型的保密却扼杀了所有押注于第一个 1 万亿参数模型到 100 万亿参数声明的爱好者!
模型秘密的泄露
6 月 20 日,自动驾驶初创公司 Comma.ai 创始人 George Hotz 透露,GPT-4 并不是单一的整体密集模型(如 GPT-3 和 GPT-3.5),而是 8 x 2200 亿个参数的混合模型组成
当天晚些时候,Meta 的 PyTorch 联合创始人重申了这一事件。

就在前一天,微软 Bing AI 负责人Mikhail Parakhin也暗示了这一点。
GPT 4:不是一个整体
所有推文的含义是什么?GPT-4 不是一个单一的大型模型,而是 8 个共享专业知识的较小模型的联合/集合。据传,这些模型中的每一个都有 2200 亿个参数。

该方法被称为专家模型范式的混合(链接如下)。这是一种众所周知的方法,也称为模型九头蛇。这让我想起了印度神话,我会和拉瓦那一起去。
请持保留态度,这不是官方新闻,但人工智能社区的重要高层成员已经对此表示/暗示。微软尚未证实其中任何一个。
什么是专家混合范例?
既然我们已经讨论了专家的混合,那么让我们深入了解一下它是什么。专家混合是一种专门为神经网络开发的集成学习技术。它与传统机器学习建模的通用集成技术(该形式是广义形式)略有不同。因此,您可以认为法学硕士中的专家混合是集成方法的特例。
简而言之,在该方法中,任务被分为子任务,每个子任务的专家都用来求解模型。这是创建决策树时分而治之的一种方法。人们还可以将其视为每个单独任务的专家模型之上的元学习。
可以针对每个子任务或问题类型训练更小、更好的模型。元模型学习使用哪个模型能够更好地预测特定任务。元学习器/模型充当交通警察。子任务可能重叠也可能不重叠,这意味着输出的组合可以合并在一起以得出最终输出。
专家混合(简称 MoE 或 ME)是一种集成学习技术,它实现了在预测建模问题的子任务上培训专家的想法。
在神经网络社区中,一些研究人员已经研究了分解方法。[...] 专家混合 (ME) 方法分解输入空间,以便每个专家检查空间的不同部分。[…] 门控网络负责组合各个专家。
— 第 73 页,使用集成方法进行模式分类,2010 年。
该方法有四个要素,它们是:
- 将任务划分为子任务。
- 为每个子任务培养一名专家。
- 使用门控模型来决定使用哪位专家。
- 汇集预测和门控模型输出以进行预测。
下图取自 2012 年书籍《集成方法》第 94 页,提供了对该方法的架构元素的有用概述

具有专家成员和门控网络的专家模型混合示例
取自:集成方法
子任务
第一步是将预测建模问题划分为子任务。这通常涉及使用领域知识。例如,图像可以分为单独的元素,例如背景、前景、对象、颜色、线条等。
... ME 采用分而治之的策略,其中一个复杂的任务被分解为几个更简单和更小的子任务,并且个体学习者(称为专家)接受针对不同子任务的培训。
— 第 94 页,集成方法,2012 年。
对于那些任务划分为子任务不明显的问题,可以使用更简单、更通用的方法。例如,人们可以想象一种方法,该方法按列组划分输入特征空间,或者根据标准分布的距离度量、内点和异常值等来分离特征空间中的示例。
……在ME中,一个关键问题是如何找到任务的自然划分,然后从子解决方案中推导出整体解决方案。
— 第 94 页,集成方法,2012 年。
专家模型
接下来,为每个子任务设计一个专家。
专家混合方法最初是在人工神经网络领域开发和探索的,因此传统上,专家本身就是神经网络模型,用于预测回归情况下的数值或分类情况下的类标签。
应该清楚的是,我们可以为专家“插入”任何模型。例如,我们可以使用神经网络来表示门函数和专家。结果被称为混合密度网络。
— 第 344 页,机器学习:概率视角,2012 年。
每个专家都会收到相同的输入模式(行)并做出预测。
门控模型
模型用于解释每位专家做出的预测,并帮助决定对于给定的输入信任哪位专家。这被称为门控模型或门控网络,因为它传统上是一种神经网络模型。
门控网络将提供给专家模型的输入模式作为输入,并输出每个专家在对输入进行预测时应做出的贡献。
…由门网络确定的权重是根据给定的输入动态分配的,因为 MoE 有效地了解每个集成成员学习了特征空间的哪一部分
— 第 16 页,集成机器学习,2012 年。
门控网络是该方法的关键,模型有效地学习为给定输入选择类型子任务,进而选择信任的专家来做出强有力的预测。
专家混合也可以被视为一种分类器选择算法,其中各个分类器被训练成为特征空间某些部分的专家。
— 第 16 页,集成机器学习,2012 年。
当使用神经网络模型时,门控网络和专家一起训练,以便门控网络学习何时信任每个专家做出预测。该训练过程传统上是使用期望最大化(EM)来实现的。门控网络可能有一个 softmax 输出,为每个专家提供类似概率的置信度得分。
一般来说,训练过程试图实现两个目标:对于给定的专家,找到最佳的门函数;对于给定的门函数,根据门函数指定的分布来训练专家。
— 第 95 页,集成方法,2012 年。
汇集法
最后,专家模型的混合必须做出预测,这是通过池化或聚合机制来实现的。这可能就像选择门控网络提供的具有最大输出或置信度的专家一样简单。
或者,可以进行加权和预测,明确地将每个专家做出的预测与门控网络估计的置信度结合起来。您可能会想到其他方法来有效利用预测和门控网络输出。
然后,池化/组合系统可以选择具有最高权重的单个分类器,或者计算每个类别的分类器输出的加权和,并选择接收最高加权和的类别。
— 第 16 页,集成机器学习,2012 年。
交换机路由
我们还应该简要讨论与 MoE 论文不同的交换机路由方法。我提出这个问题是因为微软似乎使用了交换机路由而不是专家模型来节省一些计算复杂性,但我很高兴被证明是错误的。当有多个专家的模型时,它们的路由函数可能有一个不平凡的梯度(何时使用哪个模型)。该决策边界由交换层控制。
交换层的好处有三个。
- 如果令牌仅路由到单个专家模型,则路由计算会减少
- 由于单个令牌进入单个模型,批量大小(专家容量)至少可以减半
- 简化了路由实现并减少了通信。
同一令牌与 1 个以上专家模型的重叠称为容量因子。以下是具有不同专家能力因素的路由如何工作的概念描述

令牌路由动态的图示。
每个专家处理由容量因子调制的固定批量大小的令牌。每个令牌都会路由到具有最高路由概率的专家
,但每个专家都有固定的批量大小
(总令牌/专家数量)×容量因子。如果令牌分配不均匀
,则某些专家将溢出(用红色虚线表示),导致
这些令牌不被该层处理。较大的容量系数可以缓解
这种溢出问题,但也会增加计算和通信成本
(由填充的白色/空槽表示)。(来源https://arxiv.org/pdf/2101.03961.pdf)
与 MoE 相比,MoE 和 Switch 论文的调查结果表明:
- 开关变压器在速度质量的基础上优于精心调整的密集模型和 MoE 变压器。
- 开关变压器的计算空间比 MoE 更小
- 开关变压器在较低容量系数 (1–1.25) 下表现更好。

结论
有两个警告,第一,这一切都来自道听途说,第二,我对这些概念的理解相当薄弱,所以我敦促读者持保留态度。
但是微软通过隐藏这种架构实现了什么目的呢?好吧,他们引起了轰动,并引发了悬念。这可能有助于他们更好地讲述自己的故事。他们将创新保留在自己手中,避免其他人更快地赶上他们。整个想法很可能是微软惯常的游戏计划,即在向一家公司投资 10B 的同时阻碍竞争。
GPT-4 的性能很棒,但它并不是一个创新或突破性的设计。这是工程师和研究人员开发的方法的巧妙实现,并辅以企业/资本主义部署。OpenAI 既没有否认也没有同意这些说法(https://thealgorithmicbridge.substack.com/p/gpt-4s-secret-has-been-revealed),这让我认为 GPT-4 的这种架构很有可能是真的
相关文章:
GPT4模型架构的泄漏与分析
迄今为止,GPT4 模型是突破性的模型,可以免费或通过其商业门户(供公开测试版使用)向公众提供。它为许多企业家激发了新的项目想法和用例,但对参数数量和模型的保密却扼杀了所有押注于第一个 1 万亿参数模型到 100 万亿参…...
GEE/PIE遥感大数据处理与典型案例丨数据整合Reduce、云端数据可视化、数据导入导出及资产管理、机器学习算法等
目录 专题一:初识GEE和PIE遥感云平台 专题二:GEE和PIE影像大数据处理基础 专题三:数据整合Reduce 专题四:云端数据可视化 专题五:数据导入导出及资产管理 专题六:机器学习算法 专题七:…...
STM32--DMA
文章目录 DMA简介DMA特性 DMA框图DMA基本结构DMA请求数据宽度对齐DMA数据转运工程DMAADC多通道 DMA简介 直接存储器存取(DMA)用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU干预,数据可以通过DMA快速地移动,这就节省了CPU的…...
mongodb和redis的用途
MongoDB和Redis都是常见的NoSQL数据库,它们有不同的特点和用途。 MongoDB的主要特点和用途: 数据存储:MongoDB是一种面向文档的数据库,以JSON样式的BSON文档(二进制JSON)的形式存储数据。它支持复杂的数据…...
【动手学深度学习】--18.图像增广
文章目录 图像增广1.常用的图像增广方法1.1翻转和裁剪1.2改变颜色1.3结合多种图像增广方法 2.使用图像增广进行训练3.训练 图像增广 官方笔记:图像增广 学习视频:数据增广【动手学深度学习v2】 图像增广在对训练图像进行一系列的随机变化之后ÿ…...
数据分析--统计学知识
描述型统计 描述统计 1.集中趋势 :众数、平均数、分位数 2.离散趋势: 极值(max)、极差(max-min)、平均差、方差、标准差、分位差 3.分布:峰泰、偏度 推理型统计 概率分布:离散型…...
matlab 计算点云协方差矩阵
目录 一、概述1、算法概述2、主要函数二、代码示例三、结果展示四、参数解析输入参数输出参数五、参考链接本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫。 一、概述...
python进阶之图像编程 pillow扩展库
一、概述 1.1pillow简介 Python Imaging Library (PIL)是python 下的图像处理模块,支持多种格式,并提供强大的图像处理功能,可以通过pip进行安装后使用。 1.2pillow具体应用 Pillow 库是 Python3 最常用的图像处理库,它支持多种图像格式&a…...
TiCDC Canal-JSON 消息接收示例(Java 版)
1.引言 业务程序经常会通过各式各样的缓存来提升用户的访问速度。 由于存在缓存,在一些实时性要求较高的场景中,需要在数据变更的同时将数据缓存进行更新或删除。 如果数据本身由其他业务部门提供,就无法在写入的同时做缓存的一致性处理。…...
SQLite、MySQL、PostgreSQL3个关系数据库之间的对比
引言 关系数据模型以行和列的表格形式组织数据,在数据库管理工具中占主导地位。今天还有其他数据模型,包括NoSQL和NewSQL,但是关系数据库管理系统(RDBMS)仍然占主导地位用于存储和管理全球数据。 本文比较了三种实现最…...
开源容灾备份软件,开源cdp备份软件
数据的安全性和完整性面临着硬件问题、黑客攻击、人为错误等各种威胁。在这种环境下,开源容灾备份软件应运而生,通过提供自动数据备份和恢复,有效地保证了公司的数据安全。 一、开源容灾备份软件的定义和作用 开源容灾备份软件是一种基于开源…...
Java合并区间
问题: 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。 示例: 示例 1ÿ…...
前端面试:【代码质量与工程实践】单元测试、集成测试和持续集成
在现代软件开发中,确保代码质量是至关重要的。单元测试、集成测试和持续集成是关键的工程实践,用于提高代码的可靠性和可维护性。本文将深入探讨这些概念,以及它们如何在软件开发中发挥作用。 1. 单元测试(Unit Testing࿰…...
2023/8/17总结
项目完善: 算法推荐 item-CF 算法推荐我主要写的是协同过滤算法,然后协同过滤算法分成俩种—— 基于用户的 user-CF 基于物品的 item-CF 因为害怕用户冷启动,和数据量的原因 我选择了 item-CF 主要思路是——根据用户的点赞列表&…...
REDIS 7 教程 数据类型-进阶篇
⑥ *位图 bitmap 1. 理论 由0和1 状态表现的二进制位的bit 数组。 说明:用String 类型作为底层数据结构实现的一种统计二值状态的数据类型 位图本质是数组,它是基于String 数据类型的按位操作。该数组由多个二进制位组成,每个二进制位都对应一个偏…...
图文并茂:Python Tkinter从入门到高级实战全解析
目录 介绍什么是Tkinter?准备工作第一个Tkinter程序界面布局事件处理补充知识点 文本输入框复选框和单选框列表框弹出对话框 综合案例:待办事项列表总结 介绍 欢迎来到本篇文章,我们将带您深入了解如何在Python中使用Tkinter库来创建图形用…...
npm和yarn的区别?
文章目录 前言npm和yarn的作用和特点npm和yarn的安装的机制npm安装机制yarn安装机制检测包解析包获取包链接包构建包 总结后言 前言 这一期给大家讲解npm和yarn的一些区别 npm和yarn的作用和特点 包管理:npm 和 yarn 可以用于安装、更新和删除 JavaScript 包。它们提…...
微服务项目容器编排docker-compose.yml、Dockerfile文件模板、相关配置文件、shell脚本
nacos Dockerfile(不需要特殊处理,使用docker conpose可以不写) # 基础镜像 FROM nacos/nacos-server # author MAINTAINER jianglifeng<jlifengfoxmail.com> RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \ &&a…...
算法通过村第三关-数组黄金笔记|数组难解
文章目录 前言数组中出现超过一半的数字数组中只出现一次的数字颜色的分类问题(荷兰国旗问题)基于冒泡排序的双指针(快慢指针)基于快排的双指针(对撞指针) 总结 前言 提示:苦不来自外在环境中的人、事、物,…...
【2023】LeetCode HOT 100——矩阵
目录 1. 矩阵置零1.1 C++实现1.2 Python实现1.3 时空分析2. 螺旋矩阵2.1 C++实现2.2 Python实现2.3 时空分析3. 旋转图像3.1 C++实现3.2 Python实现3.3 时空分析4. 搜索二维矩阵 II4.1 C++实现4.2 Python实现4.3 时空分析1. 矩阵置零 🔗 原题链接:...
SpringBoot-17-MyBatis动态SQL标签之常用标签
文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...
RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...
云计算——弹性云计算器(ECS)
弹性云服务器:ECS 概述 云计算重构了ICT系统,云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台,包含如下主要概念。 ECS(Elastic Cloud Server):即弹性云服务器,是云计算…...
【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...
Nuxt.js 中的路由配置详解
Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南
1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发,使用DevEco Studio作为开发工具,采用Java语言实现,包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...
JVM虚拟机:内存结构、垃圾回收、性能优化
1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的----NTFS源代码分析--重要
根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的 第一部分: 0: kd> g Breakpoint 9 hit Ntfs!ReadIndexBuffer: f7173886 55 push ebp 0: kd> kc # 00 Ntfs!ReadIndexBuffer 01 Ntfs!FindFirstIndexEntry 02 Ntfs!NtfsUpda…...
