CN113450770A - 基于显卡资源的语音特征提取方法、装置、设备及介质 - Google Patents
基于显卡资源的语音特征提取方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN113450770A CN113450770A CN202110711773.0A CN202110711773A CN113450770A CN 113450770 A CN113450770 A CN 113450770A CN 202110711773 A CN202110711773 A CN 202110711773A CN 113450770 A CN113450770 A CN 113450770A
- Authority
- CN
- China
- Prior art keywords
- model
- voice
- voice recognition
- video memory
- network model
- 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
Links
- 238000000605 extraction Methods 0.000 title claims description 70
- 230000015654 memory Effects 0.000 claims abstract description 177
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 claims abstract description 55
- 238000013136 deep learning model Methods 0.000 claims abstract description 42
- 238000000034 method Methods 0.000 claims abstract description 40
- 238000004364 calculation method Methods 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 238000012790 confirmation Methods 0.000 claims description 4
- 238000003058 natural language processing Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 18
- 238000013135 deep learning Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- 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/045—Combinations of networks
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Human Computer Interaction (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Acoustics & Sound (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明涉及自然语言处理技术、应用到语音识别技术领域,公开了一种基于显卡资源的语音特征提取方法、装置、设备及介质,用于提高语音识别效率。方法部分包括:从Kaldi平台中获取已训练好的语音识别网络模型;根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存;将所述语音识别网络模型加载至所述目标显存,并在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流;获取原始语音信息,在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取。
Description
技术领域
本发明涉及自然语言处理技术、涉及语音识别技术领域,尤其涉及一种基于显卡资源的语音特征提取方法、装置、设备及介质。
背景技术
目前有许多深度学习平台,这些深度学习平台平台常被用于声纹和语音识别等识别领域,其中,Kaldi作为一个优秀的语音识别平台,非常适合用于科研和学习。
发明人研究发现,在利用Kaldi对语音识别过程中,Kaldi考虑到自身平台的通用性,Kaldi会利用CPU对学习模型先构造出其对应的网络拓扑图,再将原始语音输入利用CPU,经过深度学习拓扑图网络计算后得到结果。整个处理结果的返回耗时主要集中在CPU的深度网络推理上,耗时较长,占用了大量的时间,导致语音识别效率较低。
发明内容
本发明实施例提供一种基于显卡资源的语音特征提取方法、装置、设备及介质,用于解决现有方案中,语音识别效率较低的技术问题。
一种基于显卡资源的语音特征提取方法,包括:
从Kaldi平台中获取已训练好的语音识别网络模型;
根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存;
将所述语音识别网络模型加载至所述目标显存,并在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流;
获取原始语音信息,在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取。
进一步地,所述根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存,包括:
接收语音特征提取请求,根据所述语音特征提取请求获取当前目标显卡的所述显卡资源信息,所述显卡资源信息包括当前所述Kaldi平台的可用显存大小和可用GPU上下文资源;
分析运行所述已训练好的语音识别深度学习模型的所需显存大小和所需GPU上下文资源;
分别判断所述可用显存大小和GPU上下文资源,是否均满足所需显存大小和所需GPU上下文资源;
当判定均满足,则依据所述可用GPU上下文资源预先申请所述目标GPU上下文资源,并依据所述可用显存大小为所述语音识别网络模型分配所述目标显存。
进一步地,所述将所述语音识别网络模型加载至所述目标显存,包括:
获取所述语音识别网络模型对应的模型结构体,并预先保存在处理器内存中,其中,所述模型结构体包括多个模块成员;
在接收到语音特征提取请求后,从所述Kaldi平台的预设模型文件中提取所述模型结构体各模块成员对应的网络参数;
在所述内存中初始化所述模型结构体,并将所述各模块成员对应的网络参数加载到所述模型结构体的各模块成员中;
将经过模型参数加载的所述模型结构体拷贝至所述目标显存中。
进一步地,在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取,包括:
在所述目标显存中,将所述语音识别网络模型的各模块成员分别放入到多个CUDA流中,其中,每个所述CUDA流,均用于将对应的模块成员所包含的各个计算分配至多个GPU计算核心中;
利用多个所述CUDA流完成所述语音识别网络模型的功能,以对所述原始语音信息进行特征提取;
当所述GPU计算核心完成自身的计算工作时,释放所述GPU计算核心所占用的显存。
进一步地,所述方法还包括:
当判定其中一项为不满足,则输出报错信息和转换方式提示信息;
当接收到用户依据所述转换提示信息响应的确认指令时,将所述语音识别网络模型加载至内存中,在内存中调用所述语音识别网络模型对所述原始语音信息进行特征提取。
进一步地,所述根据所述语音特征提取请求获取当前显卡的所述显卡资源信息,包括:
根据所述语音特征提取请求,获取当前所有显卡的显卡资源信息;
按照显存从大到小的顺序,依次从当前所有显卡选取显第一数量的显卡作为候选显卡;
从所述候选显卡中确定出可用GPU上下文资源最高的显卡作为所述目标显卡。
进一步地,运行所述已训练好的语音识别深度学习模型的所需显存大小通过如下方式获取:
确定所述已训练好的语音识别深度学习模型自身所占用的容量大小;
确定运行所述语音识别深度学习模型所需的容量大小;
将所述占用的容量大小和所需的容量大小两者的和作为所述所需显存大小。
一种基于显卡资源的语音特征提取装置,包括:
获取模块,用于从Kaldi平台中获取已训练好的语音识别网络模型和原始语音信息;
申请模块,用于根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存;
加载模块,用于将所述语音识别网络模型加载至所述目标显存;
创建模块,用于在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流;
提取模块,用于在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于显卡资源的语音特征提取方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于显卡资源的语音特征提取方法的步骤。
上述基于显卡资源的语音特征提取方法、装置、计算机设备及存储介质所实现的方案中,在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流绕开原有Kaldi构造网络拓扑图,直接将已训练好的语音识别网络模型放到显卡的显存中,直接利用显卡的CUDA流调用音识别网络模型执行语音识别的过程,直接利用GPU进行网络计算,减少了原先需先构造计算深度学习模型学习模型计算图的时间损耗,使得识别过程得以加速。本发明提出的方法没有改变语音识别网络模型本身的网络结构,是将语音识别网络模型的运算全部放到GPU进行加速运算,最后的结果并不会改变,识别效果准确能保持一致。另外,提高了服务器显卡的利用率。由于将模型推理都放到GPU上,使得GPU的利用率大大提高,有效地利用了宝贵的显卡资源。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明中基于显卡资源的语音特征提取方法的一应用环境示意图;
图2是本发明一实施例中基于显卡资源的语音特征提取方法的一流程图;
图3是图2中步骤S20的一具体实施方式流程示意图;
图4是图3中步骤S21的一具体实施方式示意图;
图5是图2中步骤S30的一具体实施方式流程示意图;
图6是本发明一实施例中语音识别网络模型的网络结构和特征提取示意图;
图7是本发明一实施例中基于显卡资源的语音特征提取方法装置的一原理框图;
图8是本发明一实施例中计算机设备的一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的基于显卡资源的语音特征提取方法,可应用在如图1所示的应用环境中,其中,服务器通过网络与服务器集群进行通信,其中,服务器用于从Kaldi平台中获取已训练好的语音识别网络模型;根据服务器和服务器集群自身的显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存;将所述语音识别网络模型加载至所述目标显存,并在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流;获取原始语音信息,在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取。CUDA流绕开原有Kaldi构造网络拓扑图,直接将已训练好的语音识别网络模型放到显卡的显存中,直接利用显卡的CUDA流调用音识别网络模型执行语音识别的过程,直接利用GPU进行网络计算,减少了原先需先构造计算深度学习模型学习模型计算图的时间损耗,使得提取提取过程得以加速。本发明提出的方法没有改变语音识别网络模型本身的网络结构,是将语音识别网络模型的运算全部放到GPU进行加速运算,最后的结果并不会改变,识别效果准确能保持一致。另外,提高了服务器显卡的利用率。由于将模型推理都放到GPU上,使得GPU的利用率大大提高,有效地利用了宝贵的显卡资源。
在一实施例中,如图2所示,提供一种基于显卡资源的语音特征提取方法,以该方法应用在图2中的服务器为例进行说明,包括如下步骤:
S10:从Kaldi平台中获取已训练好的语音识别网络模型。
Kaldi是一个开源的语音识别工具库,Kaldi内置功能强大,支持GMM-HMM、SGMM-HMM、DNN-HMM等多种语音识别模型的训练和预测。随着深度学习的影响越来越大,Kaldi目前对DNN、CNN、LSTM以及Bidirectional-LSTM等神经网络结构均提供模型训练支持。在本发明中,预先利用Kaldi平台训练出语音识别网络模型,具体需先下载Kaldi代码并安装后得到Kaldi平台,随后利用Kaldi平台自身携带的工具包实现语音识别网络模型得到训练。在利用Kaldi平台训练后语音识别网络模型后,便可从Kaldi平台中获取已训练好的语音识别网络模型。
其中,训练好的语音识别网络模型包括X-Vector模型、F-TDNN模型等各种用于后续语音识别过程中所需用到的深度学习网络模型,其中,X-Vector模型是一种声纹模型,F-TDNN模型是一种声学模型,深度学习网络模型模块对应一模型结构体,该模型结构体指的是构成该深度学习模块所需的功能模块体,该模型结构体包括多个模块成员,每个模块成员用于实现模型中某种特定的功能或操作。
S20:根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存。
如图1所示,本发明中,服务器用于连接至服务器集群,服务器集群中的每个服务器可以安装有一个或多个显卡,每个显卡具有对应的GPU上下文资源和显存。服务器与服务器集群连接后,可以获取所有服务器集群的显卡资源信息,显卡资源信息主要是包括显卡数量、显卡的型号、显卡的显存大小和GPU上下文资源等等。以Nvidia的显卡为例,程序启动的时候会检查是否有足够数量的显卡,显卡是否被独占等情况,从而得到显卡资源信息。
另外,上述语音识别深度学习模型在运行时会占用一定的显存和计算资源,因此,本发明中先根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源(GPUContext),并为已训练好的语音识别深度学习模型分配对应的目标显存,申请的目标GPU上下文资源和目标显存是用于后续的执行该语音识别深度学习模型所需的显卡资源。
S30:将所述语音识别网络模型加载至所述目标显存,并在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流。
如前述,在显卡资源充足的情况下,在申请GPU上下文资源和分配目标显存之后,将所述语音识别网络模型加载至所述目标显存,并在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流。在资源充足的情况下,每个显卡会对于一个GPU上下文资源,并可以在这个GPU上下文资源再申请CUDA Stream(也即CUDA流),需要说明的是,一个GPU上下文资源可以有多个CUDA流,后续执行模型时的API操作都是在某个流上进行。因此,需先申请后续执行所需的目标GPU上下文资源。
S40:获取原始语音信息,在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取。
原始语音信息是指要被进行语音识别的语音信息,在将所述语音识别网络模型加载至所述目标显存之后,便可在目标显存中,利用GPU的计算能力,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取,利用提取得到的语音特征,便能进行后续的语音识别或者声纹识别。
可见,本发明实施例提供了一种基于显卡资源的语音特征提取方法,从Kaldi平台中获取已训练好的语音识别网络模型;根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存;将所述语音识别网络模型加载至所述目标显存,并在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流绕开原有Kaldi构造网络拓扑图,直接将已训练好的语音识别网络模型放到显卡的显存中,直接利用显卡的CUDA流调用音识别网络模型执行语音识别的过程,直接利用GPU进行网络计算,减少了原先需先构造计算深度学习模型学习模型计算图的时间损耗,使得识别过程得以加速。本发明提出的方法没有改变语音识别网络模型本身的网络结构,是将语音识别网络模型的运算全部放到GPU进行加速运算,最后的结果并不会改变,识别效果准确能保持一致。另外,提高了服务器显卡的利用率。由于将模型推理都放到GPU上,使得GPU的利用率大大提高,有效地利用了宝贵的显卡资源。
在一实施例中,如图3所示,步骤S20中,即根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存,具体包括如下步骤:
S21:接收语音特征提取请求,根据所述语音特征提取请求获取当前目标显卡的所述显卡资源信息,所述显卡资源信息包括当前所述Kaldi平台的可用显存大小和可用GPU上下文资源。
在需进行语音识别时,上游系统会向服务器发送语音特征提取请求,在服务器接收到该语音特征提取请求后,服务器首先根据所述语音特征提取请求获取当前目标显卡的所述显卡资源信息,所述显卡资源信息包括当前所述Kaldi平台的可用显存大小和可用GPU上下文资源。此过程是为了判定当前的显卡是否足够后续的语音识别需求。其中,目标显卡是从服务器集群中任意选取的其中一个显卡。
在一些实施例中,为了提高识别效率,如图4所示,步骤S21中,所述根据所述语音特征提取请求获取当前显卡的所述显卡资源信息,具体包括如下步骤:
S211:根据所述语音特征提取请求,获取当前所有显卡的显卡资源信息;
S212:按照显存从大到小的顺序,依次从当前所有显卡选取显第一数量的显卡作为候选显卡;
S213:从所述候选显卡中确定出可用GPU上下文资源最高的显卡作为所述目标显卡。
对于步骤S211-S23,在接收到语音特征提取请求之后,先获取前所有显卡的显卡资源信息,由于是服务器集群中,服务器存在多个显卡,首先获取当前所有显卡的显卡资源信息,按照显存从大到小的顺序,依次当前所有显卡选取显第一数量的显卡作为候选显卡,例如从所有显卡中,获取显存大小排在前10位的显卡作为候选显卡。再从候选显卡中确定出可用GPU上下文资源最高的显卡作为所述目标显卡,需要说明的是,显卡的显存越大以及GPU上下文资源越多,说明更可能适应后续的计算,再进行后续判定目标显卡是否可用的步骤。
S22:分析运行所述已训练好的语音识别深度学习模型的所需显存大小和所需GPU上下文资源。
在选出目标显卡之后,分析运行所述已训练好的语音识别深度学习模型的所需显存大小和所需GPU上下文资源。其中,语音识别深度学习模型的所需显存大小和所需GPU上下文资源可依据经验判定,例如,试在常规主机中试跑该语音识别深度学习模型所需的资源,从而判定语音识别深度学习模型的所需显存大小和所需GPU上下文资源。
在一实施例中,步骤S22中,运行所述已训练好的语音识别深度学习模型的所需显存大小通过如下方式获取:确定所述已训练好的语音识别深度学习模型自身所占用的容量大小;确定运行所述语音识别深度学习模型所需的容量大小;将所述占用的容量大小和所需的容量大小两者的和作为所述所需显存大小。这是仅仅是提供其中一种实施方式,在其他实施方式中,也可用选择大于所述占用的容量大小和所需的容量大小两者的和的容量作为所需的容量大小,具体不做限定。
S23:分别判断所述可用显存大小和GPU上下文资源,是否均满足所需显存大小和所需GPU上下文资源。
S24:当判定均满足,则依据所述可用GPU上下文资源预先申请所述目标GPU上下文资源,并依据所述可用显存大小为所述语音识别网络模型分配所述目标显存。
在分析运行所述已训练好的语音识别深度学习模型的所需显存大小和所需GPU上下文资源之后,分别将当前可用显存大小和所需显存大小进行对比,并将当前可用GPU上下文资源和所需GPU上下文资源进行对比,以分别判断所述可用显存大小和所需GPU上下文资源,是否均满足所需显存大小和所需GPU上下文资源。当前可用GPU上下文资源大于或等于所需GPU上下文资源进行对比,且所述可用显存大小大于或等于所需显存大小,则判定结果为均满足。
当判定均满足,则依据所述可用GPU上下文资源预先申请所述目标GPU上下文资源,并依据所述可用显存大小为所述语音识别网络模型分配所述目标显存。其中,依据所述可用GPU上下文资源预先申请所述目标GPU上下文资源,可用指的是申请全部的可用GPU上下文资源作为目标GPU上下文资源,将可用显存大小全部分配为所述目标显存,具体不做限定。例如,在一些实施方式中,当资源足够多时,也可用从可用GPU上下文资源申请中申请所需的GPU上下文资源作为目标GPU上下文资源,从可用显存中分配部分显存作为目标显存。通过该实施方式,可用合理的分配显卡资源,极大的利用了显卡资源,提高显卡资源利用率。
在一实施例中,当判定其中一项为不满足,说明GPU的显存不够的时候,后续语音识别网络模型将无法加载进显存中,则会输出报错信息和转换方式提示信息,作为一个实施例中,当接收到用户依据所述转换提示信息响应的确认指令时,将所述语音识别网络模型加载至内存中,在内存中调用所述语音识别网络模型对所述原始语音信息进行特征提取,利用CPU进行后续的模型调用和加载。在该实施例中,为了保证方案得以实施,可用设置两种方案,一种是当资源不足时,直接报错退出,另一种是用户自行再选择模型的加载方案,以便于后续调用该模型,提高了方案的可实施性。
在一实施例中,本发明还将目标GPU上下文资源和目标显存的申请和分配记录信息存储于区块链网络中。
本实施例还将目标GPU上下文资源和目标显存的申请和分配记录信息存储于区块链网络中,本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。将数据库部署于区块链可提高数据存储的安全性。
在一实施例中,步骤S30中,如图5所示,也即将所述语音识别网络模型加载至所述目标显存,具体包括如下步骤:
S31:获取所述语音识别网络模型对应的模型结构体,并预先保存在处理器内存中,其中,所述模型结构体包括多个模块成员。
在加载模型时,需先获取所述语音识别网络模型对应的模型结构体,如前述,训练好的语音识别网络模型包括X-Vector模型、F-TDNN模型等各种用于后续语音识别过程中所需用到的深度学习网络模型。深度学习网络模型模块对应一模型结构体,该模型结构体指的是构成该深度学习模块所需的功能模块体,该模型结构体包括多个模块成员,每个模块成员用于实现模型中某种特定的功能或操作。例如,训练好的网络模型包括X-Vector模型、F-TDNN模型等各种深度学习网络模型,其中,X-Vector模型是一种声纹模型,F-TDNN模型是一种声学模型,还包括提取MFCC倒谱特征(梅尔倒谱系数特征),并做VAD(静音抑制)、CMVN(倒谱均值方差归一化)等操作的模型成员、其中,X-Vector模型用于提声纹特征提取,F-TDNN模型用于声学特征提取,以声纹提取提取为例,如图6所示,X-Vector模型和F-TDNN模型中包括第1层算子、第2层算子、第3层算子、...N层算子,共同构成完整的深度学习网络模型。
S32:在接收到语音特征提取请求后,从所述Kaldi平台的预设模型文件中提取所述模型结构体各模块成员对应的网络参数。
S33:在所述内存中初始化所述模型结构体,并将所述各模块成员对应的网络参数加载到所述模型结构体的各模块成员中。
需要说明的是,构成模型结构体各模块成员具有对应的网络参数,包括各层算子的权重、偏移和涉及的矩阵等参数,本发明中,需从所述Kaldi平台的预设模型文件中提取所述模型结构体各模块成员对应的网络参数,在所述内存中初始化所述模型结构体,并将所述各模块成员对应的网络参数加载到所述模型结构体的各模块成员中,使得该深度学习网络模型初始化完毕且参数化。
S34:将经过模型参数加载的所述模型结构体拷贝至所述目标显存中。
需要说明的是,经过模型初始化话和导入网络参数后,该深度学习网络模型便具备完整的特征提取功能,便可将经过模型参数加载的所述模型结构体后,将经过模型参数加载的所述模型结构体拷贝至所述目标显存中,用于后续的特征提取。
在一实施例中,步骤S40中,也即在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取,具体包括如下步骤:
S41:在所述目标显存中,将所述语音识别网络模型的各模块成员分别放入到多个CUDA流中,其中,每个所述CUDA流,均用于将对应的模块成员所包含的各个计算分配至多个GPU计算核心中;
S42:利用多个所述CUDA流执行所述语音识别网络模型的功能,以对所述原始语音信息进行特征提取;
如前面所述,在资源充足的情况下,每个显卡会对于一个GPU上下文资源,并可以在这个GPU上下文资源再申请CUDA Stream(也即CUDA流),需要说明的是,一个GPU上下文资源可以有多个CUDA流,后续执行模型时的API操作都是在某个流上进行。因此,需先申请后续执行所需的目标GPU上下文资源。随后,在所述目标显存中,将所述语音识别网络模型的各模块成员分别放入到目标GPU上下文资源的多个CUDA流中,其中,每个所述CUDA流,均用于将对应的模块成员所包含的各个计算分配至多个GPU计算核心中,每个CUDA流可以利用成千上百个GPU计算核心参与到计算中,从而完成各模型成员的功能,如每一层算子的计算。
S43:当所述GPU计算核心完成自身的计算工作时,释放所述GPU计算核心所占用的显存。
当其中一个GPU计算核心完成自身的计算工作时,会释放所述GPU计算核心所占用的显存,从而避免占用显存空间,充分利用了显存资源。
如图6所示,深度学习网络模型包括第1层算子、第2层算子、第3层算子、...N层算子,在将该深度学习网络模型和相应的参数加载如目标显存后,便能在目标显存中,利用CUDA流调用加载至目标显存的深度学习网络模型的各个模型成员的计算。例如,具体实现如下过程:
(1)将输入的8K/16bit的WAV格式原始声纹语音,提取MFCC倒谱特征,并做VAD、CMVN等操作,供后续提取声纹特征之用。
(2)利用事先实现好的各层算子,包括矩阵运算、拼帧操作,将第1步得到的语音特征作为输入,通过算子的矩阵或其他计算,最后得到声纹特征作为输出。
(3)将第1、2步计算过程中申请的显存资源释放后,返回声纹特征给上游系统。
重复执行第1步到第3步,以完成连续的语音声纹识别过程,上游系统指的是前端的业务系统,是用声纹识别服务的系统,对声纹语音进行各算子的计算处理后得到声纹特征,将声纹特征返回给业务系统,业务系统进行下一步注册或验证等涉及声纹的操作,重复计算指的是每次调用提取特征接口,重复1-3步的操作。
从上述内容也可以看出,本发明会申请好足够的内存和显存资源,并将模型加载内存并拷贝到显存中。对于每一次的特征提取,都会申请GPU计算核心,和对应大小的内存和显存,并在使用之后将资源释放。每次提取声纹特征时,先将语音特征计算好。再将这个语音特征送入到网络中,并与每一层参数进行运算,此时使用了服务初始化时载入的模型内容。
综上所述,本发明提供的方法有以下几个优点:
极大地提升了网络推理的时效。原有的Kaldi构造网络拓扑图适合CPU中计算,无法在放到GPU中进行加速。通过去CPU掉网络拓扑图构造这一步骤,重新构建在GPU的推理过程(也即放入显存中调用CUDA流处理),实现了整体系统的加速。
结果准确。本文提出的方法没有改变深度学习网络模型本身的网络结构,将运算全部放到GPU进行加速运算,输入矩阵和网络参数都保持不变,最后的结果也与Kaldi计算的保持一致。
提高了显卡的利用率。由于将模型推理都放到GPU上,使得GPU的利用率大大提高,有效地利用了宝贵的显卡资源。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种基于显卡资源的语音特征提取装置,该基于显卡资源的语音特征提取装置与上述实施例中基于显卡资源的语音特征提取方法一一对应。如图7所示,该基于显卡资源的语音特征提取装置包括获取模块101、申请模块102、加载模块103、创建模块104和提取模块105。各功能模块详细说明如下:
获取模块101,用于从Kaldi平台中获取已训练好的语音识别网络模型和原始语音信息;
申请模块102,用于根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存;
加载模块103,用于将所述语音识别网络模型加载至所述目标显存;
创建模块104,用于在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流;
提取模块105,用于在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取。
在一实施例中,申请模块102,具体用于:
接收语音特征提取请求,根据所述语音特征提取请求获取当前目标显卡的所述显卡资源信息,所述显卡资源信息包括当前所述Kaldi平台的可用显存大小和可用GPU上下文资源;
分析运行所述已训练好的语音识别深度学习模型的所需显存大小和所需GPU上下文资源;
分别判断所述可用显存大小和GPU上下文资源,是否均满足所需显存大小和所需GPU上下文资源;
当判定均满足,则依据所述可用GPU上下文资源预先申请所述目标GPU上下文资源,并依据所述可用显存大小为所述语音识别网络模型分配所述目标显存。
在一实施例中,加载模块103,具体用于:
获取所述语音识别网络模型对应的模型结构体,并预先保存在处理器内存中,其中,所述模型结构体包括多个模块成员;
在接收到语音特征提取请求后,从所述Kaldi平台的预设模型文件中提取所述模型结构体各模块成员对应的网络参数;
在所述内存中初始化所述模型结构体,并将所述各模块成员对应的网络参数加载到所述模型结构体的各模块成员中;
将经过模型参数加载的所述模型结构体拷贝至所述目标显存中。
提取模块105,具体用于:
在所述目标显存中,将所述语音识别网络模型的各模块成员分别放入到多个CUDA流中,其中,每个所述CUDA流,均用于将对应的模块成员所包含的各个计算分配至多个GPU计算核心中;
利用多个所述CUDA流完成所述语音识别网络模型的功能,以对所述原始语音信息进行特征提取;
当所述GPU计算核心完成自身的计算工作时,释放所述GPU计算核心所占用的显存。
在一实施例中,所述装置还包括输出模块,
该输出模块用于:当判定其中一项为不满足,则输出报错信息和转换方式提示信息;
加载模块还用于:当接收到用户依据所述转换提示信息响应的确认指令时,将所述语音识别网络模型加载至内存中,在内存中调用所述语音识别网络模型对所述原始语音信息进行特征提取。
在一实施例中,申请模块102,具体用于:
根据所述语音特征提取请求,获取当前所有显卡的显卡资源信息;
按照显存从大到小的顺序,依次从当前所有显卡选取显第一数量的显卡作为候选显卡;
从所述候选显卡中确定出可用GPU上下文资源最高的显卡作为所述目标显卡。
在一实施例中,申请模块102通过如下方式获取运行所述已训练好的语音识别深度学习模型的所需显存大小:
确定所述已训练好的语音识别深度学习模型自身所占用的容量大小;
确定运行所述语音识别深度学习模型所需的容量大小;
将所述占用的容量大小和所需的容量大小两者的和作为所述所需显存大小。
本发明实施例提供的显卡资源的语音特征提取装置,利用CUDA流绕开原有Kaldi构造网络拓扑图,直接将已训练好的语音识别网络模型放到显卡的显存中,直接利用显卡的CUDA流调用音识别网络模型执行语音识别的过程,直接利用GPU进行网络计算,减少了原先需先构造计算深度学习模型学习模型计算图的时间损耗,使得提取提取过程得以加速。本发明提出的方法没有改变语音识别网络模型本身的网络结构,是将语音识别网络模型的运算全部放到GPU进行加速运算,最后的结果并不会改变,识别效果准确能保持一致。另外,提高了服务器显卡的利用率。由于将模型推理都放到GPU上,使得GPU的利用率大大提高,有效地利用了宝贵的显卡资源。
关于显卡资源的语音特征提取装置的具体限定可以参见上文中对于显卡资源的语音特征提取方法的限定,在此不再赘述。上述显卡资源的语音特征提取装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的服务器集群通过网络连接通信。该计算机程序被处理器执行时以实现一种基于显卡资源的语音特征提取方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
从Kaldi平台中获取已训练好的语音识别网络模型;
根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存;
将所述语音识别网络模型加载至所述目标显存,并在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流;
获取原始语音信息,在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
从Kaldi平台中获取已训练好的语音识别网络模型;
根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存;
将所述语音识别网络模型加载至所述目标显存,并在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流;
获取原始语音信息,在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于显卡资源的语音特征提取方法,其特征在于,包括:
从Kaldi平台中获取已训练好的语音识别网络模型;
根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存;
将所述语音识别网络模型加载至所述目标显存,并在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流;
获取原始语音信息,在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取。
2.如权利要求1所述的基于显卡资源的语音特征提取方法,其特征在于,所述根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存,包括:
接收语音特征提取请求,根据所述语音特征提取请求获取当前目标显卡的所述显卡资源信息,所述显卡资源信息包括当前所述Kaldi平台的可用显存大小和可用GPU上下文资源;
分析运行所述已训练好的语音识别深度学习模型的所需显存大小和所需GPU上下文资源;
分别判断所述可用显存大小和GPU上下文资源,是否均满足所需显存大小和所需GPU上下文资源;
当判定均满足,则依据所述可用GPU上下文资源预先申请所述目标GPU上下文资源,并依据所述可用显存大小为所述语音识别网络模型分配所述目标显存,并将申请和分配记录信息存储于区块链网络中。
3.如权利要求1所述的基于显卡资源的语音特征提取方法,其特征在于,所述将所述语音识别网络模型加载至所述目标显存,包括:
获取所述语音识别网络模型对应的模型结构体,并预先保存在处理器内存中,其中,所述模型结构体包括多个模块成员;
在接收到语音特征提取请求后,从所述Kaldi平台的预设模型文件中提取所述模型结构体各模块成员对应的网络参数;
在所述内存中初始化所述模型结构体,并将所述各模块成员对应的网络参数加载到所述模型结构体的各模块成员中;
将经过模型参数加载的所述模型结构体拷贝至所述目标显存中。
4.如权利要求1所述的基于显卡资源的语音特征提取方法,其特征在于,在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取,包括:
在所述目标显存中,将所述语音识别网络模型的各模块成员分别放入所述目标GPU上下文资源对应的多个CUDA流中,其中,每个所述CUDA流,均用于将对应的模块成员所包含的各个计算分配至多个GPU计算核心中;
利用多个所述CUDA流执行所述语音识别网络模型的功能,以对所述原始语音信息进行特征提取。
5.如权利要求2所述的基于显卡资源的语音特征提取方法,其特征在于,所述分别判断所述可用显存大小和GPU上下文资源,是否均满足所需显存大小和所需GPU上下文资源之后,所述方法还包括:
当判定其中一项为不满足,则输出报错信息和转换方式提示信息;
当接收到用户依据所述转换提示信息响应的确认指令时,将所述语音识别网络模型加载至内存中,在内存中调用所述语音识别网络模型对所述原始语音信息进行特征提取。
6.如权利要求2所述的基于显卡资源的语音特征提取方法,其特征在于,所述根据所述语音特征提取请求获取当前显卡的所述显卡资源信息,包括:
根据所述语音特征提取请求,获取当前所有显卡的显卡资源信息;
按照显存从大到小的顺序,依次从当前所有显卡选取显第一数量的显卡作为候选显卡;
从所述候选显卡中确定出可用GPU上下文资源最高的显卡作为所述目标显卡。
7.如权利要求2所述的基于显卡资源的语音特征提取方法,其特征在于,运行所述已训练好的语音识别深度学习模型的所需显存大小通过如下方式获取:
确定所述已训练好的语音识别深度学习模型自身所占用的容量大小;
确定运行所述语音识别深度学习模型所需的容量大小;
将所述占用的容量大小和所需的容量大小两者的和作为所述所需显存大小。
8.一种基于显卡资源的语音特征提取装置,其特征在于,包括:
获取模块,用于从Kaldi平台中获取已训练好的语音识别网络模型和原始语音信息;
申请模块,用于根据显卡资源信息和所述语音识别网络模型,预先申请目标GPU上下文资源,并为已训练好的语音识别深度学习模型分配对应的目标显存;
加载模块,用于将所述语音识别网络模型加载至所述目标显存;
创建模块,用于在所述目标GPU上下文资源创建一个或多个统一计算设备架构CUDA流;
提取模块,用于在所述目标显存中,利用一个或多个所述CUDA流调用所述语音识别网络模型对所述原始语音信息进行特征提取。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述基于显卡资源的语音特征提取方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述基于显卡资源的语音特征提取方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110711773.0A CN113450770B (zh) | 2021-06-25 | 2021-06-25 | 基于显卡资源的语音特征提取方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110711773.0A CN113450770B (zh) | 2021-06-25 | 2021-06-25 | 基于显卡资源的语音特征提取方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113450770A true CN113450770A (zh) | 2021-09-28 |
CN113450770B CN113450770B (zh) | 2024-03-05 |
Family
ID=77812836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110711773.0A Active CN113450770B (zh) | 2021-06-25 | 2021-06-25 | 基于显卡资源的语音特征提取方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113450770B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114217976A (zh) * | 2021-12-23 | 2022-03-22 | 北京百度网讯科技有限公司 | 任务处理方法、装置、设备及存储介质 |
CN117406844A (zh) * | 2023-11-14 | 2024-01-16 | 珠海世宁达科技有限公司 | 一种基于神经网络的显卡风扇控制方法及相关装置 |
CN117687802A (zh) * | 2024-02-02 | 2024-03-12 | 湖南马栏山视频先进技术研究院有限公司 | 一种基于云平台的深度学习并行调度方法、装置和云平台 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104538033A (zh) * | 2014-12-29 | 2015-04-22 | 江苏科技大学 | 基于嵌入式gpu系统的并行化语音识别系统及方法 |
US20170236518A1 (en) * | 2016-02-16 | 2017-08-17 | Carnegie Mellon University, A Pennsylvania Non-Profit Corporation | System and Method for Multi-User GPU-Accelerated Speech Recognition Engine for Client-Server Architectures |
CN109087630A (zh) * | 2018-08-29 | 2018-12-25 | 深圳追科技有限公司 | 语音识别的方法及相关装置 |
CN110600020A (zh) * | 2019-09-12 | 2019-12-20 | 上海依图信息技术有限公司 | 一种梯度传输方法及装置 |
US10878806B1 (en) * | 2018-12-31 | 2020-12-29 | Medallia, Inc. | System and computer-executable program code for accelerated rescoring with recurrent neural net language models on hybrid CPU/GPU machines using a frame-wise, delayed dispatch of RNNLM score computation tasks to the GPU(s) |
CN112289307A (zh) * | 2020-11-12 | 2021-01-29 | 四川云从天府人工智能科技有限公司 | 基于GRPC实现Kaldi语音识别服务的方法、系统及介质 |
-
2021
- 2021-06-25 CN CN202110711773.0A patent/CN113450770B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104538033A (zh) * | 2014-12-29 | 2015-04-22 | 江苏科技大学 | 基于嵌入式gpu系统的并行化语音识别系统及方法 |
US20170236518A1 (en) * | 2016-02-16 | 2017-08-17 | Carnegie Mellon University, A Pennsylvania Non-Profit Corporation | System and Method for Multi-User GPU-Accelerated Speech Recognition Engine for Client-Server Architectures |
CN109087630A (zh) * | 2018-08-29 | 2018-12-25 | 深圳追科技有限公司 | 语音识别的方法及相关装置 |
US10878806B1 (en) * | 2018-12-31 | 2020-12-29 | Medallia, Inc. | System and computer-executable program code for accelerated rescoring with recurrent neural net language models on hybrid CPU/GPU machines using a frame-wise, delayed dispatch of RNNLM score computation tasks to the GPU(s) |
CN110600020A (zh) * | 2019-09-12 | 2019-12-20 | 上海依图信息技术有限公司 | 一种梯度传输方法及装置 |
CN112289307A (zh) * | 2020-11-12 | 2021-01-29 | 四川云从天府人工智能科技有限公司 | 基于GRPC实现Kaldi语音识别服务的方法、系统及介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114217976A (zh) * | 2021-12-23 | 2022-03-22 | 北京百度网讯科技有限公司 | 任务处理方法、装置、设备及存储介质 |
CN114217976B (zh) * | 2021-12-23 | 2023-02-28 | 北京百度网讯科技有限公司 | 任务处理方法、装置、设备及存储介质 |
CN117406844A (zh) * | 2023-11-14 | 2024-01-16 | 珠海世宁达科技有限公司 | 一种基于神经网络的显卡风扇控制方法及相关装置 |
CN117406844B (zh) * | 2023-11-14 | 2024-04-19 | 珠海世宁达科技有限公司 | 一种基于神经网络的显卡风扇控制方法及相关装置 |
CN117687802A (zh) * | 2024-02-02 | 2024-03-12 | 湖南马栏山视频先进技术研究院有限公司 | 一种基于云平台的深度学习并行调度方法、装置和云平台 |
CN117687802B (zh) * | 2024-02-02 | 2024-04-30 | 湖南马栏山视频先进技术研究院有限公司 | 一种基于云平台的深度学习并行调度方法、装置和云平台 |
Also Published As
Publication number | Publication date |
---|---|
CN113450770B (zh) | 2024-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113450770B (zh) | 基于显卡资源的语音特征提取方法、装置、设备及介质 | |
CN109559734B (zh) | 声学模型训练的加速方法和装置 | |
EP3502975A1 (en) | Methods and apparatus for model parallelism in artificial neural networks | |
CN108292241A (zh) | 处理计算图 | |
US11429434B2 (en) | Elastic execution of machine learning workloads using application based profiling | |
CN111274034A (zh) | 模型推理的资源分配方法、装置、计算机设备和存储介质 | |
CN110554913A (zh) | 神经网络系统及其操作方法以及应用处理器 | |
CN111488177A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
JP2016218513A (ja) | ニューラルネットワーク及びそのためのコンピュータプログラム | |
TW202014886A (zh) | 晶片及基於其的資料處理方法 | |
CN111738017B (zh) | 一种意图识别方法、装置、设备及存储介质 | |
KR20190136578A (ko) | 음성 인식 방법 및 장치 | |
CN106445681A (zh) | 分布式任务调度系统及方法 | |
CN112395857B (zh) | 基于对话系统的语音文本处理方法、装置、设备及介质 | |
CN116644804A (zh) | 分布式训练系统、神经网络模型训练方法、设备和介质 | |
CN113569196A (zh) | 数据处理方法、装置、介质和设备 | |
CN115586961A (zh) | 一种ai平台计算资源任务调度方法、装置及介质 | |
CN115860066A (zh) | 一种基于批处理的神经网络推理流水线复用的方法 | |
Zhang et al. | Experimental evaluation of the performance of Gpipe parallelism | |
CN117687774A (zh) | 用于算力调度的任务模型训练方法及算力调度方法和系统 | |
CN113052687A (zh) | 一种交易路由分发方法和相关装置 | |
CN114818863A (zh) | 一种模型训练方法及装置 | |
CN113918345A (zh) | 一种配置硬件的容量计算方法、装置、计算机设备及介质 | |
CN112633516A (zh) | 性能预测和机器学习编译优化方法及装置 | |
US20240176664A1 (en) | Artificial intelligence application provision method and apparatus for supporting edge computing for cyber-physical systems |
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 |