具体实施方式
在以下描述中提出具体细节,以便提供对本发明的透彻理解。然而,本领域的技术人员将清楚地知道,即使没有这些具体细节也可实施本发明的实施例。在本发明中,可进行具体的数字引用,例如“第一元件”、“第二装置”等。但是,具体数字引用不应当被理解为必须服从于其字面顺序,而是应被理解为“第一元件”与“第二元件”不同。
本发明所提出的具体细节只是示范性的,具体细节可以变化,但仍然落入本发明的精神和范围之内。术语“耦合”定义为表示直接连接到组件或者经由另一个组件而间接连接到组件。
以下通过参照附图来描述适于实现本发明的方法、系统和装置的优选实施例。虽然各实施例是针对元件的单个组合来描述,但是应理解,本发明包括所公开元件的所有可能组合。因此,如果一个实施例包括元件A、B和C,而第二实施例包括元件B和D,则本发明也应被认为包括A、B、C或D的其他剩余组合,即使没有明确公开。
如图1所示,本发明第一实施例提供一种用于智能设备的语音识别方法,包括如下步骤S10-S18。然而,在本发明的教导下,本领域技术人员能够对这些步骤进行简单更改、合并、省略或重新组合,均应落入本发明的范围。
步骤S10、采集第一音频数据,并从中提取至少一个语音词。
在该步骤中,由音频采集设备采集用户发出的语音获得第一音频数据,音频采集设备进一步从中提取至少一个语音词。具体来说,对采集所得的音频数据进行特征提取,获得每一帧内的特征数据,再将感兴趣的特征数据组成为语音词。在采集过程中,音频采集设备可以进行滤除噪声的操作。
步骤S12、基于语音词进行唤醒识别,以确定是否唤醒智能设备。
在该步骤中,将语音词以及语音词之间的停顿(静音态)构成为流式数据的格式。本领域技术人员理解,语音之间的停顿的时间长度对于准确识别语音同样重要。流式数据被送入一个小规模神经网络。
经过前向计算,由小规模神经网络来获得每个语音词和每个静音态的后验概率。静音态的后验概率即是指在此信号数据的前提下为静音态的概率,其他语音词的后验概率也是同样计算获得。
随后,再由有限状态转换器分析处理语音词以及静音态的后验概率以得到相应的状态信息。本发明中,有限状态转换器FST是用来表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。在唤醒过程中,有限状态转换器,会根据不同状态的后验概率,判断是否满足跳转条件来进行状态跳转,只有从静音态开始顺序地跳转各个语音词的状态,并回到静音态,才能达到唤醒的条件。
步骤S14、基于智能设备的唤醒而采集第二音频数据,并从中提取至少一个三音素。
需要说明的是,即使再唤醒智能设备后,该智能设备也不对用户的语音(对应于第一音频数据)进行响应,而是继续采集并识别用户随后发出的语音(对应于第二音频数据)。经由后续的语音识别能够判断出用户的意图之后,智能设备再对第二音频数据进行响应,例如,播放音乐、天气预报,开启其他功能,或与用户进行交谈。
在该步骤中,由音频采集设备进行第二次采集,以获得第二音频数据。第二音频数据首先经过语音端点检测来确定语音在第二音频中的起始点和结束点。具体来说,语音端点检测是通过区分音频信号中的语音信号和背景噪音来检测语音的起始和结束边界,从而可以消除音频信号中长时间的静音。
随后,对起始点和结束点之间的音频数据再进行音素提取,获得至少一个三音素。三音素是音素的一种,由三个单音素组成,与单音素一样,其也是基于隐马尔科夫模型(HMM),不同的是,其考虑了上下文信息(协同发音信息),因而在识别准确率方面更具优势。
步骤S16、基于每个三音素相应的后验概率进行语音识别。
在该步骤中,由一个大规模神经网络对各三音素组成的集合进行后验概率计算,以确定每个三音素的后验概率。
因为语音识别中采用的隐马尔科夫模型需要的是在此状态下该信号数据出现的概率(即似然值),因此,在获得各个三音素相应的后验概率的基础上,利用隐马尔科夫模型构建一个状态网络,状态网络中的各个点表征各个三音素的不同状态,点之间连线是状态间跳转的路径。在该状态网络上搜寻最佳路径,从而获得对三音素集合的识别结果。识别过程可以结合常用词典以及语言模型来进行。在这里,识别结果可以表现为文字形式的文本内容,提供该文本内容以便进行后续的意图分析。
步骤S18、基于语音识别的结果进行意图分析以确定智能设备是否进行响应。
意图分析是自然语言理解的重要组成部分,是对文字内容进行意图分类,涉及典型的文本分类问题。意图分析的输入是文本内容,其分类结果是对应于文本的意图类别。例如,获取到的语音识别结果是“我想听周杰伦的歌”,该语音识别结果作为意图分析的输入,经过意图分析模块,可以确定“我想听周杰伦的歌”的意图领域是媒体,意图内容是听歌。
意图分析是对文本内容进行分类,分类主要基于用户的不同意图来进行,分类类别可以包括如电话、导航、娱乐等。通过分析语音识别的结果,能够确定用户语音所属的领域,并以此作为后续反馈的依据。如果是设备关注的领域,表明用户意图明确,由此证明对设备的唤醒有效。如果是设备不关注的领域,则不会获得响应反馈,并可用来证明唤醒是无效的,以致可以忽略。
作为一种示例,在该步骤中,意图分析包括:确定语音识别的结果与感兴趣语料库之间的关联程度。感兴趣语料库是指此设备关注并能够引起设备反馈的各种用户请求(文本形式)的语料集合,此集合中的各种用户请求又能够划分为多种意图类别。通过意图分类,可以判断语音识别结果是否属于语料库中高度关联的某一特定意图类别。
更具体来说,在意图分析中可以设定一个严格的阈值来控制意图分类过程,仅当满足阈值时才启动智能会话系统来对第二音频数据进行响应。作为示例,可以在与第一感兴趣语料库之间的关联程度大于第一关联阈值时,智能设备对第二音频数据进行响应;或,在与第一感兴趣语料库之间的关联程度大于第二阈值而小于第三阈值时,智能设备进行响应。
在智能设备中存储或外接有多个不同的感兴趣语料库的情况下,当语音识别结果与第一感兴趣语料库之间的关联程度大于第二阈值,而与第二感兴趣语料库之间的关联程度小于第三阈值时,智能设备对第二音频数据进行响应。这种情况能够用来进行获得相当明确的意图分类结果,例如,表示用户仅希望获知某一城市的天气情况,而不是气候情况;或者,表示用户希望体验赛车游戏,而又不希望观看赛车比赛。可以理解,感兴趣语料库与关联阈值的组合能够形成多种复杂情况,智能设备可以选择仅在满足特定条件时才进行响应。
在唤醒智能设备后,根据意图分析的结果,如果用户有明显的指向性请求,则将语音识别结果交给用户反馈系统(例如,智能会话系统),针对用户的请求做出相应的答复,同时还可以选择使智能设备进入全功率运行模式;如果用户没有明显的请求意图,则判定为误唤醒,不做任何反馈,还可以保持智能设备运行于低功率模式,以节省电量。
根据本发明上述第一实施例,唤醒识别与意图分析是相互衔接、彼此独立的两个功能步骤,通过两者的组合可以有效避免智能设备的误启动,还能够更准确地判明用户意图以进行智能响应。
本发明第二实施例提供一种智能设备,其配置成对用户语音进行识别,如图2所示,该智能设备包括音频采集单元200、语音词提取单元201、唤醒识别单元203、音素提取单元212、语音识别单元214以及意图分析单元216。
其中,音频采集单元200用于采集音频数据,音频数据包括第一音频数据以及可能的第二音频数据,第二音频数据在智能设备被唤醒之后采集。在唤醒前,智能设备可以以较低的功率来运行以节省电能,在唤醒后,智能设备以全功率来运行,智能设备的全部功能处于工作状态中,包括各种多媒体功能、联网功能以及智能对话功能等。
语音词提取单元201与音频采集单元200耦合,其能够从第一音频数据中提取至少一个语音词。唤醒识别单元203与语音词提取单元201耦合,其基于语音词来进行唤醒识别,以确定是否唤醒智能设备。
音素提取单元212与音频采集单元200耦合,也可进一步与唤醒识别单元203耦合,其在唤醒智能设备并采集得到第二音频数据之后,从第二音频数据中提取至少一个三音素。语音识别单元214与音素提取单元212耦合,其基于每个三音素相应的后验概率进行语音识别。语音识别是将语音信号转化为文字信息的过程,语音识别单元214的输入是音频信号,输出是对应的文字信息。意图分析单元216与语音识别单元214耦合,其基于语音识别的结果进行意图分析,以准确判明用户意图,从而确定是否进行后续操作,例如,播放音乐、启动智能会话系统等。
优选情况下,唤醒识别单元203包括第一神经网络(小规模神经网络),语音识别单元214包括第二神经网络(大规模神经网络)。第一神经网络经过前向计算,可以获得每个语音词和每个静音态的后验概率,第一神经网络专用于唤醒识别,其使用不同年龄、各种口音的用户发出的唤醒词的语音信息来训练。第二神经网络用于对三音素集合进行后验概率计算,为了保证语音识别的准确性,第二神经网络需要基于大量的三音素数据来训练。
作为进一步的改进,语音识别单元214至少包括语音子单元,还可以进一步包括语言子单元和/或词典子单元。
其中,语音子单元对应于语音识别的声学模型,用来将语音信号转化为对应的音素状态的后验概率。上述第二神经网络(大规模神经网络)能够作为语音子单元的组成部分。在语音子单元中,语音信号通过前端处理、特征提取等,获得N维的特征向量,将特征向量作为第二神经网络的输入,经过网络前向计算,获得各三音素的后验概率。
词典子单元考虑多个不同词典中的词语语义及发音,以便更准确识别用户语音,包括生僻词语的发音。词典子单元将语音子单元获得的每一音频帧包含的各个三音素,根据词典中每个字的发音来进行拼凑,进而组成至少一个字。
语言子单元能够识别汉语、英语、日语等多种语言,其是将词典子单元按时间顺序获得的字根据语言模型来拼凑成句子。其与语音子单元、词典子单元协同工作,将语音信号转化为为文本形式的语句。
意图分析单元216与外部至少一个感兴趣语料库通信连接,其中每个感兴趣语料库对应于一个生活领域,例如,音乐领域、天气领域、城市设施领域等。意图分析单元216将语音识别的结果与各感兴趣语料库分别匹配,可以快速地确定用户语音所属的生活领域,进而优先调用该生活领域对应的词典或常用语数据库,从而加速对用户意图的分析过程。
意图分析单元216还可以将语音识别的结果向音素提取单元212反馈,音素提取单元212从中获知特定的生活领域,进而可以聚焦于该生活领域、利用该领域中常出现(频率较高)的三音素来加速整个音素提取过程。
如图3所示,本发明第三实施例提供一种用于语音识别的分布式系统,其包括:音频采集单元300,其用于采集来自用户的音频数据,包括第一音频数据和第二音频数据;其中,第一音频数据在系统的第一工作模式下采集,由系统用来判断用户是否意图唤醒系统,而第二音频数据是在系统的第二工作模式下采集,由系统用来确定用户是否期望获得系统的进一步响应。
语音词提取单元301与音频采集单元300耦合,其从第一音频数据中提取至少一个语音词。唤醒识别单元303与语音词提取单元301耦合,其基于语音词进行唤醒识别,以确定是否将该系统从第一工作模式切换到第二工作模式。第一工作模式可对应于系统的休眠模式或低功率模式,第二工作模式对应于系统的唤醒模式或全功率模式。
音素提取单元312与音频采集单元300耦合,从第二音频数据中提取至少一个三音素。语音识别单元314与音素提取单元312耦合,其基于每个三音素相应的后验概率进行语音识别。意图分析单元316与语音识别单元314耦合,其基于语音识别的结果进行意图分析,从而确定该分布式系统是否对用户的语音进行响应。
作为一种示例,音频采集单元300、语音词提取单元301以及音素提取单元312设置于本地端,而其他单元设置于云端。备选地,唤醒识别单元303也设置于本地端(如图3示出)。备选地,仅意图分析单元316设置于云端。应理解,设置于云端的单元可以与处在不同位置的多个不同的本地端单元相耦合。在这种系统中,多个计算装置共同操作,以通过使用其共享资源来提供服务。
基于“云”的实现可提供一个或多个优点,包括:开放性、灵活性和可扩展性、可中心管理、可靠性、可缩放性、对计算资源所优化、具有聚合和分析跨多个用户的信息的能力、跨多个地理区域进行连接、以及将多个移动或数据网络运营商用于网络连通性的能力。
上述说明仅针对于本发明的优选实施例,并不在于限制本发明的保护范围。本领域技术人员可能作出各种变形设计,而不脱离本发明的思想及附随的权利要求。