晶格的博客bob88体育登陆

分享:

边缘人工神经网络的实现

边缘人工神经网络的实现
发表于侯赛因Osman的07/05/2017

张贴在

想象一下,私人安全系统可以区分入侵者和邻居的狗,智能电视可以扫描房间并在没有人在场时自动关闭,摄像头可以进行法医分析并在犯罪发生前识别可疑行为。在边缘处bobappios下载地址部署人工神经网络的应用是无穷无尽的。想出想法很容易,但实现就没那么简单了。设计师如何将人工智能(AI)、神经网络和机器学习的优势带给资源受限、功率优化的网络边缘设备?

部分答案在于利用数据中心的传统教学技术在云中进行训练,然后将权重和参数下载到网络边缘的设备上进行“推理”。神经网络通过“推理”逐步学习完成任务,考虑到“训练”中提供的例子。在网络边缘级别使用推理可以减少决策延迟,减少网络拥塞,提高个人安全和隐私,因为捕获的数据不会持续发送到云。

另一种可能的解决方案是使用带有二值化神经网络(BNN)的设备上人工智能。bnn通过在运行时使用1位值而不是更大的数来消除乘法和除法的使用。这允许只使用加法来计算卷积。由于乘法器是数字系统中最需要空间和电力的组件,用加法替换它们可以显著节省电力和成本。

但是,如果在网络边缘的基于AI的解决方案的开发人员想要避免云中使用计算资源,则需要找到新的方式来成为更多的功率和资源高效。沿着这方面的一步是一种新的神经网络的出现,称为小型合成神经网络或锡诺。它们具有使用二进制权重和8位激活来计算任何神经网络的能力。

最近,开发人员在VectorBlox计算与莱迪思bob投注软件半导体合作开发了一种微型、轻量级的二值化神经网络覆盖层。我们一起构建了一个使用5,280个lut中的5,036个的演示系统晶格iCE40 UltraPlus5K FPGA。它还使用4个设备的8个DSP块,以及其块RAM的全部120 kbits以及所有128 kbits的单端口RAM。我们在硬件中实施了一款二值化的神经网络运营商,用作ORCA软RISC-V处理器中的ALU。此外,处理器使用自定义矢量指令进行了增强,以加速像MaxPool和激活功能的其他计算密集型步骤。为了快速原型和测试这种设计,团队依赖于此iCE40 UltraPlus移动开发平台

该系统提供了良好的结果,以低于0.4%的错误率运行,每帧1秒。虽然高性能的Intel i7四核处理器的运算速度可以达到1.5毫秒ICE40 UltraPlus.系统要简单得多,只消耗4.5兆瓦。

与此同时,关于开发推理系统的最佳地点——在云中、在网络中,还是在设备的边缘?VectorBlox/Lattice项目为设备上的AI提供了强有力的论据。在这种情况下,将AI构建到具有RISC-V处理器的FPGA中不仅可以降低功耗,还可以加快响应时间。此外,将处理保持在本地可以提高安全性和隐私性。更多关于iCE40 UltraPlus机器学习演示的详细信息,请访问我们的网站

分享:

像大多数网站一样,我们使用cookie和类似的技术来增强您的用户体验。我们也允许第三方在我们的网站上放置cookie。如继续使用本网站,即表示您同意使用我们所述的cookies饼干的政策