神经网络模型的训练方法和装置.pdf
《神经网络模型的训练方法和装置.pdf》由会员分享,可在线阅读,更多相关《神经网络模型的训练方法和装置.pdf(17页完成版)》请在专利查询网上搜索。
1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 202010275546.3 (22)申请日 2020.04.09 (71)申请人 北京百度网讯科技有限公司 地址 100085 北京市海淀区上地十街10号 百度大厦2层 (72)发明人 希滕张刚温圣召 (74)专利代理机构 北京英赛嘉华知识产权代理 有限责任公司 11204 代理人 王达佐马晓亚 (51)Int.Cl. G06N 3/04(2006.01) G06N 3/08(2006.01) G06K 9/62(2006.01) (54)发明名称 神经网络模型的训练方法和装置。
2、 (57)摘要 本公开涉及人工智能领域。 本公开的实施例 公开了神经网络模型的训练方法和装置。 该方法 包括迭代执行多次训练操作; 训练操作包括: 对 第一神经网络模型进行剪枝得到第二神经网络 模型; 采用第一神经网络模型对媒体数据进行特 征提取得到第一特征, 采用第二神经网络模型对 媒体数据进行特征提取得到第二特征; 获取第一 神经网络模型对媒体数据的处理结果; 基于预先 构建的监督函数和任务损失函数, 确定第一神经 网络模型的误差, 通过反向传播误差迭代调整第 一神经网络模型的参数; 监督函数表征第一特征 和第二特征之间的差异, 任务损失函数表征第一 神经网络模型对媒体数据的处理结果的误差。
3、。 该 方法可以训练出剪枝后模型性能较好的神经网 络模型。 权利要求书2页 说明书10页 附图4页 CN 111523640 A 2020.08.11 CN 111523640 A 1.一种神经网络模型的训练方法, 包括迭代执行多次训练操作; 所述训练操作包括: 对第一神经网络模型进行剪枝得到第二神经网络模型; 采用第一神经网络模型对媒体数据进行特征提取得到第一特征, 采用第二神经网络模 型对媒体数据进行特征提取得到第二特征; 获取所述第一神经网络模型基于所述第一特征对所述媒体数据的处理结果; 基于预先构建的监督函数和任务损失函数, 确定所述第一神经网络模型的误差, 通过 反向传播所述误差迭代。
4、调整所述第一神经网络模型的参数; 其中, 所述监督函数表征所述第一特征和所述第二特征之间的差异, 所述任务损失函 数表征所述第一神经网络模型对所述媒体数据的处理结果的误差。 2.根据权利要求1所述的方法, 其中, 所述第一神经网络模型包括第一特征提取层和第 一分类器, 所述第一特征包括由所述第一特征提取层中与所述第一分类器连接的最后一个 网络层输出的特征; 所述第二神经网络模型包括第二特征提取层和第二分类器, 所述第二特征包括由所述 第二特征提取层中与所述第二分类器连接的最优一个网络层输出的特征。 3.根据权利要求2所述的方法, 其中, 所述第一特征还包括由所述第一特征提取层中的 第一中间层输。
5、出的特征; 所述第二特征还包括由所述第二特征提取层中的第二中间层输出的特征; 所述第一特征和所述第二特征之间的差异包括: 所述第一中间层输出的特征与所述第 二神经网络模型中与所述第一中间层对应的所述第二中间层输出的特征之间的差异, 以及 所述第一分类器连接的最后一个网络层输出的特征与所述第二分类器连接的最后一个网 络层输出的特征之间的差异。 4.根据权利要求1-3任一项所述的方法, 其中, 所述训练操作还包括: 响应于确定训练操作达到预设的收敛条件, 确定所述第一神经网络模型完成训练; 以 及 所述方法还包括: 对完成训练的第一神经网络模型进行剪枝, 得到剪枝后的神经网络模型。 5.根据权利要。
6、求4所述的方法, 其中, 所述方法还包括: 采用剪枝后的神经网络模型对待处理媒体数据进行处理。 6.一种神经网络模型的训练装置, 包括训练单元, 被配置为迭代执行多次训练操作; 所述训练单元包括: 第一剪枝单元, 被配置为在每次训练操作中对第一神经网络模型进行剪枝得到第二神 经网络模型; 提取单元, 被配置为在每次训练操作中采用第一神经网络模型对媒体数据进行特征提 取得到第一特征, 采用第二神经网络模型对媒体数据进行特征提取得到第二特征; 获取单元, 被配置为在每次训练操作中获取所述第一神经网络模型基于所述第一特征 对所述媒体数据的处理结果; 更新单元, 被配置为在每次训练操作中基于预先构建的。
7、监督函数和任务损失函数, 确 定所述第一神经网络模型的误差, 通过反向传播所述误差迭代调整所述第一神经网络模型 的参数; 权利要求书 1/2 页 2 CN 111523640 A 2 其中, 所述监督函数表征所述第一特征和所述第二特征之间的差异, 所述任务损失函 数表征所述第一神经网络模型对所述媒体数据的处理结果的误差。 7.根据权利要求6所述的装置, 其中, 所述第一神经网络模型包括第一特征提取层和第 一分类器, 所述第一特征包括由所述第一特征提取层中与所述第一分类器连接的最后一个 网络层输出的特征; 所述第二神经网络模型包括第二特征提取层和第二分类器, 所述第二特征包括由所述 第二特征提取。
8、层中与所述第二分类器连接的最优一个网络层输出的特征。 8.根据权利要求7所述的装置, 其中, 所述第一特征还包括由所述第一特征提取层中的 第一中间层输出的特征; 所述第二特征还包括由所述第二特征提取层中的第二中间层输出的特征; 所述第一特征和所述第二特征之间的差异包括: 所述第一中间层输出的特征与所述第 二神经网络模型中与所述第一中间层对应的所述第二中间层输出的特征之间的差异, 以及 所述第一分类器连接的最后一个网络层输出的特征与所述第二分类器连接的最后一个网 络层输出的特征之间的差异。 9.根据权利要求6-8任一项所述的装置, 其中, 所述训练单元还包括: 确定单元, 被配置为在每次训练操作。
9、中响应于确定训练操作达到预设的收敛条件, 确 定所述第一神经网络模型完成训练; 以及 所述装置还包括: 第二剪枝单元, 被配置为对完成训练的第一神经网络模型进行剪枝, 得到剪枝后的神 经网络模型。 10.根据权利要求9所述的装置, 其中, 所述装置还包括: 处理单元, 被配置为采用剪枝后的神经网络模型对待处理媒体数据进行处理。 11.一种电子设备, 包括: 一个或多个处理器; 存储装置, 其上存储有一个或多个程序, 当所述一个或多个程序被所述一个或多个处理器执行, 使得所述一个或多个处理器实 现如权利要求1-5中任一所述的方法。 12.一种计算机可读介质, 其上存储有计算机程序, 其中, 所述。
10、程序被处理器执行时实 现如权利要求1-5中任一所述的方法。 权利要求书 2/2 页 3 CN 111523640 A 3 神经网络模型的训练方法和装置 技术领域 0001 本公开的实施例涉及计算机技术领域, 具体涉及人工智能技术领域, 尤其涉及神 经网络模型的训练方法和装置。 背景技术 0002 神经网络的剪枝是将其中冗余的参数删除以提升神经网络的运算速度的技术。 目 前的剪枝方法是在神经网络训练完成之后, 按照一定的规则对模型的通道进行裁剪。 然而, 参数之间的关系对模型的性能有直接的影响, 即使对于权重非常小的参数, 裁剪掉之后可 能会对模型的精度造成极大的影响。 因此, 为了确保剪枝后的。
11、神经网络的性能, 剪枝的效率 非常低。 发明内容 0003 本公开的实施例提出了神经网络模型的训练方法和装置、 电子设备和计算机可读 介质。 0004 第一方面, 本公开的实施例提供了一种神经网络模型的训练方法, 包括迭代执行 多次训练操作; 训练操作包括: 对第一神经网络模型进行剪枝得到第二神经网络模型; 采用 第一神经网络模型对媒体数据进行特征提取得到第一特征, 采用第二神经网络模型对媒体 数据进行特征提取得到第二特征; 获取第一神经网络模型基于第一特征对媒体数据的处理 结果; 基于预先构建的监督函数和任务损失函数, 确定第一神经网络模型的误差, 通过反向 传播误差迭代调整第一神经网络模型。
12、的参数; 其中, 监督函数表征第一特征和第二特征之 间的差异, 任务损失函数表征第一神经网络模型对媒体数据的处理结果的误差。 0005 在一些实施例中, 上述第一神经网络模型包括第一特征提取层和第一分类器, 第 一特征包括由第一特征提取层中与第一分类器连接的最后一个网络层输出的特征; 上述第 二神经网络模型包括第二特征提取层和第二分类器, 第二特征包括由第二特征提取层中与 第二分类器连接的最优一个网络层输出的特征。 0006 在一些实施例中, 上述第一特征还包括由第一特征提取层中的第一中间层输出的 特征; 上述第二特征还包括由第二特征提取层中的第二中间层输出的特征; 第一特征和第 二特征之间的。
13、差异包括: 第一中间层输出的特征与第二神经网络模型中与第一中间层对应 的第二中间层输出的特征之间的差异, 以及第一分类器连接的最后一个网络层输出的特征 与第二分类器连接的最后一个网络层输出的特征之间的差异。 0007 在一些实施例中, 上述训练操作还包括: 响应于确定训练操作达到预设的收敛条 件, 确定第一神经网络模型完成训练; 以及上述方法还包括: 对完成训练的第一神经网络模 型进行剪枝, 得到剪枝后的神经网络模型。 0008 在一些实施例中, 上述方法还包括: 采用剪枝后的神经网络模型对待处理媒体数 据进行处理。 0009 第二方面, 本公开的实施例提供了一种用于训练神经网络模型的装置, 。
14、包括训练 说明书 1/10 页 4 CN 111523640 A 4 单元, 被配置为迭代执行多次训练操作。 训练单元包括: 第一剪枝单元, 被配置为在每次训 练操作中对第一神经网络模型进行剪枝得到第二神经网络模型; 提取单元, 被配置为在每 次训练操作中采用第一神经网络模型对媒体数据进行特征提取得到第一特征, 采用第二神 经网络模型对媒体数据进行特征提取得到第二特征; 获取单元, 被配置为在每次训练操作 中获取第一神经网络模型基于第一特征对媒体数据的处理结果; 以及更新单元, 被配置为 在每次训练操作中基于预先构建的监督函数和任务损失函数, 确定第一神经网络模型的误 差, 通过反向传播误差迭。
15、代调整第一神经网络模型的参数; 其中, 监督函数表征第一特征和 第二特征之间的差异, 任务损失函数表征第一神经网络模型对媒体数据的处理结果的误 差。 0010 在一些实施例中, 上述第一神经网络模型包括第一特征提取层和第一分类器, 第 一特征包括由第一特征提取层中与第一分类器连接的最后一个网络层输出的特征; 第二神 经网络模型包括第二特征提取层和第二分类器, 第二特征包括由第二特征提取层中与第二 分类器连接的最优一个网络层输出的特征。 0011 在一些实施例中, 上述第一特征还包括由第一特征提取层中的第一中间层输出的 特征; 上述第二特征还包括由第二特征提取层中的第二中间层输出的特征; 上述第。
16、一特征 和第二特征之间的差异包括: 第一中间层输出的特征与第二神经网络模型中与第一中间层 对应的第二中间层输出的特征之间的差异, 以及第一分类器连接的最后一个网络层输出的 特征与第二分类器连接的最后一个网络层输出的特征之间的差异。 0012 在一些实施例中, 上述训练单元还包括: 确定单元, 被配置为在每次训练操作中响 应于确定训练操作达到预设的收敛条件, 确定第一神经网络模型完成训练; 以及上述装置 还包括: 第二剪枝单元, 被配置为对完成训练的第一神经网络模型进行剪枝, 得到剪枝后的 神经网络模型。 0013 在一些实施例中, 上述装置还包括: 处理单元, 被配置为采用剪枝后的神经网络模 。
17、型对待处理媒体数据进行处理。 0014 第三方面, 本公开的实施例提供了一种电子设备, 包括: 一个或多个处理器; 存储 装置, 用于存储一个或多个程序, 当一个或多个程序被一个或多个处理器执行, 使得一个或 多个处理器实现如第一方面提供的神经网络模型的训练方法。 0015 第四方面, 本公开的实施例提供了一种计算机可读介质, 其上存储有计算机程序, 其中, 程序被处理器执行时实现第一方面提供的神经网络模型的训练方法。 0016 本公开的上述实施例的神经网络模型的训练方法和装置, 包括迭代执行多次训练 操作; 训练操作包括: 对第一神经网络模型进行剪枝得到第二神经网络模型; 采用第一神经 网络。
18、模型对媒体数据进行特征提取得到第一特征, 采用第二神经网络模型对媒体数据进行 特征提取得到第二特征; 获取第一神经网络模型基于第一特征对媒体数据的处理结果; 基 于预先构建的监督函数和任务损失函数, 确定第一神经网络模型的误差, 通过反向传播误 差迭代调整第一神经网络模型的参数; 其中, 监督函数表征第一特征和第二特征之间的差 异, 任务损失函数表征第一神经网络模型对媒体数据的处理结果的误差。 该方法和装置通 过在神经网络模型的训练中利用剪枝后的神经网络模型的性能进行监督, 最小化剪枝过程 中保留的参数对被裁剪掉的参数的依赖性, 能够训练出可快速剪枝且剪枝后模型性能较好 的神经网络模型。 说明。
19、书 2/10 页 5 CN 111523640 A 5 附图说明 0017 通过阅读参照以下附图所作的对非限制性实施例所作的详细描述, 本公开的其它 特征、 目的和优点将会变得更明显: 0018 图1是本公开的实施例可以应用于其中的示例性系统架构图; 0019 图2是根据本公开的神经网络模型的训练方法的一个实施例的流程图; 0020 图3是根据本公开的神经网络模型的训练方法的另一个实施例的流程图; 0021 图4是本公开的神经网络模型的训练装置的一个实施例的结构示意图; 0022 图5是适于用来实现本公开实施例的电子设备的计算机系统的结构示意图。 具体实施方式 0023 下面结合附图和实施例对。
20、本公开作进一步的详细说明。 可以理解的是, 此处所描 述的具体实施例仅仅用于解释相关发明, 而非对该发明的限定。 另外还需要说明的是, 为了 便于描述, 附图中仅示出了与有关发明相关的部分。 0024 需要说明的是, 在不冲突的情况下, 本公开中的实施例及实施例中的特征可以相 互组合。 下面将参考附图并结合实施例来详细说明本公开。 0025 图1示出了可以应用本公开的神经网络模型的训练方法或神经网络模型的训练装 置的示例性系统架构100。 0026 如图1所示, 系统架构100可以包括终端设备101、 102、 103, 网络104和服务器105。 网络104用以在终端设备101、 102、 。
21、103和服务器105之间提供通信链路的介质。 网络104可以 包括各种连接类型, 例如有线、 无线通信链路或者光纤电缆等等。 0027 终端设备101、 102、 103通过网络104与服务器105交互, 以接收或发送消息等。 终端 设备101、 102、 103可以是用户110端的设备, 其上可以安装有各种客户端应用。 例如, 图像处 理类应用、 信息分析类应用、 语音助手类应用、 购物类应用、 金融类应用等。 0028 终端设备101、 102、 103可以是硬件, 也可以是软件。 当终端设备101、 102、 103为硬 件时, 可以是各种电子设备, 包括但不限于智能手机、 平板电脑、 。
22、电子书阅读器、 膝上型便携 计算机和台式计算机等等。 当终端设备101、 102、 103为软件时, 可以安装在上述所列举的电 子设备中。 其可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软 件模块), 也可以实现成单个软件或软件模块。 在此不做具体限定。 0029 服务器105可以是运行各种服务的服务器, 例如运行基于图像、 视频、 语音、 文本、 数字信号等数据的目标检测与识别、 文本或语音识别、 信号转换等服务的服务器。 服务器 105可以从终端设备101、 102、 103获取深度学习任务数据、 或者从数据库获取深度学习任务 数据来构建训练样本, 对用于执行深度学习任。
23、务的神经网络模型进行训练。 服务器105还可 以对训练完成的神经网络模型进行剪枝, 以降低神经网络模型的复杂度, 从而使得剪枝后 的神经网络模型可以被部署在终端设备101、 102、 103上以向用户110实时地提供基于神经 网络模型的服务。 0030 需要说明的是, 服务器105可以是硬件, 也可以是软件。 当服务器105为硬件时, 可 以实现成多个服务器组成的分布式服务器集群, 也可以实现成单个服务器。 当服务器105为 软件时, 可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模 块), 也可以实现成单个软件或软件模块。 在此不做具体限定。 说明书 3/10 页 6 。
24、CN 111523640 A 6 0031 经过训练的神经网络模型可以被部署并运行在终端设备101、 102、 103上。 通常终 端设备101、 102、 103期望模型结构较为简单, 计算量较少, 以满足与用户交互的实时性要 求。 在本公开的实施例的场景中, 服务器105可以根据终端设备101、 102、 103的硬件或软件 约束条件(诸如处理器的延时、 功耗、 应用程序运行环境下的运算效率等), 在神经网络模型 训练过程中对神经网络模型进行剪枝, 利用剪枝结果监督神经网络模型的训练。 0032 或者, 在一些场景中, 终端设备101、 102、 103也可以执行神经网络模型的训练操 作,。
25、 并且基于神经网络模型的剪枝结果监督神经网络模型的训练。 0033 本公开的实施例所提供的神经网络模型的训练方法可以由终端设备101、 102、 103 或服务器105执行, 相应地, 神经网络模型的训练装置可以设置于终端设备101、 102、 103或 服务器105中。 0034 在一些场景中, 终端设备101、 102、 103或服务器105可以在本地读取或从数据库等 获取模型训练所需的源数据, 例如在本地读取待训练的神经网络模型及训练用的媒体数 据。 这时, 示例性系统架构100可以不包括网络104和服务器105, 或者不包括终端设备101、 102、 103和网络104。 0035 应。
26、该理解, 图1中的终端设备、 网络和服务器的数目仅仅是示意性的。 根据实现需 要, 可以具有任意数目的终端设备、 网络和服务器。 0036 继续参考图2, 其示出了根据本公开的神经网络模型的训练方法的一个实施例的 流程200。 该神经网络模型的训练方法, 包括迭代执行多次训练操作。 其中, 训练操作包括以 下步骤201至步骤204: 0037 步骤201, 对第一神经网络模型进行剪枝得到第二神经网络模型。 0038 在本实施例中, 神经网络模型的训练方法的执行主体可以首先获取第一神经网络 模型。 第一神经网络模型是待训练的模型, 其参数可以是随机初始化的。 或者, 在一些可选 的实现方式中, 。
27、第一神经网络模型可以是经过预训练的模型, 其参数是经过预训练后得到 的参数。 0039 可以对第一神经网络模型进行剪枝, 裁剪其中的一些通道(channel), 得到简化后 的网络模型, 作为第二神经网络模型。 具体可以通过反向传播的方式, 裁剪第一神经网络模 型中重要性较低的通道, 例如裁剪一些对模型性能影响较小的神经元结构或权重参数。 在 一种具体的实现方式中, 可以从神经网络模型的所有权重参数中选择一个最优组合, 该最 优组合中的参数被保留, 其余参数被裁剪后得到的被剪枝模型的代价函数损失最小。 0040 在每一次训练操作中, 第一神经网络模型被更新后都执行剪枝操作得到对应的第 二神经网。
28、络模型。 由于第一神经网络模型的参数在每一次的迭代操作中被更新, 剪枝后得 到的第二神经网络也随之更新。 0041 步骤202, 采用第一神经网络模型对媒体数据进行特征提取得到第一特征, 采用第 二神经网络模型对媒体数据进行特征提取得到第二特征。 0042 在本实施例中, 第一神经网络模型用于处理媒体数据。 媒体数据可以是图像、 视 频、 音频、 文本等用于传播内容的数据。 第一神经网络模型执行的深度学习任务可以是分类 任务或回归任务。 在执行深度学习任务时, 第一神经网络模型可以首先对媒体数据进行特 征提取, 得到媒体数据的第一特征。 之后, 第一神经网络模型可以基于提取出的媒体数据的 第一。
29、特征来完成分类或回归任务。 说明书 4/10 页 7 CN 111523640 A 7 0043 第一神经网络模型可以是卷积神经网络、 循环神经网络等。 作为示例, 卷积神经网 络包括多个卷积层, 或者在一些卷积神经网络中包括多个残差模块, 每个残差模块可以包 括若干个由卷积层、 批量归一化层组成的重复单元。 各卷积层或残差模块可以分别对媒体 数据提取不同尺度的特征。 在本实施例中, 可以将各卷积层分别提取出的媒体数据的特征 作为第一特征, 或者将最后一个卷积层或最后一个包含卷积层的残差模块输出的特征作为 第一特征。 0044 相应地, 可以采用第二神经网络模型对媒体数据进行特征提取。 作为示。
30、例, 当第一 神经网络模型是卷积神经网络模型时, 剪枝后得到的第二神经网络模型也是卷积神经网 络。 可以将第二神经网络模型中与第一神经网络模型中的对应卷积层或残差模块输出的特 征作为媒体数据的第二特征。 0045 在这里, 媒体数据是训练数据。 可以预先构建用于训练第一神经网络模型的媒体 数据集合, 该媒体数据集合中的媒体数据可以包含标注信息。 例如图像数据、 视频数据包含 图像中的对象类型或对象位置的标注信息, 语音数据包含对应的文本标注信息, 一段文本 数据包含对应的另一种语言的翻译文本的标注信息。 0046 步骤203, 获取第一神经网络模型基于第一特征对媒体数据的处理结果。 0047 。
31、第一神经网络模型对媒体数据的处理结果可以是对媒体数据的分类结果或回归 结果。 在本实施例中, 第一神经网络模型对媒体数据进行特征提取之后, 可以根据提取出的 第一特征对媒体数据执行分类或回归任务。 上述执行主体可以获取第一神经网络模型输出 的媒体数据的处理结果。 0048 步骤204, 基于预先构建的监督函数和任务损失函数, 确定第一神经网络模型的误 差, 通过反向传播误差迭代调整第一神经网络模型的参数。 0049 其中, 监督函数表征第一特征和第二特征之间的差异。 0050 可以基于第一特征和第二特征的差异构建监督函数, 例如可以计算第一特征和第 二特征的二范数作为监督函数。 该监督函数用于。
32、监督第一神经网络模型的参数迭代。 由于 第一特征和第二特征是随第一神经网络模型的参数变化的, 所以监督函数的值也随第一神 经网络模型的参数变化, 也即监督函数是关于第一神经网络模型的参数的函数。 0051 任务损失函数表征第一神经网络模型对媒体数据的处理结果的误差。 在这里, 第 一神经网络模型对媒体数据的处理结果的误差可以是第一神经网络模型对媒体数据的处 理结果与媒体数据的标注信息的差异。 任务损失函数也用于监督第一神经网络模型的参数 迭代。 任务损失函数也是关于第一神经网络模型的参数的函数。 0052 在本实施例中, 可以基于上述监督函数和任务损失函数联合监督第一神经网络模 型的参数迭代。。
33、 具体地, 可以基于监督函数和任务损失函数构建联合损失函数, 例如可以将 二者的加权和作为联合代价函数。 然后, 基于联合代价函数, 采用反向传播方法, 计算联合 代价函数关于第一神经网络模型的参数的梯度, 从而更新第一神经网络模型的参数。 0053 在第一神经网络模型的参数被更新之后, 可以返回至步骤201, 执行下一次训练操 作。 这样, 在执行多次训练操作之后, 第一神经网络模型的参数在监督函数和任务损失函数 的监督下进行了多次迭代更新。 0054 上述实施例的神经网络模型的训练方法通过在神经网络模型的训练过程中利用 剪枝前后的神经网络模型提取出的特征之间的差异进行监督, 从而被裁减掉的。
34、参数对神经 说明书 5/10 页 8 CN 111523640 A 8 网络模型的性能的影响较小, 裁剪后的模型中保留的参数对被裁减掉的参数的依赖性较 弱, 由此可以训练得出剪枝后可保持良好性能的神经网络模型, 可以在训练完成后快速完 成神经网络模型的剪枝。 0055 可选地, 上述第一神经网络模型包括第一特征提取层和第一分类器, 上述第一特 征包括由第一特征提取层中与第一分类器连接的最后一个网络层输出的特征。 例如, 上述 第一神经网络模型为卷积神经网络模型, 其中第一特征提取层包含多个卷积层或多个残差 模块, 第一分类器可以包含全连接层、 非线性层。 则可以将于第一分类器连接的最后一个卷 。
35、积层或最后一个残差模块输出的特征作为提取出的第一特征。 0056 上述第二神经网络模型包括第二特征提取层和第二分类器, 第二特征包括由第二 特征提取层中与第二分类器连接的最优一个网络层输出的特征。 例如, 第二神经网络模型 是卷积神经网络, 第二特征是卷积神经网络中与第二分类器连接的最后一个卷积层或最后 一个残差模块输出的特征。 0057 通过将第一神经网络模型和第二神经网络模型中最后一个特征提取层输出的特 征分别作为第一特征和第二特征, 构建的监督函数可以更准确地表征第一神经网络模型和 第二神经网络模型的性能差异, 从而有利于第一神经网络模型在迭代调整参数时弱化剪枝 操作中被裁剪掉的参数对被。
36、保留的参数的影响, 进一步降低训练得到的第一神经网络模型 对剪枝操作的敏感性, 从而训练得到更适合剪枝的第一神经网络模型。 0058 可选地, 上述第一特征还可以包括由第一特征提取层中的第一中间层输出的特 征; 上述第二特征还包括由第二特征提取层中的第二中间层输出的特征。 这时, 上述第一特 征和第二特征之间的差异包括: 第一中间层输出的特征与第二神经网络模型中与第一中间 层对应的第二中间层输出的特征之间的差异, 以及第一分类器连接的最后一个网络层输出 的特征与第二分类器连接的最后一个网络层输出的特征之间的差异。 0059 第一神经网络模型中的第一特征提取层和第二神经网络模型中的第二特征提取 。
37、层均包括多个中间层, 例如卷积神经网络包括多个卷积层, 各卷积层分别提取不同尺度的 特征。 可以将第一神经网络模型和第二神经网络模型中对应层提取出的特征进行比对, 然 后将各个对应层提取出的特征之间的差异求和, 或者加权求和, 得到第一特征与第二特征 的总差异。 0060 这样, 可以基于第一特征和第二特征在多个尺度的差异构建监督函数, 从而第一 神经网络模型和第二神经网络的多个中间层的性能差异均用于监督第一神经网络模型的 参数更新, 由此训练得到的第一神经网络模型在剪枝后的准确性更高。 0061 继续参考图3, 其示出了本公开的用于训练神经网络模型的方法的另一个实施例 的流程图。 如图3所示。
38、, 本实施例的用于训练神经网络模型的方法的流程300, 包括以下步 骤: 0062 步骤301, 迭代执行多次训练操作。 0063 其中, 训练操作包括以下步骤3011至步骤3015。 0064 在步骤3011中, 对第一神经网络模型进行剪枝得到第二神经网络模型。 0065 在步骤3012中, 采用第一神经网络模型对媒体数据进行特征提取得到第一特征, 采用第二神经网络模型对媒体数据进行特征提取得到第二特征。 0066 在步骤3013中, 获取第一神经网络模型基于第一特征对媒体数据的处理结果; 说明书 6/10 页 9 CN 111523640 A 9 0067 在步骤3014中, 基于预先构建。
39、的监督函数和任务损失函数, 确定第一神经网络模 型的误差, 通过反向传播误差迭代调整第一神经网络模型的参数。 0068 其中, 监督函数表征第一特征和第二特征之间的差异, 任务损失函数表征第一神 经网络模型对媒体数据的处理结果的误差。 0069 上述步骤3011至步骤3014与前述实施例的步骤201至步骤2044一一对应, 步骤 3011至步骤3014的具体实现方式可分贝参考前述实施例中步骤201至步骤204的对应描述, 此处不再赘述。 0070 在本实施例中, 训练操作还包括: 0071 步骤3015, 响应于确定训练操作达到预设的收敛条件, 确定第一神经网络模型完 成训练。 0072 上述。
40、预设的收敛条件可以是预先设置的训练停止条件, 可以包括但不限于以下中 的至少一项: 训练操作的次数达到预设的次数阈值, 当前训练操作中第一神经网络模型的 误差小于预设的阈值, 第一神经网络模型在最近的若干次训练操作中的参数更新率小于预 设的更新率阈值, 由监督函数和任务损失函数构建的联合代价函数的值小于预设的损失 值。 0073 在每一次训练操作中, 对第一神经网络模型的参数更新之后, 可以判断训练操作 是否满足上述预设的收敛条件。 若是, 则可以停止执行训练操作, 当前的第一神经网络模型 即为训练完成的第一神经网络模型。 0074 在本实施例中, 用于训练神经网络模型的方法还包括: 0075。
41、 步骤302, 对完成训练的第一神经网络模型进行剪枝, 得到剪枝后的神经网络模 型。 0076 在本实施例中, 可以根据运行剪枝后的神经网络模型的设备的硬件或软件约束, 对完成训练的第一神经网络模型进行剪枝。 在执行剪枝操作时, 可以根据上述设备的硬件 或软件约束构建剪枝代价函数, 或者, 可以基于剪枝后模型性能的损失构建剪枝代价函数, 通过最小化剪枝代价函数来搜索最优的剪枝策略, 基于搜索出的最优剪枝策略对完成训练 的第一神经网络模型进行剪枝, 得到剪枝后的神经网络模型。 0077 现有的神经网络模型剪枝方法中, 对神经网络模型剪枝后, 为了确保剪枝后的模 型的性能, 需要对剪枝后的模型进行。
42、再训练。 本实施例的方法获得的剪枝后的神经网络模 型具有良好的性能, 有效缩减了剪枝后的模型再训练所消耗的计算资源, 能够提升模型的 剪枝效率, 从而可以高效、 低成本地完成神经网络模型的压缩。 0078 可选地, 上述方法流程300还可以包括: 0079 步骤303, 采用剪枝后的神经网络模型对待分类的媒体数据进行分类。 0080 上述剪枝后的神经网络模型可以被部署在上述执行主体中, 或者部署在与上述执 行主体通信连接的终端设备中。 在获取到待处理媒体数据时, 可以将待处理媒体数据输入 至该剪枝后的神经网络模型进行处理, 得到处理结果。 其中, 待处理媒体数据是未知处理结 果的数据, 例如待。
43、分类的图像、 待识别的音频、 待翻译的文本, 等等。 0081 由于剪枝后的神经网络模型的运算量较小, 其对待处理媒体数据进行处理所消耗 的计算资源较少, 因此可以快速地提供处理结果, 能够应用于对实时性要求较高的场景中。 0082 请参考图4, 作为对上述神经网络模型的训练方法的实现, 本公开提供了一种神经 说明书 7/10 页 10 CN 111523640 A 10 网络模型的训练装置的一个实施例, 该装置实施例与图2和图3所示的方法实施例相对应, 该装置具体可以应用于各种电子设备中。 0083 如图4所示, 本实施例的神经网络模型的训练装置400包括训练单元401。 训练单元 401被。
44、配置为迭代执行多次训练操作。 训练单元401包括: 第一剪枝单元4011, 被配置为在每 次训练操作中对第一神经网络模型进行剪枝得到第二神经网络模型; 提取单元4012, 被配 置为在每次训练操作中采用第一神经网络模型对媒体数据进行特征提取得到第一特征, 采 用第二神经网络模型对媒体数据进行特征提取得到第二特征; 获取单元4013, 被配置为在 每次训练操作中获取第一神经网络模型基于第一特征对媒体数据的处理结果; 以及更新单 元4014, 被配置为在每次训练操作中基于预先构建的监督函数和任务损失函数, 确定第一 神经网络模型的误差, 通过反向传播误差迭代调整第一神经网络模型的参数; 其中, 监。
45、督函 数表征第一特征和第二特征之间的差异, 任务损失函数表征第一神经网络模型对媒体数据 的处理结果的误差。 0084 在一些实施例中, 上述第一神经网络模型包括第一特征提取层和第一分类器, 第 一特征包括由第一特征提取层中与第一分类器连接的最后一个网络层输出的特征; 第二神 经网络模型包括第二特征提取层和第二分类器, 第二特征包括由第二特征提取层中与第二 分类器连接的最优一个网络层输出的特征。 0085 在一些实施例中, 上述第一特征还包括由第一特征提取层中的第一中间层输出的 特征; 上述第二特征还包括由第二特征提取层中的第二中间层输出的特征; 上述第一特征 和第二特征之间的差异包括: 第一中。
46、间层输出的特征与第二神经网络模型中与第一中间层 对应的第二中间层输出的特征之间的差异, 以及第一分类器连接的最后一个网络层输出的 特征与第二分类器连接的最后一个网络层输出的特征之间的差异。 0086 在一些实施例中, 上述训练单元还包括: 确定单元, 被配置为在每次训练操作中响 应于确定训练操作达到预设的收敛条件, 确定第一神经网络模型完成训练; 以及上述装置 还包括: 第二剪枝单元, 被配置为对完成训练的第一神经网络模型进行剪枝, 得到剪枝后的 神经网络模型。 0087 在一些实施例中, 上述装置还包括: 处理单元, 被配置为采用剪枝后的神经网络模 型对待处理媒体数据进行处理。 0088 上。
47、述装置400中的各单元与参考图2和图3描述的方法中的步骤相对应。 由此, 上文 针对神经网络模型的训练方法描述的操作、 特征及所能达到的技术效果同样适用于装置 400及其中包含的单元, 在此不再赘述。 0089 下面参考图5, 其示出了适于用来实现本公开的实施例的电子设备(例如图1所示 的服务器)500的结构示意图。 图5示出的电子设备仅仅是一个示例, 不应对本公开的实施例 的功能和使用范围带来任何限制。 0090 如图5所示, 电子设备500可以包括处理装置(例如中央处理器、 图形处理器等) 501, 其可以根据存储在只读存储器(ROM)502中的程序或者从存储装置508加载到随机访问 存储。
48、器(RAM)503中的程序而执行各种适当的动作和处理。 在RAM 503中, 还存储有电子设备 500操作所需的各种程序和数据。 处理装置501、 ROM 502以及RAM503通过总线504彼此相连。 输入/输出(I/O)接口505也连接至总线504。 0091 通常, 以下装置可以连接至I/O接口505: 包括例如触摸屏、 触摸板、 键盘、 鼠标、 摄 说明书 8/10 页 11 CN 111523640 A 11 像头、 麦克风、 加速度计、 陀螺仪等的输入装置506; 包括例如液晶显示器(LCD)、 扬声器、 振 动器等的输出装置507; 包括例如硬盘等的存储装置508; 以及通信装置。
49、509。 通信装置509可 以允许电子设备500与其他设备进行无线或有线通信以交换数据。 虽然图5示出了具有各种 装置的电子设备500, 但是应理解的是, 并不要求实施或具备所有示出的装置。 可以替代地 实施或具备更多或更少的装置。 图5中示出的每个方框可以代表一个装置, 也可以根据需要 代表多个装置。 0092 特别地, 根据本公开的实施例, 上文参考流程图描述的过程可以被实现为计算机 软件程序。 例如, 本公开的实施例包括一种计算机程序产品, 其包括承载在计算机可读介质 上的计算机程序, 该计算机程序包含用于执行流程图所示的方法的程序代码。 在这样的实 施例中, 该计算机程序可以通过通信装。
50、置509从网络上被下载和安装, 或者从存储装置508 被安装, 或者从ROM 502被安装。 在该计算机程序被处理装置501执行时, 执行本公开的实施 例的方法中限定的上述功能。 需要说明的是, 本公开的实施例所描述的计算机可读介质可 以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。 计算机可 读存储介质例如可以是但不限于电、 磁、 光、 电磁、 红外线、 或半导体的系统、 装置 或器件, 或者任意以上的组合。 计算机可读存储介质的更具体的例子可以包括但不限于: 具 有一个或多个导线的电连接、 便携式计算机磁盘、 硬盘、 随机访问存储器(RAM)、 只读存储器 (ROM)。
- 内容关键字: 神经网络 模型 训练 方法 装置
便于维修的反冲洗过滤器.pdf
农机动力飞轮加工用抛光装置.pdf
用于茶叶外包装的标签打印装置.pdf
双核心密码工程实验箱.pdf
对虾养殖水体温度和盐度的自动调控装置.pdf
塑料模具脱壳机.pdf
ALC轻质墙体板分离工具.pdf
可调泡径的人字板机构.pdf
化妆品包装瓶点喷式喷涂装置.pdf
用于载人观光潜水器的连接结构.pdf
铝粉生产用雾化系统.pdf
固体磷酸催化剂均化器搅拌机构.pdf
日光温室多功能智能一体机.pdf
球形黑体辐射源.pdf
建筑施工用安全防护围挡.pdf
便携式可伸缩绝缘烟感温感检测装置.pdf
给排水系统图生成方法、装置、设备及存储介质.pdf
管道缺陷修补装置.pdf
西林瓶高速分装称量抽真空一体机.pdf
飞行物识别方法、系统、智能终端及计算机可读存储介质.pdf
易维护的包装机械密封防护构型.pdf
红外卫星遥感影像薄云去除方法、装置及介质.pdf
半球谐振陀螺仪的正交漂移误差检测方法.pdf
二级差动环形压控振荡器及射频芯片模组.pdf
角膜移植术后防止植片移位的头部固定枕.pdf
便携式桥梁检测设备.pdf
视频采集设备的检测方法、装置、设备及介质.pdf
晶圆背面清洗方法和装置.pdf
碳化硼结合金刚石复合超硬防弹陶瓷的制备方法.pdf
水处理用加药方法及其设备.pdf
基于感应辅热与磁流体冷却的杆件在轨成形机构与方法.pdf
龙门加工中心滑块润滑装置.pdf
烘烤食品的烘烤盘清洗装置.pdf
方便清洗的鸡舍.pdf
带有能量收集自供电的飞行器.pdf
竖式缠绕瓜带.pdf
基于深度生成模型的半监督问答对归纳方法和系统.pdf
离子交换型印染废水脱色用凝胶膜及其制备方法.pdf
硬膜外麻醉装置.pdf
大米抛光机除尘机构.pdf
三明治结构CoFeC/石墨烯电磁波吸收材料的合成方法.pdf
漂移管的固定结构和交叉指型漂移管加速器.pdf
折叠旅游箱包.pdf
具备刮壁功能的炼蜜锅.pdf
超宽三角桁架式翼缘组拼式混凝土箱梁及其施工方法.pdf
SnO.pdf
一体电感用的端子切断机构.pdf
机顶盒.pdf
铝灰球团粘结剂及其制备方法.pdf
护眼仪中的多路激光管连接结构.pdf
针对脑瘫儿童上肢康复训练的交互式城市主题积木模块.pdf