CN112766503A - 基于关键层回滚机制的卷积神经网络模型容错方法 - Google Patents
基于关键层回滚机制的卷积神经网络模型容错方法 Download PDFInfo
- Publication number
- CN112766503A CN112766503A CN202110258455.3A CN202110258455A CN112766503A CN 112766503 A CN112766503 A CN 112766503A CN 202110258455 A CN202110258455 A CN 202110258455A CN 112766503 A CN112766503 A CN 112766503A
- Authority
- CN
- China
- Prior art keywords
- layer
- key
- detection
- network
- model
- 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.)
- Granted
Links
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/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于关键层回滚机制的卷积神经网络模型容错方法,包括以下步骤:S1、寻找关键层,通过对原模型添加参数λ进行训练的方式寻找对分类影响最大的关键节点,确定网络的关键层分布;S2、输入分类图片,通过卷积神经网络对输入图片进行识别,获得关键层的输出特征,根据输出特征得到检测阈值;S3、将硬件约束进行建模,利用模拟退火算法求出在满足硬件条件约束的情况下的检测点数量。本发明通过分析实验获得卷积神经网络的关键节点分布,以此为依据获得网络的关键层和关键层的输出分布。在满足时间和空间约束的条件下,在关键层设置关键节点,当关键层输出异常的时候,利用检查点回滚机制实现卷积神经网络的容错。
Description
技术领域
本发明涉及一种基于关键层回滚机制的卷积神经网络模型容错方法。
背景技术
传统的神经网络容错方法多数是在上世纪九十年代提出,针对的对象多数为MLP(多层感知机)。在传统的容错观点中,神经网络需要依靠网络中所有的神经元进行计算得到最终结果,这个过程需要网络中的神经元全部参与计算,但是一些神经元并没有实际的功能,所以神经网络通常不是用精确的或最少的神经元数量来建立的。这种参数过度导致了其拥有一定的自然的鲁棒性和潜在的容错能力。然而,过量错误仍然可以导致其出现错误。传统的容错考虑的仅是网络参数出错的情况,分别从添加冗余节点、修改训练方法中的正则项或将训练过程和容错转化为非线性优化算法求解的优化问题三个方面解决神经网络中的参数容错。
第一种方法是在神经网络中显示的添加冗余,通过在预先训练好的网络中显式地插入冗余来实现,添加位置主要是在神经网络中的隐藏层神经元及其相关权重中。这些方法从一个最小的网络开始,这个网络学习给定的输入/输出模式映射或执行所需的计算任务,然后复制隐藏层的神经元或有选择地添加节点来共享关键神经元的负载。最早是在L.C.Chu中提出通过显示添加冗余来提高网络的容错能力。随后C.-T.Chiu提出灵敏度为标准删除部分节点,再添加冗余节点,并将扰动注入以获得一个容错的神经网络。同时分别利用不同的依据添加冗余神经元,提高网络的容错能力,但该方法针对的网络结构简单,针对的错误类型单一,仅能在小型的MLP上进行实现。但该方法为我们后面的研究提供了思路。
前面的方法是考虑在训练后进行容错,而随后研究人员考虑在训练时期进行容错。第二种方法是修改模型训练方法,通过修改神经网络模型的训练正则项,或类似于对抗训练的方式进行容错。一方面,一些工作侧重于为网络提供训练经验,以开发通过在训练中添加噪声、扰动或直接注入故障来获得容错网络的技术。其中利用改进的BP算法实现容错能力的提高。另一方面,其他一些工作关注改进训练方法中的正则化提高传统算法的容错能力,通过改变训练的输入或反向传播中的约束规则来改变权重,使其适应对应的错误类型。这种方式和现在的对抗训练有相似之处,其思路值得借鉴。
第三种方法是将训练过程和容错转化为非线性优化算法求解的优化问题,从而找到执行给定任务并同时满足容错约束的神经网络拓扑及其参数。通常,这类容错问题被表述为一个约束极大极小优化问题,其目标是在神经网络模型中存在单个单元故障的情况下,使每个输入与期望输出的最大偏差最小化。S.-F.Chen采用遗传算法来提高前馈神经网络对开放故障的容忍度,在开放故障中,一个隐藏节点及其相关的权值被认为是错误的。该方法充分考虑了遗传算法的核心思想,保持了神经网络的总体状态,利用容错测度的适应度,促进种群进化出良好的容错能力。研究人员尝试使用其他的算法来解决该问题,这样的求最大值最小值问题的主要难点是目标函数一般是不可微的,因此基于求导的梯度下降方法不适合用来解决这些问题。
发明内容
本发明的目的在于克服现有技术的不足,提供一种通过分析实验获得卷积神经网络的关键节点分布,在满足时间和空间约束的条件下,在关键层设置关键节点,当关键层输出异常的时候,利用检查点回滚机制实现卷积神经网络的容错,具有一定的通用性的基于关键层回滚机制的CNN容错方法。
本发明的目的是通过以下技术方案来实现的:一种基于关键层回滚机制的CNN容错方法,包括以下步骤:
S1、寻找关键层,通过对原模型添加参数λ进行训练的方式寻找对分类影响最大的关键节点,依据关键节点的分布确定网络的关键层分布;
S2、输入分类图片,通过卷积神经网络对输入图片进行识别,获得关键层的输出特征;并根据输出特征得到检测阈值,用于判定检测点的输出是否存在异常;
S3、将硬件约束进行建模,利用模拟退火算法求出在满足硬件条件约束的情况下的检测点数量。
进一步地,所述步骤S1具体包括以下子步骤:
S11、选择一个卷积结构的网络模型,训练模型并获得原始模型的权重;
S12、修改原始网络模型的结构,在每层网络中的神经元后面添加参数λ,使用添加的参数λ表示对应层神经元的关键程度,参数λ值越高对应神经元的关键程度越高;
S13、使用原模型输出和修改后模型输出构建损失函数,进行训练,直至原模型输出和修改模型的输出精度误差小于1%时停止训练,此时添加的参数λ代表对应神经元的关键程度;
S14、通过可视化展示步骤S13获得的参数λ的大小分布情况,统计每一层中参数λ大于1的数量,并按照参数λ大于1的数量从大到小对每层网络进行排序,得到关键层分布;
S15、对步骤S14中得到的所有关键层进行随机权重失效,通过随机函数随机选择神经元失效,然后测试模型精度,当模型精度小于预设阈值时停止操作;获得模型每一层能容忍失效的神经元的比例。
进一步地,所述步骤S2包括以下子步骤:
S21、输入的分类图片中包含多个已知类别的图片,每个类别的图片样本数量相等;
S22、统计所有图片输入卷积网络后,网络层的输出数据;
S23、根据步骤S22统计的输出数据,以输出最大值作为该网络层的检测阈值,若检测点的输出大于检测阈值则该检测点判定为异常,并回滚到上一个检测点的位置重新进行检测;否则该检测点判定为正常。
进一步地,所述步骤S3包括以下子步骤:
S31、确定目标函数,以模型能够正常运行的概率作为目标函数;
P(Normal)是目标函数代表模型正常工作的概率;将模型正确运行的概率分解为:无错误运行+出错并被当前层正确检测+出错被后面的层检测,公式表达为:
其中k表示网络层数,P(li)表示第i层网络正确运行的概率,P(di)表示第i层的检测方法正确检测的概率,m表示出错所在的网络层数,n表示正确检测所在的网络层数;
将上式化简后得到:
S32、确定约束条件,分析检测点的时间开销和空间开销,主要的影响因素为检测点所在层的神经元数量、输出的维度相关;
不同的检测方法和回滚设置会会带来不同的容错效果和额外系统开销,将步骤S41得到的目标函数建模为一个约束优化问题,公式表示如下:
max P(Normal)
st.T(Cost)<LimitTime
T(Cost)<LimitSpace
T(Cost)和S(Cost)分别表示时间开销和空间开销,LimitTime和LimitSpace分别表示时间开销和空间开销的上限值;
检测方法和回滚的设置都会带来时间和空间上的开销,时间开销和空间开销的量化公式如下:
T(di)表示第i层检测方法需要花费的时间,T(li)表示第i层的运算时间,T(IO)代表IO读取带来的开销;S(di)和S(li)分别代表检测方法和回滚时带来的空间开销;
S33、采用模拟退火算法对上述约束优化问题进行求解,得到检测点的数量。
本发明的有益效果是:本发明通过分析实验获得卷积神经网络的关键节点分布,以此为依据获得网络的关键层和关键层的输出分布。在满足时间和空间约束的条件下,在关键层设置关键节点,当关键层输出异常的时候,利用检查点回滚机制实现卷积神经网络的容错,此方法可移植到有类似结构的卷积神经网络中,具有一定的通用性。
附图说明
图1为本发明的一种基于关键层回滚机制的CNN容错方法的流程图;
图2为本发明的确定关键层分布的流程图;
图3为本发明的关键层分布图;
图4为本发明的求解最佳检测点设置方案。
具体实施方式
下面结合附图进一步说明本发明的技术方案。
如图1所示,本发明的一种基于关键层回滚机制的卷积神经网络容错方法,包括以下步骤:
S1、寻找关键层,通过对原模型添加参数λ进行训练的方式寻找对分类影响最大的关键节点,依据关键节点的分布确定网络的关键层分布;如图2所示,具体包括以下子步骤:
S11、选择一个卷积结构的网络模型,训练模型并获得原始模型的权重;
S12、修改原始网络模型的结构,在每层网络中的神经元后面添加参数λ,使用添加的参数λ表示对应层神经元的关键程度,参数λ值越高对应神经元的关键程度越高;
S13、使用原模型输出和修改后模型输出构建损失函数,进行训练,直至原模型输出和修改模型的输出精度误差小于1%时停止训练,此时添加的参数λ代表对应神经元的关键程度;
S14、通过可视化展示步骤S13获得的参数λ的大小分布情况,统计每一层中参数λ大于1的数量,并按照参数λ大于1的数量从大到小对每层网络进行排序,得到关键层分布,本实施例得到的关键层网络分布如图3所示;
S15、对步骤S14中得到的所有关键层进行随机权重失效,通过随机函数随机选择神经元失效,然后测试模型精度,当模型精度小于预设阈值时停止操作;获得模型每一层能容忍失效的神经元的比例。
S2、输入分类图片,通过卷积神经网络对输入图片进行识别,获得关键层的输出特征;并根据输出特征得到检测阈值,用于判定检测点的输出是否存在异常;
具体包括以下子步骤:
S21、输入的分类图片中包含多个已知类别的图片,每个类别的图片样本数量相等;
S22、统计所有图片输入卷积网络后,网络层的输出数据;
S23、根据步骤S22统计的输出数据,以输出最大值作为该网络层的检测阈值,若检测点的输出大于检测阈值则该检测点判定为异常,并回滚到上一个检测点的位置重新进行检测;否则该检测点判定为正常。
检测点是容错领域一个通用的概念,检测点在这里就是描述关键层输出的位置。在检测点检测到异常会回滚到上一个检测点的位置重新执行相应的检测操作;
异常是指由于硬件问题导致的模型权重瞬时错误,这种错误会导致模型最终模型的精度下降。为了解决该问题,选择使用回滚(检测点)的方式解决。
最可靠的方式是每层都放置检测点,但检测点会带来硬件开销,因此需要根据硬件约束条件选择合适检测点数量来尽可能提高可靠性。
S3、将硬件约束进行建模,利用模拟退火算法求出在满足硬件条件约束的情况下的检测点数量,提高模型识别图片的可靠性;如图4所示,具体包括以下子步骤:
S31、确定目标函数,以模型能够正常运行的概率作为目标函数;
P(Normal)是目标函数代表模型正常工作的概率;将模型正确运行的概率分解为:无错误运行+出错并被当前层正确检测+出错被后面的层检测,公式表达为:
其中k表示网络层数,P(li)表示第i层网络正确运行的概率,P(di)表示第i层的检测方法正确检测的概率,m表示出错所在的网络层数,n表示正确检测所在的网络层数;
将上式化简后得到:
S32、确定约束条件,分析检测点的时间开销和空间开销,主要的影响因素为检测点所在层的神经元数量、输出的维度相关;
不同的检测方法和回滚设置会会带来不同的容错效果和额外系统开销,将步骤S41得到的目标函数建模为一个约束优化问题,公式表示如下:
max P(Normal)
st.T(Cost)<LimitTime
T(Cost)<LimitSpace
T(Cost)和S(Cost)分别表示时间开销和空间开销,LimitTime和LimitSpace分别表示时间开销和空间开销的上限值;
检测方法和回滚的设置都会带来时间和空间上的开销,时间开销和空间开销的量化公式如下:
T(di)表示第i层检测方法需要花费的时间,T(li)表示第i层的运算时间,T(IO)代表IO读取带来的开销;S(di)和S(li)分别代表检测方法和回滚时带来的空间开销;
S33、采用模拟退火算法对上述约束优化问题进行求解,得到检测点的数量。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
Claims (4)
1.一种基于关键层回滚机制的卷积神经网络模型容错方法,其特征在于,包括以下步骤:
S1、寻找关键层,通过对原模型添加参数λ进行训练的方式寻找对分类影响最大的关键节点,依据关键节点的分布确定网络的关键层分布;
S2、输入分类图片,通过卷积神经网络对输入图片进行识别,获得关键层的输出特征;并根据输出特征得到检测阈值,用于判定检测点的输出是否存在异常;
S3、将硬件约束进行建模,利用模拟退火算法求出在满足硬件条件约束的情况下的检测点数量。
2.根据权利要求1所述的一种基于关键层回滚机制的CNN容错方法,其特征在于,所述步骤S1包括以下子步骤:
S11、选择一个卷积结构的网络模型,训练模型并获得原始模型的权重;
S12、修改原始网络模型的结构,在每层网络中的神经元后面添加参数λ,使用添加的参数λ表示对应层神经元的关键程度,参数λ值越高对应神经元的关键程度越高;
S13、使用原模型输出和修改后模型输出构建损失函数,进行训练,直至原模型输出和修改模型的输出精度误差小于1%时停止训练,此时添加的参数λ代表对应神经元的关键程度;
S14、通过可视化展示步骤S13获得的参数λ的大小分布情况,统计每一层中参数λ大于1的数量,并按照参数λ大于1的数量从大到小对每层网络进行排序,得到关键层分布;
S15、对步骤S14中得到的所有关键层进行随机权重失效,通过随机函数随机选择神经元失效,然后测试模型精度,当模型精度小于预设阈值时停止操作;获得模型每一层能容忍失效的神经元的比例。
3.根据权利要求1所述的一种基于关键层回滚机制的CNN容错方法,其特征在于,所述步骤S2包括以下子步骤:
S21、输入的分类图片中包含多个已知类别的图片,每个类别的图片样本数量相等;
S22、统计所有图片输入卷积网络后,网络层的输出数据;
S23、根据步骤S22统计的输出数据,以输出最大值作为该网络层的检测阈值,若检测点的输出大于检测阈值则该检测点判定为异常,并回滚到上一个检测点的位置重新进行检测;否则该检测点判定为正常。
4.根据权利要求1所述的一种基于关键层回滚机制的CNN容错方法,其特征在于,所述步骤S3包括以下子步骤:
S31、确定目标函数,以模型能够正常运行的概率作为目标函数;
P(Normal)是目标函数代表模型正常工作的概率;将模型正确运行的概率分解为:无错误运行+出错并被当前层正确检测+出错被后面的层检测,公式表达为:
其中k表示网络层数,P(li)表示第i层网络正确运行的概率,P(di)表示第i层的检测方法正确检测的概率,m表示出错所在的网络层数,n表示正确检测所在的网络层数;
将上式化简后得到:
S32、确定约束条件,分析检测点的时间开销和空间开销,主要的影响因素为检测点所在层的神经元数量、输出的维度相关;
不同的检测方法和回滚设置会会带来不同的容错效果和额外系统开销,将步骤S41得到的目标函数建模为一个约束优化问题,公式表示如下:
max P(Normal)
st.T(Cost)<LimitTime
T(Cost)<LimitSpace
T(Cost)和S(Cost)分别表示时间开销和空间开销,LimitTime和LimitSpace分别表示时间开销和空间开销的上限值;
检测方法和回滚的设置都会带来时间和空间上的开销,时间开销和空间开销的量化公式如下:
T(di)表示第i层检测方法需要花费的时间,T(li)表示第i层的运算时间,T(IO)代表IO读取带来的开销;S(di)和S(li)分别代表检测方法和回滚时带来的空间开销;
S33、采用模拟退火算法对上述约束优化问题进行求解,得到检测点的数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110258455.3A CN112766503B (zh) | 2021-03-10 | 2021-03-10 | 基于关键层回滚机制的卷积神经网络模型容错方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110258455.3A CN112766503B (zh) | 2021-03-10 | 2021-03-10 | 基于关键层回滚机制的卷积神经网络模型容错方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112766503A true CN112766503A (zh) | 2021-05-07 |
CN112766503B CN112766503B (zh) | 2022-09-20 |
Family
ID=75690875
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110258455.3A Active CN112766503B (zh) | 2021-03-10 | 2021-03-10 | 基于关键层回滚机制的卷积神经网络模型容错方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112766503B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117764120A (zh) * | 2024-02-22 | 2024-03-26 | 天津普智芯网络测控技术有限公司 | 一种可降低单粒子故障影响的图片识别架构 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108229592A (zh) * | 2018-03-27 | 2018-06-29 | 四川大学 | 基于gmdh神经元网络的离群点检测方法及装置 |
CN110287080A (zh) * | 2019-05-23 | 2019-09-27 | 南京理工大学 | 满足约束条件的优化系统能耗、完工时间和可用性的方法 |
CN110569305A (zh) * | 2019-08-27 | 2019-12-13 | 网易(杭州)网络有限公司 | 区块同步方法、装置、介质和计算设备 |
CN111563578A (zh) * | 2020-04-28 | 2020-08-21 | 河海大学常州校区 | 基于TensorFlow的卷积神经网络故障注入系统 |
-
2021
- 2021-03-10 CN CN202110258455.3A patent/CN112766503B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108229592A (zh) * | 2018-03-27 | 2018-06-29 | 四川大学 | 基于gmdh神经元网络的离群点检测方法及装置 |
CN110287080A (zh) * | 2019-05-23 | 2019-09-27 | 南京理工大学 | 满足约束条件的优化系统能耗、完工时间和可用性的方法 |
CN110569305A (zh) * | 2019-08-27 | 2019-12-13 | 网易(杭州)网络有限公司 | 区块同步方法、装置、介质和计算设备 |
CN111563578A (zh) * | 2020-04-28 | 2020-08-21 | 河海大学常州校区 | 基于TensorFlow的卷积神经网络故障注入系统 |
Non-Patent Citations (3)
Title |
---|
KAI ZHAO等: "FT-CNN: Algorithm-Based Fault Tolerance for Convolutional Neural Networks", 《ARXIV:2003.12203V4》 * |
潘唯迦: "面向卷积神经网络比特翻转错误的容错方法研究与实现", 《中国优秀硕士学位论文全文数据库_信息科技辑》 * |
马爱永: "计算机控制系统可靠性设计", 《中国优秀硕士学位论文全文数据库_信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117764120A (zh) * | 2024-02-22 | 2024-03-26 | 天津普智芯网络测控技术有限公司 | 一种可降低单粒子故障影响的图片识别架构 |
Also Published As
Publication number | Publication date |
---|---|
CN112766503B (zh) | 2022-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116757534B (zh) | 一种基于神经训练网络的智能冰箱可靠性分析方法 | |
CN112433896B (zh) | 一种服务器磁盘故障预测方法、装置、设备及存储介质 | |
CN111625516A (zh) | 检测数据状态的方法、装置、计算机设备和存储介质 | |
WO2019082166A1 (en) | PROPAGATION AND UNCERTAIN UNCERTAINTY | |
CN117034143B (zh) | 一种基于机器学习的分布式系统故障诊断方法及装置 | |
CN111079348B (zh) | 一种缓变信号检测方法和装置 | |
CN112766503B (zh) | 基于关键层回滚机制的卷积神经网络模型容错方法 | |
CN115330435A (zh) | 一种碳排放权价格指标体系建立方法、装置、设备及介质 | |
CN117472789B (zh) | 基于集成学习的软件缺陷预测模型构建方法和装置 | |
Karimi-Haghighi et al. | Predicting early dropout: Calibration and algorithmic fairness considerations | |
CN112182056A (zh) | 一种数据检测方法、装置、设备及存储介质 | |
CN114048811A (zh) | 一种基于深度学习的无线传感器节点故障诊断方法和装置 | |
CN117827593A (zh) | 一种基于异常识别结果确定异常原因的方法和系统 | |
CN116893293A (zh) | 基于空间注意力校正神经网络的暂态电压稳定评估方法 | |
CN114401135B (zh) | 基于LSTM-Attention用户和实体行为分析技术的内部威胁检测方法 | |
US20220222580A1 (en) | Deterioration detection method, non-transitory computer-readable storage medium, and information processing device | |
CN116910526A (zh) | 模型训练方法、装置、通信设备及可读存储介质 | |
CN116384223A (zh) | 基于退化状态智能辨识的核设备可靠性评估方法及系统 | |
CN115293249A (zh) | 一种基于动态时序预测的电力系统典型场景概率预测方法 | |
CN112365014A (zh) | 一种基于ga-bp-cbr的工业设备故障诊断系统及方法 | |
CN113379455B (zh) | 订单量预测方法和设备 | |
CN111859798A (zh) | 基于双向长短时神经网络的流程工业故障诊断方法 | |
CN117891566B (zh) | 智能软件的可靠性评估方法、装置、设备、介质和产品 | |
CN116610484B (zh) | 一种模型训练方法、故障预测方法、系统、设备以及介质 | |
CN114510382A (zh) | 一种基于异构集成的硬盘故障预测方法及系统 |
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 |