CN116306876A - 一种神经网络转化方法、电子设备和存储介质 - Google Patents
一种神经网络转化方法、电子设备和存储介质 Download PDFInfo
- Publication number
- CN116306876A CN116306876A CN202211262230.6A CN202211262230A CN116306876A CN 116306876 A CN116306876 A CN 116306876A CN 202211262230 A CN202211262230 A CN 202211262230A CN 116306876 A CN116306876 A CN 116306876A
- Authority
- CN
- China
- Prior art keywords
- neural network
- decision tree
- layer
- decision
- computer program
- 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.)
- Pending
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 119
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000003860 storage Methods 0.000 title claims abstract description 20
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 11
- 238000003066 decision tree Methods 0.000 claims abstract description 99
- 230000004913 activation Effects 0.000 claims abstract description 20
- 238000004590 computer program Methods 0.000 claims description 31
- 239000011159 matrix material Substances 0.000 claims description 16
- 238000010606 normalization Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000012549 training Methods 0.000 claims description 9
- 238000013138 pruning Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 17
- 238000012545 processing Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000001537 neural effect Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 3
- 230000006698 induction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 241001270131 Agaricus moelleri Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/042—Knowledge-based neural networks; Logical representations of neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Analysis (AREA)
- Medical Treatment And Welfare Office Work (AREA)
Abstract
本申请实施例提供一种神经网络转化方法、电子设备以及存储介质。所述方法应用于终端设备,包括:初始化决策树,设置所述决策树的根;以神经网络的有效滤波器作为决策规则,从所述决策树的根开始进行叶分支,直到所述决策树覆盖所述神经网络的所有有效滤波器,其中,所述神经网络为具有分段线性激活的神经网络。根据本申请实施例的方法,将神经网络转化为决策树,基于决策树解释神经网络,从而解决神经网络的黑盒问题。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种神经网络转化方法、电子设备和存储介质。
背景技术
在计算机技术领域,神经网路的应用越来越广泛。但是,神经网络预测的黑盒性质阻碍了其在许多行业中更广泛和更可靠的应用,例如健康和安全领域。为此,需要构建解释神经网络决策的方法,其被称为可解释人工智能(XAI)。解释神经网络决策的成果可以分为特征图和将神经网络与可解释方法相连接。
特征图是突出显示输入区域的方法,神经网络在预测时利用这些区域。早期的工作[8]采用神经网络输出相对于输入的梯度,以可视化整个网络的特定输入线性化。通过该方法获得的特征图通常是有噪声,并无法清楚地理解所做出的决策。
另一种跟踪方法利用神经网络输出相对于激活的导数,通常是在完全连接层之前。由此追踪方法获得的特征图在突出显示与预测类相关的区域的意义上更清晰。尽管对于诸如检查决策的支持区域是否合理的目的是有用的,但是这些方法仍然缺乏为什么做出这种决策的详细逻辑推理。
因此,需要一种解释神经网络决策的方法。
发明内容
针对现有技术下如何解释神经网络决策的问题,本申请提供了一种神经网络转化方法、电子设备,本申请还提供一种计算机可读存储介质。
本申请实施例采用下述技术方案:
第一方面,本申请提供一种神经网络转化方法,所述方法应用于终端设备,包括:
初始化决策树,设置所述决策树的根;
以神经网络的有效滤波器作为决策规则,从所述决策树的根开始进行叶分支,直到所述决策树覆盖所述神经网络的所有有效滤波器,其中,所述神经网络为具有分段线性激活的神经网络。
在第一方面的一种实现方式中,所述从所述决策树的根开始进行叶分支,包括:
每次针对上一次分支出的节点进行所述叶分支,每次所述叶分支对应一个有效滤波器,所述有效滤波器的对应次序按照,所述神经网络中同一层中有效滤波器的排序以及所述神经网络中不同层的排序。
在第一方面的一种实现方式中,针对全连接层,以有效矩阵作为所述决策规则。
在第一方面的一种实现方式中,针对跳转连接层,以残差有效矩阵作为所述决策规则。
在第一方面的一种实现方式中,针对归一化层,将所述归一化层分别嵌入到激活前或激活后归一化之后或之前的线性层中。
在第一方面的一种实现方式中,针对卷积层,以有效卷积作为所述决策规则。
在第一方面的一种实现方式中,所述方法还包括:
根据所述决策树的违反规则和/或冗余规则,对所述决策树进行无损修剪;
和/或,
根据训练所述神经网络期间实现的类别,对所述决策树进行无损修剪。
第二方面,本申请提供一种神经网络计算方法,所述方法应用于终端设备,包括:
获取用于计算的神经网络;
基于第一方面所述的方法,将所述神经网络转化为决策树;
使用所述决策树进行计算。
第三方面,本申请提供一种电子设备,所述电子设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当所述计算机程序指令被该处理器执行时,触发所述电子设备执行第一方面所述的方法步骤。
第四方面,本申请提供一种电子设备,所述电子设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当所述计算机程序指令被该处理器执行时,触发所述电子设备执行第二方面所述的方法步骤。
第五方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行第一方面或第二方面所述的方法。
根据本申请实施例所提出的上述技术方案,至少可以实现下述技术效果:
根据本申请实施例的方法,将神经网络转化为决策树,基于决策树解释神经网络,从而解决神经网络的黑盒问题。并且,与神经网络等价的决策树能够有效减少由于增加的内存要求而带来的神经网络计算成本。
附图说明
图1所示为根据本申请一实施例的方法流程示意图;
图2所示为根据本申请一实施例的决策树示意图;
图3所示为根据本申请一实施例的决策树示意图;
图4所示为根据本申请一实施例的决策树示意图;
图5所示为根据本申请一实施例的模型响应示意图;
图6所示为根据本申请一实施例的决策树示意图;
图7所示为根据本申请一实施例的决策树示意图;
图8所示为根据本申请一实施例的神经网络计算流程图;
图9所示为根据本申请一实施例的电子设备的硬件结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
针对现有技术下如何解释神经网络决策的问题,本申请提供了一种神经网络转化方法。将具有分段线性激活的神经网络转化为等价的决策树表示。诱导树输出与神经网络完全相同,它不限制或不需要以任何方式改变神经结构。通过决策树解释神经网络的每个决策。
在本申请一实施例中,将神经网络转化为决策树的方法流程中,以神经网络的每层的有效的滤波器(有效滤波器)用作决策树对应层的决策规则。
具体的,图1所示为根据本申请一实施例的方法流程示意图。电子设备执行如图1所示的流程以实现将分段线性激活的神经网络转化为决策树。
S100,初始化决策树,设置决策树的根。
S110,从决策树的根开始进行叶分支,决策规则是神经网络的有效滤波器。
具体的,在S110中,从决策树的根分支出的节点开始,每次针对上一次分支出的节点进行叶分支,每次叶分支对应一个有效滤波器。有效滤波器的对应次序按照同一层中滤波器的排序以及不同层的排序。
例如,从决策树的根开始进行第一次叶分支(例如,分支到k个节点),决策规则是神经网络的第一层的第一个有效滤波器。
具体地,k对应于使用的激活函数中分段线性区域的数量。
对第一次叶分支的结果(例如,k个节点)中的每一个节点进行第二次叶分支,决策规则是神经网络的第一层的第一个有效滤波器。
持续进行叶分支,直到神经网络的第一层的所有有效滤波器被覆盖。
继续进行叶分支,决策规则是神经网络的第二层的第一个有效滤波器。持续进行叶分支,直到神经网络的所有层的所有的有效滤波器被覆盖。
具体的,在一实施例中,S110包括下述流程。
S111,对决策树的第s层的每一个决策树节点进行叶分支,获取决策树的第s+1层的决策树节点,叶分支的决策规则为神经网络第i层的第m个有效滤波器。
在S111中,s、i、m的初始值为1,决策树的第1层的决策树节点即为决策树的根。
S112,判断神经网络第i层的有效滤波器是否被全部覆盖。
如果神经网络第i层的有效滤波器被全部覆盖,执行S113。
S113,判断神经网络的所有层是否被全部覆盖。
如果神经网络的所有层被全部覆盖,执行S114。
S114,返回决策树,叶分支结束。
如果神经网络的所有层没有被全部覆盖,执行S115。
S115,i的值加1,m的值置为1。
如果神经网络第i层的有效滤波器没有被全部覆盖,执行S116。
S116,m的值加1。
在S115或者S116之后,执行S117。
S117,s的值加1。
S117之后,返回S111。
以下分别针对不同结构的分段线性激活的神经网络,描述神经网络转化为等价的决策树表示的流程。
(一)全连接网络(全连接层)
假设Wi是神经网络的第i层的权重矩阵。令σ为任意分段线性激活函数,且x0为神经网络的输入。然后,前馈神经网络的输出和中间特征可以表示如下:
注意,在公式1中,省略任何最终激活(如softmax),并且忽略偏差项,因为其可以通过将1值连接到每个xi来简单地包括。激活函数σ用作逐元素标量乘法,因此公式1可以写入以下内容:
在公式2中:
注意,ai-1可以直接解释为分类结果,因为它包括激活函数中的线性区域的指标(斜率)。
公式2可以重新组织如下:
使用公式3,公式1可以重写如下:
在公式5中,分类层直到第i层被定义为:ci-1=a0||a1||...ai-1,||是级联运算符。
根据公式5可以直接观察到,第i层的有效矩阵仅取决于来自先前层的分类向量。这表示将进行下一分类的过滤器的计算仅取决于以前的分类。
因此,层i被表示为kmi路分类,其中mi是每个层i中的滤波器的数量,并且k是激活中的线性区域的总数。因此,层i中的这种分类可以由深度为mi的树表示,其中任何深度的节点被分支为k个分类。
综上,在根据本申请一实施例,将全连接神经网络转化为决策树的方法流程中,以全连接神经网络的每层的有效矩阵为S110所使用的有效滤波器,以有效矩阵用作决策树对应层的决策规则(分类规则)。具体的,基于公式5计算全连接神经网络的有效矩阵,从而确定决策树的决策规则。
进一步的,在一实施例中,以修正线性单元(Rectified Linear Unit,ReLU)为激活函数,针对ReLU神经网络,可以采用下述算法流程实现全连接神经网络转化为决策树。
算法1:
在算法1中,a∈0,1。
算法1中的第4-8行对应于决策树中的一个节点,在该节点中,做出简单的是/否决策。
(二)跳转连接
以下述类型的残差神经网络(residual neural network)为例:
使用公式6,参照公式1-5,可以将rxi重写如下:
(三)归一化层
由于神经网络中的归一化层是线性的,并且在训练之后,它们可以分别嵌入到激活前或激活后归一化之后或之前的线性层中。因此,在一实施例中,在将神经网络转化为决策树表示的过程中,对于归一化层不需要单独的转化。
(四)卷积神经网络(卷积层)
令Ki:Ci+1×Ci×Mi×Ni为第i层的卷积核,应用于输入Fi:Ci×Hi×Wi。
将卷积神经网络CNN(F0)的输出和中间特征Fi写入如下:
参照公式1-5,基于激活函数的逐元素式标量乘法性质,可以编写如下内容:
在公式10中,ai-1与Ki的空间大小相同,并且由先前特征Fi-1中相应区域的激活函数斜率组成。
注意,上述仅适用于特定空间区域,并且存在单独的ai-1表示卷积Ki-1适用于每个空间区域。例如,如果Ki-1是一个3×3内核,存在一个单独的ai-1表示应用卷积的所有3×3区域。
c定义为之前各层所有相关区域的级联分类结果。在公式11中,有效卷积仅取决于来自激活的分类,这使得树等等价能够类似于对全连接网络的分析。与全连接层情况的区别在于,卷积层的许多决策是在部分输入区域而不是整个X0上做出的。
进一步的,图2所示为根据本申请一实施例的决策树示意图。二层ReLU神经网络转化成的决策树如图2所示。
参照图1所示流程以及图2所示决策树,根据本申请实施例的方法,由神经网络转化成的等效决策树的深度(决策树的总层数)是:
决策树最后一层的树分支总数(决策树的类别总数)为2d。随着神经网络的有效滤波器数量的增加,决策树的最后一层的树分支总数呈指数型增长。例如,如果神经网络的第一层包含64个滤波器,则在决策树中将存在至少264个分支。
为了控制决策树的类别总数,在一实施例中,根据神经网络的等价决策树的违反规则以及冗余规则,对神经网络的等价决策树进行无损修剪。
例如,将神经网络拟合到:y=x2方程。神经网络具有3个密基层,第一层以及第二层分别有两个滤波器,最后一层有一个滤波器。网络在全连接层之后使用leaky-ReLU激活,除了最后一层没有激活。回归
图3所示为根据本申请一实施例的决策树示意图。y=x2回归神经网络转化成的决策树如图3所示。
在决策树中,301区域中的每个矩形框表示一个决策规则,框中的左子框表示决策规则不成立,右子框表示决策规则成立。
假设,决策规则是通过将WTx+β>0转换为作用于x的直接不等式来获得的。因为x是一个标量,因此决策规则可以用于特定回归y=x2来完成。在每个叶子中,网络基于到目前为止的决定应用由302区域中的矩形表示的线性函数。
由于决策树中的许多规则是冗余的,因此决策树中的一些路径变得无效。
例如,针对冗余规则,一种实现方式是,在x<-1.16规则成立之后检查x<0.32。这直接为该节点创建了无效的右子节点。因此,在这种情况下,可以通过移除右子框并将分类规则合并到更严格的规则来清理树:在特定情况下,x<-1.16。
图4所示为根据本申请一实施例的决策树示意图。
通过清理图3所示的决策树,可以获得图4所示的决策树,图4所示的决策树包括5个类别(401~405),而不是16个。
图5所示为根据本申请一实施例的模型响应示意图。图4所示的决策树的模型响应如图5所示。
基于图4所示的决策树,神经网络的解释为:对于边界通过决策树表示确定的每个区域,网络通过线性方程近似非线性y=x2方程。
可以清楚地解释并从决策树中进行推断,其中一些如下。神经网络不能掌握回归问题的对称性质,这从决策边界不对称的事实中显而易见。在-1.16以下和1以上的区域是无界的,因此,当x超出这些边界时,神经决策失去准确性。
进一步的,由于类别的数量可能比训练数据多,而在训练神经网络期间很可能不会实现所有类别。因此,这些类别也可以基于应用来修剪。根据训练神经网络期间实现的类别,对决策树进行无损修剪。
具体的,如果应用允许,属于这些类别的数据可以视为无效。
例如,针对半月分类问题。除了最后一层具有sigmoid激活外,训练具有leaky-ReLU激活的3层全连接的神经网络。除了最后一层具有1个滤波器之外,每层具有2个滤波器。
图6所示为根据本申请一实施例的决策树示意图。图6所示的决策树为对应某一半月分类神经网络的分类树。
如图6所示,由训练的网络引起的清理决策树。决策树找到其边界由树中的规则确定的许多类别,其中每个类别都分配了一个类。
图7所示为根据本申请一实施例的由用于半月数据集的决策树进行的分类示意图。
在图7中,用不同的灰度说明不同的类别。可以从决策树进行一些推断,例如一些区域非常明确,并且它们进行的分类完全与训练数据完全一致,因此,使这些区域非常可靠。存在无界类别,其帮助获得准确的分类边界,但未能提供训练数据的紧凑表示,这些可能与神经决策所做出的不准确推断相对应。也出现了一些类别,尽管没有任何训练数据属于它们。
根据本申请实施例的方法,将神经网络转化为决策树,基于决策树解释神经网络,从而解决神经网络的黑盒问题。
进一步的,基于本申请实施例提出的神经网络转化方法,本申请一实施例还提出了一种神经网络计算方法。
图8所示为根据本申请一实施例的神经网络计算流程图。电子设备执行如图8所示的下述流程以实现神经网络计算。
S800,获取待计算数据。
S810,获取用于计算待计算数据的第一神经网络。
S820,基于本申请实施例提出的神经网络转化方法,将第一神经网络转化为第一决策树。
S830,使用第一决策树,对待计算数据进行计算,获取计算结果。
相较于神经网络,决策树表示提供一些计算优势。
表1所示为某游戏问题的计算和内存分析结果数据。
表1
在表1中,比较神经网络及其树的参数、浮点比较和乘法或加法运算的数量。由于诱导树是神经网络的展开,因此它覆盖所有可能的路径并将所有可能的有效滤波器保持在存储器中。因此,如所预期的那样,神经网络的树表示中的参数数量大于网络的参数数量。在诱导树中,在每个层i中,最大mi滤波器直接应用于输入,而在神经网络中,最大mi滤波器总是应用于对先前的特征,其通常比特征维度中的输入大得多。因此,在计算方面,树表示比神经网络更有优势。
在本申请实施例中,方法流程的各步骤可以以功能分为各种模块实现,各个模块的划分仅仅是一种逻辑功能的划分,在实施本申请实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
具体的,本申请实施例所提出的装置在实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块以软件通过处理元件调用的形式实现,部分模块通过硬件的形式实现。例如,检测模块可以为单独设立的处理元件,也可以集成在电子设备的某一个芯片中实现。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,ASIC),或,一个或多个数字信号处理器(Digital Singnal Processor,DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,FPGA)等。再如,这些模块可以集成在一起,以片上装置(System-On-a-Chip,SOC)的形式实现。
在实际应用场景中,本说明书所示实施例的方法流程可以由安装在电子设备上的电子芯片所实现。因此,本申请一实施例提出了一种电子芯片。例如,电子芯片安装在电子设备上,电子芯片包括:
处理器,其用于执行存储在存储器上的计算机程序指令,其中,当该计算机程序指令被该处理器执行时,触发电子芯片执行本申请实施例所述的方法步骤。
本申请一实施例还提出了一种电子设备。
图9所示为根据本申请一实施例的电子设备结构示意图。
电子设备900包括用于存储计算机程序指令的存储器910和用于执行程序指令的处理器920,其中,当该计算机程序指令被该处理器执行时,触发电子设备执行如本申请实施例所述的方法步骤。
具体的,在本申请一实施例中,上述一个或多个计算机程序被存储在上述存储器中,上述一个或多个计算机程序包括指令,当上述指令被上述设备执行时,使得上述设备执行本申请实施例所述的方法步骤。
具体的,在本申请一实施例中,电子设备的处理器可以是片上装置SOC,该处理器中可以包括中央处理器(Central Processing Unit,CPU),还可以进一步包括其他类型的处理器。具体的,在本申请一实施例中,电子设备的处理器可以是PWM控制芯片。
具体的,在本申请一实施例中,涉及的处理器可以例如包括CPU、DSP、微控制器或数字信号处理器,还可包括GPU、嵌入式神经网络处理器(Neural-network Process Units,NPU)和图像信号处理器(Image Signal Processing,ISP),该处理器还可包括必要的硬件加速器或逻辑处理硬件电路,如ASIC,或一个或多个用于控制本申请技术方案程序执行的集成电路等。此外,处理器可以具有操作一个或多个软件程序的功能,软件程序可以存储在存储介质中。
具体的,在本申请一实施例中,电子设备的存储器可以是只读存储器(read-onlymemory,ROM)、可存储静态信息和指令的其它类型的静态存储设备、随机存取存储器(random access memory,RAM)或可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者还可以是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何计算机可读介质。
具体的,在本申请一实施例中,处理器可以和存储器可以合成一个处理装置,更常见的是彼此独立的部件,处理器用于执行存储器中存储的程序代码来实现本申请实施例所述方法。具体实现时,该存储器也可以集成在处理器中,或者,独立于处理器。
进一步的,本申请实施例阐明的设备、装置、模块,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。
本领域内的技术人员应明白,本申请实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。
在本申请所提供的几个实施例中,任一功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
具体的,本申请一实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行本申请实施例提供的方法。
本申请一实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,当其在计算机上运行时,使得计算机执行本申请实施例提供的方法。
本申请中的实施例描述是参照根据本申请实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
还需要说明的是,本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a和b,a和c,b和c或a和b和c,其中a,b,c可以是单个,也可以是多个。
本申请实施例中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以意识到,本申请实施例中描述的各单元及算法步骤,能够以电子硬件、计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述,仅为本申请的具体实施方式,任何熟悉本技术领域的技术人员在本申请公开的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以所述权利要求的保护范围为准。
Claims (11)
1.一种神经网络转化方法,其特征在于,所述方法应用于终端设备,包括:
初始化决策树,设置所述决策树的根;
以神经网络的有效滤波器作为决策规则,从所述决策树的根开始进行叶分支,直到所述决策树覆盖所述神经网络的所有有效滤波器,其中,所述神经网络为具有分段线性激活的神经网络。
2.根据权利要求1所述的方法,其特征在于,所述从所述决策树的根开始进行叶分支,包括:
每次针对上一次分支出的节点进行所述叶分支,每次所述叶分支对应一个有效滤波器,所述有效滤波器的对应次序按照,所述神经网络中同一层中有效滤波器的排序以及所述神经网络中不同层的排序。
3.根据权利要求1所述的方法,其特征在于,针对全连接层,以有效矩阵作为所述决策规则。
4.根据权利要求1所述的方法,其特征在于,针对跳转连接层,以残差有效矩阵作为所述决策规则。
5.根据权利要求1所述的方法,其特征在于,针对归一化层,将所述归一化层分别嵌入到激活前或激活后归一化之后或之前的线性层中。
6.根据权利要求1所述的方法,其特征在于,针对卷积层,以有效卷积作为所述决策规则。
7.根据权利要求1-6所述的方法,其特征在于,所述方法还包括:
根据所述决策树的违反规则和/或冗余规则,对所述决策树进行无损修剪;
和/或,
根据训练所述神经网络期间实现的类别,对所述决策树进行无损修剪。
8.一种神经网络计算方法,其特征在于,所述方法应用于终端设备,包括:
获取用于计算的神经网络;
基于权利要求1-7中任一项所述的方法,将所述神经网络转化为决策树;
使用所述决策树进行计算。
9.一种电子设备,其特征在于,所述电子设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当所述计算机程序指令被该处理器执行时,触发所述电子设备执行如权利要求1-7中任一项所述的方法步骤。
10.一种电子设备,其特征在于,所述电子设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当所述计算机程序指令被该处理器执行时,触发所述电子设备执行如权利要求8所述的方法步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如权利要求1-8中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/962,559 | 2022-10-10 | ||
US17/962,559 US20240119288A1 (en) | 2022-10-10 | 2022-10-10 | Method for converting neural network, electronic device and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116306876A true CN116306876A (zh) | 2023-06-23 |
Family
ID=86780279
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211262230.6A Pending CN116306876A (zh) | 2022-10-10 | 2022-10-14 | 一种神经网络转化方法、电子设备和存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240119288A1 (zh) |
JP (1) | JP7375250B1 (zh) |
CN (1) | CN116306876A (zh) |
WO (1) | WO2024077651A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201810736D0 (en) * | 2018-06-29 | 2018-08-15 | Microsoft Technology Licensing Llc | Neural trees |
US20210019635A1 (en) | 2019-07-15 | 2021-01-21 | Ramot At Tel Aviv University | Group specific decision tree |
CN110784760B (zh) * | 2019-09-16 | 2020-08-21 | 清华大学 | 一种视频播放方法、视频播放器及计算机存储介质 |
CN111898692A (zh) * | 2020-08-05 | 2020-11-06 | 清华大学 | 神经网络到决策树的转换方法、存储介质及电子设备 |
CN113489751B (zh) * | 2021-09-07 | 2021-12-10 | 浙江大学 | 一种基于深度学习的网络流量过滤规则转化方法 |
-
2022
- 2022-10-10 US US17/962,559 patent/US20240119288A1/en active Pending
- 2022-10-14 CN CN202211262230.6A patent/CN116306876A/zh active Pending
- 2022-10-20 WO PCT/CN2022/126361 patent/WO2024077651A1/zh unknown
-
2023
- 2023-06-13 JP JP2023097307A patent/JP7375250B1/ja active Active
Also Published As
Publication number | Publication date |
---|---|
WO2024077651A1 (zh) | 2024-04-18 |
JP2024056120A (ja) | 2024-04-22 |
US20240119288A1 (en) | 2024-04-11 |
JP7375250B1 (ja) | 2023-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Laskey | Sensitivity analysis for probability assessments in Bayesian networks | |
Mirikitani et al. | Recursive bayesian recurrent neural networks for time-series modeling | |
Olden et al. | An accurate comparison of methods for quantifying variable importance in artificial neural networks using simulated data | |
Delgado et al. | Efficient solutions to factored MDPs with imprecise transition probabilities | |
Roh et al. | Design of fuzzy radial basis function-based polynomial neural networks | |
Kaushik et al. | COCOMO estimates using neural networks | |
US6490573B1 (en) | Neural network for modeling ecological and biological systems | |
WO2012177913A1 (en) | Method and apparatus for a local competitive learning rule that leads to sparse connectivity | |
Arteaga et al. | Universal approximation by radial basis function networks of Delsarte translates | |
Kohn | A declarative theory for rational controllers | |
Boutsinas et al. | Artificial nonmonotonic neural networks | |
Kargin et al. | Internet of Things smart rules engine | |
Chen | Applications of XAI for forecasting in the manufacturing domain | |
US20210374545A1 (en) | Method and apparatus of increasing knowledge based on uncertainty in neural networks | |
Fernandez-Gauna et al. | Reinforcement learning endowed with safe veto policies to learn the control of Linked-Multicomponent robotic systems | |
CN116306876A (zh) | 一种神经网络转化方法、电子设备和存储介质 | |
Sharma et al. | Software effort estimation using neuro fuzzy inference system: Past and present | |
Dikopoulou et al. | From undirected structures to directed graphical lasso fuzzy cognitive maps using ranking-based approaches | |
Konar et al. | Modeling cognition with fuzzy neural nets | |
CN109697511B (zh) | 数据推理方法、装置及计算机设备 | |
Abdellatif | A comparison study between soft computing and statistical regression techniques for software effort estimation | |
Schafer | Dijkstra’s Algorithm | |
KR102557800B1 (ko) | 차분 프라이버시 기반 의사결정 트리 생성 방법 및 장치 | |
CN115879634A (zh) | 一种气象环境因素与农业干旱因果推断方法 | |
Jeczmionek et al. | Global Sensitivity Analysis and Low Magnitude Pruning for Convolutional Neural Networks Reduction in Image Net Based on Transfer Learning State of the Art Models |
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 |