CN112613577A - 神经网络的训练方法、装置、计算机设备及存储介质 - Google Patents

神经网络的训练方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN112613577A
CN112613577A CN202011620546.9A CN202011620546A CN112613577A CN 112613577 A CN112613577 A CN 112613577A CN 202011620546 A CN202011620546 A CN 202011620546A CN 112613577 A CN112613577 A CN 112613577A
Authority
CN
China
Prior art keywords
calculation
operator
neural network
loss function
training
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.)
Granted
Application number
CN202011620546.9A
Other languages
English (en)
Other versions
CN112613577B (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.)
Shanghai Sensetime Intelligent Technology Co Ltd
Original Assignee
Shanghai Sensetime Intelligent Technology Co 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 Shanghai Sensetime Intelligent Technology Co Ltd filed Critical Shanghai Sensetime Intelligent Technology Co Ltd
Priority to CN202011620546.9A priority Critical patent/CN112613577B/zh
Publication of CN112613577A publication Critical patent/CN112613577A/zh
Application granted granted Critical
Publication of CN112613577B publication Critical patent/CN112613577B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • 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)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • Machine Translation (AREA)

Abstract

本公开提供了一种神经网络的训练方法、装置、计算机设备及存储介质,包括:基于神经网络对应的目标损失函数,生成第一计算算子;其中,所述第一计算算子中包括多步操作;在训练所述神经网络的过程中,调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值;基于所述损失值,调整所述神经网络的网络参数值。

Description

神经网络的训练方法、装置、计算机设备及存储介质
技术领域
本公开涉及神经网络技术领域,具体而言,涉及一种神经网络的训练方法、装置、计算机设备及存储介质。
背景技术
强化学***台Pytorch为例,强化学习损失函数的输入(即神经网络多次的输出结果)一般是存储在高维数组中,在计算强化学习损失函数时,一般是将高维数组进行切片,得到强化学习损失函数的输入,然后基于强化学习损失函数对输入进行线性变换计算,得到损失值。
在对高维数据进行切片,在基于强化学习损失函数对输入进行线性变换计算时,由于每次切片操作和线性变换计算都需要启动计算算子对应的内核,当计算算子的个数较多时,计算算子对应的内核启动所耗费的时间较长,损失值的计算速度较慢。
发明内容
本公开实施例至少提供一种神经网络的训练方法、装置、计算机设备及存储介质。
第一方面,本公开实施例提供了一种神经网络的训练方法,包括:
基于神经网络对应的目标损失函数,生成第一计算算子;其中,所述第一计算算子中包括多步操作;
在训练所述神经网络的过程中,调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值;
基于所述损失值,调整所述神经网络的网络参数值。
上述方法中,预先生成了目标损失函数对应的第一计算算子,在神经网络的训练过程中,通过调用第一计算算子的内核确定本次训练过程中的损失值,由于在第一计算算子中包括多步操作,因此,在计算损失值的过程中,可以通过调用一个内核完成多步的计算,降低了损失值的计算过程中内核的调用个数,提高了内核的利用率,加快了损失值的计算速度。
一种可能的实施方式中,所述方法包括根据以下方法生成所述第一计算算子:
确定所述目标损失函数中至少一组可融合的多步操作;
基于所述至少一组可融合的多步操作,确定每组可融合的多步操作对应的所述第一计算算子。
每一组可融合的多步操作,都可以确定一个对应的第一计算算子,通过这种方法,对于一个目标损失函数,可以尽可能少的减少计算算子的个数,加快了损失值的计算速度。
一种可能的实施方式中,所述方法包括如下至少一项:
属于同一组的所述可融合的多步操作在所述目标损失函数的计算过程中相邻,且计算特征相容;
在所述可融合的多步操作包括多组的情况下,至少两组所述可融合的多步操作之间计算特征不相容。
一种可能的实施方式中,在所述调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值之前,所述方法还包括:
确定在所述目标损失函数的计算过程中与相邻操作的计算特征不相容的至少一步操作对应的第二计算算子。
一种可能的实施方式中,所述调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值,包括:
按照所述第一计算算子和所述第二计算算子在所述目标损失函数中的计算顺序,调用所述第一计算算子对应的内核执行所述第一计算算子,以及,调用所述第二计算算子的内核执行所述第二计算算子,得到本次训练过程中的损失值。
一种可能的实施方式中,在所述神经网络为强化学习网络的情况下,所述调用所述第一计算算子对应的内核执行所述第一计算算子,包括:
基于所述目标损失函数对于所述强化学习网络的输出数据的切分步数,确定所述目标损失函数对应的迭代次数;
循环执行所述第一计算算子对应的多步操作,直至循环次数达到所述迭代次数。
基于所述目标损失函数对于所述强化学习网络的输出数据的切分步数,确定所述目标损失函数对应的迭代次数,可以保证确定的第一计算算子的对于目标损失函数的计算原理并未改变,进而保证第一计算算子的计算精度。
一种可能的实施方式中,在所述目标损失函数为时序差分损失函数的情况下,所述第一计算算子包括规约计算算子和时序差分误差计算算子;
所述调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值,包括:
循环执行所述时序差分误差计算算子对应的多步操作,每次循环结束后得到该次循环计算的时序差分误差;
基于所述规约计算算子,对所述每次循环结束后得到的该次循环计算的时序差分误差进行规约处理,得到本次训练过程中的损失值。
通过这种方法,在计算时序差分损失函数对应的损失值时,减少了使用的计算算子的个数,进而减少了内核的调用个数,提升了损失值的计算效率。
一种可能的实施方式中,所述方法还包括:
在得到训练完成的神经网络后,基于训练完成的所述神经网络,对目标学习对象进行强化学习训练。
第二方面,本公开实施例还提供一种神经网络的训练装置,包括:
生成模块,用于基于神经网络对应的目标损失函数,生成第一计算算子;其中,所述第一计算算子中包括多步操作;
计算模块,用于在训练所述神经网络的过程中,调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值;
调整模块,用于基于所述损失值,调整所述神经网络的网络参数值。
一种可能的实施方式中,所述生成模块,用于根据以下方法生成所述第一计算算子:
确定所述目标损失函数中至少一组可融合的多步操作;
基于所述至少一组可融合的多步操作,确定每组可融合的多步操作对应的所述第一计算算子。
一种可能的实施方式中,所述装置包括如下至少一项:
属于同一组的所述可融合的多步操作在所述目标损失函数的计算过程中相邻,且计算特征相容;
在所述可融合的多步操作包括多组的情况下,至少两组所述可融合的多步操作之间计算特征不相容。
一种可能的实施方式中,所述装置还包括确定模块,用于:
在所述调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值之前,确定在所述目标损失函数的计算过程中与相邻操作的计算特征不相容的至少一步操作对应的第二计算算子。
一种可能的实施方式中,所述计算模块,在调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值时,用于:
按照所述第一计算算子和所述第二计算算子在所述目标损失函数中的计算顺序,调用所述第一计算算子对应的内核执行所述第一计算算子,以及,调用所述第二计算算子的内核执行所述第二计算算子,得到本次训练过程中的损失值。
一种可能的实施方式中,在所述神经网络为强化学习网络的情况下,所述计算模块,在调用所述第一计算算子对应的内核执行所述第一计算算子时,用于:
基于所述目标损失函数对于所述强化学习网络的输出数据的切分步数,确定所述目标损失函数对应的迭代次数;
循环执行所述第一计算算子对应的多步操作,直至循环次数达到所述迭代次数。
一种可能的实施方式中,在所述目标损失函数为时序差分损失函数的情况下,所述第一计算算子包括规约计算算子和时序差分误差计算算子;
所述计算模块,在调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值时,用于:
循环执行所述时序差分误差计算算子对应的多步操作,每次循环结束后得到该次循环计算的时序差分误差;
基于所述规约计算算子,对所述每次循环结束后得到的该次循环计算的时序差分误差进行规约处理,得到本次训练过程中的损失值。
一种可能的实施方式中,所述装置还包括,训练模块,用于:
在得到训练完成的神经网络后,基于训练完成的所述神经网络,对目标学习对象进行强化学习训练。
第三方面,本公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
第四方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
关于上述神经网络的训练装置、计算机设备、及计算机可读存储介质的效果描述参见上述神经网络的训练方法的说明,这里不再赘述。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种强化学习的示意图;
图2示出了本公开实施例所提供的时序差分损失函数的示意图;
图3示出了本公开实施例所提供的一种神经网络的训练方法的流程图;
图4示出了本公开实施例所提供的一种神经网络的训练装置的架构示意图;
图5示出了本公开实施例所提供的一种计算机设备的结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
首先对本公开所使用的专业术语进行介绍,强化学习(Reinforcement Learning,RL)是机器学习的一种,一般用于描述和解决智能体(Agent)在与环境的交互过程中通过学习策略以达到回报最大化或实现特定目标的问题。
如图1所示,智能体基于当前状态(State)St发出动作(action)At,环境(Environment)做出回应,生成新的状态St+1和对应的奖励(Reward)Rt+1。智能体的目标就是,通过更加明智地执行动作,从而最大化接下来的累计奖励,这里,所述智能体可以理解为强化学习模型,即本公开所述神经网络。
示例性的,在游戏对战场景中,可以通过强化学习模型训练游戏AI角色,在强化学习模型的训练过程中,所述当前状态St可以理解为AI角色的血条,以及对战对象的血条,所述发出动作At可以理解为控制AI角色释放技能,所述环境做出回应可以理解为对战对象也释放技能,所述生成新的状态St+1可以理解为更新AI角色的血条和/或对战对象的血条,所述对应的奖励Rt+1可以理解为获得的经验值和/或金币数量,在游戏对战场景中,训练强化学习模型的目的是控制AI角色获得最大化的经验值和/或最大化的金币数量。
为减少中央处理器(Central Processing Unit,CPU)的计算压力,一般是通过CPU向图形处理器(Graphics Processing Unit,GPU)分配内存,由GPU执行一部分数据的处理过程。GPU中包括多个内核kernel,每个kernel在启动时,需要为该kernel赋予对应的计算算子的处理代码,kernel才能按照对应的处理代码去执行计算过程。
强化学习的损失函数的计算过程一般是GPU完成的,经研究发现,相关技术中,在计算强化学习损失函数时,一般是将高维数组进行切片,得到强化学习损失函数的输入,然后基于强化学习损失函数对输入进行线性变换计算,得到损失值。
在对高维数据进行切片,在基于强化学习损失函数对输入进行线性变换计算时,由于每次操作都需要启动计算算子对应的kernel,当计算算子的个数较多时,计算算子对应的kernel启动所耗费的时间较长,损失值的计算效率较低。
以时序差分损失为例,时序差分损失函数的计算公式如下所示:
δ=R(S')+γV(S')-V(S) (1)
其中,δ表示一次输入对应的时序差分误差,γ为超参数,表示奖励折扣率,V(S')为当前次神经网络的输出,V(S)表示前一次神经网络的输出,R(S')表示当前次的奖励值。
若时序差分损失函数的计算过程中需要迭代T次,即需要计算T个输入对应的时序差分误差,对于每次迭代过程中,需要从输入数组V中切分出V(S')和V(S),以及从奖励数组R中切分出R(S'),然后执行一次乘法运算,两次加法运算(即公式(1)中的加法操作和减法操作),因此如图2所示,一次迭代过程需要执行3次切分操作,3次线性计算,共执行6次操作,因此在时序差分损失函数的计算过程中共需计算6T次操作,每次操作由于调用的是***默认的计算算子,因此在计算δ的过程中需要启动6T个内核。
在迭代T次计算出T个δ之后,需要对T个δ进行规约计算,得到最终的损失值,因此在损失值的计算过程中,所需要启动的内核的个数要超过6T个。当需要启动的内核的数量较多时,启动时间较长,因此损失值的计算速度较慢。
另外一方面,现有技术中调用的计算算子,是***默认的计算算子,例如加法算子,减法算子等,由于计算过程比较简单,在调用算子的过程中,启动内核之后,内核的计算能力得不到充分的利用,内核利用率较低。
基于此,本公开提供了一种神经网络的训练方法,可以预先生成目标损失函数对应的第一计算算子,在神经网络的训练过程中,通过调用第一计算算子的内核确定本次训练过程中的损失值,由于在第一计算算子中包括多步操作,因此,在计算损失值的过程中,可以通过调用一个内核完成多步的计算,降低了损失值的计算过程中内核的调用个数,提高了内核的利用率,加快了损失值的计算速度。
针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种神经网络的训练方法进行详细介绍,本公开实施例所提供的神经网络的训练方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该神经网络的训练方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
参见图3所示,为本公开实施例提供的一种神经网络的训练方法的流程图,所述方法包括步骤301~步骤303,其中:
步骤301、基于神经网络对应的目标损失函数,生成第一计算算子;其中,所述第一计算算子中包括多步操作。
步骤302、在训练所述神经网络的过程中,调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值。
步骤303、基于所述损失值,调整所述神经网络的网络参数值。
上述方法中,可以预先生成目标损失函数对应的第一计算算子,在神经网络的训练过程中,通过调用第一计算算子的内核确定本次训练过程中的损失值,由于在第一计算算子中包括多步操作,因此,在计算损失值的过程中,可以通过调用一个内核完成多步的计算,降低了损失值的计算过程中内核的调用个数,提高了内核的利用率,加快了损失值的计算速度。
以下是对上述步骤的详细介绍。
针对步骤301、
每种神经网络对应的损失函数可以是预先设置好的,所述神经网络对应的目标损失函数例如可以为时序差分损失函数、均方误差等。实际应用中,可以预先设置每种神经网络对应目标损失函数,然后定义每个目标损失函数对应的第一计算算子,这样,在神经网络的训练过程中,则可以直接调用预先定义的第一计算算子。
在一种可能的实施方式中,所述神经网络可以是强化学习网络,也可以是有监督的神经网络或者无监督的神经网络,由于在线性计算较多的损失值的计算过程中,采用本方案所提供的方法与现有技术中的计算方法之间的差异性较大,因此下面以强化学习网络为例,对上述步骤301~步骤303进行介绍。
在一种可能的实施方式中,在基于神经网络对应的目标损失函数,生成第一计算算子时,可以先确定目标损失函数中至少一组可融合的多步操作,然后基于所述至少一组可融合的多步操作,确定每组可融合的多步操作对应的第一计算算子。
其中,属于同一组的所述可融合的多步操作在所述目标损失函数的计算过程中相邻,且计算特征相容;
在所述可融合的多步操作包括多组的情况下,至少两组所述可融合的多步操作之间计算特征不相容。
所述计算特征示例性的可以包括计算密度、并行性、数据映射关系等,所述计算密度表示在读取任一数据后,数据参与计算的次数;所述并行性是指计算过程的并行粒度。例如,对于M行N列的矩阵,按行规约,并行性是逐列可并行;按列规约,并行性是逐行可并行;逐元素+1,并行性是逐元素可并行。所述数据映射关系是指在计算过程中计算参数之间的计算对应关系,如一一对应计算,或者一对多对应计算。
实际应用中,在确定任意相邻的两步操作的计算特征之间是否相容时,可以检测该两步操作的计算特征是否满足预设的相容条件,若满足,则确定任意相邻的两步操作的计算特征是相容的。
示例性的,强化学习网络的损失值的计算过程中包括多步逐元素操作,对于逐元素操作来说,判断两步逐元素操作的计算特征之间是否满足预设的相容条件时,可以判断所述两步逐元素操作的计算密度、并行性、数据映射关系是否相同,若相同,则确定所述两步逐元素操作的计算特征是相容的;若计算密度、并行性、数据映射关系中任一项不相同,则所述两步逐元素操作的计算特征是不相容的。
实际应用中,由于在强化学习网络的损失值的计算过程中,参与损失值计算的一般都为高维数组,这里所述逐元素操作中的“元素”,可以理解为高维数组中的一个运算数。
所述至少两组所述可融合的多步操作之间计算特征不相容可以理解为,对于任意两组可融合的多步操作,从该任意两组中分别选择一步操作,选择出的两步操作的计算特征是不相容的。
每一组可融合的多步操作,都可以确定一个对应的第一计算算子,通过这种方法,对于一个目标损失函数,可以尽可能少的减少计算算子的个数,加快了损失值的计算速度。
实际应用中,在确定每组可融合的多步操作对应的第一计算算子时,可以是确定所述可融合的多步操作对应的代码,所述每组可融合的多步操作对应的第一计算算子可以是指该段代码对应的标识信息,即在运行过程中,通过该段代码对应的标识信息,即可调用该段代码。
在一种可能的实施方式中,在确定所述目标损失函数中至少一组可融合的多步操作,可以控制展示装置依次展示所述至少一组可融合的多步操作,然后接收用户输入的当前展示的可融合的多步操作对应的第一计算算子的代码。
针对步骤302、
在一种可能的实施方式中,在调用第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值之前,还可以在所述目标损失函数的计算过程中与相邻操作的计算特征不相容的至少一步操作对应的第二计算算子。
这里,所述第二计算算子可以是***默认的算子,当***中不存在所述至少一部操作对应的默认算子时,所述第二计算算子还可以是自定义的算子,当所述第二计算算子是自定义的算子时,所述第二计算算子与所述第一计算算子的相同之处在于都是自定义的算子,不同之处在于,所述第一计算算子中融合了多步操作的计算,所述第二计算算子中仅包括一步操作的计算。
具体的,在调用第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中损失值时,可以按照所述第一计算算子和所述第二计算算子在所述目标损失函数中的计算顺序,调用第一计算算子对应的内核执行所述第一计算算子,以及调用所述第二计算算子的内核执行所述第二计算算子,得到本次训练过程中的损失值。
示例性的,仍以上述时序差分损失函数为例,若迭代次数为两次,即计算出两个δ,最终的损失值为两个δ之和,则在调用计算公式(1)对应的第一计算算子的内核,确定出两个δ之后,可以通过加法对应的计算算子(即上述第二计算算子)的内核,确定时差差分损失值。
在所述神经网络为强化学习神经网络的情况下,在调用第一计算算子对应的内核执行所述第一计算算子时,所述第一计算算子内部可以执行如如下操作以确定计算结果:
步骤1、基于所述目标损失函数对于所述强化学习网络的输出数据的切分步数,确定所述目标损失函数对应的迭代次数。
步骤2、循环执行所述第一计算算子对应的多步计算,直至循环次数达到所述迭代次数。
基于所述目标损失函数对于所述强化学习网络的输出数据的切分步数,确定所述目标损失函数对应的迭代次数,可以保证确定的第一计算算子的对于目标损失函数的计算原理并未改变,进而保证第一计算算子的计算精度。
针对步骤1,在基于所述目标损失函数对于所述强化学习网络的输出数据的切分步数,确定所述目标损失函数对应的迭代次数时,可以先确定目标损失函数每次迭代计算过程中对于输出数据的切分次数,然后将所述目标损失函数对于所述强化学习网络的输出数据的切分步数与所述切分次数之商作为所述迭代次数。
仍以上述时序差分损失函数为例,在时序差分损失函数计算过程中,需要进行3T次切分,每次迭代过程中需要执行3次切分,则迭代次数为T次。
相关技术中,在进行时序差分损失函数时,若时序差分损失函数的计算过程中需要迭代T次,则最终需要执行6T次操作以得到T个δ,而通过本公开所确定的第一计算算子,可以将通过循环执行的方法,循环执行T次计算公式(1)所对应的计算步骤,得到T个δ,可以理解为在相关技术中通过6T个kernel执行完成的工作,通过本公开所提供的方法,仅通过1个kernel就可以执行完成,因此在减少kernel个数的同时,提高了kernel的利用率。
在所述目标损失函数为时序差分损失函数的情况下,所述第一计算算子可以包括规约计算算子和时序差分误差计算算子,在调用第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值时,可以循环执行所述时序差分误差计算算子对应的多步操作,每次循环结束后得到该次循环计算的时序差分误差,然后基于规约计算算子,对所述每次循环结束后得到的该次循环计算的时序差分误差进行规约处理,得到本次训练过程中的损失值。
通过这种方法,在计算时序差分损失函数对应的损失值时,减少了使用的计算算子的个数,进而减少了内核的调用个数,提升了损失值的计算效率。
针对步骤303、
在一种可能的实施方式中,在基于所述损失值,调整所述神经网络的网络参数值时,可以先基于所述损失值,确定所述损失值是否小于预设损失值,若是,则调整所述神经网络的网络参数值,并重新神经网络的训练过程和步骤302;若否,则确定所述神经网络训练完成。
在另外一种可能的实施方式中,在基于所述损失值,调整所述神经网络的网络参数值时,还可以是在所述神经网络未收敛的情况下,基于所述损失值,调整所述神经网络的网络参数值,若所述神经网络收敛,则确定所述神经网络训练完成。
在一种可能的实施方式中,在得到训练完成的所述神经网络后,还可以基于训练完成的所述神经网络,对目标学习对象进行强化学习训练。
这里,所述基于训练完成的所述神经网络,对目标学习对象进行强化学习训练,示例性的,所述训练完成的神经网络可以应用于游戏对战场景中,所述对目标学习对象进行强化学习训练可以是训练所述目标学习对象操作游戏,对于其他可以训练目标学习对象的场景本公开也并不限制。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与神经网络的训练方法对应的神经网络的训练装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述神经网络的训练方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图4所示,为本公开实施例提供的一种神经网络的训练装置的架构示意图,所述装置包括:生成模块401、计算模块402、调整模块403;其中,
生成模块401,用于基于神经网络对应的目标损失函数,生成第一计算算子;其中,所述第一计算算子中包括多步操作;
计算模块402,用于在训练所述神经网络的过程中,调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值;
调整模块403,用于基于所述损失值,调整所述神经网络的网络参数值。
一种可能的实施方式中,所述生成模块401,用于根据以下方法生成所述第一计算算子:
确定所述目标损失函数中至少一组可融合的多步操作;
基于所述至少一组可融合的多步操作,确定每组可融合的多步操作对应的所述第一计算算子。
一种可能的实施方式中,所述装置包括如下至少一项:
属于同一组的所述可融合的多步操作在所述目标损失函数的计算过程中相邻,且计算特征相容;
在所述可融合的多步操作包括多组的情况下,至少两组所述可融合的多步操作之间计算特征不相容。
一种可能的实施方式中,所述装置还包括确定模块404,用于:
在所述调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值之前,确定在所述目标损失函数的计算过程中与相邻操作的计算特征不相容的至少一步操作对应的第二计算算子。
一种可能的实施方式中,所述计算模块402,在调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值时,用于:
按照所述第一计算算子和所述第二计算算子在所述目标损失函数中的计算顺序,调用所述第一计算算子对应的内核执行所述第一计算算子,以及,调用所述第二计算算子的内核执行所述第二计算算子,得到本次训练过程中的损失值。
一种可能的实施方式中,在所述神经网络为强化学习网络的情况下,所述计算模块402,在调用所述第一计算算子对应的内核执行所述第一计算算子时,用于:
基于所述目标损失函数对于所述强化学习网络的输出数据的切分步数,确定所述目标损失函数对应的迭代次数;
循环执行所述第一计算算子对应的多步操作,直至循环次数达到所述迭代次数。
一种可能的实施方式中,在所述目标损失函数为时序差分损失函数的情况下,所述第一计算算子包括规约计算算子和时序差分误差计算算子;
所述计算模块402,在调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值时,用于:
循环执行所述时序差分误差计算算子对应的多步操作,每次循环结束后得到该次循环计算的时序差分误差;
基于所述规约计算算子,对所述每次循环结束后得到的该次循环计算的时序差分误差进行规约处理,得到本次训练过程中的损失值。
一种可能的实施方式中,所述装置还包括,训练模块405,用于:
在得到训练完成的神经网络后,基于训练完成的所述神经网络,对目标学习对象进行强化学习训练。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
上述装置中,可以预先生成目标损失函数对应的第一计算算子,在神经网络的训练过程中,通过调用第一计算算子的内核确定本次训练过程中的损失值,由于在第一计算算子中包括多步操作,因此,在计算损失值的过程中,可以通过调用一个内核完成多步的计算,降低了损失值的计算过程中内核的调用个数,提高了内核的利用率,加快了损失值的计算速度。
基于同一技术构思,本公开实施例还提供了一种计算机设备。参照图5所示,为本公开实施例提供的计算机设备的结构示意图,包括处理器501、存储器502、和总线503。其中,存储器502用于存储执行指令,包括内存5021和外部存储器5022;这里的内存5021也称内存储器,用于暂时存放处理器501中的运算数据,以及与硬盘等外部存储器5022交换的数据,处理器501通过内存5021与外部存储器5022进行数据交换,当计算机设备500运行时,处理器501与存储器502之间通过总线503通信,使得处理器501在执行以下指令:
基于神经网络对应的目标损失函数,生成第一计算算子;其中,所述第一计算算子中包括多步操作;
在训练所述神经网络的过程中,调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值;
基于所述损失值,调整所述神经网络的网络参数值。
一种可能的实施方式中,处理器501执行的指令中,所述方法包括根据以下方法生成所述第一计算算子:
确定所述目标损失函数中至少一组可融合的多步操作;
基于所述至少一组可融合的多步操作,确定每组可融合的多步操作对应的所述第一计算算子。
属于同一组的所述可融合的多步操作在所述目标损失函数的计算过程中相邻,且计算特征相容;
在所述可融合的多步操作包括多组的情况下,至少两组所述可融合的多步操作之间计算特征不相容。
一种可能的实施方式中,处理器501执行的指令中,在所述调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值之前,所述方法还包括:
确定在所述目标损失函数的计算过程中与相邻操作的计算特征不相容的至少一步操作对应的第二计算算子。
一种可能的实施方式中,处理器501执行的指令中,所述调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值,包括:
按照所述第一计算算子和所述第二计算算子在所述目标损失函数中的计算顺序,调用所述第一计算算子对应的内核执行所述第一计算算子,以及,调用所述第二计算算子的内核执行所述第二计算算子,得到本次训练过程中的损失值。
一种可能的实施方式中,处理器501执行的指令中,在所述神经网络为强化学习网络的情况下,所述调用所述第一计算算子对应的内核执行所述第一计算算子,包括:
基于所述目标损失函数对于所述强化学习网络的输出数据的切分步数,确定所述目标损失函数对应的迭代次数;
循环执行所述第一计算算子对应的多步操作,直至循环次数达到所述迭代次数。
一种可能的实施方式中,处理器501执行的指令中,在所述目标损失函数为时序差分损失函数的情况下,所述第一计算算子包括规约计算算子和时序差分误差计算算子;
所述调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值,包括:
循环执行所述时序差分误差计算算子对应的多步操作,每次循环结束后得到该次循环计算的时序差分误差;
基于所述规约计算算子,对所述每次循环结束后得到的该次循环计算的时序差分误差进行规约处理,得到本次训练过程中的损失值。
一种可能的实施方式中,处理器501执行的指令中,所述方法还包括:
在得到训练完成的神经网络后,基于训练完成的所述神经网络,对目标学习对象进行强化学习训练。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的神经网络的训练方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,该计算机产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的神经网络的训练方法的步骤,具体可参见上述方法实施例,在此不再赘述。
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。

Claims (11)

1.一种神经网络的训练方法,其特征在于,包括:
基于神经网络对应的目标损失函数,生成第一计算算子;其中,所述第一计算算子中包括多步操作;
在训练所述神经网络的过程中,调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值;
基于所述损失值,调整所述神经网络的网络参数值。
2.根据权利要求1所述的方法,其特征在于,所述方法包括根据以下方法生成所述第一计算算子:
确定所述目标损失函数中至少一组可融合的多步操作;
基于所述至少一组可融合的多步操作,确定每组可融合的多步操作对应的所述第一计算算子。
3.根据权利要求2所述的方法,其特征在于,所述方法包括如下至少一项:
属于同一组的所述可融合的多步操作在所述目标损失函数的计算过程中相邻,且计算特征相容;
在所述可融合的多步操作包括多组的情况下,至少两组所述可融合的多步操作之间计算特征不相容。
4.根据权利要求3所述的方法,其特征在于,在所述调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值之前,所述方法还包括:
确定在所述目标损失函数的计算过程中与相邻操作的计算特征不相容的至少一步操作对应的第二计算算子。
5.根据权利要求4所述的方法,其特征在于,所述调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值,包括:
按照所述第一计算算子和所述第二计算算子在所述目标损失函数中的计算顺序,调用所述第一计算算子对应的内核执行所述第一计算算子,以及,调用所述第二计算算子的内核执行所述第二计算算子,得到本次训练过程中的损失值。
6.根据权利要求1~5任一所述的方法,其特征在于,在所述神经网络为强化学习网络的情况下,所述调用所述第一计算算子对应的内核执行所述第一计算算子,包括:
基于所述目标损失函数对于所述强化学习网络的输出数据的切分步数,确定所述目标损失函数对应的迭代次数;
循环执行所述第一计算算子对应的多步操作,直至循环次数达到所述迭代次数。
7.根据权利要求6所述的方法,其特征在于,在所述目标损失函数为时序差分损失函数的情况下,所述第一计算算子包括规约计算算子和时序差分误差计算算子;
所述调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值,包括:
循环执行所述时序差分误差计算算子对应的多步操作,每次循环结束后得到该次循环计算的时序差分误差;
基于所述规约计算算子,对所述每次循环结束后得到的该次循环计算的时序差分误差进行规约处理,得到本次训练过程中的损失值。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在得到训练完成的神经网络后,基于训练完成的所述神经网络,对目标学习对象进行强化学习训练。
9.一种神经网络的训练装置,其特征在于,包括:
生成模块,用于基于神经网络对应的目标损失函数,生成第一计算算子;其中,所述第一计算算子中包括多步操作;
计算模块,用于在训练所述神经网络的过程中,调用所述第一计算算子对应的内核执行所述第一计算算子,得到本次训练过程中的损失值;
调整模块,用于基于所述损失值,调整所述神经网络的网络参数值。
10.一种计算机设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至8任一项所述的神经网络的训练方法的步骤。
11.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至8任一项所述的神经网络的训练方法的步骤。
CN202011620546.9A 2020-12-31 2020-12-31 神经网络的训练方法、装置、计算机设备及存储介质 Active CN112613577B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011620546.9A CN112613577B (zh) 2020-12-31 2020-12-31 神经网络的训练方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011620546.9A CN112613577B (zh) 2020-12-31 2020-12-31 神经网络的训练方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN112613577A true CN112613577A (zh) 2021-04-06
CN112613577B CN112613577B (zh) 2024-06-11

Family

ID=75249734

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011620546.9A Active CN112613577B (zh) 2020-12-31 2020-12-31 神经网络的训练方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN112613577B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114201154A (zh) * 2021-12-10 2022-03-18 北京百度网讯科技有限公司 算子生成方法和装置
CN114444727A (zh) * 2021-12-31 2022-05-06 北京瑞莱智慧科技有限公司 核函数近似模型的训练方法、装置、电子模型及存储介质

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018209932A1 (zh) * 2017-05-17 2018-11-22 清华大学 多量化深度二值特征学习方法及装置
CN108898218A (zh) * 2018-05-24 2018-11-27 阿里巴巴集团控股有限公司 一种神经网络模型的训练方法、装置、及计算机设备
CN109325584A (zh) * 2018-08-10 2019-02-12 深圳前海微众银行股份有限公司 基于神经网络的联邦建模方法、设备及可读存储介质
CN109671020A (zh) * 2018-12-17 2019-04-23 北京旷视科技有限公司 图像处理方法、装置、电子设备和计算机存储介质
US20200104678A1 (en) * 2018-09-27 2020-04-02 Google Llc Training optimizer neural networks
CN111310775A (zh) * 2018-12-11 2020-06-19 Tcl集团股份有限公司 数据训练方法、装置、终端设备及计算机可读存储介质
CN111738919A (zh) * 2020-05-22 2020-10-02 南京邮电大学 基于线性多步残差稠密网的低清小脸真实感幻构方法
CN111814813A (zh) * 2019-04-10 2020-10-23 北京市商汤科技开发有限公司 神经网络训练和图像分类方法与装置
CN111861945A (zh) * 2020-09-21 2020-10-30 浙江大学 一种文本引导的图像修复方法和***
CN111860823A (zh) * 2019-04-30 2020-10-30 北京市商汤科技开发有限公司 神经网络训练、图像处理方法及装置、设备及存储介质
WO2020221278A1 (zh) * 2019-04-29 2020-11-05 北京金山云网络技术有限公司 视频分类方法及其模型的训练方法、装置和电子设备
US20200372344A1 (en) * 2017-12-01 2020-11-26 Koninklijke Philips N.V. Training a neural network model
CN112101530A (zh) * 2020-11-10 2020-12-18 南京集成电路产业服务中心有限公司 神经网络训练方法、装置、设备及存储介质

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018209932A1 (zh) * 2017-05-17 2018-11-22 清华大学 多量化深度二值特征学习方法及装置
US20200372344A1 (en) * 2017-12-01 2020-11-26 Koninklijke Philips N.V. Training a neural network model
CN108898218A (zh) * 2018-05-24 2018-11-27 阿里巴巴集团控股有限公司 一种神经网络模型的训练方法、装置、及计算机设备
CN109325584A (zh) * 2018-08-10 2019-02-12 深圳前海微众银行股份有限公司 基于神经网络的联邦建模方法、设备及可读存储介质
US20200104678A1 (en) * 2018-09-27 2020-04-02 Google Llc Training optimizer neural networks
CN111310775A (zh) * 2018-12-11 2020-06-19 Tcl集团股份有限公司 数据训练方法、装置、终端设备及计算机可读存储介质
CN109671020A (zh) * 2018-12-17 2019-04-23 北京旷视科技有限公司 图像处理方法、装置、电子设备和计算机存储介质
CN111814813A (zh) * 2019-04-10 2020-10-23 北京市商汤科技开发有限公司 神经网络训练和图像分类方法与装置
WO2020221278A1 (zh) * 2019-04-29 2020-11-05 北京金山云网络技术有限公司 视频分类方法及其模型的训练方法、装置和电子设备
CN111860823A (zh) * 2019-04-30 2020-10-30 北京市商汤科技开发有限公司 神经网络训练、图像处理方法及装置、设备及存储介质
CN111738919A (zh) * 2020-05-22 2020-10-02 南京邮电大学 基于线性多步残差稠密网的低清小脸真实感幻构方法
CN111861945A (zh) * 2020-09-21 2020-10-30 浙江大学 一种文本引导的图像修复方法和***
CN112101530A (zh) * 2020-11-10 2020-12-18 南京集成电路产业服务中心有限公司 神经网络训练方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
吴陈, 胡广朋: "模型-理论框架中算子泛化后的保持性和相容性研究", 华东船舶工业学院学报(自然科学版), no. 02, 30 April 2003 (2003-04-30), pages 29 - 34 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114201154A (zh) * 2021-12-10 2022-03-18 北京百度网讯科技有限公司 算子生成方法和装置
CN114444727A (zh) * 2021-12-31 2022-05-06 北京瑞莱智慧科技有限公司 核函数近似模型的训练方法、装置、电子模型及存储介质

Also Published As

Publication number Publication date
CN112613577B (zh) 2024-06-11

Similar Documents

Publication Publication Date Title
CN109871532B (zh) 文本主题提取方法、装置及存储介质
CN111542839B (zh) 一种反卷积神经网络的硬件加速方法、装置和电子设备
CN107844828B (zh) 神经网络中的卷积计算方法和电子设备
CN109271521B (zh) 一种文本分类方法及装置
CN112613577A (zh) 神经网络的训练方法、装置、计算机设备及存储介质
Kelly et al. Offline planning with hierarchical task networks in video games
JP6955598B2 (ja) 複数の畳み込みウィンドウ内の画像データの並行抽出方法、装置、機器及びコンピュータ可読記憶媒体
CN110705996A (zh) 基于特征掩码的用户行为识别方法、***、及装置
CN111639699B (zh) 一种图像特征提取的方法、***、设备及可读存储介质
CN114840322B (zh) 任务调度方法及装置、电子设备和存储
CN112508190A (zh) 结构化稀疏参数的处理方法、装置、设备及存储介质
CN114004149A (zh) 一种智能体的训练方法、装置、计算机设备及存储介质
CN112966729B (zh) 一种数据处理方法、装置、计算机设备及存储介质
CN113031967A (zh) 一种代码转换方法及装置
CN111985624A (zh) 神经网络训练和部署方法、文本翻译方法及相关产品
EP4246375A1 (en) Model processing method and related device
CN112765936B (zh) 一种基于语言模型进行运算的训练方法及装置
CN111475304B (zh) 一种特征提取加速方法及***
CN109165097B (zh) 一种数据处理方法以及数据处理装置
CN117762642B (zh) 一种卷积神经网络模型的加载方法、装置及存储介质
CN117786297A (zh) 算子运算方法、装置、电子设备和存储介质
CN117785479A (zh) 模型运算方法、装置、电子设备和存储介质
CN113884857A (zh) 芯片、芯片压力测试方法、装置、电子设备及存储介质
CN115994451A (zh) 适用于金刚石氮空位色心量子调控计算的方法及***
Oumarou et al. Fast quantum circuit simulation using hardware accelerated general purpose libraries

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