CN116823586A - 遥感图像处理方法、装置、设备和介质 - Google Patents
遥感图像处理方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN116823586A CN116823586A CN202310772842.8A CN202310772842A CN116823586A CN 116823586 A CN116823586 A CN 116823586A CN 202310772842 A CN202310772842 A CN 202310772842A CN 116823586 A CN116823586 A CN 116823586A
- Authority
- CN
- China
- Prior art keywords
- remote sensing
- output channel
- function
- neural network
- pruning
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 20
- 238000013138 pruning Methods 0.000 claims abstract description 109
- 238000000034 method Methods 0.000 claims abstract description 78
- 238000012545 processing Methods 0.000 claims abstract description 76
- 230000035945 sensitivity Effects 0.000 claims abstract description 74
- 238000003062 neural network model Methods 0.000 claims abstract description 68
- 238000012549 training Methods 0.000 claims abstract description 31
- 230000006870 function Effects 0.000 claims description 162
- 238000004364 calculation method Methods 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 19
- 238000010586 diagram Methods 0.000 claims description 16
- 238000001514 detection method Methods 0.000 claims description 10
- 230000008571 general function Effects 0.000 claims description 9
- 229940022353 herceptin Drugs 0.000 claims description 9
- 230000001133 acceleration Effects 0.000 claims description 6
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 238000004422 calculation algorithm Methods 0.000 description 10
- 230000000750 progressive effect Effects 0.000 description 10
- 230000015654 memory Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 8
- 230000001939 inductive effect Effects 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 4
- 230000006698 induction Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000009966 trimming Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
本公开提供了一种遥感图像处理方法,涉及人工智能领域。该方法用于遥感设备,所述遥感设备中部署有神经网络模型,所述方法包括:利用经剪枝的所述神经网络模型处理遥感图像,获得所述遥感图像中待检测对象的目标识别结果;所述神经网络模型被配置为预先在训练过程中经由如下操作进行剪枝:将遥感图像样本输入至待剪枝的所述神经网络模型;计算第n层卷积处理层中每个输出通道的灵敏度;对于任一个灵敏度小于等于特定阈值的输出通道,基于惩罚系数与该输出通道的当前参数进行剪枝处理,得到该输出通道的更新参数。本公开还提供了一种遥感图像处理装置、设备、存储介质和程序产品。
Description
技术领域
本公开涉及人工智能领域,更具体地,涉及一种遥感图像处理方法、装置、设备、介质和程序产品。
背景技术
一些遥感设备为了能进行地面目标识别和检测,会搭载训练好的神经网络模型进行计算,但这些神经网络模型往往是过参数化的、计算量庞大的,这会给设备带来不必要的计算成本和运行成本。
为了使其在降低计算量和参数量的同时也能保证网络精度,人们提出了许多算法来对大型的卷积网络进行轻量化,或直接学习更高效的小型模型替代原有模型。
在实现本公开发明构思的过程中,发明人发现,现有剪枝算法往往难以确定剪枝时每层的稀疏程度,并且大都选择人工调试的稀疏项惩罚系数,不能学习到良好的稀疏结构,还带来了额外的超参数。导致将相关技术中剪枝后的神经网络模型部署在遥感设备后,存在遥感图像处理速度较慢或目标识别结果不准确的问题。
发明内容
鉴于上述问题,本公开提供了一种遥感图像处理方法、装置、设备、介质和程序产品。
本公开实施例的一个方面,提供了一种遥感图像处理方法,用于遥感设备,所述遥感设备中部署有神经网络模型,所述方法包括:利用经剪枝的所述神经网络模型处理遥感图像,获得所述遥感图像中待检测对象的目标识别结果;其中,所述神经网络模型包括N层卷积处理层,其中每层卷积处理层包括S个输出通道,所述神经网络模型被配置为预先在训练过程中经由如下操作进行剪枝:将遥感图像样本输入至待剪枝的所述神经网络模型;计算第n层卷积处理层中每个输出通道的灵敏度,其中,所述每个输出通道对应于所述遥感图像样本的每个特征图,N、S和n皆为大于等于1的整数,且n小于等于N;对于任一个灵敏度小于等于特定阈值的输出通道,基于惩罚系数与该输出通道的当前参数进行剪枝处理,得到该输出通道的更新参数,该输出通道的当前参数或更新参数用于参与至对应特征图的卷积计算,所述惩罚系数基于连续赫维赛德函数和当前迭代更新次数确定。
根据本公开的实施例,所述方法还包括:将所述神经网络模型输出的待定识别结果和目标标签输入第一损失函数,得到第一损失函数值,所述待定识别结果包括所述遥感图像样本中已知检测对象的预测目标信息,所述目标标签包括所述已知检测对象的实际目标信息;将所述第一损失函数值和结构性稀疏项输入第二损失函数,得到第二损失函数值,所述结构性稀疏项根据第一类通道的当前参数和所述惩罚系数确定,所述第一类通道包括至少一个灵敏度小于等于特定阈值的输出通道;若所述第二损失函数值不符合结束条件,基于所述第二损失函数更新第二类通道的当前参数,所述第二类通道包括任一个灵敏度大于特定阈值的输出通道。
根据本公开的实施例,每完成K次迭代更新,K为大于等于1的整数,所述方法还包括:获得当前剪枝后的所述神经网络模型在所述遥感设备运行的推理时间,其中,所述推理时间包括利用当前剪枝后的所述神经网络模型处理所述遥感图像样本并得到待定识别结果的时间;若所述推理时间小于等于目标推理时间,确定当前剪枝后的所述神经网络模型为符合所述遥感设备部署要求的模型,其中,所述部署要求包括对所述遥感设备的推理加速要求,所述目标推理时间根据所述遥感设备的性能预先设置。
根据本公开的实施例,在计算第n层卷积处理层中每个输出通道的灵敏度之前,所述方法还包括:确定计算所述每个输出通道的灵敏度的通用函数,其中,所述通用函数基于第一损失函数构建得到,且用于计算所述每个输出通道对所述第一损失函数值的影响程度;对所述第一损失函数进行泰勒展开来处理所述通用函数,得到灵敏度计算函数,所述灵敏度计算函数用于基于所述每个输出通道的当前参数计算该输出通道的灵敏度。
根据本公开的实施例,在基于惩罚系数与该输出通道的当前参数进行剪枝处理之前,还包括:基于所述连续赫维赛德函数确定第一阶段函数和第二阶段函数;确定所述第二阶段函数的零点;将所述第二阶段函数的零点与所述当前迭代更新次数作为约束条件,基于所述第一阶段函数或第二阶段函数得到所述惩罚系数。
根据本公开的实施例,在所述基于惩罚系数与该输出通道的当前参数进行剪枝处理之前,基于所述第一阶段函数或第二阶段函数得到所述惩罚系数包括:在所述当前迭代更新次数小于所述第二阶段函数的零点时,基于所述第一阶段函数获得所述惩罚系数;在所述当前迭代更新次数大于等于所述第二阶段函数的零点时,基于所述第二阶段函数获得所述惩罚系数。
根据本公开的实施例,惩罚系数的计算函数表示如下:
其中,λ为惩罚系数,t为当前迭代更新次数,第一阶段函数始终为0,第二阶段函数为1-μe-γt+te-η,ε表示所述第二阶段函数的零点,γ表示所述第二阶段函数的曲率,η和μ分别为用于调整所述第二阶段函数走向的超参数。
根据本公开的实施例,所述基于惩罚系数与该输出通道的当前参数进行剪枝处理包括:比较所述当前参数的L2范数与所述惩罚系数的大小,得到比较结果;基于所述比较结果进行剪枝处理,得到该输出通道的更新参数。
根据本公开的实施例,所述基于所述比较结果进行剪枝处理,得到该输出通道的更新参数包括:若所述当前参数的L2范数小于等于所述惩罚系数,则该输出通道的更新参数置为0;若所述当前参数的L2范数大于所述惩罚系数,基于第三阶段函数得到该输出通道的更新参数,所述第三阶段函数基于所述惩罚系数与所述当前参数构建得到。
根据本公开的实施例,所述基于第三阶段函数得到该输出通道的更新参数包括:确定所述惩罚系数与所述当前参数的乘积结果;确定所述乘积结果与所述L2范数之间的比值;确定所述当前参数与所述比值之间的差值,所述差值为该输出通道的更新参数。
本公开实施例的另一方面提供了一种遥感图像处理装置,用于遥感设备,所述遥感设备中部署有神经网络模型,所述装置包括:图像处理模块,用于利用经剪枝的所述神经网络模型处理遥感图像,获得所述遥感图像中的目标识别结果;其中,所述神经网络模型包括N层卷积处理层,其中每层卷积处理层包括S个输出通道,所述神经网络模型被配置为预先在训练过程中经由如下操作进行剪枝:将遥感图像样本输入至待剪枝的所述神经网络模型;计算第n层卷积处理层中每个输出通道的灵敏度,其中,所述每个输出通道对应于所述遥感图像样本的每个特征图,N、S和n皆为大于等于1的整数,且n小于等于N;对于任一个灵敏度小于等于特定阈值的输出通道,基于惩罚系数与该输出通道的当前参数进行剪枝处理,得到该输出通道的更新参数,所述当前参数或更新参数用于参与至对应特征图的卷积计算,所述惩罚系数基于连续赫维赛德函数和当前迭代更新次数确定。
所述装置包括分别用于执行如上所述任意一项所述的方法的各个步骤的模块。
本公开实施例的另一方面提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行如上所述的方法。
本公开实施例的另一方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行如上所述的方法。
本公开实施例的另一方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上所述的方法。
上述一个或多个实施例具有如下有益效果:基于连续赫维赛德函数和当前迭代更新次数使得惩罚系数具有渐进动态调整的特点,从而在对任一个灵敏度小于等于特定阈值的输出通道剪枝处理时,得到的输出通道的更新参数更为精准,实现了高效的通道剪枝,并保证了准确性。从而使得惩罚系数更新与灵敏度相匹配,对遥感图像的识别和检测提供了简化计算、轻量部署的方法,提高了遥感图像处理速度,且较为准确。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的遥感图像处理方法的应用场景图;
图2示意性示出了根据本公开实施例的遥感图像处理方法的流程图;
图3示意性示出了根据本公开实施例的更新第二类通道的流程图;
图4示意性示出了根据本公开实施例的得到灵敏度计算函数的流程图;
图5示意性示出了根据本公开实施例的得到所述惩罚系数的流程图;
图6示意性示出了根据本公开实施例的η取值对λ(t)的影响情况;
图7示意性示出了根据本公开实施例的连续赫维赛德函数与sigmoid函数对比图;
图8示意性示出了根据本公开实施例的剪枝处理的流程图;
图9示意性示出了根据本公开实施例的得到更新参数的流程图;
图10示意性示出了根据本公开实施例的遥感图像处理装置的结构框图;以及
图11示意性示出了根据本公开实施例的适于实现遥感图像处理方法的电子设备的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
与原有复杂模型相比,简化模型能够带来存储占用和计算量的减少,同时还能维持网络的原有精度。网络剪枝是针对网络压缩这一课题的现有主流方法,其目的是把网络贡献值较小的参数剔除,在不影响精度或精度下降可接受的范围内实现模型压缩和加速。
针对未经预训练的模型进行通道剪枝,为了实现一个高精度的剪枝网络,往往需要获得专门的稀疏结构。例如相关技术中存在从头开始动态学习结构化稀疏网络的通道剪枝算法。但相关技术至少存在两点缺陷:一是未能以准确的方式计算每层的剪枝灵敏度,灵敏度差距较小时难以识别冗余通道。二是稀疏项的惩罚系数更新策略与灵敏度不匹配,剪枝率的渐进诱导曲线较为陡峭,不利于渐进剪枝的最优化。
本公开一些实施例中提供了一种遥感图像处理方法,预先在训练过程中进行剪枝,基于连续赫维赛德函数和当前迭代更新次数使得惩罚系数具有渐进动态调整的特点,从而在对任一个灵敏度小于等于特定阈值的输出通道剪枝处理时,得到的输出通道的更新参数更为精准,实现了高效的通道剪枝,并保证了准确性。具有一定的参数量和精度优势,使得惩罚系数更新与灵敏度相匹配。对遥感图像的识别和检测提供了简化计算、轻量部署的方法,提高了遥感图像处理速度,且较为准确。
另外,能够在一次训练过程中经由多个epoch进行迭代剪枝,一定程度上减少了微调、预训练和经由多次训练过程剪枝的操作,节省计算资源。便于遥感设备部署,解决了在部分遥感设备上由于设备硬件或软件属性等因素导致常规剪枝算法无法有效地加速模型推理的问题。
图1示意性示出了根据本公开实施例的遥感图像处理方法的应用场景图。需要注意的是,图1所示仅为可以应用本公开实施例的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的应用场景100可以包括终端设备101、102、103,网络104、服务器105和遥感设备106。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备101、102、103包括但不限于自动驾驶平台、可穿戴设备、可植入医疗设备、智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所传送的数据包提供支持的边缘服务器(仅为示例)。边缘服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
遥感设备106的具体硬件形式可以是图1所示的飞行器,可以是无人驾驶飞行器,也可以是有人驾驶飞行器。还可以是图1未示出的卫星或其他设备。遥感设备106可以采集遥感图像107,并通过网络104传输到终端设备101、102、103和/或服务器105。
在本公开实施例的训练过程或是训练完后的实际处理过程中,遥感图像107或是其中待检测对象的识别结果可以由用户通过终端设备101、102、103的客户端发送至服务器105,或者是服务器105依据系统预先设定的任务自动从数据库或遥感设备106获取。经剪枝的神经网络模型可以在遥感设备106本地训练并部署,也可以在终端设备101、102、103或服务器105训练并通过网络104传输到遥感设备106部署。
应该理解,图1中的终端设备、网络、服务器和遥感设备的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
以下将基于图1描述的场景,通过图2~图9对本公开实施例的遥感图像处理方法进行详细描述。
图2示意性示出了根据本公开实施例的遥感图像处理方法的流程图。该实施例的遥感图像处理方法用于遥感设备,遥感设备中部署有神经网络模型。如图2所示,该实施例的遥感图像处理方法包括:
在操作S110,利用经剪枝的神经网络模型处理遥感图像,获得遥感图像中待检测对象的目标识别结果。
其中,神经网络模型包括N层卷积处理层,其中每层卷积处理层包括S个输出通道。
示例性地,上述神经网络模型包括卷积神经网络模型(Convolutional NeuralNetworks,CNN)或深度神经网络模型(Deep Nerual Networks,DNN),经剪枝的神经网络模型中的各网络层中的权重为训练后的值。
通常卷积神经网络模型包括:数据输入层(Input layer)、卷积层(CONV layer)、激励层(ReLUlayer)、池化层(Pooling layer)、全连接层(FC layer)。深度神经网络模型为多层神经网络,包括输入层、隐藏层和输出层,其中隐藏层可以由多个网络层构成,隐藏层的层数和每层中的运算根据需要确定,例如其也可以设置上述卷积处理层和池化层。
卷积处理层是指可以对输入进行卷积计算的网络层,可以包括卷积层、全连接层或隐藏层中涉及卷积计算的层。
神经网络模型的卷积处理层可以包括至少一个输入通道和N个输出通道。至少一个输入通道可以根据上层网络层的输出结果,或输入层的输入数据确定。
每层卷积处理层的输出通道数S可以是该卷积处理层的最大输出通道数。最大输出通道数可以是依据具体实施例设定的值。例如在RGB颜色空间内,S可以为3,各输出通道包括与R、G、B一一对应。
参照剪枝方法200,金融欺诈检测模型被配置为预先通过如下操作进行剪枝:
在操作S210,将遥感图像样本输入至待剪枝的神经网络模型;
尤其说明,为了区别开来,在训练过程中的训练样本称之为遥感图像样本,在训练后实际推理过程中的对象称之为遥感图像。遥感图像与遥感图像样本的获取方式、文件格式或图像内容可以是相同的。待剪枝的神经网络模型中的各网络层中的权重为初始值,在边剪枝边训练的过程中得到最终值。
在操作S220,计算第n层卷积处理层中每个输出通道的灵敏度,其中,每个输出通道对应于遥感图像样本的每个特征图,N、S和n皆为大于等于1的整数,且n小于等于N;
可以根据每个输出通道对损失函数值的影响程度确定灵敏度。在一些实施例,从第n层卷积处理层中剪枝第i个输出通道,根据剪枝前后的模型在验证集的损失函数值变化量确定灵敏度;在另一些实施例中,可以使用基于泰勒展开平方和的方式计算通道灵敏度来作为剪枝度量,以下通过图4进一步展开说明。
可以理解,第n层卷积处理层是N层卷积处理层的任一层,可以遍历每层卷积处理层进行剪枝。
在操作S230,对于任一个灵敏度小于等于特定阈值的输出通道,基于惩罚系数与该输出通道的当前参数进行剪枝处理,得到该输出通道的更新参数,该输出通道的当前参数或更新参数用于参与至对应特征图的卷积计算,惩罚系数基于连续赫维赛德函数和当前迭代更新次数确定。
特定阈值可以根据剪枝比例确定,如剪枝比例为30%(仅为示例),则灵敏度从小到大排列,前30%中最后一位灵敏度即为特定阈值。剪枝比例可以固定的,也可以是动态调整的。
优选地,每个epoch结束,即迭代一次后,动态调整剪枝比例(也称之为稀疏更新比例)。具体而言,为了自适应地学习通道层面稀疏的网络,动态设置待剪参数的稀疏更新比例(Sparsity Updating Ratio)Rsu,首先初始化Rsu为1,表示对全部待剪参数进行结构化稀疏梯度更新(如操作S230),之后的每一个epoch中对每层的Rsu进行适应性调整,尝试将灵敏度较小的个通道剪掉,直至剪枝后的参数量或计算量达到预设要求。其中,/>表示第i层的待剪通道数。最后对这部分通道施加渐进式结构稀疏,而其他通道则进行正常的梯度更新(参照下述图3)。
示例性地,动态设置待剪参数的稀疏更新比例包括:每个epoch结束,确定每层的稀疏比例(零参数比例)和相对稀疏引导比(冗余非零参数比例),根据两者相加得到Rsu。稀疏比例通过统计每层零参数的占比得到,即将该层零参数的数量除以参数总量。相对稀疏引导比通过统计每层具有冗余非零参数的数量除以该层非零参数的数量,得到相对稀疏引导比。最后,使得1减去相对稀疏引导比的差值,稀疏比例除以该差值得到该层的Rsu。每个epoch结束,计算出各输出通道的灵敏度后,可以根据结构性稀疏项自适应的划定稀疏比例确定预设阈值,根据灵敏度小于等于该预设阈值的输出通道的参数确定冗余非零参数。根据结构性稀疏项自适应的划定稀疏比例包括根据动态变化的thr×Rss(θ(i))来确定。其中,thr由经验值确定,Rss(θ(i))参照下述式2获得。
惩罚系数是为了使神经网络模型变得稀疏而引入的一个惩罚函数的系数。本公开通过于连续赫维赛德函数和当前迭代更新次数确定渐进式动态调整的惩罚系数。惩罚系数可以参与到控制神经网络模型的稀疏程度中,避免过拟合,而灵敏度反映了影响神经网络模型的准确度和过拟合,因此,渐进式动态调整的惩罚系数,能够与通道灵敏度更匹配,能较好的完成剪枝任务,提高模型的泛化能力。
例如训练过程具有100个epoch,1个epoch是指使用全部遥感图像样本更新一次模型参数的过程,相当于完成了前向传播和后向传播。在结束第50个epoch时,即当前迭代次数为50。
根据本公开的实施例,预先在训练过程中进行剪枝,基于连续赫维赛德函数和当前迭代更新次数使得惩罚系数具有渐进动态调整的特点,从而在对任一个灵敏度小于等于特定阈值的输出通道剪枝处理时,得到的输出通道的更新参数更为精准,实现了高效的通道剪枝,并保证了准确性。具有一定的参数量和精度优势,使得惩罚系数更新与灵敏度相匹配。对遥感图像的识别和检测提供了简化计算、轻量部署的方法,提高了遥感图像处理速度,且较为准确。
图3示意性示出了根据本公开实施例的更新第二类通道的流程图。如图3所示,该实施例更新第二类通道包括:
在操作S310,将神经网络模型输出的待定识别结果和目标标签输入第一损失函数,得到第一损失函数值,待定识别结果包括遥感图像样本中已知检测对象的预测目标信息,目标标签包括已知检测对象的实际目标信息;在训练过程中神经网络模型输出的预测称之为待定识别结果,例如包括图像中的山、河、建筑或汽车等对象信息。
在操作S320,将第一损失函数值和结构性稀疏项输入第二损失函数,得到第二损失函数值,结构性稀疏项根据第一类通道的当前参数和惩罚系数确定,第一类通道包括至少一个灵敏度小于等于特定阈值的输出通道;
在操作S330,若第二损失函数值不符合结束条件,基于第二损失函数更新第二类通道的当前参数,第二类通道包括任一个灵敏度大于特定阈值的输出通道。
第二损失函数Loss如式1所示:
其中,D是指训练集,x是指遥感图像样本,y是指目标标签。F是指神经网络模型的待定识别结果,Θ是指所有模型参数,L是指第一损失函数,如标准的交叉熵损失函数。λ是指惩罚系数。Rss(θls)是指结构性稀疏项,并只对灵敏度低的参数施加这种稀疏性。θls是指第一类通道的参数。
Rss(θls)表示对低灵敏度(Low Sensitivity)的参数施加的结构性稀疏(Structured Sparsity)。以通道作为剪枝最小单位,有:
其中,N表示神经网络的层数,c(i)表示第i层的通道数,p(i)表示第i层剪枝后保留的通道数,表示第i层的权值张量(降维成二维矩阵),||·||2表示求L2范数。由于对权值张量做了二维化处理,那么该正则化是对/>先求解L2范数,再按通道维度求和,以获得二维矩阵/>的行稀疏,即通道维度的稀疏。
根据本公开的实施例,以灵敏度为剪枝标准,对每层中的输出通道参数以不同的方式进行更新,能学习到良好的稀疏结构,提高模型的泛化能力,实现了高效的卷积网络通道剪枝。
在该实施例中,只对基于稀疏更新比和灵敏度动态确定的待剪枝参数施加式2的正则项,并使用渐进式策略进行梯度传导,而其余非剪枝参数则进行正常的梯度更新以保证网络精度。根据经验,对具有较小p范数的滤波器进行卷积计算会输出相对较低的激活值,从而对模型的最终预测具有较小的数值影响。
在一些实施例中,每完成K次迭代更新,K为大于等于1的整数,还包括:
获得当前剪枝后的神经网络模型在遥感设备运行的推理时间,其中,推理时间包括利用当前剪枝后的神经网络模型处理遥感图像样本并得到待定识别结果的时间;
若推理时间小于等于目标推理时间,确定当前剪枝后的神经网络模型为符合遥感设备部署要求的模型,其中,部署要求包括对遥感设备的推理加速要求,目标推理时间根据遥感设备的性能预先设置。
例如图像识别场景中,当前剪枝后的神经网络模型处理一张或多张遥感图像样本得到待定识别结果的时间即为推理时间。若推理时间小于目标推理时间,说明当前剪枝后的神经网络模型符合要求,并且其比剪枝前的神经网络模型的参数量和浮点计算量小,更利于提高遥感设备的推理速度。
示例性地,不同的遥感设备的型号、用途、输入数据类型、访存带宽和数据对齐方式等因素不同,因此具有不同的推理性能。以最终部署在待部署的遥感设备下的推理时间为约束,搜索出在这个时间约束内符合部署要求的剪枝模型,能更精确地得到与待部署的遥感设备匹配的模型,从而实现更好的推理加速效果。
通常精度符合要求的神经网络模型的参数量和浮点计算量都很大,在遥感设备上部署后,实际运行带来很大的性能压力。然而神经网络模型在遥感设备上的推理时间与遥感设备的诸多特性息息相关,例如设备型号、输入数据类型、访存带宽和数据对齐方式等因素。因此,将相关技术中压缩后的神经网络模型部署在特定遥感设备中,存在推理速度较慢的问题。
根据本公开的实施例,以目标推理时间为约束,利用本公开一些实施例中的神经网络剪枝方法进行模型压缩,可针对待部署的遥感设备剪枝出满足需求的模型,实现特定遥感设备的推理加速。在得到高压缩率模型的同时,一定程度上解决了在部分遥感设备上由于访存带宽限制等因素导致常规剪枝算法无法有效地加速模型推理的问题。
图4示意性示出了根据本公开实施例的得到灵敏度计算函数的流程图。在计算第n层卷积处理层中每个输出通道的灵敏度之前,如图4所示,该实施例的遥感图像处理方法包括:
在操作S410,确定计算每个输出通道的灵敏度的通用函数,其中,通用函数基于第一损失函数构建得到,且用于计算每个输出通道对第一损失函数值的影响程度;
在操作S420,对第一损失函数进行泰勒展开来处理通用函数,得到灵敏度计算函数,灵敏度计算函数用于基于每个输出通道的当前参数计算该输出通道的灵敏度。
参照操作S410~操作S420,提出一种使用基于泰勒展开平方和的冗余参数判断方法。通过计算各参数损失函数的泰勒展开平方和,自适应的确定待剪参数中的稀疏更新比例,从而将冗余参数施加专门的稀疏项。从损失函数重建的角度看,假设ω是模型中经过度量标准计算后需要剪枝的参数,那么可以将ω的灵敏度表示为删除该参数所引起的损失的平方:
S(ω)=(L(F(Θω->0,x),y)-L(F(Θω,x),y))2 式3
其中Θω->0表示参数ω趋向于0。当ω对精度影响较大时,式3中的第一项将会偏离原损失函数,导致S(ω)增大;反之,ω对精度不敏感时,S(ω)则表现的比较小。因此,合理的求解或近似出S(ω)的值便可以判断ω对模型的重要程度,这里利用泰勒级数的展开可以得到:
其中o(ω2)表示ω的高阶无穷小量。为简化计算,可以将其省略。把式4推广到第i层可以得到:
其中表示第i层的权值矩阵,这里将四维张量看成二维处理。式5可以计算第i层第j个输出通道的灵敏度,在剪枝时,可以删去那些/>较小的通道,这样对模型的影响可以降到最小。
为了准确评估每个参数对灵敏度的贡献,避免在灵敏度差距较小时难以区分冗余参数,将式5近似为每个滤波器参数的平方后求和,即:
其中,j表示输出通道,r和k分别表示输入通道和权重张量尺寸,m表示通道数量。这样一来,在每个epoch动态确定稀疏更新比之后,就可以根据式6对每层的通道进行排序,将稀疏更新比范围内的通道剪枝处理。
图5示意性示出了根据本公开实施例的得到惩罚系数的流程图。
在基于惩罚系数与该输出通道的当前参数进行剪枝处理之前,如图5所示,该实施例得到惩罚系数包括:
在操作S510,基于连续赫维赛德函数确定第一阶段函数和第二阶段函数;
在操作S520,确定第二阶段函数的零点;例如第二阶段函数的零点与第一阶段函数的零点相近或相同,相近是指两者差值在允许范围内,如0.01(仅为示例)。零点是指函数值为0的点,此时函数的自变量有确定的取值。
在操作S530,将第二阶段函数的零点与当前迭代更新次数作为约束条件,基于第一阶段函数或第二阶段函数得到惩罚系数。
根据本公开的实施例,将第二阶段函数的零点与当前迭代更新次数作为约束条件,可以使得第一阶段函数与第二阶段函数之间的衔接处、第一阶段函数或第二阶段函数的曲线变化平缓过渡,实现渐进动态调整惩罚系数的效果,克服现有技术中惩罚系数曲线较为陡峭的缺陷。
在一些实施例中,在基于惩罚系数与该输出通道的当前参数进行剪枝处理之前,基于第一阶段函数或第二阶段函数得到惩罚系数包括:
在当前迭代更新次数小于第二阶段函数的零点时,基于第一阶段函数获得惩罚系数;
在当前迭代更新次数大于等于第二阶段函数的零点时,基于第二阶段函数获得惩罚系数。
在一些实施例中,为了更好的契合惩罚系数的渐进更新,引入了η和μ两个超参数,惩罚系数的计算函数表示如下:
其中,λ为惩罚系数,t为当前迭代更新次数,t≥0,第一阶段函数始终为0,第二阶段函数为1-μe-γt+te-η,ε表示第二阶段函数的零点,γ表示第二阶段函数的曲率,η和μ分别为用于调整第二阶段函数走向的超参数。
第二阶段函数及其中的各项超参数可以是通过拟合获得的,还可以进一步在拟合过程中,将多个第二阶段函数应用到剪枝过程中,根据最终剪枝结果确定如式7的最终函数。
根据本公开的实施例,提出了一种基于连续赫维赛德函数的惩罚系数更新方法来渐进式更新式7中的惩罚系数,连续赫维赛德函数是一种有利于逐步诱导稀疏性的平缓型渐进更新曲线,使用该函数将惩罚系数设置为渐进调整的动态值以逐步诱导剪枝相关的稀疏性,并设置更为精准的渐进剪枝诱导时机,前期训练参数而不加入稀疏诱导,中期采用平缓的渐进曲线诱导稀疏从而便于识别冗余通道,后期根据基于泰勒展开的度量标准剔除冗余通道。能够减少早期训练阶段对模型精度的过分影响。
图6示意性示出了根据本公开实施例的η取值对λ(t)的影响情况;图7示意性示出了根据本公开实施例的连续赫维赛德函数与sigmoid函数对比图。
例如设置了训练的总epoch(纪元数)为200,因此关心0<t<200范围内的取值情况。如图6所示,η<50时λ(t)的变化不在讨论范围内,而当η≥50时,其对λ(t)的影响不显著,可以优选为η=100。而μ的取值则对函数的零点有直接的影响。选择μ=10的惩罚系数更新策略,并将传统的非线性映射sigmoid函数调整为与连续赫维赛德函数相近的零点,如图7所示,可以发现连续赫维赛德函数(ours)在λ增长的前期与sigmoid函数幅度相近,而后期sigmoid函数增长较陡峭,连续赫维赛德函数函数则更为平缓,并能将这种趋势维持较长的epoch,更有利于逐步诱导稀疏性。需要注意的是,虽然本章的惩罚系数更新策略为分段函数,但由于epoch为离散取值且函数零点位于t=23.026处,故不会影响λ(t)的渐进诱导。
图8示意性示出了根据本公开实施例的剪枝处理的流程图。如图8所示,该实施例是操作S230的其中一个实施例,包括:
在操作S810,比较当前参数的L2范数与惩罚系数的大小,得到比较结果;
在操作S820,基于比较结果进行剪枝处理,得到该输出通道的更新参数。
在一些实施例中,基于比较结果进行剪枝处理,得到该输出通道的更新参数包括:
若当前参数的L2范数小于等于惩罚系数,则该输出通道的更新参数置为0;若当前参数的L2范数大于惩罚系数,基于第三阶段函数得到该输出通道的更新参数,第三阶段函数基于惩罚系数与当前参数构建得到。
图9示意性示出了根据本公开实施例的得到更新参数的流程图。如图9所示,该实施例是操作S230的其中一个实施例,包括:
在操作S910,确定惩罚系数与当前参数的乘积结果;
在操作S920,确定乘积结果与L2范数之间的比值;
在操作S930,确定当前参数与比值之间的差值,差值为该输出通道的更新参数。
若当前参数的L2范数大于惩罚系数,基于第三阶段函数得到该输出通道的更新参数,第三阶段函数基于惩罚系数与当前参数构建得到。
参照图8和图9,对于那些已经判断为冗余的参数来说,用不同的参数更新策略(例如根据各自的当前参数更新)进行边训练边剪枝的操作。为了提升剪枝的效果,渐进式剪枝策略使用改进的迭代阈值收缩算法更新灵敏度较小的个通道的参数。改进的迭代阈值收缩算法如式8:
其中,“=”左侧的为更新参数,“=”右侧的/>为当前参数。/>是当前参数的L2范数。/>是第三阶段函数。/>是操作S910中的乘积结果。
参照图2~图9,在另一些实施例中的模型剪枝过程如算法1-1所示:
对传统剪枝算法进行了改进,使用基于泰勒展开平方和的通道灵敏度标准作为剪枝度量,并提出一种基于连续赫维赛德函数的惩罚系数更新方法,使用未经预训练的模型进行边训练边剪枝的操作。相比传统通道剪枝算法,解决了每层灵敏度计算不准确,惩罚系数更新与灵敏度不匹配的问题,能较好的完成剪枝任务。
具体而言,首先,使用基于泰勒展开平方和的通道灵敏度作为剪枝度量。根据当前剪枝状态在待剪参数中确定小于泰勒灵敏度的部分参数自适应的划定稀疏比例,进一步获得精准的稀疏更新比。其次,提出一种基于连续赫维赛德函数的惩罚系数更新方法。选择有利于逐步诱导稀疏性的平缓型渐进更新曲线,使用连续的赫维赛德函数将惩罚系数设置为渐进调整的动态值以逐步诱导剪枝相关的稀疏性,并设置更为精准的渐进剪枝诱导时机,鼓励前期训练参数,中期渐进诱导稀疏,后期剔除冗余。最后,使用未经预训练的模型进行边训练边剪枝的操作。在训练结束时根据基于各参数泰勒展开平方和的通道灵敏度标准去除不重要的参数即可获得剪枝后模型进行推理,不需要微调、预训练和反复多个训练过程迭代剪枝。
在一些实施例中,上述自适应的划定稀疏比例是指:在每次迭代都划定thr×Rss(θ(i))的比例作为第i层确定冗余非零参数的统一比例。由于thr×Rss(θ(i))确定的冗余参数(灵敏度小于等于预设阈值的输出通道的参数)只对剪枝做预期指导,并不直接确定剪枝比例和更新方式,所以thr对结果的影响不敏感。同时,在反向传播过程中设置了不同的梯度更新方式,待剪参数比例也是根据当前剪枝状态而处于动态调整中的。
基于上述遥感图像处理方法,本公开还提供了一种遥感图像处理装置。以下将结合图10对该装置进行详细描述。
图10示意性示出了根据本公开实施例的遥感图像处理装置的结构框图。遥感图像处理装置用于遥感设备,遥感设备中部署有神经网络模型。
如图10所示,该实施例的遥感图像处理装置1000包括遥感图像处理模块1010和模型剪枝模块1020。模型剪枝模块1020包括样本输入单元1021、灵敏度计算单元1022和剪枝处理单元1023。
图像处理模块1010可以执行操作S110,用于利用经剪枝的神经网络模型处理遥感图像,获得遥感图像中的目标识别结果;
其中,神经网络模型包括N层卷积处理层,其中每层卷积处理层包括S个输出通道,神经网络模型被配置为预先在训练过程中经由模型剪枝模块1020执行如下操作进行剪枝:
样本输入单元1021可以执行操作S210,用于将遥感图像样本输入至待剪枝的神经网络模型;
灵敏度计算单元1022可以执行操作S220,用于计算第n层卷积处理层中每个输出通道的灵敏度,其中,每个输出通道对应于遥感图像样本的每个特征图,N、S和n皆为大于等于1的整数,且n小于等于N;
在一些实施例中,灵敏度计算单元1022可以执行操作S410~操作S420,在此不再赘述。
剪枝处理单元1023可以执行操作S230,用于对于任一个灵敏度小于等于特定阈值的输出通道,基于惩罚系数与该输出通道的当前参数进行剪枝处理,得到该输出通道的更新参数,当前参数或更新参数用于参与至对应特征图的卷积计算,惩罚系数基于连续赫维赛德函数和当前迭代更新次数确定。
在一些实施例中,剪枝处理单元1023可以执行操作S510~操作S530,操作S810~操作S820,操作S910~操作S920,在此不再赘述。
在一些实施例中,模型剪枝模块1020还可以包括标准更新单元,该单元可以执行操作S310~操作S330,在此不再赘述。
需要说明的是,遥感图像处理装置1000包括分别用于执行如上图2~图9描述的任意一个实施例的各个步骤的模块。装置部分实施例中各模块/单元/子单元等的实施方式、解决的技术问题、实现的功能、以及达到的技术效果分别与方法部分实施例中各对应的步骤的实施方式、解决的技术问题、实现的功能、以及达到的技术效果相同或类似,在此不再赘述。
根据本公开的实施例,遥感图像处理模块1010和模型剪枝模块1020中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。
根据本公开的实施例,遥感图像处理模块1010和模型剪枝模块1020中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,遥感图像处理模块1010和模型剪枝模块1020中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图11示意性示出了根据本公开实施例的适于实现遥感图像处理方法的电子设备的方框图。
如图11所示,根据本公开实施例的电子设备1100包括处理器1101,其可以根据存储在只读存储器(ROM)1102中的程序或者从存储部分1108加载到随机访问存储器(RAM)1103中的程序而执行各种适当的动作和处理。处理器1101例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))等等。处理器1101还可以包括用于缓存用途的板载存储器。处理器1101可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 1103中,存储有电子设备1100操作所需的各种程序和数据。处理器1101、ROM 1102以及RAM 1103通过总线1104彼此相连。处理器1101通过执行ROM 1102和/或RAM1103中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,程序也可以存储在除ROM 1102和RAM 1103以外的一个或多个存储器中。处理器1101也可以通过执行存储在一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备1100还可以包括输入/输出(I/O)接口1105,输入/输出(I/O)接口1105也连接至总线1104。电子设备1100还可以包括连接至I/O接口1105的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1107;包括硬盘等的存储部分1108;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至I/O接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入存储部分1108。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 1102和/或RAM 1103和/或ROM 1102和RAM 1103以外的一个或多个存储器。
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供的方法。
在该计算机程序被处理器1101执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分1109被下载和安装,和/或从可拆卸介质1111被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
在这样的实施例中,该计算机程序可以通过通信部分1109从网络上被下载和安装,和/或从可拆卸介质1111被安装。在该计算机程序被处理器1101执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。
Claims (14)
1.一种遥感图像处理方法,用于遥感设备,所述遥感设备中部署有神经网络模型,所述方法包括:
利用经剪枝的所述神经网络模型处理遥感图像,获得所述遥感图像中待检测对象的目标识别结果;
其中,所述神经网络模型包括N层卷积处理层,其中每层卷积处理层包括S个输出通道,所述神经网络模型被配置为预先在训练过程中经由如下操作进行剪枝:
将遥感图像样本输入至待剪枝的所述神经网络模型;
计算第n层卷积处理层中每个输出通道的灵敏度,其中,所述每个输出通道对应于所述遥感图像样本的每个特征图,N、S和n皆为大于等于1的整数,且n小于等于N;
对于任一个灵敏度小于等于特定阈值的输出通道,基于惩罚系数与该输出通道的当前参数进行剪枝处理,得到该输出通道的更新参数,该输出通道的当前参数或更新参数用于参与至对应特征图的卷积计算,所述惩罚系数基于连续赫维赛德函数和当前迭代更新次数确定。
2.根据权利要求1所述的方法,其中,所述方法还包括:
将所述神经网络模型输出的待定识别结果和目标标签输入第一损失函数,得到第一损失函数值,所述待定识别结果包括所述遥感图像样本中已知检测对象的预测目标信息,所述目标标签包括所述已知检测对象的实际目标信息;
将所述第一损失函数值和结构性稀疏项输入第二损失函数,得到第二损失函数值,所述结构性稀疏项根据第一类通道的当前参数和所述惩罚系数确定,所述第一类通道包括至少一个灵敏度小于等于特定阈值的输出通道;
若所述第二损失函数值不符合结束条件,基于所述第二损失函数更新第二类通道的当前参数,所述第二类通道包括任一个灵敏度大于特定阈值的输出通道。
3.根据权利要求1或2所述的方法,其中,每完成K次迭代更新,K为大于等于1的整数,所述方法还包括:
获得当前剪枝后的所述神经网络模型在所述遥感设备运行的推理时间,其中,所述推理时间包括利用当前剪枝后的所述神经网络模型处理所述遥感图像样本并得到待定识别结果的时间;
若所述推理时间小于等于目标推理时间,确定当前剪枝后的所述神经网络模型为符合所述遥感设备部署要求的模型,其中,所述部署要求包括对所述遥感设备的推理加速要求,所述目标推理时间根据所述遥感设备的性能预先设置。
4.根据权利要求1所述的方法,其中,在计算第n层卷积处理层中每个输出通道的灵敏度之前,所述方法还包括:
确定计算所述每个输出通道的灵敏度的通用函数,其中,所述通用函数基于第一损失函数构建得到,且用于计算所述每个输出通道对所述第一损失函数值的影响程度;
对所述第一损失函数进行泰勒展开来处理所述通用函数,得到灵敏度计算函数,所述灵敏度计算函数用于基于所述每个输出通道的当前参数计算该输出通道的灵敏度。
5.根据权利要求1所述的方法,其中,在基于惩罚系数与该输出通道的当前参数进行剪枝处理之前,还包括:
基于所述连续赫维赛德函数确定第一阶段函数和第二阶段函数;
确定所述第二阶段函数的零点;
将所述第二阶段函数的零点与所述当前迭代更新次数作为约束条件,基于所述第一阶段函数或第二阶段函数得到所述惩罚系数。
6.根据权利要求5所述的方法,其中,在所述基于惩罚系数与该输出通道的当前参数进行剪枝处理之前,基于所述第一阶段函数或第二阶段函数得到所述惩罚系数包括:
在所述当前迭代更新次数小于所述第二阶段函数的零点时,基于所述第一阶段函数获得所述惩罚系数;
在所述当前迭代更新次数大于等于所述第二阶段函数的零点时,基于所述第二阶段函数获得所述惩罚系数。
7.根据权利要求1、5或6所述的方法,其中,惩罚系数的计算函数表示如下:
其中,λ为惩罚系数,t为当前迭代更新次数,第一阶段函数始终为0,第二阶段函数为1-μe-γt+te-η,ε表示所述第二阶段函数的零点,γ表示所述第二阶段函数的曲率,η和μ分别为用于调整所述第二阶段函数走向的超参数。
8.根据权利要求1所述的方法,其中,所述基于惩罚系数与该输出通道的当前参数进行剪枝处理包括:
比较所述当前参数的L2范数与所述惩罚系数的大小,得到比较结果;
基于所述比较结果进行剪枝处理,得到该输出通道的更新参数。
9.根据权利要求8所述的方法,其中,所述基于所述比较结果进行剪枝处理,得到该输出通道的更新参数包括:
若所述当前参数的L2范数小于等于所述惩罚系数,则该输出通道的更新参数置为0;
若所述当前参数的L2范数大于所述惩罚系数,基于第三阶段函数得到该输出通道的更新参数,所述第三阶段函数基于所述惩罚系数与所述当前参数构建得到。
10.根据权利要求9所述的方法,其中,所述基于第三阶段函数得到该输出通道的更新参数包括:
确定所述惩罚系数与所述当前参数的乘积结果;
确定所述乘积结果与所述L2范数之间的比值;
确定所述当前参数与所述比值之间的差值,所述差值为该输出通道的更新参数。
11.一种遥感图像处理装置,用于遥感设备,所述遥感设备中部署有神经网络模型,所述装置包括:
图像处理模块,用于利用经剪枝的所述神经网络模型处理遥感图像,获得所述遥感图像中的目标识别结果;
其中,所述神经网络模型包括N层卷积处理层,其中每层卷积处理层包括S个输出通道,所述神经网络模型被配置为预先在训练过程中经由如下操作进行剪枝:
将遥感图像样本输入至待剪枝的所述神经网络模型;
计算第n层卷积处理层中每个输出通道的灵敏度,其中,所述每个输出通道对应于所述遥感图像样本的每个特征图,N、S和n皆为大于等于1的整数,且n小于等于N;
对于任一个灵敏度小于等于特定阈值的输出通道,基于惩罚系数与该输出通道的当前参数进行剪枝处理,得到该输出通道的更新参数,所述当前参数或更新参数用于参与至对应特征图的卷积计算,所述惩罚系数基于连续赫维赛德函数和当前迭代更新次数确定。
12.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1~10中任一项所述的方法。
13.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行根据权利要求1~10中任一项所述的方法。
14.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据权利要求1~10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310772842.8A CN116823586A (zh) | 2023-06-27 | 2023-06-27 | 遥感图像处理方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310772842.8A CN116823586A (zh) | 2023-06-27 | 2023-06-27 | 遥感图像处理方法、装置、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116823586A true CN116823586A (zh) | 2023-09-29 |
Family
ID=88123648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310772842.8A Pending CN116823586A (zh) | 2023-06-27 | 2023-06-27 | 遥感图像处理方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116823586A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117521764A (zh) * | 2024-01-04 | 2024-02-06 | 中国科学院空天信息创新研究院 | 用于星上神经网络的微调方法、装置、设备及存储介质 |
-
2023
- 2023-06-27 CN CN202310772842.8A patent/CN116823586A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117521764A (zh) * | 2024-01-04 | 2024-02-06 | 中国科学院空天信息创新研究院 | 用于星上神经网络的微调方法、装置、设备及存储介质 |
CN117521764B (zh) * | 2024-01-04 | 2024-05-14 | 中国科学院空天信息创新研究院 | 用于星上神经网络的微调方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10817805B2 (en) | Learning data augmentation policies | |
US11429844B2 (en) | Training policy neural networks using path consistency learning | |
US11295208B2 (en) | Robust gradient weight compression schemes for deep learning applications | |
US20210004677A1 (en) | Data compression using jointly trained encoder, decoder, and prior neural networks | |
US11663481B2 (en) | Neural network architecture pruning | |
US11922281B2 (en) | Training machine learning models using teacher annealing | |
CN111523640B (zh) | 神经网络模型的训练方法和装置 | |
US20200151545A1 (en) | Update of attenuation coefficient for a model corresponding to time-series input data | |
US20220044109A1 (en) | Quantization-aware training of quantized neural networks | |
CN116823586A (zh) | 遥感图像处理方法、装置、设备和介质 | |
CN111709493A (zh) | 对象分类方法、训练方法、装置、设备及存储介质 | |
US20240135174A1 (en) | Data processing method, and neural network model training method and apparatus | |
CN115565019A (zh) | 基于深度自监督生成对抗的单通道高分辨sar图像地物分类方法 | |
CN117217280A (zh) | 神经网络模型优化方法、装置及计算设备 | |
CN114219078A (zh) | 一种神经网络模型交互训练方法、装置及存储介质 | |
US20220114479A1 (en) | Systems and methods for automatic mixed-precision quantization search | |
KR102110316B1 (ko) | 뉴럴 네트워크를 이용한 변분 추론 방법 및 장치 | |
CN110782017B (zh) | 用于自适应调整学习率的方法和装置 | |
US20210365777A1 (en) | Continuous parametrizations of neural network layer weights | |
CN113762304B (zh) | 图像处理方法、图像处理装置和电子设备 | |
CN114730380A (zh) | 神经网络的深度并行训练 | |
Yang et al. | Label distribution learning with climate probability for ensemble forecasting | |
CN116610534B (zh) | 一种基于Kubernetes集群资源的改进预测性弹性伸缩方法 | |
US12033038B2 (en) | Learning data augmentation policies | |
US20220253695A1 (en) | Parallel cascaded neural networks |
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 |