深度神经网络的 Winograd 卷积:高效点选择
计算机视觉与模式识别
2022-01-26 v1
摘要
卷积神经网络(CNNs)显著提升了目标识别、图像分割和交互式语音系统等任务的精度。由于计算密集的卷积层,CNNs 需要大量计算资源。Winograd 卷积等快速卷积算法可大幅降低这些层的计算成本,但代价是数值特性差,使得计算节省越大,浮点误差呈指数增长。每种 Winograd 卷积算法的一个决定性特征是一组对多项式采样的实值点。点的选择影响算法的数值精度,但小卷积的最优点的集合仍未知。现有工作仅考虑小整数和简单分数作为候选点。本工作中,我们提出一种新颖的点选择方法,使用形如 {-1/c , -c, c, 1/c } 的点,其中 c 取全范围实数。我们表明此类点组在 Winograd 变换矩阵中引起抵消,从而降低数值误差。我们通过经验发现,不同 c 值的误差在实值范围内形成一条粗略曲线,有助于定位降低误差的 c 值,并且使用非显然实值评估点而非整数或简单分数可实现更低误差。我们研究了小卷积的一系列尺寸,在 1D 和 2D 卷积中实现了 2% 到约 59% 的误差降低。此外,我们确定了在选择所提点的子集时总会导向更低误差的情况中的模式。最后,我们实现了完整的 Winograd 卷积层,并用其在真实数据集上运行深度卷积神经网络,表明我们所提点将误差降低了 22% 到 63%。
引用
@article{arxiv.2201.10369,
title = {Winograd Convolution for Deep Neural Networks: Efficient Point Selection},
author = {Syed Asad Alam and Andrew Anderson and Barbara Barabasz and David Gregg},
journal= {arXiv preprint arXiv:2201.10369},
year = {2022}
}
备注
19 pages, 3 figures, 9 tables and 32 equations