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

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

3天内不再提示

用于边缘设备机器学习的安全闪存

星星科技指导员 ? 来源:嵌入式计算设计 ? 作者:Zhi Feng ? 2022-07-08 16:12 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

最初,具有所有“无限”功能的云计算似乎消除了边缘设备拥有任何实质性智能的需求。然而,过去几年出现了在边缘设备中实施人工智能AI) 和机器学习 (ML) 的趋势,以解决数据传输延迟、隐私和更大的设备自主性等问题。这为在边缘设备中构建嵌入式系统带来了一定的内存需求。本文探讨了适用于边缘设备的某些 ML 方案以及使它们成为可能的非易失性存储器要求。

为什么要在边缘设备上使用机器学习 (ML)

边缘设备是生成 ML 数据的地方。物联网、工业和消费领域的应用程序从他们自己的传感器生成大量数据,并且需要能够根据来自人机界面 (HMI) 的命令做出快速决策。传感器融合技术使在边缘设备上获取数据更容易、更快、更准确。HMI 使人机交互更加用户友好和自适应。自然,在 ML 计算引擎中处理更接近其来源的数据是有意义的。边缘计算永远不会取代云计算;但是,不必将数据传输到云端,可以更快地训练机器,并且可以大大减少与云服务器的连接带宽。

广泛的物联网应用程序可以从本地 AI 处理中受益。图 1 显示了 SensiML 的图表,其中列出了边缘设备上的 AI 处理示例。

当然,在边缘设备上实施 ML 肯定会遇到挑战。例如,边缘设备可能依赖电池,因此能量预算有限。它们也可能具有有限的计算能力和/或存储空间。然而,现代 MCU 技术正在边缘设备上实现这一点。如图 2 所示,根据 Barth Development 所做的研究,在过去的几十年中,我们可以看到,虽然 MCU 功耗保持相对平稳,但晶体管数量、时钟速度、并行内核数量都呈上升趋势。随着更多高性能、低功耗 MCU 的出现,边缘计算可以帮助构建智能且用户友好的系统。

pYYBAGLH5w6AavKHAAKui8gTuR8998.png

图 2:过去几年的 MCU 研究(来源:Barth Development)

机器学习的不同方案

一般来说,机器学习可以分为两大类:监督学习和无监督学习。监督学习是指使用“标记”的数据训练机器,这意味着每个数据样本都包含特征和答案。通过向机器提供这些标记数据,我们正在训练它以找到特征和答案之间的相关性。训练后,当我们为机器提供一组新的特征时,希望它会给出我们期望的正确答案。例如,可以训练设备在由其视频源(即相机)捕获的图像中查找文本和数字。为了以非常简化的方式描述该过程,设备通过给出可能包含或不包含文本和数字的图像以及正确答案(即“标签”)来进行训练。训练结束后,

另一方面,无监督学习是指向机器输入未“标记”的数据的方法,这意味着每组特征都没有答案。无监督学习的目标是从所有这些数据中找到隐藏的信息,无论是对数据集进行聚类,还是找到它们之间的关联。无监督学习的一个例子可能是在生产线末端执行质量控制,从所有其他产品中发现异常产品(即异常检测)。该设备没有给出“标记”的答案来指示哪些产品是异常的。通过分析每种产品的特征,该算法会自动从大多数好产品中识别出坏产品,因为设备经过训练可以看到它们之间的差异。

在本文中,我们将尝试更深入地研究可以部署在边缘设备中的监督学习算法。我们将使用一些简单的数学公式来解释两种学习算法之间的差异。

如上所述,监督学习将标记的数据集馈送到正在训练的设备中。假设每个数据集包含许多特征 x 1 , x 2 。.. x n。接下来,为每个特征分配一个系数 q,并写下函数。这称为假设函数 h q (x):

h q (x) = q 0 + q 1 x 1 + q 2 x 2 + q 3 x 3 … + q n x n

训练机器意味着找到一组适当的 q (q 0 , q 1 , q 2 , …, q n ),以使假设输出 h q (x) 尽可能接近给定的答案(标签)。训练后,当出现一组新的特征 X (x 1 , x 2 , …, x n ) 时,假设函数将给出基于最优 q 集的输出。

找到 q 的一种方法是使用带有梯度下降的线性回归。以下步骤是对该方法的简化描述:

1.选择一个初始集合… n。然后计算假设与给定答案 Y 之间的差异。这种差异通常称为成本。

2.不断向成本更小的方向转变。每次重新计算成本。重复此步骤,直到成本不再降低。

3.如果成本不再降低,我们已经达到了一个最优集合,它为我们提供了所有给定样本的最低成本。

4.如果给定一组新的X,现在这组可以用来预测输出。

梯度下降这个名字来源于步骤 2 中改变 q 的方法。通过在梯度方向上更新 q,算法保证它会收敛到一个最优值。图 3 显示了梯度下降以达到最小成本函数 J(q 0 , q 1 ) 的图形表示。

poYBAGLH5xaAF-odAAMtyKBCqmo190.png

图 3:梯度下降中的成本函数 J 与参数集 q

如果步骤 2 中的成本计算是在所有给定的数据样本上完成的,则该方法称为批量梯度下降。在每次更新 q 时,算法都会计算所有训练数据样本的成本。这种计算方式为如何改变 q 提供了更好的指导。但是,如果给定的训练数据样本集很大,计算所有样本的成本需要大量的计算能力。此外,系统必须在训练期间存储所有数据样本。

梯度下降的另一种方法是在数据样本的子集上执行步骤 2。这种方法称为随机梯度下降。该算法在每次迭代时根据较小的数据样本集更改 q。这种方法可能需要更多的迭代才能达到最佳 q,但它节省了大量的计算能力和潜在的时间,因为它不需要计算整个数据样本集的成本。

使用随机梯度下降法,用于计算成本的最小样本数为 1。如果 ML 算法将 q 细化为可用的新数据样本,我们可以将此 ML 算法视为基于连续数据样本的持续行为更新。随着每个可用的数据样本进来,算法计算新的 q。因此,系统在每一步都动态更新假设函数。这种方法也称为在线梯度下降或在线机器学习。

批量梯度下降与在线机器学习

在批量梯度下降和在线机器学习之间,后者具有一定的特点,适合在边缘设备上使用。

1.无限数据样本

如前所述,边缘设备通常配备传感器或 HMI,可以连续提供无穷无尽的数据样本或人工反馈。因此,在线 ML 算法可以不断地从数据变化中学习并改进假设。

2.计算能力

边缘设备通常具有有限的计算能力。对大量数据样本运行批量梯度下降算法可能不切实际。但是,通过一次计算一个数据样本,就像在 Online ML 中一样,MCU 不必具有巨大的计算能力。

3.非易失性(NV)内存

批量梯度下降算法要求系统存储整个训练集,该训练集必须驻留在非易失性存储中,而在线 ML 算法一次计算一个传入数据样本。在线 ML 算法可能会丢弃数据或仅存储少量样本以节省非易失性存储。这特别适用于非易失性存储器可能受限的边缘设备。

4.适应性

想象一下在边缘设备上执行语音识别的在线 ML 算法。通过通过新的数据样本不断地训练算法,系统可以动态地适应特定的用户和/或口音。

边缘设备上机器学习的非易失性内存要求

除了 MCU,非易失性存储器是设计进行 ML 处理的边缘设备的另一个重要因素。如果 MCU 为应用软件提供足够的 e-flash,嵌入式闪存是一个明显的选择。然而,随着 MCU 技术节点不断缩小,e-flash 变得更加难以集成。简而言之,应用软件的容量超过了可用的 e-flash。在这种情况下,需要外部独立 NV 闪存。考虑到各种 NV 闪存设备提供的可靠性、读取吞吐量和就地执行功能,NOR 闪存通常是边缘系统设计人员的首选。

要为 ML 构建安全可靠的边缘设备,有许多设计考虑因素。以下是其中的一些,可帮助设计人员决定使用哪种 NV 存储器(参见图 4)。

1.安全启动

所有嵌入式系统都必须安全启动。对于边缘设备,安全启动尤其重要,因为它靠近人类访问,因此存在潜在安全攻击的风险。通常,对于使用 Store-N-Download (SnD) 代码模型的设备,引导代码存储在非易失性存储器中并下载到 RAM 以执行。如果非易失性存储器不安全,黑客很容易更换或修改引导代码进行恶意操作。因此,将引导代码存储在安全的非易失性存储器中并在引导期间建立信任根是边缘设备非常重要的考虑因素。

2.抵抗攻击

考虑到它们的连通性,边缘设备的攻击面无疑是巨大的。即使是安全启动,黑客也可能试图通过各种攻击方法从设备中窃取智能机密或隐私信息,例如被动监控、主动重放攻击、侧信道攻击等。使用能够抵抗这些攻击的非易失性存储器可以大大降低了系统暴露的风险。

3.重要AI参数安全存储

ML 算法需要内存存储参数,例如上面提到的参数集。这些参数是使用大量数据样本集运行训练的结果。人工智能算法本身可能对黑客不感兴趣,但最终结果往往是。如果黑客可以从存储中窃取最终结果,他们可以在不经过任何培训的情况下模仿人工智能系统。这些参数,例如参数的集合,直接影响机器学习方案和系统的智能。因此,它们应该存储在一个安全的存储空间中,黑客不会无意或有意地更改它们。提供这种安全存储能力的非易失性存储器将非常适合需要存储敏感信息的边缘设备。

4.吞吐量快

尽管边缘设备可能不需要强大的 MCU 来运行广泛的 ML 算法,但它们可能仍需要快速访问非易失性存储器以实现快速安全启动和良好的计算性能。

pYYBAGLH5x2AU3SbAAK7g74B2Ss569.png

图 4:使用机器学习的边缘设备需要支持安全启动、抵御恶意攻击、安全存储和快速吞吐量的非易失性内存,如此处所示的 Cypress Semper Secure NOR 闪存。

在边缘设备中实现智能化,使用户数据的处理更接近其源头,是一种工业趋势。许多人工智能应用程序可以部署在构建智能和用户友好系统的边缘设备上。机器学习算法之一,在线机器学习,不需要大量的计算能力,对变化的适应性很强,适用于边缘设备。要在边缘设备上构建智能且安全的系统,用户可以选择具有信任根能力、安全存储、快速吞吐量和抵抗恶意攻击的非易失性存储器。

审核编辑:郭婷

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

    关注

    39

    文章

    7664

    浏览量

    168471
  • 机器学习
    +关注

    关注

    66

    文章

    8516

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    超小型Neuton机器学习模型, 在任何系统级芯片(SoC)上解锁边缘人工智能应用.

    Neuton 是一家边缘AI 公司,致力于让机器 学习模型更易于使用。它创建的模型比竞争对手的框架小10 倍,速度也快10 倍,甚至可以在最先进的边缘
    发表于 07-31 11:38

    贸泽电子2025边缘AI与机器学习技术创新论坛回顾(上)

    2025年,随着人工智能技术的快速发展,边缘AI与机器学习市场迎来飞速增长,据Gartner预计,2025年至2030年,边缘AI市场将保持23%的复合年增长率。
    的头像 发表于 07-21 11:08 ?658次阅读
    贸泽电子2025<b class='flag-5'>边缘</b>AI与<b class='flag-5'>机器</b><b class='flag-5'>学习</b>技术创新论坛回顾(上)

    打通边缘智能之路:面向嵌入式设备的开源AutoML正式发布----加速边缘AI创新

    、模型选择、超参数调整并针对特定硬件进行优化,学习曲线极为陡峭。因而,开发者肯定希望能够在微控制器等边缘器件和其他受限平台上,轻松地构建和部署性能稳健、资源密集型的机器学习模型,而无需
    的头像 发表于 07-17 16:08 ?198次阅读
    打通<b class='flag-5'>边缘</b>智能之路:面向嵌入式<b class='flag-5'>设备</b>的开源AutoML正式发布----加速<b class='flag-5'>边缘</b>AI创新

    边缘计算中的机器学习:基于 Linux 系统的实时推理模型部署与工业集成!

    你好,旅行者!欢迎来到Medium的这一角落。在本文中,我们将把一个机器学习模型(神经网络)部署到边缘设备上,利用从ModbusTCP寄存器获取的实时数据来预测一台复古音频放大器的当前
    的头像 发表于 06-11 17:22 ?433次阅读
    <b class='flag-5'>边缘</b>计算中的<b class='flag-5'>机器</b><b class='flag-5'>学习</b>:基于 Linux 系统的实时推理模型部署与工业集成!

    智聚边缘 创见未来 贸泽电子2025技术创新论坛探讨“边缘AI与机器学习”新纪元

    创新论坛首场活动。本期论坛将深度聚焦“边缘AI与机器学习”,云集Analog Devices, Amphenol, NXP, Silicon Labs, VICOR等业界知名厂商及产学研专家阵容,共同解构
    的头像 发表于 05-22 10:38 ?418次阅读

    华邦电子安全闪存关键知识点

    博士开启宠粉模式,打包放送关于安全闪存的十大硬核问答,文末更有新鲜出炉的干货《满足欧盟“无线电设备指令”(RED)信息安全标准》白皮书供您下载!
    的头像 发表于 02-12 18:15 ?842次阅读

    嵌入式机器学习的应用特性与软件开发环境

    设备和智能传感器)上,这些设备通常具有有限的计算能力、存储空间和功耗。本文将您介绍嵌入式机器学习的应用特性,以及常见的机器
    的头像 发表于 01-25 17:05 ?778次阅读
    嵌入式<b class='flag-5'>机器</b><b class='flag-5'>学习</b>的应用特性与软件开发环境

    AI模型部署边缘设备的奇妙之旅:边缘设备的局域网视频流传输方案

    1、简介随着物联网(IoT)和智能设备的快速发展,边缘计算技术已成为高效数据处理和服务交付的重要组成部分。当我们考虑利用边缘设备进行实时监控时,一个常见的需求是通过摄像头捕捉视频,并
    的头像 发表于 01-04 12:00 ?848次阅读
    AI模型部署<b class='flag-5'>边缘</b><b class='flag-5'>设备</b>的奇妙之旅:<b class='flag-5'>边缘</b>端<b class='flag-5'>设备</b>的局域网视频流传输方案

    传统机器学习方法和应用指导

    在上一篇文章中,我们介绍了机器学习的关键概念术语。在本文中,我们会介绍传统机器学习的基础知识和多种算法特征,供各位老师选择。 01 传统机器
    的头像 发表于 12-30 09:16 ?1332次阅读
    传统<b class='flag-5'>机器</b><b class='flag-5'>学习</b>方法和应用指导

    边缘设备上设计和部署深度神经网络的实用框架

    ???? 机器学习和深度学习应用程序正越来越多地从云端转移到靠近数据源头的嵌入式设备。随着边缘计算市场的快速扩张,多种因素正在推动
    的头像 发表于 12-20 11:28 ?1005次阅读

    如何在低功耗MCU上实现人工智能和机器学习

    人工智能 (AI) 和机器学习 (ML) 的技术不仅正在快速发展,还逐渐被创新性地应用于低功耗的微控制器 (MCU) 中,从而实现边缘AI/ML的解决方案。
    的头像 发表于 12-17 16:06 ?992次阅读

    AI模型部署边缘设备的奇妙之旅:如何在边缘端部署OpenCV

    、车辆和其他重要元素。 2 基础知识 OpenCV 是一个开源的计算机视觉和机器学习软件库,广泛用于图像处理、视频捕捉、物体检测等领域。一些常用操作及其目的: 读取图片 使用 cv2.imread
    发表于 12-14 09:31

    使用机器学习和NVIDIA Jetson边缘AI和机器人平台打造机器人导盲犬

    Selin Alara Ornek 是一名富有远见的高中生。她使用机器学习和 NVIDIA Jetson 边缘 AI 和机器人平台,为视障人士打造了
    的头像 发表于 11-08 10:05 ?874次阅读

    边缘计算与边缘设备的关系

    边缘计算与边缘设备之间存在着密切的关系,它们是相互依存、相互促进的。以下是对这两者关系的介绍: 一、定义与功能 边缘计算 边缘计算是一种分布
    的头像 发表于 10-24 14:33 ?1056次阅读

    用于控制边缘设备的工业以太网到IO-link网关

    电子发烧友网站提供《用于控制边缘设备的工业以太网到IO-link网关.pdf》资料免费下载
    发表于 09-03 11:26 ?0次下载
    <b class='flag-5'>用于</b>控制<b class='flag-5'>边缘</b><b class='flag-5'>设备</b>的工业以太网到IO-link网关