CN112766307A - 图像处理方法、装置、电子设备及可读存储介质 - Google Patents
图像处理方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN112766307A CN112766307A CN202011572699.0A CN202011572699A CN112766307A CN 112766307 A CN112766307 A CN 112766307A CN 202011572699 A CN202011572699 A CN 202011572699A CN 112766307 A CN112766307 A CN 112766307A
- Authority
- CN
- China
- Prior art keywords
- neural network
- training
- network model
- quantized
- loss value
- 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
- 238000012549 training Methods 0.000 claims abstract description 270
- 238000003062 neural network model Methods 0.000 claims abstract description 191
- 238000000034 method Methods 0.000 claims abstract description 55
- 238000012545 processing Methods 0.000 claims abstract description 53
- 230000008569 process Effects 0.000 claims abstract description 36
- 238000004821 distillation Methods 0.000 claims description 22
- 238000004891 communication Methods 0.000 claims description 12
- 230000009467 reduction Effects 0.000 claims description 6
- 238000013139 quantization Methods 0.000 abstract description 48
- 230000000694 effects Effects 0.000 abstract description 5
- 239000013598 vector Substances 0.000 description 27
- 230000006870 function Effects 0.000 description 22
- 238000013528 artificial neural network Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 11
- 238000012512 characterization method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 150000001875 compounds Chemical class 0.000 description 2
- 238000011478 gradient descent method Methods 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013140 knowledge distillation Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- 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)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本申请提供一种图像处理方法、装置、电子设备及可读存储介质,方法包括:将待处理图像输入至量化神经网络模型,并输出图像处理结果。而量化神经网络模型则通过以下方式得到:获取预先标注的训练样本,采用训练样本对待训练的量化神经网络模型,以及该量化神经网络模型与预设的各非量化网络结构结合在一起构成的辅助网络进行迭代训练,得到每次迭代训练过程中辅助网络对应的第一损失值,以及量化神经网络模型对应的第二损失值,进而在满足预设收敛条件时停止迭代。这样得到的量化神经网络模型,量化权重在训练时受非量化网络影响,使量化神经网络模型权重参数更易于训练和收敛,使最终得到的量化神经网络模型性能更优,进而使得图像处理效果更好。
Description
技术领域
本申请涉及数据处理技术领域,具体而言,涉及一种图像处理方法、装置、电子设备及可读存储介质。
背景技术
在移动端等资源受限的平台中,运行复杂的深度神经网络往往不可行,研究人员通过量化神经网络的权重或特征值来解决这个问题。
量化神经网络是将神经网络中的权重或特征值用低比特(即小于32比特)表示的过程,相比非量化网络,量化网络的表示能力大大减小。但因此也导致使用传统的模型训练方法对量化神经网络进行训练时,量化神经网络的权重无法得到有效的更新,这使得量化网络的性能一般较低,进而严重影响量化神经网络的图像处理能力。
发明内容
本申请实施例的目的在于提供一种图像处理方法、装置、电子设备及可读存储介质,用以解决目前量化神经网络模型的权重无法得到有效的更新,使得量化神经网络模型的性能一般较低,进而严重影响量化神经网络的图像处理能力的问题。
本申请实施例提供了一种图像处理方法,包括:将待处理图像输入至量化神经网络模型,并输出图像处理结果;其中,所述量化模型通过以下过程训练得到:获取预先标注的训练样本;采用所述训练样本对待训练的量化神经网络模型与预设的各非量化网络结构结合在一起构成的辅助网络进行迭代训练,得到每次迭代训练过程中所述辅助网络对各所述训练样本处理得到的各所述训练样本对应的第一损失值;采用所述训练样本对所述量化神经网络模型进行迭代训练,得到每次迭代训练过程中所述量化神经网络模型对各所述训练样本处理得到的各所述训练样本对应的第二损失值;根据所述第一损失值和第二损失值,确定最新迭代的所述量化神经网络模型是否满足预设收敛条件;在所述量化神经网络模型满足所述预设收敛条件时,停止迭代,得到训练好的量化神经网络模型。
需要说明的是,对于模型的训练,是一个不断迭代的过程。通过不断迭代更新模型内的权重参数,并不断以迭代更新后的模型对训练样本进行处理,使得最终得到的损失值越来越小,直至损失值收敛。损失值收敛时得到的模型即为训练好的模型,此时模型中的权重参数即为最终更新得到的权重参数。而量化神经网络模型由于权重参数是用低比特表示的,传统的这种训练方式进行模型迭代时,往往会出现在模型效果并不十分理想的情况下,损失值就已收敛了。而在非量化网络中则不会存在该问题。
据此,在本申请实施例中,通过将预设的各非量化网络结构与待训练的量化神经网络模型结合在一起构成的辅助网络,进而同时对量化神经网络模型和辅助网络进行迭代训练,这样量化神经网络模型中量化的权重即被非量化网络结构与量化神经网络模型共享,训练时会受到非量化网络的迭代更新的影响,从而使得量化神经网络模型权重参数更易于训练和收敛,使最终训练得到的量化神经网络模型性能更优,进而使得图像处理效果更好。
进一步地,所述量化神经网络模型的每一卷积层分别与所述各非量化网络结构中的一非量化网络结构结合在一起,构成所述辅助网络。
在上述实现过程中,量化神经网络模型的每一卷积层分别与一非量化网络结构结合在一起,这样构成的辅助网络每一层卷积层对于特征的处理即会同时受到量化神经网络模型和非量化网络结构的双重影响,从而加深训练过程中非量化网络结构对于量化神经网络模型的权重参数的影响,使得训练收敛时,量化神经网络模型的权重参数能够得到更为有效的更新。
进一步地,所述非量化网络结构为通道数是所连接的卷积层的通道数n倍的非量化卷积层;n为大于等于1的常数。
进一步地,所述n大于等于2;所述非量化网络结构包括n个与所连接的卷积层的通道数相同的卷积核;所述n个卷积核中的一个卷积核的输出特征,与所述量化神经网络模的卷积层针对目标输入特征所产生的输出特征进行加和运算,并在加和后与所述n个卷积核中的其余卷积核的输出特征进行特征通道连接运算;其中,所述目标输入特征为所述非量化网络结构的输入特征。
在上述实现过程中,针对非量化网络结构的输入特征,量化神经网络模型的卷积层的输出特征会与非量化网络结构的一个卷积核的输出特征加和,进而在加和后与非量化网络结构的其余卷积核的输出特征进行特征通道连接运算,这样即有效将量化神经网络模型的卷积层与非量化网络结构结合在一起,特征在输入到辅助网络的一卷积层后,会同时被量化神经网络模型的卷积层和非量化网络结构处理,进而输出处理后的特征,从而确保了训练过程中非量化网络结构对于量化神经网络模型的权重参数的影响。同时,由于非量化网络结构卷积核数量多于量化神经网络模型的卷积层卷积核数量,因此可以加大训练过程中非量化网络结构对于量化神经网络模型的权重参数的影响,使得训练收敛时,量化神经网络模型的权重参数能够得到更为有效的更新。
进一步地,根据所述第一损失值和第二损失值,确定最新迭代的所述量化神经网络模型是否满足预设收敛条件,包括:根据最新一次迭代训练中,所有训练样本对应的第一损失值、第二损失值,确定所述最新一次迭代训练中的总损失值;根据所述总损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件。
在上述实现过程中,在判断是否收敛时,结合当前迭代的权重参数对于量化神经网络模型的适应情况(当前的第二损失值即反映了当前迭代的权重参数对于量化神经网络模型的适应情况),使得最终更新得到的量化神经网络模型的权重参数更贴合量化神经网络模型需要,使最终训练得到的量化神经网络模型性能更优。
进一步地,根据最新一次迭代训练中,所有训练样本对应的第一损失值、第二损失值,确定所述最新一次迭代训练中的总损失值,包括:获取最新一次迭代训练中,所有训练样本对应的第一损失值和第二损失值之和;所述所有训练样本对应的第一损失值和第二损失值之和为所述最新一次迭代训练中的总损失值。
在上述实现过程中,将所有训练样本对应的第一损失值和第二损失值之和作为所有训练样本对应的总损失值,使得总损失值得以反映所有训练样本在量化神经网络模型以及辅助网络中的综合损失情况,使得确定出的量化神经网络模型更为合理。
进一步地,根据所述总损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件包括:在最新一次迭代训练中的总损失值较之前各次迭代训练中的总损失值不再减小或减小幅度低于预设阈值时,确定最新迭代的所述量化神经网络模型满足预设收敛条件。
进一步地,所述方法还包括:在迭代训练过程中,获取每一次迭代训练过程中各所述训练样本对应的所述量化神经网络模型与所述辅助网络之间的蒸馏损失值;所述根据所述第一损失值和第二损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件,包括:根据最新一次迭代训练中,所有训练样本对应的第一损失值、第二损失值和蒸馏损失值,确定所述最新一次迭代训练中的总损失值;根据所述总损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件。
在上述实现过程中,结合了量化神经网络模型与辅助网络之间的蒸馏损失,从而进一步使得量化神经网络模型的权重参数的更新更有效,进一步提高了训练得到的量化神经网络模型的性能。
进一步地,根据最新一次迭代训练中,所有训练样本对应的第一损失值、第二损失值和蒸馏损失值,确定所述最新一次迭代训练中的总损失值,包括:获取最新一次迭代训练中,所有训练样本对应的第一损失值、第二损失值和蒸馏损失值之和;所述所有训练样本对应的第一损失值、第二损失值和蒸馏损失值之和为所述最新一次迭代训练中的总损失值。
在上述实现过程中,将所有训练样本对应的第一损失值、第二损失值和蒸馏损失值之和作为所有训练样本对应的总损失值,使得总损失值得以反映所有训练样本在量化神经网络模型、辅助网络中,以及在量化神经网络模型和辅助网络之间的综合损失情况,使得确定出的量化神经网络模型更为合理。
本申请实施例还提供了一种量化神经网络模型的训练结构,包括:待训练的量化神经网络模型;非量化网络结构,与所述量化神经网络模型结合在一起构成辅助网络;所述辅助网络的输出端与预设的第一损失函数连接,所述第一损失函数用于根据所述辅助网络输出的第一向量进行损失计算,得到各预设的训练样本对应的第一损失值;所述第一向量为所述辅助网络对所述训练样本进行处理后输出的向量;所述量化神经网络模型的输出端与预设的第二损失函数连接,所述第二损失函数用于根据所述量化神经网络模型输出的第二向量进行损失计算,得到各所述训练样本对应的第二损失值;所述第二向量为所述量化神经网络模型对所述训练样本进行处理后输出的向量。
通过上述训练结构,只需将预先标注的训练样本同时输入到量化神经网络模型和辅助网络中进行迭代训练,即可根据第一损失值和第二损失值的收敛情况实现对量化神经网络模型的训练。这样量化神经网络模型的权重即被非量化网络结构与量化神经网络模型共享,训练时会受到非量化网络的迭代更新的影响,从而使得量化神经网络模型权重参数更易于训练和收敛,使最终训练得到的量化神经网络模型性能更优。
进一步地,所述量化神经网络模型的每一卷积层分别与一非量化网络结构结合在一起,构成所述辅助网络。
进一步地,所述非量化网络结构为通道数是所连接的卷积层的通道数n倍的非量化卷积层;所述n为大于等于1的常数。
进一步地,所述n大于等于2;所述非量化网络结构包括n个与所连接的卷积层的通道数相同的卷积核;所述n个卷积核中的一个卷积核与所述量化神经网络模型的卷积层加和,并在加和后与所述n个卷积核中的其余卷积核特征通道连接。
本申请实施例还提供了一种图像处理装置,包括:处理模块、获取模块和训练模块;所述处理模块,用于将待处理图像输入至量化神经网络模型,并输出图像处理结果;其中,所述量化模型通过所述获取模块和训练模块训练得到;所述获取模块,用于获取预先标注的训练样本;所述训练模块,用于采用所述训练样本对待训练的量化神经网络模型与预设的各非量化网络结构结合在一起构成的辅助网络进行迭代训练,得到每次迭代训练过程中所述辅助网络对各所述训练样本处理得到的各所述训练样本对应的第一损失值;以及用于采用所述训练样本对所述量化神经网络模型进行迭代训练,得到每次迭代训练过程中所述量化神经网络模型对各所述训练样本处理得到的各所述训练样本对应的第二损失值;所述训练模块,还用于根据所述第一损失值和第二损失值,确定最新迭代的所述量化神经网络模型是否满足预设收敛条件;在所述量化神经网络模型满足所述预设收敛条件时,停止迭代,得到训练好的量化神经网络模型。
本申请实施例还提供了一种电子设备,包括:处理器、存储器及通信总线;所述通信总线用于实现所述处理器和存储器之间的连接通信;所述处理器用于执行存储器中存储的一个或者多个程序,以实现上述任一种的图像处理方法。
本申请实施例中还提供了一种可读存储介质,所述可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述任一种的图像处理方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种量化神经网络模型的训练结构的示意图;
图2-1为本申请实施例提供的一种图1所示训练结构中的一个卷积层中的数据处理过程示意图;
图2-2为本申请实施例提供的另一种图1所示训练结构中的一个卷积层中的数据处理过程示意图;
图3为本申请实施例提供的一种量化神经网络模型的训练方法的流程示意图;
图4为本申请实施例提供的另一种量化神经网络模型的训练结构的示意图;
图5为本申请实施例提供的一种图像处理装置的结构示意图;
图6为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
实施例一:
为了解决目前量化神经网络模型的权重无法得到有效的更新,使得量化神经网络模型的性能一般较低,严重影响量化神经网络的图像处理能力的问题,本申请实施例中提供了一种量化神经网络模型的训练结构以及相应的训练方法。
参见图1所示,图1为本申请实施例所提供的一种量化神经网络模型的训练结构,包括:待训练的量化神经网络模型和多个非量化网络结构(需要注意的是,若量化神经网络模型仅具有一个卷积层,那么非量化网络结构可以仅有一个)。其中,非量化网络结构与量化神经网络模型结合在一起构成辅助网络,辅助网络用于在获取到预先设定并标注好的训练样本时,对训练样本进行处理,输出各训练样本的第一向量。需要注意的是,该预先设定并标注好的训练样本还会同时被待训练的量化神经网络模型独立进行处理,并输出各训练样本的第二向量。
在本申请实施例中,整个辅助网络的输出端与第一损失函数连接,从而由第一损失函数根据辅助网络输出的第一向量进行损失计算,得到各训练样本对应的第一损失值。
此外,待训练的量化神经网络模型的输出端与第二损失函数连接,从而由第二损失函数根据量化神经网络模型输出的第二向量进行损失计算,得到各训练样本对应的第二损失值。
需要说明的是,对于图1所示的训练结构,可以根据第一损失函数输出的第一损失值和第二损失函数输出的第二损失值共同对训练结构进行迭代。
应当理解的是,对于图1所示的训练结构,量化神经网络模型和非量化网络结构之间的结合,可以是通过卷积层连接在一起的。
示例性的,参见图2-1和图2-2所示,图2-1和图2-2为辅助网络中的一个由量化神经网络模型的卷积层(本实施例后文称量化卷积层)与一非量化网络结构结合在一起形成的卷积层。其中,非量化网络结构为通道数是所连接的卷积层的通道数n倍的非量化卷积层,n为大于等于1的常数。需要注意的是,在本申请实施例中,n的取值应当使得非量化网络结构的通道数为整数,其具体值由工程师根据实际需要进行设定,例如可以设定为2。
在n为1时,参见图2-1所示,图2-1中椭圆框表示输入特征或输出特征,大矩形框表示卷积核权重,“+”代表加和运算,Qw表示量化函数,图2-1黑色部分表征量化卷积层,而白色部分则表征非量化卷积层。
因此,对于图2-1有:设U1表示量化卷积层的输入特征,U2表示非量化卷积层的输入特征,V1表示量化卷积层的输出特征,V2表示非量化卷积层的输出特征,W1表示量化卷积层卷积核的权重,W2表示非量化卷积层卷积核的权重。则有:
V1=U1*Qw(W1),V2=U2*W1+U2*W2,式中*表示卷积运算,Qw(W1)表示对W1进行量化。
在n大于等于2时,参见图2-2所示,图2-2中椭圆框表示输入特征或输出特征,大矩形框表示卷积核权重,“+”代表加和运算,“×”代表特征通道连接运算,Qw表示量化函数。图2-2黑色部分表征量化卷积层卷,而白色部分则表征非量化卷积层。由于n大于等于2,非量化卷积层可以分成n各通道数与量化卷积层相同的卷积核。
因此,对于图2-2有:设U1表示量化卷积层的输入特征,U2表示非量化卷积层的输入特征,V1表示量化卷积层的输出特征,V2表示非量化卷积层的输出特征,W1表示量化卷积层卷积核的权重,W21至W2n分别表示非量化卷积层中n个卷积核的权重。则有:
V1=U1*Qw(W1),V2=Concat(U2*W1+U2*W21,U2*W22,...U2*W2n),式中*表示卷积运算,Concat表示特征通道连接运算。
需要注意的是,在n大于等于2时,除了可以按照前述图2-2所示的仅进行一次加和后即进行特征通道连接运算的结合方式外,也可以还具有其余结合方式,比如可以将多个非量化卷积层中的卷积核分别与量化卷积层卷积核加和后再执行特征通道连接运算。例如,可以将两个非量化卷积层中的卷积核分别与量化卷积层卷积核加和后再执行特征通道连接运算,此时有:V2=Concat(U2*W1+U2*W21,U2*W1+U2*W22,U2*W23,...U2*W2n)。若n为2,前式为V2=Concat(U2*W1+U2*W21,U2*W1+U2*W22)。
需要说明的是,在本申请实施例中,也可以不按照量化卷积层的通道数对非量化网络结构进行划分,而只需要确保具有一个与量化卷积层通道数相同的,能与量化卷积层做加和运算的卷积核即可。比如设量化卷积层的通道数为32,非量化网络结构通道数为64,非量化网络结构可以分为一个通道数为32的卷积核和两个通道数为16的卷积合核,通道数为32的卷积核与量化卷积层加和后,分别与两个通道数为16的卷积核进行特征通道连接运算。
在本申请实施例中,具体的结合方式可以由工程师根据实际需要进行设定,只要能够将量化卷积层和非量化卷积层共同用于对输入特征进行处理即可。
需要注意的是,在本申请实施例中,可以仅将量化神经网络模型的部分卷积层分别与一非量化网络结构结合在一起得到辅助网络。但是,也可以将量化神经网络模型的每一卷积层,分别与一非量化网络结构结合在一起得到辅助网络,例如图1所示,从而加深非量化网络结构与量化神经网络模型的结合程度,加深训练过程中非量化网络结构对于量化神经网络模型的权重参数的影响。这样,在输入训练样本后,辅助网络的每一卷积层依次按照前述公式进行特征处理,从而可以最终输出处理后的特征。
需要注意的是,在本申请实施例中,可以仅将量化神经网络模型的部分卷积层分别与一非量化网络结构结合在一起得到辅助网络。但是,也可以将量化神经网络模型的每一卷积层,分别与一非量化网络结构结合在一起得到辅助网络,例如图1所示,从而加深非量化网络结构与量化神经网络模型的结合程度,加深训练过程中非量化网络结构对于量化神经网络模型的权重参数的影响。
需要注意的是,为了便于第一损失函数进行计算,可以在辅助网络输出端设置一全连接层,将最终输出的特征转换为向量。例如图1所示。
类似的,为了便于第二损失函数进行计算,可以在辅助网络输出端设置一全连接层,将最终输出的特征转换为向量。
基于前述训练结构,本申请实施例中提供了一种量化神经网络模型的训练方法,可参见图3所示,包括:
S301:获取预先标注的训练样本。
S302:采用训练样本对待训练的量化神经网络模型,以及该量化神经网络模型与预设的各非量化网络结构结合在一起构成的辅助网络进行迭代训练,得到每次迭代训练过程中辅助网络对各训练样本处理得到的各训练样本对应的第一损失值,以及量化神经网络模型对各训练样本处理得到的各训练样本对应的第二损失值。
需要注意的是,第一损失值是由第一损失函数计算得到的值,第二损失值是由第二损失函数计算得到的值。
S303:根据第一损失值和第二损失值确定最新迭代的量化神经网络模型是否满足预设收敛条件。
在本实施例中,可以根据最新一次迭代训练中,所有训练样本对应的第一损失值、第二损失值,确定最新一次迭代训练中的总损失值(比如可以将最新一次迭代训练中,所有训练样本对应的第一损失值和第二损失值之和作为总损失值),进而根据总损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件。
S304:在量化神经网络模型满足预设收敛条件时,停止迭代,得到训练好的量化神经网络模型。
在本申请实施例中,可以在最新一次迭代训练中的总损失值较之前各次迭代训练中的总损失值不再减小或减小幅度低于预设阈值时,确定最新迭代的量化神经网络模型满足预设收敛条件。
仍以分类任务为例,设Φ1表示量化神经网络模型中量化的权重参数,Φ2表示辅助网络中的权重参数。
将训练样本输入到前述训练结构中后,记量化神经网络模型输出的向量为z1i表示量化神经网络模型输出的第i个样本对应的C维向量;辅助网络输出的向量为z2i表示辅助网络输出的第i个样本对应的C维向量。在z1i和z2i中每一个元素值表征第i个训练样本属于某一类的得分,基于z1i和z2i中的各元素值,可以分别确定出量化神经网络模型中和辅助网络中第i个训练样本属于各类的概率。
例如,设输出向量为3维向量(A1,A2,A3),则表明第i个训练样本属于第一类的得分为A1,属于第二类的得分为A2,属于第三类的得分为A3。此时基于A1、A2和A3即可分别确定出第i个训练样本属于第一类、第二类、第三类的概率。比如,可以通过求取得分占所有类总得分的百分比来确定第i个训练样本属于各类的概率。
此外,也可以通过其余的求取方式来确定各训练样本属于各类的概率。示例性的,在本申请实施例中,可以通过下式1.1和1.2分别确定出量化神经网络模型中和辅助网络中,各训练样本属于各类的概率:
式中,表征根据量化神经网络模型输出的向量确定的第i个训练样本属于第m类的概率(即量化神经网络模型中第i个训练样本属于第m类的概率),表征根据辅助网络输出的向量确定的第i个训练样本属于第m类的概率(即辅助网络中第i个训练样本属于第m类的概率)。表征第i个训练样本对应的输出向量z1i中对应于第m类的元素值,表征第i个训练样本对应的输出向量z2i中对应于第m类的元素值;类似的,表征第i个训练样本对应的输出向量z1i中对应于第j类的元素值,表征第i个训练样本对应的输出向量z2i中对应于第j类的元素值。
需要说明的是,exp是以自然常数e为底的指数函数,比如exp(k)表征的是常数e的k次方。
式中,表征量化神经网络模型训练得到的第i个训练样本实际所属的类的概率值,表征辅助网络训练得到的第i个训练样本实际所属的类的概率值。即按照式1.1和1.2,取m为yi时的值和值来计算得到第一损失值和第二损失值。
为此,在本申请实施例中可以采用预设的参数迭代方法(比如梯度下降法)来基于上述式1.1至式1.4,对训练样本不断进行迭代处理。
需要注意的是,在实际应用过程中,确实存在通过不断迭代,出现不再减小,甚至重新升高的情况,此时即可直接确定对量化神经网络模型的训练已收敛,可以确定训练得到所有训练样本对应的第一损失值和第二损失值之和最小时的量化权重参数Φ1。
但是,在实际应用过程中通常出于计算资源以及迭代时间的考虑,通常不会一直让模型迭代训练下去。此时,可以设置一预设阈值,从而在的减小幅度低于预设阈值时,即认为对量化神经网络模型的训练已收敛,可以确定最新一次迭代训练中的量化权重参数Φ1为最终更新得到的量化权重参数Φ1。
使用时,只需要保留训练好的训练结构中的量化神经网络模型,去除掉非量化网络结构即可。
在得到训练好的量化神经网络模型之后,本申请实施例中还提供了一种图像处理方法,通过将待处理图像输入至该训练好的量化神经网络模型中,即可通过该量化神经网络模型输出得到图像处理结果。
需要说明的是,在本申请实施例中,量化神经网络模型可以但不限于用于进行图像分类,输出的处理结果包括但不限于图像分类结果。
应理解,由于对于模型的训练,是一个不断迭代的过程。模型的训练是通过不断迭代更新模型内的权重参数,并不断以迭代更新后的模型对训练样本进行处理,使得最终得到的损失值越来越小,直至损失值收敛。损失值收敛时得到的模型即为训练好的模型,此时模型中的权重参数即为最终更新得到的权重参数。而量化神经网络模型由于权重参数是用低比特表示的,传统的这种训练方式进行模型迭代时,往往会出现在模型效果并不十分理想的情况下,损失值就已收敛了。而在非量化网络中则不会存在该问题。
据此,在本申请实施例中,通过将预设的各非量化网络结构与待训练的量化神经网络模型结合在一起构成的辅助网络,进而通过辅助网络和量化神经网络模型同时进行迭代训练,这样量化神经网络模型中量化的权重即被非量化网络结构与量化神经网络模型共享,训练时会受到非量化网络的迭代更新的影响,从而使得量化神经网络模型权重参数更易于训练和收敛,使最终训练得到的量化神经网络模型性能更优。这样,由于量化神经网络的图像处理能力得以提升了,因此在将待处理图像输入至该训练好的量化神经网络模型中后,可以得到更好的处理效果。
实施例二:
本实施例在实施例一的基础上,提供了另一种量化神经网络模型的训练结构及其对应的训练方法。
参见图4所示,量化神经网络模型的训练结构与实施例二所提供的训练结构类似,区别在于本实施例所提供的训练结构还包括一蒸馏损失函数,蒸馏损失函数同时与辅助网络的输出端和待训练的量化神经网络模型的输出端连接,从而根据辅助网络输出的对训练样本的处理结果和量化神经网络模型对训练样本的处理结果,计算得到辅助网络和量化神经网络模型之间的蒸馏损失值,进而基于第一损失值、第二损失值和蒸馏损失值确定最新迭代的量化神经网络模型是否满足预设收敛条件。
需要注意的是,对于本实施例中量化神经网络模型和非量化网络结构之间的结合方式,以及训练结构中各卷积层对训练样本的处理过程,可参见实施例二的介绍,在此不再赘述。
还需要注意的是,在本实施例中,可以将最新一次迭代训练中,所有训练样本对应的第一损失值、第二损失值和蒸馏损失值之和作为总损失值,进而根据总损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件。
仍以分类任务为例,设Φ1表示量化神经网络模型中量化的权重参数,Φ2表示辅助网络中的权重参数。
将训练样本输入到前述训练结构中后,记量化神经网络模型输出的向量为z1i表示量化神经网络模型输出的第i个样本对应的C维向量;辅助网络输出的向量为z2i表示辅助网络输出的第i个样本对应的C维向量。在z1i和z2i中每一个元素值表征第i个训练样本属于某一类的得分,基于z1i和z2i中的各元素值,可以分别确定出量化神经网络模型中和辅助网络中第i个训练样本属于各类的概率。
示例性的,在本申请实施例中,可以通过下式2.1和2.2分别确定出量化神经网络模型中和辅助网络中,各训练样本属于各类的概率:
式中,T为工程师设定的蒸馏参数,T为非零正数(如大于等于1的数),其余各字符的含义请参见实施例一中的介绍。
需要注意的是,在本实施例中,由于第一损失函数和第二损失函数不涉及两个网络之间的知识蒸馏,因此可以在计算和时,取T值为1进行计算,而在计算时,取T≥1的一个值进行计算。也即计算和时的T值可以和计算时的T值不同。当然也可以根据需要,取T值为不为1的数对进行和计算,在本申请实施例中并不限定。
为此,在本申请实施例中可以采用预设的参数迭代方法(比如梯度下降法)来基于上述式2.1至式2.5,对训练样本不断进行迭代处理。
需要注意的是,在实际应用过程中,确实存在通过不断迭代,出现不再减小,甚至重新升高的情况,此时即可直接确定对量化神经网络模型的训练已收敛,可以确定训练得到所有训练样本对应的第一损失值和第二损失值之和最小时的量化权重参数Φ1。
但是,在实际应用过程中通常出于计算资源以及迭代时间的考虑,通常不会一直让模型迭代训练下去。此时,可以设置一预设阈值,从而在的减小幅度低于预设阈值时,即认为对量化神经网络模型的训练已收敛,可以确定最新一次迭代训练中的量化权重参数Φ1为最终更新得到的量化权重参数Φ1。
使用时,只需要保留训练好的训练结构中的量化神经网络模型,去除掉非量化网络结构即可。
在本实施例中,结合了量化神经网络模型与辅助网络之间的蒸馏损失,从而进一步使得量化神经网络模型的权重参数的更新更有效,进一步提高了训练得到的量化神经网络模型的性能。
需要说明的是,图1和图4是以量化神经网络模型为ResNet网络的结构进行的示例。但本申请实施例的方案适用于各类量化神经网络模型。
实施例三:
基于同一发明构思,本申请实施例中还提供了一种图像处理装置。请参阅图5所示,图5示出了与前述各实施例所示的方法对应的图像处理装置100。应理解,图像处理装置100具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。图像处理装置100包括至少一个能以软件或固件的形式存储于存储器中或固化在图像处理装置100的操作系统中的软件功能模块。具体地:
参见图5所示,图像处理装置100包括:处理模块101、获取模块102和训练模块103。其中:
所述处理模块101,用于将待处理图像输入至量化神经网络模型,并输出图像处理结果;其中,所述量化模型通过所述获取模块102和训练模块103训练得到。
所述获取模块102,用于获取预先标注的训练样本;
所述训练模块103,用于采用所述训练样本对待训练的量化神经网络模型与预设的各非量化网络结构结合在一起构成的辅助网络进行迭代训练,得到每次迭代训练过程中所述辅助网络对各所述训练样本处理得到的各所述训练样本对应的第一损失值;
所述训练模块103,还用于采用所述训练样本对所述量化神经网络模型进行迭代训练,得到每次迭代训练过程中所述量化神经网络模型对各所述训练样本处理得到的各所述训练样本对应的第二损失值;
所述训练模块103,还用于根据所述第一损失值和第二损失值,确定最新迭代的所述量化神经网络模型是否满足预设收敛条件;在所述量化神经网络模型满足所述预设收敛条件时,停止迭代,得到训练好的量化神经网络模型。
在本申请实施例中,所述量化神经网络模型的每一卷积层分别与一非量化网络结构结合在一起,构成所述辅助网络。
在本申请实施例中,所述非量化网络结构为通道数是所连接的卷积层的通道数n倍的非量化卷积层;所述n为大于等于1的常数。
在本申请实施例中,所述n大于等于2;所述非量化网络结构包括n个与所连接的卷积层的通道数相同的卷积核;所述n个卷积核中的一个卷积核与所述量化神经网络模型的卷积层加和,并在加和后与所述n个卷积核中的其余卷积核特征通道连接。
在本申请实施例的一种可行实施方式中,训练模块103具体用于根据最新一次迭代训练中,所有训练样本对应的第一损失值、第二损失值,确定所述最新一次迭代训练中的总损失值;根据所述总损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件。
在上述可行实施方式中,训练模块103具体用于获取最新一次迭代训练中,所有训练样本对应的第一损失值和第二损失值之和;所述所有训练样本对应的第一损失值和第二损失值之和为所述最新一次迭代训练中的总损失值。
在上述可行实施方式中,训练模块103具体用于在最新一次迭代训练中的总损失值较之前各次迭代训练中的总损失值不再减小或减小幅度低于预设阈值时,确定最新迭代的所述量化神经网络模型满足预设收敛条件。
在上述可行实施方式中,训练模块103还用于在迭代训练过程中,获取每一次迭代训练过程中各所述训练样本对应的所述量化神经网络模型与所述辅助网络之间的蒸馏损失值。所述根据所述第一损失值和第二损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件,包括:根据最新一次迭代训练中,所有训练样本对应的第一损失值、第二损失值和蒸馏损失值,确定所述最新一次迭代训练中的总损失值;根据所述总损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件。
在上述可行实施方式中,训练模块103具体用于获取最新一次迭代训练中,所有训练样本对应的第一损失值、第二损失值和蒸馏损失值之和;所述所有训练样本对应的第一损失值、第二损失值和蒸馏损失值之和为所述最新一次迭代训练中的总损失值。
需要理解的是,出于描述简洁的考量,部分实施例一中描述过的内容在本实施例中不再赘述。
实施例四:
本实施例提供了一种电子设备,参见图6所示,其包括处理器602、存储器602以及通信总线603。其中:
通信总线603用于实现处理器601和存储器602之间的连接通信。
处理器601用于执行存储器602中存储的一个或多个程序,以实现上述各实施例中的图像处理方法。
可以理解,图6所示的结构仅为示意,电子设备还可包括比图6中所示更多或者更少的组件,或者具有与图6所示不同的配置,例如还可以具有显示屏、键盘等部件。
本实施例还提供了一种可读存储介质,如软盘、光盘、硬盘、闪存、U盘、SD(SecureDigital Memory Card,安全数码卡)卡、MMC(Multimedia Card,多媒体卡)卡等,在该可读存储介质中存储有实现上述各个步骤的一个或者多个程序,这一个或者多个程序可被一个或者多个处理器执行,以实现上述实施例一中的图像处理方法。在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
在本文中,多个是指两个或两个以上。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种图像处理方法,其特征在于,包括:
将待处理图像输入至量化神经网络模型,并输出图像处理结果;其中,所述量化模型通过以下过程训练得到:
获取预先标注的训练样本;
采用所述训练样本对待训练的量化神经网络模型与预设的各非量化网络结构结合在一起构成的辅助网络进行迭代训练,得到每次迭代训练过程中所述辅助网络对各所述训练样本处理得到的各所述训练样本对应的第一损失值;
采用所述训练样本对所述量化神经网络模型进行迭代训练,得到每次迭代训练过程中所述量化神经网络模型对各所述训练样本处理得到的各所述训练样本对应的第二损失值;
根据所述第一损失值和第二损失值,确定最新迭代的所述量化神经网络模型是否满足预设收敛条件;
在所述量化神经网络模型满足所述预设收敛条件时,停止迭代,得到训练好的量化神经网络模型。
2.如权利要求1所述的图像处理方法,其特征在于,所述量化神经网络模型的每一卷积层分别与所述各非量化网络结构中的一个非量化网络结构结合在一起,构成所述辅助网络。
3.如权利要求2所述的图像处理方法,其特征在于,所述非量化网络结构为通道数是所连接的卷积层的通道数n倍的非量化卷积层;所述n为大于等于1的常数。
4.如权利要求3所述的图像处理方法,其特征在于,所述n大于等于2;
所述非量化网络结构包括n个与所连接的卷积层的通道数相同的卷积核;
所述n个卷积核中的一个卷积核的输出特征,与所述量化神经网络模的卷积层针对目标输入特征所产生的输出特征进行加和运算,并在加和后与所述n个卷积核中的其余卷积核的输出特征进行特征通道连接运算;
其中,所述目标输入特征为所述非量化网络结构的输入特征。
5.如权利要求1所述的图像处理方法,其特征在于,根据所述第一损失值和第二损失值,确定最新迭代的所述量化神经网络模型是否满足预设收敛条件,包括:
根据最新一次迭代训练中,所有训练样本对应的第一损失值、第二损失值,确定所述最新一次迭代训练中的总损失值;
根据所述总损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件。
6.如权利要求5所述的图像处理方法,其特征在于,根据所述总损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件包括:
在最新一次迭代训练中的总损失值较之前各次迭代训练中的总损失值不再减小或减小幅度低于预设阈值时,确定最新迭代的所述量化神经网络模型满足预设收敛条件。
7.如权利要求1-6任一项所述的图像处理方法,其特征在于,所述方法还包括:
在迭代训练过程中,获取每一次迭代训练过程中各所述训练样本对应的所述量化神经网络模型与所述辅助网络之间的蒸馏损失值;
所述根据所述第一损失值和第二损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件,包括:
根据最新一次迭代训练中,所有训练样本对应的第一损失值、第二损失值和蒸馏损失值,确定所述最新一次迭代训练中的总损失值;
根据所述总损失值确定最新迭代的所述量化神经网络模型是否满足预设收敛条件。
8.一种图像处理装置,其特征在于,包括:处理模块、获取模块和训练模块;
所述处理模块,用于将待处理图像输入至量化神经网络模型,并输出图像处理结果;其中,所述量化模型通过所述获取模块和训练模块训练得到;
所述获取模块,用于获取预先标注的训练样本;
所述训练模块,用于采用所述训练样本对待训练的量化神经网络模型与预设的各非量化网络结构结合在一起构成的辅助网络进行迭代训练,得到每次迭代训练过程中所述辅助网络对各所述训练样本处理得到的各所述训练样本对应的第一损失值;以及用于采用所述训练样本对所述量化神经网络模型进行迭代训练,得到每次迭代训练过程中所述量化神经网络模型对各所述训练样本处理得到的各所述训练样本对应的第二损失值;
所述训练模块,还用于根据所述第一损失值和第二损失值,确定最新迭代的所述量化神经网络模型是否满足预设收敛条件;在所述量化神经网络模型满足所述预设收敛条件时,停止迭代,得到训练好的量化神经网络模型。
9.一种电子设备,其特征在于,包括:处理器、存储器及通信总线;
所述通信总线用于实现所述处理器和存储器之间的连接通信;
所述处理器用于执行存储器中存储的一个或者多个程序,以实现如权利要求1至7任一项所述的图像处理方法。
10.一种可读存储介质,其特征在于,所述可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1至7任一项所述的图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011572699.0A CN112766307A (zh) | 2020-12-25 | 2020-12-25 | 图像处理方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011572699.0A CN112766307A (zh) | 2020-12-25 | 2020-12-25 | 图像处理方法、装置、电子设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112766307A true CN112766307A (zh) | 2021-05-07 |
Family
ID=75697258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011572699.0A Pending CN112766307A (zh) | 2020-12-25 | 2020-12-25 | 图像处理方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112766307A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113762503A (zh) * | 2021-05-27 | 2021-12-07 | 腾讯云计算(北京)有限责任公司 | 数据处理方法、装置、设备及计算机可读存储介质 |
WO2024060839A1 (zh) * | 2022-09-21 | 2024-03-28 | 京东方科技集团股份有限公司 | 对象操作方法、装置、计算机设备以及计算机存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020168660A1 (zh) * | 2019-02-19 | 2020-08-27 | 平安科技(深圳)有限公司 | 调整车辆行驶方向方法、装置、计算机设备及存储介质 |
CN111950723A (zh) * | 2019-05-16 | 2020-11-17 | 武汉Tcl集团工业研究院有限公司 | 神经网络模型训练方法、图像处理方法、装置及终端设备 |
-
2020
- 2020-12-25 CN CN202011572699.0A patent/CN112766307A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020168660A1 (zh) * | 2019-02-19 | 2020-08-27 | 平安科技(深圳)有限公司 | 调整车辆行驶方向方法、装置、计算机设备及存储介质 |
CN111950723A (zh) * | 2019-05-16 | 2020-11-17 | 武汉Tcl集团工业研究院有限公司 | 神经网络模型训练方法、图像处理方法、装置及终端设备 |
Non-Patent Citations (1)
Title |
---|
李鸣;张鸿;: "基于卷积神经网络迭代优化的图像分类算法", 计算机工程与设计, no. 01 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113762503A (zh) * | 2021-05-27 | 2021-12-07 | 腾讯云计算(北京)有限责任公司 | 数据处理方法、装置、设备及计算机可读存储介质 |
WO2024060839A1 (zh) * | 2022-09-21 | 2024-03-28 | 京东方科技集团股份有限公司 | 对象操作方法、装置、计算机设备以及计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108345939B (zh) | 基于定点运算的神经网络 | |
US6397200B1 (en) | Data reduction system for improving classifier performance | |
JP7010371B2 (ja) | 学習済みモデル更新装置、学習済みモデル更新方法、プログラム | |
CN112069903B (zh) | 基于深度强化学习实现人脸识别端边卸载计算方法及装置 | |
CN112766307A (zh) | 图像处理方法、装置、电子设备及可读存储介质 | |
US11449734B2 (en) | Neural network reduction device, neural network reduction method, and storage medium | |
US11636667B2 (en) | Pattern recognition apparatus, pattern recognition method, and computer program product | |
CN113191565B (zh) | 安全性预测方法及装置、介质、设备 | |
CN110826706B (zh) | 用于神经网络的数据处理方法和装置 | |
EP4343616A1 (en) | Image classification method, model training method, device, storage medium, and computer program | |
CN113971733A (zh) | 一种基于超图结构的模型训练方法、分类方法及装置 | |
Huai et al. | Zerobn: Learning compact neural networks for latency-critical edge systems | |
CN112085175B (zh) | 基于神经网络计算的数据处理方法和装置 | |
US20200005125A1 (en) | Low precision deep neural network enabled by compensation instructions | |
WO2022246986A1 (zh) | 数据处理方法、装置、设备及计算机可读存储介质 | |
CN112966754B (zh) | 样本筛选方法、样本筛选装置及终端设备 | |
US6789070B1 (en) | Automatic feature selection system for data containing missing values | |
CN114281932A (zh) | 工单质检模型的训练方法、装置、设备及存储介质 | |
US20230297674A1 (en) | Detection device, detection method, and detection program | |
CN115439449B (zh) | 全视野组织学图像的处理方法、装置、介质和电子设备 | |
US20220188639A1 (en) | Semi-supervised learning of training gradients via task generation | |
CN115049003A (zh) | 一种预训练模型微调方法、装置、设备和存储介质 | |
CN114065913A (zh) | 模型量化方法、装置及终端设备 | |
JP7047665B2 (ja) | 学習装置、学習方法及び学習プログラム | |
CN113361700A (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 |