System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于DRAM-PIM查表式神经网络推理与调优的文本分类方法及系统技术方案_技高网
当前位置: 首页 > 专利查询>北京大学专利>正文

基于DRAM-PIM查表式神经网络推理与调优的文本分类方法及系统技术方案

技术编号:40974786 阅读:4 留言:0更新日期:2024-04-18 21:23
本发明专利技术公布了一种基于DRAM‑PIM查表式神经网络推理与调优的文本分类方法及系统,包括宿主处理器、控制器和存内计算PIM模块;基于DRAM存内计算架构,通过设计查表式神经网络LUT‑NN算法的算子,实现算法的高效推理,进一步通过自动调优算法获得查表式神经网络在不同场景部署时的最优数据流参数,实现推理参数的高效调优;再通过神经网络推理得到文本分类结果。采用本发明专利技术的技术方案,能够发挥硬件平台执行基于LUT‑NN的文本分类任务的能力,提升对不同文本分类场景的兼容性。

【技术实现步骤摘要】

本专利技术涉及查表式神经网络推理的文本处理技术,尤其涉及一种基于dram-pim的查表式神经网络推理与调优的文本分类方法及系统。


技术介绍

1、文本处理对计算量的需求极大,而查表式神经网络(lut-based neural network,lut-nn)算法具有参数规模小、计算量小、计算操作简单等特点,因此近年来受到了工业界和学术界的广泛关注,并将其应用于文本分类等自然语言处理任务中。lut-nn算法将基于transformer架构的语言模型中的全连接层替换为lut-nn层,其替换方式为:把原始全连接层的输入矩阵聚类到少数中心向量,并且将这些中心向量与原始全连接层的权重矩阵的预计算乘积保存至查找表(look-up table,lut)中。在推理时,lut-nn层首先寻找当前输入最邻近的中心向量索引,然后使用索引查询当前层的lut并进行累加,从而得到最终结果。

2、lut-nn算法通过将全连接层中的矩阵乘操作转换为lut-nn层中的lut查询操作,从而降低模型在文本处理中的计算量需求。然而,现有的以中央处理器(cpu)为中心的计算架构对lut-nn算法的推理性能较低。其主要原因为:lut-nn在推理时对每个lut-nn层内lut的频繁访问让推理过程呈现访存密集的特点。实验表明,lut-nn在推理时位于以cpu为中心的计算平台的屋顶线模型(roofline model)的访存密集区域。这一访存密集的特性导致lut-nn并不能充分利用cpu为中心的计算平台提供的计算资源,难以有效降低模型用于文本分类的计算量需求。

<br/>

技术实现思路

1、为了克服上述现有技术的不足,本专利技术提出了一种基于dram(动态随机存取存储器,dynamic random access memory)的存内计算(processing-in-memoryarchitecture,pim)架构(dram-based processing-in-memory architecture,dram-pim)的lut-nn推理与调优的文本分类方法及系统。本方法在充分考虑dram-pim的架构特性的基础上,通过定制lut-nn在dram-pim架构上的算子设计,从而充分利用硬件资源加速lut-nn的推理过程。此外,考虑到不同场景下的dram-pim与lut-nn的配置变化,本专利技术进一步提取算子中的可变参数,并为其定制自动调优算法,从而获得lut-nn在不同场景部署时的最优数据流参数,提升本方法在不同场景下的部署效率,提升文本分类的性能。

2、本专利技术提供的技术方案如下:

3、一种基于dram-pim的查表式神经网络推理与调优的文本分类方法。本方法通过定制lut-nn算法的算子设计,实现对lut-nn算法的高效推理。在此基础上,本方法提供了一套自动调优算法,从而实现推理参数的高效调优;再通过神经网络推理得到文本分类结果。本方法包括以下步骤:

4、1)设计基于宿主处理器编程框架和pim模块编程框架的函数接口;用户提供查表式神经网络的网络配置。本专利技术根据上述网络配置,使用本专利技术设计的编程框架及函数接口,根据用户定义的lut-nn网络配置编写神经网络推理代码。

5、本专利技术设计基于宿主处理器编程框架和pim模块编程框架的函数接口,该函数接口包含了查表式神经网络所需的各种算子,包括:最邻近中心查询算子和lut查询算子、其他算子;

6、2)用户提供推理使用的dram-pim计算平台的硬件配置。对上述配置以及用户提供的查表式神经网络的网络配置,本方法设计并使用推理参数设计空间探索算法,寻找最优的推理参数,并将其注入编译器,用于推理程序编译。

7、3)本方法将用户编写好的程序通过编译器转换为可执行的二进制文件。编译完毕后,可执行二进制文件被发送到基于dram-pim查表式神经网络推理与调优的文本分类系统,等待执行文本分类任务。该分类系统包括宿主处理器(模块)、控制器(模块)、存内计算(processing in memory, pim)模块。

8、其中,宿主处理器用于执行运算以及控制所有的pim模块。宿主处理器上包括多个控制器,控制器用于宿主处理器与pim模块间的数据与指令的交互。每个控制器与多个pim模块相连。连接到相同控制器的pim模块共享与宿主处理器之间的数据通路。每个pim模块包含多个计算节点,它们共享到宿主处理器的数据通路。每个计算节点的本地内存包含一个或多个dram阵列。每个计算节点包含一个运算单元。

9、4)本专利技术利用上述系统通过以下步骤执行文本分类任务:

10、4.1)系统接收用户指定的文本输入,加载3)中得到的二进制文件,并按照二进制文件中的参数信息加载用户提供的lut-nn权重参数。

11、4.2)加载完毕后,程序开始运行。系统会根据用户定义的模型结构依次执行所有算子。对于用户调用的每一个算子,系统根据其类别,自动判断执行所需的硬件,并进行硬件调用。系统同时会自动执行不同硬件之间的数据传输。

12、4.3)所有算子执行完毕后,用户获得神经网络推理得到的文本分类结果。

13、与现有技术相比,本专利技术的有益效果是:

14、本专利技术提供一种基于dram存内计算架构(dram-based processing-in-memoryarchitecture,dram-pim)的lut-nn推理与调优的文本分类方法及系统,其技术优势包括:

15、(一) 本专利技术设计的基于dram存内计算架构的lut-nn推理与调优方法,相较于已有的神经网络推理方法,可以取得吞吐与能效的提升;

16、(二) 本专利技术设计的调优方法充分考虑了dram-pim硬件系统中不同硬件与lut-nn推理算子之间的亲和性,可以充分发挥硬件平台执行基于lut-nn的文本分类任务的能力。

17、(三) 本专利技术的推理参数设计空间探索算法提升了本专利技术在不同dram-pim平台与lut-nn配置下移植时的便捷性,提升了对不同文本分类场景的兼容性。

本文档来自技高网
...

【技术保护点】

1.一种基于DRAM-PIM查表式神经网络推理与调优的文本分类方法,其特征是,基于动态随机存取存储器-存内计算DRAM-PIM架构,通过设计查表式神经网络LUT-NN算法的算子,实现算法的高效推理,进一步通过自动调优算法获得查表式神经网络在不同场景部署时的最优数据流参数,实现推理参数的高效调优;再通过神经网络推理得到文本分类结果;包括以下步骤:

2.如权利要求1所述基于DRAM-PIM查表式神经网络推理与调优的文本分类方法,其特征是,LUT-NN网络配置包括LUT-NN的网络结构图和每个LUT-NN层的形状参数(、、、);其中代表输入矩阵的行数;代表中心向量张量的中心向量组数,代表每个中心向量组内的中心向量个数,代表LUT-NN当前层的输出矩阵的行向量长度。

3.如权利要求2所述基于DRAM-PIM查表式神经网络推理与调优的文本分类方法,其特征是,DRAM-PIM硬件平台的配置包括PIM模块总数、每个PIM模块上的计算节点总数、每个计算节点内运算单元的算力、PIM模块与宿主处理器间的数据传输总带宽。

4.如权利要求2所述基于DRAM-PIM查表式神经网络推理与调优的文本分类方法,其特征是,LUT查询算子包含以下执行步骤:

5.如权利要求1所述基于DRAM-PIM查表式神经网络推理与调优的文本分类方法,其特征是,参数对的数据总传输开销的估算方法为:;其中,为LUT索引矩阵的传输开销, 为LUT张量的传输开销,为算子输出结果的传输开销。

6.如权利要求5所述基于DRAM-PIM查表式神经网络推理与调优的文本分类方法,其特征是,的估算方法为:;其中,,为每个计算节点内张量的切片大小,为计算节点总数,为宿主处理器传输张量时的带宽。

7.如权利要求6所述基于DRAM-PIM查表式神经网络推理与调优的文本分类方法,其特征是,步骤24)中,参数对的计算总开销的估算方法为:,其中,为单个计算节点上LUT索引的子切片数量,为单个计算节点上LUT子切片的数量,为单个LUT索引子切片与单个LUT子切片之间的运算延迟。

8.如权利要求1所述基于DRAM-PIM查表式神经网络推理与调优的文本分类方法,其特征是,设计基于宿主处理器编程框架和PIM模块编程框架的函数接口还包含查表式神经网络的其他算子,包括逐元素算子,Softmax算子,激活函数算子,正则化算子,分词器算子,嵌入向量转换算子,语言模型头算子。

9.一种基于DRAM-PIM查表式神经网络推理与调优的文本分类系统,其特征是,利用所述的文本分类系统实现权利要求1所述的基于DRAM-PIM查表式神经网络推理与调优的文本分类方法;所述的文本分类系统包括宿主处理器、控制器和存内计算PIM模块;

...

【技术特征摘要】

1.一种基于dram-pim查表式神经网络推理与调优的文本分类方法,其特征是,基于动态随机存取存储器-存内计算dram-pim架构,通过设计查表式神经网络lut-nn算法的算子,实现算法的高效推理,进一步通过自动调优算法获得查表式神经网络在不同场景部署时的最优数据流参数,实现推理参数的高效调优;再通过神经网络推理得到文本分类结果;包括以下步骤:

2.如权利要求1所述基于dram-pim查表式神经网络推理与调优的文本分类方法,其特征是,lut-nn网络配置包括lut-nn的网络结构图和每个lut-nn层的形状参数(、、、);其中代表输入矩阵的行数;代表中心向量张量的中心向量组数,代表每个中心向量组内的中心向量个数,代表lut-nn当前层的输出矩阵的行向量长度。

3.如权利要求2所述基于dram-pim查表式神经网络推理与调优的文本分类方法,其特征是,dram-pim硬件平台的配置包括pim模块总数、每个pim模块上的计算节点总数、每个计算节点内运算单元的算力、pim模块与宿主处理器间的数据传输总带宽。

4.如权利要求2所述基于dram-pim查表式神经网络推理与调优的文本分类方法,其特征是,lut查询算子包含以下执行步骤:

5.如权利要求1所述基于dram-pim查表式神经网络推理与调优的文本分类方法,其特征是,...

【专利技术属性】
技术研发人员:孙广宇李聪
申请(专利权)人:北京大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1