基于FPGA加速器的资源高效硬件算术设计:利用近似和混合量化
一、引言
随着人工智能(AI)领域的不断发展,机器学习(ML)在现代应用中变得愈发重要,如自动驾驶、个性化医疗、精准农业、智能工厂和智能家居等。机器学习算法为这些应用执行多种任务,包括场景感知、目标识别与分类、语音识别、决策制定以及自然语言处理等。然而,像人工神经网络(ANNs)这样的机器学习算法计算量巨大,对能源和内存的需求极高。
通常,高性能并行架构(如图形处理单元,GPUs)和基于云的计算用于训练ML模型。但由于GPU功耗高,不适合将训练好的ML模型部署到边缘嵌入式设备上。同样,从设备到云的数据传输功耗高、网络成本高、吞吐量以及数据安全等问题,也促使人们避免基于云的推理,从而需要在边缘执行训练好的ML算法。
嵌入式机器学习是指在嵌入式系统上利用和执行机器学习模型,以执行上述与AI/ML相关的任务。嵌入式系统在几乎所有应用中的广泛部署,进一步强调了利用ML模型实现智能嵌入式系统的必要性。为了在嵌入式系统上执行ML模型,人们提出了各种技术来降低其计算复杂度、内存占用和存储需求。大多数技术利用ML模型固有的误差恢复能力,在训练好的ML模型实现中引入各种近似。
对于像深度神经网络(DNNs)这样的机器学习模型,常用的技术包括网络剪枝、训练参数量化以及使用近似算术模块,以在输出精度和实现性能之间进行权衡。例如,TensorFlow提供了TensorFlow Lite工具,用于优化嵌入式系统的ML模型,使得ML模型能够在树莓派和Arduino等单板计算机上执行。
然而,像TensorFlow Lite这样的工具主要侧重于减小ML模型的大小,并使用16位和8位整数方案以及单精度浮点数来表
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



