一种语音交互的方法、系统、装置及存储介质与流程



1.本发明涉及人工智能技术领域,尤其是一种语音交互的方法、系统、装置及存储介质。


背景技术:



2.人机交互是指人与计算机之间使用某种对话语言,以一定的交互方式,为完成确定任务的人与计算机之间的信息交换过程。其中,随着互联网技术和物联网技术的快速发展,时下智能语音交互成为了主流的人机交互方式之一。
3.在与智能终端进行语音交互的过程中通常需要使用语音识别sdk、语音生成sdk以及语音播放sdk。然而,智能终端进行语音交互时没有关注sdk之间的调用顺序,使得sdk工作时会干扰到其他的sdk,导致语音识别的识别率和准确率偏低。


技术实现要素:



4.本技术的目的在于至少一定程度上解决相关技术中存在的技术问题之一。
5.为此,本技术实施例的一个目的在于提供一种语音交互的方法,该方法能够避免sdk工作时干扰到其他的sdk,从而提高语音识别的识别率和准确率。
6.为了达到上述技术目的,本技术实施例所采取的技术方案包括:
7.一种语音交互的方法,所述方法基于智能终端的语音交互工具包进行语音交互,所述语音交互工具包包括语音识别sdk、语音生成sdk和语音播放sdk,所述方法包括以下步骤:
8.通过智能终端获取输入的语音信息;
9.加载所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息;
10.通过所述语音生成sdk根据所述文本信息,生成语音交互信息;
11.清除所述语音识别sdk,加载所述语音播放sdk播放所述语音交互信息。
12.另外,根据本技术上述实施例的一种应用程序语音交互的方法,还可以具有以下附加的技术特征
13.进一步地,在本技术的一个实施例中,所述加载所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息这一步骤,具体包括:
14.获取所述语音信息的声纹特征;
15.通过和用户对应的声纹数据库对所述声纹特征进行比对,确定所述语音信息是否为用户生成的语音信息;
16.当所述语音信息为用户生成的语音信息,通过所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息。
17.进一步地,在本技术的一个实施例中,所述通过和用户对应的声纹数据库对所述声纹特征进行比对,确定所述语音信息是否为用户生成的语音信息这一步骤,具体包括:
18.提取所述语音信息的第一声纹特征;
19.从所述声纹数据库中提取所述用户的第二声纹特征;
20.确定所述第一声纹特征和所述第二声纹特征的相似度;
21.确定所述相似度是否大于第一预设阈值;
22.当所述相似度大于所述第一预设阈值,则所述语音信息为用户生成的语音信息;
23.当所述相似度小于或者等于所述第一预设阈值,则所述语音信息不为用户生成的语音信息。
24.进一步地,在本技术的一个实施例中,所述加载所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息这一步骤,具体包括:
25.获取所述语音信息的音量强度;
26.当所述音量强度大于第二预设阈值,通过所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息。
27.进一步地,在本技术的一个实施例中,所述通过所述语音生成sdk根据所述文本信息,生成语音交互信息这一步骤,具体包括:
28.提取所述文本信息的文本特征信息;
29.将所述文本特征信息输入到语音交互模型中,生成语音交互信息。
30.进一步地,在本技术的一个实施例中,还包括以下步骤:
31.将所述语音信息输入到噪声检测模型,得到所述噪声检测模型输出的噪声检测结果;所述噪声检测结果用于表征所述语音信息中是否包含噪声数据;
32.根据所述噪声检测结果,确定所述语音交互信息的置信度。
33.进一步地,在本技术的一个实施例中,还包括以下步骤:
34.通过所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的操作指令;
35.根据所述操作指令对所述智能终端进行控制。
36.另一方面,本技术实施例提供了一种语音交互的系统,所述系统基于智能终端的语音交互工具包进行语音交互,所述语音交互工具包包括语音识别sdk、语音生成sdk和语音播放sdk,所述系统包括以下模块:
37.第一模块,用于通过智能终端获取输入的语音信息;
38.第二模块,用于加载所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息;
39.第三模块,用于通过所述语音生成sdk根据所述文本信息,生成语音交互信息;
40.第四模块,用于清除所述语音识别sdk,加载所述语音播放sdk播放所述语音交互信息。
41.另一方面,本技术实施例提供了一种语音交互的装置,包括:
42.至少一个处理器;
43.至少一个存储器,用于存储至少一个程序;
44.当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上述的语音交互的方法。
45.一种计算机可读存储介质,其中存储有处理器可执行的指令,所述处理器可执行
的指令在由处理器执行时用于实现上述的语音交互的方法。
46.本技术的优点和有益效果将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到:
47.本技术实施例所公开的一种语音交互的方法,应用于包括但不限于智能手机、掌上电脑、平板电脑、智能电视(smart tv)等智能终端,该方法基于智能终端的语音交互工具包进行语音交互,该方法通过智能终端获取输入的语音信息;接着,加载所述语音识别sdk对所述语音信息进行识别,从而生成与所述语音信息对应的文本信息;随后,通过所述语音生成sdk根据所述文本信息,以生成语音交互信息;然后,清除所述语音识别sdk,并加载所述语音播放sdk播放所述语音交互信息。该方法将语音识别sdk、语音生成sdk和语音播放sdk集成到语音交互工具包内,通过语音识别sdk、语音生成sdk和语音播放sdk实现了语音交互,并限制sdk的调用顺序,有效避免了sdk工作时会干扰到其他sdk的问题,从而提高语音识别的识别率和准确率。
附图说明
48.为了更清楚地说明本技术实施例或者现有技术中的技术方案,下面对本技术实施例或者现有技术中的相关技术方案附图作以下介绍,应当理解的是,下面介绍中的附图仅仅为了方便清晰表述本发明的技术方案中的部分实施例,对于本领域的技术人员来说,在无需付出创造性劳动的前提下,还可以根据这些附图获取到其他附图。
49.图1为本技术实施例中提供的一种语音交互的方法的实施环境示意图;
50.图2为本技术实施例中提供的一种语音交互的方法的流程示意图;
51.图3为本技术实施例中提供的图2中步骤120的一种具体流程示意图;
52.图4为本技术实施例中提供的图3中步骤122的一种具体流程示意图;
53.图5为本技术实施例中提供的图2中步骤120的另一种具体流程示意图;
54.图6为本技术实施例中提供的图2中步骤130的一种具体流程示意图;
55.图7为本技术实施例中提供的一种语音交互的方法中噪声检测的流程示意图;
56.图8为本技术实施例中提供的一种语音交互的方法中终端控制的流程示意图;
57.图9为本技术实施例中提供的一种语音交互的系统的结构示意图;
58.图10为本技术实施例中提供的一种语音交互的装置的结构示意图。
具体实施方式
59.下面结合说明书附图和具体的实施例对本技术进行进一步的说明。所描述的实施例不应视为对本技术的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
60.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
61.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
62.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。
63.1)人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。其中,人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术;人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术、机器学习/深度学习、自动驾驶以及智慧交通等几大方向。
64.2)自然语言处理(nature language processing,nlp)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法,自然语言处理是一门融语言学、计算机科学、数学于一体的科学。这一领域涉及的自然语言即人们日常使用的语言,所以它与语言学的研究也有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
65.3)软件开发工具包(software development kit,sdk)是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合,一般而言sdk即开发windows平台下的应用程序所使用的sdk。它通过编译器、调试器、软件框架等来促进应用程序的创建。它可以简单的为某个程序设计语言提供应用程序接口api的一些文件,但也可能包括能与某种嵌入式系统通讯的复杂的硬件。一般的工具包括用于调试和其他用途的实用工具。sdk还经常包括示例代码、支持性的技术注解或者其他的为基本参考资料澄清疑点的支持文档。
66.4)机器学习(machine learning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科,它专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,机器学习(深度学习)通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
67.5)自动语音识别技术(automatic speech recognition,asr):该技术是让计算机能够“听写”出不同人所说出的连续语音,也就是俗称的“语音听写机”,是实现“声音”到“文字”转换的技术,可以将人的语音信息转换为文本信息。
68.在智能终端的语音交互过程中,需要使用到语音识别sdk、语音生成sdk以及语音播放sdk,每个sdk都有对应的初始化配置,他们之间的调用及响应又相互影响,如:语音识别的时候语音播放必须停止,否则播放的声音会被语音识别sdk识别。而相关技术中,只关心语音识别和语音播放这两个功能,并没有关注sdk之间的初始化和相互之间的影响。
69.为了解决智能终端进行语音交互时没有关注sdk之间调用顺序,导致语音识别的识别率和准确率偏低的问题,本技术实施例所提供的一种语音交互的方法,应用于包括但不限于智能手机、掌上电脑、平板电脑、智能电视(smart tv)等智能终端,该方法基于智能终端的语音交互工具包进行语音交互,该方法通过智能终端获取输入的语音信息;接着,加载所述语音识别sdk对所述语音信息进行识别,从而生成与所述语音信息对应的文本信息;
随后,通过所述语音生成sdk根据所述文本信息,以生成语音交互信息;然后,清除所述语音识别sdk,并加载所述语音播放sdk播放所述语音交互信息。该方法将语音识别sdk、语音生成sdk和语音播放sdk集成到语音交互工具包内,通过语音识别sdk、语音生成sdk和语音播放sdk实现了语音交互,并限制sdk的调用顺序,有效避免了sdk工作时会干扰到其他sdk的问题,从而提高语音识别的识别率和准确率。
70.在使用sdk时,可对sdk进行初始化。首先配置appid、appkey、appsecret等相关参数。配置成功之后配置asr、tts初始化代码,配置asr时配置音频采样率、超时时间、场景id以及代理地址等信息,而配置tts时配置超时时间、场景id以及代理地址等信息。这样可以尽可能的保证调用的先后顺序,也能防止遗漏相关初始化配置信息。
71.图1是本技术实施例提供的一种语音交互的方法的实施环境示意图。参照图1,该实施环境的软硬件主体主要包括操作终端101和服务器102,操作终端101与服务器102通信连接。其中,该语音交互的方法可以单独配置于操作终端101执行,也可以单独配置于服务器102执行,或者基于操作终端101与服务器102二者之间的交互来执行,具体可以根据实际应用情况进行适当的选择,本实施例对此并不作具体限定。此外,操作终端101与服务器102可以为区块链中的节点,本实施例对此并不作具体限定。
72.具体地,本技术中的操作终端101可以包括但不限于智能手表、智能手机、电脑、个人数字助理(personal digital assistant,pda)、智能语音交互设备、智能家电或者车载终端中的任意一种或者多种。服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)以及大数据和人工智能平台等基础云计算服务的云服务器。操作终端101与服务器102之间可以通过无线网络或有线网络建立通信连接,该无线网络或有线网络使用标准通信技术和/或协议,网络可以设置为因特网,也可以是其它任何网络,例如包括但不限于局域网(local area network,lan)、城域网(metropolitan area network,man)、广域网(wide area network,wan)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合。
73.图2是本技术实施例提供的一种语音交互的方法的流程图,该方法的执行主体可以是操作终端或者服务器中的至少一者,图2中以该语音交互的方法配置于操作终端执行为例进行说明。参照图2,该语音交互的方法包括但不限于步骤110至步骤140。
74.该语音交互方法基于智能终端的语音交互工具包进行语音交互,所述语音交互工具包包括语音识别sdk、语音生成sdk和语音播放sdk。
75.步骤110:通过智能终端获取输入的语音信息。
76.本技术实施例中,语音信息主要包括用户通过智能终端的语音数据。具体地,本实施例中,该语音信息可以直接通过智能终端的收音设备采集得到的。
77.步骤120:加载所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息。
78.本步骤中,需要加载语音交互工具包中的语音识别sdk,由于语音信息属于非结构化的数据,语音识别sdk可以采用自动语音识别技术(automatic speech recognition,asr)对语音信息进行语音识别,然后可以将语音信息的文本内容通过自然语言处理技术转
换为结构化数据,比如说向量,从而将转换得到的结构化数据作为文本特征信息。
79.步骤130:通过所述语音生成sdk根据所述文本信息,生成语音交互信息。
80.本步骤中,在获取文本信息后,可以将其输入到语音生成sdk中训练好的语音交互模型中,得到语音交互信息。语音交互模型可以对得到的文本信息进行句子级别的切分处理,得到多个语句。然后再分别对每个语句进行分词处理,得到组成该语句的词组。接着,将得到的词组输入至先前构建好的知识图谱中,得到词组对应的语音交互信息。
81.此处,可以通过带有标签的训练数据集对其进行训练,可以将训练数据集输入到初始化后的语音交互模型中进行训练。具体地,将训练数据集中的数据输入到初始化后的语音交互模型后,可以得到模型输出的识别结果,即关键词预测结果,可以根据关键词预测结果和前述的标签来评估识别模型预测的准确性,从而对模型的参数进行更新。对于语音交互模型来说,模型预测结果的准确性可以通过损失函数(loss function)来衡量,损失函数是定义在单个训练数据上的,用于衡量一个训练数据的预测误差,具体是通过单个训练数据的标签和模型对该训练数据的预测结果确定该训练数据的损失值。而实际训练时,一个训练数据集有很多训练数据,因此一般采用代价函数(cost function)来衡量训练数据集的整体误差,代价函数是定义在整个训练数据集上的,用于计算所有训练数据的预测误差的平均值,能够更好地衡量出模型的预测效果。对于一般的机器学习模型来说,基于前述的代价函数,再加上衡量模型复杂度的正则项即可作为训练的目标函数,基于该目标函数便能求出整个训练数据集的损失值。常用的损失函数种类有很多,例如0-1损失函数、平方损失函数、绝对损失函数、对数损失函数、交叉熵损失函数等均可以作为机器学习模型的损失函数,在此不再一一阐述。本技术实施例中,可以从中任选一种损失函数来确定训练的损失值。基于训练的损失值,采用反向传播算法对模型的参数进行更新,迭代几轮即可得到训练好的语音交互模型。具体地迭代轮数可以预先设定,或者在测试集达到精度要求时认为训练完成。
82.步骤140:清除所述语音识别sdk,加载所述语音播放sdk播放所述语音交互信息。
83.本步骤中,为了避免语音播放sdk工作产生的语音信息被语音识别sdk录入,导致语音识别sdk生成的文本信息失真。需要在加载语音播放sdk前,将语音识别sdk进行清除,以停止语音识别sdk的工作。在清楚语音识别sdk后,语音播放sdk即可播放语音生成sdk生成的语音交互信息。
84.本技术实施例所公开的一种语音交互的方法,应用于包括但不限于智能手机、掌上电脑、平板电脑、智能电视(smart tv)等智能终端,该方法基于智能终端的语音交互工具包进行语音交互,该方法通过智能终端获取输入的语音信息;接着,加载所述语音识别sdk对所述语音信息进行识别,从而生成与所述语音信息对应的文本信息;随后,通过所述语音生成sdk根据所述文本信息,以生成语音交互信息;然后,清除所述语音识别sdk,并加载所述语音播放sdk播放所述语音交互信息。该方法将语音识别sdk、语音生成sdk和语音播放sdk集成到语音交互工具包内,通过语音识别sdk、语音生成sdk和语音播放sdk实现了语音交互,并限制sdk的调用顺序,有效避免了sdk工作时会干扰到其他sdk的问题,从而提高语音识别的识别率和准确率。
85.另外,根据本技术上述实施例的一种语音交互的方法,还可以具有以下附加的技术特征:
86.参照图3,作为进一步可选的实施例,所述加载所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息这一步骤,具体包括:
87.步骤121:获取所述语音信息的声纹特征;
88.步骤122:通过和用户对应的声纹数据库对所述声纹特征进行比对,确定所述语音信息是否为用户生成的语音信息;
89.步骤123:当所述语音信息为用户生成的语音信息,通过所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息。
90.具体地,本技术实施例中,为了避免与除用户以外的人进行语音交互,需要先对语音信息的声纹特征进行比对,确认语音信息是否为用户生成的语音信息。具体地,对用户的声纹进行采集入库,当声纹数据库建设完成后,即可以基于声纹数据库做声纹识别1:1身份确认、声纹识别。将获取到的语音信息的声纹特征与声纹库中的巨量声纹进行比对,从而确定未知声音的身份。当确认语音信息为用户生成的语音信息后,调用语音识别sdk提取语音信息中的文本信息,在提取文本信息时,需要先对语音信息进行文本化处理,可以采用自动语音识别技术(automatic speech recognition,asr)对语音信息进行语音识别,得到语音信息的文本内容,具体地,在识别阶段,将输入语音的特征矢量依次与语音识别sdk中的模板库中的每个模板进行相似度比较,将相似度最高者作为识别结果输出。
91.可选地,将语音信息的文本内容通过自然语言处理技术转换为结构化数据,比如说向量,从而将转换得到的结构化数据作为文本特征信息。另外,在一些实施例中,可以对向量形式的声学特征信息设置向量索引,以减少匹配查询过程中的数据运算量。
92.可选地,还可以对用户的身份信息进行识别,进行身份验证时,可以采用人脸识别的方式。具体地,在获取到图像数据后,需要对图像数据进行特征提取,获得其中的人脸识别特征。接着,将人脸识别特征,与保存有用户的人脸数据库中的目标识别特征,进行匹配,以确定采集到的图像信息中是否包括用户的人脸图像信息,从而确认进行解压操作的人是否为用户本人。
93.参照图4,作为进一步可选的实施例,所述通过和用户对应的声纹数据库对所述声纹特征进行比对,确定所述语音信息是否为用户生成的语音信息这一步骤,具体包括:
94.步骤1221:提取所述语音信息的第一声纹特征;
95.步骤1222:从所述声纹数据库中提取所述用户的第二声纹特征;
96.步骤1223:确定所述第一声纹特征和所述第二声纹特征的相似度;
97.步骤1224:确定所述相似度是否大于第一预设阈值;
98.步骤1225:当所述相似度大于所述第一预设阈值,则所述语音信息为用户生成的语音信息;
99.步骤1226:当所述相似度小于或者等于所述第一预设阈值,则所述语音信息不为用户生成的语音信息。
100.具体地,此处的第一声纹特征可以是语音信息的音频频谱的数字特征,具体地,可以从语音信息的音频频谱中按照预定的规则选取一些时间频率点,将其编码为数字序列,该数字序列即可以作为语音信息的声学特征信息。当然,本技术实施例中采用的特征提取算法可以根据需要任选,例如在一些实施例中,可以对语音信息按照一定的帧叠进行分帧和加窗,得到多个音频帧,具体地,此处分帧指的是按预设规则将整段的语音信息切成多
段,每一段即为一个音频帧,加窗指的是使用预设的窗函数对每个音频帧进行截取,从而使分帧后的语音信息更加连贯,表现出更好的周期函数特征,该窗函数可以是矩形窗、汉明窗或者高斯窗等的任意一种。然后对获取的音频帧进行快速傅里叶变换(fft,fast fourier transformation),得到每个音频帧的频谱,选取每帧频谱中的峰值信号作为该频谱的数字特征来构造语音信息的声学特征信息;在一些实施例中,在得到音频帧的频谱后,也可以在频域上将每个音频帧划分出多个子带,然后计算任意两个相邻子带之间的能量差分的差值,基于得到的差值来构造语音信息的声学特征信息。上述的方式在编码时一般都是将数字特征转换为哈希序列,即以哈希序列作为音频数据的声学特征信息,在一些实施例中,还可以通过神经网络模型提取语音信息的音频数字特征作为声学特征信息,得到的数据格式可以是数值、向量或者矩阵中的任意一种。当然,上述基于音频频谱提取声学特征信息的方式仅用于举例说明,并不意味着对本技术的实际实施形成限制,例如,本技术中还可以基于发音准确度、流利度、韵律度、信噪比、声音强度等维度提取声学特征信息。并且,在一些实施例中,还可以将多种维度提取得到的声学特征信息整合起来得到新的声学特征信息,比如说可以将多种向量形式的声学特征信息通过拼接得到一个新的向量形式的声学特征信息。
101.在一些实施例中,可以通过事先训练完毕的机器学习模型完成第一声纹特征和第二声纹特征的相似度比较。具体地,将第一声纹特征和第二声纹特征一起输入到比较模型中,由比较模型计算两者的相似度,并根据相似度的大小,确定该语音信息是否为用户生成的语音信息。此处的相似度用于表征第一声纹特征和第二声纹特征之间的相似程度,本技术实施例中,可以以百分比的形式来计量相似度,此时可以理解的是,当相似度的数值为100%时,可以认为第一声纹特征和第二声纹特征完全相同。可以理解的是,由于机器学习模型预测得到的评分结果并不一定是完全可靠的,并且采集语音信息的环境中存在着噪声干扰,相似度可能存在一定的误差,因此,当相似度的数值超过第一预设阈值时,即可认为第一特征信息和第二特征信息完全相同。其中,本领域技术人员可以根据实际情况对第一预设阈值进行具体设置。
102.具体地,在确定第一声纹特征和第二声纹特征之间的相似度时,在一些实施例中,可以先确定第一特征信息和第二特征信息的数字特征之间的差异值,然后根据该差异值来确定相似度,差异值越大,相似度越小,反之,差异值越小,相似度越大。以第一特征信息和第二特征信息为前述提取的声学特征信息为例,可以先计算第一特征信息和第二特征信息对应的序列间的方差,然后将方差的绝对值作为差异值,通过差异值和预定的函数确定相似度,该函数使得相似度和差异值之间为负相关关系。应当理解的是,此处差异值的计算方式可以有多种方式,例如可以是数值间的差值、向量间的欧氏距离、矩阵间的范数差等。
103.在一些实施例中,还可以直接通过相似度算法计算第一特征信息和第二特征信息之间的相似度。以第一特征信息和第二特征信息为前述提取的文本特征信息,且第一特征信息和第二特征信息的数据结构均采用向量形式为例,将第一特征信息对应的向量记为第一向量,将第二特征信息对应的向量记为第二向量,然后可以通过余弦相似度算法、皮尔逊相关系数法或者杰卡德相似系数法等算法基于第一向量和第二向量计算相似度。具体地,例如,可以先确定第一向量的长度,记为第一长度,以及第二向量的长度,记为第二长度。接着计算第一长度和第二长度的乘积作为第一数值,以及计算第一向量和第二向量的内积作
为第二数值,然后计算第一数值和第二数值的商作为第一向量与第二向量之间的相似度,也即第一特征信息和第二特征信息之间的相似度。本技术实施例中采用的算法公式如下:
[0104][0105]
式中,a表示第一特征信息,b表示第二特征信息;sim(a,b)表示相似度;表示第一向量;表示第二向量;“·”表示向量之间的内积;表示第一向量的长度;表示第二向量的长度。
[0106]
参照图5,作为进一步可选的实施例,所述加载所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息这一步骤,具体包括:
[0107]
步骤124:获取所述语音信息的音量强度;
[0108]
步骤125:当所述音量强度大于第二预设阈值,通过所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息。
[0109]
本实施例中,在调用语音识别sdk对语音信息进行识别前,会先获取语音信息的音量强度,并判断音量强度是否大于第二预设阈值。只有当音量强度大于预设阈值时,才开始对接收的语音信息处理,以避免外界噪音的干扰,保证对特定用户的语音信息进行处理。其中,第二预设阈值是语音识别sdk开始工作的最低阈值,该最低阈值可预先在语音交互工具包中进行设置,同时用户也可以根据自己的需求进行调整。
[0110]
参照图6,作为进一步可选的实施例,所述通过所述语音生成sdk根据所述文本信息,生成语音交互信息这一步骤,具体包括:
[0111]
步骤131:提取所述文本信息的文本特征信息;
[0112]
步骤132:将所述文本特征信息输入到语音交互模型中,生成语音交互信息。
[0113]
具体地,本技术实施例中,提取得到语音信息的文本信息后,首先可以对得到的文本内容进行句子级别的切分处理,得到多个语句。然后再分别对每个语句进行分词处理,得到组成该语句的词组。此处,可以采用的分词算法有多种,例如在一些实施例中,可以采用基于词典的分词算法,先把语句按照词典切分成词,再寻词的最佳组合方式;在一些实施例中,也可以采用基于字的分词算法,先把语句分成一个个字,再将字组合成词,寻最优的组合方式。将语句进行分词处理后,可以通过预先建立的词典来确定词组中每个词对应的词嵌入向量,当然,在一些实施例中,词嵌入向量可以通过将词映射到一个具有统一的较低维度的向量空间中得到,生成这种映射的策略包括神经网络、单词共生矩阵的降维、概率模型以及可解释的知识库方法等。本技术实施例中,可以将这些结构化数据作为文本特征信息。当然,类似地,上述基于文本内容的语义提取文本特征信息的方式仅用于举例说明,并不意味着对本技术的实际实施形成限制,本技术中还可以基于语法特征、语用特征、关键词击中特征等维度提取文本特征信息,也同样可以将多种维度提取得到的文本特征信息整合起来得到新的文本特征信息,在此不再一一赘述。
[0114]
在获取到语音信息的文本特征信息后,将其输入到语音交互模型中,语音交互模型基于文本特征信息生成回复内容。语音交互模型从文本特征信息中解析出交互关键字。
具体地,将文本特征信息与事先构建的知识图谱数据库进行匹配,根据匹配结果确定交互关键字。接着,将交互关键字再与知识图谱数据库进行匹配,得到交互关键字对应的回复内容。
[0115]
参照图7,作为进一步可选的实施例,还包括以下步骤:
[0116]
步骤150:将所述语音信息输入到噪声检测模型,得到所述噪声检测模型输出的噪声检测结果;所述噪声检测结果用于表征所述语音信息中是否包含噪声数据;
[0117]
步骤160:根据所述噪声检测结果,确定所述语音交互信息的置信度。
[0118]
本技术实施例中,可以采用噪声检测模型对语音信息是否包含噪声数据进行检测,具体地,此时可以将前述的声学特征信息输入到噪声检测模型,噪声检测模型对声学特征信息进行处理后,输出噪声检测结果。类似地,在一些实施例中,此处的噪声检测结果既可以是分类结果,例如代表“含有噪声”的类别或者“不含噪声”的类别;在一些实施例中,噪声检测结果还可以是数值类型的结果,可以用于表示语音信息含有的噪声数据的比例,如0~100%。当然,本技术实施例中,还可以进一步对噪声检测模型进行细分,例如建立环境噪声模型用于检测语音信息中的环境噪声,建立人声噪声模型用于检测语音信息中的人声噪声等等。本技术实施例中的噪声检测模型可以基于任一种机器学习算法搭建,例如对于噪声检测模型来说,可以使用较为基础的分类算法或者回归算法;在得到噪声检测结果后,可以确定语音信息的噪音评分,噪音评分可以用于量化该语音信息数据存在噪音的程度。在确定到语音信息的噪音评分后,可以有效量化出根据该语音信息数据得到的语音交互结果的可靠程度,也即语音交互信息的置信度。具体地,可以理解的是,语音交互信息的可靠程度和语音信息的噪音评分为负相关的关系,即语音信息的噪音评分越高,语音交互信息就越不可靠,置信度越低;反之,语音信息的噪音评分越低,语音交互信息就越可靠,置信度越高。
[0119]
参照图8,作为进一步可选的实施例,还包括以下步骤:
[0120]
步骤170:通过所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的操作指令;
[0121]
步骤180:根据所述操作指令对所述智能终端进行控制。
[0122]
本实施例中,可以提取语音信息的特征信息,然后将特征信息与预设数据库中的语音信息进行匹配,从而确定操作指令。具体地,此处的特征信息可以包括语音信息的声学特征信息,也可以是文本特征信息。
[0123]
预设数据库可以包括语音信息与操作指令的对应关系。例如,当用户说出语音信息“打开网易云音乐”,通过语音识别模型确定该语音信息“打开网易云音乐”对应控制指令,则执行该控制指令,当用户说出语音信息“我要听歌”,通过语音识别引擎确定语音信息“听歌”对应控制指令,从而打开智能终端上的音乐应用程序。
[0124]
可选地,可以首先确定所述语音信息中的操作关键词;然后提取所述操作关键词的特征信息。例如,用户发出语音信息“我想打开qq音乐”,可以从该语音信息提取操作关键词“打开”和“qq音乐”,然后提取操作关键词“打开”和“qq音乐”的特征信息,通过该特征信息识别得到操作指令。其中,所述操作指令包括home键指令、打开指令、回退指令、返回指令、前进指令以及关闭指令中的至少一项。
[0125]
可选地,当通过语音识别模型无法识别语音信息时,可以显示提示信息,提示信息
用于提示用户重新输入语音信息,并且如果通过语音识别引擎无法识别语音信息的次数超过预设阈值时,可以从语音控制模式切换为手动操作模式,提示用户手动操作。
[0126]
在一些实施例中,智能终端会根据上述提示信息作出相应的响应,通过指示灯、声音以及显示模块实现状态反馈显示。显示模块的状态反馈显示方式可以是在智能终端的显示屏或者app的显示界面中直接以文字的形式进行提醒,文字可以是中国文字也可以是其他国家的文字。可选地,提示信息的提示方式也可以是在智能终端的显示屏或者app的显示界面中将预设的离线提醒信息提示区域的显示颜由第一颜(如绿)切换为第二颜(如红等)。
[0127]
参照图9,本技术实施例还提供了一种语音交互的系统,所述系统基于智能终端的语音交互工具包进行语音交互,所述语音交互工具包包括语音识别sdk、语音生成sdk和语音播放sdk,所述系统包括以下模块:
[0128]
第一模块901,用于通过智能终端获取输入的语音信息;
[0129]
第二模块902,用于加载所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息;
[0130]
第三模块903,用于通过所述语音生成sdk根据所述文本信息,生成语音交互信息;
[0131]
第四模块904,用于清除所述语音识别sdk,加载所述语音播放sdk播放所述语音交互信息。
[0132]
可以理解的是,图2所示的语音交互的方法实施例中的内容均适用于本语音交互的系统实施例中,本语音交互的系统实施例所具体实现的功能与图2所示的语音交互的方法实施例相同,并且达到的有益效果与图2所示的语音交互的方法实施例所达到的有益效果也相同。
[0133]
参照图10,本技术实施例还公开了一种语音交互的装置,包括:
[0134]
至少一个处理器1001;
[0135]
至少一个存储器1002,用于存储至少一个程序;
[0136]
当至少一个程序被至少一个处理器1001执行,使得至少一个处理器1001实现如图2所示的应用程序语音交互的方法实施例。
[0137]
可以理解的是,如图2所示的语音交互的方法实施例中的内容均适用于本计算机设备实施例中,本计算机设备实施例所具体实现的功能与如图2所示的语音交互的方法实施例相同,并且达到的有益效果与如图2所示的语音交互的方法实施例所达到的有益效果也相同。
[0138]
本技术实施例还公开了一种计算机可读存储介质,其中存储有处理器可执行的程序,处理器可执行的程序在由处理器执行时用于实现如图2所示的语音交互的方法实施例。
[0139]
可以理解的是,如图2所示的应用程序语音交互的方法实施例中的内容均适用于本计算机可读存储介质实施例中,本计算机可读存储介质实施例所具体实现的功能与如图2所示的应用程序语音交互的方法实施例相同,并且达到的有益效果与如图2所示的语音交互的方法实施例所达到的有益效果也相同。
[0140]
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或方框有时能以相反顺序被执行。此外,在本技术的流程图中所呈现和描述
的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
[0141]
此外,虽然在功能性模块的背景下描述了本技术,但应当理解的是,除非另有相反说明,功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本技术是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本技术。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本技术的范围,本技术的范围由所附权利要求书及其等同方案的全部范围来决定。
[0142]
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0143]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
[0144]
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
[0145]
应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0146]
在本说明书的上述描述中,参考术语“一个实施方式/实施例”、“另一实施方式/实
施例”或“某些实施方式/实施例”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
[0147]
尽管已经示出和描述了本技术的实施方式,本领域的普通技术人员可以理解:在不脱离本技术的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本技术的范围由权利要求及其等同物限定。
[0148]
以上是对本技术的较佳实施进行了具体说明,但本技术并不限于实施例,熟悉本领域的技术人员在不违背本技术精神的前提下可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本技术权利要求所限定的范围内
[0149]
在本说明书的描述中,参考术语“一个实施方式”、“另一实施方式”或“某些实施方式”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
[0150]
尽管已经示出和描述了本技术的实施方式,本领域的普通技术人员可以理解:在不脱离本技术的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本技术的范围由权利要求及其等同物限定。

技术特征:


1.一种语音交互的方法,其特征在于,所述方法基于智能终端的语音交互工具包进行语音交互,所述语音交互工具包包括语音识别sdk、语音生成sdk和语音播放sdk,所述方法包括以下步骤:通过智能终端获取输入的语音信息;加载所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息;通过所述语音生成sdk根据所述文本信息,生成语音交互信息;清除所述语音识别sdk,加载所述语音播放sdk播放所述语音交互信息。2.根据权利要求1所述的语音交互的方法,其特征在于,所述加载所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息这一步骤,具体包括:获取所述语音信息的声纹特征;通过和用户对应的声纹数据库对所述声纹特征进行比对,确定所述语音信息是否为用户生成的语音信息;当所述语音信息为用户生成的语音信息,通过所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息。3.根据权利要求2所述的语音交互的方法,其特征在于,所述通过和用户对应的声纹数据库对所述声纹特征进行比对,确定所述语音信息是否为用户生成的语音信息这一步骤,具体包括:提取所述语音信息的第一声纹特征;从所述声纹数据库中提取所述用户的第二声纹特征;确定所述第一声纹特征和所述第二声纹特征的相似度;确定所述相似度是否大于第一预设阈值;当所述相似度大于所述第一预设阈值,则所述语音信息为用户生成的语音信息;当所述相似度小于或者等于所述第一预设阈值,则所述语音信息不为用户生成的语音信息。4.根据权利要求1所述的语音交互的方法,其特征在于,所述加载所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息这一步骤,具体包括:获取所述语音信息的音量强度;当所述音量强度大于第二预设阈值,通过所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息。5.根据权利要求1所述的语音交互的方法,其特征在于,所述通过所述语音生成sdk根据所述文本信息,生成语音交互信息这一步骤,具体包括:提取所述文本信息的文本特征信息;将所述文本特征信息输入到语音交互模型中,生成语音交互信息。6.根据权利要求1所述的语音交互的方法,其特征在于,还包括以下步骤:将所述语音信息输入到噪声检测模型,得到所述噪声检测模型输出的噪声检测结果;所述噪声检测结果用于表征所述语音信息中是否包含噪声数据;根据所述噪声检测结果,确定所述语音交互信息的置信度。7.根据权利要求1-6中任一项所述的语音交互的方法,其特征在于,还包括以下步骤:
通过所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的操作指令;根据所述操作指令对所述智能终端进行控制。8.一种语音交互的系统,其特征在于,所述系统基于智能终端的语音交互工具包进行语音交互,所述语音交互工具包包括语音识别sdk、语音生成sdk和语音播放sdk,所述系统包括以下模块:第一模块,用于通过智能终端获取输入的语音信息;第二模块,用于加载所述语音识别sdk对所述语音信息进行识别,生成与所述语音信息对应的文本信息;第三模块,用于通过所述语音生成sdk根据所述文本信息,生成语音交互信息;第四模块,用于清除所述语音识别sdk,加载所述语音播放sdk播放所述语音交互信息。9.一种语音交互的装置,其特征在于,包括:至少一个处理器;至少一个存储器,用于存储至少一个程序;当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如权利要求1-7中任一项所述的语音交互的方法。10.一种计算机可读存储介质,其中存储有处理器可执行的指令,其特征在于,所述处理器可执行的指令在由处理器执行时用于实现如权利要求1-7中任一项所述的语音交互的方法。

技术总结


本申请实施例所公开的一种语音交互的方法、系统、装置及存储介质,该方法基于智能终端的语音交互工具包进行语音交互,该方法通过智能终端获取输入的语音信息;接着,加载所述语音识别SDK对所述语音信息进行识别,从而生成与所述语音信息对应的文本信息;随后,通过所述语音生成SDK根据所述文本信息,以生成语音交互信息;然后,清除所述语音识别SDK,并加载所述语音播放SDK播放所述语音交互信息。该方法将语音识别SDK、语音生成SDK和语音播放SDK集成到语音交互工具包内,通过语音识别SDK、语音生成SDK和语音播放SDK实现了语音交互,并限制SDK的调用顺序,有效避免了SDK工作时会干扰到其他SDK的问题,从而提高语音识别的识别率和准确率。和准确率。和准确率。


技术研发人员:

黄炎

受保护的技术使用者:

平安科技(深圳)有限公司

技术研发日:

2022.09.28

技术公布日:

2023/3/27

本文发布于:2024-09-25 14:36:08,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/83472.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:语音   所述   信息   特征
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议