CN117829149B - 一种语言模型混合训练方法、装置、电子设备和存储介质 - Google Patents
一种语言模型混合训练方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN117829149B CN117829149B CN202410231729.3A CN202410231729A CN117829149B CN 117829149 B CN117829149 B CN 117829149B CN 202410231729 A CN202410231729 A CN 202410231729A CN 117829149 B CN117829149 B CN 117829149B
- Authority
- CN
- China
- Prior art keywords
- preset
- vector
- training
- gradient
- neural network
- 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
Links
- 238000012549 training Methods 0.000 title claims abstract description 310
- 238000000034 method Methods 0.000 title claims abstract description 89
- 238000003860 storage Methods 0.000 title claims abstract description 22
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 208
- 238000005457 optimization Methods 0.000 claims abstract description 156
- 238000003062 neural network model Methods 0.000 claims abstract description 142
- 238000007781 pre-processing Methods 0.000 claims abstract description 24
- 238000012545 processing Methods 0.000 claims abstract description 21
- 239000013598 vector Substances 0.000 claims description 469
- 230000004927 fusion Effects 0.000 claims description 191
- 239000011159 matrix material Substances 0.000 claims description 140
- 230000008859 change Effects 0.000 claims description 64
- 238000012795 verification Methods 0.000 claims description 47
- 238000004590 computer program Methods 0.000 claims description 17
- 230000006870 function Effects 0.000 claims description 14
- 238000010606 normalization Methods 0.000 claims description 14
- 230000003044 adaptive effect Effects 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 9
- 230000011218 segmentation Effects 0.000 claims description 9
- 238000007499 fusion processing Methods 0.000 claims description 8
- 238000005259 measurement Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 5
- 230000007704 transition Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000009499 grossing Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- 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]
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例提供了一种语言模型混合训练方法、装置、电子设备和存储介质;涉及计算机系统和数据处理技术领域;包括:获取待训练神经网络模型和训练文本数据;对所述训练文本数据进行文本预处理,生成训练样本集;基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型;采集所述中间神经网络模型的模型参数;判断所述模型参数是否触发预设训练切换条件;响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型;通过本发明实施例可以提高大型模型的训练速度和准确度。
Description
技术领域
本发明涉及计算机系统和数据处理技术领域,特别是涉及一种语言模型混合训练方法、一种语言模型混合训练装置、一种电子设备和一种存储介质。
背景技术
目前,样本容量与神经网络模型规模的指数级增长,导致语言神经网络模型的求解与训练成为一大挑战,单机训练在大模型时代已无法满足计算力、存储以及通信等要求。为了克服传统单机训练模型式的缺陷,目前采用基于多机多卡的并行或分布式训练模式,即利用数据并行(将原始数据集拆分为若干子数据集后,并将它们分配至适合的计算节点进行单独处理)、模型并行(将原始模型拆分为若干子模型后,并将它们分配适合的计算节点单独处理)等方式以实现神经网络模型的加速训练。但是目前的训练过程中,由于在深度模型训练过程中优化算法似乎难以平衡训练精度与端到端的训练时长;导致训练效率低下以及准确度不足。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种语言模型混合训练方法、一种语言模型混合训练装置、一种电子设备和一种存储介质。
为了解决上述问题,在本发明的第一个方面,本发明实施例公开了一种语言模型混合训练方法,包括:
获取待训练神经网络模型和训练文本数据;
对所述训练文本数据进行文本预处理,生成训练样本集;
基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型;
采集所述中间神经网络模型的模型参数;
判断所述模型参数是否触发预设训练切换条件;
响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型。
可选地,在所述基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型的步骤之前,所述方法还包括:
确定所述预设二阶优化算法的第一梯度参数和所述预设一阶优化算法的第二梯度参数;
将所述第一梯度参数和所述第二梯度参数进行融合处理,以使所述预设二阶优化算法切换平滑过渡至所述预设一阶优化算法。
可选地,所述模型参数包括迭代次数,所述判断所述模型参数是否触发预设训练切换条件的步骤包括:
获取切换迭代数;
确定大于所述切换迭代数为所述预设训练切换条件;
判断所述迭代次数是否不小于所述切换迭代数;
当所述迭代次数不小于所述切换迭代数时,确定所述模型参数触发所述预设训练切换条件。
可选地,所述切换迭代数通过如下方式确定:
基于所述预设二阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第一精度曲线数据;
基于所述预设一阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第二精度曲线数据;
确定所述第一精度曲线数据和所述第二精度曲线数据的交叉点数据;
将所述交叉点数据对应的迭代次数确定为所述切换迭代数。
可选地,所述预设训练切换条件包括切换阈值;所述判断所述模型参数是否触发预设训练切换条件的步骤包括:
依据所述模型参数计算单位时间损失变化率;
判断所述单位时间损失变化率是否不大于切换阈值;
当所述单位时间损失变化率不大于所述切换阈值时,确定所述模型参数触发所述预设训练切换条件。
可选地,所述模型参数包括验证精度值和损失值,所述依据所述模型参数计算单位时间损失变化率的步骤包括:
在预设迭代间隔中,依据所述验证精度值和损失值计算单位时间损失变化率。
可选地,所述依据所述验证精度值和损失值计算单位时间损失变化率的步骤包括:
基于预设自适应公式,依据所述验证精度值和损失值计算单位时间损失变化率。
可选地,所述预设自适应公式为:
其中,和表示两个非负常数并且;表示在第次迭代中目标函数的损失值,表示在第次迭代所对应的验证精度值,表示所述预设迭代间隔,为单位时间损失变化率。
可选地,所述第一梯度参数为第一梯度向量,所述第二梯度参数为第二梯度向量;所述将所述第一梯度参数和所述第二梯度参数进行融合处理的步骤包括:
将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量;
对所述目标融合向量进行归一化。
可选地,所述将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量的步骤包括:
对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量;
计算所述初始融合向量与所述第一梯度向量的向量夹角;
判断所述向量夹角是否不大于预设夹角阈值;
响应于所述向量夹角大于所述预设夹角阈值,采用所述初始融合向量作为所述第二梯度向量,并执行所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤,直至所述向量夹角不大于所述预设夹角阈值。
可选地,所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤包括:
基于预设融合公式,对所述第一梯度向量和所述第二梯度向量进行矢量相加,得到所述初始融合向量;
所述预设融合公式为:
其中,为所述初始融合向量;为所述第二梯度向量,为第一梯度向量。
可选地,所述计算所述初始融合向量与所述第一梯度向量的向量夹角的步骤包括:
基于预设向量夹角公式计算所述初始融合向量与所述第一梯度向量的向量夹角余弦值;
依据所述向量夹角余弦值确定所述向量夹角;
所述预设向量夹角公式为:
其中,为所述第一梯度向量的模长,为所述初始融合向量的模长。
可选地,所述对所述目标融合向量进行归一化的步骤包括:
计算所述目标融合向量的模长;
计算所述第一梯度向量的模长;
基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放,以完成所述归一化。
可选地,所述基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放的步骤包括:
依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子;
依据所述缩放因子对所述目标融合向量的模长进行缩放。
可选地,所述依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子的步骤包括:
依据预设缩放因子确定公式,计算所述缩放因子;
所述预设缩放因子确定公式为:
其中,所述为缩放因子,为所述第一梯度向量的模长,为所述初始融合向量的模长。
可选地,所述依据所述缩放因子对所述目标融合向量的模长进行缩放的步骤包括:
将所述缩放因子与所述目标融合向量的模长相乘。
可选地,所述方法还包括:
确定算子间隔参数;
基于所述算子间隔参数设置所述预设二阶优化算法;并基于设置后的预设二阶优化算法执行所述基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型的步骤。
可选地,所述确定算子间隔参数的步骤包括:
计算所述预设二阶优化算法不同时刻的海森矩阵;
计算所述海森矩阵的矩阵相似度;
依据所述矩阵相似度确定所述算子间隔参数。
可选地,所述计算所述海森矩阵的矩阵相似度的步骤包括:
依据预设相似度公式,计算相邻两个时刻的海森矩阵的矩阵相似度;
所述预设相似度公式为:
其中,为t时刻的海森矩阵;为t+1时刻的海森矩阵。
可选地,所述依据所述矩阵相似度确定所述算子间隔参数的步骤包括:
确定初始算子间隔;
判断所述矩阵相似度是否大于预设相似度阈值;
响应于所述矩阵相似度大于所述预设相似度阈值,将所述初始算子间隔加一,生成更新算子间隔;并循环执行所述计算所述海森矩阵的矩阵相似度的步骤直至所述矩阵相似度不大于预设相似度阈值,将所述更新算子间隔确定为所述算子间隔参数。
可选地,所述对所述训练文本数据进行文本预处理,生成训练样本集的步骤包括:
对所述训练文本数据进行分词操作,生成词元数据;
依据所述词元数据构建词汇表;
对所述词汇表进行编码,生成初始词汇编码;
基于预设长度,对所述初始词汇编码进行转换,生成目标词汇编码;
对所述目标词汇编码进行掩码处理,生成所述训练样本集。
在本发明的第二个方面,本发明实施例公开了一种语言模型混合训练装置,包括:
获取模块,用于获取待训练神经网络模型和训练文本数据;
预处理模块,用于对所述训练文本数据进行文本预处理,生成训练样本集;
采集模块,用于采集所述中间神经网络模型的模型参数;
判断模块,用于判断所述模型参数是否触发预设训练切换条件;
第二训练模块,用于响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型。
在本发明的第三个方面,本发明实施例公开了一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的语言模型混合训练方法的步骤。
在本发明的第四个方面,本发明实施例公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的语言模型混合训练方法的步骤。
本发明实施例包括以下优点:
本发明实施例通过获取待训练神经网络模型和训练文本数据;对所述训练文本数据进行文本预处理,生成训练样本集;基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型;采集所述中间神经网络模型的模型参数;判断所述模型参数是否触发预设训练切换条件;响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型;通过预设一阶优化算法与预设二阶优化算法混合的策略,在待训练神经网络模型的训练前期采用预设二阶优化算法进行快速迭代,当满足本发明定义的预设训练切换条件后,训练过程采用预设一阶优化算法,保证训练的准确度;从而基于两种不同阶的优化方式分别对待训练神经网络模型进行训练,提高模型的训练速度和准确度。
附图说明
图1是本发明的一种语言模型混合训练方法实施例的步骤流程图;
图2是本发明的另一种语言模型混合训练方法实施例的步骤流程图;
图3是本发明的另一种语言模型混合训练方法实施例的算子间隔示意图;
图4是本发明的另一种语言模型混合训练方法实施例的向量融合示意图;
图5是本发明的另一种语言模型混合训练方法实施例的向量缩放示意图;
图6是本发明的一种语言模型混合训练方法示例的训练框架示意图;
图7是本发明的一种语言模型混合训练方法示例的训练框架的功能模块示意图;
图8是本发明的一种语言模型混合训练装置实施例的结构框图;
图9是本发明实施例提供的一种电子设备的结构框图;
图10是本发明实施例提供的一种存储介质的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种语言模型混合训练方法实施例的步骤流程图,所述语言模型混合训练方法具体可以包括如下步骤:
步骤101,获取待训练神经网络模型和训练文本数据;
在训练开始时,首先可以获取待训练神经网络模型和训练文本数据。该待训练神经网络模型可以是如卷积神经网络(Convolutional Neural Network,CNN)、循环神经网络(Recurrent neural network,RNN)以及Transformer网络等神经网络模型。本发明实施例对于训练神经网络模型和训练样本集的类型不作具体限定。待训练神经网络模型为该自然语言处理领域的神经网络模型。训练文本数据则是自然语言的文本数据。
步骤102,对所述训练文本数据进行文本预处理,生成训练样本集;
可以对训练文本数据进行文本预处理,对输入的训练文本数据处理至符合模型的要求,以便模型可以正确识别输入内容,生成训练样本集。
步骤103,基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型;
在训练的第一阶段,首先基于预设二阶优化算法(Second-Order OptimizationAlgorithm ,SOOA)输入训练样本集至待训练神经网络模型中。待训练神经网络模型基于这些训练样本集进行标注,识别等训练后生成中间神经网络模型。即该中间神经网络模型为经过预设二阶优化算法训练后的待训练神经网络模型。
预设二阶优化算法本质在于利用样本目标函数(损失函数)的二阶梯度信息(曲率信息)实现模型参数的快速更新。二阶优化算法包括牛顿(Newton)算法及自然梯度下降(Natural Gradient Descent,NGD)算法等。牛顿算法在各次迭代中计算一个二阶的海森矩阵,而自然梯度下降算法在各次迭代中则计算一个Fisher(费歇耳)信息矩阵。
步骤104,采集所述中间神经网络模型的模型参数;
在进行了一次迭代训练后,可以采用中间神经网络模型的模型参数。
步骤105,判断所述模型参数是否触发预设训练切换条件;
判断中间神经网络模型的模型参数是否触发预设训练切换条件,从而确定是继续采用预设二阶优化算法还是切换预设一阶优化算法进行训练。
步骤106,响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型。
当模型参数触发预设训练切换条件时,即预设二阶优化算法的训练准确度已经达到瓶颈。可以切换预设一阶优化算法进行训练,输入训练样本集至中间神经网络模型,生成目标神经网络模型。需要说明的是,预设二阶优化算法和预设一阶优化算法,在切换前后是独立使用,并不嵌套。
此外,当模型参数未触发预设训练切换条件时,继续采用预设二阶优化算法对中间神经网络模型进行训练,以不断迭代中间神经网络模型。
本发明实施例通过获取待训练神经网络模型和训练文本数据;对所述训练文本数据进行文本预处理,生成训练样本集;基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型;采集所述中间神经网络模型的模型参数;判断所述模型参数是否触发预设训练切换条件;响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型;通过预设一阶优化算法与预设二阶优化算法混合的策略,在待训练神经网络模型的训练前期采用预设二阶优化算法进行快速迭代,当满足本发明定义的预设训练切换条件后,训练过程采用预设一阶优化算法,保证训练的准确度;从而基于两种不同阶的优化方式分别对待训练神经网络模型进行训练,提高模型的训练速度和准确度。
参照图2,示出了本发明的另一种语言模型混合训练方法实施例的步骤流程图,所述语言模型混合训练方法具体可以包括如下步骤:
步骤201,获取待训练神经网络模型和训练文本数据;
在训练开始时,可以获取待训练神经网络模型和训练文本数据。
步骤202,对所述训练文本数据进行文本预处理,生成训练样本集;
可以对训练文本数据进行文本预处理,以使训练文本数据可以满足模型训练的要求,生成训练样本集。
具体地,所述对所述训练文本数据进行文本预处理,生成训练样本集的步骤包括:对所述训练文本数据进行分词操作,生成词元数据;依据所述词元数据构建词汇表;对所述词汇表进行编码,生成初始词汇编码;基于预设长度,对所述初始词汇编码进行转换,生成目标词汇编码;对所述目标词汇编码进行掩码处理,生成所述训练样本集。
对于训练文本数据的预处理可以包括分词、构建词汇表、编码、填充或截词、掩码。具体为,在获取到训练文本数据进行分词操作,将文本字符串分割成有意义的单元即词元数据,这些词元数据可以是单词、短语、符号等。然后再将词元数据中的每个词元分配一个唯一的标识符;统计每个字在词向量中的位置构建形成构建词汇表。再将重复的单词进行剔除,保留所有出现过单次词,并按照一定规则为每个唯一的单次分配一个标识符,生成初始词汇编码。再基于预设长度,对初始词汇编码进行转换,对初始词汇编码进行填充或者截断,生成目标词汇编码。如输入的文本为:ABCDE,填充后即为ABCDEXXX。如输入的文本为:FGHIHKLM,截断后即为FGHIH。最后再将目标词汇编码进行掩码处理,生成所述训练样本集;如,将真实的输入文本标记为1,填充输入为0。其中,该预设长度可以根据实际情况进行确定,本发明实施例对此不作具体限定。
步骤203,确定算子间隔参数;
在本发明实施例中,可以针对预设二阶优化算法的算子间隔进行设置,可以确定算子间隔参数。通过算子间隔参数设置算子间隔,如图3所示,设置算子间隔可以避免在各次迭代中频繁地计算上述算子,从而大幅降低计算量。同时,算子的间隔计算也一定程度上保留了历史信息,不同计算节点之间无需进行频繁地信息交互,因而减少数据量的传输量,实现通信内容的低内存占用与高效通信。
在本发明的一可选实施例中,所述确定算子间隔参数的步骤包括:计算所述预设二阶优化算法不同时刻的海森矩阵;计算所述海森矩阵的矩阵相似度;依据所述矩阵相似度确定所述算子间隔参数。
可以通过计算在执行预设二阶优化算法不同时刻的海森矩阵,然后针对不同时刻的海森矩阵,计算连续相邻的两个海森矩阵的矩阵相似度。依据矩阵相似度的大小确定出对应的算子间隔参数。
具体地,依据预设相似度公式,计算相邻两个时刻的海森矩阵的矩阵相似度;所述预设相似度公式为:;
其中,为t时刻的海森矩阵;为t+1时刻的海森矩阵。
可以根据预设相似度公式计算出相邻两个时刻的海森矩阵的矩阵相似度。
具体地,所述依据所述矩阵相似度确定所述算子间隔参数的步骤包括:确定初始算子间隔;判断所述矩阵相似度是否大于预设相似度阈值;响应于所述矩阵相似度大于所述预设相似度阈值,将所述初始算子间隔加一,生成更新算子间隔;并循环执行所述计算所述海森矩阵的矩阵相似度的步骤直至所述矩阵相似度不大于预设相似度阈值,将所述更新算子间隔确定为所述算子间隔参数。
在本发明实施例中,可以首先确定一个初始算子间隔。如初始算子间隔为0。然后每计算得到一个矩阵相似度,即可判断该矩阵相似度是否大于预设相似度阈值。矩阵相似度大于预设相似度阈值即两次迭代是损失接近,海森矩阵及其逆矩阵的计算和存储重复。可以响应于矩阵相似度大于预设相似度阈值,将初始算子间隔加一,生成更新算子间隔;并循环执行所述计算所述海森矩阵的矩阵相似度的步骤直至所述矩阵相似度不大于预设相似度阈值,从而将此次对应的更新算子间隔确定为算子间隔参数。通过基于矩阵相似度去顶算子间隔设计,减少海森矩阵及其逆矩阵的重复计算和存储,降低海森矩阵及其逆矩阵的求解频率与存储开销。
步骤204,基于所述算子间隔参数设置预设二阶优化算法;
根据确定的算子间隔参数设置预设二阶优化算法,以使预设二阶优化算法基于对应的算子间隔进行迭代。
综上,基于针对算子间隔的设置可以用一个示例进行说明:
步骤一:初始化算子间隔Interval=0;
步骤二:在t时刻,计算Newton算法的海森矩阵;
步骤三:在t+1时刻,计算Newton算法的海森矩阵;
步骤四:给定相似度参数,计算矩阵相似度:
;
步骤五:如果,则 Interval=Interval+1, 停止;
步骤六:否则,重复执行步骤三至步骤五,直至停止。
步骤205,基于所述预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型;
在待训练神经网络模型的第一个阶段,可以基于预设二阶优化算法,输入训练样本集至待训练神经网络模型,生成中间神经网络模型。利用预设二阶优化算法提高模型的收敛速率,提高训练的效率,缩短训练时间。
步骤206,采集所述中间神经网络模型的模型参数;
在每一次迭代生成中间神经网络模型时,可以采集中间神经网络模型的模型参数。
在本发明的一可选实施例中,所述方法还包括:
步骤S1,确定所述预设二阶优化算法的第一梯度参数和所述预设一阶优化算法的第二梯度参数;
步骤S2,将所述第一梯度参数和所述第二梯度参数进行融合处理,以使所述预设二阶优化算法切换平滑过渡至所述预设一阶优化算法。
在切换预设二阶优化算法和预设一阶优化算法之前,可以针对预设二阶优化算法和预设一阶优化算法在搜索最优方向上存在的差异,降低在预设二阶优化算法和预设一阶优化算法切换处会出现损失值剧烈震荡的现象;提高模型训练的准确度。
可以确定预设二阶优化算法的第一梯度参数和预设一阶优化算法的第二梯度参数。即第一梯度参数为预设二阶优化算法的梯度参数;第二梯度参数为预设一阶优化算法的梯度参数。然后针对第一梯度参数和第二梯度参数进行融合处理,从而在切换时,模型的参数可以平滑过渡,以使所述预设二阶优化算法切换平滑过渡至所述预设一阶优化算法。
进一步地,所述第一梯度参数为第一梯度向量,所述第二梯度参数为第二梯度向量;所述将所述第一梯度参数和所述第二梯度参数进行融合处理的步骤包括:将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量;对所述目标融合向量进行归一化。
针对于第一梯度参数和第二梯度参数的融合,可以将第一梯度向量和第二梯度向量进行向量的融合,生成目标融合向量;在将目标融合向量基于第一梯度向量进行归一化,使得在优化算法的切换前后可以基于同一尺度进行,进一步保证了切换时的参数平滑过渡。
具体地,所述将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量的步骤包括:对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量;计算所述初始融合向量与所述第一梯度向量的向量夹角;判断所述向量夹角是否不大于预设夹角阈值;响应于所述向量夹角大于所述预设夹角阈值,采用所述初始融合向量作为所述第二梯度向量,并执行所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤,直至所述向量夹角不大于所述预设夹角阈值。
其中,所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤包括:
基于预设融合公式,对所述第一梯度向量和所述第二梯度向量进行矢量相加,得到所述初始融合向量;所述预设融合公式为:
其中,为所述初始融合向量;为所述第二梯度向量,为第一梯度向量。
进一步地,所述计算所述初始融合向量与所述第一梯度向量的向量夹角的步骤包括:基于预设向量夹角公式计算所述初始融合向量与所述第一梯度向量的向量夹角余弦值;依据所述向量夹角余弦值确定所述向量夹角;
所述预设向量夹角公式为:
其中,为所述第一梯度向量的模长,为所述初始融合向量的模长。
通过预设向量夹角公式计算出夹角的余弦值,在基于余弦值求解具体的夹角。通过第一梯度向量和第二梯度向量进行融合,使得融合后的梯度向量方向与切换后算法梯度向量方向趋同,以缓解损失值与精度退化的问题。
综上,以预设二阶优化算法为牛顿算法(Newton算法),预设一阶优化算法(SGD算法)作为一个示例进行说明:
可以参照图4,在t=1时刻,需要分别计算Newton算法和SGD算法在当前时刻各自的梯度方向,分别记为和。此时,计算两者的融合向量。
由于的方向与方向仍然差距较大,因此在t=2时刻,计算向量与的融合向量。即,观察此时方向与方向更趋于一致。
在t=3时刻,再次做与的融合向量,即。此时,较而言,其方向与更接近。
在执行过程中即为:
步骤一. 在t时刻满足算法切换条件,分别计算Newton算法和SGD算法的梯度向量,记为和。
步骤二. 计算和的融合向量。
步骤三. 计算向量与向量的夹角:
其中,和分别表示融合向量的模长及SGD梯度向量的模长。
步骤四. 如果两者间的夹角小于等于给定预设夹角阈值,即
成立,则停止;
步骤五. 否则重复执行上述过程,直到满足判定条件为止。
更进一步地,在针对向量融合得到目标融合向量后,可以针对所述目标融合向量进行归一化。所述对所述目标融合向量进行归一化的步骤包括:计算所述目标融合向量的模长;计算所述第一梯度向量的模长;基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放,以完成所述归一化。
在本发明实施例中,可以基于第一梯度向量的单位模长进归一化。可以分别计算目标融合向量的模长和第一梯度向量的模长;再根据第一梯度向量的模长对目标融合向量的模长进行缩放,以完成归一化。
具体地,所述基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放的步骤包括:依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子;依据所述缩放因子对所述目标融合向量的模长进行缩放。
可以首先依据第一梯度向量的模长和目标融合向量的模长的关系确定缩放因子;在将缩放因子作为控制基准,对目标融合向量的模长进行缩放。
又进一步地,所述依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子的步骤包括:依据预设缩放因子确定公式,计算所述缩放因子;所述预设缩放因子确定公式为:
其中,所述为缩放因子,为所述第一梯度向量的模长,为所述初始融合向量的模长。
又进一步地,所述依据所述缩放因子对所述目标融合向量的模长进行缩放的步骤包括:将所述缩放因子与所述目标融合向量的模长相乘。
可以将缩放因子与目标融合向量的模长相乘,将目标融合向量的模长进行缩放从而完成尺度的统一。
综上,以上述示例的向量进行处理,可以参照图5,在t=3时刻,向量与向量的模长差距明显。因此,缩放因子用以对融合后的梯度向量进行模长的精确调整。
具体为:
步骤一. 计算融合后梯度向量的模长;
步骤二. 计算SGD算法的梯度向量的模长;
步骤三. 计算缩放因子
;
步骤四. 计算融合后梯度向量的缩放模长:即
。
步骤207,判断所述模型参数是否触发预设训练切换条件;
判断模型参数是否触发预设训练切换条件,从而确定是否切换预设一阶优化算法。
在本发明的一可选实施例中,所述模型参数包括迭代次数,所述判断所述模型参数是否触发预设训练切换条件的步骤包括:获取切换迭代数;确定大于所述切换迭代数为所述预设训练切换条件;判断所述迭代次数是否不小于所述切换迭代数;当所述迭代次数不小于所述切换迭代数时,确定所述模型参数触发所述预设训练切换条件。
在本发明实施例中,可以确定基于两种优化算法的之间可以平滑过渡的切换迭代数,将大于切换迭代数确定为预设训练切换条件。判断迭代次数是否不小于切换迭代数。当迭代次数不小于切换迭代数时,确定模型参数触发预设训练切换条件。反之,则不触发。
具体地,所述切换迭代数通过如下方式确定:基于所述预设二阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第一精度曲线数据;基于所述预设一阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第二精度曲线数据;确定所述第一精度曲线数据和所述第二精度曲线数据的交叉点数据;将所述交叉点数据对应的迭代次数确定为所述切换迭代数。
可见,在本发明实施例中可以将预设一阶优化算法与预设二阶优化算法分别单独各自执行一次完整训练过程,即可从中选出适合的切换时机。选择预设一阶优化算法与预设二阶优化算法验证曲线交点,通过在此处预设一阶优化算法与预设二阶优化算法表现出了相当或类似的性能。此时改变优化器可以减少震荡的现象同时提升性能。
以下用一个示例进行说明:
步骤一. 使用二阶优化Newton算法在Cifar10数据集上训练Resnet32模型100个epoch,获取100次验证集的精度曲线;
步骤二. 使用一阶优化SGD算法在Cifar10数据集上训练Resnet32模型100个epoch,获取100次验证集的精度曲线;
步骤三. 寻找二阶优化Newton算法与一阶优化SGD算法的第一个验证精度曲线交叉点;
步骤四. 将该验证精度曲线交叉点对应的epoch数(迭代数)作为启发式切换条件。
在本发明的一可选实施例中,所述预设训练切换条件包括切换阈值;所述判断所述模型参数是否触发预设训练切换条件的步骤包括:依据所述模型参数计算单位时间损失变化率;判断所述单位时间损失变化率是否不大于切换阈值;当所述单位时间损失变化率不大于所述切换阈值时,确定所述模型参数触发所述预设训练切换条件。
在本发明实施中,可以针对模型参数计算单位时间损失变化率;通过单位时间损失变化率作为自适应切换条件,该条件定义了基于损失值与验证精度的衡量指标,通过该指标的设计避免了算法的重复执行,提升了训练效率。判断单位时间损失变化率是否不大于切换阈值;当单位时间损失变化率不大于所述切换阈值时,确定模型参数触发所述预设训练切换条件,反之,则不触发。
进一步地,所述模型参数包括验证精度值和损失值,所述依据所述模型参数计算单位时间损失变化率的步骤包括:在预设迭代间隔中,依据所述验证精度值和损失值计算单位时间损失变化率。
具体地,所述依据所述验证精度值和损失值计算单位时间损失变化率的步骤包括:基于预设自适应公式,依据所述验证精度值和损失值计算单位时间损失变化率。
在实际应用中所述预设自适应公式为:
其中,和表示两个非负常数并且;表示在第次迭代中目标函数的损失值,表示在第次迭代所对应的验证精度值,表示所述预设迭代间隔,为单位时间损失变化率。
可见,在一次完整的训练过程中发现适合的切换条件,而无需进行多次完整训练确定切换时机,因而训练效率提升明显。
以下用一个示例进行说明:
步骤一. 使用二阶优化Newton算法在Cifar10数据集上训练Resnet32模型h个epoch,并获取h次验证集的精度曲线;
步骤二. 计算h个迭代间隔内Newton算法的自适应切换条件ASC;
步骤三. 给定阈值,如果ASC小于或等于,即:
则将Newton算法切换为SGD算法;
步骤四. 如果不满足上述条件,则继续迭代执行Newton算法,重新执行ASC。
步骤208,响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型。
当模型参数触发预设训练切换条件时,即预设二阶优化算法的训练准确度已经达到瓶颈。可以切换预设一阶优化算法进行训练,输入训练样本集至中间神经网络模型,生成目标神经网络模型。
为了使得本领域技术人员可以更清楚本发明实施例的实施过程,以下用一个示例进行说明:
参照图6,为本发明的二阶与一阶算法混合的训练框架。该框架中可以分别使用二阶与一阶算法对模型进行训练。
具体地,可以参照图7,对于训练过程包括3个主要模块进行训练:算法切换条件模块、参数平滑处理模块、以及算子间隔设置模块。
1)算法切换条件模块。该模块主要的功能是制定训练过程中二阶算法向一阶算法切换机制,即构建算法切换的触发条件并完成算法转化等。本示例提出两种算法切换条件,包括启发式切换条件、自适应切换条件。
2)参数平滑处理模块。该模块针对算法切换时参数震荡问题提出了参数平滑方法。通过构建由二阶算法的梯度向量与一阶算法的梯度向量融合的合成向量,并用融合后的向量代替二阶算法及一阶算法,当融合后向量方向与一阶算法梯度向量趋同后,则完成算法由二阶算法切换到一阶算法的过程。
3)算子间隔模块。针对二阶算法,由于各次迭代均需要求解海森矩阵或Fisher信息矩阵、及其逆矩阵、特征值矩阵等算子,这些算子的存储与计算开销过大。因此,本示例通过确定算子间隔,避免在各次迭代中频繁地计算上述算子,从而大幅降低计算量。同时,算子的间隔计算也一定程度上保留了历史信息,不同计算节点之间无需进行频繁地信息交互,因而减少数据量的传输量,实现通信内容的低内存占用与高效通信。
具体地执行如下:
输入:总迭代次数T,参数,,,学习率。
输出:模型参数以及相应的分类结果。
Step0: 根据矩阵相似度的算子间隔设计方法确定二阶Newton算法的算子;
更新间隔参数Interval;
循环迭代次数指标t={1, 1+Interval, 1+2*Interval, 1+3*Interval…,} Do
Step1.计算节点在第t次迭代中执行Newton算法,计算其海森矩阵及更新模
型参数;
Step2.计算节点选择相应的算法切换条件:
如选择启发式切换条件为Do/*启发式切换条件工作流程
A. 使用二阶Newton算法执行100次迭代并获取验证精度曲线;
B. 使用一阶SGD算法执行100次迭代并获取验证精度曲线;
C. 寻找Newton算法与SGD算法的第一个验证精度曲线交叉点作为切换条件,即在第Q个迭代时切换算法。
否则选择自适应切换条件为DO/*自适应式切换条件工作流程。
A. 计算自适应条件ASC;
B. 如果,则触发自适应切换条件,即在第Q个迭代时切换算法。
结束。
Step3.在t=Q次迭代中,计算Newton算法与SGD算法的梯度向量分别记为和。
Step4. 计算梯度向量和的夹角,如果则获得融合向量并停止融合。否则,多次进行融合直达满足阈值条件为止;
Step5.对融合后的梯度向量进行缩放处理,得到最终融合向量;
循环迭代指标t={Q, Q+2, Q+3,…,T} Do/*切换一阶算法训练直至收敛
Step6. 基于并使用SGD算法对模型参数更新:
,直至模型收敛。
Step7.输出模型参数以及相应的分类结果。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图8,示出了本发明的一种模型混合训练装置实施例的结构框图,具体可以包括如下模块:
获取模块801,用于获取待训练神经网络模型和训练文本数据;
预处理模块802,用于对所述训练文本数据进行文本预处理,生成训练样本集;
第一训练模块803,用于基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型;
采集模块804,用于采集所述中间神经网络模型的模型参数;
判断模块805,用于判断所述模型参数是否触发预设训练切换条件;
第二训练模块806,用于响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型。
在本发明的一可选实施例中,所述装置还包括:
参数确定模块,用于确定所述预设二阶优化算法的第一梯度参数和所述预设一阶优化算法的第二梯度参数;
过渡模块,用于将所述第一梯度参数和所述第二梯度参数进行融合处理,以使所述预设二阶优化算法切换平滑过渡至所述预设一阶优化算法
在本发明的一可选实施例中,所述模型参数包括迭代次数,所述判断模块805包括:
第一获取子模块,用于获取切换迭代数;
条件确定子模块,用于确定大于所述切换迭代数为所述预设训练切换条件;
第一判断子模块,用于判断所述迭代次数是否不小于所述切换迭代数;
第一触发子模块,用于当所述迭代次数不小于所述切换迭代数时,确定所述模型参数触发所述预设训练切换条件。
在本发明的一可选实施例中,所述切换迭代数通过如下方式确定:
基于所述预设二阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第一精度曲线数据;
基于所述预设一阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第二精度曲线数据;
确定所述第一精度曲线数据和所述第二精度曲线数据的交叉点数据;
将所述交叉点数据对应的迭代次数确定为所述切换迭代数。
在本发明的一可选实施例中,所述预设训练切换条件包括切换阈值;所述判断模块,用于包括:
变化计算子模块,用于依据所述模型参数计算单位时间损失变化率;
第二判断子模块,用于判断所述单位时间损失变化率是否不大于切换阈值;
第二切换子模块,用于当所述单位时间损失变化率不大于所述切换阈值时,确定所述模型参数触发所述预设训练切换条件。
在本发明的一可选实施例中,所述模型参数包括验证精度值和损失值,所述变化计算子模块包括:
变化计算单元,用于在预设迭代间隔中,依据所述验证精度值和损失值计算单位时间损失变化率。
在本发明的一可选实施例中,所述变化计算单元包括:
变化计算子单元,用于基于预设自适应公式,依据所述验证精度值和损失值计算单位时间损失变化率。
在本发明的一可选实施例中,所述预设自适应公式为:
其中,和表示两个非负常数并且;表示在第次迭代中目标函数的损失值,表示在第次迭代所对应的验证精度值,表示所述预设迭代间隔,为单位时间损失变化率。
在本发明的一可选实施例中,所述第一梯度参数为第一梯度向量,所述第二梯度参数为第二梯度向量;所述过渡模块包括:
融合子模块,用于将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量;
归一子模块,用于对所述目标融合向量进行归一化。
在本发明的一可选实施例中,所述将所述融合子模块包括:
相加单元,用于对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量;
夹角计算单元,用于计算所述初始融合向量与所述第一梯度向量的向量夹角;
第四判断单元,用于判断所述向量夹角是否不大于预设夹角阈值;
融合单元,用于响应于所述向量夹角大于所述预设夹角阈值,采用所述初始融合向量作为所述第二梯度向量,并执行所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤,直至所述向量夹角不大于所述预设夹角阈值。
在本发明的一可选实施例中,所述相加单元包括:
矢量相加子单元,用于基于预设融合公式,对所述第一梯度向量和所述第二梯度向量进行矢量相加,得到所述初始融合向量;
所述预设融合公式为:
其中,为所述初始融合向量;为所述第二梯度向量,为第一梯度向量。
在本发明的一可选实施例中,所述夹角计算单元包括:
余弦计算子单元,用于基于预设向量夹角公式计算所述初始融合向量与所述第一梯度向量的向量夹角余弦值;
夹角计算子单元,用于依据所述向量夹角余弦值确定所述向量夹角;
所述预设向量夹角公式为:
其中,为所述第一梯度向量的模长,为所述初始融合向量的模长。
在本发明的一可选实施例中,所述归一子模块包括:
第一模长计算单元,用于计算所述目标融合向量的模长;
第二模长计算单元,用于计算所述第一梯度向量的模长;
归一化单元,用于基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放,以完成所述归一化。
在本发明的一可选实施例中,所述归一化单元包括:
缩放因子确定子单元,用于依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子;
缩放子单元,用于依据所述缩放因子对所述目标融合向量的模长进行缩放。
在本发明的一可选实施例中,所述缩放因子确定子单元包括:
缩放因子计算子单元依据预设缩放因子确定公式,计算所述缩放因子;
所述预设缩放因子确定公式为:
其中,所述为缩放因子,为所述第一梯度向量的模长,为所述初始融合向量的模长。
在本发明的一可选实施例中,所述缩放子单元包括:
模长相乘子单元,用于将所述缩放因子与所述目标融合向量的模长相乘。
在本发明的一可选实施例中,所述装置还包括:
算子间隔参数确定模块,用于确定算子间隔参数;
执行模块,用于基于所述算子间隔参数设置所述预设二阶优化算法;并基于设置后的预设二阶优化算法执行所述基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型的步骤。
在本发明的一可选实施例中,所述算子间隔参数确定模块包括:
海森矩阵计算子模块,用于计算所述预设二阶优化算法不同时刻的海森矩阵;
矩阵相似度计算子模块,用于计算所述海森矩阵的矩阵相似度;
算子间隔参数确定子模块,用于依据所述矩阵相似度确定所述算子间隔参数。
在本发明的一可选实施例中,所述矩阵相似度计算子模块包括:
矩阵相似度计算单元,用于依据预设相似度公式,计算相邻两个时刻的海森矩阵的矩阵相似度;
所述预设相似度公式为:
其中,为t时刻的海森矩阵;为t+1时刻的海森矩阵。
在本发明的一可选实施例中,所述算子间隔参数确定子模块包括:
初始算子间隔确定单元,用于确定初始算子间隔;
第五判断单元,用于判断所述矩阵相似度是否大于预设相似度阈值;
算子间隔参数确定单元,用于响应于所述矩阵相似度大于所述预设相似度阈值,将所述初始算子间隔加一,生成更新算子间隔;并循环执行所述计算所述海森矩阵的矩阵相似度的步骤直至所述矩阵相似度不大于预设相似度阈值,将所述更新算子间隔确定为所述算子间隔参数。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还公开了一种语言神经网络模型,所述语言神经网络模型通过上述方式训练生成。其中,所述语言模型混合训练方法,包括:
获取待训练神经网络模型和训练文本数据;
对所述训练文本数据进行文本预处理,生成训练样本集;
基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型;
采集所述中间神经网络模型的模型参数;
判断所述模型参数是否触发预设训练切换条件;
响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型。
可选地,在所述基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型的步骤之前,所述方法还包括:
确定所述预设二阶优化算法的第一梯度参数和所述预设一阶优化算法的第二梯度参数;
将所述第一梯度参数和所述第二梯度参数进行融合处理,以使所述预设二阶优化算法切换平滑过渡至所述预设一阶优化算法。
可选地,所述模型参数包括迭代次数,所述判断所述模型参数是否触发预设训练切换条件的步骤包括:
获取切换迭代数;
确定大于所述切换迭代数为所述预设训练切换条件;
判断所述迭代次数是否不小于所述切换迭代数;
当所述迭代次数不小于所述切换迭代数时,确定所述模型参数触发所述预设训练切换条件。
可选地,所述切换迭代数通过如下方式确定:
基于所述预设二阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第一精度曲线数据;
基于所述预设一阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第二精度曲线数据;
确定所述第一精度曲线数据和所述第二精度曲线数据的交叉点数据;
将所述交叉点数据对应的迭代次数确定为所述切换迭代数。
可选地,所述预设训练切换条件包括切换阈值;所述判断所述模型参数是否触发预设训练切换条件的步骤包括:
依据所述模型参数计算单位时间损失变化率;
判断所述单位时间损失变化率是否不大于切换阈值;
当所述单位时间损失变化率不大于所述切换阈值时,确定所述模型参数触发所述预设训练切换条件。
可选地,所述模型参数包括验证精度值和损失值,所述依据所述模型参数计算单位时间损失变化率的步骤包括:
在预设迭代间隔中,依据所述验证精度值和损失值计算单位时间损失变化率。
可选地,所述依据所述验证精度值和损失值计算单位时间损失变化率的步骤包括:
基于预设自适应公式,依据所述验证精度值和损失值计算单位时间损失变化率。
可选地,所述预设自适应公式为:
其中,和表示两个非负常数并且;表示在第次迭代中目标函数的损失值,表示在第次迭代所对应的验证精度值,表示所述预设迭代间隔,为单位时间损失变化率。
可选地,所述第一梯度参数为第一梯度向量,所述第二梯度参数为第二梯度向量;所述将所述第一梯度参数和所述第二梯度参数进行融合处理的步骤包括:
将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量;
对所述目标融合向量进行归一化。
可选地,所述将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量的步骤包括:
对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量;
计算所述初始融合向量与所述第一梯度向量的向量夹角;
判断所述向量夹角是否不大于预设夹角阈值;
响应于所述向量夹角大于所述预设夹角阈值,采用所述初始融合向量作为所述第二梯度向量,并执行所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤,直至所述向量夹角不大于所述预设夹角阈值。
可选地,所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤包括:
基于预设融合公式,对所述第一梯度向量和所述第二梯度向量进行矢量相加,得到所述初始融合向量;
所述预设融合公式为:
其中,为所述初始融合向量;为所述第二梯度向量,为第一梯度向量。
可选地,所述计算所述初始融合向量与所述第一梯度向量的向量夹角的步骤包括:
基于预设向量夹角公式计算所述初始融合向量与所述第一梯度向量的向量夹角余弦值;
依据所述向量夹角余弦值确定所述向量夹角;
所述预设向量夹角公式为:
其中,为所述第一梯度向量的模长,为所述初始融合向量的模长。
可选地,所述对所述目标融合向量进行归一化的步骤包括:
计算所述目标融合向量的模长;
计算所述第一梯度向量的模长;
基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放,以完成所述归一化。
可选地,所述基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放的步骤包括:
依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子;
依据所述缩放因子对所述目标融合向量的模长进行缩放。
可选地,所述依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子的步骤包括:
依据预设缩放因子确定公式,计算所述缩放因子;
所述预设缩放因子确定公式为:
其中,所述为缩放因子,为所述第一梯度向量的模长,为所述初始融合向量的模长。
可选地,所述依据所述缩放因子对所述目标融合向量的模长进行缩放的步骤包括:
将所述缩放因子与所述目标融合向量的模长相乘。
可选地,所述方法还包括:
确定算子间隔参数;
基于所述算子间隔参数设置所述预设二阶优化算法;并基于设置后的预设二阶优化算法执行所述基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型的步骤。
可选地,所述确定算子间隔参数的步骤包括:
计算所述预设二阶优化算法不同时刻的海森矩阵;
计算所述海森矩阵的矩阵相似度;
依据所述矩阵相似度确定所述算子间隔参数。
可选地,所述计算所述海森矩阵的矩阵相似度的步骤包括:
依据预设相似度公式,计算相邻两个时刻的海森矩阵的矩阵相似度;
所述预设相似度公式为:
其中,为t时刻的海森矩阵;为t+1时刻的海森矩阵。
可选地,所述依据所述矩阵相似度确定所述算子间隔参数的步骤包括:
确定初始算子间隔;
判断所述矩阵相似度是否大于预设相似度阈值;
响应于所述矩阵相似度大于所述预设相似度阈值,将所述初始算子间隔加一,生成更新算子间隔;并循环执行所述计算所述海森矩阵的矩阵相似度的步骤直至所述矩阵相似度不大于预设相似度阈值,将所述更新算子间隔确定为所述算子间隔参数。
可选地,所述对所述训练文本数据进行文本预处理,生成训练样本集的步骤包括:
对所述训练文本数据进行分词操作,生成词元数据;
依据所述词元数据构建词汇表;
对所述词汇表进行编码,生成初始词汇编码;
基于预设长度,对所述初始词汇编码进行转换,生成目标词汇编码;
对所述目标词汇编码进行掩码处理,生成所述训练样本集。
参照图9,本发明实施例还提供了一种电子设备,包括:
处理器901和存储介质902,所述存储介质902存储有所述处理器901可执行的计算机程序,当电子设备运行时,所述处理器901执行所述计算机程序,以执行如本发明实施例任一项所述的语言模型混合训练方法。
所述语言模型混合训练方法,包括:
获取待训练神经网络模型和训练文本数据;
对所述训练文本数据进行文本预处理,生成训练样本集;
基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型;
采集所述中间神经网络模型的模型参数;
判断所述模型参数是否触发预设训练切换条件;
响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型。
可选地,在所述基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型的步骤之前,所述方法还包括:
确定所述预设二阶优化算法的第一梯度参数和所述预设一阶优化算法的第二梯度参数;
将所述第一梯度参数和所述第二梯度参数进行融合处理,以使所述预设二阶优化算法切换平滑过渡至所述预设一阶优化算法。
可选地,所述模型参数包括迭代次数,所述判断所述模型参数是否触发预设训练切换条件的步骤包括:
获取切换迭代数;
确定大于所述切换迭代数为所述预设训练切换条件;
判断所述迭代次数是否不小于所述切换迭代数;
当所述迭代次数不小于所述切换迭代数时,确定所述模型参数触发所述预设训练切换条件。
可选地,所述切换迭代数通过如下方式确定:
基于所述预设二阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第一精度曲线数据;
基于所述预设一阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第二精度曲线数据;
确定所述第一精度曲线数据和所述第二精度曲线数据的交叉点数据;
将所述交叉点数据对应的迭代次数确定为所述切换迭代数。
可选地,所述预设训练切换条件包括切换阈值;所述判断所述模型参数是否触发预设训练切换条件的步骤包括:
依据所述模型参数计算单位时间损失变化率;
判断所述单位时间损失变化率是否不大于切换阈值;
当所述单位时间损失变化率不大于所述切换阈值时,确定所述模型参数触发所述预设训练切换条件。
可选地,所述模型参数包括验证精度值和损失值,所述依据所述模型参数计算单位时间损失变化率的步骤包括:
在预设迭代间隔中,依据所述验证精度值和损失值计算单位时间损失变化率。
可选地,所述依据所述验证精度值和损失值计算单位时间损失变化率的步骤包括:
基于预设自适应公式,依据所述验证精度值和损失值计算单位时间损失变化率。
可选地,所述预设自适应公式为:
其中,和表示两个非负常数并且;表示在第次迭代中目标函数的损失值,表示在第次迭代所对应的验证精度值,表示所述预设迭代间隔,为单位时间损失变化率。
可选地,所述第一梯度参数为第一梯度向量,所述第二梯度参数为第二梯度向量;所述将所述第一梯度参数和所述第二梯度参数进行融合处理的步骤包括:
将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量;
对所述目标融合向量进行归一化。
可选地,所述将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量的步骤包括:
对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量;
计算所述初始融合向量与所述第一梯度向量的向量夹角;
判断所述向量夹角是否不大于预设夹角阈值;
响应于所述向量夹角大于所述预设夹角阈值,采用所述初始融合向量作为所述第二梯度向量,并执行所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤,直至所述向量夹角不大于所述预设夹角阈值。
可选地,所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤包括:
基于预设融合公式,对所述第一梯度向量和所述第二梯度向量进行矢量相加,得到所述初始融合向量;
所述预设融合公式为:
其中,为所述初始融合向量;为所述第二梯度向量,为第一梯度向量。
可选地,所述计算所述初始融合向量与所述第一梯度向量的向量夹角的步骤包括:
基于预设向量夹角公式计算所述初始融合向量与所述第一梯度向量的向量夹角余弦值;
依据所述向量夹角余弦值确定所述向量夹角;
所述预设向量夹角公式为:
其中,为所述第一梯度向量的模长,为所述初始融合向量的模长。
可选地,所述对所述目标融合向量进行归一化的步骤包括:
计算所述目标融合向量的模长;
计算所述第一梯度向量的模长;
基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放,以完成所述归一化。
可选地,所述基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放的步骤包括:
依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子;
依据所述缩放因子对所述目标融合向量的模长进行缩放。
可选地,所述依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子的步骤包括:
依据预设缩放因子确定公式,计算所述缩放因子;
所述预设缩放因子确定公式为:
其中,所述为缩放因子,为所述第一梯度向量的模长,为所述初始融合向量的模长。
可选地,所述依据所述缩放因子对所述目标融合向量的模长进行缩放的步骤包括:
将所述缩放因子与所述目标融合向量的模长相乘。
可选地,所述方法还包括:
确定算子间隔参数;
基于所述算子间隔参数设置所述预设二阶优化算法;并基于设置后的预设二阶优化算法执行所述基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型的步骤。
可选地,所述确定算子间隔参数的步骤包括:
计算所述预设二阶优化算法不同时刻的海森矩阵;
计算所述海森矩阵的矩阵相似度;
依据所述矩阵相似度确定所述算子间隔参数。
可选地,所述计算所述海森矩阵的矩阵相似度的步骤包括:
依据预设相似度公式,计算相邻两个时刻的海森矩阵的矩阵相似度;
所述预设相似度公式为:
其中,为t时刻的海森矩阵;为t+1时刻的海森矩阵。
可选地,所述依据所述矩阵相似度确定所述算子间隔参数的步骤包括:
确定初始算子间隔;
判断所述矩阵相似度是否大于预设相似度阈值;
响应于所述矩阵相似度大于所述预设相似度阈值,将所述初始算子间隔加一,生成更新算子间隔;并循环执行所述计算所述海森矩阵的矩阵相似度的步骤直至所述矩阵相似度不大于预设相似度阈值,将所述更新算子间隔确定为所述算子间隔参数。
可选地,所述对所述训练文本数据进行文本预处理,生成训练样本集的步骤包括:
对所述训练文本数据进行分词操作,生成词元数据;
依据所述词元数据构建词汇表;
对所述词汇表进行编码,生成初始词汇编码;
基于预设长度,对所述初始词汇编码进行转换,生成目标词汇编码;
对所述目标词汇编码进行掩码处理,生成所述训练样本集。
其中,存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
参照图10,本发明实施例还提供了一种计算机可读存储介质1001,所述存储介质1001上存储有计算机程序,所述计算机程序被处理器运行时执行如本发明实施例任一项所述的语言模型混合训练方法。
所述语言模型混合训练方法,包括:
获取待训练神经网络模型和训练文本数据;
对所述训练文本数据进行文本预处理,生成训练样本集;
基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型;
采集所述中间神经网络模型的模型参数;
判断所述模型参数是否触发预设训练切换条件;
响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型。
可选地,在所述基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型的步骤之前,所述方法还包括:
确定所述预设二阶优化算法的第一梯度参数和所述预设一阶优化算法的第二梯度参数;
将所述第一梯度参数和所述第二梯度参数进行融合处理,以使所述预设二阶优化算法切换平滑过渡至所述预设一阶优化算法。
可选地,所述模型参数包括迭代次数,所述判断所述模型参数是否触发预设训练切换条件的步骤包括:
获取切换迭代数;
确定大于所述切换迭代数为所述预设训练切换条件;
判断所述迭代次数是否不小于所述切换迭代数;
当所述迭代次数不小于所述切换迭代数时,确定所述模型参数触发所述预设训练切换条件。
可选地,所述切换迭代数通过如下方式确定:
基于所述预设二阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第一精度曲线数据;
基于所述预设一阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第二精度曲线数据;
确定所述第一精度曲线数据和所述第二精度曲线数据的交叉点数据;
将所述交叉点数据对应的迭代次数确定为所述切换迭代数。
可选地,所述预设训练切换条件包括切换阈值;所述判断所述模型参数是否触发预设训练切换条件的步骤包括:
依据所述模型参数计算单位时间损失变化率;
判断所述单位时间损失变化率是否不大于切换阈值;
当所述单位时间损失变化率不大于所述切换阈值时,确定所述模型参数触发所述预设训练切换条件。
可选地,所述模型参数包括验证精度值和损失值,所述依据所述模型参数计算单位时间损失变化率的步骤包括:
在预设迭代间隔中,依据所述验证精度值和损失值计算单位时间损失变化率。
可选地,所述依据所述验证精度值和损失值计算单位时间损失变化率的步骤包括:
基于预设自适应公式,依据所述验证精度值和损失值计算单位时间损失变化率。
可选地,所述预设自适应公式为:
其中,和表示两个非负常数并且;表示在第次迭代中目标函数的损失值,表示在第次迭代所对应的验证精度值,表示所述预设迭代间隔,为单位时间损失变化率。
可选地,所述第一梯度参数为第一梯度向量,所述第二梯度参数为第二梯度向量;所述将所述第一梯度参数和所述第二梯度参数进行融合处理的步骤包括:
将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量;
对所述目标融合向量进行归一化。
可选地,所述将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量的步骤包括:
对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量;
计算所述初始融合向量与所述第一梯度向量的向量夹角;
判断所述向量夹角是否不大于预设夹角阈值;
响应于所述向量夹角大于所述预设夹角阈值,采用所述初始融合向量作为所述第二梯度向量,并执行所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤,直至所述向量夹角不大于所述预设夹角阈值。
可选地,所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤包括:
基于预设融合公式,对所述第一梯度向量和所述第二梯度向量进行矢量相加,得到所述初始融合向量;
所述预设融合公式为:
其中,为所述初始融合向量;为所述第二梯度向量,为第一梯度向量。
可选地,所述计算所述初始融合向量与所述第一梯度向量的向量夹角的步骤包括:
基于预设向量夹角公式计算所述初始融合向量与所述第一梯度向量的向量夹角余弦值;
依据所述向量夹角余弦值确定所述向量夹角;
所述预设向量夹角公式为:
其中,为所述第一梯度向量的模长,为所述初始融合向量的模长。
可选地,所述对所述目标融合向量进行归一化的步骤包括:
计算所述目标融合向量的模长;
计算所述第一梯度向量的模长;
基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放,以完成所述归一化。
可选地,所述基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放的步骤包括:
依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子;
依据所述缩放因子对所述目标融合向量的模长进行缩放。
可选地,所述依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子的步骤包括:
依据预设缩放因子确定公式,计算所述缩放因子;
所述预设缩放因子确定公式为:
其中,所述为缩放因子,为所述第一梯度向量的模长,为所述初始融合向量的模长。
可选地,所述依据所述缩放因子对所述目标融合向量的模长进行缩放的步骤包括:
将所述缩放因子与所述目标融合向量的模长相乘。
可选地,所述方法还包括:
确定算子间隔参数;
基于所述算子间隔参数设置所述预设二阶优化算法;并基于设置后的预设二阶优化算法执行所述基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型的步骤。
可选地,所述确定算子间隔参数的步骤包括:
计算所述预设二阶优化算法不同时刻的海森矩阵;
计算所述海森矩阵的矩阵相似度;
依据所述矩阵相似度确定所述算子间隔参数。
可选地,所述计算所述海森矩阵的矩阵相似度的步骤包括:
依据预设相似度公式,计算相邻两个时刻的海森矩阵的矩阵相似度;
所述预设相似度公式为:
其中,为t时刻的海森矩阵;为t+1时刻的海森矩阵。
可选地,所述依据所述矩阵相似度确定所述算子间隔参数的步骤包括:
确定初始算子间隔;
判断所述矩阵相似度是否大于预设相似度阈值;
响应于所述矩阵相似度大于所述预设相似度阈值,将所述初始算子间隔加一,生成更新算子间隔;并循环执行所述计算所述海森矩阵的矩阵相似度的步骤直至所述矩阵相似度不大于预设相似度阈值,将所述更新算子间隔确定为所述算子间隔参数。
可选地,所述对所述训练文本数据进行文本预处理,生成训练样本集的步骤包括:
对所述训练文本数据进行分词操作,生成词元数据;
依据所述词元数据构建词汇表;
对所述词汇表进行编码,生成初始词汇编码;
基于预设长度,对所述初始词汇编码进行转换,生成目标词汇编码;
对所述目标词汇编码进行掩码处理,生成所述训练样本集。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种语言模型混合训练方法、一种语言模型混合训练装置、一种电子设备和一种存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (24)
1.一种语言模型混合训练方法,其特征在于,包括:
获取待训练神经网络模型和训练文本数据;
对所述训练文本数据进行文本预处理,生成训练样本集;
基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型;
采集所述中间神经网络模型的模型参数;所述模型参数包括迭代次数;
判断所述模型参数是否触发预设训练切换条件;所述预设训练切换条件包括所述迭代次数大于切换迭代数,或,切换阈值,所述切换阈值为待训练神经网络模型的损失值与验证精度的衡量指标;
响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型。
2.根据权利要求1所述的方法,其特征在于,在所述基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型的步骤之前,所述方法还包括:
确定所述预设二阶优化算法的第一梯度参数和所述预设一阶优化算法的第二梯度参数;
将所述第一梯度参数和所述第二梯度参数进行融合处理,以使所述预设二阶优化算法切换平滑过渡至所述预设一阶优化算法。
3.根据权利要求1所述的方法,其特征在于,所述模型参数包括迭代次数,所述判断所述模型参数是否触发预设训练切换条件的步骤包括:
获取所述切换迭代数;
判断所述迭代次数是否不小于所述切换迭代数;
当所述迭代次数不小于所述切换迭代数时,确定所述模型参数触发所述预设训练切换条件。
4.根据权利要求3所述的方法,其特征在于,所述切换迭代数通过如下方式确定:
基于所述预设二阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第一精度曲线数据;
基于所述预设一阶优化算法,在所述训练样本集上对所述待训练神经网络模型进行迭代训练,得到第二精度曲线数据;
确定所述第一精度曲线数据和所述第二精度曲线数据的交叉点数据;
将所述交叉点数据对应的迭代次数确定为所述切换迭代数。
5.根据权利要求1所述的方法,其特征在于,所述判断所述模型参数是否触发预设训练切换条件的步骤包括:
依据所述模型参数计算单位时间损失变化率;
判断所述单位时间损失变化率是否不大于切换阈值;
当所述单位时间损失变化率不大于所述切换阈值时,确定所述模型参数触发所述预设训练切换条件。
6.根据权利要求5所述的方法,其特征在于,所述模型参数包括验证精度值和损失值,所述依据所述模型参数计算单位时间损失变化率的步骤包括:
在预设迭代间隔中,依据所述验证精度值和损失值计算单位时间损失变化率。
7.根据权利要求6所述的方法,其特征在于,所述依据所述验证精度值和损失值计算单位时间损失变化率的步骤包括:
基于预设自适应公式,依据所述验证精度值和损失值计算单位时间损失变化率。
8.根据权利要求7所述的方法,其特征在于,所述预设自适应公式为:
其中, 和 表示两个非负常数并且; 表示在第次迭代中目标函数的损失值, 表示在第次迭代所对应的验证精度值, 表示所述预设迭代间隔,为单位时间损失变化率。
9.根据权利要求2所述的方法,其特征在于,所述第一梯度参数为第一梯度向量,所述第二梯度参数为第二梯度向量;所述将所述第一梯度参数和所述第二梯度参数进行融合处理的步骤包括:
将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量;
对所述目标融合向量进行归一化。
10.根据权利要求9所述的方法,其特征在于,所述将所述第一梯度向量和所述第二梯度向量进行融合,生成目标融合向量的步骤包括:
对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量;
计算所述初始融合向量与所述第一梯度向量的向量夹角;
判断所述向量夹角是否不大于预设夹角阈值;
响应于所述向量夹角大于所述预设夹角阈值,采用所述初始融合向量作为所述第二梯度向量,并执行所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤,直至所述向量夹角不大于所述预设夹角阈值。
11.根据权利要求10所述的方法,其特征在于,所述对所述第一梯度向量和所述第二梯度向量进行相加,得到初始融合向量的步骤包括:
基于预设融合公式,对所述第一梯度向量和所述第二梯度向量进行矢量相加,得到所述初始融合向量;
所述预设融合公式为:
其中,为所述初始融合向量;为所述第二梯度向量,为第一梯度向量。
12.根据权利要求11所述的方法,其特征在于,所述计算所述初始融合向量与所述第一梯度向量的向量夹角的步骤包括:
基于预设向量夹角公式计算所述初始融合向量与所述第一梯度向量的向量夹角余弦值;
依据所述向量夹角余弦值确定所述向量夹角;
所述预设向量夹角公式为:
其中,为所述第一梯度向量的模长,为所述初始融合向量的模长。
13.根据权利要求12所述的方法,其特征在于,所述对所述目标融合向量进行归一化的步骤包括:
计算所述目标融合向量的模长;
计算所述第一梯度向量的模长;
基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放,以完成所述归一化。
14.根据权利要求13所述的方法,其特征在于,所述基于所述第一梯度向量的模长对所述目标融合向量的模长进行缩放的步骤包括:
依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子;
依据所述缩放因子对所述目标融合向量的模长进行缩放。
15.根据权利要求14所述的方法,其特征在于,所述依据所述第一梯度向量的模长和所述目标融合向量的模长,确定缩放因子的步骤包括:
依据预设缩放因子确定公式,计算所述缩放因子;
所述预设缩放因子确定公式为:
其中,所述为缩放因子,为所述第一梯度向量的模长,为所述初始融合向量的模长。
16.根据权利要求15所述的方法,其特征在于,所述依据所述缩放因子对所述目标融合向量的模长进行缩放的步骤包括:
将所述缩放因子与所述目标融合向量的模长相乘。
17.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定算子间隔参数;
基于所述算子间隔参数设置所述预设二阶优化算法;并基于设置后的预设二阶优化算法执行所述基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型的步骤。
18.根据权利要求17所述的方法,其特征在于,所述确定算子间隔参数的步骤包括:
计算所述预设二阶优化算法不同时刻的海森矩阵;
计算所述海森矩阵的矩阵相似度;
依据所述矩阵相似度确定所述算子间隔参数。
19.根据权利要求18所述的方法,其特征在于,所述计算所述海森矩阵的矩阵相似度的步骤包括:
依据预设相似度公式,计算相邻两个时刻的海森矩阵的矩阵相似度;
所述预设相似度公式为:
其中,为t时刻的海森矩阵;为t+1时刻的海森矩阵。
20.根据权利要求19所述的方法,其特征在于,所述依据所述矩阵相似度确定所述算子间隔参数的步骤包括:
确定初始算子间隔;
判断所述矩阵相似度是否大于预设相似度阈值;
响应于所述矩阵相似度大于所述预设相似度阈值,将所述初始算子间隔加一,生成更新算子间隔;并循环执行所述计算所述海森矩阵的矩阵相似度的步骤直至所述矩阵相似度不大于预设相似度阈值,将所述更新算子间隔确定为所述算子间隔参数。
21.根据权利要求1所述的方法,其特征在于,所述对所述训练文本数据进行文本预处理,生成训练样本集的步骤包括:
对所述训练文本数据进行分词操作,生成词元数据;
依据所述词元数据构建词汇表;
对所述词汇表进行编码,生成初始词汇编码;
基于预设长度,对所述初始词汇编码进行转换,生成目标词汇编码;
对所述目标词汇编码进行掩码处理,生成所述训练样本集。
22.一种语言模型混合训练装置,其特征在于,包括:
获取模块,用于获取待训练神经网络模型和训练文本数据;
预处理模块,用于对所述训练文本数据进行文本预处理,生成训练样本集;
第一训练模块,用于基于预设二阶优化算法,输入所述训练样本集至所述待训练神经网络模型,生成中间神经网络模型;
采集模块,用于采集所述中间神经网络模型的模型参数;所述模型参数包括迭代次数;
判断模块,用于判断所述模型参数是否触发预设训练切换条件;所述预设训练切换条件包括所述迭代次数大于切换迭代数,或,切换阈值,所述切换阈值为待训练神经网络模型的损失值与验证精度的衡量指标;
第二训练模块,用于响应于所述模型参数触发所述预设训练切换条件,基于预设一阶优化算法,输入所述训练样本集至所述中间神经网络模型,生成目标神经网络模型。
23.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至21中任一项所述的语言模型混合训练方法的步骤。
24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至21中任一项所述的语言模型混合训练方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410231729.3A CN117829149B (zh) | 2024-02-29 | 2024-02-29 | 一种语言模型混合训练方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410231729.3A CN117829149B (zh) | 2024-02-29 | 2024-02-29 | 一种语言模型混合训练方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117829149A CN117829149A (zh) | 2024-04-05 |
CN117829149B true CN117829149B (zh) | 2024-05-31 |
Family
ID=90515487
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410231729.3A Active CN117829149B (zh) | 2024-02-29 | 2024-02-29 | 一种语言模型混合训练方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117829149B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118070847B (zh) * | 2024-04-17 | 2024-07-05 | 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) | 模型参数更新方法、装置、设备及可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116362312A (zh) * | 2021-12-23 | 2023-06-30 | 哲库科技(上海)有限公司 | 一种神经网络加速装置、方法、设备和计算机存储介质 |
CN116503745A (zh) * | 2023-06-29 | 2023-07-28 | 南京航空航天大学 | 一种基于混合神经网络模型的红外模糊目标识别方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11276002B2 (en) * | 2017-12-20 | 2022-03-15 | Salesforce.Com, Inc. | Hybrid training of deep networks |
-
2024
- 2024-02-29 CN CN202410231729.3A patent/CN117829149B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116362312A (zh) * | 2021-12-23 | 2023-06-30 | 哲库科技(上海)有限公司 | 一种神经网络加速装置、方法、设备和计算机存储介质 |
CN116503745A (zh) * | 2023-06-29 | 2023-07-28 | 南京航空航天大学 | 一种基于混合神经网络模型的红外模糊目标识别方法 |
Non-Patent Citations (2)
Title |
---|
一种用于曲线预测的混合神经网络算法研究;颜雪松;时晨;杨丽芬;蒋思伟;;微电子学与计算机;20090405(04);第197-202页 * |
前馈神经网络的一种高精度快速训练法――混合遗传算法;顾超, 陈学华;空间电子技术;19971231(03);第19-25页 * |
Also Published As
Publication number | Publication date |
---|---|
CN117829149A (zh) | 2024-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110366734B (zh) | 优化神经网络架构 | |
CN117829149B (zh) | 一种语言模型混合训练方法、装置、电子设备和存储介质 | |
US12008445B2 (en) | Black-box optimization using neural networks | |
US11861474B2 (en) | Dynamic placement of computation sub-graphs | |
JP2023139057A (ja) | リソース制約付きニューラルネットワークアーキテクチャ検索 | |
WO2022027937A1 (zh) | 一种神经网络压缩方法、装置、设备及存储介质 | |
CN111406267A (zh) | 使用性能预测神经网络的神经架构搜索 | |
CN109146076A (zh) | 模型生成方法及装置、数据处理方法及装置 | |
CN105550746A (zh) | 机器学习模型的训练方法和训练装置 | |
US20200134471A1 (en) | Method for Generating Neural Network and Electronic Device | |
CN114860915A (zh) | 一种模型提示学习方法、装置、电子设备及存储介质 | |
CN109522561B (zh) | 一种问句复述识别方法、装置、设备及可读存储介质 | |
US20220366315A1 (en) | Feature selection for model training | |
CN109992785B (zh) | 基于机器学习的内容计算方法、装置及设备 | |
CN113011529A (zh) | 文本分类模型的训练方法、装置、设备及可读存储介质 | |
CN115017178A (zh) | 数据到文本生成模型的训练方法和装置 | |
CN114048301A (zh) | 一种基于满意度的用户模拟方法及系统 | |
CN112561050B (zh) | 一种神经网络模型训练方法及装置 | |
CN112800737A (zh) | 自然语言文本生成方法和装置以及对话系统 | |
JP7512631B2 (ja) | イジングマシンデータ入力機器、及びイジングマシンにデータを入力する方法 | |
CN110728359B (zh) | 搜索模型结构的方法、装置、设备和存储介质 | |
JP7552996B2 (ja) | ハイパーパラメータチューニング方法、プログラム、ユーザプログラム、装置、方法 | |
CN117220266A (zh) | 一种新能源预测出力场景生成方法和系统 | |
CN112446461A (zh) | 一种神经网络模型训练方法及装置 | |
CN112633516B (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 |