超 300 幅全彩图示,《图解大模型:生成式 AI 原理与实战》重磅上市!

混合专家(Mixture-of-Experts,MoE)模型架构:机器学习的高效扩展之道 想象一下,如果有一个专家团队,每位成员都拥有独特的技能和专长,能够高效协作,共同解决这些难题,那将是一种多么美妙的场景。传统模型在处理每个输入时,都会激活神经网络中的所有层和神经元,这导致了巨大的计算成本,推理速度减慢,并且消耗了大量内存。这本书不仅详细介绍了MoE模型的基本原理和架构,还通过丰富的案例和实战经验,展示了如何在不同的应用场景中有效地应用MoE模型。当然,MoE模型也并非完美无缺。这一过程中,门控网络会综合考虑输入数据的类型、大小、复杂度等因素,以及各个专家的专长和性能,从而做出最优的决策。 阅读详情

《图解大模型:生成式 AI 原理与实战》重磅上市!

超过 300 幅全彩图示 × 实战级项目代码 × 中文独家 DeepSeek-R1 彩蛋内容,入门、进阶、实操、求职一步到位!

这不是一本“纸上谈兵”的 AI 教程,而是一本真正“看得懂、学得会、跑得动”的大模型实战指南。

由《The Illustrated Transformer》原作者 Jay Alammar 携手 Maarten Grootendorst 联袂打造,这本书继承了“图解一切”的直观风格,将复杂的大模型原理拆解为人人能懂的图示知识地图,为你打开通往 LLM 世界的大门。

目前这本书的英文版给大家整理并打包好了

↓↓↓↓↓↓

本书的风格可以参考下文,真是一图胜千言,可以帮助大家快速理解相关概念。

正文

在追踪最新发布的大型语言模型时,您会发现许多模型的标题中都醒目标注着「MoE」。 这个「MoE」究竟代表何种技术?为何能成为众多 LLM 的架构首选?

本图解指南将通过 50+组可视化解析图,带您深入探索这一核心组件——混合专家系统(Mixture of Experts)。

图片

本文将系统解析MoE架构的两大核心模块:应用于典型LLM架构中的专家系统与路由分配器。

混合专家系统(Mixture of Experts,MoE)是一种通过协同多个差异化子模型(即「专家单元」)来提升大型语言模型性能的技术范式。

MoE架构包含两大核心组件:

  • 专家集群——每个前馈神经网络层配置了可动态调度的多组专家单元集合这些专家单元本质上仍保持前馈神经网络的结构特性;

  • 路由分配器或门控网络——负责确定文本标记的专家调度路径。

在集成MoE的大型语言模型各层级中,均部署了(具有领域特化能力的)专家单元:

图片

需要明确的是,这里所说的“专家单元”并非专攻“心理学”或“生物学”等特定领域。其学习能力主要局限于词汇层面的语法信息:

图片

更准确地说,这些专家系统的核心能力体现在处理特定语境中的文本标记。

路由决策层(门控网络)会为当前输入层动态选择最优的专家集群:

图片

每个专家单元并非完整的语言大模型,而是大模型架构中的子模块组件。

要深入理解专家系统的表征机制和工作原理,我们首先需要剖析MoE技术旨在替代的核心结构——密集连接层。

混合专家系统的底层基础源于语言大模型中的前馈神经网络(FFNN)模块。

值得注意的是,在标准的仅解码器架构Transformer中,FFNN应用在层标准化处理之后:

图片

前馈神经网络能够利用注意力机制生成的上下文信息,通过深度转换捕捉数据中更复杂的关联模式。

但前馈神经网络的参数量会呈现指数级增长趋势。为了学习这些复杂的关系,模型通常会对接收的输入信息进行扩展处理:

图片

传统Transformer中的前馈神经网络被称为稠密模型,因为所有模型参数(包括权重和偏置项)都会被激活。所有输入信息都会被完整保留并参与输出结果的计算。

仔细分析稠密模型可以发现,输入信息会在不同程度上激活所有参数:

图片

与之形成对比的是稀疏模型,这类模型仅激活部分参数,其原理与混合专家系统密切相关。

具体实现上,可将稠密模型拆分为多个专家单元,经重新训练后,每次推理仅激活部分专家集群:

图片

核心原理在于:每个专家单元在训练过程中会习得不同的信息特征。在执行推理时,仅调用与当前任务最相关的特定专家系统。

当处理具体问题时,可选取最适合当前任务的专家单元:

图片

如前所述,专家集群学习的信息粒度比整个领域更细致1 ,因此将其统称为'专家'有时可能不够准确。

图片

ST-MoE论文中编码器模型的专家单元展现出显著的专业化特性。

然而在解码器模型中,专家集群的专业化特征表现相对模糊。但这并不代表所有专家单元都具备相同效能。

Mixtral 8x7B论文 提供了典型范例,论文中每个文本标记均按首选专家单元进行颜色编码。

图片

可视化分析同时揭示,专家系统更多聚焦语法结构而非特定领域特征。

因此,虽然解码器专家单元未显现明确专业方向,但其对特定类型标记的处理仍保持稳定模式。

尽管将专家单元视为分割后的稠密模型隐藏层有助于直观理解,但实际上它们通常是完整的前馈神经网络结构:

图片

鉴于多数大型语言模型配置多个解码器模块,文本生成需经历多层级联的专家系统处理流程:

图片

不同文本标记选择的专家单元存在差异,最终形成多样化的'处理路径':

图片

若重构解码器模块的可视化模型,当前应呈现多个独立的前馈神经网络(每个对应一个专家单元):

图片

当前解码器模块集成了多个前馈神经网络(每个作为独立的'专家单元'),可在推理过程中灵活调用。

在构建专家集群后,模型如何智能选择适用的专家系统?

专家层前端配置的路由分配器(亦称门控网络),经专项训练可为特定文本标记智能匹配最优专家单元。

路由分配器(或称门控网络)本身作为前馈神经网络,基于输入特征动态选择专家单元。该机制通过概率输出实现专家单元的最优匹配:

图片

专家层将选定专家单元的输出结果与门控值(选择概率)进行加权后输出。

路由分配器与专家集群(仅部分激活)共同组成混合专家架构层:

图片

混合专家架构层提供两种形态:稀疏型 与 密集型 专家系统组合方案。

两者虽均采用路由分配机制,但稀疏混合架构仅激活少数专家单元,而密集型架构则全量调用并实施差异化权重分配。

图片

例如,当给定一组文本标记时,混合专家架构会将标记分配给所有专家集群进行处理,而稀疏混合专家架构则仅会选取少量专家单元参与计算。

在当前大型语言模型的技术现状中,所提及的MoE通常特指稀疏混合专家架构,这种设计允许系统仅调用部分专家单元进行运算。这种架构显著降低了计算成本,这对大型语言模型的运行效率具有关键意义。

门控网络堪称混合专家架构的核心组件,它不仅主导 推理过程 中的专家选择机制,更在 训练流程 中发挥着关键调控作用。

在最基础的数学表达中,输入向量(x)将与路由权重矩阵(W)进行矩阵乘法运算:

图片

随后通过SoftMax函数对输出值进行处理,生成针对各专家单元的概率分布函数G(x):

图片

路由分配器基于该概率分布,为每个输入选择最适配的专家单元进行处理。

最终系统将每个路由通道的输出结果与对应专家单元的计算输出相乘,并进行聚合求和操作。

图片

让我们将各模块整合,完整解析输入数据在路由决策层与专家集群间的流动路径:

图片

图片

然而,这种简单的函数设计往往导致路由决策层持续选择同一专家单元,因为部分专家单元可能具有更快的参数更新速度:

图片

这不仅会造成专家选择分布失衡,部分专家甚至可能完全无法获得有效训练,最终导致训练流程与推理过程的双重问题。

我们的优化目标是确保各专家单元在训练和推理阶段保持均衡激活状态,该机制被称为负载均衡。本质上,这种设计旨在防止模型对固定专家单元产生路径依赖式的过拟合。

要实现专家单元的重要性均衡,必须重点优化路由分配器——这个决定专家选择时序的核心控制组件。

实现路由层负载均衡的有效方法之一是采用KeepTopK 2 扩展机制。通过注入可训练的高斯噪声参数,系统能够打破专家选择的固化模式:

图片

随后,除需要激活的前k个专家单元(例如2个)外,其余专家单元的权重将被设置为 -∞:

图片

通过将对应权重设为 -∞,这些权重经 SoftMax 函数处理后得到的概率值将为 0:

图片

尽管存在诸多优质替代方案,KeepTopK策略仍是当前多数大型语言模型采用的核心路由机制。需注意,KeepTopK策略可不依赖额外噪声独立运作。

KeepTopK策略通过为每个文本标记选择特定专家单元实现定向处理。该方法称为_标记择路_3 ,支持将文本标记路由至单一专家( Top-1路由 ):

图片

或同时分配给多个专家单元(top-k路由):

图片

关键优势在于可实现专家系统贡献度的动态加权与有机融合。

为确保训练过程中专家集群的均衡调用,网络在常规损失函数外特别引入了辅助损失(亦称 负载均衡损失 )。

该约束条件强制要求所有专家单元必须保持同等的重要性权重。

该辅助损失函数的第一部分计算方式为:对整批数据中各专家单元的路由分配值进行求和。

图片

由此可获得各专家单元的 重要性评分,该指标反映了不考虑输入层时专家单元被选中的概率分布。

基于此可计算 变异系数 (CV),用于量化不同专家单元间重要性评分的离散程度。

图片

举例说明,当专家单元间重要性评分差异显著时,CV值将呈现较高水平:

图片

反之,若所有专家单元重要性评分趋近一致,CV值则处于较低区间(这正是预期的优化目标):

图片

通过引入CV指标,我们可以在训练流程中动态调整 辅助损失函数,使其以最小化CV值为优化方向(从而实现各专家单元的重要性权重均衡化):

图片

最终,该辅助损失函数将作为独立的优化目标项整合到整体训练流程中。

不平衡现象不仅存在于被选中的专家集群中,也体现在分配到各专家的文本标记分布上。

例如,若输入层的文本标记被不成比例地分配给某个专家单元,则可能导致该专家训练不足:

图片

在此场景下,关键不仅在于选用哪些专家系统,更在于其被调用的强度。

该问题的解决方案是设定 专家容量 4 ,即限制单个专家单元可处理的文本标记数量。当专家达到容量上限时,溢出的文本标记将自动路由至下一顺位专家:

图片

若所有专家单元均达到容量上限,未处理的文本标记将绕过专家层直接传递至后续网络层。该机制被称为 标记溢出现象。

图片

Switch Transformer5 作为首个基于Transformer架构的MoE模型,成功解决了训练稳定性问题(如负载均衡)。该模型在提升训练稳定性的同时,显著简化了系统架构和训练流程。

Switch Transformer是基于T5模型(编码器-解码器架构)改进的模型,通过用交换层替代传统的前馈神经网络层。该交换层采用稀疏混合专家架构(Sparse MoE),基于Top-1路由选择机制为每个文本标记分配唯一专家单元。

图片

路由分配器采用直接计算方法确定专家选择:将输入数据与专家权重矩阵相乘后,通过SoftMax函数处理得到路由决策(与前期处理方法保持一致)。

图片

这种Top-1路由选择架构的设计假设是:路由分配器仅需调用单一专家单元即可完成输入数据的有效路由学习。这与我们先前讨论的top-k路由机制形成理论对比——后者认为需要通过多个专家集群的协同工作才能实现最佳路由行为学习。

容量因子作为核心参数,直接决定单个专家单元可处理的文本标记最大数量。Switch Transformer通过创新性地引入容量因子这一关键参数,实现了对专家系统处理能力的动态调控与优化扩展。

图片

专家系统容量的构成要素包含以下简明维度:

图片

当容量因子数值增大时,每个专家单元可处理的文本标记数量将获得线性提升。

图片

然而,若容量因子设置过大,会导致计算资源浪费。相反,若容量因子过小,模型性能将因 标记溢出现象 而降低。

为进一步防范标记丢失问题,研究团队采用了简化版的辅助损失函数。

相较于计算变异系数,该简化损失函数通过权衡专家单元的标记分配比例与其路由概率占比来实现优化:

图片

由于目标是在N个专家单元间实现标记的均匀路由分配,因此需要确保向量P和f的取值均为1/N。

超参数α可用于在训练过程中精确调节该损失函数的影响权重。参数值过高会压制主损失函数,过低则对负载均衡作用甚微。

混合专家技术并非语言模型专属的解决方案。基于Transformer架构的视觉模型(如ViT)天然具备集成混合专家系统的可能性。

简而言之,ViT(视觉Transformer)是一种将图像分割为图像分块进行处理的架构,其处理逻辑与文本标记高度相似。6

图片

这些图像分块(或文本标记)在输入标准编码器前,会被转换为附带位置编码的嵌入表示。

图片

当这些分块进入编码器时,其处理方式与文本标记类似,这种设计使得架构能够完美适配混合专家系统。

视觉混合专家架构(V-MoE)是图像领域首批成功应用混合专家技术的模型之一7 ,其在ViT架构基础上,将编码层的稠密前馈网络替换为稀疏混合专家系统。

图片

这使得原本规模较小的ViT模型,通过扩展专家集群实现了参数量的显著提升。

考虑到图像通常包含大量分块,为缓解硬件限制,每个专家单元都预设了较小的处理容量。但容量过低容易导致分块被丢弃(类似 标记溢出 问题)。

图片

为维持低容量配置,网络通过优先级机制——先处理高重要性评分分块,使得溢出分块通常具有较低语义重要性。这种方法被称作批量 优先级路由 机制。

图片

因此,即使文本标记的比例降低,我们仍能确保重要图像分块被正确路由。

图片

优先级路由机制通过聚焦最关键的分块,可显著减少需要处理的图像分块数量。

在V-MoE架构中,优先级评分器能有效区分图像分块的重要性差异。但每个专家单元仅处理被分配的分块,导致未处理图块的信息丢失。

Soft-MoE通过混合图块的方式,实现了从离散分配到柔性分配的转变(适用于图块和文本标记)。8

首先将输入特征 x(即图块嵌入表示)与可训练参数矩阵Φ进行矩阵相乘。由此生成 路由决策信息,该信息量化了特定文本标记与各专家单元的相关性强度。

图片

通过对路由信息矩阵按列执行SoftMax运算,我们动态更新每个图块的嵌入表示。

图片

更新后的图块嵌入表示本质上是所有图块嵌入表示的加权平均结果。

图片

从视觉角度观察,所有图块呈现出混合交融的状态。这些整合后的图块数据将被并行传输至各专家单元进行处理。输出结果生成后,需再次与路由决策矩阵进行乘积运算。

图片

路由决策机制在文本标记层级调控输入数据,并在专家系统层级调控输出结果。

由此我们得到经过处理的柔性图块/文本标记,而非原始的离散输入形式。

MoE架构的独特价值主要体现在其创新的计算资源配置策略。由于在任意时刻仅调用部分专家集群,实际可调用的模型参数规模远超即时使用需求。

虽然MoE需要加载全部参数(稀疏化参数),但推理过程仅激活部分专家单元(激活参数),显著降低实际计算开销。

图片

简而言之,尽管需要将完整模型(包含所有专家单元)加载至设备(稀疏化参数),但实际推理过程仅需调用部分参数子集(激活参数)。 混合专家模型需要更多显存来加载全部专家集群,但在推理过程中运算效率更高。

我们以Mixtral 8x7B模型为例,具体解析稀疏参数与激活参数的量化对比。9

图片

此处可见每个专家单元的参数规模为5.6B而非7B(尽管包含8个专家单元)。

图片

模型需要 加载 **8×5.6B( 46.7B )参数(含全部共享参数),但实际推理仅需激活2×5.6B( 12.8B )**参数。

至此我们完成了对专家混合模型的全面解析!相信通过本文阐述,您能更深入理解这项创新技术的应用潜力。当前几乎所有主流模型集合都包含至少一个混合专家变体,这标志着该技术已成为行业标准配置。

若想获取更多与大型语言模型相关的可视化解析,并支持本专栏持续创作,欢迎查阅笔者编著的《大型语言模型实战指南》!

希望本文能为您提供关于混合专家系统的入门指引。若您希望深入研究,以下资源值得参考:

  • 这篇 与这篇 论文详尽阐述了混合专家系统领域的最新突破。

  • 关于专家选择路由机制 的研究论文已在学术界引起广泛讨论。

  • 这篇优质博客 深入剖析了多篇关键论文及其研究成果。

  • 同类技术解析博客 则完整呈现了混合专家系统的演进历程。

 如何系统的去学习大模型LLM ?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

事实上,抢你饭碗的不是AI,而是会利用AI的人。

继科大讯飞、阿里、华为等巨头公司发布AI产品后,很多中小企业也陆续进场!超高年薪,挖掘AI大模型人才! 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗?

与其焦虑……

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。

基于此,我用做产品的心态来打磨这份大模型教程,深挖痛点并持续修改了近70次后,终于把整个AI大模型的学习门槛,降到了最低!

在这个版本当中:

第一您不需要具备任何算法和数学的基础
第二不要求准备高配置的电脑
第三不必懂Python等任何编程语言

您只需要听我讲,跟着我做即可,为了让学习的道路变得更简单,这份大模型教程已经给大家整理并打包,现在将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

​

一、LLM大模型经典书籍

AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。

在这里插入图片描述

二、640套LLM大模型报告合集

这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)
在这里插入图片描述

三、LLM大模型系列视频教程

在这里插入图片描述

四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt)

在这里插入图片描述

五、AI产品经理大模型教程

在这里插入图片描述

LLM大模型学习路线 ↓

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。

  • 内容:

    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。

  • 内容:

    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.3 流水线工程
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。

  • 内容:

    • L3.1 Agent模型框架
    • L3.2 MetaGPT
    • L3.3 ChatGLM
    • L3.4 LLAMA
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。

  • 内容:

    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

这份 LLM大模型资料 包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

​

 

什么是大模型? 大模型是指具有数千万甚至数亿参数的深度学习模型。近年来,随着计算机技术和大数据的快速发展,深度学习在各个领域取得了显著的成果,如自然语言处理,图片生成,工业数字化等。为了提高模型的性能,研究者们不断尝试增加模型的参数数量,从而诞生了大模型这一概念。大模型通常由深度神经网络构建而成,拥有数十亿甚至数千亿个参数。大模型的设计目的是为了提高模型的表达能力和预测性能,能够处理更加复杂的任务和数据。大模型采用预训练+微调的训练模式,在大规模数据上进行训练后,能快速适应一系列下游任务的模型。 阅读详情

相关推荐

【生成式AI】从原理到实践的创造性革命

本文通过技术解析、代码实战与行业案例,全面剖析生成式AI的核心原理,揭示其如何重塑内容创作范式,并给出5大领域的创新应用方案。

赶紧的博客 1356

【大规模训练】混合专家系统

混合专家系统(Mixture of Experts, MoE)是在神经网络 (Neural Network, NN) 领域发展起来的一种集成学习(Ensemble Learning) 技术。传统的深度学习模型在训练时,对于每个输入样本,整个网络都会参与计算。随着模型越来越大,训练使用的样本数据越来越多,训练的开销越来越难以承受。而 MoE 可以动态激活部分神经网络,从而实现在不增加计算量的前提下大幅度增加模型参数量。MoE 技术目前是训练万亿参数量级模型的关键技术。

2401_85782600的博客 1732

从谱峰搜索到多项式求根:Root-MUSIC算法原理与MATLAB实践

本文深入解析Root-MUSIC算法在阵列信号处理中的原理与应用,通过多项式求根替代传统MUSIC算法的谱峰搜索,显著提升计算效率和精度。文章详细介绍了算法核心思想、MATLAB实现步骤及工程优化技巧,帮助读者掌握这一高效的DOA估计方法。

weixin_30832143的博客 80

混合专家系统(MoE)基本介绍

混合专家系统(MoE)基本介绍

方小汪的博客 843

哨兵一号数据下载

哨兵1号数据的下载过程

weixin_59617499的博客 5135

【AI智能体】Coze 数据库从使用到实战操作详解

Coze 数据库使用到实战详解

congge 5914

生成式AI第一课:零基础图解Transformer与大模型实战

一本让开发者与 AI 从业者翘首以盼的 LLM 入门与实战指南——重磅上市!本书由 Jay Alammar 与 Maarten Grootendorst 联袂创作,两位在大模型与自然语言处理领域具有广泛影响力的专家,内容融合广受欢迎的图解系列精华,一经推出便获得业内高度评价。从基础概念、核心原理到应用实践,本书用超过 300 幅可视化图解,搭建出一条清晰、系统、低门槛的大模型学习路径。

LuciferLiu_DBA 1万+

新鲜出炉,ECCV2024.9.25 首次提出基于 YOLO 目标检测的无源域自适应

本文提出了首次使用YOLO系列单发探测器的SFDA方法。本文方法采用了一个带有学习的、目标领域特定的增强和一种新的通信机制的师生框架来稳定训练,减少了对模型选择中带注释的目标数据的依赖,这对现实世界的应用至关重要。SF-YOLO 优于所有基于Faster R-CNN的SFDA方法,甚至一些使用源数据的基于UDA yolo的方法。

m0_63294504的博客 2676

2025大模型新书:图解大模型:生成式 AI 原理与实战(免费分享)

一本让开发者与 AI 从业者翘首以盼的 LLM 入门与实战指南——《图解大模型:生成式 AI 原理与实战》重磅上市!

2301_81940605的博客 3053

华为OD机试双机位C卷:打印机队列 (C++/Py/C/Java/Js/Go)

华为OD机试双机位C卷 打印机队列,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解。华为OD机试 - 打印机队列。

qq_45776114的博客 1793

国科大学习资料--高级软件工程-复习题选择题答案

国科大学习资料–高级软件工程(罗铁坚 魏峻 刘丹)-复习题选择题答案 ’‘

无名何许人的博客 1165

大模型最火图解书来了!

并且,代码支持在 Google Colab 平台上直接运行,无需复杂的本地环境搭建,打开即跑,边学边练,真正做到“看得懂、学得会、跑得动”。无论你是 AI 初学者,还是希望深入掌握 Transformer 架构、掌握生成式 AI 核心能力的从业者,甚至是希望真正“搞懂大模型”的普通读者,这本书都将是不可或缺的学习宝典。,打破单一文本模态限制,融合图像、音频等多种信息,拓宽大模型应用边界,全方位提升读者对大模型应用能力的掌握。无需深厚的理论铺垫,凭借书中清晰的讲解与丰富的案例,可快速踏入大模型开发的大门。

图灵教育 1202

可疑物品遗留检测系统:基于YOLOv8的智能安防解决方案

数据采集与标注模块:负责收集和标注可疑物品图像数据模型训练模块:基于YOLOv8算法训练检测模型推理检测模块:加载训练好的模型进行实时检测用户界面模块:提供友好的操作界面和可视化结果展示报警模块:当检测到可疑物品时触发报警机制:包含多种暴力场景和可疑物品SUAVe:监控场景下的异常行为与物品数据集:包含多种可疑物品自建数据集:针对特定场景收集的数据背包(backpack)手提箱(suitcase)无人看管的包裹(package)可疑箱子(box)

YOLO 435

让开发者翘首以盼的 LLM 入门与实战指南——《图解大模型:生成式 AI 原理与实战》重磅上市!

让开发者翘首以盼的 LLM 入门与实战指南——《图解大模型:生成式 AI 原理与实战》重磅上市!

2401_82469710的博客 1047

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

《图解大模型:生成式 AI 原理与实战》重磅上市!开发者翘首以盼 LLM 实战指南

 一本让开发者与 AI 从业者翘首以盼的 LLM 入门与实战指南——《图解大模型:生成式 AI 原理与实战》重磅上市!

2301_81888214的博客 341

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

好书推荐|《图解大模型:生成式AI原理与实战》让你看图就懂大模型

本推文详细介绍了一本关于大模型学习的畅销书《图解大模型:生成式AI原理与实战》,该书用可视化的方式帮助读者掌握大模型的原理、构建和应用方法。欢迎阅读和转发。

audyxiao001的博客 262

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

混合专家系统(MoE)图解指南

在追踪最新发布的时,您会发现许多模型的标题中都醒目标注着「这个「」究竟代表何种技术?为何能成为众多LLM的架构首选?本图解指南将通过,带您深入探索这一核心组件——本文将系统解析MoE架构的两大核心模块:应用于典型LLM架构中的与。若想获取更多与大型语言模型相关的可视化解析,并支持本专栏持续创作,欢迎查阅笔者编著的《附言:若您已品读此书,在亚马逊平台 撰写简短书评将是对作者最珍贵的鼓励——您的反馈切实影响着学术创作生态。GithubMoE)是一种通过协同多个差异化子模型(即「

2401_84494441的博客 1591

混合专家系统(MoE)

混合专家系统(Mixture of Experts)原理:混合专家系统(MoE)是一种神经网络,也属于一种combine的模型。适用于数据集中的数据产生方式不同。不同于一般的神经网络的是它根据数据进行分离训练多个模型,各个模型被称为专家,而门控模块用于选择使用哪个专家,模型的实际输出为各个模型的输出与门控模型的权重组合。各个专家模型可采用不同的函数(各种线性或非线性函数)。混合专家系统就是将多个模型

Zoe_Su的博客 2万+

混合专家系统MOE

混合专家系统(Mixtures of Experts,)是一种集成学习方法,它通过结合多个“专家”模型来解决复杂的学习任务,每个专家专注于数据的不同方面或子空间。这种方法旨在提高模型的适应性和表达能力,尤其适合处理具有高度多样性和复杂性的数据集。

星辰火之梦 1633

混合专家模型 Mixture-of-Experts (MoE)

比如在MoE论文的一些实验中,作者采用了n=512,k=2的设定,也就是每次只会从512个专家网络中挑选两个来激活。每个专家模型都是相对独立的,可以根据任务的需求选择不同的模型架构。通过稀疏模型MoE扩大大语言模型的方法:以GLaM模型为例,它包含1.2T个参数,但实际上被激活的参数(activated parameters)只有97B,远少于GPT-3,也就是说,它是稀疏激活的MoE。第二个变动是加了noise,这个的目的是为了做均衡,这里引入了一个Wnoise的参数,后面还会在损失函数层面进行改动。

noobiee的博客 9847

【电子书】图解大模型:生成式AI原理与实战,大模型入门到精通,收藏这篇就足够了!

本书《图解大模型:生成式AI原理与实战》系统地介绍了语言在人工智能中的表示、理解和生成机制,尤其是大语言模型(LLM)如何通过“词元”(token)和“嵌入”(embedding)将语言转化为机器可处理的数值形式。

2401_82469710的博客 1445

封神了!教授送我的这本《图解大模型:生成式AI原理与实战》,牛爆了!几乎把大模型讲得透透的!!

《图解大模型:生成式AI原理与实战》是一本零基础入门大模型的视觉化指南,由知名技术图解作者Jay Alammar联合编写。全书通过300余幅全彩插图,将复杂的Transformer架构、词元嵌入等概念转化为直观图示,并涵盖分类、生成、多模态等实战场景。特别包含DeepSeek等热门模型的18幅深度解析图,配套Python代码和200道面试题,支持一键在线运行。适合无深度学习基础的开发者,通过"图解+代码"的方式快速掌握大模型原理与应用开发。现免费提供中英文PDF、源代码及全套学习资料。

qkh1234567的博客 688

混合专家模型MoE的全面详解

混合专家模型MoE是一种能让大型语言模型(LLM)质量变好的技术。专家——现在每个前馈神经网络(FFNN)层都有好多个“专家”,每次可以用其中一部分。“专家”一般也是前馈神经网络。门控网络——它能决定把哪些tokens送到哪些专家那儿。在带混合专家模型MoE的大型语言模型的每一层,都能看到这些有点专门作用的专家:要知道,这里的‘专家’可不是像‘心理学’‘生物学’这种特定领域的专家哦。最多就是学学词语层面的语法信息:说得更细点儿,它们擅长处理特定情境下的特定词。

qq_32907491的博客 5229
上一篇: 大模型系列炼丹术(六) - 别只会用Greedy!6种主流LLM解码策略全面解析,附适用场景
下一篇: 用一杯咖啡的时间,无需高端显卡,用魔塔社区实现大模型微调
Llama-Turbo
博客等级 码龄4年 9901粉丝 2022原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值