CN110866603B - 数据处理方法和处理器 - Google Patents

数据处理方法和处理器 Download PDF

Info

Publication number
CN110866603B
CN110866603B CN201911342244.7A CN201911342244A CN110866603B CN 110866603 B CN110866603 B CN 110866603B CN 201911342244 A CN201911342244 A CN 201911342244A CN 110866603 B CN110866603 B CN 110866603B
Authority
CN
China
Prior art keywords
network
remodelling
layer
remodeling
mode
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.)
Active
Application number
CN201911342244.7A
Other languages
English (en)
Other versions
CN110866603A (zh
Inventor
请求不公布姓名
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cambricon Technologies Corp Ltd
Original Assignee
Cambricon Technologies Corp Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Cambricon Technologies Corp Ltd filed Critical Cambricon Technologies Corp Ltd
Publication of CN110866603A publication Critical patent/CN110866603A/zh
Application granted granted Critical
Publication of CN110866603B publication Critical patent/CN110866603B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请涉及一种数据处理方法和处理器,该方法在预设的条件满足时可以直接执行所述网络的各个层的前向推理操作。采用该方法,能够大大减少网络的计算量,进而极大的降低了资源占用率,进而大大提高了网络的执行效率,提高了图像数据、语音数据和文本数据的处理效率。

Description

数据处理方法和处理器
技术领域
本申请涉及计算机应用技术领域,特别是涉及一种数据处理方法和处理器。
背景技术
随着神经网络技术的发展,深度学习框架(Caffe)已经广泛的得到应用。
在Caffe的原生设计中,神经网络在每次前向推理(forward)时都会执行一次重塑(reshape)。对于处理器而言,重塑的过程需要重置所有算子和张量资源,然后再进行计算。例如,在神经网络处理图像数据的过程中,一个网络层对图像数据进行卷积操作,并输入下一个网络层的时候,每次都执行重塑的过程,即重置所有的算子和张量,然后,基于重置后的算子和张量,对上述图像数据进行计算。在神经网络处理语音数据和文本数据的时候也是采用这样的方法。
在传统的数据处理过程中,网络在处理数据时由于反复重塑,导致计算量大,资源占用率高,对于图像、文本和语音数据的处理效率低。
发明内容
基于此,有必要针对传统的神经网络中网络前向推理时进行重塑所导致处理效率低的问题,提供一种数据处理方法、装置、处理器、主板和电子设备。
第一方面,本申请实施例提供一种数据处理方法,所述方法包括:
获取网络的各个层对应的重塑标识值;其中,所述重塑标识值用于指示所述网络的各个层是否执行重塑操作;其中,所述输入数据包括图像数据、语音数据和文本数据中的至少一种;
当所述重塑标识值为第一预设值时,确定所述第一预设值对应的层无需执行重塑操作,基于所述网络的输入数据直接执行所述第一预设值对应的各个层的前向推理操作。
在其中一个实施例中,当所述重塑标识值为第二预设值时,确定所述第二预设值对应的层需要执行重塑操作,根据所述第二预设值对应的各个层的所述输入数据进行重塑操作,再基于所述输入数据执行所述网络的前向推理操作,其中,所述第一预设值与所述第二预设值不同。
在其中一个实施例中,所述方法还包括:
获取所述网络的各个层的重塑模式;
分别根据所述网络的各个层的重塑模式,确定所述网络各个层对应的重塑标识值。
在其中一个实施例中,所述重塑模式包括无闲模式;所述分别根据所述网络的各个层的重塑模式确定所述网络各个层对应的重塑标识值,包括:
当所述重塑模式为所述无闲模式时,则确定所述重塑标识值为所述第二预设值。
在其中一个实施例中,所述重塑模式包括初始化模式;所述分别根据所述网络的各个层的重塑模式确定所述网络各个层对应的重塑标识值,包括:
当所述重塑模式为所述初始化模式时,则根据所述网络的初始化信息,确定所述重塑标识值,所述初始化信息用于表征所述网络是否进行初始化。
在其中一个实施例中,所述根据所述网络的初始化信息,确定所述重塑标识值,包括:
当所述初始化信息为所述网络已初始化时,则确定所述重塑标识值为所述第二预设值;
当所述初始化信息为所述网络未初始化时,则确定所述重塑标识值为所述第一预设值。
在其中一个实施例中,所述重塑模式包括检测模式;所述分别根据所述网络的各个层的重塑模式确定所述网络各个层对应的重塑标识值,包括:
当所述重塑模式为所述检测模式时,则根据所述网络的网络形状变化信息确定所述重塑标识值,所述网络形状变化信息用于表征所述网络的网络形状是否需要发生变化。
在其中一个实施例中,所述根据所述网络的网络形状变化信息确定所述重塑标识值,包括:
当所述网络形状变化信息为网络形状需要发生变化时,则确定所述重塑标识值为所述第二预设值;
当所述网络形状变化信息为网络形状无需发生变化时,则确定所述重塑标识值为所述第一预设值。
在其中一个实施例中,所述根据所述网络的网络形状变化信息确定所述重塑标识值之前,包括:
获取所述网络的各个层的历史网络形状;
根据每一层网络的算子和张量确定所述网络的估算网络形状;
当所述估算网络形状与所述历史网络形状一致时,则确定当前层的所述网络形状变化信息为所述网络形状无需发生变化;
当所述估算网络形状与所述历史网络形状不一致时,则确定当前层的所述网络形状变化信息为所述网络形状需要发生变化。
在其中一个实施例中,所述网络为每一层均设置有重塑接口的网络,所述重塑接口用于接收所述重塑标识值。
第二方面,本申请实施例提供一种数据处理装置,所述装置包括:
第一获取模块,用于获取网络的各个层对应的重塑标识值;其中,所述重塑标识值用于指示所述网络的各个层是否执行重塑操作;以及
第一处理模块,用于当所述重塑标识值为第一预设值时,确定所述第一预设值对应的层无需执行重塑操作,基于所述网络的输入数据直接执行所述第一预设值对应的各个层的前向推理操作;其中,所述输入数据包括图像数据、语音数据和文本数据中的至少一种。
在其中一个实施例中,所述装置还包括第二处理模块;
所述第二处理模块,用于当所述重塑标识值为第二预设值时,确定所述第二预设值对应的层需要执行重塑操作,根据所述第二预设值对应的各个层的所述输入数据进行重塑操作,再基于所述输入数据执行所述网络的前向推理操作,其中,所述第一预设值与所述第二预设值不同。
在其中一个实施例中,所述装置还包括:
第二获取模块,用于获取所述网络的各个层的重塑模式;以及
第三处理模块,用于分别根据所述网络的各个层的重塑模式确定所述网络各个层对应的重塑标识值。
在其中一个实施例中,所述重塑模式包括无闲模式;所述第三处理模块具体用于当所述重塑模式为所述无闲模式时,则确定所述重塑标识值为所述第二预设值。
在其中一个实施例中,所述重塑模式包括初始化模式;所述第三处理模块具体用于当所述重塑模式为所述初始化模式时,则根据所述网络的初始化信息,确定所述重塑标识值,所述初始化信息用于表征所述网络是否进行初始化。
在其中一个实施例中,所述第三处理模块包括:
第一处理单元,用于当所述初始化信息为所述网络已初始化时,则确定所述重塑标识值为所述第二预设值;以及
第二处理单元,用于当所述初始化信息为所述网络未初始化时,则确定所述重塑标识值为所述第一预设值。
在其中一个实施例中,所述重塑模式包括检测模式;所述第三处理模块具体用于当所述重塑模式为所述检测模式时,则根据所述网络的网络形状变化信息确定所述重塑标识值,所述网络形状变化信息用于表征所述网络的网络形状是否需要发生变化。
在其中一个实施例中,所述第三处理模块包括:
第三处理单元,用于当所述网络形状变化信息为网络形状需要发生变化时,则确定所述重塑标识值为所述第二预设值;以及
第四处理单元,用于当所述网络形状变化信息为网络形状无需发生变化时,则确定所述重塑标识值为所述第一预设值。
在其中一个实施例中,所述装置还包括:
第三获取模块,用于获取所述网络的各个层的历史网络形状;
第四处理模块,用于根据每一层网络的算子和张量确定所述网络的估算网络形状;以及
第五处理模块,用于当所述估算网络形状与所述历史网络形状一致时,则确定当前层的所述网络形状变化信息为所述网络形状无需发生变化;以及当所述估算网络形状与所述历史网络形状不一致时,则确定当前层的所述网络形状变化信息为所述网络形状需要发生变化。
在其中一个实施例中,所述网络为每一层均设置有重塑接口的网络,所述重塑接口用于接收所述重塑标识值。
第三方面,本申请实施例提供一种处理器,所述处理器用于实现如下步骤:
获取网络的各个层对应的重塑标识值;其中,所述重塑标识值用于指示所述网络的各个层是否执行重塑操作;
当所述重塑标识值为第一预设值时,确定所述第一预设值对应的层无需执行重塑操作,基于所述网络的输入数据直接执行所述第一预设值对应的各个层的前向推理操作;其中,所述输入数据包括图像数据、语音数据和文本数据中的至少一种。
第四方面,本申请实施例提供一种主板,所述主板包括上述实施例所述的处理器,所述处理器用于实现如下步骤:
获取网络的各个层对应的重塑标识值;其中,所述重塑标识值用于指示所述网络的各个层是否执行重塑操作;
当所述重塑标识值为第一预设值时,确定所述第一预设值对应的层无需执行重塑操作,基于所述网络的输入数据直接执行所述第一预设值对应的各个层的前向推理操作。
第五方面,本申请实施例提供一种电子设备,所述电子设备包括上述实施例所述的主板,所述主板中的处理器用于实现如下步骤:
获取网络的各个层对应的重塑标识值;其中,所述重塑标识值用于指示所述网络的各个层是否执行重塑操作;
当所述重塑标识值为第一预设值时,确定所述第一预设值对应的层无需执行重塑操作,基于所述网络的输入数据直接执行所述第一预设值对应的各个层的前向推理操作;其中,所述输入数据包括图像数据、语音数据和文本数据中的至少一种。
上述数据处理方法、装置、处理器、主板和电子设备,通过获取网络的各个层对应的、用于指示网络的各个层是否执行重塑操作的重塑标识值,并且当重塑标识值为第一预设值时,则直接执行网络的各个层的前向推理操作,能够避免重复执行重塑的操作,大大减少了重塑的次数,因此避免了重复执行重塑所导致的计算量大和资源占用率高的问题。采用该方法能够大大减少网络的计算量,进而极大的降低了资源占用率,进而大大提高了网络的执行效率。在应用于图像处理、语音处理和自然语言处理的时候,极大的提高了数据处理的效率。
附图说明
图1为一个实施例提供的计算机设备的结构示意图;
图2为一个实施例提供的数据处理方法流程示意图;
图3为另一个实施例提供的数据处理方法流程示意图;
图4为又一个实施例提供的数据处理方法流程示意图;
图5为又一个实施例提供的数据处理方法流程示意图;
图6为又一个实施例提供的数据处理方法流程示意图;
图7为又一个实施例提供的数据处理方法流程示意图;
图8为又一个实施例提供的数据处理方法流程示意图;
图9为又一个实施例提供的数据处理方法流程示意图;
图10为一个实施例提供的数据处理方法的应用场景图;
图11为一个实施例提供的数据处理装置的结构示意图;
图12为一个实施例提供的数据处理装置的结构示意图;
图13为一个实施例提供的数据处理装置的结构示意图;
图14为一个实施例提供的数据处理装置的结构示意图;
图15为一个实施例提供的数据处理装置的结构示意图;
图16为一个实施例提供的数据处理装置的结构示意图;
图17为一个实施例提供的主板的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
应当理解,本申请的说明书及附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。本披露的说明书和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的,而并不意在限定本申请。如在本申请说明书和权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本披露说明书和权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
下面以具体的实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本申请实施例提供的数据处理方法,可以应用于如图1所示的计算机设备,该计算机设备可以包括处理器。其中,该处理器可以是通用处理器。在其他实施例中,该处理器也可以是图形处理器(GPU)或人工智能处理器等。进一步地,该计算机设备还可以包括存储器等,图1仅示意性给出必要的部件,并不用于限定该计算机设备的具体结构。
可选地,该计算机设备可以运行一深度学习框架,该深度学习框架可以是Caffe、Pytorch、TensorFlow或Mxnet等等,此处不做具体限定。计算机设备可以基于该深度学习框架执行人工神经网络的推理或训练等运算。具体地,该计算机设备可以对该人工神经网络执行正向推理操作和反向操作,经过多次迭代后,获得训练后的人工神经网络。该计算机设备可以根据训练好的人工神经网络进行正向推理操作,以实现识别、分类或检测等功能。例如,人工神经网络的输入数据可以图像数据、语言数据或文本等自然语言数据中的一种或多种,该计算机设备基于该人工神经网络进行前向推理操作时,可以实现图像识别、语音识别或自然语言识别等具体应用。
本申请实施例通过对深度学习框架进行修改及改进,可以简化人工神经网络前向推理操作的过程,从而降低处理器的计算量,以提高处理器的运行效率和数据的执行效率。以下结合附图具体说明本申请实施例的方法。
图2为一个实施例提供的数据处理方法流程示意图。本实施例中,计算机设备可以根据重塑标识值执行网络的各个层的前向推理的具体过程。该方法应用于深度学习框架中以实现图像处理、语音处理或自然语言处理中的一种或多种,如图2所示,该方法可以包括:
S102,处理器获取网络的各个层对应的重塑标识值;其中,所述重塑标识值用于指示所述网络的各个层是否执行重塑操作。所述重塑操作用于更新网络中张量的形状。
具体的,处理器可以通过网络的各个层对应设置的重塑接口获取网络的各个层所对应的重塑标识值,该重塑标识值可以是预设设置的,还可以是依据网络的状态确定出的重塑标识值,对此本实施例并不做限定。其中,上述重塑标识值可以是网络的各个层分别对应的重塑标识值,且该重塑标识值能够指示该网络的各个层是否需要执行重塑操作。
可选地,该重塑标识值可以为布尔(bull)值,可选地,该布尔值可以为0和1,例如当为0时,则可以指示该网络层无需执行重塑,当为1时,则可以指示该网络层需要执行重塑。可选地,该布尔值还可以为true和false,例如当为true时,则可以指示该网络层无需执行重塑,当为false时,则可以指示该网络层需要执行重塑;可选地,该重塑标识值还可以为其他形式,只要是能够指示网络的各个层是否需要执行重塑即可,本实施例对重塑标识值的具体形式不做限定。
S104、处理器在所述重塑标识值为第一预设值时,确定所述第一预设值对应的层无需执行重塑操作,并基于所述网络的输入数据直接执行所述第一预设值对应的各个层的前向推理操作,以实现识别、分类或检测等具体功能。
具体的,当上述重塑标识值为第一预设值时,处理器确定网络中与该重塑标识值对应的网络层无需执行重塑,而是基于所述网络的输入数据直接执行该网络层的前向推理操作(forward),以实现识别、分类或检测等具体功能。例如,当上述第一预设值为false时,则处理器确定该第一预设值对应的网络层无需执行重塑,因此,处理器跳过重塑操作(reshape),直接执行该网络层的前向推理。其中,重塑操作用于更新网络中张量的形状,具体地,重塑操作可以用于改变数据量大小(batch_size)、通道数(channel)、宽度(weight)或高度(height)中的一个或多个。其中,所述输入数据包括图像数据、语音数据和文本数据中的至少一种。
传统技术中,由于网络中的前向推理操作的函数为一嵌套函数,该嵌套函数中嵌套重塑操作的函数,因此网络每次执行前向推理时,必然要执行一次重塑操作。而本实施例中,为了实现本实施例中的方法,处理器将上述网络中的前向推理操作的嵌套函数进行拆分。基于将上述前向推理操作的嵌套函数进行拆分,使得执行重塑操作的函数与前向推理的函数进行分离,二者不再是嵌套关系,因此能够将重塑操作和前向推理操作进行分离。可选地,网络的每一层只提供重塑标识值的接口,从而使得处理器在接收到重塑标识值为第一预设值时,仅调用前向推理操作的函数,而不再调用重塑操作的函数,进而可以无需执行重塑操作,而是直接执行网络层的前向推理操作,因此减少了重塑的次数,降低了资源占用率高,提高了网络的执行效率及速度。
需要说明的是,上述网络的输入数据可以是图像数据,也可以是语音数据,文本数据,还可以其他类型的数据或者不同类型数据的组合。本申请实施例对此并不做限定。
当输入数据是图像数据的时候,则该方法用于对图像数据进行处理,例如可以是对图像数据进行特征提取,通常网络对图像数据进行特征提取的时候,每个层对输入的数据做运算,并将运算结果输入值下一层。在网络传播过程中,图像数据到达每一层的时候,先通过该层对应设置的重塑接口获取对应的重塑标识值,当该重塑标识值为第一预设值的时候,则确定无需重置算子和张量形状,直接执行该网络层的前向推理,因此能够极大的减少图像数据处理过程中的计算量,进而极大的降低资源占用率,提高了网络的执行效率,进而提高了图像处理的效率。当然,该图像处理可以是对图像进行特征提取,从而识别图像中的特征并进行后续运算,例如识别目标、对图像进行分类等操作。当上述输入数据为文本数据的时候,该方法涉及对文本中的自然语言的识别,文本数据到达每一层的时候,先通过该层对应设置的重塑接口获取对应的重塑标识值,当该重塑标识值为第一预设值的时候,则确定无需重置算子和张量形状,直接执行该网络层的前向推理,因此能够极大的减少文本数据处理过程中的计算量,进而极大的降低资源占用率,提高了网络的执行效率,进而提高了文本处理的效率。当上述输入数据为语音数据的时候,语音数据到达每一层的时候,先通过该层对应设置的重塑接口获取对应的重塑标识值,当该重塑标识值为第一预设值的时候,则确定无需重置算子和张量形状,直接执行该网络层的前向推理,因此能够极大的减少语音数据处理过程中的计算量,进而极大的降低资源占用率,提高了网络的执行效率,进而提高了语音处理的效率。
本实施例中,处理器通过网络的各个层对应设置的重塑接口获取网络对应的、用于指示网络的各个层是否执行重塑操作的重塑标识值,并且当重塑标识值为第一预设值时,则直接执行网络的各个层的前向推理操作,其能够避免多次重复执行重塑的操作,大大减少了重塑的次数,因此避免了重复执行重塑所导致的计算量大和资源占用率高的问题。采用该方法能够大大减少网络的计算量,因此极大的降低了资源占用率,进而大大提高了网络的执行效率。在应用于图像处理、语音处理和自然语言处理的时候,极大的提高了数据处理的效率。
图3为另一个实施例提供的数据处理方法流程示意图。本实施例涉及的是处理器根据重塑标识值对网络执行重塑和前向推理的具体过程。可选地,在上述图2所示的实施例基础上,如图3所示,所述方法还可以包括:
S106、处理器在所述重塑标识值为第二预设值时,确定所述第二预设值对应的层需要执行重塑操作,则根据所述第二预设值对应的各个层的输入数据进行重塑操作,再基于所述输入数据执行网络的前向推理操作,其中,所述第一预设值与所述第二预设值不同。
需要说明的是,上述第二预设值与第一预设值不同。上述网络的各个层的输入数据可以包括网络各个层的张量和算子,该算子通常通过函数进行表达。
具体的,当上述重塑标识值为第二预设值时,处理器确定网络中与该重塑标识值对应的网络层需要执行重塑操作,因此,处理器首先根据网络的各个层的输入数据执行重塑操作,例如根据各个层的张量和各个层的函数执行重塑操作,再执行各个层的前向推理操作。例如,当上述第二预设值为true时,则处理器确定该第二预设值对应的网络层需要执行重塑操作,处理器首先根据网络的各个层的张量和拆分后的重塑操作的函数执行网络的重塑操作,然后再根据前向推理操作的函数执行网络的前向推理。
本实施例中,处理器在重塑标识值为第二预设值时,则根据网络的各个层的输入数据进行重塑操作,再执行网络的前向推理操作,从而实现在重塑标识值为第二预设值时,执行重塑操作以更新网络的形状,从而保留了caffe的原生功能,因此能够使得网络在需要改变网络形状的时候,通过第二预设值控制网络先进行重塑,再执行前向推理操作,因而使得重塑的方式更为灵活,其适用范围更广,进而使得对图像处理、语音处理或自然语言处理的方式更为灵活,适用范围更广。
图4为又一个实施例提供的数据处理方法流程示意图。本实施例涉及的是处理器确定重塑标识值的具体过程。可选地,在上述图2或图3所示的实施例基础上,如图4所示,上述S102之前,所述方法还可以包括:
S202、获取所述网络的各个层的重塑模式。
具体的,处理器可以通过重塑帮助(ReshapeHelper)对网络的各个层的重塑模式进行设置。可选地,处理器可以接收用户在重塑帮助中基于重塑模式的设置指令,实现对网络的各个层的重塑模式进行设置;处理器也可以通过重塑帮助调用网络各个层的不同的重塑模式的相关程序,并根据程序对网络的各个层的重塑模式进行设置,对此本实施例不做限定。可选地,该网络地重塑模式可以包括无闲(Always)模式、初始化模式和检测模式。进一步地,在实际的使用过程中,处理器可以根据预设的模式优先级,对网络的各个层的重塑模式进行设置。例如,预设的模式优先级可以是:初始化模式的优先级高于检测模式的优先级,检测模式的优先级高于无闲模式的优先级,处理器可以根据上述的模式优先级,将网络的各个层的重塑模式设置为初始化模式。当然,用户也可以根据实际需要对各个层的重塑模式进行修改和设置。
S204、分别根据所述网络的各个层的重塑模式,确定所述网络各个层对应的重塑标识值。
具体的,处理器能够根据不同的重塑模式确定出每种重塑模式下,网络各个层对应的重塑标识值。可选地,处理器可以根据不同的重塑模式,结合网络的各个层的状态,例如网络层是否初始化或者网络层的网络形状是否发生改变等,确定出网络各个层对应的重塑标识值。本步骤的几种可能的实现方式可以参见下述图5、图6和图7所示的实施例,此处暂不赘述。
本实施例中,处理器能够获取网络各个层的重塑模式,并分别根据网络的各个层的重塑模式确定网络各个层对应的重塑标识值,从而使得所确定的网络的各个层的重塑标识值能够与重塑模式所匹配,进行使得网络在传播过程中,其重塑的方式更加合理,进一步提高了网络的灵活性和高效性,进而提高了图像处理、语音处理或自然语言处理的灵活性和高效性。
图5为又一个实施例提供的数据处理方法流程示意图。本实施例涉及的是处理器根据各个层的重塑模式确定各个层对应的重塑标识值的一种可能的实现过程。可选地,在上述图4所示的实施例基础上,如图5所示,上述步骤S204具体可以包括:
S302、当所述重塑模式为无闲(Always)模式时,确定所述重塑标识值为所述第二预设值。
具体的,当上述重塑模式为传统的无闲模式时,处理器确定在该模式下无需对重塑操作进行简化,因此确定重塑标识值为第二预设值,该第二预设值能够指示网络的各个层需要先执行重塑操作,再执行前向推理操作。本实施例中,处理器能够在重塑模式为无闲模式时,确定重塑标识值为第二预设值,以此指示网络的各个层先执行重塑操作,再执行网络的前向推理,从而使得网络保留了caffe的原生功能,使得重塑的方式更为灵活,其适用范围更广,进而使得图像处理、语音处理或自然语言处理更为灵活,适用范围更广。
图6为又一个实施例提供的数据处理方法流程示意图。本实施例涉及的是处理器根据各个层的重塑模式确定各个层对应的重塑标识值的另一种可能的实现过程。可选地,在上述图4所示的实施例基础上,如图6所示,上述步骤S204具体可以包括:
S402、当所述重塑模式为初始化(Setuponly)模式时,则根据所述网络的初始化信息,确定所述重塑标识值,所述初始化信息用于表征所述网络是否进行初始化。
具体的,当上述重塑模式为初始化模式时,处理器可以根据网络的初始化信息确定重塑标识值。其中,初始化信息可以用于表征网络是否进行初始化。因此,处理器可以在重塑模式为初始化模式时,根据网络是否进行初始化这一网络初始化信息,确定出重塑标识值为第一预设值或第二预设值。
可选地,本步骤S402的一种可能的实现方式可以为:当所述初始化信息为所述网络已初始化时,则确定所述重塑标识值为所述第二预设值;当所述初始化信息为所述网络未初始化时,则确定所述重塑标识值为所述第一预设值。
具体的,上述初始化信息可以包括网络已初始化和网络未初始化,当网络已初始化时,则处理器确定重塑标识值为第二预设值,以指示网络的各个层先执行重塑操作,再执行前向推理操作。而当网络未初始化时,则处理器确定重塑标识值为第一预设值,以指示网络的各个层无需执行重塑操作,直接执行前向推理操作。
本实现方式中,处理器在初始化信息为网络已初始化时,则确定重塑标识值为第二预设值,以及当初始化信息为网络未初始化时,则确定重塑标识值为第一预设值,从而实现仅在网络初始化时执行重塑操作,已完成初始化的网络则无需执行重塑操作,而是直接执行前向推理操作,从而避免了重复执行重塑所导致的计算量大和资源占用率高的问题,使得网络的重塑的方式更加合理,提高网络的灵活性和高效性的同时,该方法能够大大减少网络的计算量,因此极大的降低资源占用率,进而提高网络的执行效率,进而提高了图像处理、语音处理或自然语言处理的效率。
在上述图6所示的实施例中,处理器通过在重塑模式为初始化模式时,根据表征网络是否进行初始化的初始化信息,确定重塑标识值,进而根据重塑标识值确定网络在传播过程中是否需要执行重塑操作,从而使得网络的重塑的方式更加合理,提高网络的灵活性和高效性的同时,还能够避免执行重复的、不必要的重塑操作,大大减少网络的计算量,因此极大的降低了资源占用率,进而大大提高了网络的执行效率。
图7为又一个实施例提供的数据处理方法流程示意图。本实施例涉及的是处理器根据各个层的重塑模式确定各个层对应的重塑标识值的又一种可能的实现过程。可选地,在上述图4所示的实施例基础上,如图7所示,上述步骤S204具体可以包括:
S502、当所述重塑模式为检测(Detect)模式时,则根据所述网络的网络形状变化信息确定所述重塑标识值,所述网络形状变化信息用于表征所述网络的网络形状是否需要发生变化。
具体的,当上述重塑模式为检测模式时,处理器可以根据网络的网络形状变化信息确定重塑标识值。其中,网络形状变化信息可以用于表征网络的网络形状是否需要发生变化。因此,处理器可以在重塑模式为检测模式时,根据网络的网络形状是否需要发生变化这一网络形状变化信息,确定出重塑标识值为第一预设值或第二预设值。可选的,检测模式在开发阶段使用。
可选地,本步骤S502的一种可能的实现方式可以为:当所述网络形状变化信息为网络形状需要发生变化时,则确定所述重塑标识值为所述第二预设值;当所述网络形状变化信息为网络形状无需发生变化时,则确定所述重塑标识值为所述第一预设值。
具体的,上述网络形状变化信息可以包括网络形状需要发生变化和网络形状无需发生变化,当网络形状需要发生变化时,则处理器确定重塑标识值为第二预设值,以指示网络的各个层执行重塑操作,再执行前向推理操作;而当网络形状无需发生变化,则处理器确定重塑标识值为第一预设值,以指示网络的各个层无需执行重塑操作,直接执行前向推理操作。
本实现方式中,处理器在网络形状变化信息为网络形状需要发生变化时,则确定重塑标识值为第二预设值,以及当网络形状变化信息为网络形状无需发生变化时,则确定重塑标识值为第一预设值,从而实现仅在网络形状需要发生变化时执行重塑操作,而网络形状不需要发生变化时,不再执行重塑操作,而是直接执行前向推理操作,从而避免了重复执行重塑所导致的计算量大和资源占用率高的问题,使得网络的重塑的方式更加合理,提高网络的灵活性和高效性的同时,该方法能够大大减少网络的计算量,因此极大的降低资源占用率,进而提高网络的执行效率,进而图像处理、语音处理或自然语言处理更为高效。
在上述图7所示的实施例中,处理器通过在重塑模式为检测模式时,根据表征网络形状是否需要发生变化的网络形状变化信息,确定重塑标识值,进而根据重塑标识值确定网络在传播过程中是否需要执行重塑操作,从而使得网络的重塑的方式更加合理,提高网络的灵活性和高效性的同时,还能够避免执行重复的、不必要的重塑操作,大大减少网络的计算量,因此极大的降低了资源占用率,进而大大提高了网络的执行效率,进而使得图像处理、语音处理或自然语言处理的效率大大提高。
图8为又一个实施例提供的数据处理方法流程示意图。本实施例涉及的是处理器确定网络形状变化信息的具体过程。可选地,在上述图7所示的实施例基础上,如图8所示,上述步骤S502之前,可以包括:
S602、获取所述网络的各个层的历史网络形状。
具体的,处理器可以获取网络的各个层的历史网络形状。例如,在网络初始化的时候找出其中一个网络层的输入二进制大对象(Binary Large Object,简称BLOB),并记录下网络初始化时刻该网络层输入BLOB的形状,这个形状为“形状快照”,该“形状快照”可以作为该网络层历史网络形状。其中,BLOB为一个数据结构库,能够用于对网络的形状进行记录并存储。
S604、根据每一层网络的算子和张量确定所述网络的估算网络形状。
具体的,处理器能够根据网络各个层的算子和张量,进行预先的估算,从而估算得到网络各个层的估算网络形状。
S606A、当所述估算网络形状与所述历史网络形状一致时,则确定当前层的所述网络形状变化信息为所述网络形状无发生变化。
具体的,处理器将各网络层的估算网络形状与其历史网络形状进行对比,并判断二者的形状是否一致。如果当前层的估算网络形状与历史网络形状一致,则将历史网络形状作为当前层的网络形状,即保持历史网络形状,不再执行重塑操作,直接执行前向推理操作。
S606B、当所述估算网络形状与所述历史网络形状不一致时,则确定当前层的所述网络形状变化信息为所述网络形状需要发生变化。
具体的,处理器将各网络层的估算网络形状与历史网络形状进行对比,并判断二者的形状是否一致。如果当前层的估算网络形状与历史网络形状不一致,处理器可以根据网络的当前层的算子和张量对当前层的网络进行重塑操作,之后再前向推理。
可选地,处理器还可以将执行重塑操作之后的网络形状作为新的历史网络形状输入blob,作为后续进行网络形状对比的依据。
本实施例中,处理器通过获取网络的各个层的历史网络形状,并根据各个层的算子和张量确定网络的估算网络形状,然后在估算网络形状与历史网络形状一致的情况下,跳过重塑操作,将当前层的历史网络形状作为当前层的网络形状,直接前向推理;以及在估算网络形状与历史网络形状不一致的情况下,根据当前层的算子和张量,在当前层网络执行重塑操作,再执行前向推理操作。采用该方法,处理器能够根据各个层的算子和张量确定网络的估算网络形状,并与各个层的历史网络形状进行对比,然后根据对比结果实现在网络形状发生变化的时候执行重塑操作,而在网络形状没有发生变化的时候跳过重塑操作,直接执行前向推理操作,进而避免了重复执行重塑所导致的计算量大和资源占用率高的问题,使得网络的重塑的方式更加合理,提高网络的灵活性和高效性的同时,该方法能够大大减少网络的计算量,因此极大的降低资源占用率,进而提高网络的执行效率,进而使得图像处理、语音处理或自然语言处理的效率大大提高。
为了便于本领域技术人员的理解,以下对本申请提供的人工神经网络中的数据处理方法进行详细介绍,所述方法应用于深度学习框架中以实现图像处理、语音处理或自然语言处理中的一种或多种;如图9所示,该方法可以包括:
S702、获取网络的各个层对应的重塑标识值;其中,所述重塑标识值用于指示所述网络的各个层是否执行重塑操作。当重塑模式为无闲模式时,执行S704A;当重塑模式为初始化模式时,执行S704B;当重塑模式为检测模式时,执行S704C;其中,该网络为每一层均设置有重塑接口的网络,该重塑接口用于接收重塑标识值。
S704A、确定重塑标识值为第二预设值。之后,执行S712B。
S704B、当初始化信息为网络已初始化时,则确定重塑标识值为第二预设值,之后,执行S712B;当初始化信息为网络未初始化时,则确定重塑标识值为第一预设值,之后,执行S712A。其中,第一预设值与第二预设值不同。
S704C、获取网络的各个层的历史网络形状;之后,执行S706。
S706、根据每一层网络的算子和张量确定网络的估算网络形状。当估算网络形状与历史网络形状一致时,执行S708A,当估算网络形状与历史网络形状不一致时,执行S708B。
S708A、确定当前层的网络形状变化信息为网络形状无需发生变化,之后,执行S710B;
S708B、确定当前层的网络形状变化信息为网络形状需要发生变化,之后,执行S710A。
S710A、确定重塑标识值为第二预设值。之后,执行S712B。
S710B、确定重塑标识值为第一预设值。之后,执行S712A。
S712A、基于所述网络的输入数据直接执行所述第一预设值对应的各个层的前向推理操作。其中,所述输入数据包括图像数据、语音数据和文本数据中的至少一种。
S712B、根据第二预设值对应的各个层的所述输入数据进行重塑操作,再基于所述输入数据执行所述网络的前向推理操作。
本实施例提供的数据处理方法的工作原理和技术效果如上述实施例所述,在此不再赘述。
上述实施例所提供的数据处理方法,其可以应用于如图10所示的场景中。需要说明的是,上述重塑模式可以包括无闲模式、初始化模式和检测模式。可选地,这三种重塑模式可以应用于人工智能处理器;也可以将原生的重塑方式应用于中央处理器(CentralProcessing Unit,简称CPU),以及初始化模式和检测模式应用于人工智能处理器,采用CPU和人工智能处理器结合的方式。这里以图10所示的场景为例,当该网络在CPU上运行时,则对于各个网络层,可以首先执行重塑操作,之后执行前向推理操作,此种运行方式与上述的无闲模式的重塑逻辑一致。当该网络需要在人工智能处理器上运行时,则可以采用逐层模式实现网络的前向推理,也可以采用融合模式实现网络的前向推理。其中,逐层模式中,每层的操作都作为单独的运算在人工智能处理器上运行,用户可以将每层结果导出到CPU上,方便用户进行调试。融合模式中,被融合的多个层作为单独的运算在人工智能处理器上运行。根据网络中的网络层是否可以被融合,网络被拆分为若干个子网络。人工智能处理器与CPU间的数据拷贝只在各个子网络之间发生。
具体地,逐层模式下,人工智能处理器对网络的各个层均执行如下操作:执行销毁资源、重塑操作(包括创建张量和创建算子)、绑定网络参数和编译算子,之后再执行前向推理操作,其中,重塑操作可以是上述的无闲模式、初始化模式或检测模式的任意一种。融合模式下,人工智能处理器对网络的各个子网络均执行如下操作:执行销毁资源、重塑(包括创建张量和创建算子)和绑定网络参数,之后执行前向推理操作,其中,重塑操作可以是上述的无闲模式、初始化模式或检测模式的任意一种。
应该理解的是,虽然图2至图10的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2至图10中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
图11为一个实施例提供的数据处理装置的结构示意图,应用于深度学习框架中以实现图像处理、语音处理或自然语言处理中的一种或多种;所述装置包括:
第一获取模块1102,用于获取网络的各个层对应的重塑标识值;其中,所述重塑标识值用于指示所述网络的各个层是否执行重塑操作;
第一处理模块1104,用于当所述重塑标识值为第一预设值时,确定所述第一预设值对应的层无需执行重塑操作,基于所述网络的输入数据直接执行所述第一预设值对应的各个层的前向推理操作。其中,所述输入数据包括图像数据、语音数据和文本数据中的至少一种。
图12为另一个实施例提供的数据处理装置的结构示意图。可选地,在上述图11所示的实施例的基础上,如图12所示,所述装置还包括:第二处理模块1106。
具体的,第二处理模块1106,用于当所述重塑标识值为第二预设值时,确定所述第二预设值对应的层需要执行重塑操作,根据所述第二预设值对应的各个层的所述输入数据进行重塑操作,再基于所述输入数据执行所述网络的前向推理操作,其中,所述第一预设值与所述第二预设值不同。
图13为又一个实施例提供的数据处理装置的结构示意图。可选地,在上述图11或图12实施例的基础上,如图13所示,图13以在图12的基础上为例示出,所述装置还包括:
第二获取模块1108,用于获取所述网络的各个层的重塑模式;以及,
第三处理模块1110,用于分别根据所述网络的各个层的重塑模式确定所述网络各个层对应的重塑标识值。
在一个实施例中,所述重塑模式包括无闲模式;第三处理模块1110,具体用于当所述重塑模式为所述无闲模式时,确定所述重塑标识值为所述第二预设值。
在一个实施例中,所述重塑模式包括初始化模式;第三处理模块1110,具体用于当所述重塑模式为所述初始化模式时,则根据所述网络的初始化信息,确定所述重塑标识值,所述初始化信息用于表征所述网络是否进行初始化。
图14为又一个实施例提供的数据处理装置的结构示意图。可选地,在上述各个实施例的基础上,如图14所示,图14以在图13的基础上为例示出,第三处理模块1110可以包括:
第一处理单元1110a,用于当所述初始化信息为所述网络已初始化时,则确定所述重塑标识值为所述第二预设值;以及,
第二处理单元1110b,用于当所述初始化信息为所述网络未初始化时,则确定所述重塑标识值为所述第一预设值。
在一个实施例中,所述重塑模式包括检测模式;第三处理模块1110,具体用于当所述重塑模式为所述检测模式时,则根据所述网络的网络形状变化信息确定所述重塑标识值,所述网络形状变化信息用于表征所述网络的网络形状是否需要发生变化。
图15为又一个实施例提供的数据处理装置的结构示意图。可选地,在上述各个实施例的基础上,如图15所示,图15以在图14的基础上为例示出,第三处理模块1110可以包括:
第三处理单元1110c,用于当所述网络形状变化信息为网络形状需要发生变化时,则确定所述重塑标识值为所述第二预设值;以及,
第四处理单元1110d,用于当所述网络形状变化信息为网络形状无需发生变化时,则确定所述重塑标识值为所述第一预设值。
图16为又一个实施例提供的数据处理装置的结构示意图。可选地,在上述各个实施例的基础上,如图16所示,图16以在图13的基础上为例示出,所述装置还可以包括:
第三获取模块1112,用于获取所述网络的各个层的历史网络形状;
第四处理模块1114,用于根据每一层网络的算子和张量确定所述网络的估算网络形状;以及,
第五处理模块1116,用于当所述估算网络形状与所述历史网络形状一致时,则确定当前层的所述网络形状变化信息为所述网络形状无需发生变化;以及当所述估算网络形状与所述历史网络形状不一致时,则确定当前层的所述网络形状变化信息为所述网络形状需要发生变化。
在一个实施例中,所述网络为每一层均设置有重塑接口的网络,所述重塑接口用于接收所述重塑标识值。
上述实施例提供的人工神经网络中的数据处理装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
在一个实施例中,提供一种处理器,所述处理器用于实现如下步骤:
获取网络的各个层对应的重塑标识值;其中,所述重塑标识值用于指示所述网络的各个层是否执行重塑操作;
当所述重塑标识值为第一预设值时,确定所述第一预设值对应的层无需执行重塑操作,基于所述网络的输入数据直接执行所述第一预设值对应的各个层的前向推理操作;其中,所述输入数据包括图像数据、语音数据和文本数据中的至少一种。
在一个实施例中,所述处理器还用于实现如下步骤:
当所述重塑标识值为第二预设值时,确定所述第二预设值对应的层需要执行重塑操作,根据所述第二预设值对应的各个层的所述输入数据进行重塑操作,再基于所述输入数据执行所述网络的前向推理操作,其中,所述第一预设值与所述第二预设值不同。
在一个实施例中,所述处理器还用于实现如下步骤:
获取所述网络的各个层的重塑模式;
分别根据所述网络的各个层的重塑模式确定所述网络各个层对应的重塑标识值。
在一个实施例中,所述重塑模式包括无闲模式,所述处理器还用于实现如下步骤:
当所述重塑模式为所述无闲模式时,则确定所述重塑标识值为所述第二预设值。
在一个实施例中,所述重塑模式包括初始化模式,所述处理器还用于实现如下步骤:
当所述重塑模式为所述初始化模式时,则根据所述网络的初始化信息,确定所述重塑标识值,所述初始化信息用于表征所述网络是否进行初始化。
在一个实施例中,所述处理器还用于实现如下步骤:
当所述初始化信息为所述网络已初始化时,则确定所述重塑标识值为所述第二预设值;
当所述初始化信息为所述网络未初始化时,则确定所述重塑标识值为所述第一预设值。
在一个实施例中,所述重塑模式包括检测模式,所述处理器还用于实现如下步骤:
当所述重塑模式为所述检测模式时,则根据所述网络的网络形状变化信息确定所述重塑标识值,所述网络形状变化信息用于表征所述网络的网络形状是否需要发生变化。
在一个实施例中,所述处理器还用于实现如下步骤:
当所述网络形状变化信息为网络形状需要发生变化时,则确定所述重塑标识值为所述第二预设值;
当所述网络形状变化信息为网络形状无需发生变化时,则确定所述重塑标识值为所述第一预设值。
在一个实施例中,所述处理器还用于实现如下步骤:
获取所述网络的各个层的历史网络形状;
根据每一层网络的算子和张量确定所述网络的估算网络形状;
当所述估算网络形状与所述历史网络形状一致时,则确定当前层的所述网络形状变化信息为所述网络形状无需发生变化;
当所述估算网络形状与所述历史网络形状不一致时,则确定当前层的所述网络形状变化信息为所述网络形状需要发生变化。
在一个实施例中,所述网络为每一层均设置有重塑接口的网络,所述重塑接口用于接收所述重塑标识值。
图17为一个实施例提供的主板的结构示意图。该主板可以应用于电子设备,所述主板除了包括上述人工智能处理器389以外,还可以包括其它的配套部件,该配套部件包括但不限于:存储器件390、接收装置391和控制器件392;
所述存储器件390与所述人工智能处理器通过总线连接,用于存储数据。所述存储器件可以包括多组存储单元393。每一组所述存储单元与所述人工智能处理器通过总线连接。可以理解,每一组所述存储单元可以是DDR SDRAM(英文:Double Data Rate SDRAM,双倍速率同步动态随机存储器)。DDR不需要提高时钟频率就能加倍提高SDRAM的速度。DDR允许在时钟脉冲的上升沿和下降沿读出数据。DDR的速度是标准SDRAM的两倍。在一个实施例中,所述存储装置可以包括4组所述存储单元。每一组所述存储单元可以包括多个DDR4颗粒(芯片)。
在一个实施例中,每一组所述存储单元包括多个并联设置的双倍速率同步动态随机存储器。DDR在一个时钟周期内可以传输两次数据。在所述人工智能处理器中设置控制DDR的控制器,用于对每个所述存储单元的数据传输与数据存储的控制。
所述接收装置与人工智能处理器电连接。所述接收装置用于实现所述人工智能处理器与外部设备(例如服务器或计算机)之间的数据传输。例如在一个实施例中,所述接收装置可以为标准PCIE接口。比如,待处理的数据由服务器通过标准PCIE接口传递至所述人工智能处理器,实现数据转移。优选的,当采用PCIE 3.0X 16接口传输时,理论带宽可达到16000MB/s。在另一个实施例中,所述接收装置还可以是其它的接口,本申请并不限制上述其它的接口的具体表现形式,所述接口单元能够实现转接功能即可。另外,所述人工智能处理器的计算结果仍由所述接收装置传送回外部设备(例如服务器)。
所述控制器件与所述人工智能处理器电连接。所述控制器件用于对所述人工智能处理器的状态进行监控。具体的,所述人工智能处理器与所述控制器件可以通过SPI接口电连接。所述控制器件可以包括单片机(Micro Controller Unit,MCU)。如所述人工智能处理器可以包括多个处理芯片、多个处理核或多个处理电路,可以带动多个负载。因此,所述人工智能处理器可以处于多负载和轻负载等不同的工作状态。通过所述控制装置可以实现对所述人工智能处理器中多个处理芯片、多个处理和或多个处理电路的工作状态的调控。
在一个实施例中,提供了一种电子设备,该电子设备包括上述主板。
电子设备可以为数据处理器、机器人、电脑、打印机、扫描仪、平板电脑、智能终端、手机、行车记录仪、导航仪、传感器、摄像头、服务器、云端服务器、相机、摄像机、投影仪、手表、耳机、移动存储、可穿戴设备、交通工具、家用电器、和/或医疗设备。
所述交通工具包括飞机、轮船和/或车辆;所述家用电器包括电视、空调、微波炉、冰箱、电饭煲、加湿器、洗衣机、电灯、燃气灶、油烟机;所述医疗设备包括核磁共振仪、B超仪和/或心电图仪。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过电子设备程序来指令相关的硬件来完成,所述的电子设备程序可存储于一非易失性电子设备可读取存储介质中,该电子设备程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种数据处理方法,其特征在于,应用于深度学习框架中以实现图像处理、语音处理或自然语言处理中的一种或多种,所述方法包括:
获取网络的各个层的重塑模式;分别根据所述网络的各个层的重塑模式,确定所述网络各个层对应的重塑标识值;其中,所述重塑标识值用于指示所述网络的各个层是否执行重塑操作;所述重塑操作用于改变所述网络的每个层的输入数据的数据量大小、通道数、宽度或高度中的一个或多个;
当所述重塑标识值为第一预设值时,确定所述第一预设值对应的层无需执行重塑操作,基于所述网络的输入数据直接执行所述第一预设值对应的各个层的前向推理操作,以实现识别、分类或检测。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述重塑标识值为第二预设值时,确定所述第二预设值对应的层需要执行重塑操作,根据所述第二预设值对应的各个层的所述输入数据进行重塑操作,再基于所述输入数据执行所述网络的前向推理操作,其中,所述第一预设值与所述第二预设值不同。
3.根据权利要求2所述的方法,其特征在于,所述重塑模式包括无闲模式;所述分别根据所述网络的各个层的重塑模式确定所述网络各个层对应的重塑标识值,包括:
当所述重塑模式为所述无闲模式时,则确定所述重塑标识值为所述第二预设值。
4.根据权利要求2所述的方法,其特征在于,所述重塑模式包括初始化模式;所述分别根据所述网络的各个层的重塑模式确定所述网络各个层对应的重塑标识值,包括:
当所述重塑模式为所述初始化模式时,则根据所述网络的初始化信息,确定所述重塑标识值,所述初始化信息用于表征所述网络是否进行初始化。
5.根据权利要求4所述的方法,其特征在于,所述根据所述网络的初始化信息,确定所述重塑标识值,包括:
当所述初始化信息为所述网络已初始化时,则确定所述重塑标识值为所述第二预设值;
当所述初始化信息为所述网络未初始化时,则确定所述重塑标识值为所述第一预设值。
6.根据权利要求2所述的方法,其特征在于,所述重塑模式包括检测模式;所述分别根据所述网络的各个层的重塑模式确定所述网络各个层对应的重塑标识值,包括:
当所述重塑模式为所述检测模式时,则根据所述网络的网络形状变化信息确定所述重塑标识值,所述网络形状变化信息用于表征所述网络的网络形状是否需要发生变化。
7.根据权利要求6所述的方法,其特征在于,所述根据所述网络的网络形状变化信息确定所述重塑标识值,包括:
当所述网络形状变化信息为网络形状需要发生变化时,则确定所述重塑标识值为所述第二预设值;
当所述网络形状变化信息为网络形状无需发生变化时,则确定所述重塑标识值为所述第一预设值。
8.根据权利要求6所述的方法,其特征在于,所述根据所述网络的网络形状变化信息确定所述重塑标识值之前,包括:
获取所述网络的各个层的历史网络形状;
根据每一层网络的算子和张量确定所述网络的估算网络形状;
当所述估算网络形状与所述历史网络形状一致时,则确定当前层的所述网络形状变化信息为所述网络形状无需发生变化;
当所述估算网络形状与所述历史网络形状不一致时,则确定当前层的所述网络形状变化信息为所述网络形状需要发生变化。
9.一种处理器,其特征在于,所述处理器用于实现如权利要求1-8任一项所述的数据处理方法的步骤。
10.一种主板,其特征在于,所述主板包括如权利要求9所述的处理器。
CN201911342244.7A 2018-12-29 2019-12-23 数据处理方法和处理器 Active CN110866603B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811640713.9A CN109754083A (zh) 2018-12-29 2018-12-29 数据处理方法、装置、处理器及相关产品
CN2018116407139 2018-12-29

Publications (2)

Publication Number Publication Date
CN110866603A CN110866603A (zh) 2020-03-06
CN110866603B true CN110866603B (zh) 2024-04-16

Family

ID=66404429

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201811640713.9A Pending CN109754083A (zh) 2018-12-29 2018-12-29 数据处理方法、装置、处理器及相关产品
CN201911342244.7A Active CN110866603B (zh) 2018-12-29 2019-12-23 数据处理方法和处理器

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201811640713.9A Pending CN109754083A (zh) 2018-12-29 2018-12-29 数据处理方法、装置、处理器及相关产品

Country Status (1)

Country Link
CN (2) CN109754083A (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107451653A (zh) * 2017-07-05 2017-12-08 深圳市自行科技有限公司 深度神经网络的计算方法、装置及可读存储介质
CN108229681A (zh) * 2017-12-28 2018-06-29 郑州云海信息技术有限公司 一种神经网络模型压缩方法、系统、装置及可读存储介质
CN108875920A (zh) * 2018-02-12 2018-11-23 北京旷视科技有限公司 神经网络的运行方法、装置、系统及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107451653A (zh) * 2017-07-05 2017-12-08 深圳市自行科技有限公司 深度神经网络的计算方法、装置及可读存储介质
CN108229681A (zh) * 2017-12-28 2018-06-29 郑州云海信息技术有限公司 一种神经网络模型压缩方法、系统、装置及可读存储介质
CN108875920A (zh) * 2018-02-12 2018-11-23 北京旷视科技有限公司 神经网络的运行方法、装置、系统及存储介质

Also Published As

Publication number Publication date
CN109754083A (zh) 2019-05-14
CN110866603A (zh) 2020-03-06

Similar Documents

Publication Publication Date Title
JP6867518B2 (ja) データ前処理方法、装置、コンピュータ機器及び記憶媒体
US11144330B2 (en) Algorithm program loading method and related apparatus
CN109639597B (zh) 车辆通信接口装置中的数据传输方法及车辆通信接口装置
US11544567B2 (en) Network structure processing method and device and related products
CN109754011A (zh) 基于Caffe的数据处理方法、装置和相关产品
CN105045637A (zh) 一种应用启动的方法及终端
WO2023201947A1 (en) Methods, systems, and storage media for task dispatch
US20190080119A1 (en) Unlocking control methods and related products
CN111352350A (zh) 一种确定智能家居场景执行的方法及装置
CN109002331A (zh) 触摸屏的启动方法、装置、计算机设备和存储介质
CN110955390A (zh) 数据处理方法、装置和电子设备
CN104182348A (zh) 软件测试方法及装置
CN110866603B (zh) 数据处理方法和处理器
CN111767999B (zh) 数据处理方法、装置及相关产品
CN111340202B (zh) 运算方法、装置及相关产品
CN114201727A (zh) 数据的处理方法、处理器、人工智能芯片及电子设备
CN108304134A (zh) 预览界面处理方法及电子设备
CN114546640A (zh) 数据处理方法、装置、芯片及介质
CN109709418B (zh) 一种充电设施的检测方法及装置、存储介质和处理器
JP2022520912A (ja) データ処理方法、装置及びチップ、電子機器、記憶媒体
CN105303508A (zh) 图片处理方法及装置
CN104090911A (zh) 一种信息处理方法和电子设备
CN111275197B (zh) 运算方法、装置、计算机设备和存储介质
CN113519153B (zh) 图像采集方法、装置、控制装置、计算机设备、可读存储介质、图像采集设备和远程驾驶系统
CN106250865A (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
GR01 Patent grant
GR01 Patent grant