语音数据处理方法和装置与流程

文档序号:16521543发布日期:2019-01-05 10:00阅读:210来源:国知局
语音数据处理方法和装置与流程

本发明属于语音数据技术领域,尤其涉及语音数据处理方法和装置。



背景技术:

相关技术中,某些方案提供的“唤醒识别”是基于其语音唤醒技术,支持用户直接将唤醒词和工作命令一同说出,例如:叮咚叮咚,我想听周杰伦的歌,客户端会在唤醒后直接启动识别以及语义理解等服务,缩短交互时间。另一些方案提供的“唤醒识别连续说”是基于其语音唤醒技术,支持唤醒和识别需求的连续表达,例如:你好小度,请帮我找一间咖啡厅。

发明人在实现本申请的过程中发现:尽管以上技术能够做到唤醒时直接启动识别以及语义理解,但是是将对语音唤醒和语音识别两个基础语音技术做了联通,并不是从唤醒到结束的完整对话闭环。对于高度定制化的项目,其可定制性、可靠性、便捷性都会略显不足。

其中,对于可定制性,现有技术仅能定制唤醒词,并不能定制唤醒之后续流程。比如:唤醒之后有继续说和没有说话,这种边界情况的界定和处理。对于可靠性,现有技术中如果唤醒词和后面说的话连接很紧,会有识别结果丢字和影响识别率的风险。对于便捷性,现有技术仅仅靠对唤醒和识别的联通,无法满足全链路对话的定制,尤其是多轮对话。这些如果靠开发者编码实现、维护这个完整闭环,极大的占用精力和时间。



技术实现要素:

本发明实施例提供一种语音数据处理方法和装置,用于至少解决上述技术问题之一。

第一方面,本发明实施例提供一种语音数据处理方法,用于客户端,包括:接收用户的第一语音指令,基于所述第一语音指令和预设唤醒词向服务器端发送开启所述预设唤醒词的自动语音识别训练和识别的请求;接收所述服务器端返回的是否成功唤醒的结果;响应于成功唤醒,根据设置的第一时间段检测用户是否在第一时间段内发出第二语音指令;响应于在第一时间段内检测到用户发出的第二语音指令,将所述第二语音指令的音频数据的起点追溯到所述第一语音指令的音频数据的起点;自所述第一语音指令的音频数据的起点开始依次将所述第一语音指令和实时检测到的所述第二语音指令发送至所述服务器端进行识别直至第一时间段结束。

第二方面,本发明实施例提供一种语音数据处理方法,用于服务器端,包括:基于客户端的开启预设唤醒词的自动语音识别训练和识别的请求,训练基于所述预设唤醒词的微型自动语音识别模型,其中,所述请求中包括预设唤醒词和第一语音指令;基于所述微型自动语音识别模型识别所述第一语音指令是否与所述预设唤醒词匹配;向所述客户端反馈是否成功唤醒的结果。

第三方面,本发明实施例提供一种语音数据处理装置,用于客户端,包括:请求模块,配置为接收用户的第一语音指令,基于所述第一语音指令和预设唤醒词向服务器端发送开启所述预设唤醒词的自动语音识别训练和识别的请求;唤醒结果模块,配置为接收所述服务器端返回的是否成功唤醒的结果;唤醒设置模块,配置为响应于成功唤醒,根据设置的第一时间段检测用户是否在第一时间段内发出第二语音指令;起点确定模块,配置为响应于在第一时间段内检测到用户发出的第二语音指令,将所述第二语音指令的音频数据的起点追溯到所述第一语音指令的音频数据的起点;发送模块,配置为自所述第一语音指令的音频数据的起点开始依次将所述第一语音指令和实时检测到的所述第二语音指令发送至所述服务器端进行识别直至第一时间段结束。

第四方面,本发明实施例提供一种语音数据处理装置,用于服务器端,包括:训练模块,配置为基于客户端的开启预设唤醒词的自动语音识别训练和识别的请求,训练基于所述预设唤醒词的微型自动语音识别模型,其中,所述请求中包括预设唤醒词和第一语音指令;识别模块,配置为基于所述微型自动语音识别模型识别所述第一语音指令是否与所述预设唤醒词匹配;反馈模块,配置为向所述客户端反馈是否成功唤醒的结果。

第五方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例的语音数据处理方法的步骤。

第六方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行本发明任一实施例的语音数据处理方法的步骤。

本申请的方法和装置提供的方案通过避免切分不准造成的识别障碍,可以在一定程度上使得识别更快,用户体验更好,并且唤醒词和检测时间开发者可以自由定制,开发者使用体验也更好。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一实施例提供的一种语音数据处理方法的流程图;

图2为本发明一实施例提供的另一种语音数据处理方法的流程图;

图3为本发明一实施例提供的又一种语音数据处理方法的流程图;

图4为本发明一实施例提供的再一种语音数据处理方法的流程图;

图5为本发明一实施例提供的还一种语音数据处理方法的流程图;

图6为本发明一实施例提供的一种用于服务器端的语音数据处理方法的流程图;

图7为本发明一实施例提供的另一种用于服务器端的语音数据处理方法的流程图;

图8为本发明一实施例提供的一种语音数据处理方法的具体示例图;

图9为本发明一实施例提供的一种语音数据处理装置的框图;

图10为本发明一实施例提供的另一种语音数据处理装置的框图;

图11是本发明一实施例提供的电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面,先介绍本申请的实施方式,之后将用实验数据证实本申请的方案与现有技术相比有什么不同,能实现什么有益效果。

请参考图1,其示出了本申请的语音数据处理方法一实施例的流程图,本实施例的语音数据处理方法可以适用于具备智能语音对话功能的终端、如智能语音电视、智能音箱、智能对话玩具等。

如图1所示,在步骤101中,接收用户的第一语音指令,基于第一语音指令和预设唤醒词向服务器端发送开启预设唤醒词的自动语音识别训练和识别的请求;

在步骤102中,接收服务器端返回的是否成功唤醒的结果;

在步骤103中,响应于成功唤醒,根据设置的第一时间段(vadtime)检测用户是否在第一时间段(vadtime)内发出第二语音指令;

在步骤104中,响应于在第一时间段(vadtime)内检测到用户发出的第二语音指令,将第二语音指令的音频数据的起点追溯到第一语音指令的音频数据的起点;

在步骤105中,自第一语音指令的音频数据的起点开始依次将第一语音指令和实时检测到的第二语音指令发送至服务器端进行识别直至第一时间段(vadtime)结束。

在本实施例中,对于步骤101,智能语音对话终端接收用户的第一语音指令,并基于该第一语音指令和预设唤醒词向服务器端发送开启预设唤醒词的自动语音识别训练和识别的请求。其中,第一语音指令为用户向终端发送的语音,预设唤醒词为开发者定制的唤醒词,如开发者未定制,则为默认唤醒词,例如“你好小驰!”。终端接收到用户的第一语音指令之后,基于该第一语音指令和预设唤醒词生成一个请求,该请求的目的是希望服务器端根据该请求开启预设唤醒词的自动语音识别训练和识别该第一语音指令是否为预设唤醒词。服务器端则会单独训练该预设唤醒词,并使用训练后的模型识别用户的第一语音指令是否具有与该预设唤醒词匹配的部分。之后,对于步骤102,接收服务器端返回的是否成功唤醒的结果,对于步骤103,若成功唤醒,则根据(开发者)设置的第一时间段(vadtime)检测用户是否在开始发出第一语音指令之后的第一时间段(vadtime)内发出第二语音指令,其中,如果开发者未设置第一时间段,则会采用默认的第一时间段,vad(voiceactivitydetection,声音活动检测),不管用户是否在vadtime内说完第二语音指令,都以vadtime的结束时间为结束人声检测的时间。之后,对于步骤104,响应于在第一时间段(vadtime)内检测到用户发出的第二语音指令,将第二语音指令的音频数据的起点追溯到第一语音指令的音频数据的起点,例如vadtime设置为10s,如果在10s内检测到用户发出的第二语音指令,则将第二语音指令的音频数据的起点追溯到第一语音指令的起点,例如当第二语音指令的起点为00:08,而第一语音指令的起点为00:00时,则追溯后整个音频的起点为00:00。之后,对于步骤105,自第一语音指令的音频数据的起点开始依次将第一语音指令和实时检测到的第二语音指令发送至服务器端进行识别直至第一时间段(vadtime)结束,例如,将缓存的从00:00开始的语音(“你好小驰”,间隔3秒,“最近有什么好看的电影”)依次发送至服务器端进行识别。

本实施例的方法,通过让开发者可以自己定制唤醒词和检测时间,并在第一时间段内检测的第二语音指令追溯至第一语音指令的起点,并依次发送至服务器端,可以无需对用户说的话(唤醒词和命令)进行切分,连起来识别,并且由于在接收到第一语音指令后就向服务器端发送了专门训练唤醒词的指令,因此在后续发送连起来的话后,唤醒词能很快很准确地被识别并使之与命令的识别连起来,避免切分不准造成识别障碍,也可以在一定程度上使得识别更快,并且唤醒词和检测时间开发者可以自由定制,开发者使用体验更好。

进一步参考图2,其示出了本申请的另一种语音数据处理方法的一实施例的流程图。该流程图主要是在图1的步骤103中的附加步骤的流程图。

如图2所示,在步骤201中,获取开发者是否定制了第二时间段(midtime),其中,第二时间段(midtime)<第一时间段(vadtime);

在步骤202中,若开发者定制了第二时间段(midtime),检测用户是否在第二时间段(midtime)内开始发出第二语音指令;

在步骤203中,若是,将第二语音指令的音频数据的起点追溯到第一语音指令的音频数据的起点;

在步骤204中,自第一语音指令的音频数据的起点开始依次将第一语音指令和实时检测到的第二语音指令发送至服务器端进行识别直至第一时间段(vadtime)结束;

在步骤205中,若否,向用户播放欢迎语。

在本实施例中,对于步骤201,移动终端获取开发者是否定制了第二时间段(midtime),第二时间段(midtime)<第一时间段(vadtime)。其中,如未定制,则默认第二时间段为“0”,没有后续步骤;如定制了,则跳转至步骤202,检测用户是否在第二时间段内发出第二语音指令,即若想触发oneshot,间隔时间不得小于第二时间段(midtime),即用户至少得在第二时间段结束之前开始发出第二语音指令才能触发oneshot。其中,步骤203、204和步骤205是并列的步骤,分别为检测到的用户是否在第二时间段内发出第二语音指令中“是”和“否”的两种情况。对于步骤203,若是,追溯音频数据的起点至第一语音指令的起点,之后,对于步骤204,在第一时间段(vadtime)结束之前,将第一语音指令和实时检测到的第二语音指令发送至服务器端进行识别。对于步骤205,若否,向用户播放欢迎语,例如第二时间段(midtime)为0.5s,用户说了“你好小驰”之后,该第一语音指令结束后的0.5s内没检测到用户开始说第二语音指令,则播放欢迎语,如“您好我在,有什么吩咐”。

本实施例的方法,通过在检测人声的过程中,还检测用户说语音指令的间隔时间,从而确定是否触发oneshot(一语即达),可以使得检测更加精密,也可以使得对是否触发一语即达有一个控制时间,提升用户体验,且开发者可以对该第二时间段(midtime)进行定制,从而设计出更符合要求、更精确的产品。

进一步参考图3,其示出了本申请一实施例提供的又一种语音数据处理方法的流程图。该流程图主要是针对图2中步骤201获取开发者是否定制了第二时间段(midtime)之后,或者步骤205检测到用户未在第二时间段(midtime)内开始发出第二语音指令之后的附加步骤的流程图。

如图3所示,在步骤301中,获取开发者是否定制了第三时间段(endtime),其中,第二时间段(midtime)<第三时间段(endtime)<第一时间段(vadtime);

在步骤302中,若开发者定制了第三时间段(endtime),检测用户是否在第三时间段(endtime)内开始发出第二语音指令;

在步骤303中,若是,将第二语音指令的音频数据的起点追溯到第一语音指令的音频数据的起点;

在步骤304中,自第一语音指令的音频数据的起点开始依次将第一语音指令和实时检测到的第二语音指令发送至服务器端进行识别直至第一时间段(vadtime)结束;

在步骤305中,若否,则退出对话。

在本实施例中,对于步骤301,终端获取开发者是否定制了第三时间段(endtime),其中,第二时间段(midtime)<第三时间段(endtime)<第一时间段(vadtime)。若未定制第三时间段(endtime),则没有后续步骤。若定制了,则跳转至步骤302,检测用户是否在第三时间段(endtime)内开始发出第二语音指令。之后,在步骤303中,若是,将第二语音指令的音频数据的起点追溯到第一语音指令的音频数据的起点;之后,在步骤304中,自第一语音指令的音频数据的起点开始依次将第一语音指令和实时检测到的第二语音指令发送至服务器端进行识别直至第一时间段(vadtime)结束;最后,在步骤305中,若否,则退出对话,例如取消本次识别请求,结束对话,回到待休眠状态。

本申请的实施例,通过获取开发者定制的第三时间(endtime),可以控制一语即达场景的结束时间,在开发者未设置第二时间段(midtime),或第二时间段(midtime)未检测到人声,已播放欢迎语的情况下的实现对一语即达的平滑过渡,从而可以让开发者自由定制,提升体验。

进一步参考图4,其示出了本申请一实施例提供的再一种语音数据处理方法的流程图。该流程图主要是针对图3中步骤301,在获取开发者是否定制了第三时间段(endtime)之后的附加步骤的流程图。

如图4所示,在步骤401中,若开发者未定制第三时间段(endtime),则检测用户是否在第一时间段(vadtime)内发出第二语音指令;

在步骤402中,若是,响应于在第一时间段(vadtime)内检测到用户发出的第二语音指令,将第二语音指令的音频数据的起点追溯到第一语音指令的音频数据的起点;

在步骤403中,自第一语音指令的音频数据的起点开始依次将第一语音指令和实时检测到的第二语音指令发送至服务器端进行识别直至第一时间段(vadtime)结束;

在步骤404中,若否,播放提示语。

在本实施例中,对于步骤401,若终端发现开发者未定制第三时间段(endtime),则检测用户是否在第一指令开始之后的第一时间段(vadtime)内发出第二语音指令。之后,对于步骤402,若检测到,则将该第二语音指令的音频数据的起点追溯到第一语音指令的音频数据的起点,并在步骤403中,自第一语音指令的音频数据的起点开始依次将第一语音指令和实时检测到的第二语音指令发送至服务器端进行识别直至第一时间段(vadtime)结束。对于步骤404中,若未检测到第二语音指令,则播放提示语,例如,“请问您有什么吩咐?”。

本实施例的方法,在未设置第三时间段的情况下,如果用户未在人声检测结束前说出指令,则会提示用户,如果说出了第二语音指令,则会将起点追溯至第一语音指令的起点,并依次反馈给服务器端进行识别。从而可以与前面的实施例形成一个完美的闭环,将各种细化的场景都考虑到。

进一步参考图5,其示出了本申请一实施例提供的还一种语音数据处理方法的流程图。该流程图主要是针对各流程图中发送至服务器端进行识别的步骤:在自第一语音指令的音频数据的起点开始依次将第一语音指令和实时检测到的第二语音指令发送至服务器端进行识别直至第一时间段(vadtime)结束,之后的附加步骤的流程图。

如图5所示,在步骤501中,接收服务器端识别后返回的语义理解结果;

在步骤502中,根据语义理解结果向用户反馈对话结果;

在步骤503中,检测用户是否在反馈对话结果后的第一时间段(vadtime)内发出第三语音指令;

在步骤504中,响应于在第一时间段(vadtime)内检测到用户发出的第三语音指令,将第三语音指令的音频数据的起点追溯到第一语音指令的音频数据的起点;

在步骤505中,自第一语音指令的音频数据的起点开始依次将第一语音指令、第二语音指令和实时检测到的第三语音指令发送至服务器端进行识别直至第一时间段(vadtime)结束。

本实施例的方法,主要是针对第一个vadtime结束之后,接收到服务器返回的语义理解结果之后,终端向用户反馈对话结果,之后再开启一个新的vadtime检测是否在该新的vadtime内收到用户的第三语音指令,从而持续地与用户进行交互。若收到第三语音指令,还是将音频数据的起点追溯至第一语音数据的起点,从而可以联系上文,对用户的意图更好地理解,例如用户说了“你好小驰,北京的天气怎么样”(第一语音指令+第二语音指令之后),可能还会问“那上海呢”,则将音频数据追溯至最前可以更好地理解用户是想问“上海的天气怎么样”,后续用户再发出新的语音指令也是以此类推,在此不再赘述。从而能够结合上文对用户的意图进行更准确地解读。

在一些可选的实施例中,在步骤503:检测用户是否在反馈对话结果后的第一时间段(vadtime)内发出第三语音指令,之后还包括:若在第一时间段(vadtime)内未检测到用户发出的第三语音指令,则退出对话。从而能够与图5的实施例形成一个完整的闭环,对各种可能的场景都能进行处理。

请参考图6,其示出了本申请实施例提供的一种语音数据处理方法,用于服务器端的流程图,该服务器端可以为语音数据处理平台。

如图6所示,在步骤601中,基于客户端的开启预设唤醒词的自动语音识别训练和识别的请求,训练基于预设唤醒词的微型自动语音识别模型,其中,请求中包括预设唤醒词和第一语音指令;

在步骤602中,基于微型自动语音识别模型识别第一语音指令是否与预设唤醒词匹配;

在步骤603中,向客户端反馈是否成功唤醒的结果。

在本实施例中,对于步骤601,基于客户端的请求,训练基于预设唤醒词的微型自动语音识别模型,从而专门用于识别语音指令中的唤醒词。之后对于步骤602,基于微型自动语音识别模型识别第一语音指令是否与预设唤醒词匹配。最后对于步骤603,无论是否匹配,均向客户端反馈唤醒结果。从而可以通过训练微型自动语音识别模型,来支持唤醒词的定制和快速识别。

请参考图7,其示出了本申请实施例提供的另一种语音数据处理方法,用于服务器端的流程图。该流程图是针对步骤602之后的附加步骤的流程图。

如图7所示,在步骤701中,若匹配,将微型自动语音识别模型与通用识别模型融合;

在步骤702中,接收客户端反馈的第一语音指令和实时检测到的第二语音指令,并利用融合后的模型进行识别;

在步骤703中,向客户端反馈识别结果。

在本实施例中,对于步骤701,若用户的第一语音指令与预设唤醒词匹配,则服务器端会将微型自动语音识别模型与通用识别模型融合,从而可以更好地识别包含预设唤醒词的命令和用户意图。之后,对于步骤702,接收客户端反馈的第一语音指令和实时检测到的第二语音指令,并使用融合后的模型对该第一语音指令+第二语音指令进行识别,在一些可选的实施例中,还可以对预设唤醒词和其他用户意图的权重进行分配,例如提供预设唤醒词的权重,以更精准地将用户意图剥离出来。最后,对于步骤703,向客户端反馈识别结果。从而本申请的方法无需对唤醒词和其他命令进行切分就能实现较好的识别性能。

下面对通过描述发明人在实现本发明的过程中遇到的一些问题和对最终确定的方案的一个具体实施例进行说明,以使本领域技术人员更好地理解本申请的方案。

发明人发现,现有技术提供的是基础语音能力,以及基础语音能力的组合(比如wakeup(唤醒)和asr(automaticspeechrecognition,自动语音识别)的组合)、或者将唤醒词单独切割出来的方案,并不具备包含“wakeup-vad-asr-nlu-dm-tts”在内的全链路定制对话的能力,其中,nlu:naturallanguageunderstanding,自然语言理解;dm:dialogmanager,对话管理;tts:texttospeech,从文本到语音。

发明人还发现,为了解决现有技术中存在的上述缺陷,现有技术的部分产品可能通过下面的方法来解决:

通常采用提供基础服务能力,由开发者自行解决这些缺陷。

因为该oneshot方案的目标是要做到高可定制性且上手简单,即通过简单配置就能实现各种差异化的定制效果。所以涉及到很多基础技术的融合(包含wakeup、vad、asr、nlu、dm、tts等)。

本申请的方案的一个具体实施例如下,需要说明的是以下实施例中虽然提到了一些具体的例子,但并不用于限制本申请的方案。

本申请的方案在用户说“你好小驰”触发唤醒时,主要做以下三件事来解决上述缺陷:

1.触发云端asr服务实时训练微型asr模型,并与通用asr模型做融合。以此来保证任意唤醒词都可以准确快速识别出来。

2.持续发送完整唤醒音频以及后续识别音频到云端asr服务。以此来确保“你好小驰我要导航”的识别不会出现丢字的情况。

3.开启vad检测人声。以此来推测用户是在oneshot还是普通唤醒,并根据推测结果,进行不同的定制对话。

当用户说“你好小驰”触发唤醒的瞬间,用户会不会继续说话的行为并不明确。根据预测用户行为的走向,来进行不同的对话策略。主要分三种场景:

情景一:“你好小驰我要导航”,oneshot的典型场景。

情景二:“你好小驰…(停顿若干时间)…我要导航”,oneshot的退化场景。情景二是根据用户行为的确定,从情景一平滑过渡而来。

情景三:“你好小驰…(没有再说话)”,oneshot的无效场景

具体的流程图可以参考图8,其中图中的每一个环节均可定制。该图以客户端为视角,处理流程如下:

步骤一:向服务端发送开启asr的请求,并在请求中附带将唤醒结果“你好小驰”,触发云端asr服务基于本次唤醒结果训练出微型asr模型。

因为是仅训练“你好小驰”的asr模型,所以训练耗时在毫秒级。微型asr模型训练完成后,云端asr服务会将该微型asr模型和通用识别模型进行融合,使其“你好小驰”的说法在asr过程中提升到较高的权重。等本次识别请求之后,将会清除掉该微型asr模型。这么多的好处是唤醒词可以在任意时刻定制成任何值,而不需要重新训练通用识别模型。

可定制项:唤醒词、asr模型

步骤二:开启离线vad,开始检测用户唤醒之后的指定时间(第二时间段(oneshot_midtime))内有没有继续说话。

若oneshot_第二时间段(midtime)等于0,则跳过此步,直接进入步骤四。

可定制项:检测时间oneshot_第二时间段(midtime)、vad模型

步骤三:根据步骤二的结果进行决策,一共有两种情况

1.若检测到人声,则向前追溯的唤醒起点的音频数据,并将从该起点往后的音频依次发送给服务端进行识别,一直到人声结束。此时直接进入步骤四。

2.若未检测到人声,则重置vad,取消本次识别请求,并且播报提示语or提示音。然后进入步骤四。

可定制项:vad后端点时间、提示文本、提示音频

步骤四:开启离线vad,开始检测用户指定时间(第三时间段(oneshot_endtime))内有没有继续说话。

若第三时间段(endtime)等于0,则跳过此步,直接进入步骤六。

可定制项:检测时间oneshot_第三时间段(endtime)

步骤五:根据步骤四的结果进行决策,一共有两种情况

1.若检测到人声,则将从该起点往后的音频依次发送给服务端进行识别,一直到人声结束。此时直接进入步骤十。

2.若未检测到人声,则取消本次识别请求,结束对话,回到待休眠状态。

步骤六:开启离线vad,开始检测用户指定时间(第一时间段(vadtime))内有没有继续说话。

从此步开始,oneshot退化为正常的dui定制对话步骤。

可定制项:检测时间第一时间段(vadtime)

步骤七:dui的asr-nlu-dm过程以及异常处理过程。

可定制项:dui全链路定制

发明人在实现本申请的过程中,还采用过如下备选方案,并总结了该备选方案的优点和确定

备选方案1:将唤醒和识别的音频做切分,只将后者送给asr

优点:不需要云端服务做任何预处理,节约开发成本

缺点:1.用户说太快容易丢字

2.识别率受到影响

备选方案2:vad检测的部分没有开放配置项.

缺点:随着客户项目的增多,不同项目对于oneshot有着不同的定制要求,不开放配置项无法满足各种定制要求。

进一步的,本方案结合dui平台,会演化出成千上万种差异化效果。具体可参考以下示例:

示例一:oneshot技术和dui技能“起昵称”的组合

用户:你好小驰,给你起个小名叫小黑吧

dui:好的,以后你可以说你好小黑来吩咐我

用户:你好小黑,你叫什么名字

dui:我大名叫小驰,小名叫小黑

示例二:oneshot技术和多轮对话的组合

用户:你好小驰,今天苏州的天气

dui:今天28℃

用户:(你好小驰,)明天呢

dui:明天30℃

示例三:oneshot技术和手机助手的组合

通过dui平台将唤醒反馈设置为“叮”,将oneshot_第二时间段(midtime)设置为500ms,将oneshot_第三时间段(endtime)设置为0ms,其定制效果和applesiri类似。同时,通过调整各个定制项,又可以达到很多种同siri不同的差异性效果。

示例四:oneshot技术和智能音箱的组合

通过dui平台将oneshot_第二时间段(midtime)设置为0ms,将oneshot_第三时间段(endtime)设置为5000ms,其定制效果和天猫精灵类似。同时,通过调整各个定制项,又可以达到很多种同天猫精灵不同的差异性效果。

请参考图9,其示出了本发明一实施例提供的语音数据处理装置的框图。

如图9所示,语音数据处理装置900,用于客户端,包括请求模块910、唤醒结果模块920、唤醒设置模块930、起点确定模块940和发送模块990。

其中,请求模块910,配置为接收用户的第一语音指令,基于所述第一语音指令和预设唤醒词向服务器端发送开启所述预设唤醒词的自动语音识别训练和识别的请求;唤醒结果模块920,配置为接收所述服务器端返回的是否成功唤醒的结果;唤醒设置模块930,配置为响应于成功唤醒,根据设置的第一时间段(vadtime)检测用户是否在第一时间段(vadtime)内发出第二语音指令;起点确定模块940,配置为响应于在第一时间段(vadtime)内检测到用户发出的第二语音指令,将所述第二语音指令的音频数据的起点追溯到所述第一语音指令的音频数据的起点;以及发送模块950,配置为自所述第一语音指令的音频数据的起点开始依次将所述第一语音指令和实时检测到的所述第二语音指令发送至所述服务器端进行识别直至第一时间段(vadtime)结束。

如图10所示,语音数据处理装置1000,用于服务器端,包括训练模块1010、识别模块1020和反馈模块1030。其中,训练模块1010,配置为基于客户端的开启预设唤醒词的自动语音识别训练和识别的请求,训练基于所述预设唤醒词的微型自动语音识别模型,其中,所述请求中包括预设唤醒词和第一语音指令;识别模块1020,配置为基于所述微型自动语音识别模型识别所述第一语音指令是否与所述预设唤醒词匹配;反馈模块1030,配置为向所述客户端反馈是否成功唤醒的结果。

应当理解,图9和图10中记载的诸模块与参考图1、图6中描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作和特征以及相应的技术效果同样适用于图9和图10中的诸模块,在此不再赘述。

值得注意的是,本公开的实施例中的模块并不用于限制本公开的方案,例如反馈模块可以描述为向所述客户端反馈是否成功唤醒的结果的模块。另外,还可以通过硬件处理器来实现相关功能模块,例如反馈模块也可以用处理器实现,在此不再赘述。

在另一些实施例中,本发明实施例还提供了一种非易失性计算机存储介质,计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的语音数据处理方法;

作为一种实施方式,本发明的非易失性计算机存储介质存储有计算机可执行指令,计算机可执行指令设置为:

接收用户的第一语音指令,基于所述第一语音指令和预设唤醒词向服务器端发送开启所述预设唤醒词的自动语音识别训练和识别的请求;

接收所述服务器端返回的是否成功唤醒的结果;

响应于成功唤醒,根据设置的第一时间段(vadtime)检测用户是否在第一时间段(vadtime)内发出第二语音指令;

响应于在第一时间段(vadtime)内检测到用户发出的第二语音指令,将所述第二语音指令的音频数据的起点追溯到所述第一语音指令的音频数据的起点;

自所述第一语音指令的音频数据的起点开始依次将所述第一语音指令和实时检测到的所述第二语音指令发送至所述服务器端进行识别直至第一时间段(vadtime)结束。

作为另一种实施方式,本发明的非易失性计算机存储介质存储有计算机可执行指令,计算机可执行指令设置为:

基于客户端的开启预设唤醒词的自动语音识别训练和识别的请求,训练基于所述预设唤醒词的微型自动语音识别模型,其中,所述请求中包括预设唤醒词和第一语音指令;

基于所述微型自动语音识别模型识别所述第一语音指令是否与所述预设唤醒词匹配;

向所述客户端反馈是否成功唤醒的结果。

非易失性计算机可读存储介质可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据语音数据处理装置的使用所创建的数据等。此外,非易失性计算机可读存储介质可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,非易失性计算机可读存储介质可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至语音数据处理装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

本发明实施例还提供一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,使计算机执行上述任一项语音数据处理方法。

图11是本发明实施例提供的电子设备的结构示意图,如图11所示,该设备包括:一个或多个处理器1110以及存储器1120,图11中以一个处理器1110为例。语音数据处理方法的设备还可以包括:输入装置1130和输出装置1140。处理器1110、存储器1120、输入装置1130和输出装置1140可以通过总线或者其他方式连接,图11中以通过总线连接为例。存储器1120为上述的非易失性计算机可读存储介质。处理器1110通过运行存储在存储器1120中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例语音数据处理方法。输入装置1130可接收输入的数字或字符信息,以及产生与信息投放装置的用户设置以及功能控制有关的键信号输入。输出装置1140可包括显示屏等显示设备。

上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。

作为一种实施方式,上述电子设备应用于语音数据处理装置中,用于客户端,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够:

接收用户的第一语音指令,基于所述第一语音指令和预设唤醒词向服务器端发送开启所述预设唤醒词的自动语音识别训练和识别的请求;

接收所述服务器端返回的是否成功唤醒的结果;

响应于成功唤醒,根据设置的第一时间段(vadtime)检测用户是否在第一时间段(vadtime)内发出第二语音指令;

响应于在第一时间段(vadtime)内检测到用户发出的第二语音指令,将所述第二语音指令的音频数据的起点追溯到所述第一语音指令的音频数据的起点;

自所述第一语音指令的音频数据的起点开始依次将所述第一语音指令和实时检测到的所述第二语音指令发送至所述服务器端进行识别直至第一时间段(vadtime)结束。

作为一种实施方式,上述电子设备应用于语音数据处理装置中,用于服务器端,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够:

基于客户端的开启预设唤醒词的自动语音识别训练和识别的请求,训练基于所述预设唤醒词的微型自动语音识别模型,其中,所述请求中包括预设唤醒词和第一语音指令;

基于所述微型自动语音识别模型识别所述第一语音指令是否与所述预设唤醒词匹配;

向所述客户端反馈是否成功唤醒的结果。

本申请实施例的电子设备以多种形式存在,包括但不限于:

(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iphone)、多媒体手机、功能性手机,以及低端手机等。

(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:pda、mid和umpc设备等,例如ipad。

(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如ipod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。

(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(5)其他具有数据交互功能的电子装置。

以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1