CN117151195A - 基于求逆归一化的模型优化方法、装置、设备和介质 - Google Patents
基于求逆归一化的模型优化方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN117151195A CN117151195A CN202311050918.2A CN202311050918A CN117151195A CN 117151195 A CN117151195 A CN 117151195A CN 202311050918 A CN202311050918 A CN 202311050918A CN 117151195 A CN117151195 A CN 117151195A
- Authority
- CN
- China
- Prior art keywords
- gradient
- average
- matrix
- term
- network layer
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 99
- 238000010606 normalization Methods 0.000 title claims abstract description 60
- 238000005457 optimization Methods 0.000 title claims abstract description 58
- 239000011159 matrix material Substances 0.000 claims abstract description 230
- 239000013598 vector Substances 0.000 claims abstract description 83
- 238000003062 neural network model Methods 0.000 claims abstract description 61
- 238000012545 processing Methods 0.000 claims abstract description 25
- 238000004364 calculation method Methods 0.000 claims description 65
- 238000004590 computer program Methods 0.000 claims description 6
- 238000009499 grossing Methods 0.000 claims description 4
- 238000012549 training Methods 0.000 abstract description 57
- 238000013528 artificial neural network Methods 0.000 abstract description 25
- 239000010410 layer Substances 0.000 description 98
- 238000004422 calculation algorithm Methods 0.000 description 46
- 230000008569 process Effects 0.000 description 44
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 23
- 238000004891 communication Methods 0.000 description 11
- 239000000463 material Substances 0.000 description 9
- 230000008901 benefit Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012935 Averaging Methods 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 5
- 238000013136 deep learning model Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 208000011231 Crohn disease Diseases 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 239000011229 interlayer Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000455 protein structure prediction Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000000547 structure data Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种基于求逆归一化的模型优化方法、装置、设备和介质,方法包括:获取深度神经网络模型,并计算出深度神经网络模型中每个网络层的逆矩阵;根据每个网络层的逆矩阵得到Fisher信息矩阵的逆矩阵和多个中间梯度值;根据多个中间梯度值计算平均梯度项和平均平方项;根据Fisher信息矩阵的逆矩阵对平均平方项进行划分处理,得到每个网络层对应的梯度向量;对每个网络层的梯度向量进行归一化处理,得到单位化平均平方项;根据单位化平均平方项和平均梯度项调整深度神经网络模型中的待优化变量,得到优化后的深度神经网络模型,其中,本申请提供了一种能够在仅增加少量功耗的情况下优化神经网络的训练精度的模型优化方案,以提高模型性能。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种基于求逆归一化的模型优化方法、装置、设备和介质。
背景技术
近年来,随着人工智能领域的快速发展,对算力的要求也迅速提高,导致训练一个可行的神经网络可能需要耗费几周、甚至几个月的时间,而为了减少计算资源消耗,当前也出现了多种模型优化方法,例如在神经网络训练中,目前常用的优化方法包括使用自然梯度算法、K-FAC算法和ADAM算法等进行优化。
然而,这些算法在应对大规模神经网络的训练时依然存在一些问题,如自然梯度算法的一个主要问题是其参数量通常非常大,导致Fisher信息矩阵求逆计算的计算资源开销过大,难以接受;另一方面,单独采用K-FAC算法或ADAM算法也在一定程度上存在上述问题,且K-FAC算法或ADAM算法的计算精度较差。
上述计算资源耗费多、训练精度低的特性使得常用的模型优化方法无法有效应用于网络结构较为复杂且对训练的精度要求高的模型训练过程中,如无法有效对材料领域中包含了多种物理意义的网络层搭建而成的SchNet网络模型进行训练优化,使得现有技术生成的SchNet网络模型对分子结构、特性等方面的预测精度较差。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本发明实施例提供了一种基于求逆归一化的模型优化方法、电子设备和介质,旨在解决现有技术中深度学习模型训练时计算资源耗费多、训练精度低,无法有效应用于网络结构较为复杂且对训练的精度要求高的模型训练过程中的技术问题。
为实现上述目的,本发明实施例的第一方面提出了一种基于求逆归一化的模型优化方法,包括:
获取已根据预设的样本数据集进行过初步训练的深度神经网络模型,并计算出所述深度神经网络模型中每个网络层的逆矩阵;
根据每个所述网络层的逆矩阵得到Fisher信息矩阵的逆矩阵;
根据所述Fisher信息矩阵的逆矩阵得到多个中间梯度值;
根据多个所述中间梯度值计算平均梯度项和平均平方项;
根据所述Fisher信息矩阵的逆矩阵对所述平均平方项进行划分处理,得到每个所述网络层对应的梯度向量;
对每个所述网络层的梯度向量进行归一化处理,得到单位化平均平方项;
根据所述单位化平均平方项和所述平均梯度项调整所述深度神经网络模型中的待优化变量,得到优化后的深度神经网络模型。
在一些实施例,所述计算出所述深度神经网络模型中每个网络层的逆矩阵,包括:
根据所述样本数据集计算所述深度神经网络模型中每个网络层的前向传播特征矩阵和反向传播特征矩阵;
分别对每个所述网络层对应的所述前向传播特征矩阵和所述反向传播特征矩阵进行克罗内克乘积计算处理,并将得到的乘积结果确定为每个所述网络层的逆矩阵。
在一些实施例,所述根据每个所述网络层的逆矩阵得到Fisher信息矩阵的逆矩阵,包括:
根据每个所述网络层的逆矩阵得到多个对角块单元;
将每个所述对角块单元按照预设规则进行拼接得到Fisher信息矩阵,以使每个所述对角块单元的主对角线依次与Fisher信息矩阵主对角线的一部分对应;
对所述Fisher信息矩阵进行逆运算,得到所述Fisher信息矩阵的逆矩阵。
在一些实施例,所述根据所述Fisher信息矩阵的逆矩阵得到多个中间梯度值,包括:
获取所述深度神经网络模型每次迭代的迭代梯度值;
根据所述每次迭代的迭代梯度值和所述Fisher信息矩阵的逆矩阵得到多个中间梯度值。
在一些实施例,所述根据多个所述中间梯度值计算平均梯度项和平均平方项,包括:
初始化平均梯度项和平均平方项;
根据预设的第一衰减系数和多个所述中间梯度值,对所述平均梯度项进行第一指数加权移动平均更新,得到所述平均梯度项;
根据预设的第二衰减系数和多个所述中间梯度值的平方,对所述平均梯度项进行第二指数加权移动平均更新,得到所述平均平方项。
在一些实施例,所述根据所述Fisher信息矩阵的逆矩阵对所述平均平方项进行划分处理,得到每个所述网络层对应的梯度向量,包括:
对所述平均平方项进行展平操作得到梯度列向量;
将所述梯度列向量分别与所述Fisher信息矩阵的逆矩阵中的每个所述对角块单元相乘,得到每个所述对角块单元对应所述网络层的梯度向量,其中,所述梯度向量为列向量或行向量。
在一些实施例,所述对每个所述网络层的梯度向量进行归一化处理,得到单位化平均平方项,包括:
分别对每个所述网络层的梯度向量进行算术平均数计算,得到每个所述网络层的平均梯度向量;
分别将每个所述网络层的平均梯度向量与长度相同的单位向量相乘,得到每个所述网络层对应的单位化梯度向量;
根据每个所述网络层对应的单位化梯度向量得到单位化平均平方项。
在一些实施例,所述根据所述单位化平均平方项和所述平均梯度项调整所述深度神经网络模型中的待优化变量,包括:
获取待优化变量的当前值;
根据预设学习率、预设平滑项、所述单位化平均平方项和所述平均梯度项计算调整值;
将所述待优化变量的取值确定为所述当前值与所述调整值的差值。
在一些实施例,所述样本数据集包括分子的结构数据和性质数据,所述深度神经网络模型为用于对分子的结构和性质进行预测的SchNet网络模型,所述得到优化后的深度神经网络模型之后,还包括:
输入目标分子相关数据至所述优化后的SchNet网络模型,以根据所述优化后的SchNet网络模型的输出结果对所述目标分子对应的分子结构和分子性质进行预测处理。
为实现上述目的,本发明实施例的第二方面提出了一种基于求逆归一化的模型优化装置,包括:
第一逆矩阵计算单元,用于获取已根据预设的样本数据集进行过初步训练的深度神经网络模型,并计算出所述深度神经网络模型中每个网络层的逆矩阵;
第二逆矩阵计算单元,用于根据每个所述网络层的逆矩阵得到Fisher信息矩阵的逆矩阵;
中间梯度值计算单元,用于根据所述Fisher信息矩阵的逆矩阵得到多个中间梯度值;
平均梯度值计算单元,用于根据多个所述中间梯度值计算平均梯度项和平均平方项;
梯度向量计算单元,用于根据所述Fisher信息矩阵的逆矩阵对所述平均平方项进行划分处理,得到每个所述网络层对应的梯度向量;
归一化计算单元,用于对每个所述网络层的梯度向量进行归一化处理,得到单位化平均平方项;
参数调整单元,用于根据所述单位化平均平方项和所述平均梯度项调整所述深度神经网络模型中的待优化变量,得到优化后的深度神经网络模型。
为实现上述目的,本发明实施例的第三方面提出了一种电子设备,所述电子设备包括存储器、处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的方法。
为实现上述目的,本发明实施例的第四方面提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的方法。
本发明提出的基于求逆归一化的模型优化方法、装置、设备和介质,其通过获取已根据预设的样本数据集进行过初步训练的深度神经网络模型,并计算出所述深度神经网络模型中每个网络层的逆矩阵,根据每个所述网络层的逆矩阵得到Fisher信息矩阵的逆矩阵,以初步减少得到深度学习模型的Fisher信息矩阵的逆矩阵的计算资源;进一步的,根据所述Fisher信息矩阵的逆矩阵得到多个中间梯度值,并根据多个所述中间梯度值计算平均梯度项和平均平方项,以实现根据历史每步迭代得到的值,对新得到的梯度项和平方项进行平均化处理的过程,方便后续进行归一化处理;进一步的,根据所述Fisher信息矩阵的逆矩阵对所述平均平方项进行划分处理,得到每个所述网络层对应的梯度向量,实现根据计算过程中的神经网络分层导致的对角块特性,对输出梯度进行对应分块,将每个块看成整体以减少计算量;进一步的,对每个所述网络层的梯度向量进行归一化处理,得到单位化平均平方项,实现对块与块之间进行归一化处理,得到修正后的梯度,以实现通过归一化有效提高计算精度的过程;最后根据所述单位化平均平方项和所述平均梯度项调整所述深度神经网络模型中的待优化变量,得到优化后的深度神经网络模型,其中,通过上述步骤能使本申请提供一种能够在仅增加少量功耗的情况下优化神经网络的训练精度的训练方案,能有效应用于网络结构较为复杂且对训练的精度要求高的模型训练过程中,使得到的网络模型具有更高的预测精度,使预测结果更准确;例如,通过本申请方法可以对材料领域中包含了多种物理意义的网络层搭建而成的SchNet网络模型进行训练优化,使得优化后的SchNet网络模型可以在分子结构、特性等材料科学领域原子能量预测方面具有更好的性能优势,便于相关领域技术人员开展研究。
附图说明
图1是本发明实施例提供的基于求逆归一化的模型优化方法的流程图;
图2是图1中的步骤S110的流程图;
图3是图1中的步骤S120的流程图;
图4是图1中的步骤S130的流程图;
图5是图1中的步骤S140的流程图;
图6是图1中的步骤S150的流程图;
图7是图1中的步骤S160的流程图;
图8是图1中的步骤S170的流程图;
图9是本发明实施例提供的基于求逆归一化的模型优化装置的结构示意图;
图10是本发明实施例提供的电子设备的硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
人工智能作为一项重要的战略性技术,通过数据、计算和算法的融合,模拟和实现人类智能,而随着人工智能模型的复杂性和规模的增加,其需要更大的计算资源进行训练。近年来,大规模的预训练模型和优化算法如GPT-3、GPT-4和BERT等引起了广泛关注,这些模型拥有数十亿到数百亿个参数,需要庞大的算力进行训练。AI技术已经开始催化传统计算科学领域的变革,例如,AlphaFold2解决了蛋白质结构预测的难题。其中,最优化算法是人工智能研究中的关键技术,特别是在训练深度神经网络和强化学习中起着重要作用,因为这些问题涉及到求解大规模、非凸且非光滑的优化问题。针对不同的深度学习任务,研究人员通过构造先进可靠的优化模型和开发高精度实时的最优化算法,努力克服非凸性、非光滑性、高维度等困难,从而解决分布式和在线优化算法设计中的瓶颈问题。而由于模型的结构和训练过程也与模型的表现效果密切相关,当模型结构确定时,寻找这个模型的最优解成为一个具有挑战性的问题,研究人员在设计模型结构和训练过程时,需要考虑到模型的复杂性和计算资源的限制,以提高模型性能和训练效果。
具体的,当前也出现了多种模型优化方法,例如在神经网络训练中,目前常用的优化方法包括使用自然梯度算法、K-FAC算法和ADAM算法等进行优化。然而,这些算法在应对大规模神经网络的训练时依然存在一些问题,如自然梯度算法的一个主要问题是其参数量通常非常大,导致Fisher信息矩阵求逆计算的计算资源开销过大,难以接受;另一方面,单独采用K-FAC算法或ADAM算法也在一定程度上存在上述问题,且K-FAC算法或ADAM算法的计算精度较差。上述计算资源耗费多、训练精度低的特性使得常用的模型优化方法无法有效应用于网络结构较为复杂且对训练的精度要求高的模型训练过程中,如无法有效对材料领域中包含了多种物理意义的网络层搭建而成的SchNet网络模型进行训练优化,使得现有技术生成的SchNet网络模型对分子结构、特性等方面的预测精度较差。
基于此,本发明实施例提供了一种基于求逆归一化的模型优化方法、电子设备和介质,旨在解决现有技术中深度学习模型训练时计算资源耗费多、训练精度低,无法有效应用于网络结构较为复杂且对训练的精度要求高的模型训练过程中的技术问题。
在本申请中,本发明可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中,在本发明实施例中不做具体限定。
具体的,在本发明实施例中,基于求逆归一化的模型优化方法可以应用于英伟达GPU处理器,深度学习模型可以是由包含了多种物理意义的网络层搭建而成,网络结构较为复杂且对训练的精度要求高材料领域的SchNet网络模型,对应的样本数据集包括分子的结构数据和性质数据,由于对SchNet网络模型进行训练,并在得到优化后的SchNet网络模型之后,输入目标分子相关数据至优化后的SchNet网络模型,以根据优化后的SchNet网络模型的输出结果对目标分子对应的分子结构和分子性质进行预测处理,实现对材料领域中包含了多种物理意义的网络层搭建而成的SchNet网络模型进行训练优化,使得优化后的SchNet网络模型可以在分子结构、特性等材料科学领域原子能量预测方面具有更好的性能优势,便于相关领域技术人员开展研究。
下面结合附图,对本发明实施例作进一步描述。
图1是本发明实施例提供的基于求逆归一化的模型优化方法的一个可选的流程图,图1中的方法可以包括但不限于包括步骤S110至步骤S170。
步骤S110,获取已根据预设的样本数据集进行过初步训练的深度神经网络模型,并计算出深度神经网络模型中每个网络层的逆矩阵;
步骤S120,根据每个网络层的逆矩阵得到Fisher信息矩阵的逆矩阵;
步骤S130,根据Fisher信息矩阵的逆矩阵得到多个中间梯度值;
步骤S140,根据多个中间梯度值计算平均梯度项和平均平方项;
步骤S150,根据Fisher信息矩阵的逆矩阵对平均平方项进行划分处理,得到每个网络层对应的梯度向量;
步骤S160,对每个网络层的梯度向量进行归一化处理,得到单位化平均平方项;
步骤S170,根据单位化平均平方项和平均梯度项调整深度神经网络模型中的待优化变量,得到优化后的深度神经网络模型。
在一些实施例中,对于深度学习,模型训练可表示为求解如下的大规模非凸非光滑问题,设深度神经网络模型的待优化变量为θ,那模型优化过程可理解为对以下网络模型表达式J(θ)最小值的求解过程:
其中,是给定的样本数据集,θ是神经网络的参数也是优化的目标变量,f(x,θ)代表神经网络当输入为x时的输出,ψ是损失函数,常用的有/>损失函数和交叉熵损失函数等,本申请通过对θ更新迭代以实现模型训练精度的优化。
本发明实施例所示意的步骤S110至步骤S170,通过获取已根据预设的样本数据集进行过初步训练的深度神经网络模型,并计算出深度神经网络模型中每个网络层的逆矩阵,根据每个网络层的逆矩阵得到Fisher信息矩阵的逆矩阵,以初步减少得到深度学习模型的Fisher信息矩阵的逆矩阵的计算资源;进一步的,根据Fisher信息矩阵的逆矩阵得到多个中间梯度值,并根据多个中间梯度值计算平均梯度项和平均平方项,以实现根据历史每步迭代得到的值,对新得到的梯度项和平方项进行平均化处理的过程,方便后续进行归一化处理;进一步的,根据Fisher信息矩阵的逆矩阵对平均平方项进行划分处理,得到每个网络层对应的梯度向量,实现根据计算过程中的神经网络分层导致的对角块特性,对输出梯度进行对应分块,将每个块看成整体以减少计算量;进一步的,对每个网络层的梯度向量进行归一化处理,得到单位化平均平方项,实现对块与块之间进行归一化处理,得到修正后的梯度,以实现通过归一化有效提高计算精度的过程;最后根据单位化平均平方项和平均梯度项调整深度神经网络模型中的待优化变量,得到优化后的深度神经网络模型,其中,通过上述步骤能使本申请提供一种能够在仅增加少量功耗的情况下优化神经网络的训练精度的训练方案,能有效应用于网络结构较为复杂且对训练的精度要求高的模型训练过程中,使得到的网络模型具有更高的预测精度,使预测结果更准确。
在一些实施例中,本申请可以基于现有的深度神经网络技术的特点,通过采用K-FAC算法的计算流程,实现初步计算出Fisher信息矩阵,根据Fisher信息矩阵的逆矩阵得到多个中间梯度值的过程;然后可以采用ADAM算法的流程,根据历史每步迭代得到的值,对新得到的梯度项和平方项进行平均化处理,计算平均梯度项和平均平方项;接下来,结合K-FAC算法和ADAM算法,考虑计算过程中的神经网络分层导致的对角块特性,对输出梯度进行网络层对应分块,得到每个网络层对应的梯度向量,并将每个块看成整体,进而对块与块之间进行归一化处理,得到修正后的梯度(单位化平均平方项),进而调整待优化变量,其中,由于由于新增的分块划分和归一化操作的计算量,相比于原K-FAC算法的计算量非常少,因此本申请在结合了ADAM算法中的平均化、归一化处理能有效提升计算精度的同时,其计算量并未显著增加,使得本申请模型优化方案能够在仅增加少量功耗,即远小于仅使用ADAM算法时所消耗功耗的情况下提高神经网络的训练精度。
以上是对步骤S110至步骤S170的总体描述,下面分别对步骤S110至步骤S170进行详细描述。
步骤S110,获取已根据预设的样本数据集进行过初步训练的深度神经网络模型,并计算出深度神经网络模型中每个网络层的逆矩阵。
请参阅图2,图2是图1中的步骤S110的流程图,在一些实施例中,计算出深度神经网络模型中每个网络层的逆矩阵,可以包括但不限于包括步骤S210至步骤S220:
步骤S210,根据样本数据集计算深度神经网络模型中每个网络层的前向传播特征矩阵和反向传播特征矩阵;
步骤S220,分别对每个网络层对应的前向传播特征矩阵和反向传播特征矩阵进行克罗内克乘积计算处理,并将得到的乘积结果确定为每个网络层的逆矩阵。
在一些实施例中,深度学习模型由若干网络层组成,前向传播特征矩阵由反向传回来的损失函数值对网络层非线性映射之前输出的梯度的期望值组成;反向传播特征矩阵由网络层的上一网络层非线性之后的输出的期望值组成,通过前向传播特征矩阵和反向传播特征矩阵的克罗内克乘积得到的矩阵,作为该网络层的逆矩阵,可以极大地减少深度学习模型训练的计算资源和存储资源。
在一些实施例中,步骤S210至步骤S220中计算网络层的逆矩阵的过程具体如下:
其中,为矩阵Fl的逆矩阵,Fl为网络层矩阵,Gl为前向传播特征矩阵,Al-1为反向传播特征矩阵,/>为克罗内克乘积,l表示深度神经网络模型的第l层网络层公式,综上,表示每个网络层的逆矩阵,由于克罗内克乘积极大减少了网络层模型计算量和存储量,即极大简化了计算过程,故对每个网络层的计算均使用克罗内克乘积逼近的方式进行计算,可以有效降低计算出网络层的逆矩阵时的计算资源消耗。
步骤S120,根据每个网络层的逆矩阵得到Fisher信息矩阵的逆矩阵。
请参阅图3,图3是图1中的步骤S120的流程图,在一些实施例中,根据每个网络层的逆矩阵得到Fisher信息矩阵的逆矩阵,可以包括但不限于包括步骤S310至步骤S330:
步骤S310,根据每个网络层的逆矩阵得到多个对角块单元;
步骤S320,将每个对角块单元按照预设规则进行拼接得到Fisher信息矩阵,以使每个对角块单元的主对角线依次与Fisher信息矩阵主对角线的一部分对应;
步骤S330,对Fisher信息矩阵进行逆运算,得到Fisher信息矩阵的逆矩阵。
在一些实施例中,本申请计算Fisher信息矩阵的逆矩阵的过程与K-FAC算法类似,K-FAC(Kronecker-Factored Approximate Curvature)算法是一种用于训练神经网络的优化算法,旨在估计模型参数的Fisher信息矩阵的逆矩阵。Fisher信息矩阵是衡量参数对目标函数梯度的敏感性的一种方式,其逆矩阵在训练过程中可以用于有效地更新模型参数。
具体的,通过对角块组装好Fisher信息矩阵Fθ的过程如下:
Fθ≈diag(F1,...,Fl,...,FL) (3)
其中,Fθ是Fisher信息矩阵,则为Fisher信息矩阵的逆矩阵,F1,...,Fl,...,FL则为上述各网络层矩阵,L为网络层总数,由于常规技术计算Fisher信息矩阵的逆矩阵,计算的开销较大,尤其是对于大规模神经网络问题,因此,为了减少计算量,本申请对计算进行近似,即只取对角块进行近似计算,根据上述公式(3)得到/>的表达式为:
其中,则为上述各网络层的逆矩阵。
在一些实施例中,本申请通过对于每个网络层,根据该层的逆矩阵来生成多个对角块单元。逆矩阵是原矩阵的逆运算,描述了网络层中参数的敏感性和相关性,而生成的对角块单元表示了该网络层的逆矩阵的对角线部分;进一步的,将每个对角块单元按照预设规则进行拼接,得到完整的Fisher信息矩阵,拼接的规则通常是将每个对角块单元放置在Fisher信息矩阵中与其对应的位置,确保对角块单元的主对角线与Fisher信息矩阵的主对角线的一部分相对应,这样做的目的是保持参数之间的相关性,并且在计算逆矩阵时具有较低的计算复杂度;进一步的,对拼接后的Fisher信息矩阵进行逆运算,得到Fisher信息矩阵的逆矩阵,该逆矩阵可以用于更新模型参数,以便在训练过程中更有效地优化模型。
在一些实施例中,通过步骤S310至步骤S330将每个网络层的逆矩阵作为Fisher信息矩阵的逆矩阵的对角块单元,并将对角块单元按照预设规则进行拼接得到的逆矩阵,作为Fisher信息矩阵的逆矩阵,采用了对角块近似方法,由于只考虑神经网络每层内部的相互作用,忽略层之间的相互作用,尽管对角块近似方法只考虑层内的相互作用来捕捉主要的参数关系,忽略了层之间的相互作用,但在实践中通常是可行的,因为神经网络的层间相关性往往相对较弱,而层内的相关性较强,故在大多数情况下,该简化并不会对结果的精度产生显著的影响,使得本申请可以在不对精度造成较大影响的同时,极大的简化计算过程,进一步降低对计算资源的消耗,其中,所提到的预设规则可以是按照深度学习模型中从上往下各网络层的顺序,进而可以根据Fisher信息矩阵的逆矩阵得到用于对深度神经网络模型进行训练的多个中间梯度值。
步骤S130,根据Fisher信息矩阵的逆矩阵得到多个中间梯度值。
请参阅图4,图4是图1中的步骤S130的流程图,在一些实施例中,根据Fisher信息矩阵的逆矩阵得到多个中间梯度值,可以包括但不限于包括步骤S410至步骤S420:
步骤S410,获取深度神经网络模型每次迭代的迭代梯度值;
步骤S420,根据每次迭代的迭代梯度值和Fisher信息矩阵的逆矩阵得到多个中间梯度值。
在一些实施例中,可以在模型训练过程中对模型进行监控,并记录每次迭代后计算得到的梯度值,以获取获取深度神经网络模型每次迭代的迭代梯度值,即在每次迭代后调用所使用的深度学习框架提供的用于计算梯度的函数来获取每次迭代的迭代梯度值。
在一些实施例中,每次迭代的迭代梯度值和Fisher信息矩阵的逆矩阵得到多个中间梯度值的表达式如下:
其中,为每次迭代的迭代梯度值,y为中间梯度值,通过将上述类似K-FAC算法的计算流程得到的结果作为中间变量,以方便后续进行归一化处理,提高本申请训练精度。
步骤S140,根据多个中间梯度值计算平均梯度项和平均平方项。
请参阅图5,图5是图1中的步骤S140的流程图,在一些实施例中,根据多个中间梯度值计算平均梯度项和平均平方项,可以包括但不限于包括步骤S510至步骤S530:
步骤S510,初始化平均梯度项和平均平方项;
步骤S520,根据预设的第一衰减系数和多个中间梯度值,对平均梯度项进行第一指数加权移动平均更新,得到平均梯度项;
步骤S530,根据预设的第二衰减系数和多个中间梯度值的平方,对平均梯度项进行第二指数加权移动平均更新,得到平均平方项。
在一些实施例中,初始化平均梯度项和平均平方项包括,将平均梯度项和平均平方项设置为0。
在一些实施例中,根据预设的第一衰减系数和多个中间梯度值,对平均梯度项进行第一指数加权移动平均更新,得到平均梯度项的具体表达式如下:
m←β1m+(1-β1)y (6)
其中,m为平均梯度项,β1是预设的第一衰减系数,y为上述中间梯度值。
在一些实施例中,根据预设的第二衰减系数和多个中间梯度值的平方,对平均梯度项进行第二指数加权移动平均更新,得到平均平方项的具体表达式如下:
v←β2v+(1-β2)y2 (7)
其中,v为平均平方项,β2是预设的第二衰减系数,y2为上述中间梯度值的平方。
在一些实施例中,步骤S510至步骤S530与ADAM算法中的计算流程类似,ADAM(Adaptive Moment Estimation)算法是一种常用的优化算法,用于训练深度神经网络,并在其训练的过程中采用了归一化处理步骤,即上述(6)式本质上是对计算过程中,历史上每步迭代产生的中间梯度值进行了平均处理;上述(7)式本质上是对计算过程中,历史上每步迭代得到中间梯度值的平方进行了平均处理,进而便于在后续过程中对历史梯度平均后再采用了归一化处理。
步骤S150,根据Fisher信息矩阵的逆矩阵对平均平方项进行划分处理,得到每个网络层对应的梯度向量。
请参阅图6,图6是图1中的步骤S150的流程图,在一些实施例中,根据Fisher信息矩阵的逆矩阵对平均平方项进行划分处理,得到每个网络层对应的梯度向量,可以包括但不限于包括步骤S610至步骤S620:
步骤S610,对平均平方项进行展平操作得到梯度列向量;
步骤S620,将梯度列向量分别与Fisher信息矩阵的逆矩阵中的每个对角块单元相乘,得到每个对角块单元对应网络层的梯度向量,其中,梯度向量为列向量或行向量。
在一些实施例中,通过上述步骤S610至步骤S620,实现根据计算过程中的神经网络分层导致的对角块特性,对输出梯度进行对应分块划分,通过上述步骤以便在后续过程中得到单位化平均平方项,可以在模型训练的过程中引入动量项,并进行归一化处理,进而提高提升收敛的速度和精度,并对梯度进行放缩,有效改进收敛效果,提升模型训练精度。
具体的,根据的对角分块结构,对v进行单位化变换,用于后面的归一化,即对第l层神经网络,假设vl是v中对应的一段维度为nl×1的梯度向量。
在一些实施例中,在K-FAC中,Fisher信息矩阵用于估计梯度的二阶信息为了在ADAM优化步骤中结合K-FAC,需要将平均平方项进行展平操作,将其转换为一个梯度列向量,即将平均平方项矩阵展开为一个向量。步骤S610旨在将平均平方项的信息从矩阵形式转换为向量形式;而在K-FAC中,通过逆矩阵近似方法,可以估计Fisher信息矩阵的逆矩阵,在步骤S620,将梯度列向量和Fisher信息矩阵的逆矩阵中每个对角块单元相乘,得到每个对角块单元对应网络层的梯度向量。这就意味着梯度会按照网络结构分块处理,以便更好地估计不同层之间的梯度信息,并在后续过程中对每个网络层的梯度向量进行归一化处理,使得不同网络层的梯度具有相似的尺度,有助于有效地进行优化,以便更好地调整模型参数。
步骤S160,对每个网络层的梯度向量进行归一化处理,得到单位化平均平方项。
请参阅图7,图7是图1中的步骤S160的流程图,在一些实施例中,对每个网络层的梯度向量进行归一化处理,得到单位化平均平方项,可以包括但不限于包括步骤S710至步骤S730:
步骤S710,分别对每个网络层的梯度向量进行算术平均数计算,得到每个网络层的平均梯度向量;
步骤S720,分别将每个网络层的平均梯度向量与长度相同的单位向量相乘,得到每个网络层对应的单位化梯度向量;
步骤S730,根据每个网络层对应的单位化梯度向量得到单位化平均平方项。
在一些实施例中,得到单位化平均平方项的具体过程如下:计算vl的平均值pl=mean(vl);然后,生成新的向量vl′=pl1l,其中1l为长度nl×1的所有元素均为1的单位向量;最后,将新生成的向量vl′组装成v′;其中,pl为上述平均梯度向量,vl′为上述单位化梯度向量,v′为上述单位化平均平方项,单位化平均平方项由于在后续过程中对模型的待调整参数进行调整,以提高训练精度。
综上,上述步骤S150至步骤S160通过结合了K-FAC和ADAM的优化过程,通过将平均平方项展平为梯度列向量,利用Fisher信息矩阵的逆矩阵将梯度向量进行分块处理,并对每个网络层的梯度向量进行归一化处理,以获得更好的梯度估计和模型优化效果。
步骤S170,根据单位化平均平方项和平均梯度项调整深度神经网络模型中的待优化变量,得到优化后的深度神经网络模型。
请参阅图8,图8是图1中的步骤S170的流程图,在一些实施例中,根据单位化平均平方项和平均梯度项调整深度神经网络模型中的待优化变量,可以包括但不限于包括步骤S810至步骤S830:
步骤S810,获取待优化变量的当前值;
步骤S820,根据预设学习率、预设平滑项、单位化平均平方项和平均梯度项计算调整值;
步骤S830,将待优化变量的取值确定为当前值与调整值的差值。
对应步骤S810至步骤S830,调整深度神经网络模型中的待优化变量θ,表达式如下:
其中,η为预设学习率,∈为预设平滑项,v′为上述单位化平均平方项,m为平均梯度项,本申请通过用代替了现有技术算法中的梯度/>来对待优化变量θ进行调整,以引入归一化处理过程到K-FAC算法中,进而极大的提高模型的训练精度,预期能提高计算精度。
在一些实施例中,上述步骤通过结合了原K-FAC算法和ADAM算法的特点,在此基础上进行的设计和开发。相比于传统的随机梯度下降等优化方法,具有更好的精度优势和计算资源消耗优势,通过先采用K-FAC算法的计算流程,得到初步的计算输出梯度,无需进行真正的求逆计算即可得到Fisher信息矩阵的逆矩阵;然后采用ADAM算法的流程,根据历史每步迭代得到的值,对新得到的梯度项和平方项进行平均化处理;接下来,考虑到计算过程中的神经网络分层导致的对角块特性,对输出梯度进行对应分块,将每个块看成整体;最后对块与块之间进行归一化处理,得到修正后的梯度。由于新增的分块和归一化操作的计算量,相比于原K-FAC算法的计算量非常少,因此本申请的计算量并未显著增加,但预测精度却显著提升。
在一些实施例中,样本数据集包括分子的结构数据和性质数据,深度神经网络模型为用于对分子的结构和性质进行预测的SchNet网络模型,本申请方法包括:
获取已根据预设的分子的结构数据和性质数据进行过初步训练的SchNet网络模型,并计算出SchNet网络模型中每个网络层的逆矩阵;根据每个网络层的逆矩阵得到Fisher信息矩阵的逆矩阵;根据Fisher信息矩阵的逆矩阵得到多个中间梯度值;根据多个中间梯度值计算平均梯度项和平均平方项;根据Fisher信息矩阵的逆矩阵对平均平方项进行划分处理,得到每个网络层对应的梯度向量;对每个网络层的梯度向量进行归一化处理,得到单位化平均平方项;根据单位化平均平方项和平均梯度项调整SchNet网络模型中的待优化变量,得到优化后的SchNet网络模型;输入目标分子相关数据至优化后的SchNet网络模型,以根据优化后的SchNet网络模型的输出结果对目标分子对应的分子结构和分子性质进行预测处理,使得优化后的SchNet网络模型可以在分子结构、特性等材料科学领域原子能量预测方面具有更好的性能优势,便于相关领域技术人员开展研究。
在一些实施例中,本发明经过实现和测试,在材料科学领域原子能量预测上,具有较好的性能优势;例如在材料科学领域用SchNet网络预测原子能量(QM9)任务中,具体数据如下:在GPU上基于QM9数据集用SchNet进行原子能量预测任务的对比时,进行精度检测,当迭代次数(Epochs)超过400时,本申请方案在验证集上的损失(VALIDATION LOSS)为0.0003,K-FAC在验证集上的损失为0.0008,ADAM在验证集上的损失为0.0003;同时进行能量误差测试,当迭代次数(Epochs)超过400时,本申请方案的平均绝对误差的能量指标(MAEof ENERGY)为0.0096,K-FAC的指标为0.0145,ADAM的指标为0.0114,可以看出在执行相同预测任务是,本申请方案的损失与ADAM方案相当,但远小于K-FAC在验证集上的损失,且本申请方案的平均绝对误差的能量指标同时小于ADAM和K-FAC,有效说明在英伟达GPU硬件环境下,本申请方案收敛精度优于ADAM和K-FAC,即本申请方案确实对ADAM和K-FAC这两个算法进行了改进。
第二方面,参考图9,本发明实施例还提供了一种基于求逆归一化的模型优化装置,包括:第一逆矩阵计算单元901,用于获取已根据预设的样本数据集进行过初步训练的深度神经网络模型,并计算出深度神经网络模型中每个网络层的逆矩阵;第二逆矩阵计算单元902,用于根据每个网络层的逆矩阵得到Fisher信息矩阵的逆矩阵;中间梯度值计算单元903,用于根据Fisher信息矩阵的逆矩阵得到多个中间梯度值;平均梯度值计算单元904,用于根据多个中间梯度值计算平均梯度项和平均平方项;梯度向量计算单元905,用于根据Fisher信息矩阵的逆矩阵对平均平方项进行划分处理,得到每个网络层对应的梯度向量;归一化计算单元906,用于对每个网络层的梯度向量进行归一化处理,得到单位化平均平方项;参数调整单元907,用于根据单位化平均平方项和平均梯度项调整深度神经网络模型中的待优化变量,得到优化后的深度神经网络模型。
第三方面,本发明实施例还提供了一种电子设备,电子设备包括:存储器、处理器、存储在存储器上并可在处理器上运行的程序以及用于实现处理器和存储器之间的连接通信的数据总线,程序被处理器执行时实现上述基于求逆归一化的模型优化方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。
请参阅图10,图10示意了另一实施例的电子设备的硬件结构,电子设备包括:
处理器1001,可以采用通用的CPU(CentralProcessingUnit,中央处理器)、微处理器、应用专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本发明实施例所提供的技术方案;
存储器1002,可以采用只读存储器(ReadOnlyMemory,ROM)、静态存储设备、动态存储设备或者随机存取存储器(RandomAccessMemory,RAM)等形式实现。存储器1002可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1002中,并由处理器1001来调用执行本发明实施例的基于求逆归一化的模型优化方法;
输入/输出接口1003,用于实现信息输入及输出;
通信接口1004,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;
总线1005,在设备的各个组件(例如处理器1001、存储器1002、输入/输出接口1003和通信接口1004)之间传输信息;
其中处理器1001、存储器1002、输入/输出接口1003和通信接口1004通过总线1005实现彼此之间在设备内部的通信连接。
第四方面,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现上述基于求逆归一化的模型优化方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
综上,本发明相比现有技术,同时结合了K-FAC算法的计算流程和ADAM算法的流程,首先得到初步的计算输出梯度,无需进行真正的求逆计算即可得到Fisher信息矩阵的逆矩阵;然后对梯度项和平方项进行平均化处理,进行分块划分和归一化操作,上述特点使得本发明可以提供了一种能够在仅增加少量功耗的情况下优化神经网络的训练精度的模型优化方案,解决现有技术中深度学习模型训练时计算资源耗费多、训练精度低,无法有效应用于网络结构较为复杂且对训练的精度要求高的模型训练过程中的技术问题,以提高模型性能,使模型能有效应用于网络结构较为复杂且对训练的精度要求高的模型训练过程中。
本发明实施例描述的实施例是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。
本领域技术人员可以理解的是,图1至8中示出的技术方案并不构成对本发明实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
本发明的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、对应的系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机可读存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机可读存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机可读存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
以上参照附图说明了本发明实施例的优选实施例,并非因此局限本发明实施例的权利范围。本领域技术人员不脱离本发明实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本发明实施例的权利范围之内。
Claims (12)
1.一种基于求逆归一化的模型优化方法,其特征在于,包括:
获取已根据预设的样本数据集进行过初步训练的深度神经网络模型,并计算出所述深度神经网络模型中每个网络层的逆矩阵;
根据每个所述网络层的逆矩阵得到Fisher信息矩阵的逆矩阵;
根据所述Fisher信息矩阵的逆矩阵得到多个中间梯度值;
根据多个所述中间梯度值计算平均梯度项和平均平方项;
根据所述Fisher信息矩阵的逆矩阵对所述平均平方项进行划分处理,得到每个所述网络层对应的梯度向量;
对每个所述网络层的梯度向量进行归一化处理,得到单位化平均平方项;
根据所述单位化平均平方项和所述平均梯度项调整所述深度神经网络模型中的待优化变量,得到优化后的深度神经网络模型。
2.根据权利要求1所述的基于求逆归一化的模型优化方法,其特征在于,所述计算出所述深度神经网络模型中每个网络层的逆矩阵,包括:
根据所述样本数据集计算所述深度神经网络模型中每个网络层的前向传播特征矩阵和反向传播特征矩阵;
分别对每个所述网络层对应的所述前向传播特征矩阵和所述反向传播特征矩阵进行克罗内克乘积计算处理,并将得到的乘积结果确定为每个所述网络层的逆矩阵。
3.根据权利要求1所述的基于求逆归一化的模型优化方法,其特征在于,所述根据每个所述网络层的逆矩阵得到Fisher信息矩阵的逆矩阵,包括:
根据每个所述网络层的逆矩阵得到多个对角块单元;
将每个所述对角块单元按照预设规则进行拼接得到Fisher信息矩阵,以使每个所述对角块单元的主对角线依次与Fisher信息矩阵主对角线的一部分对应;
对所述Fisher信息矩阵进行逆运算,得到所述Fisher信息矩阵的逆矩阵。
4.根据权利要求1所述的基于求逆归一化的模型优化方法,其特征在于,所述根据所述Fisher信息矩阵的逆矩阵得到多个中间梯度值,包括:
获取所述深度神经网络模型每次迭代的迭代梯度值;
根据所述每次迭代的迭代梯度值和所述Fisher信息矩阵的逆矩阵得到多个中间梯度值。
5.根据权利要求1所述的基于求逆归一化的模型优化方法,其特征在于,所述根据多个所述中间梯度值计算平均梯度项和平均平方项,包括:
初始化平均梯度项和平均平方项;
根据预设的第一衰减系数和多个所述中间梯度值,对所述平均梯度项进行第一指数加权移动平均更新,得到所述平均梯度项;
根据预设的第二衰减系数和多个所述中间梯度值的平方,对所述平均梯度项进行第二指数加权移动平均更新,得到所述平均平方项。
6.根据权利要求3所述的基于求逆归一化的模型优化方法,其特征在于,所述根据所述Fisher信息矩阵的逆矩阵对所述平均平方项进行划分处理,得到每个所述网络层对应的梯度向量,包括:
对所述平均平方项进行展平操作得到梯度列向量;
将所述梯度列向量分别与所述Fisher信息矩阵的逆矩阵中的每个所述对角块单元相乘,得到每个所述对角块单元对应所述网络层的梯度向量,其中,所述梯度向量为列向量或行向量。
7.根据权利要求1所述的基于求逆归一化的模型优化方法,其特征在于,所述对每个所述网络层的梯度向量进行归一化处理,得到单位化平均平方项,包括:
分别对每个所述网络层的梯度向量进行算术平均数计算,得到每个所述网络层的平均梯度向量;
分别将每个所述网络层的平均梯度向量与长度相同的单位向量相乘,得到每个所述网络层对应的单位化梯度向量;
根据每个所述网络层对应的单位化梯度向量得到单位化平均平方项。
8.根据权利要求1所述的基于求逆归一化的模型优化方法,其特征在于,所述根据所述单位化平均平方项和所述平均梯度项调整所述深度神经网络模型中的待优化变量,包括:
获取待优化变量的当前值;
根据预设学习率、预设平滑项、所述单位化平均平方项和所述平均梯度项计算调整值;
将所述待优化变量的取值确定为所述当前值与所述调整值的差值。
9.根据权利要求1所述的基于求逆归一化的模型优化方法,其特征在于,所述样本数据集包括分子的结构数据和性质数据,所述深度神经网络模型为用于对分子的结构和性质进行预测的SchNet网络模型,所述得到优化后的深度神经网络模型之后,还包括:
输入目标分子相关数据至所述优化后的SchNet网络模型,以根据所述优化后的SchNet网络模型的输出结果对所述目标分子对应的分子结构和分子性质进行预测处理。
10.一种基于求逆归一化的模型优化装置,其特征在于,包括:
第一逆矩阵计算单元,用于获取已根据预设的样本数据集进行过初步训练的深度神经网络模型,并计算出所述深度神经网络模型中每个网络层的逆矩阵;
第二逆矩阵计算单元,用于根据每个所述网络层的逆矩阵得到Fisher信息矩阵的逆矩阵;
中间梯度值计算单元,用于根据所述Fisher信息矩阵的逆矩阵得到多个中间梯度值;
平均梯度值计算单元,用于根据多个所述中间梯度值计算平均梯度项和平均平方项;
梯度向量计算单元,用于根据所述Fisher信息矩阵的逆矩阵对所述平均平方项进行划分处理,得到每个所述网络层对应的梯度向量;
归一化计算单元,用于对每个所述网络层的梯度向量进行归一化处理,得到单位化平均平方项;
参数调整单元,用于根据所述单位化平均平方项和所述平均梯度项调整所述深度神经网络模型中的待优化变量,得到优化后的深度神经网络模型。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至9中任意一项所述的基于求逆归一化的模型优化方法。
12.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1至9中任意一项所述的基于求逆归一化的模型优化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311050918.2A CN117151195A (zh) | 2023-08-18 | 2023-08-18 | 基于求逆归一化的模型优化方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311050918.2A CN117151195A (zh) | 2023-08-18 | 2023-08-18 | 基于求逆归一化的模型优化方法、装置、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117151195A true CN117151195A (zh) | 2023-12-01 |
Family
ID=88909195
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311050918.2A Pending CN117151195A (zh) | 2023-08-18 | 2023-08-18 | 基于求逆归一化的模型优化方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117151195A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117706280A (zh) * | 2024-02-05 | 2024-03-15 | 南昌科晨电力试验研究有限公司 | 一种基于多源数据的配电线路雷击故障定位方法及系统 |
CN117706280B (zh) * | 2024-02-05 | 2024-06-04 | 南昌科晨电力试验研究有限公司 | 一种基于多源数据的配电线路雷击故障定位方法及系统 |
-
2023
- 2023-08-18 CN CN202311050918.2A patent/CN117151195A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117706280A (zh) * | 2024-02-05 | 2024-03-15 | 南昌科晨电力试验研究有限公司 | 一种基于多源数据的配电线路雷击故障定位方法及系统 |
CN117706280B (zh) * | 2024-02-05 | 2024-06-04 | 南昌科晨电力试验研究有限公司 | 一种基于多源数据的配电线路雷击故障定位方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110809772B (zh) | 用于改进机器学习模型的优化的系统和方法 | |
US11436496B2 (en) | Systems and methods for regularizing neural networks | |
US20190197404A1 (en) | Asychronous training of machine learning model | |
US10235403B2 (en) | Parallel collective matrix factorization framework for big data | |
US11941527B2 (en) | Population based training of neural networks | |
CN110832509B (zh) | 使用神经网络的黑盒优化 | |
US20210089832A1 (en) | Loss Function Optimization Using Taylor Series Expansion | |
CN110531996B (zh) | 一种多微云环境下基于粒子群优化的计算任务卸载方法 | |
Song et al. | Online traffic flow prediction for edge computing-enhanced autonomous and connected vehicles | |
US20230342606A1 (en) | Training method and apparatus for graph neural network | |
CN112183742A (zh) | 基于渐进式量化和Hessian信息的神经网络混合量化方法 | |
CN114490065A (zh) | 一种负载预测方法、装置及设备 | |
CN110471768B (zh) | 一种基于fastPCA-ARIMA的负载预测方法 | |
US20210166131A1 (en) | Training spectral inference neural networks using bilevel optimization | |
KR102134682B1 (ko) | 실시간 시계열 데이터를 위한 예측 모형 생성 시스템 및 방법 | |
CN107977980B (zh) | 一种目标跟踪方法、设备以及可读介质 | |
CN116151353B (zh) | 一种序列推荐模型的训练方法和对象推荐方法 | |
Banerjee et al. | Boosting exploration in actor-critic algorithms by incentivizing plausible novel states | |
Springer et al. | Robust parameter estimation of chaotic systems | |
US20230115113A1 (en) | System and method for machine learning architecture for multi-task learning with dynamic neural networks | |
CN117151195A (zh) | 基于求逆归一化的模型优化方法、装置、设备和介质 | |
CN116048956A (zh) | 一种软件缺陷发生情况预测方法、装置、设备及存储介质 | |
CN115907000A (zh) | 一种用于电力系统最优潮流预测的小样本学习方法 | |
CN112667394B (zh) | 一种计算机资源利用率优化方法 | |
CN113570129A (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 |