0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

树莓派5上的Gemma 2:如何打造高效的边缘AI解决方案?

上海晶珩电子科技有限公司 2025-06-20 16:57 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

从数学基础到边缘实现,研究团队: Conecta.ai (ufrn.br)

97dbb308-4db4-11f0-986f-92fbcf53809c.png

摘要

1.引言

2.GEMMA 2:通用集成机器模型算法

2.1 模型架构

2.2 预训练

2.3 后训练

3.边缘AI实现

1. 引言

GEMMA 2(通用集成机器模型算法,第二版)是一个复杂的框架,专为可扩展和灵活的机器学习模型训练而设计,特别是在分布式和资源受限的环境中。在其前身的基础上,GEMMA 2引入了增强的功能,适用于监督和无监督学习任务,使其成为人工智能、边缘计算和数据科学等领域研究人员和从业者的强大工具。

GEMMA 2的核心在于其能够处理多样化的数据集和模型架构,同时优化计算效率。这是通过算法设计中的创新实现的,包括支持自适应聚类、多分辨率数据分析和量化技术,确保与微控制器嵌入式系统等资源受限设备的兼容性。

GEMMA 2的主要特点包括:

1.分布式学习:利用并行计算在多个节点上实现更快的训练和评估。

2.模型压缩:采用先进的量化和剪枝策略,在不牺牲准确性的情况下减小模型大小。

3.边缘部署:针对在边缘设备上部署机器学习模型进行定制优化,确保实时性能和最小能耗。

4.增强的灵活性:支持广泛的机器学习范式,包括神经网络、决策树和集成方法。

5.以用户为中心的设计:模块化架构和用户友好的API,简化了特定用例的集成和定制。

2 — Gemma 2

Gemma 2模型基于仅解码器的Transformer架构。我们在表中总结了主要参数和架构选择。

97ea10ba-4db4-11f0-986f-92fbcf53809c.png

一些架构元素与Gemma模型的第一版相似;即上下文长度为8192个标记,使用旋转位置嵌入(RoPE)和近似的GeGLU非线性。Gemma 1和Gemma 2之间有几个元素不同,包括使用更深的网络。我们在下面总结了关键差异。

980025d0-4db4-11f0-986f-92fbcf53809c.png

2.1 模型架构

2.1.1 局部滑动窗口和全局注意力

我们在每一层交替使用局部滑动窗口注意力和全局注意力。局部注意力层的滑动窗口大小设置为4096个标记,而全局注意力层的跨度设置为8192个标记。

2.1.2 Logit软限制

我们在每个注意力层和最终层对logit进行限制,使其值保持在−soft_cap和+soft_cap之间。更具体地说,我们使用以下函数对logit进行限制:

980b351a-4db4-11f0-986f-92fbcf53809c.png

我们将self-attention层的soft_cap参数设置为50.0,将最终层的soft_cap参数设置为30.0。

2.1.3 使用RMSNorm的后归一化和前归一化

为了稳定训练,我们使用RMSNorm对每个Transformer子层、注意力层和前馈层的输入和输出进行归一化。

2.1.4 分组查询注意力

这种技术帮助模型更高效地处理信息,特别是在处理大量文本时。它通过将查询分组在一起,改进了传统的多头注意力(MHA),实现了更快的处理,特别是对于大型模型。这就像将一个大任务分成更小、更易管理的部分,使模型能够更快地理解单词之间的关系,而不牺牲准确性。

Gemma2ForCausalLM( (model):Gemma2Model( (embed_tokens):Embedding(256000,4608, padding_idx=0) (layers):ModuleList( (0-45):46xGemma2DecoderLayer( (self_attn):Gemma2SdpaAttention( (q_proj):Linear(in_features=4608, out_features=4096, bias=False) (k_proj):Linear(in_features=4608, out_features=2048, bias=False) (v_proj):Linear(in_features=4608, out_features=2048, bias=False) (o_proj):Linear(in_features=4096, out_features=4608, bias=False) (rotary_emb):Gemma2RotaryEmbedding() ) (mlp):Gemma2MLP( (gate_proj):Linear(in_features=4608, out_features=36864, bias=False) (up_proj):Linear(in_features=4608, out_features=36864, bias=False) (down_proj):Linear(in_features=36864, out_features=4608, bias=False) (act_fn):PytorchGELUTanh() ) (input_layernorm):Gemma2RMSNorm() (post_attention_layernorm):Gemma2RMSNorm() (pre_feedforward_layernorm):Gemma2RMSNorm() (post_feedforward_layernorm):Gemma2RMSNorm() ) ) (norm):Gemma2RMSNorm() ) (lm_head):Linear(in_features=4608, out_features=256000, bias=False))

9819d8fe-4db4-11f0-986f-92fbcf53809c.png

2.2 预训练

简要概述我们与Gemma 1不同的预训练部分。

2.2.1 训练数据

Gemma 2 27B模型在13万亿个主要是英语数据的标记上进行训练,9B模型在8万亿个标记上进行训练,2B模型在2万亿个标记上进行训练。这些标记来自多种数据源,包括网页文档、代码和科学文章。我们的模型不是多模态的,也不是专门为最先进的多语言能力而训练的。最终的数据混合是通过类似于Gemini 1.0中的方法确定的。

分词器:使用与Gemma 1和Gemini相同的分词器:一个带有数字分割、保留空白和字节级编码的SentencePiece分词器。生成的词汇表有256k个条目。

过滤:使用与Gemma 1相同的数据过滤技术。具体来说,我们过滤预训练数据集以减少不需要或不安全的话语的风险,过滤掉某些个人信息或其他敏感数据,从预训练数据混合中净化评估集,并通过最小化敏感输出的扩散来减少重复的风险。

2.2.2 知识蒸馏

给定一个用作教师的大型模型,我们通过从教师给出的每个标记x在其上下文xc下的概率PT(x | xc)中进行蒸馏来学习较小的模型。更准确地说,我们最小化教师和学生概率之间的负对数似然:

9844e468-4db4-11f0-986f-92fbcf53809c.png

其中PS是学生的参数化概率。注意,知识蒸馏也在Gemini 1.5中使用过。

2.3 后训练

对于后训练,我们将预训练模型微调为指令调优模型。首先,我们在纯文本、仅英语的合成和人工生成的提示-响应对混合上进行监督微调(SFT)。然后,我们在这些模型上应用RLHF,奖励模型是在仅英语的标记偏好数据上训练的,策略基于与SFT阶段相同的提示。最后,我们对每个阶段后获得的模型进行平均,以提高它们的整体性能。最终的数据混合和后训练配方,包括调整的超参数,是根据在提高有用性的同时最小化与安全和幻觉相关的模型危害而选择的。

我们扩展了Gemma 1.1的后训练数据,使用了内部和外部公共数据的混合。特别是,我们使用了LMSYS-chat-1M中的提示,但没有使用答案。我们所有的数据都经过下面描述的过滤阶段。

监督微调(SFT):我们在合成和真实的提示以及主要由教师(一个更大的模型)合成的响应上运行行为克隆。我们还在学生的分布上从教师那里进行蒸馏。

基于人类反馈的强化学习(RLHF):我们使用与Gemma 1.1类似的RLHF算法,但使用了不同的奖励模型,该模型比策略大一个数量级。新的奖励模型也更侧重于对话能力,特别是多轮对话。

模型合并:我们对通过使用不同超参数运行我们的流程获得的不同模型进行平均。

数据过滤:当使用合成数据时,我们运行几个阶段的过滤,以删除显示某些个人信息、不安全或有毒模型输出、错误自我识别数据和重复示例的示例。遵循Gemini的方法,我们发现包括鼓励更好的上下文归属、谨慎和拒绝以最小化幻觉的数据子集,可以提高事实性指标的性能,而不会降低模型在其他指标上的性能。

格式化:Gemma 2模型使用与Gemma 1模型相同的控制标记进行微调,但格式化方案不同。注意,模型明确地以标记结束生成,而之前它只是生成。有关这种格式化结构背后的动机,请参阅Gemma 1。

3. 边缘AI实现

通过这个示例,你可以在树莓派5上实现机器学习算法。


3.0 收集必要的材料

树莓派5(带兼容的电源线)

MicroSD卡(最小32 GB,推荐64 GB或更高)

带SD卡读卡器或USB适配器的计算机

HDMI电缆和显示器/电视

USB键盘和鼠标(或如果支持,则使用蓝牙

互联网连接(通过Wi-Fi以太网电缆)

3.1 下载并安装操作系统

访问此处了解如何在树莓派4或5上下载和安装操作系统。

https://medium.com/p/4dffd65d33ab/edit

3.2 — 安装Ollama

curl-fsSL https://ollama.com/install.sh | sh

3.3 — 运行gemma2

ollamarun gemma2:2b --verbose

9859beb0-4db4-11f0-986f-92fbcf53809c.png

3.4 —问题结果

问题:解释Transformer ML架构

98d5816c-4db4-11f0-986f-92fbcf53809c.png

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器学习
    +关注

    关注

    66

    文章

    8500

    浏览量

    134512
  • 树莓派
    +关注

    关注

    121

    文章

    1995

    浏览量

    107369
  • 集成机器人
    +关注

    关注

    0

    文章

    3

    浏览量

    2895
  • 边缘AI
    +关注

    关注

    0

    文章

    155

    浏览量

    5437
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    树莓5,Raspberry Pi 5 评测

    85.6°C,仅比没有散热的测试低1.2°C。所以,买便宜的散热片就是浪费钱。我们建议要么买主动散热,要么等待市场上有适用的定制被动散热的解决方案。 能给树莓 5 超频吗? 可以。
    发表于 06-19 14:51

    Banana Pi 发布 BPI-AI2N & BPI-AI2N Carrier,助力 AI 计算与嵌入式开发

    助力 AI、智能制造和物联网行业的发展。未来,Banana Pi 将继续深化与Renesas的技术合作,推动更多高性能嵌入式解决方案的落地。 ” BPI-AI2N开发板赋能多场景应用,结合丰富接口与
    发表于 03-19 17:54

    《电子发烧友电子设计周报》聚焦硬科技领域核心价值 第16期:2025.06.16--2025.06.20

    ://www.elecfans.com/d/6749562.html 8、树莓5Gemma 2
    发表于 06-20 19:50

    树莓怎么打造开心农场

    ·1个小锡罐·12 v直流潜水6CF5·内部直径8毫米管子·树莓·PiFace 扩展板·其他还有一些种植必需的,比如说鹅卵石、滤布、水扩散器、肥料啊什么的所必需的电子配件:[/url]注:套件中所包
    发表于 02-22 15:14

    如何搞定树莓AI服务开发

    微软专家教你,如何搞定树莓 AI 服务开发
    发表于 05-29 06:00

    索尼投资树莓,共同开发边缘 AI 解决方案

    索尼半导体解决方案(SSS)今天发布新闻稿,宣布和树莓公司签署战略协作框架,持有后者的少数股权,共同开发边缘人工智能(Edge AI
    发表于 04-13 15:55

    树莓的学习设计方案合集

    本文档的主要内容详细介绍的是树莓的学习设计方案合集免费下载包括了:AMG8833 8x8红外热像仪传感器应用附PCB驱动源码,Arduino与树莓
    发表于 03-11 08:00 12次下载
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>的学习设计<b class='flag-5'>方案</b>合集

    高效树莓UPS

    电子发烧友网站提供《超高效树莓UPS.zip》资料免费下载
    发表于 07-12 11:15 12次下载
    超<b class='flag-5'>高效</b><b class='flag-5'>树莓</b><b class='flag-5'>派</b>UPS

    树莓-搭建边缘计算云平台

    基于树莓搭建边缘计算云平台
    的头像 发表于 12-03 00:17 2003次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>-搭建<b class='flag-5'>边缘</b>计算云平台

    贸泽现已开售运行速度远超前代产品的树莓5单板计算机

    4的基础树莓5单板计算机 (SBC) 的CPU性能提高了2-3倍,GPU性能大幅提升,显示器、摄像头和USB接口也得到了改进。
    发表于 11-06 16:14 964次阅读

    宏集嵌入式工业树莓,为企业提供更高效、精确和灵活的包装解决方案

    宏集通过树莓嵌入式工控机与CODESYS 软件平台,为客户提供更高效、精准且灵活的柔性灌装和包装系统解决方案,为食品、化妆、制药等不同行业的企业赋能
    的头像 发表于 01-23 14:50 652次阅读
    宏集嵌入式工业<b class='flag-5'>树莓</b><b class='flag-5'>派</b>,为企业提供更<b class='flag-5'>高效</b>、精确和灵活的包装<b class='flag-5'>解决方案</b>

    Hailo联手树莓,开创人工智能新纪元

    近日,人工智能处理器领导品牌Hailo正式宣布与树莓展开深度合作。Hailo将为树莓推出专用AI套件,支持
    的头像 发表于 06-06 16:08 1235次阅读

    树莓 Zero 打造的智能漫游车!

    使用PXFMini和树莓Zero打造您自己的自主漫游车。本项目所用组件硬件组件ErleRoboticsPXFmini×1树莓Zero×1
    的头像 发表于 05-13 16:39 411次阅读
    用 <b class='flag-5'>树莓</b><b class='flag-5'>派</b> Zero <b class='flag-5'>打造</b>的智能漫游车!

    树莓分类器:用树莓识别不同型号的树莓

    对准树莓4,屏幕上会显示“RaspberryPi4”;对准树莓Zero时显示“RaspberryPiZero”,依此类推。组装在树莓
    的头像 发表于 06-13 16:39 402次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>分类器:用<b class='flag-5'>树莓</b><b class='flag-5'>派</b>识别不同型号的<b class='flag-5'>树莓</b><b class='flag-5'>派</b>!

    搭载树莓CM5:Sfera Labs 工业控制器!

    的可靠性。解决方案树莓计算模块5RP2040企业规模中小企业(SME)行业工业自动化,物联网,边缘计算SferaLabs是一家意大利公司,
    的头像 发表于 07-01 17:41 154次阅读
    搭载<b class='flag-5'>树莓</b><b class='flag-5'>派</b>CM<b class='flag-5'>5</b>:Sfera Labs 工业控制器!