uint8和quint8加减溢出
问题现象
含有累加累减的算子在uint8和quint8类型计算溢出时,计算结果和理论值不同。
例如uint8类型,理论计算结果是257,昇腾AI处理器的计算结果为255。
原因分析
数值溢出情况下,昇腾AI处理器的处理方式是饱和,即溢出后取可表示的最大值,uint8可表示的最大值255,因此257溢出后输出255。
解决方案
数据溢出时,开发者可以缩放数值范围避免溢出。
父主题: 模型训练问题(TensorFlow网络)
含有累加累减的算子在uint8和quint8类型计算溢出时,计算结果和理论值不同。
例如uint8类型,理论计算结果是257,昇腾AI处理器的计算结果为255。
数值溢出情况下,昇腾AI处理器的处理方式是饱和,即溢出后取可表示的最大值,uint8可表示的最大值255,因此257溢出后输出255。
数据溢出时,开发者可以缩放数值范围避免溢出。