【技术实现步骤摘要】
神经网络的硬件实现方式
技术介绍
深度神经网络(DNN)是一种可用于机器学习应用程序的人工神经网络。特别地,DNN可用于信号处理应用程序,包括图像处理和计算机视觉应用程序。DNN已在功率资源不作为重要因素的应用程序中得以实现。尽管如此,DNN在许多不同的
中都有应用,在这些
中,用于实现DNN的硬件资源使得功耗、处理能力或硅面积受限。因此,需要实现一种被配置为以高效方式,例如以操作时需要较少的硅面积或较少处理功率的方式实现DNN(或其至少一部分)的硬件。此外,DNN可针对各种不同应用程序以多种不同方式进行配置。因此,还需要一种用于实现DNN的具有能够支持各种DNN配置的灵活性的硬件。
技术实现思路
提供本
技术实现思路
是为了以简化的形式介绍下文在具体实施方式中进一步描述的一系列概念。本
技术实现思路
不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。公开了神经网络的硬件实现方式以及在此类硬件实现方式中处理数据的方法。在块中处理网络的多个层的输入数据,以生成输出数据的相应的块。 ...
【技术保护点】
1.一种在包括多个层(102-1、102-2、102-3;502-1、502-2)的神经网络(100)的硬件实现方式中处理数据的方法,所述方法包括:/n在一个或多个第一存储器装置(312)中提供表示所述多个层的权重的权重数据;/n在所述一个或多个第一存储器装置(312)中提供所述多个层中的第一层(102-1;502-1)的输入数据(104;504),所述多个层终止于生成p个输出数据集(106;508)的结束层(102-3;502-2),每个集合包括n个输出数据元素,其中n>2并且p≥1,并且p取决于所述权重数据;/n从所述一个或多个第一存储器装置(312)读取表示所述 ...
【技术特征摘要】
20191129 GB 1917520.71.一种在包括多个层(102-1、102-2、102-3;502-1、502-2)的神经网络(100)的硬件实现方式中处理数据的方法,所述方法包括:
在一个或多个第一存储器装置(312)中提供表示所述多个层的权重的权重数据;
在所述一个或多个第一存储器装置(312)中提供所述多个层中的第一层(102-1;502-1)的输入数据(104;504),所述多个层终止于生成p个输出数据集(106;508)的结束层(102-3;502-2),每个集合包括n个输出数据元素,其中n>2并且p≥1,并且p取决于所述权重数据;
从所述一个或多个第一存储器装置(312)读取表示所述输入数据的第一块的所述输入数据(104;504)的第一子集;
从所述一个或多个第一存储器装置读取所述权重数据;
处理所述权重数据和所述输入数据的所述第一子集,以评估所述多个层中的每一层,从而计算第一输出数据集的输出数据的第一块,其中输出数据的所述第一块具有m个输出数据元素,其中m>1并且m<n;以及
将输出数据的所述第一块写入所述一个或多个第一存储器装置(312),其中所述多个层中的至少一层是卷积层。
2.如权利要求1所述的方法,还包括提供一个或多个第二存储器装置(314),其中访问所述一个或多个第二存储器装置的成本小于访问所述一个或多个第一存储器装置的成本,
其中处理所述权重数据和所述输入数据的所述第一子集包括:
处理所述权重数据和所述输入数据(104;504)的所述第一子集以评估所述多个层的所述第一层,从而计算所述第一层的输出数据(506);
将所述第一层的所述输出数据(506)写入所述一个或多个第二存储器装置(314);以及
对于所述多个层中的每个后续层:
从所述一个或多个第二存储器装置(314)读取先前层的所述输出数据;以及
处理所述权重数据和所述先前层的所述输出数据以评估所述多个层中的当前层,从而计算所述当前层的输出数据。
3.如权利要求2所述的方法,还包括,对于所述多个层中的至少一层:
当计算所述至少一层的输出数据时:
标识所述至少一层的所述输出数据的一次性部分,在计算所述结束层的输出数据的所述第一块之后可以将所述一次性部分删除;以及
标识所述至少一层的所述输出数据的非一次性部分,在计算所述结束层的输出数据的所述第一块之后应该保留所述非一次性部分,以用于计算所述结束层的输出数据的至少一个其他块,
所述方法包括,当将所述至少一层的所述输出数据写入所述一个或多个第二存储器装置(314)时:
将所述一次性部分写入所述一个或多个第二存储器的第一区段(802);以及
将所述非一次性部分写入所述一个或多个第二存储器装置的第二不同区段(804)。
4.如权利要求3所述的方法,其中当评估所述多个层中的后续层时,所述输出数据的所述一次性部分的至少一部分被重写,可选地,其中所述一次性部分被所述后续层的输出数据的一次性部分重写。
5.一种包括多个层(102-1、102-2、102-3;502-1、502-2)的神经网络(100)的硬件实现方式(300),其中至少一层是卷积层,所述硬件实现方式包括:
一个或多个第一存储器装置(312),所述一个或多个第一存储器装置被配置为存储:
表示所述多个层的权重的权重数据;以及
所述多个层中的第一层(102-1;502-1)的输入数据(104;504),所述多个层终止于生成p个输出数据集(106;508)的结束层(102-3;502-2),每个集合包括n个输出数据元素,其中n>2并且p≥1,并且p取决于权重数据,
输入缓冲器(310),所述输入缓冲器被配置为获得表示所述输入数据的第一块的所述输入数据(104;504)的第一子集,
系数缓冲器(308),所述系数缓冲器被配置为获得所述权重数据;
一个或多个处理元件(318),所述一个或多个处理元件被配置为处理所述权重数据和所述输入数据(104;504)的所述第一子集,以评估所述多个层中的每一层,从而计算第一输出数据集的输出数据(106;508)的第一块,其中输出数据的所述第一块具有m个输出数据元素,其中m>1并且m<n;以及
输出缓冲器(316),所述输出缓冲器被配置为输出输出数据的所述第一块。
6.如权利要求5所述的硬件实现方式,还包括一个或多个第二存储器装置(314),其中访问所述一个或多个第二存储器装置的成本小于访问所述一个或...
【专利技术属性】
技术研发人员:黄曦冉,查阿塔伊·迪基吉,
申请(专利权)人:想象技术有限公司,
类型:发明
国别省市:英国;GB
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。