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

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

3天内不再提示

选择合适的工具——轻松玩转AI

Enclustra瑞苏盈科 2023-09-09 08:12 次阅读

启动人工智能应用从来没有像现在这样容易!受益于像Xilinx Zynq UltraScale+ MPSoC 这样的FPGAAI现在也可以离线使用或在边缘部署、使用。瑞苏盈科核心板模块结合Vitis AI开发工具给用户提供了便利工具,可用于开发和部署用于实时推理的机器学习应用,因此将AI集成到应用中变得轻而易举。图像检测或分类、模式或语音识别推动了制造业、医疗、汽车和金融服务等产业的升级。

快速开启基于AI的FPGA应用

ENCLUSTRA

人工智能正在占据越来越多的应用和生活场景,例如图像检测和分类,翻译和推荐系统等等。基于机器学习技术的应用数量庞大且还在不断增长。采用瑞苏盈科结合FPGA和ARM处理器的核心板模块,在离线和边缘使用AI前所未有的容易。

人工智能(AI)历史悠久,自1955年便被公认为一门学科。人工智能是计算机模仿人类智能、从经验中学习、适应新信息并执行类似人类活动的能力。人工智能的应用包括专家系统、自然语言处理(NLP)、语音识别和机器视觉

AI的复兴

ENCLUSTRA

在经历了几波乐观和失望之后,人们对人工智能产生了新的兴趣,而且越来越感兴趣。在过去15年左右的时间里,成千上万的人工智能初创公司成立了,而且速度在不断增长。这背后有几个驱动因素:可能最重要的一个是现在可以以承担得起的价格获得巨大的计算能力。不仅硬件更快,而且现在每个人都可以访问云中的超级计算机。这使得运行人工智能所需的硬件平台变得大众化,使得初创企业得以大量涌现。

6f7b7e12-4ea5-11ee-a20b-92fbcf53809c.png

图1:一种具有2个隐含层的前馈人工神经网络的简化视图

ENCLUSTRA

人工神经网络(图1)现在扩展到几十到几百个隐藏层节点(图2)。即使是有10000个隐藏层的网络也已经实现了。这种进化正在增加神经网络的抽象能力,并使新的应用成为可能。如今,神经网络可以在数万个CPUGPU核上进行训练,大大加快了开发广义学习模型的过程。

6fee2d4a-4ea5-11ee-a20b-92fbcf53809c.png

图2:ImageNet识别挑战获胜者展示了在新的神经网络架构中不断增加的隐藏层

ENCLUSTRA

人们对人工智能兴趣增加的另一个原因是近年来机器学习方面的突破性进展。这有助于吸引科技投资和初创企业的兴趣,进一步加速人工智能的发展和完善。

机器如何学习

ENCLUSTRA

人工神经网络是一种受人脑启发的计算模型。它由一个简单的处理单元相互连接的网络组成,这些网络可以通过修改它们的连接来学习经验(图1)。所谓的深度神经网络(DNN -具有许多隐藏层的神经网络)目前为许多大型计算问题提供了最佳解决方案。


目前应用最广泛的深度学习系统是卷积神经网络(Convolutional Neural Network, CNNs)。这些系统使用前馈的人工神经元网络将输入特征映射到输出,他们使用反向馈入系统进行学习(即训练),并产生一组权重来校准CNN(反向传播,图3)。

7022a156-4ea5-11ee-a20b-92fbcf53809c.png

图片图3:神经网络需要经过训练来学习如何解决问题或挑战


ENCLUSTRA

机器学习中计算强度最大的过程是训练神经网络。对于一个最先进的网络来说,它可能需要数天到数周的时间,需要数十亿的浮点计算和大量的训练数据(GByte到数百GByte),直到网络达到所需的精度。幸运的是,这个步骤在大多数情况下都不需要时间限制,并且可以转移到云上。

当网络接受训练时,它可以被输入一个新的、未标记的数据集,并根据它之前学习的数据对数据进行分类。这一步称为推断,是开发应用的实际目标。


告诉我你看到了什么

ENCLUSTRA

输入的分类可以在云中进行,也可以在边缘(大部分是离线)进行。虽然通过神经网络处理数据通常需要专用加速器(FPGA、GPU、DSPASIC),但额外的任务最好由CPU处理,CPU可以用传统的编程语言编程。这就是带有集成CPU(所谓的片上系统(SoC))的FPGA的优势所在,尤其是在边缘。SoC将推理加速器(FPGA阵列)和CPU组合在一块芯片中。CPU运行控制算法和数据流管理。同时,与基于GPU或ASIC的解决方案相比,FPGA提供了许多优势,其中包括易于集成多个接口传感器,以及适应新神经网络架构的灵活性(图4)。

706b14ea-4ea5-11ee-a20b-92fbcf53809c.png

图4:人工智能推理应用的不同技术的比较


ENCLUSTRA

FPGA固有的可重构性也使其能够利用不断演化的神经网络拓扑、更新的传感器类型和配置,以及更新的软件算法。使用SoC可以在需要时保证低而确定的延迟,例如,用于实时对象检测。同时,SoC也非常节能。从FPGA中获得最佳性能的主要挑战是在不失去精度的情况下将浮点模型有效地映射到定点FPGA实现(图5),这就是供应商工具的作用所在。


708fa09e-4ea5-11ee-a20b-92fbcf53809c.png

图5:将浮点模型有效映射到定点FPGA实现的过程称为压缩

选择合适的工具

ENCLUSTRA

现在有很多工具可以帮助我们降低实现第一个AI项目的门槛。例如,VitisAI开发工具为用户提供了在FPGA上开发和部署用于实时推理的机器学习应用程序的工具。它们支持许多常见的机器学习框架,如Caffe和TensorFlow,PyTorch支持也将很快推出。它们使最先进的神经网络能够有效适应FPGA,用于嵌入式人工智能应用(图5)。

ENCLUSTRA

结合标准的核心板模块(SoM),如瑞苏盈科的火星XU3(图6)(基于Xilinx Zynq UltraScale+ MPSoC),插入火星ST3底板,人工智能应用可以比以往更快地实现(图7)。

70e4739e-4ea5-11ee-a20b-92fbcf53809c.png图7:已被业界证实的人工智能应用解决方案,基于Xilinx Zynq UltraScale+ MPSoC

ENCLUSTRA

为了展示这种组合的性能和快速上市能力,瑞苏盈科在短短几天内开发了一个基于人工智能的图像识别系统。这些图像是用一个连接到火星ST3底板的标准USB摄像头拍摄的。如需更高的性能,可使用底板上的MIPI接口。

该神经网络以低延迟的方式对图像进行分类、在火星XU3核心板模块上运行。该系统支持流行的神经网络如ResNet-50和DenseNet,两者分别用于图像分类和实时人脸检测。

单个FPGA模块不仅可以运行神经网络推理,还可以并行处理许多其他任务,如与主机PC和其他外围设备通信。而且,同时控制各种高动态驱动器是FPGA技术发挥其优势的地方。例如,添加瑞苏盈科通用驱动控制器IP核来控制无刷直流电机步进电机将是轻而易举的事。在边缘利用AI的力量从未如此容易,所以,即刻开启您的项目吧!

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

    关注

    1603

    文章

    21326

    浏览量

    593242
  • 模块
    +关注

    关注

    7

    文章

    2485

    浏览量

    46538
  • AI
    AI
    +关注

    关注

    87

    文章

    26459

    浏览量

    264080
  • 人工智能
    +关注

    关注

    1776

    文章

    43871

    浏览量

    230627
收藏 人收藏

    评论

    相关推荐

    如何选择合适的共模电感感值

    电子发烧友网站提供《如何选择合适的共模电感感值.docx》资料免费下载
    发表于 01-22 09:14 1次下载

    如何选择合适的伺服联轴器?

    详细了解将非常有助于选择合适的联轴器。不同的伺服连轴器存在着其自身的优缺点。本文旨在向伺服联轴器的终端用户介绍不同联轴器的性能,同时指出设计中要考虑的因素以及如何针对不同的应用情况选择合适
    的头像 发表于 12-25 16:35 284次阅读
    如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的伺服联轴器?

    如何根据负载电容和温度特性选择合适的晶振?

    如何根据负载电容和温度特性选择合适的晶振? 选择合适的晶振对于电路设计至关重要,特别是对于要求高稳定性和精确频率的应用。在选择晶振时,我们需
    的头像 发表于 12-18 14:16 213次阅读

    选择合适的压敏电阻,有几个参数要重视?

    选择合适的压敏电阻,有几个参数要重视?|深圳比创达电子EMC
    的头像 发表于 11-28 11:42 282次阅读
    <b class='flag-5'>选择</b><b class='flag-5'>合适</b>的压敏电阻,有几个参数要重视?

    晶振有什么作用,如何选择合适的晶振,为什么有时候用内部晶振?

    晶振有什么作用,如何选择合适的晶振,为什么有时候用内部晶振?
    的头像 发表于 11-27 15:31 429次阅读
    晶振有什么作用,如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的晶振,为什么有时候用内部晶振?

    PCB表面处理的选择和优化,如何选择合适的工艺?

    PCB表面处理的选择和优化,如何选择合适的工艺?
    的头像 发表于 11-24 17:16 369次阅读

    为您的应用选择合适的数字电位计

    电子发烧友网站提供《为您的应用选择合适的数字电位计.pdf》资料免费下载
    发表于 11-23 10:09 0次下载
    为您的应用<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的数字电位计

    如何选择合适的三相稳压器?

    如何选择合适的三相稳压器? 选择合适的三相稳压器是非常重要的,因为这将直接影响到电力系统的稳定性和设备的正常运行。三相稳压器主要用于调整电网电压的波动,使其始终保持在设定的范围内。 下
    的头像 发表于 11-20 14:05 510次阅读

    如何根据确定的Vin选择合适压摆率的运放呢?

    如何根据确定的Vin选择合适压摆率的运放呢? 首先,我们需要了解什么是Vin以及压摆率。 1. Vin是指输入电压,也就是把信号输入到运放的引脚上的电压。它通常取决于被测量的信号或者外部电路的电压
    的头像 发表于 11-06 10:26 413次阅读

    超实用!玩转树莓派攻略!

    如果你使用树莓派来开发的话,C语言或者Python语言都是一个比较不错的选择。在开始玩转你的树莓派前,可以先看看如何快速入门; Raspberry Pi Imager 工具是一款图形化 SD 卡写入
    的头像 发表于 11-01 20:30 754次阅读
    超实用!<b class='flag-5'>玩转</b>树莓派攻略!

    微型芯片封装如何选择合适的焊粉尺寸?

    介绍微型芯片封装如何选择合适的焊粉尺寸?
    的头像 发表于 10-27 10:17 243次阅读
    微型芯片封装如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的焊粉尺寸?

    如何选择合适的锡膏

    电子发烧友网站提供《如何选择合适的锡膏.doc》资料免费下载
    发表于 09-19 09:17 0次下载

    如何选择合适的芯片?

    芯片是电子产品的核心部件,它的质量和性能直接影响着产品的功能和稳定性。因此,选择合适的芯片是工程师和采购的重要任务。
    的头像 发表于 07-04 15:32 686次阅读
    如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的芯片?

    电蜂优选如何选择合适的LVDS连接线?

    选择LVDS连接线时,需要根据实际需求选择合适的规格和参数。例如,根据设备的工作环境、电流、电压等参数选择合适的LVDS连接线。
    的头像 发表于 05-29 09:28 417次阅读
    电蜂优选如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的LVDS连接线?

    选择合适的Wolfspeed设计工具

    电力电子系统设计是一个复杂的工程问题。传统上,克服相关挑战需要主题专家进行耗时的分析。幸运的是,工程师们可选择各种现代工具,显著加快设计过程并优化结果。这些工具涵盖软件模拟工具(如 P
    的头像 发表于 05-24 10:36 791次阅读
    <b class='flag-5'>选择</b><b class='flag-5'>合适</b>的Wolfspeed设计<b class='flag-5'>工具</b>