Deep Neural Networks (DNN) are computationally intensive to train. It consists of a large number of multidimensional dot products between many weights and input vectors. However, there can be significant similarity among input vectors. If one input vector is similar to another, its computations with the weights are similar to those of the other and, therefore, can be skipped by reusing the already-computed results. We propose a novel scheme, called MERCURY, to exploit input similarity during DNN training in a hardware accelerator. MERCURY uses Random Projection with Quantization (RPQ) to convert an input vector to a bit sequence, called Signature. A cache (MCACHE) stores signatures of recent input vectors along with the computed results. If the Signature of a new input vector matches that of an already existing vector in the MCACHE, the two vectors are found to have similarities. Therefore, the already-computed result is reused for the new vector. To the best of our knowledge, MERCURY is the first work that exploits input similarity using RPQ for accelerating DNN training in hardware. The paper presents a detailed design, workflow, and implementation of the MERCURY. Our experimental evaluation with twelve different deep learning models shows that MERCURY saves a significant number of computations and speeds up the model training by an average of 1.97X with an accuracy similar to the baseline system.
翻译:深心网络(DNN) 由大量多维点产品组成, 包括许多重量和输入矢量之间的多重和输入矢量。 但是, 输入矢量之间可能有很大相似性。 如果一个输入矢量与另一个输入矢量相似, 其加权数的计算方法与另一个输入矢量相似, 因此可以通过重用已经计算的结果而跳过。 我们提出了一个名为 MERCURY 的新方案, 目的是利用在硬件加速器中进行 DNN 培训期间的相似性。 MERCURRY 使用量化的随机投影( RPQ) 将输入矢量转换到一个小的顺序, 称为“ 签名 ” 。 如果新输入矢量的计算方法与已经计算的结果相仿, 那么发现两个矢量是相似的。 因此, 已经计算的结果被重新用于新矢量的矢量。 根据我们的知识, MERCRRY( RPQ) 首次将输入一个类似输入速度的输入系统, 并用我们的标准 IMERQ, 学习一个不同的测试工具。