《Small Reals Representations for Deep Learning at the Edge: A Comparison》(一)

基于论文《Small Reals Representations for Deep Learning at the Edge: A Comparison》:


1. 论文的主要内容和研究方向

这篇论文主要聚焦于深度神经网络(DNN)在边缘计算设备上的低精度数值表示问题。作者系统比较了多种小实数(Small Reals)表示方式,包括bfloat、flexpoint、logarithmic numbers以及posit,目标是寻找在边缘设备上既能降低存储、计算和能耗成本,又能保持较高推理精度的方法。研究方向围绕以下几点:

  • 在存储受限、内存受限、计算力受限的设备上部署DNN。
  • 比较传统浮点数(IEEE 754 binary32)与各种低精度实数格式(16-bit或更小)在推理精度与推理时间上的表现。
  • 探索posit数在深度学习任务中的应用潜力。

2. 研究方法介绍(含截图)

论文的方法分为以下几个部分:

2.1 DNN优化综述

作者首先回顾了适配边缘设备的各类DNN优化方法,包括:

  • 网络剪枝(Pruning):删除不重要的连接减少计算量(见文中2.1节)。
  • 量化(Quantization):将权重、激活、甚至梯度压缩为小整数或二进制表示(见文中2.2节)。
  • 小实数表示(Small Reals):继续保留实数域表达,使用更小位宽(见文中2.3节)。

2.2 替代浮点表示方法分析

分别介绍了:

  • bfloat16/bfloat8
  • flexpoint(共享指数块浮点)
  • 对数数(Logarithmic Numbers)

2.3 posit格式详细研究

重点介绍了posit格式的内部结构、运算特性(如快速激活函数近似)、以及作者自主开发的cppPosit库。

【截图:Posit格式内部结构】

来自论文 Fig 4.1(解释 posit 的 regime、exponent 和 fraction 字段)

2.4 实验设置

  • Raspberry Pi 3B平台上部署。
  • 测试网络:LeNet-5、EfficientNetB0、SSD300。
  • 测试数据集:MNIST、GTSRB、CIFAR-10、ImageNetV2、Pascal VOC 2007。
  • 比较标准:准确率变化,推理时间变化。

3. 研究结果分析

3.1 主要实验数据总结

小数据集(LeNet-5 + MNIST/GTSRB/CIFAR10)

  • posit16 几乎与 binary32 精度相同,准确率损失小于 0.5%。
  • posit8 明显优于 bfloat8(特别是 bfloat8因仅有2位小数,导致大幅精度下降)。
格式 MNIST GTSRB CIFAR10
binary32 98.86% 91.9% 83.5%
posit16,1 98.83% 91.8% 83.5%
posit8,0 98.34% 90.4% 78%
bfloat8 69.57% 80.45% 67.5%

大数据集(EfficientNetB0 + ImageNetV2 / SSD300 + VOC2007)

  • posit16损失约2个百分点,bfloat16损失更多(最高7个百分点)。
格式 ImageNetV2准确率 SSD300+VOC07 mAP
binary32 81.9% 80.39%
posit16,2 79.7% 78.49%
bfloat16 78.9% 73.29%

3.2 推理速度比较

  • bfloat格式推理更快,因为bfloat与IEEE float转换简单(移位操作)。
  • posit需要复杂编码/解码,推理速度略慢。

【截图:推理时间统计表 Table 3】

3.3 对比实验涉及的其他项目开源地址


4. 论文出处及会议/期刊等级

  • 论文题目:Small Reals Representations for Deep Learning at the Edge: A Comparison
  • 作者:Marco Cococcioni, Federico Rossi, Emanuele Ruffaldi, Sergio Saponara
  • 发表会议:CoNGA 2022 (Conference on Next Generation Arithmetic)
  • 发表在:Lecture Notes in Computer Science (LNCS) 第13253卷
  • 出版社:Springer Nature Switzerland AG
  • DOI链接:10.1007/978-3-031-09779-9_8

会议/期刊等级

  • CoNGA 会议目前暂无CCF评级,但LNCS系列属于国际较高水平的会议论文集,通常视为C类国际会议
  • LNCS系列属于SCI/Scopus收录,部分会议论文根据具体领域影响因子,有时视为四区期刊水平(部分偏弱的会议)。

5. 有无相关的开源代码网站

是的,本文作者开发并开源了cppPosit库:


6. 引用原文出处示例

  • "In order to support posit numbers, in the past, we developed the cppPosit library."
  • "We integrated the posit library into tinyDNN and TensorFlow frameworks."
  • "From the results we saw that 16-bit posits and bfloat can match the baseline IEEE 32-bit float accuracy."


这是论文中不同数值格式(binary32、posit8、bfloat8)在小型数据集(MNIST、GTSRB、CIFAR10)上的测试准确率对比图。从图中可以非常直观看出:

  • posit8 的性能远优于 bfloat8,在低位宽条件下损失非常小。
  • bfloat8 在MNIST和CIFAR10上准确率下降明显,尤其是CIFAR10。
  • posit8 几乎能保持接近binary32(即标准32位浮点数)的准确率水平。
    1
posted @ 2025-04-29 03:18  江左子固  阅读(26)  评论(0)    收藏  举报