CN112800669B - 专用加速器中基于概率图模型的多种近似技术误差评估方法 - Google Patents
专用加速器中基于概率图模型的多种近似技术误差评估方法 Download PDFInfo
- Publication number
- CN112800669B CN112800669B CN202110094797.6A CN202110094797A CN112800669B CN 112800669 B CN112800669 B CN 112800669B CN 202110094797 A CN202110094797 A CN 202110094797A CN 112800669 B CN112800669 B CN 112800669B
- Authority
- CN
- China
- Prior art keywords
- node
- approximation
- graph
- nodes
- probability
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000005516 engineering process Methods 0.000 claims abstract description 13
- 238000013507 mapping Methods 0.000 claims abstract description 10
- 238000010586 diagram Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 2
- 238000004422 calculation algorithm Methods 0.000 abstract description 10
- 230000008030 elimination Effects 0.000 abstract description 8
- 238000003379 elimination reaction Methods 0.000 abstract description 8
- 238000011156 evaluation Methods 0.000 abstract description 3
- 238000000342 Monte Carlo simulation Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/17—Mechanical parametric or variational design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/08—Probabilistic or stochastic CAD
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Optimization (AREA)
- Software Systems (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Hardware Design (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Algebra (AREA)
- Probability & Statistics with Applications (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Complex Calculations (AREA)
Abstract
本发明提供了一种专用加速器中基于概率图模型的多种近似技术误差评估方法,通过概率图模型对任意部件的近似技术组合进行快速评估和选择,在保证输出质量的前提下,最大化地减少功耗并提高性能。所述方法至少包括:根据预先定义的映射规则,将指定应用的数据流图转化为概率图模型的贝叶斯网络,其中所述网络包括两种状态的近似配置节点和三种状态的输入节点;基于结构学习,建立高效精确的依赖子图,同时根据不同近似技术的配置,基于节点参数学习,确定每个节点的条件概率表;根据变量消元推断算法,基于贝叶斯网络和条件概率表,精确求解所需边缘概率,输出误差分布情况。
Description
技术领域
本发明涉及专用加速器中多种近似技术的快速评估方法以及概率图模型的建立技术领域,特别是涉及一种专用加速器中基于概率图模型的多种近似技术误差评估方法。
背景技术
能源的功耗问题推动了新的近似技术的出现,通过降低图像处理、数据挖掘、模式识别等应用的输出结果质量,近似计算、存储和通信等方面都能在功耗和性能上得到大大提高,以便设计用于具有抗错能力的应用加速器。这种近似技术可以应用于指定应用加速器的不同组件,但在不同的层次上具有不同的质量/功耗(或性能)权衡。
为了在可接受的输出质量内最大限度地节省功率或提高性能,近似加速器的误差评估对于选择合适的近似技术是至关重要的。有两种方法常被用来评估近似技术对最终输出质量的误差影响。首先是蒙特卡罗仿真,使用大量的模拟器来获得精确的统计结果,在近似体系结构中常被用来捕捉应用程序精确的执行动态,该方法提供了可靠的评估,但也耗费大量的时间。另一种是通过快速分析建模来计算底层近似架构的应用输出质量,其用几个公式就能快速计算出近似配置的输出质量,但这种分析建模的方法通常局限于特定部件,例如近似加法器或乘法器只能用于计算部件、近似SRAM/DRAM/SSD/PCM只能用于存储部件,近似数据传输只能用于通信部件。特别是对于特定的近似组件,还存在精度/性能的权衡。因此,该方法在从局部组件直接扩展到整个体系结构时速度快,但难度大。
从以上分析来看,分析建模比蒙特卡罗仿真更快,并且更适合于近似加速器的早期设计,而概率论的方法是实现分析建模很好的一种选择。最近虽然又提出了几种近似加法器或精确标度的概率方法用于误差评估,但多种近似技术的混合使用可以更好地实现精确的质量/功耗权衡,目前却尚未被考虑。
发明内容
鉴于以上所述现有技术存在的不足,本发明的目的在于提供一种基于概率图模型的多种近似技术误差评估方法,通过概率图模型对多种近似技术进行快速统一的评估,以选择最佳的近似技术组合,在保证输出质量的前提下,实现功耗节省和性能提高的最大化。
为实现上述目的及其他相关目的,本发明提供一种基于概率图模型的多种近似技术误差评估方法,所述方法包括以下步骤:
步骤一:根据预先定义的映射规则,将指定应用的数据流图转化为概率图模型的贝叶斯网络,其中,所述数据流图可通过开源工具LLVM编译应用的C/C++源码获得,且所述贝叶斯网络包括两种状态的近似配置节点和三种状态的输入节点;
步骤二:根据贝叶斯网络结构,基于结构学习任务,建立高效精确的依赖子图,即贝叶斯表达式,同时根据其父节点的信息及不同近似技术的配置,基于节点参数学习,确定每个节点的条件概率表;
根据变量消元推断算法,基于贝叶斯网络和条件概率表,精确求解所需边缘概率,输出误差分布情况,其中该算法对比蒙特卡罗仿真,大大降少了时间的消耗,更适合近似加速器的早期设计。
本发明的优选实施方式中,所述映射规则包括:
(1)数据流图中的每个输入都被转换为具有{P(精确)、A(近似)、U(不可接受)}三种状态的X型节点,以跟踪错误传播,例如,与输入变量a有关的Xvar_a节点;
(2)数据流图中的每个操作符变成一个相应的变量节点X1+,其拥有一个具有三种状态{P,A,U}的计算结果和一个具有两种状态{P,A}的近似配置节点X*1+。例如,{X1<<,X*1<<},{X1>>,X*1>>}是左移操作符和右移操作符的节点对。其中,数字1表示相同操作的计数,用于在贝叶斯网络中定位,同时保持输入和操作符变量间边的连接,另外还添加了从操作符配置节点到操作符变量节点的粗体新边;
(3)插入非计算类型近似节点,并为其构建有向边连接到每个输入,不同的输入和常量通常分开处理。
本发明的优选实施方式中,所述结构学习任务包括:
针对已知贝叶斯网络结构和应用的信息提取,将数据流图转换为更加精确的贝叶斯表达式,为进一步的边缘概率推断提供最基本最精确的图信息。本发明的优选实施方式中,所述节点参数学习任务包括:
首先,节点参数主要是指结构图中每个节点对应的条件概率表英文名称为Conditional Probability Table,简称CPT,对于X*型的根节点,其条件概率表只有两种情况,如果它被配置为P(精确),就X*1<<而言,则P(X*1<<=P)=1,P(X*1<<=A)=0,如果选择近似加法,则P(X*1+=P)=0,P(X*1+=A)=1;而对于其余的X型节点的条件概率表,则需要依赖其父节点确定。
本发明的优选实施方式中,所述变量消元推断算法包括:
变量消元算法,英文名称为Variable Elimination,简称VE,可对概率图模型中的一系列分解因子进行逐一归并和加和,其包含四个输入:所有节点的条件概率表,观察节点列表X和查询节点列表Y,其中Y0是Y对应的观察值,以及消元顺序;输出是边缘概率P(X|Y=Y0),其中,该算法采用概率图模型依赖的拓扑顺序作为消元顺序。
与现有技术相比,本发明具有以下优点及效果:
1、本发明充分考虑了在任意部件上多种近似技术的混合使用,可以更好的解决的质量/功率权衡问题,在保证输出质量的前提下,实现功耗节省和性能提高的最大化。
2、本发明采用概率图模型对多种近似技术进行统一评估,在将特定的错误传播计算转换为一般的概率图模型问题后,可以通过概率图模型的表达、学习和推断三个核心部分来评估各种类型的近似技术,以便选择最佳的近似技术组合。
附图说明
图1是本发明一种专用加速器中基于概率图模型的多种近似技术误差评估方法的工作流程示意图;
图2是本发明一种专用加速器中基于概率图模型的多种近似技术误差评估方法的3x3高斯核数据流图;
图3是本发明一种专用加速器中基于概率图模型的多种近似技术误差评估方法的贝叶斯网络映射结果示意图;
图4是本发明一种专用加速器中基于概率图模型的多种近似技术误差评估方法的近似加法器GeAr的PMF实例图;
具体实施方式
为了使本发明实现的技术手段、创作特征与功效易于明白理解,以下结合图示说明具体实施方式,本领域技术人员可由本说明书所描述的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
如图1所示,本发明实施例提供一种基于概率图模型的多种近似技术误差评估方法,所述方法包括:
根据预先定义的映射规则,将指定应用的数据流图转化为概率图模型的贝叶斯网络,其中,所述数据流图可通过开源工具LLVM编译应用的C/C++源码获得,且所述贝叶斯网络包括两种状态的近似配置节点和三种状态的输入节点;
需要说明的是,在这里,本发明进一步考虑在可控输出质量内位翻转产生的可接受近似值,将输入节点X的状态扩展到{P(精确)、A(近似)、U(不可接受)},以跟踪错误传播,并用误差距离(E D)作为决定了节点状态的度量标准,公式如下所示:
其中,阈值按要求设定,如果实际值与近似值间的误差距离是0,则节点状态为P;如果误差距离小于阈值,则节点状态为A;否则节点状态为U。另外,不同于输入节点状态,近似配置节点X*遵从典型伯努利分布并有两种状态{P(精确),A(近似)},用来配置近似技术和方法,公式如下所示:
映射过程如图2和图3所示,其中,图2为3x3高斯核的数据流图,输入变量a,b,c,d,e,f,g,h,i从数据存储器中加载获得,1,2,4作为指令的一部分,是特定应用程序对应的常数,对于不同应用该常数不相同。请注意,为了良好的可读性和清晰性,图3只显示了图2中虚线区域的映射结果,所述映射规则包括:首先,数据流图中的每个输入都被转换为具有{P(精确)、A(近似)、U(不可接受)}三种状态的X型节点,以跟踪错误传播,与输入变量a有关的节点用Xvar_a节点表示;其次,数据流图中的每个操作符变成一个相应的变量节点X1+,其拥有一个具有三种状态{P,A,U}的计算结果和一个具有两种状态{P,A}的近似配置节点X*1+。{X1<<,X*1<<},{X1>>,X*1>>}表示左移操作符和右移操作符的节点对,其中数字1表示相同操作的计数,用于在贝叶斯网络中定位,同时保持输入和操作符变量间边的连接,另外还添加了从操作符配置节点到操作符变量节点的粗体新边;最后,插入非计算类型近似节点,并为其构建有向边连接到每个输入,不同的输入和常量通常分开处理。
根据贝叶斯网络结构,基于结构学习任务,建立高效精确的依赖子图,即贝叶斯表达式,同时根据其父节点的信息及不同近似技术的配置,基于节点参数学习,确定每个节点的条件概率表;
如图3所示,本发明实施例需要将指定应用的数据流图转换为精确的贝叶斯表达式,以供进一步推断,并且除了概率图结构外,还需要节点参数来完成推断和计算边缘概率,而每个节点(X或X*)的条件概率表必须根据其父节点和已配置的近似值确定。
本发明的优选实施方式中,对于X*型的根节点,其条件概率表只有两种情况,如果它被配置为P(精确),就X*1<<而言,则P(X*1<<=P)=1,P(X*1<<=A)=0;如果根据近似加法器的配置,则P(X*1+=P)=0,P(X*1+=A)=1;而对于其余的X型节点的条件概率表,则需要依赖其父节点确定。
同时考虑到近似技术的多样性,可以通过概率质量函数(Probability MassFunction,简称PMF)更详细地对每种给定的近似技术进行建模。PMF表示一个离散随机变量X等于确定值x的概率P,可表示为pX(x)=P(X=x)。如图4所示,如果两个操作数都是精确的,则8位近似加法器GeAr的PMF可以给出相应的CPT。这种机械建模可以通过快速的理论分析完成,而得到的这些近似技术的模型被存储在一个近似库中,可重复利用。
示例性的,通过多个近似操作数的结合,可以尽可能地完成条件概率表的计算,这个程只需要一次就可以通过近似库在同一操作符节点中重用多次。
根据变量消元推断算法,基于贝叶斯网络和条件概率表,精确求解所需边缘概率,输出误差分布情况,其中该算法对比蒙特卡罗仿真,大大降少了时间的消耗,更适合近似加速器的早期设计。
本发明实施例中,使用精确的VE算法作为基本推断算法,通过对概率图模型中的一系列分解因子进行逐一归并和加和,实现精确求解。其包含四个输入:所有节点的条件概率表,观察节点列表X和查询节点列表Y,其中Y0是Y对应的观察值,以及消元顺序;输出是边缘概率P(X|Y=Y0),其中VE的复杂性可以通过数值相乘和数值相加的次数衡量,并且本发明采用概率图模型依赖的拓扑顺序作为消元顺序。
上述实施例仅例示性说明本发明的原理及其应用过程,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修改。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (1)
1.一种专用加速器中基于概率图模型的多种近似技术误差评估方法,其特征在于,所述方法包括以下步骤:
步骤一:根据预先定义的映射规则,将指定应用的数据流图转化为概率图模型的贝叶斯网络,其中,所述数据流图可通过开源工具LLVM编译应用的C/C++源码获得,且所述贝叶斯网络包括两种状态的近似配置节点和三种状态的输入节点;
其中所述映射规则包括以下步骤:
(1)数据流图中的每个输入都被转换为具有{P(精确)、A(近似)、U(不可接受)}三种状态的X型节点,以跟踪错误传播;
(2)数据流图中的每个操作符变成一个相应的变量节点X1+,其拥有一个具有三种状态{P,A,U}的计算结果和一个具有两种状态{P,A}的近似配置节点X*1+,{X1<<,X*1<<},{X1>>,X*1>>}是左移操作符和右移操作符的节点对,其中数字1表示相同操作的计数,用于在贝叶斯网络中定位,同时保持输入和操作符变量间边的连接,另外还添加了从操作符配置节点到操作符变量节点的粗体新边;
(3)插入非计算类型近似节点,并为其构建有向边连接到每个输入,不同的输入和常量分开处理;
步骤二:根据贝叶斯网络结构,基于结构学习任务,建立高效精确的依赖子图,即贝叶斯表达式,同时根据其父节点的信息及不同近似技术的配置,基于节点参数学习,确定每个节点的条件概率表;
其中所述结构学习任务指针对已知贝叶斯网络结构和应用的信息提取,将数据流图转换为更加精确的贝叶斯表达式,为进一步的边缘概率推断提供最基本最精确的图信息;
所述节点参数学习任务包括:
首先,节点参数主要是指结构图中每个节点对应的条件概率表,对于X*型的根节点,其条件概率表只有两种情况,如果它被配置为P(精确),就X*1<<而言,则P(X*1<<=P)=1,P(X*1<<=A)=0,如果选择近似加法,则P(X*1+=P)=0,P(X*1+=A)=1;而对于其余X型节点的条件概率表,则需要依赖其父节点确定。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110094797.6A CN112800669B (zh) | 2021-01-25 | 2021-01-25 | 专用加速器中基于概率图模型的多种近似技术误差评估方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110094797.6A CN112800669B (zh) | 2021-01-25 | 2021-01-25 | 专用加速器中基于概率图模型的多种近似技术误差评估方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112800669A CN112800669A (zh) | 2021-05-14 |
CN112800669B true CN112800669B (zh) | 2024-03-15 |
Family
ID=75811543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110094797.6A Active CN112800669B (zh) | 2021-01-25 | 2021-01-25 | 专用加速器中基于概率图模型的多种近似技术误差评估方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112800669B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107103000A (zh) * | 2016-02-23 | 2017-08-29 | 广州启法信息科技有限公司 | 一种基于关联规则与贝叶斯网络集成的推荐技术 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11429862B2 (en) * | 2018-03-20 | 2022-08-30 | Sri International | Dynamic adaptation of deep neural networks |
CN108664400B (zh) * | 2018-05-11 | 2020-08-04 | 北京航空航天大学 | 一种基于相依贝叶斯网络的故障诊断技术的构建方法 |
-
2021
- 2021-01-25 CN CN202110094797.6A patent/CN112800669B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107103000A (zh) * | 2016-02-23 | 2017-08-29 | 广州启法信息科技有限公司 | 一种基于关联规则与贝叶斯网络集成的推荐技术 |
Non-Patent Citations (1)
Title |
---|
何林海 ; .基于贝叶斯网络的概率图模型变分近似推理研究.山东农业工程学院学报.2019,(04),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN112800669A (zh) | 2021-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7302656B2 (en) | Method and system for performing functional verification of logic circuits | |
EP3846034B1 (en) | Systems and methods for automated testing using artificial intelligence techniques | |
Sekanina et al. | Automated search-based functional approximation for digital circuits | |
US7890903B2 (en) | Method and system for formal verification of an electronic circuit design | |
US8533653B2 (en) | Support apparatus and method for simplifying design parameters during a simulation process | |
Liu et al. | An exact MCMC accelerator under custom precision regimes | |
Wei et al. | Design space exploration for softmax implementations | |
Vasicek et al. | How to evolve complex combinational circuits from scratch? | |
CN116974868A (zh) | 芯片功耗估计装置、方法、电子设备及存储介质 | |
Cruz et al. | Automated functional test generation for digital systems through a compact binary differential evolution algorithm | |
Vaverka et al. | Evolving component library for approximate high level synthesis | |
Wendler et al. | A fast BDD minimization framework for approximate computing | |
US10628543B1 (en) | Systems and methods for estimating a power consumption of a register-transfer level circuit design | |
CN112800669B (zh) | 专用加速器中基于概率图模型的多种近似技术误差评估方法 | |
Keszocze | BDD-based error metric analysis, computation and optimization | |
CN116050311A (zh) | 一种基于完备仿真的组合运算电路等价性验证方法及系统 | |
US11120184B2 (en) | Satisfiability sweeping for synthesis | |
Shih et al. | Design and implementation of decision-tree (DT) online training hardware using divider-free GI calculation and speeding-up double-root classifier | |
Boland et al. | Word-length optimization beyond straight line code | |
Coward et al. | Datapath Verification via Word-Level E-Graph Rewriting | |
Blanchette et al. | Towards strong higher-order automation for fast interactive verification | |
Sekanina | Evolutionary algorithms in approximate computing: A survey | |
Mao et al. | Automated synthesis of asynchronous Tsetlin machines on FPGA | |
Kaiser et al. | BDD complexity reduction by component fault trees | |
Ingole et al. | Instruction set design for elementary set in tensilica xtensa |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |