The application embodiment discloses a method and device for generating a model. The implementation of this method includes: creating a neural network with the same structure as the original neural network used to generate the original model, removing the multiple layers to be removed from the created neural network, and getting the target neural network used to generate the target model corresponding to the original model; and the target nerve is trained by training. The network is trained and the target model is obtained. By removing the part of the neural network that is the same as the original neural network structure that is used to generate the original model, the target neural network is obtained, and the target neural network is trained by the output layer of the original model and the output of the middle layer to get the target model with precision threshold. Type. It reduces the cost of constructing the target neural network with smaller storage space and reduces the training cost to achieve the precision threshold for the target model that has a smaller storage space.
【技术实现步骤摘要】
模型生成方法和装置
本申请涉及计算机领域,具体涉及神经网络领域,尤其涉及模型生成方法和装置。
技术介绍
神经网络被广泛应用在图像识别、语音识别、搜索等领域。训练后的达到一定精度的可被应用的神经网络也可以称之为模型。神经网络的结构越小,占用的存储空间越少。目前,当一个模型运行在存储空间较小的终端设备上时,通常采用的方式为构建一个结构较小的神经网络,对构建的结构较小的神经网络进行初始化后开始进行训练,最后得到结构较小的模型。神经网络占用的存储空间越少,为使最后得到的模型达到精度阈值所需的训练开销越大。
技术实现思路
本申请实施例提供了模型生成方法和装置。第一方面,本申请实施例提供了模型生成方法,该方法包括:创建与用于生成原始模型的原始神经网络的结构相同的神经网络,以及去除创建的神经网络的多个待去除的中间层,得到用于生成原始模型对应的目标模型的目标神经网络;通过训练操作对所述目标神经网络进行训练,得到所述目标模型,所述训练操作包括:将目标神经网络的训练样本分别输入到原始模型和目标神经网络;基于原始模型的输出和目标神经网络的输出的差异,对目标神经网络的输出层中的参数的参数值进行更新,以及基于目标神经网络中的被选取出的中间层的输出与原始模型中对应于目标神经网络中的被选取出的中间层的中间层的输出的差异,对目标神经网络中的与被选取出的中间层相关联的层中的参数的参数值进行更新。第二方面,本申请实施例提供了模型生成装置,该装置包括:处理单元,配置用于创建与用于生成原始模型的原始神经网络的结构相同的神经网络,以及去除创建的神经网络的多个待去除的中间层,得到用于生成原始模型对应的目 ...
【技术保护点】
1.一种模型生成方法,包括:创建与用于生成原始模型的原始神经网络的结构相同的神经网络,以及去除创建的神经网络的多个待去除的中间层,得到用于生成原始模型对应的目标模型的目标神经网络;通过训练操作对所述目标神经网络进行训练,得到所述目标模型,所述训练操作包括:将目标神经网络的训练样本分别输入到原始模型和目标神经网络;基于原始模型的输出和目标神经网络的输出的差异,对目标神经网络的输出层中的参数的参数值进行更新,以及基于目标神经网络中的被选取出的中间层的输出与原始模型中对应于目标神经网络中的被选取出的中间层的中间层的输出的差异,对目标神经网络中的与被选取出的中间层相关联的层中的参数的参数值进行更新。
【技术特征摘要】
1.一种模型生成方法,包括:创建与用于生成原始模型的原始神经网络的结构相同的神经网络,以及去除创建的神经网络的多个待去除的中间层,得到用于生成原始模型对应的目标模型的目标神经网络;通过训练操作对所述目标神经网络进行训练,得到所述目标模型,所述训练操作包括:将目标神经网络的训练样本分别输入到原始模型和目标神经网络;基于原始模型的输出和目标神经网络的输出的差异,对目标神经网络的输出层中的参数的参数值进行更新,以及基于目标神经网络中的被选取出的中间层的输出与原始模型中对应于目标神经网络中的被选取出的中间层的中间层的输出的差异,对目标神经网络中的与被选取出的中间层相关联的层中的参数的参数值进行更新。2.根据权利要求1所述的方法,基于原始模型的输出和目标神经网络的输出的差异,对目标神经网络的输出层中的参数的参数值进行更新,以及基于目标神经网络中的被选取出的中间层的输出与原始模型中对应于目标神经网络中的被选取出的中间层的中间层的输出的差异,对目标神经网络中的与被选取出的中间层相关联的层中的参数的参数值进行更新包括:利用输出层损失函数更新目标神经网络的输出层中的参数的参数值,以及利用目标中间层组合对应的中间层损失函数更新目标神经网络中与目标中间层组合相关联的层中的参数的参数值,其中,目标中间层组合包括:目标神经网络中的两个中间层,输出层损失函数用于计算原始模型的输出向量和目标神经网络的输出向量的差异,目标中间层组合对应的中间层损失函数用于计算所述目标中间层组合中的两个中间层的输出向量之间的转换关系与原始模型中对应于所述目标中间层组合的原始中间层组合中的两个中间层的输出向量之间的转换关系的差异。3.根据权利要求2所述的方法,所述目标中间层组合对应的中间层损失函数为计算目标转换关系向量和原始转换关系向量的欧式距离的函数,其中,目标转换关系向量基于将表示目标中间层组合中的两个中间层的输出向量之间的转换关系的矩阵进行向量化而得到,原始转换关系向量基于将表示原始模型中对应于所述目标中间层组合的原始中间层组合中的两个中间层的输出向量之间的转换关系的矩阵进行向量化而得到。4.根据权利要求3所述的方法,利用目标中间层组合对应的中间层损失函数更新目标神经网络中与目标中间层组合相关联的层中的参数的参数值包括:基于所述目标中间层组合对应的中间层损失函数,计算出中间层梯度信息,所述中间层梯度信息包括:目标神经网络中的所述目标中间层组合中的最高中间层与目标神经网络的输入层之间的每一层中的参数的梯度;基于所述中间层梯度信息,更新目标神经网络中的所述目标中间层组合中的最高中间层与目标神经网络的输入层之间的每一层中的参数的参数值。5.根据权利要求4所述的方法,目标中间层组合中的每一个中间层的输出向量的维度相同。6.根据权利要求1-5之一所述的方法,原始神经网络和目标神经网络的类型均为卷积神经网络。7.根据权利要求6所述的方法,目标中间层组合中的每一个中间层均为卷积层。8.一种模型生成装置,包括:处理单元...
【专利技术属性】
技术研发人员:张刚,
申请(专利权)人:百度在线网络技术北京有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。