提高神经网络图像处理效率的方法、装置及一种NPU制造方法及图纸

技术编号:30413047 阅读:19 留言:0更新日期:2021-10-20 11:50
本申请提供了一种提高神经网络图像处理效率的方法及装置,将图像预处理与神经网络第一层的权重参数融合在了一起,即,在不改变神经网络第一层原有结构基础上,将色域转换参数、标准化参数与神经网络第一层原有的权重参数融合,然后将待处理的图像数据重新排列成NPU PE易处理的格式,这样NPU便可利用新的第一层直接、同时完成图形预处理和第一层卷积的处理。在本申请方案中,只需要增加少量的控制逻辑进行图像数据重新配列即可,而参数的融合可以通过离线进行,没有额外的硬件消耗,相比CPU/GPU协处理方式或者是专门的硬件处理的方式,本申请方案具有更小的运算和更低的功耗,处理延时也更低,且不需要增加硬件成本。且不需要增加硬件成本。且不需要增加硬件成本。

【技术实现步骤摘要】
提高神经网络图像处理效率的方法、装置及一种NPU


[0001]本申请涉及人工智能
,尤其涉及一种提高神经网络图像处理效率的方法、装置及一种NPU。

技术介绍

[0002]人工神经网络(Artificial Neural Network,ANN)是人工智能(Artificial Intelligence,AI)领域的一个重要分支,随着AI技术的快速发展,人工神经网络(如卷积神经网络等)近年来在图像、视频以及语音等多种媒体信息的处理与分析中取得了很大成就。NPU(Neural Processing Unit,神经网络处理单元)加速器是可以支持多种神经网络的专用处理器,为AI算法专向进行优化,拥有的加速单元只与AI算法有关,可以从硬件层面实现快速处理AI算法中一些特定公式的计算。
[0003]在NPU中,PE(Processing Element,处理单元)Array模块是实现神经网络中核心卷积运算的重要模块,具体可实现图片(image)和权重(kernel)的点乘和加法运算。PE Array模块占据了硬件芯片/FPGA中大量的计算资源,通过同时进行并行运算达到高效计算处理的目的。目前,提高NPU的计算效率是行业趋势。
[0004]当使用NPU处理图片时,诸多类型的神经网络通常都要求对输入的图片先进行预处理,这些预处理主要包括两个步骤:先色域变化,然后再进行数据标准化(也可称为归一化)。在现有技术中,对NPU输入的图片进行预处理的过程往往都是分步分时分硬件进行的。
[0005]例如,在一种现有技术中,在面对NPU硬件资源紧张的SOC系统或者是加速器时,需要先使用CPU/GPU来预处理图片,即使用CPU/GPU来实现色域变化和数据标准化,然后再把处理后的数据发送给NPU进行处理。然而专利技术人发现,这样的操作会增加计算的延时和功耗。由于在不同的硬件之间处理数据,导致了额外的软件调度开销,不但整个系统附加了开发难度,而且提高了对系统的计算能力要求和带宽要求,处理时的延迟很长。
[0006]在另外一种现有技术中,在NPU中增加了专门的图片预处理硬件单元,试图通过增加成本来换取计算能力的提高。然而专利技术人却发现,即使不在意芯片成本的增加,这种方式依旧使用了与软件调度类似的处理流程,虽然减少了处理延时,但依旧需要消耗\抢占硬件带宽资源,在加速器运行时都会增加整体功耗。

技术实现思路

[0007]本申请提供了一种提高神经网络图像处理效率的方法、装置及一种NPU,以解决在不增加成本\功耗等前提下如何提高神经网络运算效率的问题。
[0008]根据本申请实施例的第一方面,提供一种提高神经网络图像处理效率的方法,所述方法用于卷积神经网络,所述方法包括:获取用于图像色域转换的色域转换参数、用于图像数据标准化的标准化参数以及所述卷积神经网络第一层原有的权重参数,其中所述卷积神经网络第一层为所述卷积神经网络隐含层的第一层;
根据所述色域转换参数、标准化参数、所述第一层原有的权重参数,生成所述卷积神经网络第一层新的权重参数以替换所述原有的权重参数;获取待处理的图像数据;根据所述卷积神经网络第一层的输入格式将所述图像数据重新排列;将重新排列后的图像数据输入所述卷积神经网络的第一层。
[0009]可选的:所述色域转换参数包括色域转换公式V=C*R+M中的系数C及偏置M,其中R为色域转换的输入,V为色域转换后的输出;所述标准化参数包括数据标准化公式I=S*U+O中的系数S及偏置O,其中U为输入的非标准化数据,I为输出的标准化数据;所述卷积神经网络第一层原有的权重参数包括卷积公式Z=W*A+B中的权重W和偏置B,其中A为所述第一层的输入,Z为所述第一层的输出。
[0010]可选的,根据所述色域转换参数、标准化参数、所述第一层原有的权重参数,生成所述卷积神经网络第一层新的权重参数,具体包括:根据所述C、M、S、O、W、B,得到所述卷积神经网络第一层新的权重W*S*C及新的偏置W*(S*M+O)+B。
[0011]可选的,根据所述卷积神经网络第一层的输入格式将所述图像数据重新排列,包括:按照第一预设规则从所述图像数据中取出像素数据;将取出的像素数据按照第二预设规则排列成行以作为所述第一层的输入向量。
[0012]可选的:所述第一预设规则包括:以第一层的卷积核的宽度m为长度、以所述卷积核的步长stride为步进单位,从所述图像数据中按照先图像宽度方向w、再图像高度方向h的顺序每次取出m个像素数据;所述第二预设规则包括:将每次取出的m个像素数据按照先色彩深度方向c、再图像宽度方向w的方式排列成与卷积运算的并行度k相适应的向量。
[0013]可选的:所述第一预设规则还包括:当在图像宽度方向移动时,如果剩余不足m个像素,则通过添加零值来补齐;所述第二预设规则还包括:当超出所述并行度k时,分成多行排列;当一行不足所述并行度k时,在尾端补充零值。
[0014]可选的,所述卷积神经网络通过神经网络处理单元NPU实现,卷积运算通过处理单元PE模块实现。
[0015]根据本申请实施例的第二方面,提供一种提高神经网络运算效率的装置,所述装置用于卷积神经网络,所述装置包括:参数获取模块,用于获取用于图像色域转换的色域转换参数、用于图像数据标准化的标准化参数以及所述卷积神经网络第一层原有的权重参数,其中所述卷积神经网络第一层为所述卷积神经网络隐含层的第一层;新权重生成模块,用于根据所述色域转换参数、标准化参数、所述第一层原有的权
重参数,生成所述卷积神经网络第一层新的权重参数以替换所述原有的权重参数;图像获取模块,用于获取待处理的图像数据;预处理模块,用于根据所述卷积神经网络第一层的输入格式将所述图像数据重新排列;输入模块,用于将重新排列后的图像数据输入所述卷积神经网络的第一层。
[0016]可选的:所述色域转换参数包括色域转换公式V=C*R+M中的系数C及偏置M,其中R为色域转换的输入,V为色域转换后的输出;所述标准化参数包括数据标准化公式I=S*U+O中的系数S及偏置O,其中U为输入的非标准化数据,I为输出的标准化数据;所述卷积神经网络第一层原有的权重参数包括卷积公式Z=W*A+B中的权重W和偏置B,其中A为所述第一层的输入,Z为所述第一层的输出。
[0017]可选的:根据所述C、M、S、O、W、B,得到所述卷积神经网络第一层新的权重W*S*C及新的偏置W*(S*M+O)+B。
[0018]可选的:按照第一预设规则从所述图像数据中取出像素数据;将取出的像素数据按照第二预设规则排列成行以作为所述第一层的输入向量。
[0019]可选的:所述第一预设规则包括:以第一层的卷积核的宽度m为长度、以所述卷积核的步长stride为步进单位,从所述图像数据中按照先图像宽度方向w、再图像高度方向h的顺序每次取出m个像素数据;所述第二预设规则包括:将每次取出的m个像素数据按照先色彩深度方向c、再图像宽度方向w的方式排列成与卷积运算的并行度k相适应的向量。
[0020]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种提高神经网络图像处理效率的方法,其特征在于,所述方法用于卷积神经网络,所述方法包括:获取用于图像色域转换的色域转换参数、用于图像数据标准化的标准化参数以及所述卷积神经网络第一层原有的权重参数,其中所述卷积神经网络第一层为所述卷积神经网络隐含层的第一层;根据所述色域转换参数、标准化参数、所述第一层原有的权重参数,生成所述卷积神经网络第一层新的权重参数以替换所述原有的权重参数;获取待处理的图像数据;根据所述卷积神经网络第一层的输入格式将所述图像数据重新排列;将重新排列后的图像数据输入所述卷积神经网络的第一层。2.根据权利要求1所述的方法,其特征在于:所述色域转换参数包括色域转换公式V=C*R+M中的系数C及偏置M,其中R为色域转换的输入,V为色域转换后的输出;所述标准化参数包括数据标准化公式I=S*U+O中的系数S及偏置O,其中U为输入的非标准化数据,I为输出的标准化数据;所述卷积神经网络第一层原有的权重参数包括卷积公式Z=W*A+B中的权重W和偏置B,其中A为所述第一层的输入,Z为所述第一层的输出。3.根据权利要求2所述的方法,其特征在于,根据所述色域转换参数、标准化参数、所述第一层原有的权重参数,生成所述卷积神经网络第一层新的权重参数,具体包括:根据所述C、M、S、O、W、B,得到所述卷积神经网络第一层新的权重W*S*C及新的偏置W*(S*M+O)+B。4.根据权利要求1所述的方法,其特征在于,根据所述卷积神经网络第一层的输入格式将所述图像数据重新排列,包括:按照第一预设规则从所述图像数据中取出像素数据;将取出的像素数据按照第二预设规则排列成行以作为所述第一层的输入向量。5.根据权利要求4所述的方法,其特征在于,所述第一预设规则包括:以第一层的卷积核的宽度m为长度、以所述卷积核的步长stride为步进单位,从所述图像数据中按照先图像宽度方向w、再图像高度方向h的顺序每次取出m个像素数据;所述第二预设规则包括:将每次取出的m个像素数据按照先色彩深度方向c、再图像宽度方向w的方式排列成与卷积运算的并行度k相适应的向量。6.根据权利要求5所述的方法,其特征在于,所述第一预设规则还包括:当在图像宽度方向移动时,如果剩余不足m个像素,则通过添加零值来补齐;所述第二预设规则还包括:当超出所述并行度k时,分成多行排列;当一行不足所述并行度k时,在尾端补充零值。7.根据权利要求1所述的方法,其特征在于,所述卷积神经网络通过神经网络处理单元NPU实现,卷积运算通过处理单元PE模块实现。8.一种提高神经网络运算效率的装置,其特征在于,所述装置用于卷积...

【专利技术属性】
技术研发人员:范名超陈汉卿
申请(专利权)人:翱捷智能科技上海有限公司
类型:发明
国别省市:

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

1