基于FPGA轻松玩转AI

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

--

快速开启基于AIFPGA应用

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

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

AI的复兴

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

undefined

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

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

undefined

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

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

机器如何学习

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

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

undefined

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

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

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

告诉我你看到了什么

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

undefined

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

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

undefined

-

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

选择合适的工具

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

undefined

6核心板模块

结合标准的核心板模块(SoM),人工智能应用可以比以往更快地实现(图7)。

undefined

7:已被业界证实的人工智能应用解决方案,基于Xilinx Zynq UltraScale+ MPSoC

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/569128.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Android Studio查看viewtree

前言:之前开发过程一直看的是手机上开发者选项中的显示布局边界,开关状态需要手动来回切换,今天偶然在Android Studio中弄出了布局树觉得挺方便的。

国产FTP文件传输服务器需要具备哪些关键特性?

国产FTP文件传输服务器是指根据中国国内信息技术创新(信创)的要求和标准,自主研发的文件传输服务器软件。这类软件旨在替代传统的FTP服务器,以更好地适应国产化和信息安全的需要。国产FTP文件传输服务器通常需要具备以下要求&…

【嵌入式Linux】STM32P1开发环境搭建

要进行嵌入式Linux开发,需要在Windows、Linux和嵌入式Linux3个系统之间来回跑,需要使用多个软件工具。经过了4小时的安装(包括下载时间),我怕以后会忘记,本着互利互助的原则,我打算把这些步骤详…

分类预测 | Matlab实现RIME-BP霜冰优化BP神经网络多特征分类预测

分类预测 | Matlab实现RIME-BP霜冰优化BP神经网络多特征分类预测 目录 分类预测 | Matlab实现RIME-BP霜冰优化BP神经网络多特征分类预测分类效果基本介绍程序设计参考资料 分类效果 基本介绍 1.RIME-BP霜冰优化BP神经网络多特征分类预测(Matlab实现完整源码和数据&a…

WEB攻防-ASP中间件IIS 短文件名探针安全漏洞

IIS短文件名探针安全漏洞是一个与IIS(Internet Information Services)服务相关的安全问题。该漏洞主要是由于HTTP请求中使用了旧DOS 8.3名称约定(SFN)的代字符(〜)波浪号,这使得远程攻击者有可能…

用C语言做一个小游戏:贪吃蛇(初阶)

1.整体思路规划 首先设计贪吃蛇就要先设计出一个游戏初始的界面以及要让玩家知道相应的游戏规则,其次要设计出一个地图来限制贪吃蛇的运动范围,那么就要初始化一条蛇,以及一个食物和其他功能,比如加速减速、暂停、食物的分数以及总…

PYTHON用[邻接列表]及[邻接矩阵]来存储无向图

# 图可以根据边的性质进行分类:# 有向图(Directed Graph):在有向图中,边是有方向性的,从一个节点指向另一个节点。这意味着从节点 A 到节点 B 的边与从节点 B 到节点 A 的边可以是不同的,或者根…

58岁第一代「晶女郎」激罕现身

90年代性感女神关秀媚在2006年拍完内地剧集《暴雨梨花》后更全面息影,而且更甚少现身于人前。日前曾志伟庆祝71岁生日,举行盛大慈善素宴广邀圈中好友,为寺庙重建工程筹募经费。女神关秀媚便罕有接受访问透露近况。 当天关秀媚将头发盘起&…

【大数据】LSM树,专为海量数据读写而生的数据结构

目录 1.什么是LSM树? 2.LSM树的落地实现 1.什么是LSM树? LSM树(Log-Structured Merge Tree)是一种专门针对大量写操作做了优化的数据存储结构,尤其适用于现代大规模数据处理系统,如NoSQL数据库&#xff…

【Java--数据结构】“从扑克到程序:深入探讨洗牌算法的原理与魅力“

前言 以下是学习Java顺序表的一个实例应用———简单的洗牌算法。 欢迎关注个人主页:逸狼 创造不易,可以点点赞吗~ 如有错误,欢迎指出~ 目录 前言 定义每张扑克牌的属性 生成一副扑克牌(不包含大小王) 洗牌方法 发牌方…

AI视频下载:零基础2小时学会开发 Chrome扩展程序

无论您是有抱负的Web开发人员、AI爱好者还是生产力黑客,本课程都提供了宝贵的见解和实践经验,帮助您利用AI和Chrome扩展的力量来简化Web自动化,改善各个行业和领域的用户体验,解锁AI驱动生产力的潜力! 此课程面向以下…

如何计算加速开发的实际价值

投资回报率(ROI)已成为在企业中引进工具、方法或者策略时必须考虑的关键指标。 尽管如此,在某些情况下,ROI 很容易衡量,而在其他情况下,则往往只衡量结果——金钱。这种评估角度是有效且必要的&#xff0c…

K-means聚类算法:如何在杂乱无章的数据中找出规律?

什么是K-means聚类算法? 在编程的世界里,K-means聚类算法就像一位无私的指路人,它不需要我们给出明确的指示,只需要我们提供数据,它就能帮助我们找到数据的归属,找到数据的“家”。 K-means聚类算法的名字…

石化盈科PMO总经理任志婷受邀为第十三届中国PMO大会演讲嘉宾

全国PMO专业人士年度盛会 石化盈科信息技术有限责任公司运营管理部总经理兼PMO总经理任志婷女士受邀为PMO评论主办的2024第十三届中国PMO大会演讲嘉宾,演讲议题为“组织级项目管理的初心和使命——打造卓越的IT企业PMO”。大会将于5月25-26日在北京举办,…

碳课堂|什么是碳市场?如何进行碳交易?

近年来,随着全球变暖问题日益受到重视,碳达峰、碳中和成为国际社会共识,为更好地减缓和适应气候变化,同时降低碳关税风险,以“二氧化碳的排放权利”为商品的碳交易和碳市场应时而生。 一、什么是碳交易、碳市场 各国…

BootStrap框架学习

1、BootStrap是一套现成的css样式集合 中文文档:www.bootcss.com 响应式布局:pc端,手机端都可适配 特点:集成了html,css,javascript工具集,12列格网,基于jquery, 下载:http://v3…

【大语言模型LLM】- Meta开源推出的新一代大语言模型 Llama 3

🔥博客主页:西瓜WiFi 🎥系列专栏:《大语言模型》 很多非常有趣的模型,值得收藏,满足大家的收集癖! 如果觉得有用,请三连👍⭐❤️,谢谢! 长期不…

在 Slurm 上运行 Jupyter

1. 背景介绍 现在的大模型训练越来越深入每个组了,大规模集群系统也应用的愈发广泛。一般的slurm系统提交作业分为2种,一种是srun,这种所见即所得的申请方式一般适用于短期的调试使用,大概一般允许的时间从几个小时到1天左右&…

使用 FFMPEG 实现录屏和录音

FFmpeg 是一个非常强大的开源工具,它可以用来处理音频和视频。 要使用 FFmpeg 进行录屏和录音,需要首先确保你的系统已经安装了 FFmpeg。在大多数 Linux 发行版中,可以通过包管理器(如 apt 或 yum)来安装。在 Windows …

Linux复习提纲2

Linux复习提纲 Linux概述 shell:交互式命令解释程序;用户和内核间交互的桥梁Shell不仅是交互式命令解释程序,还是一种程序设计语言shell是一种命令解释程序,批处理shell是linux的外壳,默认是bash2.1 Linux基础概念 log…