CN116362325A - 一种基于模型压缩的电力图像识别模型轻量化应用方法 - Google Patents
一种基于模型压缩的电力图像识别模型轻量化应用方法 Download PDFInfo
- Publication number
- CN116362325A CN116362325A CN202310308366.4A CN202310308366A CN116362325A CN 116362325 A CN116362325 A CN 116362325A CN 202310308366 A CN202310308366 A CN 202310308366A CN 116362325 A CN116362325 A CN 116362325A
- Authority
- CN
- China
- Prior art keywords
- model
- student
- power image
- compression
- teacher
- 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
- 238000000034 method Methods 0.000 title claims abstract description 94
- 238000007906 compression Methods 0.000 title claims abstract description 67
- 230000006835 compression Effects 0.000 title claims abstract description 66
- 238000013528 artificial neural network Methods 0.000 claims abstract description 56
- 230000008569 process Effects 0.000 claims abstract description 50
- 238000013140 knowledge distillation Methods 0.000 claims abstract description 30
- 238000004458 analytical method Methods 0.000 claims abstract description 17
- 238000013138 pruning Methods 0.000 claims abstract description 13
- 230000000694 effects Effects 0.000 claims abstract description 11
- 238000012549 training Methods 0.000 claims description 52
- 230000006870 function Effects 0.000 claims description 20
- 238000012790 confirmation Methods 0.000 claims description 4
- 230000001902 propagating effect Effects 0.000 claims description 2
- 238000000638 solvent extraction Methods 0.000 claims description 2
- 210000002569 neuron Anatomy 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000004913 activation Effects 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 244000141353 Prunus domestica Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000003137 locomotive effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 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/08—Learning methods
- G06N3/096—Transfer learning
-
- 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/0464—Convolutional networks [CNN, ConvNet]
-
- 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/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
- G06V10/765—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects using rules for classification or partitioning the feature space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/50—Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明公开一种基于模型压缩的电力图像识别模型轻量化应用方法,在嵌入式边端设备中部署摄像头和DNN模型,用于采集电力图像并进行电力图像识别;基于知识蒸馏的模型压缩方式对部署到嵌入式边端设备上的DNN模型进行压缩;基于神经网络架构搜索的方法,对学生模型的最优结构进行搜索并剪枝;基于模型中间层输出信息,对知识蒸馏的模型压缩方法进行优化,实现模型预测过程校准;将压缩后得到的轻量化电力图像识别模型部署到电网嵌入式边端设备上,在电网边端设备上完成电力图像数据的采集与分析。本发明使用知识蒸馏的模型压缩方式对模型压缩,提高电网嵌入式边端设备此类资源有限的设备上运行的DNN模型的表现效果。
Description
技术领域
本发明涉及一种基于模型压缩的电力图像识别模型轻量化应用方法,属于面向边端设备的图像识别模型优化技术领域。
背景技术
当前人工智能技术在电力场景已开展了广泛的应用,如输电通道可视化、无人机巡检、现场作业违章监测等。输电通道可视化防外破通过监控摄像头拍摄图片,利用人工智能模型分析可能出现的外破行为并进行预警。
但与此同时也存在诸多问题一直限制着各专业智能化应用水平的进一步提升。在电力人工智能分析过程中主要采用的图像识别等传统深度学习模型存在网络结构复杂、参数量大,模型训练和部署运行对基础软硬件环境和资源开销要求较高,电力边缘终端设备受限于软硬件资源配置,承载模型正常部署运行压力较大,同时电力应用场景下计算设备/终端类型多样,软硬件架构不一,智能模型适配困难,因此现有应用模式主要通过边端设备进行数据采集后回传至后端/云端并集中进行基于智能模型的分析。
这样的架构模式严重依赖集中式云端服务资源(人工智能平台及视频平台),易造成性能瓶颈,同时边端应用任务请求波动带来负载在时域上变化,容易造成负载叠加导致部分时段响应违约,而边缘运行多类型异构业务也会导致系统负载在空间上分布不均,致使应用性能低下。在数据管理方面,受限于当前应用模式与平台架构的限制,对边缘设备所采集的海量数据处理和挖掘不够,利用水平不高,尚未充分发挥数据价值和数据助力作用。
为了发掘应用边端设备计算资源与能力,降低云端资源和边云通信信道依赖,提升智能分析应用的稳定性与高效性,但目前仍存在不足。在图像识别领域,采用嵌入式轻量网络结构相较于基于深度学习的神经网络模型性能上差距较大,实用效果较差,无法满足业务要求;已有的模型压缩技术在解决电力图像识别模型压缩问题时,难以在压缩比和性能两项指标中实现兼顾,无法满足业务应用要求。
发明内容
发明目的:针对现有技术中存在的问题与不足,本发明提供一种基于模型压缩的电力图像识别模型轻量化应用方法,利用知识蒸馏对电力图像识别模型进行模型压缩,并配合神经网络架构搜索和模型预测过程校准,使得在电力图像识别应用场景下,用于图像识别的DNN模型能够应用于嵌入式边端设备中,减小电力图像识别模型的存储开销和计算开销,并提高了压缩后电力图像识别模型的表现效果。
技术方案:一种基于模型压缩的电力图像识别模型轻量化应用方法,以支持嵌入式边端设备实现电力图像识别,兼顾模型压缩比和模型表现性能;包括,1)在嵌入式边端设备中部署摄像头和DNN模型,用于采集电力图像并进行电力图像识别;2)基于知识蒸馏的模型压缩方式对部署到嵌入式边端设备上的DNN模型进行压缩;3)基于神经网络架构搜索的方法,对学生模型的最优结构进行搜索并剪枝;4)基于模型中间层输出信息,对知识蒸馏的模型压缩方法进行优化,实现模型预测过程校准;5)将压缩后得到的轻量化电力图像识别模型部署到电网嵌入式边端设备上,在电网边端设备上完成电力图像数据的采集与分析。
DNN模型,包含输入层、输出层和若干隐藏层的神经网络结构,通常有卷积层,池化层,批归一化层,全连接层和激活层等。在图像分类领域常用的DNN模型包括:ResNet_v1,ResNet_v2,WideResNet(WRN),ResNeXt,VGG等模型,在目标检测领域常用的Faster R-CNN,SSD,YOLO等模型。
所述2)中,模型压缩将区分训练使用模型和部署使用模型。由于训练环境和部署环境存在着一定的不一致性:如训练阶段,需要使用复杂的模型,大量的计算资源,以便于从非常大、高度冗余的数据集中提取出信息;而部署阶段,对模型的计算开销和存储开销通常都会有严格的限制。因而,需要通过模型压缩的方式将训练阶段使用的模型转化为部署阶段生效的模型。
基于知识蒸馏的模型压缩方式,使用的是教师——学生模型,其中教师模型是“知识”的输出者,而学生模型是“知识”的接受者。知识蒸馏通常包含教师模型训练和学生模型训练两个阶段。教师模型训练阶段,是训练得到教师模型的过程,特点是模型相对复杂,以模型准确率为首要目标,而不考虑模型架构、参数量、计算开销等方面的限制;学生模型训练阶段,是训练得到学生模型的过程,特点是模型结构相对简单、参数量较少,训练目标是在满足模型架构、参数量、计算开销等方面的限制下取得最好表现效果的模型。
教师模型训练阶段,是对输入的电力图像数据的真实标签(Ground Truth)求极大似然的过程,也就是说训练目标是希望模型的预测输出尽可能地接近电力图像的真实标签。以分类任务为例,在教师模型训练阶段,计算模型的预测输出和真实标签的交叉熵(Cross-Entropy)作为损失函数(Loss=CrossEntropy),通过最小化损失函数,将误差反向传播以更新整个DNN模型的参数,得到具有最小损失的模型,即为教师模型。
学生模型训练阶段,训练时除了需要训练集和测试集外,额外还需要上述教师模型训练阶段得到的训练好的模型。该阶段训练目标包含两部分:第一部分仍然是希望模型的预测输出尽可能地接近电力图像数据的真实标签,该部分使用的是电力图像数据的真实标签值信息;第二部分是希望学生模型与教师模型的表现尽可能一致,即对于相同的电力图像数据输入产生尽可能相似的模型最终表示(Logits),该部分使用的是教师模型的信息。根据该阶段的两部分训练目标,可将该部分训练的损失函数分为两部分,分别是:计算模型的预测输出和真实标签的交叉熵(Cross-Entropy)和计算学生模型与教师模型关于数据最终表示的相似度,使用KL散度衡量。此时损失函数的形式为:Loss=α·CrossEntropy+β·KLLogits,对这两部分损失函数使用超参数α和β来调节权重,之后,再使用误差反向传播方法更新学生模型的参数,得到具有最小损失的学生模型。
所述3)中,神经网络架构搜索是一种自动设计神经网络的技术,可以通过算法根据样本集自动设计出高性能的网络结构。在所述2)中指出的学生模型,是一种不确定架构的神经网络模型,期望是得到满足压缩率的条件下性能尽可能优的模型。为了得到尽可能好的学生模型架构,采用神经网络架构搜索进行一种粗粒度的搜索。
为了减少神经网络架构搜索的搜索时间,对其搜索空间进行压缩,使用一种粗粒度的神经网络架构搜索方式,即按块组合的方式。将DNN模型的各层神经网络层根据其输入输出规格、卷积核大小、通道数等特征进行划分,划分后DNN模型可被视为由若干个块(Block)彼此前后串联而成。按块组合是DNN模型以块为单位的一种组织形式,可以看作是DNN模型的基本单元。每个块由若干层神经元层组成,包括卷积层、全连接层、激活层和批归一化层等。考虑到神经元层的大小与神经元层所在块在DNN模型中的深度密切相关,这一规律表现为:块在DNN中越深,该块中的神经元层中的神经元数目越多,即参数越多、计算开销越大。在限制DNN模型总参数量的前提下,通过组合不同深度的块内的神经元层数,搭建得到若干种不同结构的候选学生模型,对这些学生模型剪枝后进行训练和评估,筛选出表现效果最好的学生模型,完成对学生模型的神经网络架构搜索。
各个块内的神经网络层数彼此独立且参数量不同,可根据需要调整。通过广度优先的搜索方式,对候选模型结构中各个块内block数目组合方式进行搜索。
由于搜索产生的候选模型较多,搜索空间较大,后续训练开销也会较大,因此对搜索过程进行剪枝,以减少搜索结果来降低开销。剪枝的规则为:在同一的block内,学生模型使用的网络层数不应超过教师模型对应block使用的网络层数。也即,每个block内中学生模型的网络层数上限是对应block内教师模型的网络层数,而下限是1。这一规则可理解为,为了尽可能地学习教师模型某一个block的知识,只需使用不超过教师模型对应block内的网络层数,超出部分再多的网络层数是意义不大的。实践中,模型的实际结果也验证了这一思路。因此,该流程中采用了这一剪枝思路,大大提高了系统性能。
因此,按块组合的神经网络架构搜索,就是对DNN模型各个块内的神经网络层数的组合进行搜索并剪枝,由此得到了若干种不同结构的候选学生模型,依次对这些学生模型进行所述2)中指出的知识蒸馏中学生模型训练阶段,并对训练结果进行评估,得到具有最佳表现效果的学生模型,完成神经网络架构搜索过程。
所述4)中,模型预测过程校准是根据所述3)中神经网络架构搜索策略提出的对所述2)中知识蒸馏中学生模型训练过程的补充。根据所述3),DNN模型可视为由若干个块前后串联而成,且对于教师模型和学生模型而言,这些块之间是一一对应的。这种对应关系,不仅是结构上的对应,也是功能上的对应,即教师模型与学生模型中对应的块是执行相似的特征映射,而各个块的输出结果可以视作是模型对该块的输入得到的中间表示。随着模型中块所在深度的加深,模型的中间表示也愈加复杂。模型产生复杂的中间表示的过程,也就是模型对输入的电力图像数据进行预测的过程。在这个过程中,额外引入校准,就是对模型产生的中间表示进行校准。类似于知识蒸馏,学生模型需要学习教师模型最终表示(Logits);而中间校准的过程,学生模型也需要学习教师模型的中间表示。通过对模型预测过程中的校准,使得学生模型的预测更加贴近教师模型,从而提升学生模型的表现。
在中间校准过程中,额外引入学生模型和教师模型各块的中间表示的相似度,使用KL散度进行衡量,并加入构成最终的损失函数,得到包含三项的损失函数,并用超参数α,β和γ来调节分类损失(CrossEntropy)、Logits相似度损失(KLLogits)和中间表示相似度损失(∑KLBlock)这三项的所占比重,形式为:Loss=α·CrossEntropy+β·KLLogits+γ·∑KLBlock。
所述5),压缩后的模型部署,使用上述的模型压缩策略对原始的复杂教师模型进行压缩后得到的轻量化模型,可以满足电网边端嵌入式设备的计算资源,实现在边端设备上进行数据的采集与分析。输入为边端设备的摄像头采集的实时电力图像,模型对电力图像进行预测分析,并将可能包含告警信息的图像发送给后端/云端等待确认。
2)基于知识蒸馏的模型压缩方式对部署到嵌入式边端设备上的DNN模型进行压缩,实现过程如下:
201)教师模型训练阶段:
i)构建教师模型架构,并随机初始化模型参数;
ii)按批读取电力图像数据,并输入给教师模型;
iii)计算模型预测值与真实标签值的交叉熵(Cross-Entropy),得到模型的损失Loss;
iv)采用误差反向传播算法,根据损失Loss更新模型各神经网络层参数;
v)训练模型,直至模型收敛,得到训练好的教师模型。
202)学生模型训练阶段:
i)构建学生模型架构,并随机初始化模型参数;
ii)按批读取电力图像数据,同时输入给教师模型和学生模型;
iii)计算学生模型的预测值与真实标签值的交叉熵(Cross-Entropy),并计算学生模型的最终表示Logits与教师模型的最终表示Logits之间的KL散度,两者相结合得到模型的损失Loss;
iv)采用误差反向传播算法,根据损失Loss更新学生模型各神经网络层参数,但教师模型各层参数需要保持不变,不做更新;
v)训练学生模型,直至模型收敛,得到训练好的学生模型。
3)基于神经网络架构搜索的方法,对学生模型的最优结构进行搜索,实现过程如下:
301)根据压缩率要求,选择一个候选学生模型结构。例如,对ResNet-110进行压缩,压缩率要求为20%左右,可以得到候选学生模型结构为ResNet-20。
302)对候选学生模型的网络结构进行分块。例如,ResNet-110和ResNet-20两种网络都可以分为包含3个块组成的网络主体部分,但ResNet-110中每个块内有18层神经网络,而ResNet-20中每个块内只有3层神经网络。
303)计算各个块内神经网络层的参数量比例。例如,ResNet网络架构中,较深一层的神经网络层中参数量是上一层的4倍。
304)根据上述参数量比例和候选学生模型结构,采用广度优先的方法搜索其他候选学生模型结构。例如,ResNet-20的结构可以表示为{3,3,3},在此基础上,可以派生出其他候选学生模型结构,如{3,7,2},{7,10,1},{19,3,2},{23,6,1}等结构。
305)根据教师模型结构中各个block内的网络层数,对上述搜索过程进行剪枝,以避免不必要的搜索。例如,作为教师模型的ResNet-110的结构为{18,18,18},因此ResNet-20的搜索结果中的部分候选结构(如{19,3,2},{23,6,1}等)会被剪枝删去。
306)依次对剪枝后的各个候选学生模型结构进行知识蒸馏的模型压缩训练,选出其中表现最优的模型作为学生模型的结构。例如,根据实验结果,ResNet-20系列表现最优的学生模型结构通常是{7,10,1}。
4)基于模型中间层输出信息,对知识蒸馏的模型压缩方法进行优化,实现模型预测过程校准,实现过程如下:
401)使用3)过程中得到最优学生模型结构,并进行参数随机初始化。
402)在202)过程中的学生模型训练阶段,引入第三项损失函数∑KLBlock,计算学生模型和教师模型各个块的中间输出结构的KL散度,用于对模型预测过程校准。其余过程保持不变,得到训练好的压缩后轻量化模型,也称轻量化电力图像识别模型。
5)将压缩后得到的轻量化模型部署到电网嵌入式边端设备上,在电网边端设备上完成数据的采集与分析,实现过程如下:
501)将压缩后的轻量化模型部署到电网嵌入式边端设备上;
502)边端设备采集的实时电力图像输入给模型;
503)模型对输入的电力图像数据进行预测分析,将可能包含告警信息的电力图像发送给后端/云端等待确认。
在后端/云端上,采用人工的方式对预测信息进行异常处理和抽查确认。由于电力识别应用场景中存在的环境多样性和不确定性,存在着模型误报率过多的问题,使用人工校准对模型预测进行反馈和调节,有助于提升模型的表现性能。
与现有技术方案相比,本发明具有以下特点:
1)使用知识蒸馏的模型压缩方式对模型压缩,提高电网嵌入式边端设备此类资源有限的设备上运行的DNN模型的表现效果;
2)基于神经网络架构搜索的方法,实现了对压缩后的模型结构的寻优,可应用于多种现有的其他模型压缩方法,提高其压缩效果;
3)基于模型中间层输出信息,实现模型预测过程校准,与知识蒸馏和神经网络架构搜索相互配合,使得压缩的学生模型更加接近教师模型;
4)本方法具有通用性,与系统实现解耦,能够适配资源有限的设备的深度学习任务。
附图说明
图1为本发明整体执行流程图;
图2为本发明提供的模型预测过程校准的工作流程图;
图3为本发明实施例的模型最优结构搜索的工作流程图。
具体实施方式
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
一种基于模型压缩的电力图像识别模型轻量化应用方法,其特征在于,包括,1)在嵌入式边端设备中部署摄像头和DNN模型,用于采集电力图像并进行电力图像识别;2)基于知识蒸馏的模型压缩方式对部署到嵌入式边端设备上的DNN模型进行压缩;3)基于神经网络架构搜索的方法,对学生模型的最优结构进行搜索并剪枝;4)基于模型中间层输出信息,对知识蒸馏的模型压缩方法进行优化,实现模型预测过程校准;5)将压缩后得到的轻量化电力图像识别模型部署到电网嵌入式边端设备上,在电网边端设备上完成电力图像数据的采集与分析。
在计算资源受限的嵌入式边端设备上,部署轻量DNN模型,对边端设备上的摄像头所采集的图像进行预测分析。
在电力图像识别应用场景中,包含众多可移动或不可移动的终端,例如智能手机、无人驾驶机车、可穿戴设备等。这些设备在计算能力、存储空间以及电力续航等方面存在诸多限制,但同时有可能需要执行图像检测、人脸识别和增强现实等复杂计算过程。一种可行的方法是在这些边端设备上部署经过模型压缩后的轻量模型。
在嵌入式边端设备上部署的轻量DNN模型,包括常见的ResNet_v1,ResNet_v2,WideResNet(WRN),ResNeXt,VGG等模型,包含的神经元层通常有卷积层,池化层,批归一化层,全连接层和激活层等。通过改变神经网络的层数、每层的大小、神经网络组合方式等,可以改变神经网络的参数量和计算量,从而改变模型的架构,基于这种方式改变模型架构的方法称为神经网络架构搜索。
对于使用知识蒸馏的模型压缩方式,基于最小化教师模型和学生模型的输出(即Logits)差异,并使用损失函数Kullback-Leibler(KL)散度来度量这一差异值。
给定教师模型和学生模型相同的电力图像作为输入,经过模型的计算,得到两个模型关于输入的电力图像的最终表示(Logits,即“知识”),而通过设置损失函数让学生模型尽可能地与教师模型接近的这一过程,即为知识蒸馏。通过知识蒸馏,让更加轻量化的学生模型学习到了教师模型关于输入数据的表示,从而在降低计算开销和存储开销的同时,实现了模型准确率的保持,完成模型压缩。
图1描述了本发明整体执行流程图,包括模型压缩、模型部署、智能平台分析三部分。而图2具体地描述了本发明中模型压缩的整体流程图,包括知识蒸馏、学生模型架构搜索、模型预测过程校准三部分。
下面进行具体实施说明。首先描述模型压缩部分:
步骤一:首先进行教师模型的训练。构建教师模型架构,并随机初始化模型参数;按批读取电力图像数据,并输入给教师模型;计算模型预测值与真实标签值的交叉熵,计算损失函数;采用误差反向传播算法,根据损失更新模型各神经网络层的参数;训练模型,直至收敛,得到训练好的模型作为后续步骤中的教师模型。
步骤二:其次构建学生模型结构的搜索空间。根据训练好的教师模型大小和压缩率要求,确定学生模型的基本候选结构。以训练好的教师模型为ResNet-110,压缩率为20%左右的要求为例,可以确定学生模型的基本候选结构为ResNet-20。
对学生模型的基本候选结构进行分块。ResNet系列网络结构主体部分可以分为3个块。
确定学生模型的基本候选结构中各块内的神经网络层数,以及块之间的神经网络层参数量的数量关系。ResNet-20结构中,各个块中包含3层神经网络;较深一层的神经网络层中参数量是上一层的4倍。
由学生模型的基本候选结构派生出其他候选结构。根据上述各块内的神经网络层数,以及块之间的神经网络层参数量的数量关系,可以得到具有相同参数量的不同神经网络结构,并展开搜索。搜索的过程采用广度优先的方法,首先对最深层的block中网络层数进行递减,每减一层,上一个block中的网络层数递增相应数量的网络层数,依此类推对所有block中的block内的网络层数,作为候选模型结构中对应block内网络层数的上限,对搜索过程进行剪枝。
例如,ResNet-20{3,3,3}的基本结构,即包含三个block,每个block内都有三层神经网络,根据ResNet网络架构,较深一层的神经网络是上一次神经网络参数量的4倍,因此派生出的{3,7,2},{7,10,1},{19,3,2},{23,6,1}等结构具有与{3,3,3}结构相同的参数量,但后二者不满足剪枝规则而需删去,前二者为保留的候选学生模型结构,构成学生模型结构的搜索空间的一部分。
步骤三:然后对候选学生模型结构进行模型训练。对学生模型结构搜索空间中的每个候选学生模型结构,构建并随机初始化模型参数;按批读入电力图像数据,同时输入给教师模型和候选学生模型;计算学生模型的预测值与真实标签值之间的交叉熵,并计算学生模型每个块的中间输出结果和最终输出结果Logits与教师模型的中间输出结果和Logits之间的KL散度,结合得到损失函数;采用误差反向传播算法,根据损失更新学生模型各神经网络层的参数,但教师模型各层参数需要保持不变,不做更新;最后训练学生模型直至收敛,取所有候选学生模型中表现效果最好的,作为后续部署的模型。
接下来是模型部署的执行过程部分:
步骤四:步骤三中训练得到的模型是综合考虑存储体积、决策精度、推理速度等指标后,基于知识蒸馏的模型压缩技术,考虑边端设备,实现电力图像识别的轻量化模型,可以直接在电网的嵌入式边端设备上进行部署,根据设备的摄像头等外部输入设备采集的电力图像信息,进行实时的电力图像数据收集、数据筛选、预测分析。
接下来是智能平台分析的执行过程部分:
步骤五:步骤四中所预测的结果,将会回传到后端/云端的智能平台,在云端利用云端服务器所拥有的资源优势,使用具有更高准确率、更好表现效果的模型(如步骤一中所训练的教师模型),对从电网边端设备传回的电力图像数据进行验证和确认,并引入人工抽查的方式,进一步提升模型告警有效性。
通过上述方法,本发明实现一种基于模型压缩的电力图像模型轻量化应用技术,该方法采用基于知识蒸馏的模型压缩方法,并对压缩模型架构采用基于神经网络架构搜索的构建方式,以及采用预测过程校准的方法优化压缩模型的表现效果。
显然,本领域的技术人员应该明白,上述的本发明实施例的基于模型压缩的电力图像模型轻量化应用技术的各步骤可以用通用的计算装置来实现,它们可以实现在具有有限计算资源的嵌入式边端设备上,或者实现在资源不受限的云端服务器上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
Claims (9)
1.一种基于模型压缩的电力图像识别模型轻量化应用方法,其特征在于,包括,1)在嵌入式边端设备中部署摄像头和DNN模型,用于采集电力图像并进行电力图像识别;2)基于知识蒸馏的模型压缩方式对部署到嵌入式边端设备上的DNN模型进行压缩;3)基于神经网络架构搜索的方法,对学生模型的最优结构进行搜索并剪枝;4)基于模型中间层输出信息,对知识蒸馏的模型压缩方法进行优化,实现模型预测过程校准;5)将压缩后得到的轻量化电力图像识别模型部署到电网嵌入式边端设备上,在电网边端设备上完成电力图像数据的采集与分析。
2.根据权利要求1所述的基于模型压缩的电力图像识别模型轻量化应用方法,其特征在于,所述2)中,基于知识蒸馏的模型压缩方式,知识蒸馏通常包含教师模型训练和学生模型训练两个阶段;
教师模型训练阶段,是对输入的电力图像数据的真实标签求极大似然的过程,对于分类任务,在教师模型训练阶段,计算模型的预测输出和真实标签的交叉熵作为损失函数,通过最小化损失函数,将误差反向传播以更新整个DNN模型的参数,得到具有最小损失的模型,即为教师模型;
学生模型训练阶段,训练目标包含两部分:第一部分仍然是希望模型的预测输出尽可能地接近电力图像数据的真实标签,该部分使用的是电力图像数据的真实标签值信息;第二部分是希望学生模型与教师模型的表现尽可能一致,即对于相同的电力图像数据输入产生尽可能相似的模型最终表示,该部分使用的是教师模型的信息;根据该阶段的两部分训练目标,将该部分训练的损失函数分为两部分,分别是:计算模型的预测输出和真实标签的交叉熵和计算学生模型与教师模型关于数据最终表示的相似度,使用KL散度衡量;此时损失函数的形式为:Loss=α·CrossEntropy+β·KLLogits,对这两部分损失函数额外使用超参数调节权重,之后,再使用误差反向传播方法更新学生模型的参数,得到具有最小损失的学生模型。
3.根据权利要求1所述的基于模型压缩的电力图像识别模型轻量化应用方法,其特征在于,所述3)中,采用神经网络架构搜索进行一种粗粒度的搜索,为了减少神经网络架构搜索的搜索时间,对其搜索空间进行压缩,使用一种粗粒度的神经网络架构搜索方式,即按块组合的方式;将DNN模型的各层神经网络层根据其输入输出规格、卷积核大小、通道数特征进行划分,划分后DNN模型被视为由若干个块彼此前后串联而成,而各个块内的神经网络层数彼此独立且参数量不同,根据需要调整,通过广度优先的搜索方式,对候选模型结构中各个块内block数目组合方式进行搜索。
4.根据权利要求1所述的基于模型压缩的电力图像识别模型轻量化应用方法,其特征在于,对搜索过程进行剪枝,剪枝的规则为:在同一的block内,学生模型使用的网络层数不应超过教师模型对应block使用的网络层数;也即,每个block内中学生模型的网络层数上限是对应block内教师模型的网络层数,而下限是1;
按块组合的神经网络架构搜索,就是对DNN模型各个块内的神经网络层数的组合进行搜索并剪枝,由此得到了若干种不同结构的候选学生模型,依次对这些学生模型进行所述2)中指出的知识蒸馏中学生模型训练阶段,并对训练结果进行评估,得到具有最佳表现效果的学生模型,完成神经网络架构搜索过程。
5.根据权利要求1所述的基于模型压缩的电力图像识别模型轻量化应用方法,其特征在于,所述4)中,模型预测过程校准是对模型产生的中间表示进行校准,中间校准的过程,学生模型也需要学习教师模型的中间表示;
在中间校准过程中,引入学生模型和教师模型各块的中间表示的相似度,使用KL散度进行衡量,并加入构成最终的损失函数,得到包含三项的损失函数,并用超参数确定各项的所占比重,形式为:Loss=α·CrossEntropy+β·KLLogits+γ·∑KLBlock。
6.根据权利要求1所述的基于模型压缩的电力图像识别模型轻量化应用方法,其特征在于,所述2)基于知识蒸馏的模型压缩方式对部署到嵌入式边端设备上的DNN模型进行压缩,实现过程如下:
201)教师模型训练阶段:
i)构建教师模型架构,并随机初始化模型参数;
ii)按批读取电力图像数据,并输入给教师模型;
iii)计算模型预测值与真实标签值的交叉熵(Cross-Entropy),得到模型的损失Loss;
iv)采用误差反向传播算法,根据损失Loss更新模型各神经网络层参数;
v)训练模型,直至模型收敛,得到训练好的教师模型;
202)学生模型训练阶段:
i)构建学生模型架构,并随机初始化模型参数;
ii)按批读取电力图像数据,同时输入给教师模型和学生模型;
iii)计算学生模型的预测值与真实标签值的交叉熵(Cross-Entropy),并计算学生模型的最终表示Logits与教师模型的最终表示Logits之间的KL散度,两者相结合得到模型的损失Loss;
iv)采用误差反向传播算法,根据损失Loss更新学生模型各神经网络层参数,但教师模型各层参数需要保持不变,不做更新;
v)训练学生模型,直至模型收敛,得到训练好的学生模型。
7.根据权利要求1所述的基于模型压缩的电力图像识别模型轻量化应用方法,其特征在于,所述3)基于神经网络架构搜索的方法,对学生模型的最优结构进行搜索,实现过程如下:
301)根据压缩率要求,选择一个候选学生模型结构;
302)对候选学生模型的网络结构进行分块;
303)计算各个块内神经网络层的参数量比例;
304)根据上述参数量比例和候选学生模型结构,采用广度优先的方法搜索其他候选学生模型结构;
305)根据教师模型结构中各个block内的网络层数,对上述搜索过程进行剪枝;
306)依次对剪枝后的各个候选学生模型结构进行知识蒸馏的模型压缩训练,选出其中表现最优的模型作为学生模型的结构。
8.根据权利要求1所述的基于模型压缩的电力图像识别模型轻量化应用方法,其特征在于,所述4)基于模型中间层输出信息,对知识蒸馏的模型压缩方法进行优化,实现模型预测过程校准,实现过程如下:
401)使用3)过程中得到最优学生模型结构,并进行参数随机初始化;
402)在202)过程中的学生模型训练阶段,引入一项的新的损失函数,计算学生模型和教师模型各个块的中间输出结构的KL散度,用于对模型预测过程校准;其余过程保持不变,得到训练好的压缩后轻量化模型,也称轻量化电力图像识别模型。
9.根据权利要求1所述的基于模型压缩的电力图像识别模型轻量化应用方法,其特征在于,所述5)将压缩后得到的轻量化模型部署到电网嵌入式边端设备上,在电网边端设备上完成数据的采集与分析,实现过程如下:
501)将压缩后的轻量化模型部署到电网嵌入式边端设备上;
502)边端设备采集的实时电力图像输入给模型;
503)模型对输入的电力图像数据进行预测分析,将可能包含告警信息的电力图像发送给后端/云端等待确认。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310308366.4A CN116362325A (zh) | 2023-03-28 | 2023-03-28 | 一种基于模型压缩的电力图像识别模型轻量化应用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310308366.4A CN116362325A (zh) | 2023-03-28 | 2023-03-28 | 一种基于模型压缩的电力图像识别模型轻量化应用方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116362325A true CN116362325A (zh) | 2023-06-30 |
Family
ID=86917572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310308366.4A Pending CN116362325A (zh) | 2023-03-28 | 2023-03-28 | 一种基于模型压缩的电力图像识别模型轻量化应用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116362325A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116664576A (zh) * | 2023-07-31 | 2023-08-29 | 厦门微图软件科技有限公司 | 一种电池外壳焊道的异常检测方法、装置以及设备 |
CN117114053A (zh) * | 2023-08-24 | 2023-11-24 | 之江实验室 | 基于结构搜索和知识蒸馏的卷积神经网络模型压缩方法和装置 |
CN117197590A (zh) * | 2023-11-06 | 2023-12-08 | 山东智洋上水信息技术有限公司 | 一种基于神经架构搜索与知识蒸馏的图像分类方法及装置 |
CN117268345A (zh) * | 2023-11-20 | 2023-12-22 | 启元实验室 | 一种高实时性单目深度估计测量方法、装置及电子设备 |
-
2023
- 2023-03-28 CN CN202310308366.4A patent/CN116362325A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116664576A (zh) * | 2023-07-31 | 2023-08-29 | 厦门微图软件科技有限公司 | 一种电池外壳焊道的异常检测方法、装置以及设备 |
CN116664576B (zh) * | 2023-07-31 | 2023-11-03 | 厦门微图软件科技有限公司 | 一种电池外壳焊道的异常检测方法、装置以及设备 |
CN117114053A (zh) * | 2023-08-24 | 2023-11-24 | 之江实验室 | 基于结构搜索和知识蒸馏的卷积神经网络模型压缩方法和装置 |
CN117197590A (zh) * | 2023-11-06 | 2023-12-08 | 山东智洋上水信息技术有限公司 | 一种基于神经架构搜索与知识蒸馏的图像分类方法及装置 |
CN117197590B (zh) * | 2023-11-06 | 2024-02-27 | 山东智洋上水信息技术有限公司 | 一种基于神经架构搜索与知识蒸馏的图像分类方法及装置 |
CN117268345A (zh) * | 2023-11-20 | 2023-12-22 | 启元实验室 | 一种高实时性单目深度估计测量方法、装置及电子设备 |
CN117268345B (zh) * | 2023-11-20 | 2024-03-29 | 启元实验室 | 一种高实时性单目深度估计测量方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110084281B (zh) | 图像生成方法、神经网络的压缩方法及相关装置、设备 | |
CN109948029B (zh) | 基于神经网络自适应的深度哈希图像搜索方法 | |
CN116362325A (zh) | 一种基于模型压缩的电力图像识别模型轻量化应用方法 | |
CN112685504B (zh) | 一种面向生产过程的分布式迁移图学习方法 | |
CN112465120A (zh) | 一种基于进化方法的快速注意力神经网络架构搜索方法 | |
CN113095370A (zh) | 图像识别方法、装置、电子设备及存储介质 | |
CN112994701A (zh) | 数据压缩方法、装置、电子设备及计算机可读介质 | |
CN114943345A (zh) | 基于主动学习和模型压缩的联邦学习全局模型训练方法 | |
CN113128478A (zh) | 模型训练方法、行人分析方法、装置、设备及存储介质 | |
CN109214515A (zh) | 一种深度神经网络推理方法及计算设备 | |
WO2023207039A1 (zh) | 数据处理方法、装置、设备以及存储介质 | |
CN114239861A (zh) | 基于多教师联合指导量化的模型压缩方法及系统 | |
CN112784920A (zh) | 云边端协同的旋转部件对抗域自适应故障诊断方法 | |
CN113536970A (zh) | 一种视频分类模型的训练方法及相关装置 | |
CN115393690A (zh) | 一种轻量化神经网络的空对地观测多目标识别方法 | |
KR20210039921A (ko) | 신경망 모델을 최적화하도록 구성된 심층 신경망 시스템의 동작 방법 | |
CN113420651B (zh) | 深度卷积神经网络的轻量化方法、系统及目标检测方法 | |
CN111783688B (zh) | 一种基于卷积神经网络的遥感图像场景分类方法 | |
CN116244484B (zh) | 一种面向不平衡数据的联邦跨模态检索方法及系统 | |
CN116433980A (zh) | 脉冲神经网络结构的图像分类方法、装置、设备及介质 | |
CN114582518A (zh) | 医疗数据集优化方法及设备 | |
CN115577797A (zh) | 一种基于本地噪声感知的联邦学习优化方法及系统 | |
WO2021238734A1 (zh) | 一种神经网络的训练方法及相关设备 | |
CN116644783A (zh) | 模型训练方法、对象处理方法及装置、电子设备、介质 | |
CN114049576A (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 |