搜索
首页科技周边人工智能MoE大模型制作指南:零基础手打法,大神级教程揭秘

传说中GPT-4的“致胜法宝”——MoE(混合专家)架构,自己也能手搓了!

Hugging Face上有一位机器学习大神,分享了如何从头开始建立一套完整的MoE系统。

MoE大模型制作指南:零基础手打法,大神级教程揭秘

这个项目被作者叫做MakeMoE,详细讲述了从注意力构建到形成完整MoE模型的过程。

作者介绍,MakeMoE是受到OpenAI创始成员Andrej Karpathy的makemore启发并以之为基础编写的。

makemore是一个针对自然语言处理和机器学习的教学项目,意在帮助学习者理解并实现一些基本模型。

同样,MakeMoE也是在一步步的搭建过程中,帮助学习者更深刻地理解混合专家模型。

那么,这份“手搓攻略”具体都讲了些什么呢?

从头开始搭建MoE模型

和Karpathy的makemore相比,MakeMoE用稀疏的专家混合体代替了孤立的前馈神经网络,同时加入了必要的门控逻辑。

同时,由于过程中需要用到ReLU激活函数,makemore中的默认初始化方式被替换成了Kaiming He方法。

MoE大模型制作指南:零基础手打法,大神级教程揭秘

想要创建一个MoE模型,首先要理解自注意力机制。

模型首先通过线性变换,将输入序列变换成用查询(Q)、键(K)和值(V)表示的参数。

这些参数随后被用于计算注意力分数,这些分数决定了在生成每个token时,模型对序列中每个位置的关注程度。

为了确保模型在生成文本时的自回归特性,即只能基于已经生成的token来预测下一个token,作者使用了多头因果自注意力机制。

这种机制通过一个掩码来实现将未处理的位置的注意力分数设置为负无穷大,这样这些位置的权重就会变为零。

多头因果则是让模型并行地执行多个这样的注意力计算,每个头关注序列的不同部分。

MoE大模型制作指南:零基础手打法,大神级教程揭秘

完成自注意力机制的配置后,就可以创建专家模块了,这里的“专家模块”是一种多层感知器。

每个专家模块包含一个线性层,它将嵌入向量映射到一个更大的维度,然后通过非线性激活函数(如ReLU),再通过另一个线性层将向量映射回原始的嵌入维度。

这样的设计使得每个专家能够专注于处理输入序列的不同部分,并通过门控网络来决定在生成每个token时应该激活哪些专家。

MoE大模型制作指南:零基础手打法,大神级教程揭秘

于是,接下来就要开始构建分配和管理专家的组件——门控网络。

这里的门控网络同样是通过一个线性层实现,该层将自注意力层的输出映射到专家模块的数量。

这个线性层的输出是一个分数向量,每个分数代表了对应专家模块对于当前处理的token的重要性。

门控网络会计算这个分数向量的top-k值并记录其索引,然后从中选择top-k个最大的分数,用来加权对应的专家模块输出。

MoE大模型制作指南:零基础手打法,大神级教程揭秘

为了在训练过程中增加模型的探索性,作者还引入了噪声,避免所有token都倾向于被相同的专家处理。

这种噪声通常通过在分数向量上添加随机的高斯噪声实现。

MoE大模型制作指南:零基础手打法,大神级教程揭秘

获得结果后,模型有选择地将前k个值与相应token的前k个专家的输出相乘,然后相加形成加权和,构成模型的输出。

最后,将这些模块在一起,就得到一个MoE模型了。

针对以上的整个过程,作者都提供了相应的代码,可以到原文中具体了解。

另外,作者还制作了端到端的Jupyter笔记,可以在学习各模块的同时直接运行。

感兴趣的话,就赶快学起来吧!

原文地址:https://huggingface.co/blog/AviSoori1x/makemoe-from-scratch
笔记版本(GitHub):https://github.com/AviSoori1x/makeMoE/tree/main

以上是MoE大模型制作指南:零基础手打法,大神级教程揭秘的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:51CTO.COM。如有侵权,请联系admin@php.cn删除
及时工程中的思想图是什么及时工程中的思想图是什么Apr 13, 2025 am 11:53 AM

介绍 在迅速的工程中,“思想图”是指使用图理论来构建和指导AI的推理过程的新方法。与通常涉及线性S的传统方法不同

优化您的组织与Genai代理商的电子邮件营销优化您的组织与Genai代理商的电子邮件营销Apr 13, 2025 am 11:44 AM

介绍 恭喜!您经营一家成功的业务。通过您的网页,社交媒体活动,网络研讨会,会议,免费资源和其他来源,您每天收集5000个电子邮件ID。下一个明显的步骤是

Apache Pinot实时应用程序性能监视Apache Pinot实时应用程序性能监视Apr 13, 2025 am 11:40 AM

介绍 在当今快节奏的软件开发环境中,确保最佳应用程序性能至关重要。监视实时指标,例如响应时间,错误率和资源利用率可以帮助MAIN

Chatgpt击中了10亿用户? Openai首席执行官说:'短短几周内翻了一番Chatgpt击中了10亿用户? Openai首席执行官说:'短短几周内翻了一番Apr 13, 2025 am 11:23 AM

“您有几个用户?”他扮演。 阿尔特曼回答说:“我认为我们上次说的是每周5亿个活跃者,而且它正在迅速增长。” “你告诉我,就像在短短几周内翻了一番,”安德森继续说道。 “我说那个私人

pixtral -12b:Mistral AI'第一个多模型模型 - 分析Vidhyapixtral -12b:Mistral AI'第一个多模型模型 - 分析VidhyaApr 13, 2025 am 11:20 AM

介绍 Mistral发布了其第一个多模式模型,即Pixtral-12b-2409。该模型建立在Mistral的120亿参数Nemo 12B之上。是什么设置了该模型?现在可以拍摄图像和Tex

生成AI应用的代理框架 - 分析Vidhya生成AI应用的代理框架 - 分析VidhyaApr 13, 2025 am 11:13 AM

想象一下,拥有一个由AI驱动的助手,不仅可以响应您的查询,还可以自主收集信息,执行任务甚至处理多种类型的数据(TEXT,图像和代码)。听起来有未来派?在这个a

生成AI在金融部门的应用生成AI在金融部门的应用Apr 13, 2025 am 11:12 AM

介绍 金融业是任何国家发展的基石,因为它通过促进有效的交易和信贷可用性来推动经济增长。交易的便利和信贷

在线学习和被动攻击算法指南在线学习和被动攻击算法指南Apr 13, 2025 am 11:09 AM

介绍 数据是从社交媒体,金融交易和电子商务平台等来源的前所未有的速度生成的。处理这种连续的信息流是一个挑战,但它提供了

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。