CN111695689B - 一种自然语言处理方法、装置、设备及可读存储介质 - Google Patents

一种自然语言处理方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN111695689B
CN111695689B CN202010542341.7A CN202010542341A CN111695689B CN 111695689 B CN111695689 B CN 111695689B CN 202010542341 A CN202010542341 A CN 202010542341A CN 111695689 B CN111695689 B CN 111695689B
Authority
CN
China
Prior art keywords
model
natural language
language processing
target
model parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010542341.7A
Other languages
English (en)
Other versions
CN111695689A (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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202010542341.7A priority Critical patent/CN111695689B/zh
Publication of CN111695689A publication Critical patent/CN111695689A/zh
Application granted granted Critical
Publication of CN111695689B publication Critical patent/CN111695689B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
    • 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
    • G06N3/045Combinations of networks
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种自然语言处理方法,该方法包括以下步骤:接收待处理自然语言信息;将待处理自然语言信息输入到目标自然语言处理模型中;其中,目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到;利用语言处理模型对待处理自然语言信息进行相应的自然语言理解或自然语言生成操作。应用本发明实施例所提供的技术方案,提高了语言处理模型进行自然语言处理的准确性和处理效率。本发明还公开了一种自然语言处理装置、设备及存储介质,具有相应技术效果。

Description

一种自然语言处理方法、装置、设备及可读存储介质
技术领域
本发明涉及深度学习技术领域,特别是涉及一种自然语言处理方法、装置、设备及计算机可读存储介质。
背景技术
目前,深度学习方法已经被广泛用于解决自然语言处理的问题,随着对自然语言处理问题的研究的深入,所采用的深度学习模型越来越复杂,深度学习模型所依赖的训练数据也越来越庞大,另一方面,机器翻译、对话生成等自然语言处理应用中,随着语言环境和训练数据的变化,需要频繁地对模型进行增量训练,以保证语言处理模型进行自然语言处理的准确性和有效性。因此,在使用一台计算设备的情形下,这些深度学习算法需要花费很长的时间才能完成使深度学习模型训练,满足不了自然语言处理应用的模型高速迭代的需求收敛。因此,需要在多台计算设备上,通过分布式训练的方式对语言处理模型进行训练,可以减少训练所花费的时间。
分布式训练的关键问题之一,是高效的完成梯度或模型参数的同步,减少通信开销,从而提高计算设备的使用率,加快训练进度。对于现有的分布式训练方法,大多采用的同步的梯度同步方式以保持各个节点上模型参数的一致性。在这种方式下,训练的每一轮迭代各个分布式节点都需要完成梯度的传递和同步。这种分布式训练方法已被广泛使用于图像分类模型的分布式训练,并通过实验验证取得了较好的效果。
目前的研究中,所训练的深度神经网络主要是用于解决计算机视觉问题,一个典型的代表是解决图像分类问题的深度神经网络,这一类网络的特点是所有的梯度数据均可以用稠密矩阵来表示。鲜有研究尝试对自然语言处理中的语言模型进行分布式训练,这类模型的特点是,一部分梯度数据是稀疏的,它们在现有的分布式深度学习框架中常用稀疏的矩阵进行表示。将稠密矩阵所表示的梯度数据在集群的计算节点之间传递,能够较高效的被现有的集合通信库所实现,而稀疏矩阵所表示的梯度数据,难以在集群中进行高效的数据传输。因此,对于自然语言处理等领域出现的稀疏模型进行分布式训练,存在深度神经网络模型收敛至目标进度所需时间长,在自然语言处理过程中,语言处理模型进行自然语言处理的准确性低,处理效率低。
综上所述,如何有效地解决现有的语言处理模型进行自然语言处理的准确性低,处理效率低等问题,是目前本领域技术人员急需解决的问题。
发明内容
本发明的目的是提供一种自然语言处理方法,该方法提高了语言处理模型进行自然语言处理的准确性和处理效率;本发明的另一目的是提供一种自然语言处理装置、设备及计算机可读存储介质。
为解决上述技术问题,本发明提供如下技术方案:
一种自然语言处理方法,包括:
接收待处理自然语言信息;
将所述待处理自然语言信息输入到目标自然语言处理模型中;其中,所述目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到;
利用所述目标自然语言处理模型对所述待处理自然语言信息进行相应的自然语言理解或自然语言生成操作。
在本发明的一种具体实施方式中,通过所述模型平均的模型聚合算法进行模型训练得到所述目标自然语言处理模型的过程包括:
对原自然语言处理模型进行预处理,得到所述原自然语言处理模型中每个模型参数的更新频率;
根据各所述更新频率对各所述模型参数进行分组操作,得到各模型参数组;
分别确定各所述模型参数组的同步间隔;
在模型迭代过程中,根据各所述同步间隔对各训练节点内所述原自然语言处理模型的对应模型参数组中各所述模型参数进行同步操作,得到所述目标自然语言处理模型。
在本发明的一种具体实施方式中,对原自然语言处理模型进行预处理,得到所述原自然语言处理模型中每个模型参数的更新频率,包括:
从训练数据集中选取第一预设数量的数据组;
依次将各所述数据组输入到所述原自然语言处理模型,以对所述原自然语言处理模型进行所述第一预设数量的模型迭代操作;
针对每个数据组,对所述原自然语言处理模型进行前向计算和反向传播,得到所述原自然语言处理模型中每个模型参数的梯度值;
利用指示函数对各次模型迭代中各所述梯度值中的非零值进行统计操作,得到各所述模型参数分别在各次模型迭代中对应的梯度更新有效次数;
分别计算各所述梯度更新有效次数占所述预设次数的比例,得到各所述模型参数分别对应的更新频率。
在本发明的一种具体实施方式中,根据各所述更新频率对各所述模型参数进行分组操作,得到各模型参数组,包括:
将各所述模型参数输入到预置可排序容器中;
利用所述排序容器根据各所述模型参数分别对应的更新频率的大小对各所述模型参数进行排序操作,得到排序结果;
根据所述排序结果将各所述模型参数划分为第二预设数量的模型参数组。
在本发明的一种具体实施方式中,分别确定各所述模型参数组的同步间隔,包括:
针对每个模型参数组,计算所述模型参数组中各所述模型参数的更新频率的平均更新频率;
根据各所述平均更新频率计算各所述模型参数组分别的同步间隔。
在本发明的一种具体实施方式中,在模型迭代过程中,根据各所述同步间隔对各训练节点内所述原自然语言处理模型的对应模型参数组中各所述模型参数进行同步操作,包括:
从各所述训练节点中选取目标训练节点;
对各所述目标训练节点内所述原自然语言处理模型中各模型参数进行初始化,得到初始化结果;
利用所述目标训练节点将所述初始化结果广播至除所述目标训练节点之外的其他训练节点;
对模型迭代次数进行初始化;
在模型迭代过程中,分别利用各所述同步间隔对每个模型迭代次数累加结果进行取余操作;
对余数为零的同步间隔对应的目标模型参数组内各所述模型参数进行同步操作。
在本发明的一种具体实施方式中,对余数为零的同步间隔对应的目标模型参数组内各所述模型参数进行同步操作,包括:
分别获取各所述训练节点中的目标模型参数组;
分别对各所述目标模型参数组中对应各所述模型参数进行均值计算,得到各所述平均模型参数;
将各所述训练节点中的目标模型参数组中的各模型参数设置为各所述平均模型参数。
一种自然语言处理装置,包括:
信息接收模块,用于接收待处理自然语言信息;
信息输入模块,用于将所述待处理自然语言信息输入到目标自然语言处理模型中;其中,所述目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到;
信息处理模块,用于利用所述目标自然语言处理模型对所述待处理自然语言信息进行相应的自然语言理解或自然语言生成操作。
一种自然语言处理设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如前所述自然语言处理方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述自然语言处理方法的步骤。
应用本发明实施例所提供的方法,接收待处理自然语言信息;将待处理自然语言信息输入到目标自然语言处理模型中;其中,目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到;利用目标自然语言处理模型对待处理自然语言信息进行相应的自然语言理解或自然语言生成操作。通过利用模型平均的模型聚合算法进行分布式训练得到目标自然语言处理模型,模型平均的模型聚合算法适用于对分布式深度学习框架中常用稀疏的矩阵进行表示的语言处理模型进行训练,较大地缩短了模型训练时长,提高了语言处理模型进行自然语言处理的准确性和处理效率。
相应的,本发明实施例还提供了与上述自然语言处理方法相对应的自然语言处理装置、设备和计算机可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中自然语言处理方法的一种实施流程图;
图2为本发明实施例中自然语言处理方法的另一种实施流程图;
图3为本发明实施例中一种自然语言处理装置的结构框图;
图4为本发明实施例中一种自然语言处理设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
参见图1,图1为本发明实施例中自然语言处理方法的一种实施流程图,该方法可以包括以下步骤:
S101:接收待处理自然语言信息。
当需要进行自然语言处理时,向处理中心发送待处理自然语言信息。处理中心接收待处理自然语言信息。待处理自然语言信息可以为待翻译语句、待生成对话的语句等。
S102:将待处理自然语言信息输入到目标自然语言处理模型中;其中,目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到。
预先利用模型平均的模型聚合算法对原自然语言处理模型进行分布式训练,得到目标自然语言处理模型。处理中心在接收到待处理自然语言信息之后,将待处理自然语言信息输入到目标自然语言处理模型中。承接上述举例,当待处理自然语言信息为待翻译语句时,预先利用模型平均的模型聚合算法对原机器翻译模型进行分布式训练,得到目标机器翻译模型,将待翻译语句输入到目标机器翻译模型中;当待处理自然语言信息为待生成对话的语句时,预先利用模型平均的模型聚合算法对原对话生成模型进行分布式训练,得到目标对话生成模型,将待生成对话的语句输入到目标对话生成模型。
S103:利用目标自然语言处理模型对待处理自然语言信息进行相应的自然语言理解或自然语言生成操作。
将待处理自然语言信息输入到目标自然语言处理模型之后,利用语言处理模型对待处理自然语言信息进行相应的自然语言理解或自然语言生成操作。承接上述举例,当待处理自然语言信息为待翻译语句时,利用目标机器翻译模型对待翻译语句进行翻译操作;当待处理自然语言信息为待生成对话的语句时,利用目标对话生成模型对待生成对话的语句进行对话生成操作。模型平均的模型聚合算法适用于对分布式深度学习框架中常用稀疏的矩阵进行表示的语言处理模型进行训练,较大地缩短了模型训练时长,提高了语言处理模型进行自然语言处理的准确性和处理效率。
需要说明的是,目标自然语言处理模型不限定于对待翻译语句、待生成对话的语句进行处理,还可以用于信息提取、文本情感分析、个性化推荐等,根据应用场景的不同预先训练对应的目标自然语言处理模型。
应用本发明实施例所提供的方法,接收待处理自然语言信息;将待处理自然语言信息输入到目标自然语言处理模型中;其中,目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到;利用目标自然语言处理模型对待处理自然语言信息进行相应的自然语言理解或自然语言生成操作。通过利用模型平均的模型聚合算法进行分布式训练得到目标自然语言处理模型,模型平均的模型聚合算法适用于对分布式深度学习框架中常用稀疏的矩阵进行表示的语言处理模型进行训练,较大地缩短了模型训练时长,提高了语言处理模型进行自然语言处理的准确性和处理效率。
需要说明的是,基于上述实施例一,本发明实施例还提供了相应的改进方案。在后续实施例中涉及与上述实施例一中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在下文的改进实施例中不再一一赘述。
实施例二:
参见图2,图2为本发明实施例中自然语言处理方法的另一种实施流程图,该方法可以包括以下步骤:
S201:对原自然语言处理模型进行预处理,得到原自然语言处理模型中每个模型参数的更新频率。
在模型迭代过程中,获取原自然语言处理模型,对原自然语言处理模型进行预处理,得到原自然语言处理模型中每个模型参数的更新频率。
在本发明的一种具体实施方式中,步骤S201可以包括以下步骤:
步骤一:从训练数据集中选取第一预设数量的数据组;
步骤二:依次将各数据组输入到原自然语言处理模型,以对原自然语言处理模型进行第一预设数量的模型迭代操作;
步骤三:针对每个数据组,对原自然语言处理模型进行前向计算和反向传播,得到原自然语言处理模型中每个模型参数的梯度值;
步骤四:利用指示函数对各次模型迭代中各梯度值中的非零值进行统计操作,得到各模型参数分别在各次模型迭代中对应的梯度更新有效次数。
步骤五:分别计算各梯度更新有效次数占预设次数的比例,得到各模型参数分别对应的更新频率。
为方便描述,将上述五个步骤结合起来进行说明。
在预先获取到的训练数据集中选取第一预设数量的数据组,如选取m个数据组,依次将各数据组输入到原自然语言处理模型,每个数据组对应对原自然语言处理模型的一次迭代,从而对原自然语言处理模型进行第一预设数量的模型迭代操作。针对每个数据组,对原自然语言处理模型进行前向计算和反向传播,得到原自然语言处理模型中每个模型参数的梯度值
Figure BDA0002539423220000085
利用指示函数I对各次模型迭代中各梯度值/>
Figure BDA0002539423220000086
中的非零值进行统计操作,从而获取在各次模型迭代中各模型参数对应的梯度更新是否有效,得到各所述模型参数分别在各次模型迭代中对应的梯度更新有效次数。指示函数I的定义如下:
Figure BDA0002539423220000081
Figure BDA0002539423220000082
时,说明对应的梯度更新是有效的,/>
Figure BDA0002539423220000083
表示第t次迭代后第i个模型参数的梯度值。
分别计算各梯度更新有效次数占预设次数的比例,得到各模型参数分别对应的更新频率。可以通过以下公式分别计算各梯度更新有效次数占预设次数的比例,得到各模型参数分别对应的更新频率αi
Figure BDA0002539423220000084
S202:根据各更新频率对各模型参数进行分组操作,得到各模型参数组。
由于语言处理模型在分布式深度学习框架中常用稀疏的矩阵进行表示,因此在得到原自然语言处理模型中每个模型参数的更新频率之后,根据各更新频率对各模型参数进行分组操作,得到各模型参数组。
在本发明的一种具体实施方式中,步骤S202可以包括以下步骤:
步骤一:将各模型参数输入到预置可排序容器中;
步骤二:利用排序容器根据各模型参数分别对应的更新频率的大小对各模型参数进行排序操作,得到排序结果;
步骤三:根据排序结果将各模型参数划分为第二预设数量的模型参数组。
为方便描述,将上述三个步骤结合起来进行说明。
预先部署可排序容器,将各模型参数输入到预置可排序容器中,依据获得的每一个模型参数的稀疏程度,即αi,利用排序容器根据各模型参数分别对应的更新频率的大小对各模型参数进行排序操作,得到排序结果。根据排序结果将各模型参数划分为第二预设数量的模型参数组。第二预设数量用预设的超参数q表示,稀疏程度比较相似的第i组模型参数用pi表示,模型参数集合可以表示为:
P={p1,p2,…,pq};
S203:分别确定各模型参数组的同步间隔。
在得到各模型参数组之后,分别确定各模型参数组的同步间隔。
在本发明的一种具体实施方式中,步骤S203可以包括以下步骤:
步骤一:针对每个模型参数组,计算模型参数组中各模型参数的更新频率的平均更新频率;
步骤二:根据各平均更新频率计算各模型参数组分别的同步间隔。
为方便描述,将上述两个步骤结合起来进行说明。
在获取每个模型参数的更新频率,并对各模型参数进行分组,得到各模型参数组之后,针对每个模型参数组,计算模型参数组中各模型参数的更新频率的平均更新频率
Figure BDA0002539423220000091
根据各平均更新频率计算各模型参数组分别的同步间隔。具体可以根据以下公式计算平均更新频率/>
Figure BDA0002539423220000092
Figure BDA0002539423220000093
其中,||表示1范数计算。
在分别确定各模型参数组的同步间隔之后,根据各平均更新频率计算各模型参数组分别的同步间隔ki,可以通过以下公式计算各模型参数组分别的同步间隔ki
Figure BDA0002539423220000094
其中,ki表示第i组模型参数组对应的同步间隔,用K表示由各组模型参数组对应的同步间隔构成的同步间隔集合,K表示为:
Figure BDA0002539423220000095
其中,λ是同步间隔设定系数,可以便于发明实施人员基于先验知识从而动态的对不同稀疏深度神经网络模型的同步间隔进行调整。
S204:在模型迭代过程中,根据各同步间隔对各训练节点内原自然语言处理模型的对应模型参数组中各模型参数进行同步操作,得到目标自然语言处理模型。
在模型迭代过程中,根据各同步间隔对各训练节点内原自然语言处理模型的对应模型参数组中各模型参数进行同步操作,得到目标自然语言处理模型。
在本发明的一种具体实施方式中,步骤S204可以包括以下步骤:
步骤一:从各训练节点中选取目标训练节点;
步骤二:对各目标训练节点内原自然语言处理模型中各模型参数进行初始化,得到初始化结果;
步骤三:利用目标训练节点将初始化结果广播至除目标训练节点之外的其他训练节点;
步骤四:对模型迭代次数进行初始化;
步骤五:在模型迭代过程中,分别利用各同步间隔对每个模型迭代次数累加结果进行取余操作;
步骤六:对余数为零的同步间隔对应的目标模型参数组内各模型参数进行同步操作,得到目标自然语言处理模型。
为方便描述,将上述六个步骤结合起来进行说明。
从各训练节点中选取目标训练节点,对各目标训练节点内原自然语言处理模型中各模型参数进行初始化,得到初始化结果。
目标训练节点可以为各训练节点中任意一个训练节点,如可以预先为各训练节点进行编号,编号分别为0,1……,选取编号为0的训练节点作为目标训练节点。对各目标训练节点内原自然语言处理模型中各模型参数进行初始化,得到初始化结果。利用目标训练节点将初始化结果广播至除目标训练节点之外的其他训练节点。对模型迭代次数进行初始化,如在对原自然语言处理模型进行迭代训练前,将迭代次数初始化为0,在模型迭代过程中,分别利用各同步间隔对每个模型迭代次数t累加结果进行取余操作,可以通过以下公式计算:
t modki
对余数为零的同步间隔对应的目标模型参数组内各模型参数进行同步操作,得到目标自然语言处理模型。
在本发明的一种具体实施方式中,对余数为零的同步间隔对应的目标模型参数组内各模型参数进行同步操作,可以包括以下步骤:
步骤一:分别获取各训练节点中的目标模型参数组;
步骤二:分别对各目标模型参数组中对应各模型参数进行均值计算,得到各平均模型参数;
步骤三:将各训练节点中的目标模型参数组中的各模型参数设置为各平均模型参数,得到目标自然语言处理模型。
为方便描述,将上述三个步骤结合起来进行说明。
分别获取各训练节点中的目标模型参数组,分别对各目标模型参数组中对应各模型参数进行均值计算,得到各平均模型参数,将各训练节点中的目标模型参数组中的各模型参数设置为各平均模型参数,得到目标自然语言处理模型。
步骤S201至步骤S203完成了关键参数P和K的求解,步骤S201至步骤S203可以仅使用一个训练节点进行单机的离线计算得到。由于步骤S201至步骤S203不对模型进行训练,不需要对模型参数进行修改,仅仅需要根据不同的批训练数据计算相应梯度值,因此其耗时相对一般单机训练短很多。可以选用配有英特尔至强CPU与4块英伟达RTX 2080Ti GPU的单台服务器,使用服务器中的一块GPU完成针对LM1b模型的步骤S201至步骤S203,耗时短。经验上而言,步步骤S201至步骤S203的耗时相对整体训练耗时可以忽略不计。
相对现有的语言处理模型分布式训练方式,采用本发明的方法,在单台和两台上述服务器上对语言处理模型进行分布式训练,较大地缩短了训练时间。
S205:接收待处理自然语言信息。
S206:将待处理自然语言信息输入到目标自然语言处理模型中;其中,目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到。
S207:利用目标自然语言处理模型对待处理自然语言信息进行相应的自然语言理解或自然语言生成操作。
相应于上面的方法实施例,本发明实施例还提供了一种自然语言处理装置,下文描述的自然语言处理装置与上文描述的自然语言处理方法可相互对应参照。
参见图3,图3为本发明实施例中一种自然语言处理装置的结构框图,该装置可以包括:
信息接收模块31,用于接收待处理自然语言信息;
信息输入模块32,用于将待处理自然语言信息输入到目标自然语言处理模型中;其中,目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到;
信息处理模块33,用于利用目标自然语言处理模型对待处理自然语言信息进行相应的自然语言理解或自然语言生成操作。
应用本发明实施例所提供的装置,接收待处理自然语言信息;将待处理自然语言信息输入到目标自然语言处理模型中;其中,目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到;利用语言处理模型对待处理自然语言信息进行相应的自然语言理解或自然语言生成操作。通过利用模型平均的模型聚合算法进行分布式训练得到目标自然语言处理模型,模型平均的模型聚合算法适用于对分布式深度学习框架中常用稀疏的矩阵进行表示的语言处理模型进行训练,较大地缩短了模型训练时长,提高了语言处理模型进行自然语言处理的准确性和处理效率。
在本发明的一种具体实施方式中,该装置包括模型训练模块,模型训练模块包括:
参数更新频率获得子模块,用于对原自然语言处理模型进行预处理,得到原自然语言处理模型中每个模型参数的更新频率;
参数组获得子模块,用于根据各更新频率对各模型参数进行分组操作,得到各模型参数组;
同步间隔确定子模块,用于分别确定各模型参数组的同步间隔;
参数同步子模块,用于在模型迭代过程中,根据各同步间隔对各训练节点内原自然语言处理模型的对应模型参数组中各模型参数进行同步操作,得到目标自然语言处理模型。
在本发明的一种具体实施方式中,参数更新频率获得子模块包括:
数据组选取单元,用于从训练数据集中选取第一预设数量的数据组;
模型迭代单元,用于依次将各数据组输入到原自然语言处理模型,以对原自然语言处理模型进行第一预设数量的模型迭代操作;
梯度值获得单元,用于针对每个数据组,对原自然语言处理模型进行前向计算和反向传播,得到原自然语言处理模型中每个模型参数的梯度值;
有效次数获得单元,用于利用指示函数对各次模型迭代中各梯度值中的非零值进行统计操作,得到各模型参数分别在各次模型迭代中对应的梯度更新有效次数;
更新频率获得单元,用于分别计算各梯度更新有效次数占预设次数的比例,得到各模型参数分别对应的更新频率。
在本发明的一种具体实施方式中,参数组获得子模块包括:
参数输入单元,用于将各模型参数输入到预置可排序容器中;
排序结果获得单元,用于利用排序容器根据各模型参数分别对应的更新频率的大小对各模型参数进行排序操作,得到排序结果;
参数组划分单元,用于根据排序结果将各模型参数划分为第二预设数量的模型参数组。
在本发明的一种具体实施方式中,同步间隔确定子模块包括:
平均更新频率计算单元,用于针对每个模型参数组,计算模型参数组中各模型参数的更新频率的平均更新频率;
同步间隔计算单元,用于根据各平均更新频率计算各模型参数组分别的同步间隔。
在本发明的一种具体实施方式中,参数同步子模块包括:
节点选取单元,用于从各训练节点中选取目标训练节点;
参数初始化单元,用于对各目标训练节点内原自然语言处理模型中各模型参数进行初始化,得到初始化结果;
广播单元,用于利用目标训练节点将初始化结果广播至除目标训练节点之外的其他训练节点;
迭代次数初始化单元,用于对模型迭代次数进行初始化;
取余单元,用于在模型迭代过程中,分别利用各同步间隔对每个模型迭代次数累加结果进行取余操作;
参数同步单元,用于对余数为零的同步间隔对应的目标模型参数组内各模型参数进行同步操作。
在本发明的一种具体实施方式中,参数同步单元包括:
参数组获取子单元,用于分别获取各训练节点中的目标模型参数组;
参数平均值获得子单元,用于分别对各目标模型参数组中对应各模型参数进行均值计算,得到各平均模型参数;
参数设置子单元,用于将各训练节点中的目标模型参数组中的各模型参数设置为各平均模型参数。
相应于上面的方法实施例,参见图4,图4为本发明所提供的自然语言处理设备的示意图,该设备可以包括:
存储器41,用于存储计算机程序;
处理器42,用于执行上述存储器41存储的计算机程序时可实现如下步骤:
接收待处理自然语言信息;将待处理自然语言信息输入到目标自然语言处理模型中;其中,目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到;利用目标自然语言处理模型对待处理自然语言信息进行相应的自然语言理解或自然语言生成操作。
对于本发明提供的设备的介绍请参照上述方法实施例,本发明在此不做赘述。
相应于上面的方法实施例,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如下步骤:
接收待处理自然语言信息;将待处理自然语言信息输入到目标自然语言处理模型中;其中,目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到;利用目标自然语言处理模型对待处理自然语言信息进行相应的自然语言理解或自然语言生成操作。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本发明提供的计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不做赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (8)

1.一种自然语言处理方法,其特征在于,包括:
接收待处理自然语言信息;
将所述待处理自然语言信息输入到目标自然语言处理模型中;其中,所述目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到;
利用所述目标自然语言处理模型对所述待处理自然语言信息进行相应的自然语言理解或自然语言生成操作;
其中,通过所述模型平均的模型聚合算法进行模型训练得到所述目标自然语言处理模型的过程包括:
对原自然语言处理模型进行预处理,得到所述原自然语言处理模型中每个模型参数的更新频率;
根据各所述更新频率对各所述模型参数进行分组操作,得到各模型参数组;
分别确定各所述模型参数组的同步间隔;
在模型迭代过程中,根据各所述同步间隔对各训练节点内所述原自然语言处理模型的对应模型参数组中各所述模型参数进行同步操作,得到所述目标自然语言处理模型;
其中,所述根据各所述更新频率对各所述模型参数进行分组操作,得到各模型参数组,包括:
将各所述模型参数输入到预置可排序容器中;
利用所述排序容器根据各所述模型参数分别对应的更新频率的大小对各所述模型参数进行排序操作,得到排序结果;
根据所述排序结果将各所述模型参数划分为第二预设数量的模型参数组。
2.根据权利要求1所述的自然语言处理方法,其特征在于,对原自然语言处理模型进行预处理,得到所述原自然语言处理模型中每个模型参数的更新频率,包括:
从训练数据集中选取第一预设数量的数据组;
依次将各所述数据组输入到所述原自然语言处理模型,以对所述原自然语言处理模型进行所述第一预设数量的模型迭代操作;
针对每个数据组,对所述原自然语言处理模型进行前向计算和反向传播,得到所述原自然语言处理模型中每个模型参数的梯度值;
利用指示函数对各次模型迭代中各所述梯度值中的非零值进行统计操作,得到各所述模型参数分别在各次模型迭代中对应的梯度更新有效次数;
分别计算各所述梯度更新有效次数占所述预设次数的比例,得到各所述模型参数分别对应的更新频率。
3.根据权利要求1所述的自然语言处理方法,其特征在于,分别确定各所述模型参数组的同步间隔,包括:
针对每个模型参数组,计算所述模型参数组中各所述模型参数的更新频率的平均更新频率;
根据各所述平均更新频率计算各所述模型参数组分别的同步间隔。
4.根据权利要求1至3任一项所述的自然语言处理方法,其特征在于,在模型迭代过程中,根据各所述同步间隔对各训练节点内所述原自然语言处理模型的对应模型参数组中各所述模型参数进行同步操作,包括:
从各所述训练节点中选取目标训练节点;
对各所述目标训练节点内所述原自然语言处理模型中各模型参数进行初始化,得到初始化结果;
利用所述目标训练节点将所述初始化结果广播至除所述目标训练节点之外的其他训练节点;
对模型迭代次数进行初始化;
在模型迭代过程中,分别利用各所述同步间隔对每个模型迭代次数累加结果进行取余操作;
对余数为零的同步间隔对应的目标模型参数组内各所述模型参数进行同步操作。
5.根据权利要求4所述的自然语言处理方法,其特征在于,对余数为零的同步间隔对应的目标模型参数组内各所述模型参数进行同步操作,包括:
分别获取各所述训练节点中的目标模型参数组;
分别对各所述目标模型参数组中对应各所述模型参数进行均值计算,得到各所述平均模型参数;
将各所述训练节点中的目标模型参数组中的各模型参数设置为各所述平均模型参数。
6.一种自然语言处理装置,其特征在于,包括:
信息接收模块,用于接收待处理自然语言信息;
信息输入模块,用于将所述待处理自然语言信息输入到目标自然语言处理模型中;其中,所述目标自然语言处理模型为通过模型平均的模型聚合算法进行分布式训练得到;
信息处理模块,用于利用所述目标自然语言处理模型对所述待处理自然语言信息进行相应的自然语言理解或自然语言生成操作;
其中,该装置包括模型训练模块,所述模型训练模块包括:
参数更新频率获得子模块,用于对原自然语言处理模型进行预处理,得到原自然语言处理模型中每个模型参数的更新频率;
参数组获得子模块,用于根据各更新频率对各模型参数进行分组操作,得到各模型参数组;
同步间隔确定子模块,用于分别确定各模型参数组的同步间隔;
参数同步子模块,用于在模型迭代过程中,根据各同步间隔对各训练节点内原自然语言处理模型的对应模型参数组中各模型参数进行同步操作,得到目标自然语言处理模型;
其中,所述参数组获得子模块根据各所述更新频率对各所述模型参数进行分组操作,得到各模型参数组的过程,包括:将各所述模型参数输入到预置可排序容器中;利用所述排序容器根据各所述模型参数分别对应的更新频率的大小对各所述模型参数进行排序操作,得到排序结果;根据所述排序结果将各所述模型参数划分为第二预设数量的模型参数组。
7.一种自然语言处理设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至5任一项所述自然语言处理方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述自然语言处理方法的步骤。
CN202010542341.7A 2020-06-15 2020-06-15 一种自然语言处理方法、装置、设备及可读存储介质 Active CN111695689B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010542341.7A CN111695689B (zh) 2020-06-15 2020-06-15 一种自然语言处理方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010542341.7A CN111695689B (zh) 2020-06-15 2020-06-15 一种自然语言处理方法、装置、设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN111695689A CN111695689A (zh) 2020-09-22
CN111695689B true CN111695689B (zh) 2023-06-20

Family

ID=72480984

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010542341.7A Active CN111695689B (zh) 2020-06-15 2020-06-15 一种自然语言处理方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN111695689B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112561078B (zh) * 2020-12-18 2021-12-28 北京百度网讯科技有限公司 分布式的模型训练方法及相关装置
CN112699686B (zh) * 2021-01-05 2024-03-08 浙江诺诺网络科技有限公司 基于任务型对话***的语义理解方法、装置、设备及介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014074698A2 (en) * 2012-11-12 2014-05-15 Nuance Communications, Inc. Distributed nlu/nlp

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104035751B (zh) * 2014-06-20 2016-10-12 深圳市腾讯计算机***有限公司 基于多图形处理器的数据并行处理方法及装置
CN104463324A (zh) * 2014-11-21 2015-03-25 长沙马沙电子科技有限公司 一种基于大规模高性能集群的卷积神经网络并行处理方法
US9715498B2 (en) * 2015-08-31 2017-07-25 Microsoft Technology Licensing, Llc Distributed server system for language understanding
CN108280522B (zh) * 2018-01-03 2021-08-20 北京大学 一种插件式分布式机器学习计算框架及其数据处理方法
CN108549692B (zh) * 2018-04-13 2021-05-11 重庆邮电大学 Spark框架下的稀疏多元逻辑回归模型对文本情感分类的方法
JP7135743B2 (ja) * 2018-11-06 2022-09-13 日本電信電話株式会社 分散処理システムおよび分散処理方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014074698A2 (en) * 2012-11-12 2014-05-15 Nuance Communications, Inc. Distributed nlu/nlp

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于分布内存的层次短语机器翻译并行化算法;赵博;黄书剑;戴新宇;袁春风;黄宜华;;计算机研究与发展(第12期);2724-2732 *

Also Published As

Publication number Publication date
CN111695689A (zh) 2020-09-22

Similar Documents

Publication Publication Date Title
CN110969250B (zh) 一种神经网络训练方法及装置
CN111030861B (zh) 一种边缘计算分布式模型训练方法、终端和网络侧设备
US20170193368A1 (en) Conditional parallel processing in fully-connected neural networks
CN111695689B (zh) 一种自然语言处理方法、装置、设备及可读存储介质
Alawad et al. Stochastic-based deep convolutional networks with reconfigurable logic fabric
CN113705793B (zh) 决策变量确定方法及装置、电子设备和介质
CN116701692B (zh) 一种图像生成方法、装置、设备及介质
CN112508190A (zh) 结构化稀疏参数的处理方法、装置、设备及存储介质
CN113283186B (zh) 一种用于cfd的通用网格自适应方法
CN113159287A (zh) 一种基于梯度稀疏的分布式深度学习方法
US20230087774A1 (en) Parameter optimization method, electronic device, and storage medium
CN106156142B (zh) 一种文本聚类的处理方法、服务器及***
CN111260056B (zh) 一种网络模型蒸馏方法及装置
CN114138231B (zh) 执行矩阵乘法运算的方法、电路及soc
CN111191036A (zh) 短文本主题聚类方法、装置、设备及介质
CN115879547A (zh) 基于lstm和注意力机制的开放世界知识图谱补全方法及***
US20220138554A1 (en) Systems and methods utilizing machine learning techniques for training neural networks to generate distributions
CN113191486A (zh) 基于参数服务器架构的图数据与参数数据的混合划分方法
CN116797850A (zh) 基于知识蒸馏和一致性正则化的类增量图像分类方法
CN116384471A (zh) 模型剪枝方法、装置、计算机设备、存储介质和程序产品
CN115909441A (zh) 人脸识别模型建立方法、人脸识别方法和电子设备
CN115168326A (zh) Hadoop大数据平台分布式能源数据清洗方法及***
DE102022120819A1 (de) Quantisiertes neuronales- netzwerk-training und - inferenzieren
CN109636199B (zh) 一种为待译稿件匹配译员的方法及***
Park et al. Dual-Precision Deep Neural Network

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