离线模型的验证方法及相关装置
技术领域
本申请涉及数据处理技术领域,具体涉及一种离线模型的验证方法及相关装置。
背景技术
随着科学技术的发展,人工智能技术也越来越得到了人们的重视。人工智能技术中,会采用神经网络对数据进行处理,在神经网络的训练时,通常会采用深度学习的方式。深度学习的前向传播过程一般分为在线前向传播和离线前向传播两种类型,在线前向传播依赖于深度学习框架运行,离线前向传播是基于离线模型的计算过程,不依赖于具体的框架,是一种高效的运行模式。离线模型是根据给定的网络结构、权重数据,由深度学习框架程序生成的。离线模型含有MLU离线指令、权重数据、模型数据和子网络等信息。实际使用中,离线模型将会被布置在实际应用场景,对全新的实际数据进行前向传播计算或者预测。现有方案中对离线模型进行前向传播验证时,需要适配的进行输入数据前处理、输入数据后处理等复杂的处理,从而才能对离线模型的前向传播进行验证,导致了对离线模型进行前向传播验证时的效率较低。
发明内容
本申请实施例提供一种离线模型的验证方法及相关装置,能够提升离线模型前向传播验证时的效率。
本申请实施例的第一方面提供了一种离线模型的验证方法,所述方法包括:
获取测试数据,所述测试数据的尺寸与离线模型的输入数据的尺寸一致;
将所述测试数据输入到所述离线模型中进行前向传播计算,若所述前向传播计算在所述离线模型的最后一层的计算完成之前终止,则确定出所述离线模型为异常离线模型。
可选的,所述将所述测试数据输入到所述离线模型中进行前向传播计算,包括:
根据所述离线模型的模型文件,确定出K个子网络,K为正整数;
根据所述测试数据,对所述K个子网络中的每个子网络进行前向传播计算。
可选的,在所述获取测试数据之前,所述方法还包括:
获取目标权值数据,所述目标权值数据的尺寸与所述离线模型的权值数据的尺寸相同;
根据所述模型文件和所述目标权值数据,生成所述离线模型。
可选的,目标子网络包括至少一个网络层,所述目标子网络为所述K个子网络中前向传播计算终止的子网络,所述至少一个网络层中的每个网络层包括多个运算指令,所述方法还包括:
获取所述每个网络层中的多个运算指令中的每个运算指令的第一地址偏移量,所述第一地址偏移量为前向传播计算时的地址偏移量;
若第一目标运算指令的第一地址偏移量与所述第一目标运算指令的预设地址偏移量不同,则确定出所述第一目标运算指令为异常运算指令,所述第一目标运算指令为所述多个运算指令中的任一个。
可选的,所述方法还包括:
获取所述离线模型在前向传播计算终止时所消耗的目标能耗值;
根据预设的能耗值与网络层之间的映射关系,确定出与所述目标能耗值对应的目标网络层。
可选的,所述方法还包括:
获取所述目标网络层中的多个运算指令中的每个运算指令的第二地址移量,所述第二地址偏移量为前向传播计算时的地址偏移量;
若第二目标运算指令的第二地址偏移量与所述第二目标运算指令的预设地址偏移量不同,则确定出所述第二目标运算指令为异常运算指令,所述第二目标运算指令为所述目标网络层中的多个运算指令中的任一个。
可选的,所述方法还包括:
获取所述目标网络层的目标输入数据的参考位数,所述目标输入数据为在前向传播计算时所述目标网络层的输入数据;
若所述参考位数与所述目标网络层的输入数据的预设位数不同,则确定出所述目标网络层的前一层为异常网络层。
本申请实施例的第二方面提供了一种离线模型的验证装置,所述装置包括获取模块和计算模块,其中,
所述获取模块,用于获取测试数据,所述测试数据的尺寸与离线模型的输入数据的尺寸一致;
所述计算模块,用于将所述测试数据输入到所述离线模型中进行前向传播计算,若所述前向传播计算在所述离线模型的最后一层的计算完成之前终止,则确定出所述离线模型为异常离线模型。
可选的,在所述将所述测试数据输入到所述离线模型中进行前向传播计算方面,所述计算模块用于包括:
根据所述离线模型的模型文件,确定出K个子网络,K为正整数;
根据所述测试数据,对所述K个子网络中的每个子网络进行前向传播计算。
可选的,所述装置还用于:
获取目标权值数据,所述目标权值数据的尺寸与所述离线模型的权值数据的尺寸相同;
根据所述模型文件和所述目标权值数据,生成所述离线模型。
可选的,目标子网络包括至少一个网络层,所述目标子网络为所述K个子网络中前向传播计算终止的子网络,所述至少一个网络层中的每个网络层包括多个运算指令,所述装置还用于:
获取所述每个网络层中的多个运算指令中的每个运算指令的第一地址偏移量,所述第一地址偏移量为前向传播计算时的地址偏移量;
若第一目标运算指令的第一地址偏移量与所述第一目标运算指令的预设地址偏移量不同,则确定出所述第一目标运算指令为异常运算指令,所述第一目标运算指令为所述多个运算指令中的任一个。
可选的,所述装置还用于:
获取所述离线模型在前向传播计算终止时所消耗的目标能耗值;
根据预设的能耗值与网络层之间的映射关系,确定出与所述目标能耗值对应的目标网络层。
可选的,所述装置还用于:
获取所述目标网络层中的多个运算指令中的每个运算指令的第二地址移量,所述第二地址偏移量为前向传播计算时的地址偏移量;
若第二目标运算指令的第二地址偏移量与所述第二目标运算指令的预设地址偏移量不同,则确定出所述第二目标运算指令为异常运算指令,所述第二目标运算指令为所述目标网络层中的多个运算指令中的任一个。
可选的,所述装置还用于:
获取所述目标网络层的目标输入数据的参考位数,所述目标输入数据为在前向传播计算时所述目标网络层的输入数据;
若所述参考位数与所述目标网络层的输入数据的预设位数不同,则确定出所述目标网络层的前一层为异常网络层。
本申请实施例的第三方面提供一种计算机设备,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述处理器包括通用处理器和人工智能处理器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如本申请实施例第一方面中的步骤指令。
本申请实施例的第四方面提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。
本申请实施例的第五方面提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
实施本申请实施例,至少具有如下有益效果:
通过获取测试数据,所述测试数据的尺寸与离线模型的输入数据的尺寸一致,将所述测试数据输入到所述离线模型中进行前向传播计算,若所述前向传播计算在所述离线模型的最后一层的计算完成之前终止,则确定出所述离线模型为异常离线模型,因此,相对于现有方案中,需要适配的进行输入数据前处理、输入数据后处理等复杂的处理,能够根据测试数据对离线模型进行前向传播计算,离线模型的最后一层的计算完成之前终止,则确定出离线模型为异常离线模型,从而能够一定程度上提升离线模型验证时的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供了一种离线模型的验证方法的流程示意图;
图2为本申请实施例提供了另一种离线模型的验证方法的流程示意图;
图3为本申请实施例提供了另一种离线模型的验证方法的流程示意图;
图4为本申请实施例提供的一种计算机设备的结构示意图;
图5为本申请实施例提供了一种离线模型的验证装置的结构示意图。
具体实施方式
本申请实施例中,旨在解决现有技术中,在进行离线模型的前向传播进行验证时,所采用的方法需要经过复杂的参数构造和参数处理,提出了通过构建测试数据,测试数据为随机生成的数据且测试数据的尺寸与该离线模型的输入数据的尺寸相同,将测试数据输入到离线模型中进行前向传播计算,从而对离线模型的前向传播进行验证,以达到提升对离线模型进行前向传播验证时的效率。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
本申请实施例所涉及到的电子装置可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(user equipment,UE),移动台(mobile station,MS),终端设备(terminaldevice)等等。为方便描述,上面提到的设备统称为电子装置。
请参阅图1,图1为本申请实施例提供了一种离线模型的验证方法的流程示意图。如图1所示,该方法包括步骤101-102,具体如下:
101、获取测试数据,测试数据的尺寸与离线模型的输入数据的尺寸一致。
其中,测试数据可以为随机生成的浮点型数据,其尺寸与该离线模型的输入数据尺寸相同,离线模型的输入数据的尺寸可以从离线模型的模型文件中获取到,也可以采用对离线模型的模型数据和权重数据进行加载,在加载完成后,读取到该离线模型的输入数据规模。
102、将测试数据输入到离线模型中进行前向传播计算,若前向传播计算在离线模型的最后一层的计算完成之前终止,则确定出离线模型为异常离线模型。
其中,将测试数据输入到离线模型中进行前向传播计算可以理解为:将测试数据加载到人工智能处理器上,结合离线模型的指令和权重数据,进行前向传播计算。
本示例中,通过获取测试数据,测试数据的尺寸与离线模型的输入数据的尺寸一致,将测试数据输入到离线模型中进行前向传播计算,若前向传播计算在离线模型的最后一层的计算完成之前终止,则确定出离线模型为异常离线模型,因此,相对于现有方案中,需要适配的进行输入数据前处理、输入数据后处理等复杂的处理,能够根据测试数据对离线模型进行前向传播计算,离线模型的最后一层的计算完成之前终止,则确定出离线模型为异常离线模型,从而能够一定程度上提升离线模型验证时的效率。
在一个可能的实施例中,一种可能的将测试数据输入到离线模型中进行前向传播计算的方法可包括步骤A1-A2,具体如下:
A1、根据离线模型的模型文件,确定出K个子网络;
A2、根据测试数据,对K个子网络中的每个子网络进行前向传播计算。
其中,离线模型可以包括M个子网络,其中的K个子网络可以为在人工智能处理器进行运行的子网络,另外的子网络可以为在通用处理器上运行的子网络,M为大于K的正整数。
可选的,对K个子网络中的每个子网络进行前向传播计算时,可以按照K个子网络的在离线模型中的顺序进行前向传播计算,也可以通过其它的顺序进行前向传播计算,此处仅为举例说明不作具体限定。
可选的,离线模型也可以是一个整体的网络,则对离线模型进行前向传播计算时,可以直接对该离线模型进行前向传播计算。
本示例中,在对离线模型进行前向传播计算时,可以对离线模型的K个子网络中的每个子网络模型进行前向传播计算,因此,可以一定程度上提升对离线模型进行前向传播计算时的效率。
在一个可能的实施例中,一种可能的构建离线模型的方法包括步骤B1-B2,具体如下:
B1、获取目标权值数据,目标权值数据的尺寸与离线模型的权值数据的尺寸相同;
B2、根据模型文件和目标权值数据,生成离线模型。
其中,目标权值数据为随机生成的数据,离线模型的权值数据可以理解为通过训练得到的权值数据。
可选的,根据模型文件和目标权值数据生成离线模型时,可以直接通过模型文件和目标权值数据进行模型构建,从而得到该离线模型。
本示例中,通过随机生成的目标权值数据和模型文件生成离线模型,从而无需对权值数据的具体数据进行关注,以及对权值数据进行准备,从而可以一定程度上提升对离线模型进行验证时的效率。
在一个可能的实施例中,目标子网络包括至少一个网络层,目标子网络为K个子网络中前向传播计算终止的子网络,一种可能的对离线模型进行异常分析的方法包括步骤C1-C2,具体如下:
C1、获取每个网络层中的多个运算指令中的每个运算指令的第一地址偏移量,第一地址偏移量为前向传播计算时的地址偏移量;
C2、若第一目标运算指令的第一地址偏移量与第一目标运算指令的预设地址偏移量不同,则确定出第一目标运算指令为异常运算指令,第一目标运算指令为多个运算指令中的任一个。
其中,预设地址偏移量可以为离线模型的模型文件中设定的地址偏移量,当然也可以从其它文件中确定出该预设的地址偏移量,例如,与离线模型相对应的在线模型中,确定出地址偏移量,此处仅为举例说明,不作具体限定。
本示例中,通过对目标子网络中的每个运算指令的第一地址偏移量与对应的预设地址偏移量进行比对,若不同,则确定出该运算指令为异常运算指令,从而可以根据地址偏移量确定出异常运算指令,能够一定程度上提升异常运算指令确定时的效率。
在一个可能的实施例中,一种可能的确定离线模型的疑似异常网络层的方法包括步骤D1-D2,具体如下:
D1、获取离线模型在前向传播计算终止时所消耗的目标能耗值;
D2、根据预设的能耗值与网络层之间的映射关系,确定出与目标能耗值对应的目标网络层。
其中,获取离线模型在前向传播计算终止时所消耗的目标能耗值的方法可以为:通过采集与前向传播计算相关的处理器(通用处理器和/或人工智能处理器)的能耗值,将该能能耗值作为目标能量值。
可选的,目标网络层为离线模型前向传播计算终止的网络层(疑似异常网络层),疑似异常网络层可以理解为该网络层可能为正常网络层也可能为异常网络层,能耗值与网路层之间的映射关系为通过经验值或历史数据设定,由于不同的网络层在进行前向传播计算时所需的能耗值不同,相同的网络层在进行计算时能耗值会趋于一个固定值,则在进行前向传播计算时,可以通过能耗值叠加的方式,来建立能耗值与网络层之间的映射关系。
本示例中,由于现有方案中对异常网络层确定时,由于离线模型在建立后,不能对离线模型进行拆分等动作,从而通过能耗值来确定出目标网络层,能够一定程度上提升目标网络层确定时的准确性。
在一个可能的实施例中,一种可能的确定异常网络层的方法可包括步骤E1-E2,具体如下:
E1、获取目标网络层中的多个运算指令中的每个运算指令的第二地址移量,第二地址偏移量为前向传播计算时的地址偏移量;
E2、若第二目标运算指令的第二地址偏移量与第二目标运算指令的预设地址偏移量不同,则确定出第二目标运算指令为异常运算指令,第二目标运算指令为目标网络层中的多个运算指令中的任一个。
其中,步骤E1、E2的具体实施方式可以参照前述步骤C1、C2的具体实施方式,此处不再赘述。在确定出第二目标运算指令为异常运算指令时,则也可以将目标网络层确定为异常网络层。
本示例中,通过对目标子网络中的每个运算指令的第一地址偏移量与对应的预设地址偏移量进行比对,若不同,则确定出该运算指令为异常运算指令,从而可以根据地址偏移量确定出异常运算指令,能够一定程度上提升异常运算指令确定时的效率。
在一个可能的实施例中,另一种可能的确定异常网络层的方法可包括步骤F1-F2,具体如下:
F1、获取目标网络层的目标输入数据的参考位数,目标输入数据为在前向传播计算时目标网络层的输入数据;
F2、若参考位数与目标网络层的输入数据的预设位数不同,则确定出目标网络层的前一层为异常网络层。
其中,目标网络层的输入数据的预设位数可以从离线模型的模型文件获取到,当然也可以从其它文件中确定出该预设的地址偏移量,例如,与离线模型相对应的在线模型中,确定出地址偏移量,此处仅为举例说明,不作具体限定。
可选的,目标网络层的前一层可以理解为与目标网络层相邻的前一层。
本示例中,在目标输入数据的参考位数与目标网络层的输入数据的预设位数不同时,可以确定出目标网络层的前一层为异常网络层,从而通过输入数据的位数来确定出异常网络层,能够一定程度上提升异常网络层确定时的准确性。
请参阅图2,图2为本申请实施例提供了另一种离线模型的验证方法的流程示意图。如图2所示,该验证方法包括步骤201-205,具体如下:
201、获取目标权值数据,目标权值数据的尺寸与离线模型的权值数据的尺寸相同;
其中,目标权值数据为随机生成的权值数据。
202、根据模型文件和目标权值数据,生成离线模型;
203、获取测试数据,测试数据的尺寸与离线模型的输入数据的尺寸一致;
其中,测试数据可以为随机生成的浮点型数据,其尺寸与该离线模型的输入数据尺寸相同。
204、根据离线模型的模型文件,确定出K个子网络,K为正整数;
其中,线模型可以包括M个子网络,其中的K个子网络可以为在人工智能处理器进行运行的子网络,另外的子网络可以为在通用处理器上运行的子网络,M为大于K的正整数
205、根据测试数据,对K个子网络中的每个子网络进行前向传播计算,若前向传播计算在离线模型的最后一层的计算完成之前终止,则确定出离线模型为异常离线模型。
其中,对K个子网络中的每个子网络进行前向传播计算时,可以按照K个子网络的在离线模型中的顺序进行前向传播计算,也可以通过其它的顺序进行前向传播计算,此处仅为举例说明不作具体限定。
本示例中,通过随机生成的目标权值数据和模型文件生成离线模型,从而无需对权值数据的具体数据进行关注,以及对权值数据进行准备,从而可以一定程度上提升对离线模型进行验证时的效率。
请参阅图3,图3为本申请实施例提供了另一种离线模型的验证方法的流程示意图。如图3所示,该验证方法包括步骤301-306,具体如下:
301、获取测试数据,所述测试数据的尺寸与离线模型的输入数据的尺寸一致;
其中,测试数据可以为随机生成的浮点型数据,其尺寸与该离线模型的输入数据尺寸相同。
302、将所述测试数据输入到所述离线模型中进行前向传播计算,若所述前向传播计算在所述离线模型的最后一层的计算完成之前终止,则确定出所述离线模型为异常离线模型;
303、获取所述离线模型在前向传播计算终止时所消耗的目标能耗值;
其中,获取离线模型在前向传播计算终止时所消耗的目标能耗值的方法可以为:通过采集与前向传播计算相关的处理器(通用处理器和/或人工智能处理器)的能耗值,将该能能耗值作为目标能量值。
304、根据预设的能耗值与网络层之间的映射关系,确定出与所述目标能耗值对应的目标网络层;
其中,能耗值与网路层之间的映射关系为通过经验值或历史数据设定,由于不同的网络层在进行前向传播计算时所需的能耗值不同,相同的网络层在进行计算时能耗值会趋于一个固定值,则在进行前向传播计算时,可以通过能耗值叠加的方式,来建立能耗值与网络层之间的映射关系。
305、获取所述目标网络层中的多个运算指令中的每个运算指令的第二地址移量,所述第二地址偏移量为前向传播计算时的地址偏移量;
306、若第二目标运算指令的第二地址偏移量与所述第二目标运算指令的预设地址偏移量不同,则确定出所述第二目标运算指令为异常运算指令,所述第二目标运算指令为所述目标网络层中的多个运算指令中的任一个。
本示例中,通过对目标子网络中的每个运算指令的第一地址偏移量与对应的预设地址偏移量进行比对,若不同,则确定出该运算指令为异常运算指令,从而可以根据地址偏移量确定出异常运算指令,能够一定程度上提升异常运算指令确定时的效率。
与上述实施例一致的,请参阅图4,图4为本申请实施例提供的一种计算机设备的结构示意图,如图所示,包括处理器和存储器,处理器和存储器相互连接,其中,处理器包括通用处理器和人工智能处理器,存储器用于存储计算机程序,计算机程序包括程序指令,处理器被配置用于调用程序指令,上述程序包括用于执行以下步骤的指令;
获取测试数据,测试数据的尺寸与离线模型的输入数据的尺寸一致;
将测试数据输入到离线模型中进行前向传播计算,若前向传播计算在离线模型的最后一层的计算完成之前终止,则确定出离线模型为异常离线模型。
本示例中,通过获取测试数据,测试数据的尺寸与离线模型的输入数据的尺寸一致,将测试数据输入到离线模型中进行前向传播计算,若前向传播计算在离线模型的最后一层的计算完成之前终止,则确定出离线模型为异常离线模型,因此,相对于现有方案中,需要适配的进行输入数据前处理、输入数据后处理等复杂的处理,能够根据测试数据对离线模型进行前向传播计算,离线模型的最后一层的计算完成之前终止,则确定出离线模型为异常离线模型,从而能够一定程度上提升离线模型验证时的效率。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,终端为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对终端进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
与上述一致的,请参阅图5,图5为本申请实施例提供了一种离线模型的验证装置的结构示意图。如图5所示,装置包括获取模块501和计算模块502,其中,
获取模块501,用于获取测试数据,测试数据的尺寸与离线模型的输入数据的尺寸一致;
计算模块502,用于将测试数据输入到离线模型中进行前向传播计算,若前向传播计算在离线模型的最后一层的计算完成之前终止,则确定出离线模型为异常离线模型。
可选的,在将测试数据输入到离线模型中进行前向传播计算方面,计算模块501用于包括:
根据离线模型的模型文件,确定出K个子网络;
根据测试数据,对K个子网络中的每个子网络进行前向传播计算。
可选的,装置还用于:
获取目标权值数据,目标权值数据的尺寸与离线模型的权值数据的尺寸相同;
根据模型文件和目标权值数据,生成离线模型。
可选的,目标子网络包括至少一个网络层,目标子网络为K个子网络中前向传播计算终止的子网络,至少一个网络层中的每个网络层包括多个运算指令,装置还用于:
获取每个网络层中的多个运算指令中的每个运算指令的第一地址偏移量,第一地址偏移量为前向传播计算时的地址偏移量;
若第一目标运算指令的第一地址偏移量与第一目标运算指令的预设地址偏移量不同,则确定出第一目标运算指令为异常运算指令,第一目标运算指令为多个运算指令中的任一个。
可选的,装置还用于:
获取离线模型在前向传播计算终止时所消耗的目标能耗值;
根据预设的能耗值与网络层之间的映射关系,确定出与目标能耗值对应的目标网络层。
可选的,装置还用于:
获取目标网络层中的多个运算指令中的每个运算指令的第二地址移量,第二地址偏移量为前向传播计算时的地址偏移量;
若第二目标运算指令的第二地址偏移量与第二目标运算指令的预设地址偏移量不同,则确定出第二目标运算指令为异常运算指令,第二目标运算指令为目标网络层中的多个运算指令中的任一个。
可选的,装置还用于:
获取目标网络层的目标输入数据的参考位数,目标输入数据为在前向传播计算时目标网络层的输入数据;
若参考位数与目标网络层的输入数据的预设位数不同,则确定出目标网络层的前一层为异常网络层。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种离线模型的验证方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种离线模型的验证方法的部分或全部步骤。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在申请明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器、随机存取器、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。