太阳城平台注册

首页 > 正文

如何选择嵌入式处理器以在边缘运行机器学习推理

www.videfun.com2019-07-09
菲律宾新太阳城

郎瑞志科

在嵌入式系统中,推理可以在各种片上处理单元上运行,例如中央处理单元(CPU),GPU,数字信号处理器,FPGA逻辑,专用加速器或这些选项的任意组合。机器学习推理通常报告为兆位/兆位(兆字节,千兆字节或数万亿)的操作(MOPS,GOPS或TOPS)。

fc2b1b0b15a14702ac6456cd68d635b0

选择嵌入式处理器以在边缘运行机器学习推理

目前有许多选项,可能很难选择合适的设备或设备组合进行推理。 GPU训练在神经网络模型中的成功可能会导致人们错误地认为GPU也是运行推理的最佳选择。有一种趋势是将给定设备的性能与可以执行许多TOPS的GPU进行比较。但是,TOPS可能不是您应该考虑的唯一参数。

首先,引用的TOPS数是理论上的。对于许多设备,存储器访问和数据总线基础设施不能扩展到核心或子系统处理功能;因此,在系统上实现的实际吞吐量可以远低于理论上引用的吞吐量。将理论上可实现的TOPS视为唯一的比较参数并不是一个好主意。可实现的吞吐量(低至理论计算性能的20%)是更相关的度量。某些设备在不同的网络模型中可能表现不佳,而其他设备可能具有作为分辨率,批量大小等函数的吞吐量。批处理可能适用于云环境或培训,但许多嵌入式应用程序具有不允许的延迟限制批量输入框架。比较TOPS时,

并非所有机器学习模型都需要按几个TOPS的顺序进行处理。许多应用程序可以在MOPS或GOPS的性能预算内解决。了解应用程序的性能,延迟和准确性要求是关键的第一步。

用于基于视觉的对象分类任务的流行卷积神经网络(CNN)模型,例如GoogLeNet,ResNet,ResNext和DenseNet,是为桌面或云设计的。在嵌入式处理器上使用它们可能需要大量的GOPS和TOPS,这反过来又增加了系统成本和功率要求。随着时间的推移,机器学习网络建模技术已发展成嵌入式处理器友好形式。诸如高效网络配置,修剪,稀疏性和定点量化等技术已被证明可以显着降低性能要求(数量级),对精度的影响可以忽略不计。

其他需要考虑的因素包括系统集成,设备特性和设备的长期可用性。要降低总体成本,请查找集成应用程序所需外围设备和接口的设备。例如,如果您的应用程序是基于机器视觉的智能工厂的工业应用程序,必须通过工业以太网协议或其他协议进行通信,则集成的片上系统可能是最有效的解决方案。

最后但同样重要的是,还应考虑软件开发成本。提供经过验证的软件开发套件和良好工程支持的供应商可以帮助降低风险,降低开发成本,并提供可以按时交付的更好的产品。

热门浏览
热门排行榜
热门标签
日期归档