面向深度概率网络的高效量化方法技术

技术编号:37048394 阅读:11 留言:0更新日期:2023-03-29 19:26
本发明专利技术涉及一种面向深度概率网络的高效量化方法,通过混合量化、结构重构和类型优化来实现深度概率网络的高效量化。首先,针对有向无环图结构将图的各个节点进行聚类并根据聚类类别特点分配不同精度的算数类型,利用分配的算数类型对各个节点进行初步的量化,获得初步量化的深度概率网络;其次,对初步量化的深度概率网络进行多输入节点的结构重构,根据输入的权重将多输入节点的重构为一个只包含两输入节点的二叉树网络,对重构结构进行权重参数重构;最后,基于功耗分析和网络精度分析的算数类型搜索方法,来优化所有节点的算数类型。方法能够在维持深度概率网络的模型精度的前提条件下,大幅度减小模型计算量、降低计算复杂度、节省系统能耗。节省系统能耗。节省系统能耗。

【技术实现步骤摘要】
with High

Level Synthesis[C]ACM Transactions on Reconfigurable Technology and Systems(TRETS)(2022).

技术实现思路

[0010]针对深度概率网络在边缘设备上的部署问题,提出了一种面向深度概率网络的高效量化方法
[0011]本专利技术的技术方案为:一种面向深度概率网络的高效量化方法,具体包括如下步骤:
[0012]1)针对深度概率网络结构为有向无环图,将图的各个节点进行聚类,获得各个群簇,并根据各个群簇聚类类别特点分配不同精度的算数类型,利用分配的算数类型对各个节点进行初步的量化,获得初步量化的深度概率网络;
[0013]2)对初步量化的深度概率网络进行多输入节点的结构重构,即根据输入的权重将多输入节点的重构为一个只包含两输入节点的二叉树网络,实现各个群簇的分支聚类重构;重构后的二叉树网络调整权重参数,实现参数重构;
[0014]3)使用基于优化策略的算数类型搜索方法,对量化方案进行优化。
[0015]进一步,所述步骤1)具体实现方法:
[0016]1.1)按照网络中各个节点的深度,对所有节点进行分层,将整个网络划分为若干个群簇;
[0017]1.2)按照双精度浮点的算数类型,使用数据集数据执行模型的推理,并记录网络中所有群簇的数据动态范围,然后对各个群簇的数据分布进行统计分析;
[0018]1.3)根据群簇整体的数据范围和各个节点各自的数据范围,动态调整各个节点的群簇所属关系,缩小各个群簇的数据分布范围;
[0019]1.4)根据各个群簇调整后的数据分布特征,为其指定合适的算数类型;
[0020]1.5)根据所指定的算数类型,对各个节点进行初步的量化。
[0021]进一步,所述步骤2)具体实现方法:
[0022]2.1)对多输入节点的各个输入分支的权重大小取以二为底的对数并将结果向下取整,然后根据该指标将输入分支划分为多个群簇,并将该指标标记为I
n
,将对应的群簇标记为C
n

[0023]2.2)根据I
n
的大小,将各个群簇进行排序,并将群簇组织为二叉树网络的形式,其中,I
n
指标越大的群簇C
n
越靠近根节点,同时将这些新产生的输入分支标记为B,输入分支的权重设定初始值1;
[0024]2.3)将各个群簇中的节点进行随机排列,并组织成二叉树的形式,完成了深度概率网络的结构重构;
[0025]2.4)对各个群簇的所有输入分支的权重参数进行同比例放大,来减少精度下溢的影响;
[0026]2.5)调整输入分支B中的权重系数,来抵消步骤2.4)的影响,使得计算结果恢复到正常值。
[0027]进一步,所述步骤3)具体实现方法:
[0028]3.1)分析初步量化方案中所使用到的算数类型,然后基于此构建一个范围更大的
算数类型选择空间,作为搜索空间,同时需要按照算术类型的表达能力,按照从弱到强的顺序对搜索空间进行排序;
[0029]3.2)评估初始网络中的各个群簇对模型整体精度的重要性,并根据评估指标划定群簇的优先级;
[0030]3.3)根据优先级,按顺序逐个确定各群簇的算术类型。
[0031]进一步,所述步骤3)中基于优化策略的算数类型搜索方法为基于功耗分析和网络精度分析的算数类型搜索方法,根据设定的功耗要求和精度要求来动态调整各个群簇的算数类型,得到一个最优化的网络配置。
[0032]本专利技术的有益效果在于:本专利技术面向深度概率网络的高效量化方法,可以被广泛应用于各种深度概率网络的边缘硬件部署,特别是以FPGA平台为代表的具有高灵活度的定制化计算平台和支持多种算术精度的通用计算平台;方法能够在维持深度概率网络的模型精度的前提条件下,大幅度减小模型计算量、降低计算复杂度、节省系统能耗。
附图说明
[0033]图1为本专利技术面向深度概率网络的高效量化方法的整体流程图;
[0034]图2为本专利技术针对有向无环图网络的混合量化方法的量化效果示意图;
[0035]图3a为本专利技术典型的多输入节点结构示意图;
[0036]图3b为本专利技术对输入分支进行聚类和排列后的整体结构示意图;
[0037]图3c为本专利技术经历了结构重构和参数重构后的最终的二叉树网络结构示意图。
具体实施方式
[0038]下面结合附图和具体实施例对本专利技术进行详细说明。本实施例以本专利技术技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本专利技术的保护范围不限于下述的实施例。
[0039]通过混合量化、结构重构和类型优化来实现深度概率网络的高效量化。首先,针对有向无环图结构的混合量化方法,将图的各个节点进行聚类并根据聚类类别特点分配不同精度的算数类型,利用分配的算数类型对各个节点进行初步的量化,获得初步量化的深度概率网络;其次,对初步量化的深度概率网络进行多输入节点的结构重构,根据输入的权重将多输入节点的重构为一个只包含两输入节点的二叉树网络,对重构结构对应进行权重参数重构;最后,使用基于优化策略的算数类型搜索方法,对量化方案进行优化。
[0040]如附图1所示面向深度概率网络的高效量化方法的整体流程图,具体过程如下:
[0041]1、对于一个深度概率网络,首先使用混合量化方法,将网络模型进行初步量化,如附图2所示,该方法能够对有向无环图中的节点进行聚类,并能够根据动态数据分析进行适当调整,同时也能够对各个群簇确定合适的量化类型。
[0042]针对有向无环图(简称“DAG”)的混合量化方法。提出了一种基于整体网络结构分析和节点动态数据分析的节点聚类方法,来将深度概率网络的多个节点划分为多个群簇。同时,根据节点动态数据分析的结果为各个群簇指定合适的量化类型。具体实现方法如下:
[0043]1.1按照网络中各个节点的深度,对所有节点进行分层,将整个网络划分为若干个群簇。
[0044]1.2按照双精度浮点的算数类型,使用数据集数据执行模型的推理,并记录网络中所有群簇的数据动态范围,然后对各个群簇的数据分布进行统计分析。
[0045]1.3根据群簇整体的数据范围和各个节点各自的数据范围,动态调整各个节点的群簇所属关系,从而适当缩小各个群簇的数据分布范围。
[0046]1.4根据各个群簇调整后的数据分布特征,为其指定合适的算数类型。
[0047]1.5根据所指定的算数类型,对各个节点进行初步的量化。
[0048]2、对于初步量化的深度概率网络,使用多输入节点的重构方法,将其转换为只包含两输入节点的二叉树网络。
[0049]基于输入权重的输入分支聚类的方法将多个输入分支划分成若干群簇。然后,将多输入节点按照特定顺序变成只包含两输入节点的二叉树网络。最后,提出了一种参数重构的方法,能够调整二叉树网络的权重参数,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种面向深度概率网络的高效量化方法,其特征在于,具体包括如下步骤:1)针对深度概率网络结构为有向无环图,将图的各个节点进行聚类,获得各个群簇,并根据各个群簇聚类类别特点分配不同精度的算数类型,利用分配的算数类型对各个节点进行初步的量化,获得初步量化的深度概率网络;2)对初步量化的深度概率网络进行多输入节点的结构重构,即根据输入的权重将多输入节点的重构为一个只包含两输入节点的二叉树网络,实现各个群簇的分支聚类重构;重构后的二叉树网络调整权重参数,实现参数重构;3)使用基于优化策略的算数类型搜索方法,对量化方案进行优化。2.根据权利要求1所述面向深度概率网络的高效量化方法,其特征在于,所述步骤1)具体实现方法:1.1)按照网络中各个节点的深度,对所有节点进行分层,将整个网络划分为若干个群簇;1.2)按照双精度浮点的算数类型,使用数据集数据执行模型的推理,并记录网络中所有群簇的数据动态范围,然后对各个群簇的数据分布进行统计分析;1.3)根据群簇整体的数据范围和各个节点各自的数据范围,动态调整各个节点的群簇所属关系,缩小各个群簇的数据分布范围;1.4)根据各个群簇调整后的数据分布特征,为其指定合适的算数类型;1.5)根据所指定的算数类型,对各个节点进行初步的量化。3.根据权利要求2所述面向深度概率网络的高效量化方法,其特征在于,所述步骤2)具体实现方法:2.1)对多输入节点的各个输入分支的权重大小取以二为底的对数并将结果向下取整,然后根据该指标将输入分支划分为多个群簇,并将该指标...

【专利技术属性】
技术研发人员:张申刘心哲哈亚军
申请(专利权)人:上海科技大学
类型:发明
国别省市:

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

1