CN110288999B - 语音识别方法、装置、计算机设备及存储介质 - Google Patents

语音识别方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN110288999B
CN110288999B CN201910740387.7A CN201910740387A CN110288999B CN 110288999 B CN110288999 B CN 110288999B CN 201910740387 A CN201910740387 A CN 201910740387A CN 110288999 B CN110288999 B CN 110288999B
Authority
CN
China
Prior art keywords
data
voice
target
data packet
frame
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
CN201910740387.7A
Other languages
English (en)
Other versions
CN110288999A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910740387.7A priority Critical patent/CN110288999B/zh
Publication of CN110288999A publication Critical patent/CN110288999A/zh
Application granted granted Critical
Publication of CN110288999B publication Critical patent/CN110288999B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • G10L2015/025Phonemes, fenemes or fenones being the recognition units
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • G10L2015/027Syllables being the recognition units
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics

Abstract

本发明公开了一种语音识别方法、装置、计算机设备及存储介质,属于人工智能技术领域。人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能软件技术包括语音技术,语音技术的关键技术有自动语音识别技术,自动语音识别技术是指自动识别人的语音以得到文字信息的过程。本发明通过仅基于第二数据包进行语音识别,减少了参与语音识别的数据包的数量,减少了运算时间。

Description

语音识别方法、装置、计算机设备及存储介质
本申请是申请日为2019年07月02日、申请号为201910589578.8、发明名称为“语音识别方法、装置、计算机设备及存储介质”的分案申请。
技术领域
本发明涉及人工智能技术领域,特别涉及一种语音识别方法、装置、计算机设备及存储介质。
背景技术
语音识别技术是指识别人的语音以得到文字信息的过程。随着人工智能技术的发展,语音识别技术被广泛应用于多种场景,例如,手机中输入法应用可以识别用户语音,以显示对应文字,智能音箱、智能电视等识别用户语音,以执行对应指令。
相关技术中,语音识别过程可以包括:用户发出语音时,终端将实时采集的语音数据封装为多个数据包并向服务器发送。服务器实时识别每个数据包所对应的文字,并向终端返回该多个数据包对应的文字。
上述语音识别时,需要对每个数据包均进行语音识别,导致语音识别的响应时间较长,语音识别效率较低。
发明内容
本发明实施例提供了一种语音识别方法、装置、计算机设备及存储介质,能够解决语音识别过程要么存在准确率低的问题,要么存在识别效率低的问题。所述技术方案如下:
一方面,提供了一种语音识别方法,所述方法包括:
获取至少两个数据包,所述至少两个数据包用于承载目标语音消息;
对所述至少两个数据包中的第二数据包内语音数据进行切分,得到多帧语音数据,所述第二数据包为所述至少两个数据包中除最后一个数据包以外的数据包;
对每帧语音数据进行声学特征提取,得到所述每帧语音数据的声学特征;
根据第三目标数目和第四目标数目,获取所述第三目标数目的帧集合,所述第三目标数目用于指示一次声学似然得分确定过程所采用的帧集合的数目;
基于所述第三目标数目的帧集合中每个帧集合的声学特征,确定所述每帧语音数据的声学似然得分;
根据所述每帧语音数据的声学似然得分,确定所述每帧语音数据的语音单元;
根据所述多帧语音数据的至少两个语音单元,确定所述多帧语音数据对应的字符或字符串;
根据所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串。
在一种可能实现方式中,所述根据所述第二数据包与所述第一数据包之间的关联强度以及所述第二数据包中每帧语音数据的信号强度,获取所述第二数据包所承载语音消息的第二信号能量包括:
获取所述第二数据包在所述至少两个数据包中的排列位置;
根据所述第二数据包中每帧语音数据的信号强度和所述第二数据包在所述至少两个数据包的排列位置,获取所述第二数据包所承载语音消息的第二信号能量;
其中,所述排列位置用于指示所述第二数据包与所述第一数据包的关联强度,所述第二数据包的排列位置越靠后,与所述第一数据包之间的关联强度越大;所述第二数据包的排列位置越靠前,与所述第一数据包之间的关联强度越小。
在一种可能实现方式中,所述有效指示信息为所述第一数据包承载有效语音消息的几率;所述根据所述第一数据包的有效指示信息,获取所述第一数据包所承载语音消息对应的至少两个语音单元包括:
当所述有效指示信息不小于第二阈值时,将所述第一数据包所承载语音消息对应的至少两个备选语音单元,确定为所述第一数据包对应的至少两个语音单元,所述第二阈值大于所述第一阈值;
当所述有效指示信息大于第一阈值且小于所述第二阈值时,根据所述有效指示信息,从所述第一数据包所承载语音消息对应的至少两个备选语音单元中,筛选出第一目标数目的备选语音单元作为所述第一数据包对应的至少两个语音单元。
在一种可能实现方式中,所述当所述有效指示信息大于第一阈值且小于所述第二阈值时,根据所述有效指示信息,从所述第一数据包所承载语音消息对应的至少两个备选语音单元中,筛选出第一目标数目的备选语音单元作为所述第一数据包对应的至少两个语音单元包括:
当所述有效指示信息大于第一阈值且小于所述第二阈值时,获取所述第一数据包内语音数据的声学似然得分,所述声学似然得分用于指示每个备选语音单元为语音数据承载的语音消息所对应的真实语音单元的几率;
根据所述有效指示信息和所述至少两个备选语音单元的最大保留数目,确定所述至少两个语音单元的第一目标数目;
从所述至少两个备选语音单元中筛选出声学似然得分满足第三目标条件的第一目标数目的语音单元。
在一种可能实现方式中,所述当所述有效指示信息大于第一阈值且小于所述第二阈值时,获取所述第一数据包内语音数据的声学似然得分包括:
按照目标帧移和目标帧长,将所述第一数据包切分为第二目标数目帧语音数据;
对于每帧语音数据,根据所述语音数据的相邻帧语音数据,确定所述语音数据所在的帧集合,得到第三目标数目的语音帧集合,每个帧集合包括相邻多帧语音数据;
根据所述第三目标数目的帧集合,确定所述第一数据包中每帧语音数据的声学似然得分。
另一方面,提供了一种语音识别方法,所述方法包括:
采集目标语音消息所对应的语音数据;
基于目标帧移、第三目标数目和目标采样率,确定目标数据量,所述目标数据量用于指示一个数据包所包括的语音数据的数据量,所述第三目标数目用于指示一次声学似然得分确定过程所采用的帧集合的数目,每个帧集合包括相邻多帧语音数据;
按照目标数据量将所述语音数据进行封装,将封装的数据包发送至服务器,由所述服务器基于所述数据包,确定所述目标语音消息对应的目标字符串,所述数据包的数目为至少两个,每个数据包的数据量为所述目标数据量。
另一方面,提供了一种语音识别装置,所述装置包括:
获取模块,用于获取至少两个数据包,所述至少两个数据包用于承载目标语音消息;
确定模块,用于对所述至少两个数据包中的第二数据包内语音数据进行切分,得到多帧语音数据,所述第二数据包为所述至少两个数据包中除最后一个数据包以外的数据包;对每帧语音数据进行声学特征提取,得到所述每帧语音数据的声学特征;根据第三目标数目和第四目标数目,获取所述第三目标数目的帧集合,所述第三目标数目用于指示一次声学似然得分确定过程所采用的帧集合的数目;基于所述第三目标数目的帧集合中每个帧集合的声学特征,确定所述每帧语音数据的声学似然得分;根据所述每帧语音数据的声学似然得分,确定所述每帧语音数据的语音单元;根据所述多帧语音数据的至少两个语音单元,确定所述多帧语音数据对应的字符或字符串;根据所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串。
在一种可能实现方式中,所述确定模块用于:
对于每帧语音数据,根据所述帧语音数据的声学似然得分,从所述帧语音数据的至少两个备选语音单元中筛选出得分最大的备选语音单元,作为所述帧语音数据的语音单元,每帧语音数据的声学似然得分包括对应的至少两个备选语音单元,以及每个备选语音单元的得分。
在一种可能实现方式中,所述确定模块用于:
确定所述多帧语音数据对应的节点以及节点的路径代价;
根据所述节点的路径代价,从第一帧语音数据对应的首位节点进行遍历,直到最后一帧语音数据对应的末位节点,遍历出多条备选路径;
将所述多条备选路径中路径代价最大的路径,作为目标路径;
根据所述目标路径中各个节点对应的语音单元,作为所述第二数据包的至少两个语音单元;
当所述至少两个语音单元满足第四目标条件时,基于语言模型,识别出所述至少两个语音单元对应的至少两个备选字符的得分,所述第四目标条件为所述至少两个语音单元组成一个音节;
根据所述至少两个备选字符的得分,确定出所述多帧语音数据对应的字符或字符串。
在一种可能实现方式中,所述确定模块用于:
对于每帧语音数据,根据所述帧语音数据的前一帧语音数据对应的第一节点,获取所述第一节点的至少两个后继节点,每个后继节点用于指示所述帧语音数据的一个备选语音单元;
从所述帧语音数据的声学似然得分中,获取每个备选语音单元的得分;
根据每个备选语音单元的得分,从所述至少两个后继节点中确定出第二节点;
将所述第二节点作为所述帧语音数据的节点,所述第二节点的路径代价为对应备选语音单元的得分。
在一种可能实现方式中,所述确定模块还用于:
基于每个数据包所承载语音消息的信号能量,确定所述至少两个数据包中第一数据包的有效指示信息,所述有效指示信息用于指示所述第一数据包承载有效语音消息的可能程度,所述有效语音消息是指除噪音以外的语音消息,所述第一数据包为所述至少两个数据包中最后一个数据包;
所述根据所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串,包括:
当所述第一数据包的有效指示信息满足第一目标条件时,根据所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串;
其中,所述第一目标条件包括:所述有效指示信息指示所述第一数据包未承载有效语音消息,和,所述有效指示信息小于第一阈值中的至少一项。
在一种可能实现方式中,所述确定模块,包括:
第一确定单元,用于基于所述第一数据包与所述第二数据包所包括每帧语音数据的信号强度,确定所述第一数据包所承载语音消息的第一信号能量和所述第二数据包所承载语音消息的第二信号能量;
第二确定单元,用于基于所述第一信号能量与所述第二信号能量之间的相对大小,确定所述第一数据包的有效指示信息。
在一种可能实现方式中,所述第一确定单元,还用于对于所述第一数据包,根据所述第一数据包中每帧语音数据的信号强度,获取所述第一数据包所承载语音消息的第一信号能量;对于每个第二数据包,根据所述第二数据包与所述第一数据包之间的关联强度以及所述第二数据包中每帧语音数据的信号强度,获取所述第二数据包所承载语音消息的第二信号能量,所述关联强度用于指示所述第二数据包中语音数的信号强度对所述第一数据包中语音数据的信号强度的影响程度。
在一种可能实现方式中,所述第一确定单元,还用于获取所述第二数据包在所述至少两个数据包中的排列位置;根据所述第二数据包中每帧语音数据的信号强度和所述第二数据包在所述至少两个数据包的排列位置,获取所述第二数据包所承载语音消息的第二信号能量;其中,所述排列位置用于指示所述第二数据包与所述第一数据包的关联强度,所述第二数据包的排列位置越靠后,与所述第一数据包之间的关联强度越大;所述第二数据包的排列位置越靠前,与所述第一数据包之间的关联强度越小。
在一种可能实现方式中,所述第二确定单元,还用于根据每个第二数据包所承载语音消息的第二信号能量,确定至少两个第二数据包对应的平均信号能量;
根据所述平均信号能量和所述第一信号能量,确定所述第一信号能量相对于所述第一信号能量和所述平均信号能量的和值的相对比值,将所述相对比值确定为所述有效指示信息。
在一种可能实现方式中,所述确定模块,还用于当所述第一数据包的有效指示信息满足第二目标条件时,根据所述第一数据包的有效指示信息,获取所述第一数据包所承载语音消息对应的至少两个语音单元;
根据所述至少两个语音单元对应的字符和所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串;
其中,所述第二目标条件包括:所述有效指示信息指示所述第一数据包承载有效语音消息,和,所述有效指示信息不小于第一阈值中的至少一项。
在一种可能实现方式中,所述确定模块,还包括:
第一获取单元,用于根据所述第一数据包的有效指示信息,获取所述第一数据包所承载语音消息对应的至少两个语音单元;
第三确定单元,用于根据所述至少两个语音单元对应的字符和所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串。
在一种可能实现方式中,所述有效指示信息为所述第一数据包承载有效语音消息的几率;所述第一获取单元,包括:
确定子单元,用于当所述有效指示信息不小于第二阈值时,将所述第一数据包所承载语音消息对应的至少两个备选语音单元,确定为所述第一数据包对应的至少两个语音单元,所述第二阈值大于所述第一阈值;
筛选子单元,用于当所述有效指示信息大于第一阈值且小于所述第二阈值时,根据所述有效指示信息,从所述第一数据包所承载语音消息对应的至少两个备选语音单元中,筛选出第一目标数目的备选语音单元作为所述第一数据包对应的至少两个语音单元。
在一种可能实现方式中,所述筛选子单元,还用于当所述有效指示信息大于第一阈值且小于所述第二阈值时,获取所述第一数据包内语音数据的声学似然得分,所述声学似然得分用于指示每个备选语音单元为语音数据承载的语音消息所对应的真实语音单元的几率;根据所述有效指示信息和所述至少两个备选语音单元的最大保留数目,确定所述至少两个语音单元的第一目标数目;从所述至少两个备选语音单元中筛选出声学似然得分满足第三目标条件的第一目标数目个语音单元。
在一种可能实现方式中,所述筛选子单元,还用于按照目标帧移和目标帧长,将所述第一数据包切分为第二目标数目帧语音数据;对于每帧语音数据,根据所述语音数据的相邻帧语音数据,确定所述语音数据所在的帧集合,得到第三目标数目的语音帧集合,每个帧集合包括相邻多帧语音数据;根据所述第三目标数目的帧集合,确定所述第一数据包中每帧语音数据的声学似然得分。
在一种可能实现方式中,所述获取模块,包括:
第四确定单元,用于基于目标帧移、第三目标数目和目标采样率,确定目标数据量,所述目标数据量用于指示一个数据包所包括的语音数据的数据量,所述第三目标数目用于指示一次声学似然得分确定过程所采用的帧集合的数目,每个帧集合包括相邻多帧语音数据;
第二获取单元,用于根据所述目标数据量,获取所述至少两个数据包,每个数据包的数据量为所述目标数据量。
在一种可能实现方式中,所述第四确定单元,还用于根据所述目标帧移、所述第三目标数目和所述目标采样率,确定第一目标数据量,所述第一目标数据量用于指示所述至少两个数据包中除第一个数据包以外的数据包内语音数据的数据量;根据所述目标帧移、所述目标帧长、所述第三目标数目、第四目标数目和所述目标采样率,确定第二目标数据量,所述第二目标数据量用于指示所述至少两个数据包中第一个数据包内语音数据的数据量,每个帧集合包括第四目标数目帧语音数据。
另一方面,提供了一种语音识别装置,所述装置包括:
采集模块,用于采集目标语音消息所对应的语音数据;
确定模块,用于基于目标帧移、第三目标数目和目标采样率,确定目标数据量,所述目标数据量用于指示一个数据包所包括的语音数据的数据量,所述第三目标数目用于指示一次声学似然得分确定过程所采用的帧集合的数目,每个帧集合包括相邻多帧语音数据;
发送模块,用于按照目标数据量将所述语音数据进行封装,将封装的数据包发送至服务器,由所述服务器基于所述数据包,确定所述目标语音消息对应的目标字符串,所述数据包的数目为至少两个,每个数据包的数据量为所述目标数据量。
在一种可能实现方式中,所述确定模块用于:
根据所述目标帧移、所述第三目标数目和所述目标采样率,确定第一目标数据量,所述第一目标数据量用于指示所述至少两个数据包中除第一个数据包以外的数据包内语音数据的数据量;
根据所述目标帧移、所述目标帧长、所述第三目标数目、第四目标数目和所述目标采样率,确定第二目标数据量,所述第二目标数据量用于指示所述至少两个数据包中第一个数据包内语音数据的数据量,每个帧集合包括所述第四目标数目帧语音数据。
另一方面,提供了一种计算机设备,所述计算机设备包括一个或至少两个处理器和一个或至少两个存储器,所述一个或至少两个存储器中存储有至少一条指令,所述至少一条指令由所述一个或至少两个处理器加载并执行以实现如上述的语音识别方法所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上述的语音识别方法所执行的操作。
本发明实施例提供的技术方案带来的有益效果至少可以包括:
通过在获取到承载目标语音消息的至少两个数据包时,仅基于该至少两个数据包中的第二数据包进行语音识别,相比于对每个数据包均进行语音识别,减少了参与语音识别的数据包的数量,减少了运算时间。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种语音识别方法的实施环境的示意图;
图2是本发明实施例提供的一种语音识别方法的流程图;
图3是本发明实施例提供的一种节点遍历的示意图;
图4是本发明实施例提供的一种语音识别的流程图;
图5是本发明实施例提供的一种语音识别的流程图;
图6是本发明实施例提供的一种语音识别的流程图;
图7是本发明实施例提供的一种语音识别方法的流程图;
图8是本发明实施例提供的一种语音识别装置的结构示意图;
图9是本发明实施例提供的一种终端的结构示意图;
图10是本发明实施例提供的一种服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明实施例提供的一种语音识别方法的实施环境的示意图,参见图1,该实施环境包括:终端101和服务器102。该终端101上可以安装有目标应用,该服务器102可以为该目标应用的后台服务器,该目标应用具备语音识别功能,该语音识别功能是指识别出语音数据对应的字符串的功能。该终端101可以基于该目标应用,与服务器102进行数据交互,以实现该语音识别功能。例如,该终端101可以采集周围环境中的语音数据,将采集的语音数据发送至服务器102,由该服务器102对该语音数据进行识别,得到该语音数据对应的字符串。
在一种可能场景中,该终端101可以实时对用户发出的目标语音消息进行采集,将采集到的该目标语音消息对应的语音数据封装为多个数据包,该终端101将该多个数据包发送至服务器102。该服务器102可以基于每个数据包中语音数据,对每个数据包所承载语音消息进行语音识别。在识别过程中,该服务器102还可以基于该多个数据包所承载语音消息的信号强度,确定多个数据包中第一数据包承载有效语音消息的可能程度,该服务器102可以在该第一数据包未承载有效语音消息时,仅根据多个数据包中的第二数据包,识别出目标语音消息所对应的目标字符串。在一个可能示例中,该有效语音消息是指除噪音信号以外的语音消息,例如,该有效语音消息可以为用户发出的人声语音消息。
在一种可能场景中,该服务器102还可以将该目标字符串发送至终端101,该终端101在目标应用的应用界面上显示该目标字符串。在一个可能示例中,该终端101可以为手机、平板、个人计算机、笔记本等,该目标应用可以为具备语音识别功能的输入法应用、游戏应用或者社交应用等。例如,用户可以在输入法应用中输入语音,该终端101可以输入法界面上显示语音对应的文字。又例如,游戏应用中可以配置有智能机器人,用户可以在游戏应用中语音输入咨询的问题,终端101可以基于该智能机器人,在游戏界面上显示用户语音对应的问题,以及显示该问题的答案。在另一种可能场景中,该终端101还可以基于该目标字符串,执行该目标字符串在该目标应用中所对应的指令。例如,该终端101可以为智能音箱、智能电视机、智能电视盒子、智能手环等智能设备,该目标应用可以为该智能设备上配置的语音识别模块,例如,智能音箱识别出字符串为“调大音量”时,执行该字符串对应指令,也即是增大音量的过程。
需要说明的是,服务器102可以为一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务器中心。本发明实施例对此均不作具体限定。
图2是本发明实施例提供的一种语音识别方法的流程图。该发明实施例的执行主体为计算机设备,该计算机设备可以为服务器,也可以为终端。参见图2,该方法包括:
201、计算机设备获取至少两个数据包,该至少两个数据包用于承载目标语音消息。
本发明实施例中,该目标语音消息可以为用户、设备等所发出的语音消息,该至少两个数据包中封装有该目标语音消息所对应的语音数据。本步骤中,该计算机设备可以获取一定数据量大小的至少两个数据包。则本步骤可以包括:该计算机设备获取目标数据量,该目标数据量用于指示一个数据包所包括的语音数据的数据量。该计算机设备根据该目标数据量,获取该至少两个数据包,每个数据包的数据量为该目标数据量。在一个可能示例中,该计算机设备可以基于每个数据包内语音数据,对每个数据包所承载的语音消息进行识别,得到每个数据包的识别结果。该目标数据量可以为执行一次语音识别过程所采用的语音数据的数据量。例如,每个数据包的目标数据量可以为1024KB、512KB等。该识别结果可以为:单个字符或者至少两个字符组成的字符串。
在一种可能的实施方式中,该计算机设备可以将数据包内语音数据切分为多帧语音数据,以每帧语音数据为单位进行语音识别,例如,该计算机设备可以基于一定帧数的语音数据的声学似然得分,对每帧语音数据所承载的语音消息进行识别,每帧语音数据的声学似然得分用于指示,该帧语音数据的至少两个备选语音单元中每个备选语音单元为真实语音单元的几率。该计算机设备可以将连续的多帧语音数据作为一个帧集合,基于连续的一定数目的帧集合,进行一次声学似然得分确定过程,以得到每帧语音数据的声学似然得分。则该计算机设备可以结合一次声学似然得分确定过程所需要的帧集合的数目、数据包中语音数据的切分方式等因素,确定该目标数据量的大小。则该过程可以包括:该计算机设备基于目标帧移、第三目标数目和目标采样率,确定该目标数据量。在一个可能示例中,该第三目标数目用于指示一次声学似然得分确定过程所采用的帧集合的数目,每个帧集合包括相邻多帧语音数据。该目标采样率是指该数据包中语音数据的采样率。该目标帧移是指相邻两帧语音数据之间的时间间隔。该目标帧长和目标帧移可以基于需要进行设置,本发明实施例对此不做具体限定。例如,该目标帧移可以为10ms。
本发明实施例中,该至少两个数据包中的第一个数据包的大小和第一个数据包以外的其他数据包的大小可以不相同。在一种可能的实施方式中,对于除第一个数据包以外的数据包,该计算机设备可以根据该目标帧移、第三目标数目和目标采样率,确定该第一目标数据量,该第一目标数据量用于指示该至少两个数据包中除第一个数据包以外的数据包内语音数据的数据量。在一种可能示例中,对于至少两个数据包中除第一个数据包以外的数据包,该计算机设备可以根据第三目标数目、目标帧移和目标采样率,通过以下公式一,确定该第一目标数据量:
公式一:Lsend1=m*d*x*(y/8);
其中,Lsend1用于表示除第一个数据包以外的数据包的第一目标数据量,m用于表示第三目标数目,d用于表示目标帧移,目标采样率可以表示为:x*103*y(单位:bit),x用于表示采样点的数量,y用于表示每个采样点的数据量的大小。则该x*103*y可以表示x*103个采样点,每个采样点的大小为y(单位:bit)。
在另一种可能的实施方式中,对于该第一个数据包,该计算机设备还可以结合每帧语音数据的帧长、一个帧集合中语音数据的帧数,确定第一个数据包的数据量大小,则该过程可以包括:该计算机设备可以根据该目标帧移、该目标帧长、该第三目标数目、该第四目标数目和该目标采样率,确定第二目标数据量。该第二目标数据量用于指示该至少两个数据包中第一个数据包内语音数据的数据量,每个帧集合包括第四目标数目帧语音数据。该目标帧长是指一帧语音数据的时间长度。该目标帧长可以基于需要进行设置,本发明实施例对此不做具体限定。例如,目标帧长可以为25ms,则该计算机设备可以将第一个数据包按照10ms帧移、25ms帧长,切分为多帧语音数据。在一种可能示例中,对于第一个数据包,该计算机设备还可以根据该目标帧长、第三目标数目、目标帧移、目标采样率和第四目标数目,通过以下公式二,确定该第二目标数据量:
公式二:Lsend2=(k+(m-1)*d+(b-d))*x*(y/8);
其中,Lsend2用于表示第一个数据包的第二目标数据量。b用于表示目标帧长。k用于表示第四目标数目。如上述公式一同理。m用于表示第三目标数目,d用于表示目标帧移,目标采样率可以表示为:x*103*y(单位:bit)。
在一种可能的实施方式中,当该计算机设备为服务器时,该计算机设备可以获取该目标数据量,将该目标数据量发送至终端,由终端基于该目标数据量,向计算机设备发送该至少两个数据包,该计算机设备接收该终端发送的至少两个数据包,每个数据包的数据量为该目标数据量。在一种可能示例中,该终端可以在采集语音消息过程中,根据所采集的目标语音消息,生成对应的数据包,向计算机设备发送实时生成的数据包,当接收到结束事件时,该终端还可以基于该结束事件,确定最后一个数据包,将最后一个数据包和结束指示信息发送至计算机设备,该结束指示消息用于指示该目标语音消息所对应数据包的发送进度,该计算机设备接收该最后一个数据包,并基于该结束指示信息,确定该目标语音消息所对应数据包发送完毕,该计算机设备可以将最后接收到的数据包作为最后一个数据包。当然,该终端可以将该结束指示信息封装在最后一个数据包中,计算机设备解封装最后一个数据包时,获取该结束指示信息,并确定该至少两个数据包中的最后一个数据包。该结束事件可以为用户点击结束按钮或者超过一定时长没有检测到语音消息等。
在另一种可能的实施方式中,当该计算机设备为终端时,该计算机设备可以从服务器中获取该目标数据量,该计算机设备在采集该目标语音消息过程中,当采集的语音消息对应的数据量达到目标数据量时,该计算机设备基于该目标数据量的语音数据执行一次语音识别过程,当然,该计算机设备也可以将该语音消息对应的目标数据量的语音数据,封装为一个数据包,并存储该数据包,以便于后续识别使用。
需要说明的是,由于该计算机设备需要采用目标数据量的数据包,来执行一次语音识别过程,该计算机设备可以基于目标数据量,获取每个数据包,从而保证每次获取的一个数据包的数据量大小刚好能够执行一次语音识别过程。并且,由于需要连续第三目标数目个帧集合,可以执行一次声学似然得分确定过程。该计算机设备可以实时基于本次语音识别的目标帧长、目标帧移、第三目标数目等动态参数,实时设置数据包的大小,使得每次获取的一个数据包刚好能够完成一次声学似然得分的确定过程。不会因为过少数据不足够触发一次声学似然得分确定过程,而等待下一个数据包的语音数据;也不会因为数据过多而使得多余数据需等待下一个数据包,导致多余数据需延迟进行声学似然得分的确定。本发明实施例通过确定每个数据包的合理数据量,有效的提高对每个数据包的处理效率,以及提高返回每个数据包对应识别结果的反馈速度,从而在不影响识别结果的前提下,优化了识别速度,提高了识别效率。
需要说明的是,该至少两个数据包中包括第一数据包和第二数据包,该第一数据包为该至少两个数据包中最后一个数据包,该第二数据包可以为该至少两个数据包中除最后一个数据包以外的数据包。在一种可能实施方式中,本发明实施例可以关注对第一数据包的优化识别过程。对于第一数据包,该计算机设备可以通过以下步骤203-205的过程,对第一数据包进行语音识别;对于第二数据包,该计算机设备可以通过以下步骤202的过程,对第二数据包进行语音识别。该计算机设备可以基于对第一数据包和第二数据包的识别过程,得到该目标语音消息的识别结果。
202、对于第二数据包,计算机设备根据每个数据包内的语音数据,识别出每个数据包对应的语音识别结果。
对于第二数据包,该计算机设备可以根据第二数据包内语音数据,对该语音数据进行切分,基于切分得到的多帧语音数据,对该第二数据包所承载语音消息进行语音识别。如图3所示,本步骤可以通过以下步骤2021-2025实现。
2021、该计算机设备对第二数据包内语音数据进行切分,对得到多帧语音数据,对每帧语音数据进行声学特征提取,得到每帧语音数据的声学特征。
本步骤中,该计算机设备按照目标帧长和目标帧移,将第二数据包内语音数据切分为多帧语音数据。该声学特征可以为语音数据的FBank(Filter Bank,滤波器组)特征、MFCC(Mel Frequency Cepstrum Coefficient,梅尔频率倒谱系数)特征或者PLP(Perceptual Linear Prediction,感知线性预测)特征等,本发明实施例对此不做具体限定。每帧语音数据的声学特征可以为特征向量的形式,例如,可以采用一个120维度的特征向量,表示一帧25ms的语音数据在多个维度的声学特征。
2022、该计算机设备根据第三目标数目和第四目标数目,获取第三目标数目的帧集合。
该计算机设备可以将多帧语音数据中,第四目标数目的语音数据,确定为一个帧集合,从第二数据包中确定出第三目标数目的帧集合。在一种可能的实施方式中,对于每帧语音数据,该计算机设备根据该第四目标数目,从该数据包内多帧语音数据中,获取包括该帧语音数据在内的第四目标数目帧语音数据,将该第四目标数目帧语音数据,作为该帧语音数据所在的帧集合。该第四目标数目帧语音数据可以为该数据包所包括的多帧语音数据中连续、相邻的多帧语音数据。在一种可能示例中,每帧语音数据对应一个帧集合,对于每帧语音数据,该计算机设备可以获取该帧语音数据,以及在该数据包的多帧语音数据中排列顺序位于该帧语音数据之后的第五目标数目帧语音数据,将该帧语音数据和该第五目标数目帧语音数据,作为一个帧集合。该第四目标数目可以等于该第五目标数目加1。
例如,第二数据包所包括的n帧语音数据分别可以为:第1帧,第2帧,第3帧,……第n帧。则计算机设备可以将连续k帧语音数据作为一个帧集合,例如,第1帧,第2帧,第3帧,……第k帧是第一帧语音数据所在的帧集合;第2帧,第3帧,第4帧,……第k+1帧是第二帧语音数据所在的帧集合,每帧语音数据对应一个帧集合,以此类推,得到第三目标数目个帧集合。
2023、该计算机设备基于该第三目标数目的帧集合中每个帧集合的声学特征,通过声学似然算法,确定每帧语音数据的声学似然得分。
对于每个帧集合,该计算机设备可以将该帧集合内第四目标数目帧语音数据的声学特征进行合并,得到该帧集合的声学特征。该计算机设备可以根据第三目标数目的帧集合的声学特征,通过声学似然算法,确定每个帧集合的声学似然得分。对于每帧语音数据,该计算机设备可以将该帧语音数据所在的帧集合的声学似然得分,确定为该帧语音数据的声学似然得分。
每帧语音数据的声学似然得分包括该帧语音数据对应的至少两个备选语音单元,以及每个备选语音单元的得分。每个备选语音单元的得分用于表示该备选语音单元为该帧语音数据所承载语音消息的真实语音单元的几率。备选语音单元的得分越大,表示该备选语音单元为真实语音单元的可能性也越大。
在一个可能示例中,该语音单元可以为音节、音素等基本的发音单元。音素是指根据语音的自然属性划分出来的最小语音单位,例如,ā只有一个音素,ài有两个音素。音节是指最小语音结构单位,音节可以由一个或几个音素按一定规律组合而成,例如,每个音节可以由声母、韵母两部分组成,例如,bā、hào等。本发明实施例中,该计算机设备可以采用一帧语音数据为识别单位,识别每帧语音数据对应的语音单元,通过将语音划分为细小的音素、音节等,从而提高了语音识别的准确性。
2024、该计算机设备根据每帧语音数据的声学似然得分,确定该每帧语音数据的语音单元。
对于每帧语音数据,该计算机设备可以根据该帧语音数据的声学似然得分,从该帧语音数据的至少两个备选语音单元中筛选出得分最大的备选语音单元,作为该帧语音数据的语音单元。在一种可能的实施方式中,该计算机设备可以将每帧语音数据的每个语音单元作为一个节点,该语音单元的得分作为该节点的路径代价。则该计算机设备可以采用遍历节点以进行寻路方式,确定每帧语音数据的语音单元。在一种可能示例中,对于每帧语音数据,该计算机设备根据该帧语音数据的前一帧语音数据对应的第一节点,获取第一节点的至少两个后继节点,每个后继节点用于指示当前帧语音数据的一个备选语音单元,该计算机设备从当前帧语音数据的声学似然得分中,获取每个备选语音单元的得分,根据每个备选语音单元的得分,从至少两个后继节点中确定出第二节点,将该第二节点作为该当前帧语音数据的节点。第二节点的路径代价即为对应备选语音单元的得分。本发明实施例中,对该第一节点和第二节点的数目不做限制,例如,该计算机设备可以将所有的后继节点均作为该第二节点,也可以从至少两个后继节点中筛选出第六目标数目的第二节点,例如,筛选出对应语音单元的得分位于前10名的10个第二节点。例如,如图3所示,可以将每帧语音数据对应的节点称为该帧语音数据的活跃节点,图3中,当计算机设备遍历出t帧语音数据的活跃节点时,该计算机设备可以将t帧语音数据对应的活跃节点放在活跃节点链表中,继续遍历每个第一节点的后继节点,例如,该第一节点可以对应有3个后继节点,以最终确定出t+1帧语音数据的第二节点。
2025、该计算机设备根据多帧语音数据的至少两个语音单元,确定该多帧语音数据对应的字符或字符串。
该计算机设备确定多帧语音数据对应的节点以及节点的路径代价,该计算机设备根据节点的路径代价,从第一帧语音数据对应的首位节点进行遍历,一直到最后一帧语音数据对应的末位节点,遍历出多条备选路径,将多条备选路径中路径代价最大的路径,作为目标路径。该计算机设备根据该目标路径中各个节点对应的语音单元,作为该第二数据包的至少两个语音单元。当该至少两个语音单元满足第四目标条件时,该计算机设备还可以基于语言模型,识别出该至少两个语音单元对应的至少两个备选字符的得分。该第四目标条件可以为该至少两个语音单元可以组成一个音节,该计算机设备根据该至少两个备选字符的得分,确定出该第二数据包的识别结果,也即是,该多帧语音数据对应的字符串或者单个字符。其中,该语言模型可以为N-Gram(汉语语言模型)语言模型、RNN(Recurrent NeuralNetwork,循环神经网络)语言模型等,本发明实施例对此不做具体限定。
需要说明的一点是,如图4所示,为了更加清晰的对上述步骤2021-2025进行介绍,下面以图4所示的流程,对步骤2021-2025进一步说明,如图4所示,终端对用户的目标语音消息进行录音,并分成至少两个数据包发送至服务器,并判断是否上传到最后一个数据包,如果是,则停止上传。服务器获取终端上传的至少两个数据包,对于每个数据包,服务器按照目标帧长、目标帧移,将每个数据包内语音数据切分为多帧语音数据,对于每帧语音数据,提取该帧语音数据的声学特征,并基于数据包内多帧语音数据所在的至少两个帧集合,通过声学似然算法,确定每帧语音数据的声学似然得分,基于每帧语音数据的声学似然得分,采用遍历节点进行寻路的方式,确定出每帧语音数据的语音单元,并在寻路过程中结合语言模型得分,确定出数据包中多帧语音数据对应的目标字符串。
需要说明的又一点是,如图5所示,该计算机设备还可以采用上述步骤201的方式,实时动态计算数据包的大小。通过图5所示的过程,通过合理配置每个数据包的长度,解决了数据包数据量大小不合理而导致的语音识别效率低的问题,可以有效的提高每个数据包的反馈效率。
203、该计算机设备基于该第一数据包与该第二数据包所包括每帧语音数据的信号强度,确定该第一数据包所承载语音消息的第一信号能量和该第二数据包所承载语音消息的第二信号能量。
本发明实施例中,该信号能量用于指示语音消息的强弱程度;当语音消息的振幅或响度等较大时,表示该语音消息的信号强度较强,则信号能量也较大,例如,用户之间的对话语音消息、用户唱歌时发出的语音消息等;当语音消息的振幅或响度等较小时,表示该语音消息的信号强度较弱,则信号能量也较弱,例如为环境中噪音。该信号能量可以为语音消息的时域能量,在一个可能示例中,该信号能量可以采用声音振幅的能量来表示,或者,也可以采用声音响度的能量来表示。例如,以振幅为例,包括人声语音的数据包中,采样点的振幅峰值可以为90分贝,各个采样点的振幅在70分贝到90分贝之间,数据包所承载语音消息的信号能量可以为300,语音消息的信号强度较强。而静音时,由于环境中存在噪音,静音状态对应数据包中,采样点的振幅峰值可以为60分贝,各个采样点的振幅可以在20分贝到60分贝之间,数据包所承载语音消息的信号能量可以为30,语音消息的信号强度较弱。
本发明实施例中,对于第一数据包,该计算机设备也可以按照目标帧长和目标帧移,确定该第一数据包所包括的多帧语音数据。该计算机设备可以按照第一数据包所包括的每帧语音数据的信号强度,确定该第一数据包的信号能量。对于第二数据包,该计算机设备也可以按照第二数据包所包括的每帧语音数据的信号强度,确定该第二数据包的信号能量。其中,该计算机设备可以采用声音振幅或声音响度来表示每帧语音消息的信号强度,语音消息的振幅越大,响度越大,信号强度也越大,语音消息的振幅越小,响度越小,信号强度也越小。
在一种可能的实施方式中,该计算机设备还可以结合第二数据包与第一数据包之间的关联强度,来表示该第二数据包的信号能量。该过程可以包括:该计算机设备根据该第二数据包与该第一数据包之间的关联强度以及该第二数据包中每帧语音数据的信号强度,获取该第二数据包所承载语音消息的第二信号能量。该关联强度用于指示该第二数据包中语音数据的信号强度对第一数据包中语音数据的信号强度的影响程度。在一个可能示例中,该至少两个数据包中每个数据包按照语音采集时间先后顺序排列。由于声音的平稳性,第二数据包的排列位置越接近第一数据包,第二数据包对第一数据包的影响也越大。例如,用户讲话时,第一个字符响度越大,与之相邻的第二个字符的响度也越大。在一种可能的实施方式中,该计算机设备可以采用第二数据包在至少两个数据包中的排列位置,表示第二数据包与第一数据包之间的关联强度。该计算机设备可以获取该第二数据包在该至少两个数据包中的排列位置;该计算机设备根据该第二数据包中每帧语音数据的信号强度和该第二数据包在该至少两个数据包的排列位置,获取该第二数据包所承载语音消息的第二信号能量。该排列位置用于指示该第二数据包与该第一数据包的关联强度,该第二数据包的排列位置越靠后,与该第一数据包之间的关联强度越大;该第二数据包的排列位置越靠前,与该第一数据包之间的关联强度越小。第二数据包的排列位置用于指示第二数据白对第一数据包中语音数据的信号强度的影响程度,第二数据包排列位置越靠后,第二数据包对第一数据包中语音数据的信号强度的影响越大,例如,两个数据包中第一数据包与至少倒数第二个数据包的信号能量大小相近,倒数第二个数据包对第一数据包的影响程度比倒数第三个数据包大。
在另一种可能的实施方式中,该计算机设备也可以结合多个第二数据包与该第一数据包之间的关联强度,确定第一数据包所承载语音消息的信号能量。在一个具体示例中,该计算机设备获取每个第二数据包在该至少两个数据包中的排列位置,根据多个第二数据包的排列位置和该第一数据包内每帧语音数据的信号强度,确定第一数据包所承载语音消息的第一信号能量。
在一种可能示例中,对于第二数据包,该计算机设备可以根据第二数据包中每帧语音数据的信号强度和该第二数据包在至少两个数据包中的排列顺序,通过以下公式三,确定该第二数据包所承载语音消息的信号能量:
公式三:
Figure BDA0002163722230000191
其中,i表示第二数据包在至少两个数据包中的排列位置,Epack[i]表示至少两个数据包中第i个第二数据包所承载语音消息的第二信号能量。第二数据包中多帧语音数据的信号强度可以表示为数组Arr[n]的形式,n表示第二数据包所包括的语音数据的总帧数,Arr[k]用于表示n帧语音数据中第k帧语音数据的信号强度。a为大于1的固定常数。在一种可能示例中,第二数据包的排列位置越靠后,i越大,由于a>1,ai也越大,表示第二数据包越靠近第一数据包,第二数据包与第一数据包之间的关联强度越大。
在一种可能示例中,对于第一数据包,该计算机设备可以根据第一数据包中每帧语音数据的信号强度,通过以下公式四,确定该第一数据包所承载语音消息的第一信号能量:
公式四:
Figure BDA0002163722230000192
其中,Eend用于表示第一数据包所承载语音消息的第一信号能量,Arr[k]用于表示第一数据包所包括的n帧语音数据中,第k帧语音数据的信号强度,m用于表示固定常数。在一个可能示例中,该计算机设备可以根据每个第二数据包的排列位置,通过以下公式五,确定上述公式四中固定常数m;
公式五:
Figure BDA0002163722230000201
其中,p表示至少两个数据包中第二数据包的总数目,i表示p个第二数据包中第i个第二数据包,a为公式三中大于1的固定常数。
在一种可能的实施方式中,该计算机设备可以实时接收终端发送的数据包,并判断当前接收到的数据包是否为第一数据包,如果为第一数据包,则采用本步骤的方式,获取第一数据包的第一信号能量,否则,则采用本步骤的方式,获取第二数据包的第二信号能量。例如,当该计算机设备从当前所接收到的数据包中解析数结束指示信息时,该计算机设备确定当前接收到的数据包为最后一个数据包,也即是第一数据包。
需要说明的是,该计算机设备可以基于该第二数据包与第一数据包之间的关联强度,以及结合数据包内语音数据的信号强度,来确定第一数据包或者第二数据包的信号能量,使得该第二数据包的信号能量可以表征该第二数据包对第一数据包的影响程度。第二数据包距离第一数据包越近,对第一数据包影响力越大,通过本步骤的信号能量确定方式,能够很好的体现各数据包的能量强弱以及该第二数据包与第一数据包之间的关联强度,从而提高了后续确定有效指示信息的准确性,进一步提高了语音识别的准确率。
204、该计算机设备基于该第一信号能量与该第二信号能量之间的相对大小,确定该第一数据包的有效指示信息。
本发明实施例中,该有效指示信息用于指示该第一数据包承载有效语音消息的可能程度,该有效语音消息是指除噪音以外的语音消息。本发明实施例中,当该第一信号能量与第二信号能量之间的差值小于目标阈值时,该计算机设备确定该有效指示信息指示该第一数据包承载有效语音消息。当该第一信号能量与第二信号能量之间的差值大于目标阈值时,该计算机设备确定该有效指示信息可以指示该第一数据包未承载有效语音消息。该目标阈值可以基于需要进行设置。本发明实施例对此不做具体限定。例如,该目标阈值可以为1、13等。
在一种可能的实施方式中,该第二数据包的数目可以为多个,该计算机设备还可以基于该多个第二数据包的平均信号能量,来确定该有效指示信息,该有效指示信息可以为数值的形式,该过程可以包括:该计算机设备根据每个第二数据包所承载语音消息的第二信号能量,确定至少两个第二数据包对应的平均信号能量;该计算机设备可以根据该平均信号能量和该第一信号能量,确定该第一信号能量相对于该第一信号能量和该平均信号能量的和值的相对比值,将该相对比值确定为该有效指示信息。
在一种可能示例中,该有效指示信息可以为该第一数据包承载有效语音消息的几率;该计算机设备可以根据每个第二数据包所承载语音消息的第二信号能量,通过以下公式六,确定该多个第二数据包对应的平均信号能量:
公式六:
Figure BDA0002163722230000211
其中,Eunend用于表示平均信号能量,p为第二数据包的总数量,Epsck[i]是表示第i个第二数据包所承载语音消息的第二信号能量。
在一种可能示例中,该计算机设备可以根据该第一数据包所承载语音消息的第一信号能量和该平均信号能量,通过以下公式七,确定该第一数据包的有效指示信息:
公式七:Kspeed=Eend/(Eend+Eunend);
其中,Kspeed用于表示第一数据包的有效指示信息,该有效指示信息能够表征基于该第一数据包加速对目标语音消息进行语音识别的加速程度。需要说明的是,该有效指示信息的大小,表征了该第一数据包包括有效语音消息的可能程度,该计算机设备可以继续通过以下步骤205-206的过程,基于该有效指示信息,来确定目标语音消息的语音识别结果。
需要说明的是,上述步骤203-204是步骤“计算机设备基于每个数据包所承载语音消息的信号能量,确定该至少两个数据包中第一数据包的有效指示信息”的一种可能实现方式,上述步骤203-204是分别获取第一数据包的第一信号能量和第二数据包的第二信号能量,基于两个信号能量的相对大小,来确定该有效指示信息。在另一种可能实施方式中,该计算机设备还可以获取第一数据包的第一信号能量和倒数第二个数据包的第三信号能量,基于第一信号能量和第三信号能量的相对大小,确定该有效指示信息。当然,本发明实施例也可以通过其他方式确定该有效指示信息,例如,该计算机设备还可以结合倒数第三个数据包的第四信号能量与第一信号能量的相对大小,确定该有效指示信息。
205、当该第一数据包的有效指示信息满足第一目标条件时,计算机设备基于该至少两个数据包中第二数据包,确定该目标语音消息的语音识别结果。
该第一目标条件包括:该有效指示信息指示该第一数据包未承载有效语音消息,和,该有效指示信息小于第一阈值中的至少一项。在一种可能的实施方式中,当该有效指示信息满足第一目标条件时,该计算机设备可以直接丢弃该第一数据包。该计算机设备可以根据多个第二数据包对应的字符,确定为目标语音消息对应的目标字符串。
206、当该第一数据包的有效指示信息满足第二目标条件时,计算机设备基于该第一数据包和该第二数据包,确定该目标语音消息的语音识别结果。
该第二目标条件包括:该有效指示信息指示该第一数据包承载有效语音消息,和,该有效指示信息不小于第一阈值中的至少一项。当该有效指示信息满足第二目标条件时,该计算机设备可以根据该第一数据包的有效指示信息,获取该第一数据包所承载语音消息对应的至少两个语音单元;该计算机设备还可以根据该至少两个语音单元对应的字符和该第二数据包对应的字符,确定该目标语音消息对应的目标字符串。
在一种可能示例中,该有效指示信息为该第一数据包承载有效语音消息的几率;当该有效指示信息不小于第二阈值时,该计算机设备可以将该第一数据包所承载语音消息对应的至少两个备选语音单元,确定为该第一数据包对应的至少两个语音单元,该第二阈值大于该第一阈值;当该有效指示信息大于第一阈值且小于该第二阈值时,该计算机设备可以根据该有效指示信息,从该第一数据包所承载语音消息对应的至少两个备选语音单元中,筛选出第一目标数目的备选语音单元作为该第一数据包对应的至少两个语音单元。该第一阈值和第二阈值可以基于需要进行设置,本发明实施例对此不做具体限定。例如,该第一阈值可以为0.2,该第二阈值可以为0.8。
在一个可能示例中,该筛选过程可以包括:当该有效指示信息大于第一阈值且小于该第二阈值时,该计算机设备可以获取该第一数据包内语音数据的声学似然得分,该声学似然得分用于指示每个备选语音单元为语音数据承载的语音消息所对应的真实语音单元的几率;该计算机设备可以根据该有效指示信息和该至少两个备选语音单元的最大保留数目,确定该至少两个语音单元的第一目标数目;该计算机设备可以从该至少两个备选语音单元中筛选出声学似然得分满足第三目标条件的第一目标数目的语音单元。例如,该第一目标数目可以为15,则该第三目标条件可以为:声学似然得分位于降序得分排序中的前15位的语音单元。
在一个可能示例中,该第一数据包可以包括多帧语音数据。该计算机设备可以获取该第一数据包内每帧语音数据的声学似然得分。该过程可以包括:该计算机设备还可以按照目标帧移和目标帧长,将该第一数据包切分为第二目标数目帧语音数据;该对于每帧语音数据,计算机设备可以根据该语音数据的相邻帧语音数据,确定该语音数据所在的帧集合,得到第三目标数目的语音帧集合,每个帧集合包括相邻多帧语音数据;该计算机设备可以根据该第三目标数目的帧集合,确定该第一数据包中每帧语音数据的声学似然得分。。
在一种可能示例中,对于第一数据包中每帧语音数据,该计算机设备可以将第一数据包中每帧语音数据的语音单元作为一个节点,将语音单元的得分作为节点之间的路径代价。该计算机设备根据该帧语音数据的前一帧语音数据对应的第三节点,获取第三节点的至少两个后继节点,每个后继节点用于指示当前帧语音数据的一个备选语音单元,该计算机设备从当前帧语音数据的声学似然得分中,获取该至少两个备选语音单元的得分,根据至少两个备选语音单元的得分,从至少两个后继节点中确定出第四节点,将该第四节点作为当前帧语音数据的节点,第四节点的路径代价即为对应备选语音单元的得分。其中,该计算机设备可以根据该有效指示信息的大小,对该第四节点的数目进行调整。例如,该计算机设备可以获取允许保留的最大节点数目,也即是至少两个备选语音单元的最大保留数目,根据该最大节点数目和该有效指示信息,通过以下公式八,确定该第四节点的第六目标数目:
公式八:Pend=Pmax*Kspeed;
其中,Pend用于表示第四节点的第六目标数目,Pmax用于表示最大节点数目,Kspeed用于表示有效指示信息。
对于第一数据包中每帧语音数据,该计算机设备确定多帧语音数据对应的节点以及节点的路径代价,该计算机设备根据节点的路径代价,从第一帧语音数据对应的首位节点进行遍历,一直到最后一帧语音数据对应的末位节点,遍历出多条备选路径,将多条备选路径中路径代价最大的路径,作为目标路径。该计算机设备根据该目标路径中各个节点对应的语音单元,作为该第一数据包的至少两个语音单元。当该至少两个语音单元满足第四目标条件时,该计算机设备还可以基于语言模型,识别出该至少两个语音单元对应的至少两个备选字符的得分,根据该至少两个备选字符的得分,确定出第一数据包的识别结果,也即是,该第一数据包对应的字符串或者单个字符。
在一个可能示例中,例如,假设第一数据包中第t帧帧语音数据对应的活跃节点个数为M,则t+1帧音帧数据对应的节点确定过程可以为:计算机设备遍历M个活跃节点中每个活跃节点的后继节点,并将每个活跃节点的后继节点激活,如果激活的后继节点个数是K个,该计算机设备可以采用裁剪算法,基于最大允许数目,也即是,允许裁剪的活跃节点上限是P,则对K个节点进行得分排序,选取前Pend个保留,其他节点删除。
需要说明的是,该计算机设备可以基于有效指示信息,对数据包的节点进行筛选、裁剪,以减少活跃节点个数,减少运算量,提升识别和返回结果速度;同时,兼顾了第一数据包所承载语音消息的信号能量,能量越大,则裁剪力度越小;能量越小,裁剪力度越大;保证了识别结果不会受到裁剪过程的影响,从而保证准确识别的前提下,减少了语音识别的响应时间,提高了语音识别的识别效率。
在一个可能示例中,为了更加清晰的对上述步骤201-206的过程进行说明,下面以图6所示流程,对本发明实施例的整体流程进行介绍,以该服务器和终端之间信息交互进行语音识别的过程为例进行说明,如图6所示,终端采集语音数据时,可以动态计算数据包的目标数据量,按照目标数据量将语音数据进行封装,实时将封装的数据包发送至服务器,该服务器实时接收终端上传的数据包,该数据包的数目为多个,该服务器解封装每个数据包,并判断当前所接收到的数据是否为第一数据包,也即是,最后一个数据包。对于每个第二数据包,也即是,除最后一个数据包以外的数据包,该服务器可以获取第二数据包的信号能量,并通过分帧处理、声学特征提取、声学似然得分以及路径扩展等过程,对第二数据包进行语音识别,确定每个第二数据包所对应的字符。对于第一数据包,该服务器基于第二数据包的信号能量和第一数据包的信号能量,获取第一数据包的有效指示信息,根据该有效指示信息,服务器基于该至少两个数据包中第二数据包,或者第一数据包和第二数据包,来确定该目标语音消息的语音识别结果,以实现准确地识别出目标语音消息的识别结果的前提下,保证语音识别的效率。
本发明实施例中,通过基于每个数据包所承载语音消息的信号能量,确定第一数据包的有效指示信息,基于该有效指示信息获知该第一数据包承载有效语音消息的可能程度,在该有效指示信息满足第一目标条件时,仅基于第二数据包进行语音识别,减少了参与语音识别的数据包的数量,减少了运算时间;且基于该有效指示信息进行语音识别,避免了直接删除第一数据包导致的识别不准确的问题,因此在保证语音识别的准确率的前提下,提高了语音识别的效率。
图7是本发明实施例提供的一种语音识别方法的流程图。该发明实施例的执行主体为计算机设备,该计算机设备可以为服务器,也可以为终端。参见图7,该方法包括:
701、计算机设备获取至少两个数据包,该至少两个数据包用于承载目标语音消息。
本发明实施例中,该目标语音消息可以为用户、设备等所发出的语音消息,该至少两个数据包中封装有该目标语音消息所对应的语音数据。本步骤的实施方式为与上述步骤201同理的过程,此处不再一一赘述。
702、计算机设备基于每个数据包所承载语音消息的信号能量,确定该至少两个数据包中第一数据包的有效指示信息。
本发明实施例中,该第一数据包为该至少两个数据包中最后一个数据包,该有效指示信息用于指示该第一数据包承载有效语音消息的可能程度,该有效语音消息是指除噪音以外的语音消息,例如,有效语音消息可以为用户说话时的语音消息。在一种可能的实施方式中,该计算机设备可以基于该第一数据包与该第二数据包所包括每帧语音数据的信号强度,确定该第一数据包所承载语音消息的第一信号能量和该第二数据包所承载语音消息的第二信号能量。该计算机设备可以基于该第一信号能量与该第二信号能量之间的相对大小,确定该第一数据包的有效指示信息。本步骤的实施方式为与上述步骤203-204同理的过程,此处不再一一赘述。
703、当该第一数据包的有效指示信息满足第一目标条件时,计算机设备基于该至少两个数据包中第二数据包,确定该目标语音消息的语音识别结果。
本发明实施例中,该第二数据包为该至少两个数据包中除最后一个数据包以外的数据包。该第一目标条件包括:该有效指示信息指示该第一数据包未承载有效语音消息,和,该有效指示信息小于第一阈值中的至少一项。在一种可能的实施方式中,当该有效指示信息满足第一目标条件时,该计算机设备可以直接丢弃该第一数据包。该计算机设备可以根据多个第二数据包对应的字符,确定为目标语音消息对应的目标字符串。在另一种可能的实施方式中,当该第一数据包的有效指示信息满足第二目标条件时,计算机设备基于该第一数据包和该第二数据包,确定该目标语音消息的语音识别结果。该第二目标条件包括:该有效指示信息指示该第一数据包承载有效语音消息,和,该有效指示信息不小于第一阈值中的至少一项。当该有效指示信息满足第二目标条件时,该计算机设备可以根据该第一数据包的有效指示信息,获取该第一数据包所承载语音消息对应的至少两个语音单元;该计算机设备还可以根据该至少两个语音单元对应的字符和该第二数据包对应的字符,确定该目标语音消息对应的目标字符串。本步骤的实施方式为与上述步骤205-206同理的过程,此处不再一一赘述。
本发明实施例中,通过基于每个数据包所承载语音消息的信号能量,确定第一数据包的有效指示信息,基于该有效指示信息获知该第一数据包承载有效语音消息的可能程度,在该有效指示信息满足第一目标条件时,仅基于第二数据包进行语音识别,减少了参与语音识别的数据包的数量,减少了运算时间;且基于该有效指示信息进行语音识别,避免了直接删除第一数据包导致的识别不准确的问题,因此在保证语音识别的准确率的前提下,提高了语音识别的效率。
图8是本发明实施例提供的一种语音识别装置的结构示意图。参见图8,该装置包括:
获取模块801,用于获取至少两个数据包,该至少两个数据包用于承载目标语音消息;
确定模块802,用于基于每个数据包所承载语音消息的信号能量,确定该至少两个数据包中第一数据包的有效指示信息,该有效指示信息用于指示该第一数据包承载有效语音消息的可能程度,该有效语音消息是指除噪音以外的语音消息,该第一数据包为该至少两个数据包中最后一个数据包;
该确定模块802,还用于当该第一数据包的有效指示信息满足第一目标条件时,基于该至少两个数据包中第二数据包,确定该目标语音消息的语音识别结果,该第二数据包为该至少两个数据包中除最后一个数据包以外的数据包。
在一种可能实现方式中,该确定模块802,包括:
第一确定单元,用于基于该第一数据包与该第二数据包所包括每帧语音数据的信号强度,确定该第一数据包所承载语音消息的第一信号能量和该第二数据包所承载语音消息的第二信号能量;
第二确定单元,用于基于该第一信号能量与该第二信号能量之间的相对大小,确定该第一数据包的有效指示信息。
在一种可能实现方式中,该第一确定单元,还用于对于该第一数据包,根据该第一数据包中每帧语音数据的信号强度,获取该第一数据包所承载语音消息的第一信号能量;对于每个第二数据包,根据该第二数据包与该第一数据包之间的关联强度以及该第二数据包中每帧语音数据的信号强度,获取该第二数据包所承载语音消息的第二信号能量,该关联强度用于指示该第二数据包中语音数的信号强度对该第一数据包中语音数据的信号强度的影响程度。
在一种可能实现方式中,该第一确定单元,还用于获取该第二数据包在该至少两个数据包中的排列位置;根据该第二数据包中每帧语音数据的信号强度和该第二数据包在该至少两个数据包的排列位置,获取该第二数据包所承载语音消息的第二信号能量;其中,该排列位置用于指示该第二数据包与该第一数据包的关联强度,该第二数据包的排列位置越靠后,与该第一数据包之间的关联强度越大;该第二数据包的排列位置越靠前,与该第一数据包之间的关联强度越小。
在一种可能实现方式中,该第二确定单元,还用于根据每个第二数据包所承载语音消息的第二信号能量,确定至少两个第二数据包对应的平均信号能量;
根据该平均信号能量和该第一信号能量,确定该第一信号能量相对于该第一信号能量和该平均信号能量的和值的相对比值,将该相对比值确定为该有效指示信息。
在一种可能实现方式中,该第一目标条件包括:该有效指示信息指示该第一数据包未承载有效语音消息,和,该有效指示信息小于第一阈值中的至少一项。
在一种可能实现方式中,该确定模块802,还用于当该第一数据包的有效指示信息满足第二目标条件时,基于该第一数据包和该第二数据包,确定该目标语音消息的语音识别结果;
其中,该第二目标条件包括:该有效指示信息指示该第一数据包承载有效语音消息,和,该有效指示信息不小于第一阈值中的至少一项。
在一种可能实现方式中,该确定模块802,还包括:
第一获取单元,用于根据该第一数据包的有效指示信息,获取该第一数据包所承载语音消息对应的至少两个语音单元;
第三确定单元,用于根据该至少两个语音单元对应的字符和该第二数据包对应的字符,确定该目标语音消息对应的目标字符串。
在一种可能实现方式中,该有效指示信息为该第一数据包承载有效语音消息的几率;该第一获取单元,包括:
确定子单元,用于当该有效指示信息不小于第二阈值时,将该第一数据包所承载语音消息对应的至少两个备选语音单元,确定为该第一数据包对应的至少两个语音单元,该第二阈值大于该第一阈值;
筛选子单元,用于当该有效指示信息大于第一阈值且小于该第二阈值时,根据该有效指示信息,从该第一数据包所承载语音消息对应的至少两个备选语音单元中,筛选出第一目标数目的备选语音单元作为该第一数据包对应的至少两个语音单元。
在一种可能实现方式中,该筛选子单元,还用于当该有效指示信息大于第一阈值且小于该第二阈值时,获取该第一数据包内语音数据的声学似然得分,该声学似然得分用于指示每个备选语音单元为语音数据承载的语音消息所对应的真实语音单元的几率;根据该有效指示信息和该至少两个备选语音单元的最大保留数目,确定该至少两个语音单元的第一目标数目;从该至少两个备选语音单元中筛选出声学似然得分满足第三目标条件的第一目标数目个语音单元。
在一种可能实现方式中,该筛选子单元,还用于按照目标帧移和目标帧长,将该第一数据包切分为第二目标数目帧语音数据;对于每帧语音数据,根据该语音数据的相邻帧语音数据,确定该语音数据所在的帧集合,得到第三目标数目的语音帧集合,每个帧集合包括相邻多帧语音数据;根据该第三目标数目的帧集合,确定该第一数据包中每帧语音数据的声学似然得分。
在一种可能实现方式中,该获取模块801,包括:
第四确定单元,用于基于目标帧移、第三目标数目和目标采样率,确定目标数据量,该目标数据量用于指示一个数据包所包括的语音数据的数据量,该第三目标数目用于指示一次声学似然得分确定过程所采用的帧集合的数目,每个帧集合包括相邻多帧语音数据;
第二获取单元,用于根据该目标数据量,获取该至少两个数据包,每个数据包的数据量为该目标数据量。
在一种可能实现方式中,该第四确定单元,还用于根据该目标帧移、该第三目标数目和该目标采样率,确定第一目标数据量,该第一目标数据量用于指示该至少两个数据包中除第一个数据包以外的数据包内语音数据的数据量;根据该目标帧移、该目标帧长、该第三目标数目、该第四目标数目和该目标采样率,确定第二目标数据量,该第二目标数据量用于指示该至少两个数据包中第一个数据包内语音数据的数据量,每个帧集合包括第四目标数目帧语音数据。
本发明实施例中,通过基于每个数据包所承载语音消息的信号能量,确定第一数据包的有效指示信息,基于该有效指示信息获知该第一数据包承载有效语音消息的可能程度,在该有效指示信息满足第一目标条件时,仅基于第二数据包进行语音识别,减少了参与语音识别的数据包的数量,减少了运算时间;且基于该有效指示信息进行语音识别,避免了直接删除第一数据包导致的识别不准确的问题,因此在保证语音识别的准确率的前提下,提高了语音识别的效率。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的语音识别装置在语音识别时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的语音识别装置与语音识别方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图9是本发明实施例提供的一种终端的结构示意图。该终端900可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端900还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端900包括有:处理器901和存储器902。
处理器901可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器901可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器901也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器901可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器901还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器902可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器902还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器902中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器901所执行以实现本申请中方法实施例提供的语音识别方法。
在一些实施例中,终端900还可选包括有:外围设备接口903和至少一个外围设备。处理器901、存储器902和外围设备接口903之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口903相连。具体地,外围设备包括:射频电路904、触摸显示屏905、摄像头906、音频电路907、定位组件908和电源909中的至少一种。
外围设备接口903可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器901和存储器902。在一些实施例中,处理器901、存储器902和外围设备接口903被集成在同一芯片或电路板上;在一些其他实施例中,处理器901、存储器902和外围设备接口903中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路904用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路904通过电磁信号与通信网络以及其他通信设备进行通信。射频电路904将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路904包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路904可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路904还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏905用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏905是触摸显示屏时,显示屏905还具有采集在显示屏905的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器901进行处理。此时,显示屏905还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏905可以为一个,设置终端900的前面板;在另一些实施例中,显示屏905可以为至少两个,分别设置在终端900的不同表面或呈折叠设计;在再一些实施例中,显示屏905可以是柔性显示屏,设置在终端900的弯曲表面上或折叠面上。甚至,显示屏905还可以设置成非矩形的不规则图形,也即异形屏。显示屏905可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件906用于采集图像或视频。可选地,摄像头组件906包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件906还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路907可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器901进行处理,或者输入至射频电路904以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端900的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器901或射频电路904的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路907还可以包括耳机插孔。
定位组件908用于定位终端900的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件908可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源909用于为终端900中的各个组件进行供电。电源909可以是交流电、直流电、一次性电池或可充电电池。当电源909包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端900还包括有一个或多个传感器910。该一个或多个传感器910包括但不限于:加速度传感器911、陀螺仪传感器912、压力传感器913、指纹传感器914、光学传感器915以及接近传感器916。
加速度传感器911可以检测以终端900建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器911可以用于检测重力加速度在三个坐标轴上的分量。处理器901可以根据加速度传感器911采集的重力加速度信号,控制触摸显示屏905以横向视图或纵向视图进行用户界面的显示。加速度传感器911还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器912可以检测终端900的机体方向及转动角度,陀螺仪传感器912可以与加速度传感器911协同采集用户对终端900的3D动作。处理器901根据陀螺仪传感器912采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器913可以设置在终端900的侧边框和/或触摸显示屏905的下层。当压力传感器913设置在终端900的侧边框时,可以检测用户对终端900的握持信号,由处理器901根据压力传感器913采集的握持信号进行左右手识别或快捷操作。当压力传感器913设置在触摸显示屏905的下层时,由处理器901根据用户对触摸显示屏905的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器914用于采集用户的指纹,由处理器901根据指纹传感器914采集到的指纹识别用户的身份,或者,由指纹传感器914根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器901授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器914可以被设置终端900的正面、背面或侧面。当终端900上设置有物理按键或厂商Logo时,指纹传感器914可以与物理按键或厂商Logo集成在一起。
光学传感器915用于采集环境光强度。在一个实施例中,处理器901可以根据光学传感器915采集的环境光强度,控制触摸显示屏905的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏905的显示亮度;当环境光强度较低时,调低触摸显示屏905的显示亮度。在另一个实施例中,处理器901还可以根据光学传感器915采集的环境光强度,动态调整摄像头组件906的拍摄参数。
接近传感器916,也称距离传感器,通常设置在终端900的前面板。接近传感器916用于采集用户与终端900的正面之间的距离。在一个实施例中,当接近传感器916检测到用户与终端900的正面之间的距离逐渐变小时,由处理器901控制触摸显示屏905从亮屏状态切换为息屏状态;当接近传感器916检测到用户与终端900的正面之间的距离逐渐变大时,由处理器901控制触摸显示屏905从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图9中示出的结构并不构成对终端900的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图10是本发明实施例提供的一种服务器的结构示意图,该服务器1000可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processingunits,CPU)1001和一个或一个以上的存储器1002,其中,该存储器1002中存储有至少一条指令,该至少一条指令由该处理器1001加载并执行以实现上述各个方法实施例提供的语音识别方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由计算机设备中的处理器执行以完成上述实施例中的语音识别方法。例如,该计算机可读存储介质可以是ROM(Read-Only Memory,只读存储器)、RAM(random accessmemory,随机存取存储器)、CD-ROM(Compact Disc Read-Only Memory,只读光盘)、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (15)

1.一种语音识别方法,其特征在于,所述方法包括:
获取至少两个数据包,所述至少两个数据包用于承载目标语音消息;
对所述至少两个数据包中的第二数据包内语音数据进行切分,得到多帧语音数据,所述第二数据包为所述至少两个数据包中除最后一个数据包以外的数据包;
对每帧语音数据进行声学特征提取,得到所述每帧语音数据的声学特征;
根据第三目标数目和第四目标数目,获取所述第三目标数目的帧集合,所述第三目标数目用于指示一次声学似然得分确定过程所采用的帧集合的数目;
基于所述第三目标数目的帧集合中每个帧集合的声学特征,确定所述每帧语音数据的声学似然得分;
根据所述每帧语音数据的声学似然得分,确定所述每帧语音数据的语音单元;
根据所述多帧语音数据的至少两个语音单元,确定所述多帧语音数据对应的字符或字符串;
根据所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串。
2.根据权利要求1所述的方法,其特征在于,所述根据所述每帧语音数据的声学似然得分,确定所述每帧语音数据的语音单元,包括:
对于每帧语音数据,根据所述每帧语音数据的声学似然得分,从所述每帧语音数据的至少两个备选语音单元中筛选出得分最大的备选语音单元,作为所述每帧语音数据的语音单元,每帧语音数据的声学似然得分包括对应的至少两个备选语音单元,以及每个备选语音单元的得分。
3.根据权利要求1所述的方法,其特征在于,所述根据所述多帧语音数据的至少两个语音单元,确定所述多帧语音数据对应的字符或字符串,包括:
确定所述多帧语音数据对应的节点以及节点的路径代价;
根据所述节点的路径代价,从第一帧语音数据对应的首位节点进行遍历,直到最后一帧语音数据对应的末位节点,遍历出多条备选路径;
将所述多条备选路径中路径代价最大的路径,作为目标路径;
根据所述目标路径中各个节点对应的语音单元,作为所述第二数据包的至少两个语音单元;
当所述至少两个语音单元满足第四目标条件时,基于语言模型,识别出所述至少两个语音单元对应的至少两个备选字符的得分,所述第四目标条件为所述至少两个语音单元组成一个音节;
根据所述至少两个备选字符的得分,确定出所述多帧语音数据对应的字符或字符串。
4.根据权利要求3所述的方法,其特征在于,所述确定所述多帧语音数据对应的节点以及节点的路径代价,包括:
对于每帧语音数据,根据所述每帧语音数据的前一帧语音数据对应的第一节点,获取所述第一节点的至少两个后继节点,每个后继节点用于指示所述每帧语音数据的一个备选语音单元;
从所述每帧语音数据的声学似然得分中,获取每个备选语音单元的得分;
根据每个备选语音单元的得分,从所述至少两个后继节点中确定出第二节点;
将所述第二节点作为所述每帧语音数据的节点,所述第二节点的路径代价为对应备选语音单元的得分。
5.根据权利要求1所述的方法,其特征在于,所述根据所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串之前,所述方法还包括:
基于每个数据包所承载语音消息的信号能量,确定所述至少两个数据包中第一数据包的有效指示信息,所述有效指示信息用于指示所述第一数据包承载有效语音消息的可能程度,所述有效语音消息是指除噪音以外的语音消息,所述第一数据包为所述至少两个数据包中最后一个数据包;
所述根据所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串,包括:
当所述第一数据包的有效指示信息满足第一目标条件时,根据所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串;
其中,所述第一目标条件包括:所述有效指示信息指示所述第一数据包未承载有效语音消息,和,所述有效指示信息小于第一阈值中的至少一项。
6.根据权利要求5所述的方法,其特征在于,所述基于每个数据包所承载语音消息的信号能量,确定所述至少两个数据包中第一数据包的有效指示信息包括:
基于所述第一数据包与所述第二数据包所包括每帧语音数据的信号强度,确定所述第一数据包所承载语音消息的第一信号能量和所述第二数据包所承载语音消息的第二信号能量;
基于所述第一信号能量与所述第二信号能量之间的相对大小,确定所述第一数据包的有效指示信息。
7.根据权利要求6所述的方法,其特征在于,所述基于所述第一数据包与所述第二数据包所包括每帧语音数据的信号强度,确定所述第一数据包所承载语音消息的第一信号能量和所述第二数据包所承载语音消息的第二信号能量包括:
对于所述第一数据包,根据所述第一数据包中每帧语音数据的信号强度,获取所述第一数据包所承载语音消息的第一信号能量;
对于每个第二数据包,根据所述第二数据包与所述第一数据包之间的关联强度以及所述第二数据包中每帧语音数据的信号强度,获取所述第二数据包所承载语音消息的第二信号能量,所述关联强度用于指示所述第二数据包中语音数的信号强度对所述第一数据包中语音数据的信号强度的影响程度。
8.根据权利要求6所述的方法,其特征在于,所述基于所述第一信号能量与所述第二信号能量之间的相对大小,确定所述第一数据包的有效指示信息包括:
根据每个第二数据包所承载语音消息的第二信号能量,确定至少两个第二数据包对应的平均信号能量;
根据所述平均信号能量和所述第一信号能量,确定所述第一信号能量相对于所述第一信号能量和所述平均信号能量的和值的相对比值,将所述相对比值确定为所述有效指示信息。
9.根据权利要求5所述的方法,其特征在于,所述根据所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串,包括:
当所述第一数据包的有效指示信息满足第二目标条件时,根据所述第一数据包的有效指示信息,获取所述第一数据包所承载语音消息对应的至少两个语音单元;
根据所述至少两个语音单元对应的字符和所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串;
其中,所述第二目标条件包括:所述有效指示信息指示所述第一数据包承载有效语音消息,和,所述有效指示信息不小于第一阈值中的至少一项。
10.一种语音识别方法,其特征在于,所述方法包括:
采集目标语音消息所对应的语音数据;
基于目标帧移、第三目标数目和目标采样率,确定目标数据量,所述目标数据量用于指示一个数据包所包括的语音数据的数据量,所述第三目标数目用于指示一次声学似然得分确定过程所采用的帧集合的数目,每个帧集合包括相邻多帧语音数据;
按照目标数据量将所述语音数据进行封装,将封装的数据包发送至服务器,由所述服务器基于所述数据包,确定所述目标语音消息对应的目标字符串,所述数据包的数目为至少两个,每个数据包的数据量为所述目标数据量。
11.根据权利要求10所述的方法,其特征在于,所述基于目标帧移、第三目标数目和目标采样率,确定目标数据量包括:
根据所述目标帧移、所述第三目标数目和所述目标采样率,确定第一目标数据量,所述第一目标数据量用于指示至少两个数据包中除第一个数据包以外的数据包内语音数据的数据量;
根据所述目标帧移、目标帧长、所述第三目标数目、第四目标数目和所述目标采样率,确定第二目标数据量,所述第二目标数据量用于指示所述至少两个数据包中第一个数据包内语音数据的数据量,每个帧集合包括所述第四目标数目帧语音数据。
12.一种语音识别装置,其特征在于,所述装置包括:
获取模块,用于获取至少两个数据包,所述至少两个数据包用于承载目标语音消息;
确定模块,用于对所述至少两个数据包中的第二数据包内语音数据进行切分,得到多帧语音数据,所述第二数据包为所述至少两个数据包中除最后一个数据包以外的数据包;对每帧语音数据进行声学特征提取,得到所述每帧语音数据的声学特征;根据第三目标数目和第四目标数目,获取所述第三目标数目的帧集合,所述第三目标数目用于指示一次声学似然得分确定过程所采用的帧集合的数目;基于所述第三目标数目的帧集合中每个帧集合的声学特征,确定所述每帧语音数据的声学似然得分;根据所述每帧语音数据的声学似然得分,确定所述每帧语音数据的语音单元;根据所述多帧语音数据的至少两个语音单元,确定所述多帧语音数据对应的字符或字符串;根据所述第二数据包对应的字符,确定所述目标语音消息对应的目标字符串。
13.一种语音识别装置,其特征在于,所述装置包括:
采集模块,用于采集目标语音消息所对应的语音数据;
确定模块,用于基于目标帧移、第三目标数目和目标采样率,确定目标数据量,所述目标数据量用于指示一个数据包所包括的语音数据的数据量,所述第三目标数目用于指示一次声学似然得分确定过程所采用的帧集合的数目,每个帧集合包括相邻多帧语音数据;
发送模块,用于按照目标数据量将所述语音数据进行封装,将封装的数据包发送至服务器,由所述服务器基于所述数据包,确定所述目标语音消息对应的目标字符串,所述数据包的数目为至少两个,每个数据包的数据量为所述目标数据量。
14.一种计算机设备,其特征在于,所述计算机设备包括一个或至少两个处理器和一个或至少两个存储器,所述一个或至少两个存储器中存储有至少一条指令,所述至少一条指令由所述一个或至少两个处理器加载并执行以实现如权利要求1至权利要求11任一项所述的语音识别方法所执行的操作。
15.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1至权利要求11任一项所述的语音识别方法所执行的操作。
CN201910740387.7A 2019-07-02 2019-07-02 语音识别方法、装置、计算机设备及存储介质 Active CN110288999B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910740387.7A CN110288999B (zh) 2019-07-02 2019-07-02 语音识别方法、装置、计算机设备及存储介质

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910589578.8A CN110148401B (zh) 2019-07-02 2019-07-02 语音识别方法、装置、计算机设备及存储介质
CN201910740387.7A CN110288999B (zh) 2019-07-02 2019-07-02 语音识别方法、装置、计算机设备及存储介质

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201910589578.8A Division CN110148401B (zh) 2019-07-02 2019-07-02 语音识别方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN110288999A CN110288999A (zh) 2019-09-27
CN110288999B true CN110288999B (zh) 2020-12-11

Family

ID=67597058

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201910589578.8A Active CN110148401B (zh) 2019-07-02 2019-07-02 语音识别方法、装置、计算机设备及存储介质
CN201910740387.7A Active CN110288999B (zh) 2019-07-02 2019-07-02 语音识别方法、装置、计算机设备及存储介质

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201910589578.8A Active CN110148401B (zh) 2019-07-02 2019-07-02 语音识别方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (2) CN110148401B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105989839A (zh) * 2015-06-03 2016-10-05 乐视致新电子科技(天津)有限公司 语音识别方法和装置
CN107393526A (zh) * 2017-07-19 2017-11-24 腾讯科技(深圳)有限公司 语音静音检测方法、装置、计算机设备和存储介质
CN107680597A (zh) * 2017-10-23 2018-02-09 平安科技(深圳)有限公司 语音识别方法、装置、设备以及计算机可读存储介质
CN108735201A (zh) * 2018-06-29 2018-11-02 广州视源电子科技股份有限公司 连续语音识别方法、装置、设备和存储介质
US20190130914A1 (en) * 2014-10-09 2019-05-02 Google Llc Hotword detection on multiple devices

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5684925A (en) * 1995-09-08 1997-11-04 Matsushita Electric Industrial Co., Ltd. Speech representation by feature-based word prototypes comprising phoneme targets having reliable high similarity
US6882711B1 (en) * 1999-09-20 2005-04-19 Broadcom Corporation Packet based network exchange with rate synchronization
EP1410678A2 (en) * 2001-03-22 2004-04-21 D-Start Advanced Technologies Ltd. A method and system for transmitting and/or receiving audio signals with a desired direction
US8531961B2 (en) * 2009-06-12 2013-09-10 Cygnus Broadband, Inc. Systems and methods for prioritization of data for intelligent discard in a communication network
WO2013061113A1 (en) * 2011-10-25 2013-05-02 Nokia Corporation A method and apparatus for audio coding using context dependent information
CN103220258B (zh) * 2012-01-20 2016-07-27 华为技术有限公司 会议混音方法、终端和媒体资源服务器
CN106788876B (zh) * 2015-11-19 2020-01-21 电信科学技术研究院 一种语音丢包补偿的方法及系统
CN108922513B (zh) * 2018-06-04 2023-03-17 平安科技(深圳)有限公司 语音区分方法、装置、计算机设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190130914A1 (en) * 2014-10-09 2019-05-02 Google Llc Hotword detection on multiple devices
CN105989839A (zh) * 2015-06-03 2016-10-05 乐视致新电子科技(天津)有限公司 语音识别方法和装置
CN107393526A (zh) * 2017-07-19 2017-11-24 腾讯科技(深圳)有限公司 语音静音检测方法、装置、计算机设备和存储介质
CN107680597A (zh) * 2017-10-23 2018-02-09 平安科技(深圳)有限公司 语音识别方法、装置、设备以及计算机可读存储介质
CN108735201A (zh) * 2018-06-29 2018-11-02 广州视源电子科技股份有限公司 连续语音识别方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN110148401B (zh) 2023-12-15
CN110148401A (zh) 2019-08-20
CN110288999A (zh) 2019-09-27

Similar Documents

Publication Publication Date Title
CN108615526B (zh) 语音信号中关键词的检测方法、装置、终端及存储介质
CN111564152B (zh) 语音转换方法、装置、电子设备及存储介质
CN110556127B (zh) 语音识别结果的检测方法、装置、设备及介质
CN110933330A (zh) 视频配音方法、装置、计算机设备及计算机可读存储介质
CN110322760B (zh) 语音数据生成方法、装置、终端及存储介质
CN111696532B (zh) 语音识别方法、装置、电子设备以及存储介质
CN110047468B (zh) 语音识别方法、装置及存储介质
CN112735429B (zh) 确定歌词时间戳信息的方法和声学模型的训练方法
CN111105788B (zh) 敏感词分数检测方法、装置、电子设备及存储介质
CN112116904B (zh) 语音转换方法、装置、设备及存储介质
CN110992927A (zh) 音频生成方法、装置、计算机可读存储介质及计算设备
CN111613213B (zh) 音频分类的方法、装置、设备以及存储介质
CN110798327B (zh) 消息处理方法、设备及存储介质
CN111048109A (zh) 声学特征的确定方法、装置、计算机设备及存储介质
CN111223475A (zh) 语音数据生成方法、装置、电子设备及存储介质
CN114333774A (zh) 语音识别方法、装置、计算机设备及存储介质
CN108053821B (zh) 生成音频数据的方法和装置
CN113220590A (zh) 语音交互应用的自动化测试方法、装置、设备及介质
CN113409770A (zh) 发音特征处理方法、装置、服务器及介质
CN110837557A (zh) 摘要生成方法、装置、设备及介质
US20220223142A1 (en) Speech recognition method and apparatus, computer device, and computer-readable storage medium
CN112786025B (zh) 确定歌词时间戳信息的方法和声学模型的训练方法
CN110288999B (zh) 语音识别方法、装置、计算机设备及存储介质
CN114360494A (zh) 韵律标注方法、装置、计算机设备及存储介质
CN114333821A (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