一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

支持装置进行语音识别的服务器及服务器的操作方法与流程

2022-03-23 10:05:38 来源:中国专利 TAG:


1.本公开涉及用于支持装置进行语音识别的服务器及服务器的操作方法。更具体地,本公开涉及通过使用服务器端的后处理来强化语音识别结果的方法。


背景技术:

2.随着执行各种复杂功能的电子装置的发展,市场上已经发布了包括语音识别功能以提高装置可访问性的电子装置。在语音识别功能中,无需任何特殊的按键操作或与触摸模块的接触即可识别用户的语音,从而可轻松控制装置。
3.根据这种语音识别功能,例如可在诸如智能手机的便携式终端和诸如电视机和冰箱的家电中执行呼叫或消息发送而无需特殊的按键操作,并且可在便携式终端和家电中容易地设置诸如路径寻找、互联网搜索和报警设置的各种功能。
4.近来,随着人工智能(ai)技术的发展,这种人工智能(ai)技术甚至与语音识别相关联。因此,已能够快速且准确地识别各种话语。
5.即使在延迟很短且未连接网络的情况下,也适用执行本地自动语音识别(asr)的装置端语音识别。然而,在基于服务器的语音识别中,语音识别是基于存储在服务器中的信息来执行的。


技术实现要素:

6.[技术问题]
[0007]
提供了一种装置选择性地使用装置端语音识别和基于服务器的语音识别的方法。
[0008]
[技术方案]
[0009]
根据本公开实施方式,提供了一种服务器。该服务器包括:存储器,存储一个或多个计算机可读指令;处理器,配置为执行存储在存储器中的一个或多个计算机可读指令;以及通信接口,配置为从装置接收通过装置对输入到装置的语音信号进行语音识别得到的第一字符串。处理器还配置为执行一个或多个指令以:基于第一字符串识别估计字符串,该估计字符串用于替换第一字符串中的部分的;以及控制通信接口将第二字符串发送到装置,在第二字符串中,第一字符串中的部分被替换为估计字符串。第一字符串是从输入到装置的语音信号经由语音识别输出的。
附图说明
[0010]
通过结合附图进行的以下描述,本公开的某些实施方式的上述和其它方面、特征和优点将变得更加显而易见,在附图中:
[0011]
图1是用于比较和解释装置端语音识别和基于服务器的语音识别的图;
[0012]
图2a是根据本公开实施方式的语音识别系统的框图;
[0013]
图2b是根据本公开实施方式的语音识别系统的框图;
[0014]
图2c是根据本公开实施方式的语音识别系统的框图;
[0015]
图3是根据本公开实施方式的装置的结构框图;
[0016]
图4a是根据本公开实施方式的装置的详细结构框图;
[0017]
图4b是根据本公开实施方式的装置的详细结构框图;
[0018]
图5a是根据本公开实施方式的用于解释由装置执行的确定要执行装置端语音识别的方法的图;
[0019]
图5b是根据本公开实施方式的用于解释由装置执行的确定执行基于服务器的语音识别的方法的图;
[0020]
图6是根据本公开实施方式的用于解释帧同步字符串的图;
[0021]
图7是根据本公开实施方式的服务器的框图;
[0022]
图8a是根据本公开实施方式的用于解释由服务器执行的支持装置进行语音识别的方法的图;
[0023]
图8b是根据本公开实施方式的用于解释由服务器执行的通过获得与每个语音信号帧对应的每个字符的似然度来确定替换字符串的方法的图;
[0024]
图9是根据本公开实施方式的服务器的详细框图;
[0025]
图10a示出了根据本公开实施方式的用于计算后验概率的人工智能递归神经网络(rnn)的结构;
[0026]
图10b示出了根据本公开实施方式的用于计算似然度的混淆矩阵的示例;
[0027]
图11a是根据本公开实施方式的用于解释由服务器执行的计算与替换字符相关的似然度矩阵的过程的图,其中替换字符将要替换从装置接收的第一字符串内的每个字符;
[0028]
图11b是根据本公开另一实施方式的用于解释由服务器执行的计算与替换字符相关的似然度矩阵的过程的图,其中替换字符将要替换从装置接收的第一字符串内的每个字符;
[0029]
图12是根据本公开实施方式的选择性地使用两个语音识别模块的装置的框图;
[0030]
图13是根据本公开实施方式的由装置执行的进行语音识别的方法的流程图;
[0031]
图14是根据本公开实施方式的由装置执行的进行语音识别的方法的详细流程图;
[0032]
图15是根据本公开实施方式的服务器的操作方法的流程图;
[0033]
图16是根据本公开实施方式的操作服务器的方法的详细流程图;
[0034]
图17是根据本公开实施方式的用于解释由服务执行的加权有限状态转换器(wfst)解码的图;
[0035]
图18示出了根据本公开实施方式的显示语音识别结果的装置的屏幕;以及
[0036]
图19是根据本公开实施方式的装置的详细框图。
具体实施方式
[0037]
其它方面将部分地在随后的描述中阐述,且部分地将通过该描述变得显而易见,或者可通过本公开所呈现的实施方式的实践而获知。
[0038]
根据本公开实施方式,提供了一种服务器。该服务器包括:存储器,存储一个或多个计算机可读指令;处理器,配置为执行存储在存储器中的一个或多个计算机可读指令;以及通信接口,配置为从装置接收通过装置对输入到装置的语音信号进行语音识别得到的第一字符串。处理器还配置为执行一个或多个指令以:基于第一字符串识别估计字符串,该估
计字符串用于替换第一字符串中的部分;以及控制通信接口将第二字符串发送到装置,在第二字符串中,第一字符串中的部分被替换为估计字符串。第一字符串是从输入到装置的语音信号经由语音识别输出的。
[0039]
根据本公开实施方式,提供了一种服务器的操作方法。该方法包括:从装置接收通过装置对输入到装置的语音信号进行语音识别得到的第一字符串;以及将第二字符串发送到装置,在第二字符串中,第一字符串中的部分被替换为估计字符串。第一字符串是从输入到装置的语音信号经由语音识别输出的。
[0040]
根据本公开实施方式,提供了一种装置。该装置包括:存储器,存储一个或多个计算机可读指令;处理器,配置为执行存储在存储器中的一个或多个指令;以及通信接口,配置为与服务器通信。处理器还配置为执行一个或多个指令以:通过对语音信号执行语音识别来获得第一字符串;确定是否将第一字符串中的部分替换为另一字符串;基于该确定,控制通信接口将第一字符串发送到服务器;以及控制通信接口从服务器接收第二字符串,该第二字符串是服务器将包括在第一字符串中的部分替换为估计字符串获得的。
[0041]
根据本公开实施方式,提供了一种装置的操作方法。该方法包括:通过对语音信号执行语音识别来获得第一字符串;确定是否将第一字符串中的部分替换为另一字符串;基于该确定,将第一字符串发送到服务器;以及从服务器接收第二字符串,该第二字符串是服务器将包括在第一字符串中的部分替换为估计字符串获得的。
[0042]
[发明模式]
[0043]
尽管考虑到本公开的功能而选择目前广泛使用的通用术语来描述本公开的,但是这些通用术语可根据本领域普通技术人员的意图、案件先例、新技术的出现等而变化。本公开的申请人任意选择的术语也可用于特定情况。在这种情况下,需要在详细说明中指定其含义。因此,术语必须基于其含义和整个说明书的内容来定义,而不是通过简单地陈述术语。
[0044]
在整个本公开中,表述“a、b或c中的至少一个”表示仅a、仅b、仅c、a和b两者、a和c两者、b和c两者、a、b和c中的全部或其变型。
[0045]
当在本说明书中使用术语“包括(comprises)”和/或“包括(comprising)”或者“包括(includes)”和/或“包括(including)”时,指定所述要素的存在,但是不排除一个或多个其它要素的存在或添加。当在本说明书中使用术语“单元”、
“‑
器”和“模块”时是指执行至少一个功能或操作的单元,并且可实现为硬件、软件或硬件和软件的结合。
[0046]
在本公开中,术语“字符”是指以视觉形式书写人类语言的字符。字符的示例可包括韩文字符、字母字符、中文字符、数字、注音符号、标点符号和其它符号。
[0047]
在本公开中,术语“字符串”是指字符序列。
[0048]
在本公开中,术语“音素”是表示声音的最小单位并由至少一个字符组成。例如,在字母符号系统中,一个字符可能是音素。相应地,本公开中的字符可被称为音素,并且本公开中的字符串可表示音素的序列。在本公开中,字符串还可被称为文本或文本串。
[0049]
术语“词素”是由至少一个音素组成的有意义的最小单位。术语“词”是由至少一个词素组成的语言的最小基本单位,并且可单独使用或表示语法功能。术语“音素”是人类语言中区分一个词与另一个词的声音单位。
[0050]
根据本公开实施方式的语音识别模型可将语音信号转换为字符串并输出该字符
串。根据本公开实施方式的语音识别模型输出的字符串可以是“帧同步字符串”。术语“帧”可指以预设时间间隔分割语音信号以处理语音信号的单元,或分割的语音信号本身。在本公开中,“帧同步字符串”是指当通过语音识别模型将语音信号转换为字符串并生成字符串作为输出时包括分别与语音信号帧对应的字符的字符串。
[0051]
例如,语音识别模型可接收与用户发出的“棒球”对应的语音信号,并且可输出帧同步字符串[b,b,a,,a,a,s,s,e,,b,b,a,a,l]。
[0052]
在本公开中,当语音识别模型从语音信号中生成某个字符串并输出某个字符串时,“某个字符串的置信度分数”是指语音识别模型输出某个字符串的准确度。例如,某个字符串的置信度分数可根据预先确定的等式来计算,预先确定的等式基于例如从某个字符串中获得的似然度、在估计某个字符串时输出的部分似然度、或者后验概率值。随着某个字符串的置信度分数的增加,可确定某个字符串是否被语音识别模型准确地估计。
[0053]
在本公开中,“某个字符串的评估信息”可指关于由服务器根据推荐使用的某个字符串的信息,并输出置信度分数大于某个字符串的置信度分数的另一字符串。例如,某个字符串的评估信息可包括从某个字符串获得的多个估计字符串的似然度。根据本公开实施方式的服务器可从多个估计字符串中选择并输出具有最大似然度或置信度的字符串。
[0054]
在本公开中,“似然度”可指概率或可能性,因此“事件b相对于事件a的似然度”可指表示在事件a发生时发生事件b的似然度的条件概率p(b|a)。
[0055]
在本公开中,当语音识别模型从语音信号中生成某个字符串并输出某个字符串时,“从某个字符串中获得的似然度”是指根据某个字符串估计的多个估计字符串的似然度。根据某个字符串估计的多个估计字符串可指通过将某个字符串内的至少一个字符替换为另一字符而获得的多个字符串。
[0056]
更详细地,在准确执行语音识别时输出的字符串被称为基本真实字符串,并且“从某个字符串中获得的似然度”可指当假设多个估计字符串中的每一个是基本真实字符串时某个字符串被估计为语音识别结果的似然度。根据本公开实施方式,“从某个字符串中获得的似然度”可包括与替换字符相关的似然度矩阵,这些替换字符将分别替换某个字符串内的每个字符。
[0057]
根据本公开实施方式,“从某个字符串中获得的似然度”可用于识别与某个字符串内的每个字符发音相似的替换字符,并且基于所识别的替换字符来确定估计字符串,其中某个字符串内的至少一个字符被校正为另一字符。此外,可基于预先存储的诸如语言模型和词典信息的信息从所确定的估计字符串中选择最合适的估计字符串,并且可以是推荐字符串而不是某个字符串。
[0058]
当语音识别模型执行语音识别时,之前执行的语音识别的结果可能会影响后续执行的语音识别的结果。当某个字符被错误地识别为发音相似的另一字符时,由于错误识别而错误地确定语言信息从而可能会使得某个字符后面的字符也被错误识别的概率增加。换句话说,当某个字符被错误地识别为另一字符时,通过将某个字符与随后字符组合而确定的词和通过将另一错误识别的字符与随后字符组合而确定的词可能变得不同。
[0059]
因此,根据本公开实施方式的装置或服务器可使用从某个字符串中获得的似然度,通过考虑关于某个字符串的发音信息和语言信息对某个字符串进行解码来获得替换字符串。
[0060]
在本公开中,“针对某个字符获得的似然度矩阵”可指包括将用于替换某个字符的替换字符的似然度值矩阵。“将用于替换某个字符的替换字符的似然度值”可指当某个字符被假定为基本真实字符时某个字符被估计为语音识别结果的概率。例如,对于经由语音识别获得的字符串中包括的字符“a”,可获得包括真实字符为“a”的概率、真实字符为“b”的概率、真实字符为“c”的概率
……
以及真实字符为“z”的概率的似然度矩阵[0.4 0.01 0.01 0.01 0.2 ... 0.01]。当获得包括与字符串中包括的每个字符对应的替换字符的似然度值的似然度矩阵时,可将高似然度值分配给与每个字符发音相似的替换字符。
[0061]
在本公开中,“从某个字符串中获得的似然度”可从与某个字符串内的每个字符对应的替换字符相关的似然度值中获得。可考虑在每个字符之前累积的字符来计算与某个字符串内的每个字符对应的替换字符相关的似然度值。然而,本公开的实施方式不限于此,并且可仅考虑每个字符而不考虑每个字符之前累积的字符来计算与某个字符串内的每个字符对应的替换字符相关的似然度值。
[0062]
根据本公开实施方式,“考虑某个字符串内的每个字符之前累积的字符而从某个字符串中获得的似然度”可根据“某个字符串中包括的每个字符的后验概率”和某个字符串的“字符序列概率”来计算。
[0063]
事件a的“后验概率”是指在考虑与事件a相关的事件、观察事实或背景知识时预期事件a的条件概率。
[0064]
在本公开中,当语音识别模型从语音信号中生成字符串并输出该字符串时,“字符串内的某个字符的后验概率”可包括当考虑到字符串内的某个字符之前的字符时语音识别模型已准确预测某个字符的概率以及语音识别模型已将某个字符错误地预测为另一字符的概率。
[0065]
在本公开中,当语音识别模型从语音信号中生成字符串并输出该字符串时,“字符序列概率”可指字符按照字符串排列的概率。
[0066]
根据本公开实施方式,“仅考虑某个字符串内的每个字符而从某个字符串中获得的似然度”可由包括字符已被错误预测的概率的“混淆矩阵”来计算。在本公开中,“混淆矩阵”也被称为误差矩阵,并且当语音识别模型将语音信号转换为某个字符串并输出某个字符串时,混淆矩阵包括语音识别模型已准确预测包括在某个字符串中的某个字符的概率以及语音识别模型已将某个字符错误地预测为另一字符的概率。例如,对于与某个字符发音相似的字符,可更重地加权语音识别模型已将与某个字符发音相似的字符错误地预测为某个字符的概率。
[0067]
在本公开中,“声学模型”可指包括以音素为单位确定语音信号与哪个字符或注音符号匹配的信息的模型。例如,根据本公开实施方式的装置可基于声学模型来计算每个字符与语音信号匹配的概率。
[0068]
在本公开中,“词典信息”可包括多个词与包括在多个词中的每个词中的字符之间的映射信息。“语言模型”可以是人工智能(ai)模型,该模型已学习了词之间的关系以在分配特定词串时估计随后词的概率。
[0069]
在本公开中,“人工神经网络”是基于人类或动物大脑的神经网络实现的计算系统的总称。人工神经网络是机器学习的详细方法之一,并且因此是连接作为神经细胞的多个神经元的网络。人工神经网络可通过硬件实现,但主要通过使用计算机软件实现。人工神经
网络是几个神经元到加权链路的连接,每个神经元都是基本的计算单元。加权链路可调整权重使得权重可适应给定环境。
[0070]
人工神经网络是诸如自组织映射(som)、递归神经网络(rnn)和卷积神经网络(cnn)的各种模型的总称,并且人工神经网络存在多种类型。
[0071]
在本公开中,与某个属性相关的一组词被称为某个属性的域。
[0072]
在本公开中,“校正第一字符串的操作”可指通过将第一字符串中包括的至少一个字符替换为另一字符来推荐并输出置信度分数大于第一字符串的第二字符串的操作。因此,在本公开中,表述“字符串的校正”、“字符的校正”、“某个字符被替换为另一字符替换”、“推荐另一字符而不是某个字符”、“某个字符串被替换为另一字符串替换”和“推荐另一字符串而不是某个字符串”可互换使用。
[0073]
根据本公开实施方式的语音识别系统中包括的装置或服务器可以是语音助手装置和/或提供“语音助手服务”。语音助手服务可以是提供与用户对话的服务。语音助手服务可向用户提供响应消息,以考虑用户情况、装置情况等模仿直接与用户交谈的人。语音助手服务可适当地生成用户所需的信息并将该信息提供给用户,如同用户的个人助理。语音助手服务可链接以访问各种服务,诸如广播服务、内容共享服务、内容提供服务、电源管理服务、游戏提供服务、聊天服务、文档编辑服务、搜索服务、呼叫服务、拍照服务、交通推荐服务和电影播放服务,并且可向用户提供必要的信息或必要的功能。
[0074]
本文参考附图详细描述示例,使得本公开可由本公开所属领域的普通技术人员容易地执行。然而,本公开可以以许多不同的形式实施,并且不应被解释为限于本文所阐述的示例。
[0075]
现将在下文中参考附图更完整地描述本公开实施方式。
[0076]
图1是用于比较和解释装置端语音识别和基于服务器的语音识别的图。
[0077]
装置端语音识别是指由装置100对用户10话语执行本地语音识别,并且基于服务器的语音识别是指由服务器200对由装置100接收到的用户10的话语执行远程语音识别。也就是说,装置端语音识别可能不需要将装置100连接到服务器200,而基于服务器的语音识别可使用处于客户端-服务器关系的装置100和服务器200来提供语音识别。
[0078]
随着端到端语音识别和压缩技术的发展,装置端语音识别技术逐渐发展,因此装置端语音识别与基于服务器的语音识别的性能差异正在逐渐缩小。具体地,在不受特定领域限制的开放域话语的语音识别或一般听写中,装置与服务器性能之间的差异可忽略不计。一般听写是指写下与命名实体面向域不对应的话语。命名实体可包括特定地名、特定人名、特定装置名称、特定商标名称等。在描述域时,与某个属性相关的一组词被称为某个属性的域。
[0079]
装置端语音识别提供小于约50毫秒的延迟,这可能比基于服务器的语音识别数百毫秒的延迟要小得多。因此,装置端语音识别可能更适合装置100操作的某些环境,诸如郊区、飞机内部、或者网络可访问性受限或不可用的波阴影区域。装置端语音识别在安全和隐私侵犯问题上更有利,并且可降低管理服务器的成本。
[0080]
基于服务器的语音识别是在能够存储比装置更多的命名实体(诸如,地名、人名和商标名称)的服务器中实现的。
[0081]
因此,根据基于服务器的语音识别,可对与新流行语或新歌名相关的词分配更高
的权重,并且当词未被语音识别时,可执行通过将词添加到词典中来修复语音识别缺陷的hotfix操作。可通过使用例如针对在服务器中运行的第三方应用优化的语言模型和词典信息来执行关于语音识别结果的重新评分。
[0082]
因此,诸如听写、通用命令和字幕生成的通用语音识别是由装置执行的,但是当需要通过使用例如与特定域对应的语言模型和词典信息来执行语音识别时,需要由服务器执行的混合语音识别。
[0083]
此时,当整个语音识别过程由装置和服务器分工执行时,可能会在装置与服务器之间产生依赖关系。
[0084]
例如,可使用如下方法:由装置执行将声学模型应用于话语的计算,并且由服务器执行将语言模型和词典信息应用于从声学模型提取的中间值的解码计算。由于根据该方法在装置与服务器之间产生了依赖关系,因此该方法不可用于彼此不兼容的装置与服务器之间。
[0085]
又例如,在包括编码计算和解码计算的端到端语音识别中,可使用仅由装置执行编码计算并且由服务器执行对编码数据的解码计算的方法。由于执行解码计算需要关于编码方法的词典信息,因此在执行编码的装置与执行解码的服务器之间产生了依赖关系。因此,即使这种方法也不可用于彼此不兼容的装置与服务器之间。
[0086]
为了解决这个问题,图2a示出了根据本公开实施方式的语音识别系统。
[0087]
根据本公开实施方式的装置100可执行将语音信号转换为第一字符串的装置端语音识别。装置100可基于第一字符串的置信度分数来确定装置端语音识别是否已失败。当装置100确定装置端语音识别已失败时,装置100可将与装置端语音识别结果对应的第一字符串发送到服务器200。
[0088]
根据本公开实施方式,装置100可以以字符串的形式向服务器200发送关于语音信号的信息,因此不论由装置100使用的装置端语音识别如何,服务器200都可处理字符串。
[0089]
根据本公开实施方式,装置100向服务器200发送的第一字符串可以是帧同步字符串。
[0090]“帧”可指以某一时间间隔分割语音信号以处理语音信号的单元或者所分割的语音信号本身。“帧同步字符串”是指包括在通过语音识别模型将语音信号转换为字符串并生成字符串作为输出时分别与语音信号帧对应的字符的字符串。
[0091]
根据本公开实施方式的装置100可通过使用诸如递归神经网络转换器(rnn-t)或连接时间分类(ctc)的算法来生成帧同步字符串作为语音识别结果。
[0092]
然而,本公开的实施方式不限于此。即使当根据本公开实施方式的装置100的语音识别结果不是帧同步时,装置100也可通过执行强制对齐来生成帧同步字符串。稍后将参考图6详细描述帧同步字符串和经由强制对齐产生帧同步字符串的详细方法。
[0093]
当通过使用装置端语音识别执行语音识别的结果的置信度分数足够高时,根据本公开实施方式的装置100可使用执行语音识别的结果而不作改变。
[0094]
另一方面,当根据本公开实施方式的装置100确定经由装置端语音识别执行语音识别的结果的置信度分数不够高时,装置100可将与语音识别结果对应的字符串发送到服务器200。
[0095]
因此,当根据本公开实施方式的装置100确定经由装置端语音识别执行语音识别
的结果的置信度分数大于置信度阈值时,装置100不将语音信号发送到服务器200,以防止服务器200从头开始重新开始语音识别过程,从而减少处理时间。
[0096]
当根据本公开实施方式的装置100确定经由装置端语音识别执行语音识别的结果的置信度分数小于置信度阈值时,装置100可将与语音识别结果对应的字符串以句子、词、短语或帧为单位发送到服务器200。
[0097]
当根据本公开实施方式的装置100执行语音识别并因此获得构成句子或短语的字符串时,装置100可将包括在句子或短语中的所有字符发送到服务器200,或仅将包括在句子或短语中的一些字符发送到服务器200。装置100可基于字符串的置信度分数,将置信度分数低的一些字符发送到服务器200。
[0098]
根据本公开实施方式的装置100可接收由服务器200校正的字符串,并且可组合根据确定出无需校正而未发送到服务器200的字符串与校正的字符串。根据本公开实施方式的装置100可基于对组合字符串的解释结果来输出组合字符串,或可提供语音助手服务。
[0099]
根据本公开实施方式的服务器200可以以句子、词、短语或帧为单位从装置100接收与语音识别结果对应的字符串。
[0100]
根据本公开实施方式的服务器200可通过使用服务器200中存储的语言模型和词典信息来校正接收到的第一字符串的错误。服务器200可通过使用服务器200中的包括比装置100中存储的语言模型更多信息的语言模型从第一字符串中获得第二字符串。服务器200可通过将包括在第一字符串中的至少一个字符替换为另一字符来获得第二字符串。第二字符串可以是通过校正第一字符串中包括的错误而获得的字符串。
[0101]
在本公开中,根据本公开实施方式的服务器200可通过将从装置100接收到的第一字符串中包括的至少一个字符替换为另一字符来校正第一字符串,并且可将校正的第一字符串发送到装置100。
[0102]“校正第一字符串的操作”可指推荐并输出置信度分数高于第一字符串的第二字符串的操作。因此,在本公开中,表述“字符串的校正”、“字符的校正”、“某个字符被替换为另一字符替换”、“推荐另一字符而不是某个字符”、“某个字符串被替换为另一字符串替换”和“推荐另一字符串而不是某个字符串”可彼此互换使用。
[0103]
当根据本公开实施方式的服务器200从装置100获得构成句子或短语的字符串时,服务器200可校正句子或短语中包括的字符,或可校正句子或短语中包括的一些字符。服务器200可基于字符串的置信度分数来校正低置信度分数的一些字符。
[0104]
根据本公开实施方式的服务器200可组合根据确定出无需校正而未校正的字符串与校正的字符串。根据本公开实施方式的装置200可将组合字符串发送到装置100。
[0105]
根据本公开实施方式的服务器200可通过使用用于不同域的不同词典信息和不同语言模型来对接收到的字符串执行解码。根据本公开实施方式,由于词典信息存储在服务器200中,因此新术语或新命名实体可被容易地热修复。
[0106]
根据本公开实施方式的服务器200可从装置100接收字符串并选择与接收到的字符串相关的域。例如,服务器200可从装置100连同字符串一起接收与字符串相关的域的信息,并且可基于接收到的信息来确定对字符串执行解码的域。例如,域可以是字符串的主题区域,诸如棒球、天气、生物学等。又例如,服务器200可基于接收到的字符串来确定与从装置100接收到的字符串相关的域。根据本公开实施方式的服务器200可通过使用词典信息和
与确定的域对应的语言模型来对接收到的字符串执行解码。
[0107]
因此,根据本公开实施方式的服务器200可通过对从装置100接收到的字符串重新解码来输出提高的语音识别准确度的语音识别结果。例如,服务器200可从装置100接收第一字符串并通过使用服务器200内的语言模型和词典信息对第一字符串进行解码,从而输出已校正第一字符串中包括的至少一个字符的第二字符串。
[0108]
服务器200可将第二字符串发送到装置100。装置100可通过从服务器200接收置信度分数大于第一字符串的第二字符串来提高语音识别准确度性能,并且利用第二字符串来改进用户语音输入的语音识别。
[0109]
当根据本公开实施方式的服务器200从装置100获得包括构成句子的字符的字符串时,服务器200可校正整个句子的错误,或可校正句子中包括的一些字符的错误。服务器200可基于字符串的置信度分数来校正低置信度分数的一些字符的错误。根据本公开实施方式的服务器200可组合根据确定出无需校正而未校正的字符串与校正的字符串,从而获得第二字符串。
[0110]
参考图2a,根据本公开实施方式的服务器200可将第二字符串作为语音识别结果发送到装置100。然而,本公开实施方式不限于图2a的示例。
[0111]
参考图2b和图2c,根据本公开实施方式的服务器200可通过针对第二字符串确定用户的话语意图,基于第二字符串将与语音助手服务相关的信息发送到装置100。
[0112]
根据本公开实施方式的服务器200可通过使用从第一字符串中获得的第二字符串向装置100提供各种类型的语音助手服务。语音助手服务可以是提供与用户对话的服务。语音助手服务可向用户提供响应消息,以考虑用户情况、装置情况等模仿直接与用户交谈的人。语音助手服务可适当地生成用户请求的信息并将信息提供给用户以答复用户的请求,如同用户的个人助理。
[0113]
在这种情况下,为了提供语音助手服务,服务器200可通过使用服务器200内的自然语言理解(nlu)模型、对话管理器(dm)模型、自然语言生成(nlg)模型等,基于字符串来将用于执行与用户对话的信息提供给装置100。
[0114]
例如,服务器200可基于解释第二字符串的结果来控制装置100或另一装置(例如,智能家电或可穿戴装置)。
[0115]
参考图2b,根据本公开实施方式的服务器200可基于解释字符串的结果来生成用于控制装置100的控制命令或使装置100能够控制另一装置的控制命令,并且将生成的控制命令提供给装置100。
[0116]
参考图2c,根据本公开实施方式的服务器200可提供与各种服务相关的语音助手服务,这些服务可由诸如电视、家电等的其它受控装置例如在家庭网络设置中提供。例如,语音助手服务可链接到各种服务,诸如广播服务、内容共享服务、内容提供服务、电源管理服务、游戏提供服务、聊天服务、文档编辑服务、搜索服务、呼叫服务、拍照服务、交通推荐服务和电影播放服务,并且可向用户提供必要的信息或必要的功能。
[0117]
根据本公开实施方式的服务器200可基于第二字符串来将与语音助手服务相关的信息发送到装置100。与语音助手服务相关的信息可包括提供给用户的响应消息或用户请求的信息,以考虑用户情况、装置情况等模仿直接与用户交谈的人。
[0118]
服务器200可基于第二字符串确定用户的话语意图,并请求服务提供服务器201提
供用户所需的服务。服务提供服务器201可提供广播服务、内容共享服务、内容提供服务、电源管理服务、游戏提供服务、聊天服务、文档编辑服务、搜索服务、呼叫服务、拍摄服务、交通推荐服务或电影播放服务中的至少一种。服务提供服务器201可在诸如电视、家电等的一个或多个受控装置内在例如家庭网络设置中实现。
[0119]
尽管提供语音助手服务的服务器200被连接到图2c中的单个服务提供服务器201,但是本公开的实施方式不限于此。例如,根据本公开实施方式,服务器200可连接到多个服务提供服务器,并且可根据用户的话语意图来确定用户请求的服务。服务器200可选择与所确定的服务对应的服务提供服务器,并且可向所选择的服务提供服务器发送服务提供请求。
[0120]
根据本公开实施方式的服务提供服务器201可基于从提供语音助手服务的服务器200接收到的服务请求来提供与所请求的服务相关的信息。例如,服务提供服务器201可提供广播、内容、应用、交通推荐信息、搜索结果等作为与所请求的服务相关的信息。服务提供服务器201可向提供语音助手服务的服务器200或装置100提供与所请求的服务相关的信息。
[0121]
现在将详细描述根据本公开实施方式的选择性地将字符串作为语音识别结果发送到服务器220以请求服务器200校正字符串的装置100以及校正接收到的字符串的服务器200的相应结构和相应操作方法。
[0122]
图3是根据本公开实施方式的装置100的结构框图。
[0123]
根据本公开实施方式的装置100可以是被实现为计算机装置的固定终端或移动终端。装置100可以是但不限于智能手机、移动电话、导航装置、计算机、膝上型计算机、数字广播终端、ai扬声器、扬声器、个人数字助理(pda)、便携式多媒体播放器(pmp)或平板个人计算机(pc)中的至少一个。装置100可使用无线或有线通信方法通过网络与另一装置和/或服务器进行通信。
[0124]
参考图3,装置100可包括接收器110、处理器120、通信接口130、存储器140和输出接口150。图3所示的装置100的一个或多个部件可被省略或合并在一起。除了图3所示的这些部件之外的附加部件可构成装置100。例如,参考图19,根据本公开一些实施方式的装置100还可包括用户输入接口2100、感测单元2400和音频/视频(a/v)输入接口2600。
[0125]
根据本公开实施方式的接收器110可从用户接收语音信号。例如,接收器110可经由麦克风将外部声音转换为电声数据来接收语音信号。在图3中,接收器110被包括在装置100中。然而,根据本公开另一实施方式,接收器110可被包括在单独的装置中并且可以以有线或无线方式连接到装置100。
[0126]
根据本公开实施方式的存储器140可存储用于执行语音识别的指令以及在语音识别中使用的各种模型、神经网络、词典信息等。
[0127]
根据本公开实施方式的处理器120可通过执行存储在存储器140中并加载用于执行的一个或多个指令来执行语音识别。
[0128]
根据本公开实施方式的处理器120可获得第一字符串作为对语音信号的语音识别结果。
[0129]
例如,第一字符串可以是帧同步字符串,其包括分别与以预设时间间隔分割语音信号获得的语音信号帧对应的字符。可替代地,第一字符串可以是根据标签同步方法将由
语音信号发出的每个字符一一包括在内而获得的字符串。
[0130]
接下来,根据本公开实施方式的处理器120可确定是否将第一字符串替换为另一字符串,并且可根据该确定将第一字符串经由通信接口130发送到服务器200。根据本公开实施方式的处理器120可以以句子、词、短语或帧为单位将第一字符串发送到服务器200。当根据本公开实施方式的处理器120执行语音识别并因此获得构成句子或短语的字符串时,处理器100可将包括在句子或短语中的所有字符发送到服务器200,或仅将句子或短语中包括的一些字符发送到服务器200。基于字符串的置信度分数,处理器120可将置信度分数低的字符发送到服务器200。
[0131]
确定是否将第一字符串替换为另一字符串可意味着确定语音识别已失败从而确定将第一字符串替换为另一字符串。可替代地,确定将第一字符串替换为另一字符串可指确定是否将第一字符串替换为在服务器中另外进行语音识别而获得的另一字符串。
[0132]
例如,处理器120可确定第一字符串的置信度分数,并且可基于确定出的置信度分数来确定是否将第一字符串替换为另一字符串。
[0133]
第一字符串的置信度分数可基于从第一字符串中获得的多个估计字符串的似然度或第一字符串内的至少一个字符被另一字符替换的后验概率中的至少一个来计算。
[0134]
例如,处理器120可基于作为维特比解码结果输出的似然度来计算置信度分数。可替代地,处理器120可基于从端到端语音识别模型中的柔性最大值传输函数(softmax)层输出的后验概率来计算置信度分数。
[0135]
可替代地,根据本公开实施方式的处理器120可确定在对语音信号进行语音识别期间估计的多个估计字符串,并且可基于多个估计字符串之间的相关性来计算第一字符串的置信度分数。随着包括第一字符串的多个估计字符串之间的相关性增加,第一字符串的置信度分数可增加。
[0136]
又例如,处理器120可基于装置100中预先存储的关键词与第一字符串相比较的结果来确定是否将第一字符串替换为另一字符串。例如,当第一字符串中不包括预先存储的关键词时,处理器120可确定是否将第一字符串替换为另一字符串。
[0137]
又例如,处理器120可基于命名实体是否包括在与第一字符串相关的域或第一字符串中来确定是否将第一字符串替换为另一字符串。例如,当确定第一字符串与命名实体面向域相关联或确定第一字符串不与开放域相关联时,处理器120可确定要将第一字符串替换为另一字符串。
[0138]
当确定第一字符串要被另一字符串替换时,根据本公开实施方式的处理器120可基于该确定来控制通信接口130将第一字符串发送到服务器200。
[0139]
根据本公开实施方式的通信接口130可经由有线或无线通信与外部装置、装置或服务器进行通信。通信接口130可包括短距离通信模块、有线通信模块、移动通信模块、广播接收模块等。
[0140]
当对语音信号进行语音识别的结果不是帧同步字符串时,根据本公开实施方式的处理器120可通过对第一字符串进行强制对齐来生成帧同步字符串并将其发送到服务器200。
[0141]
根据本公开实施方式的处理器120可识别包括在第一字符串中的每个字符被发音的语音信号部分,并且可识别包括在所识别的语音信号部分中的多个语音帧。处理器120可
根据所识别的语音帧,通过对字符进行多次连续排列而获得帧同步字符串。
[0142]
例如,当第一字符串中包括的某个字符的发音时间段为n帧(其中n为自然数)时,处理器120可通过将n个某些字符(n大于或等于2)连续排列而获得帧同步字符串。
[0143]
通信接口130可从服务器200接收第二字符串。第二字符串是服务器200通过将第一字符串内的至少一个字符替换为另一字符而获得的字符串。通信接口130可从服务器200接收基于服务器200对第二字符串的解释而生成的响应消息。
[0144]
当确定不必校正第一字符串时,根据本公开实施方式的处理器120可确定第一字符串将不被另一字符串替换。当第一字符串未被另一字符串替换时,根据本公开实施方式的处理器120可通过输出接口150输出第一字符串。
[0145]
另一方面,当确定需要校正第一字符串时,处理器120可确定第一字符串将被另一字符串替换。当确定第一字符串将被另一字符串替换时,输出接口150可输出从服务器200接收的第二字符串而不是第一字符串。
[0146]
根据本公开实施方式,装置100获得的第一字符串可以是基于第一词典信息和第一语言模型获得的字符串。根据本公开实施方式,装置200获得的第二字符串可以是基于服务器200中存储的第二词典信息和第二语言模型获得的字符串。
[0147]
存储在服务器200中的第二词典信息和第二语言模型可包括比第一词典信息和第一语言模型更大的信息量。因此,从服务器200接收的第二字符串的置信度分数可大于第一字符串的置信度分数。装置100可通过从服务器200接收置信度分数高于第一字符串的第二字符串来提高语音识别性能,并且利用第二字符串来提供答复用户语音输入的输出。
[0148]
根据本公开实施方式的输出接口150可不变地输出第一字符串或第二字符串,或可输出从第一字符串或第二字符串获得的词串。例如,当第一字符串是帧同步字符串时,输出接口150可输出从第一字符串中获得的词串。
[0149]
根据本公开实施方式的输出接口150可输出基于第一字符串或第二字符串执行的语音识别结果。输出接口150可将语音识别结果通知给用户或可将语音识别结果发送到外部装置(例如,智能手机、家电、可穿戴装置或服务器)。例如,输出接口150可包括能够输出音频信号的扬声器或者能够输出视频信号的显示器。
[0150]
可替代地,输出接口150可执行与语音识别结果对应的操作。例如,装置100可解释第一字符串或第二字符串,并且可确定与解释结果对应的装置100的功能。装置100可通过输出接口150输出用于执行该功能的屏幕图像。可替代地,装置100可将与解释结果对应的关键词发送到外部服务器,并且可从外部服务器接收与所发送的关键词相关的信息,并且通过输出接口150在屏幕上输出所接收的信息。可替代地,装置100可基于解释结果生成针对语音信号的响应消息,并且可通过输出接口150输出响应消息。
[0151]
根据本公开实施方式的装置100可通过对第一字符串或第二字符串进行自然语言处理来确定用户的话语意图,通过输出接口150输出与语音助手服务相关的信息。装置100可使用例如装置100内的nlu模型、dm模型和nlg模型,基于第一字符串或第二字符串来提供语音助手服务。
[0152]
可替代地,输出接口150可基于第二字符串从服务器200接收与语音助手服务相关的信息,并且可输出所接收的信息。例如,与基于第二字符串的语音助手服务相关的信息可包括用于控制装置100或另一装置的控制命令,该控制命令是基于通过针对第二字符串的
自然语言处理解释用户话语意图的结果而产生的。可替代地,例如,基于第二字符串的与语音助手服务相关的信息可包括用户所需的服务或信息,该服务或信息是基于通过针对第二字符串的自然语言处理解释用户话语意图的结果而提供的。
[0153]
当根据本公开实施方式的处理器120仅将句子或短语中包括的一些字符发送到服务器200时,处理器120可组合从服务器200接收的校正的字符串与根据确定出无需校正而未发送到服务器200的字符串。处理器120可输出组合字符串,基于组合字符串来输出语音识别结果,或基于解释组合字符串的结果来提供语音助手服务。
[0154]
现在将参考图4a和图4b详细描述装置100的操作方法。
[0155]
图4a是根据本公开实施方式的装置的详细结构框图。
[0156]
如图4a所示,处理器120的自动语音识别(asr)模块121可接收由接收器110获得的语音信号,并且对语音信号执行语音识别。
[0157]
图4a的asr模块121可通过使用端到端的方法对语音信号执行语音识别。端到端方法是使用经训练的深度神经网络(dnn)将语音信号直接映射到字符串或词串的语音识别方法。与使用诸如声学模型和语言模型的多个模型的其它语音识别方法相比,端到端方法可通过使用单个经训练的dnn来简化语音识别过程。rnn-t模型、ctc模型等作为端到端语音识别模型的低级示例存在。
[0158]
asr模块121可从语音信号中提取特征向量。asr模块121可通过使用存储在存储器140中的dnn 144从特征向量中输出第一字符串。
[0159]
根据本公开实施方式的处理器120的确定器125可基于由asr模块121输出的第一字符串的置信度分数来确定是否将第一字符串替换为另一字符串。确定器125可从asr模块121接收关于第一字符串的置信度分数信息。
[0160]
根据本公开实施方式的确定器125可接收通过asr模块121的softmax层输出的作为关于第一字符串的置信度分数信息的后验概率值。确定器125可基于与第一字符串相关联的后验概率值来计算置信度分数。
[0161]
例如,当置信度分数等于或大于阈值时,确定器125可确定不必对第一字符串进行校正,并且可通过输出接口150输出第一字符串。另一方面,当置信度分数小于阈值时,确定器125可确定需要对第一字符串进行校正,并且可通过通信接口130将第一字符串发送到服务器200。
[0162]
为了便于解释,图4a示出了通过输出接口150输出第一字符串的情况。然而,本公开的实施方式不限于此。根据本公开实施方式的装置100可通过对第一字符串进行自然语言处理来确定用户的话语意图,通过输出接口150输出与语音助手服务相关的信息。
[0163]
装置100可使用例如装置100内的nlu模型、dm模型和nlg模型,基于第一字符串来提供语音助手服务。
[0164]
例如,装置100的处理器120可生成对第一字符串的响应消息并可通过输出接口150将其输出给用户,以考虑用户情况、装置情况等来模仿直接与用户交谈的人。可替代地,例如,处理器120可基于第一字符串生成用户需要的信息,并且可通过输出接口150将所生成的信息提供给用户。可替代地,例如,处理器120可基于第一字符串确定用户的话语意图,并且可请求服务提供服务器提供用户所需的服务。输出接口150可输出从服务提供服务器接收到的信息。
[0165]
根据本公开实施方式的装置100的输出接口150可从服务器200接收与语音助手服务相关的信息并且可输出接收到的信息。与语音助手服务相关的信息可以是服务器200基于第一字符串或通过对第一字符串进行校正而获得的第二字符串生成的信息。例如,与语音助手服务相关的信息可包括对用户语音信号的响应消息、用户所需的服务或用户需要的信息。
[0166]
图4b是根据本公开另一实施方式的装置的详细结构框图。
[0167]
如图4b所示,处理器120的asr模块121可接收由接收器110获得的语音信号,并对语音信号执行语音识别。音素串获取器122可通过使用存储在存储器140中的声学模型141从语音信号中获得音素串。声学模型141可分割语音信号的波形,并且可通过使用隐马尔可夫模型、高斯混合模型、贝叶斯推理、多层神经网络等来估计包括音素的音素串。
[0168]
处理器120的字符串获取器123可基于存储在存储器140中的词典信息142和语言模型143,从音素串估计词并输出包括估计词的字符串。
[0169]
根据本公开实施方式的处理器120的确定器125可计算由asr模块121输出的第一字符串的置信度分数,并且可基于计算出的置信度分数来确定是否将第一字符串替换为另一字符串。确定器125可从asr模块121接收关于第一字符串的置信度分数信息。
[0170]
根据本公开实施方式的确定器125可基于由asr模块121的维特比解码器作为关于第一字符串的置信度分数信息输出的第一字符串中的部分似然度来计算置信度分数。
[0171]
当置信度分数等于或大于阈值时,根据本公开实施方式的确定器125可确定不必对第一字符串进行校正,并且可通过输出接口150输出第一字符串。另一方面,当置信度分数小于阈值时,确定器125可确定需要对第一字符串进行校正,并且可通过通信接口130将第一字符串发送到服务器200。为了便于解释,图4b示出了通过输出接口150输出第一字符串的情况。然而,本公开的实施方式不限于此。根据本公开实施方式的装置100可通过对第一字符串进行自然语言处理来确定用户的话语意图,通过输出接口150输出与语音助手服务相关的信息。
[0172]
装置100可使用例如装置100内的nlu模型、dm模型和nlg模型,基于第一字符串来提供语音助手服务。
[0173]
例如,装置100的处理器120可生成对第一字符串的响应消息并可通过输出接口150将其输出给用户,以考虑用户情况、装置情况等来模仿直接与用户交谈的人。可替代地,例如,处理器120可基于第一字符串生成用户请求的信息,并且可通过输出接口150将生成的信息提供给用户。可替代地,例如,处理器120可基于第一字符串确定用户的话语意图,并且可请求服务提供服务器提供用户请求的信息。输出接口150可输出从服务提供服务器接收到的信息。
[0174]
根据本公开实施方式的装置100的输出接口150可从服务器200接收与语音助手服务相关的信息并可输出接收到的信息。与语音助手服务相关的信息可以是由服务器200基于第一字符串或对第一字符串进行校正而获得的第二字符串生成的信息。例如,与语音助手服务相关的信息可包括对用户语音信号的响应消息、用户所需的服务或者用户需要的信息。
[0175]
如上所述,根据本公开实施方式的装置100可基于对语音信号的语音识别结果的置信度分数,确定是否将第一字符串替换为另一字符串。然而,本公开的实施方式不限于
此。根据本公开另一实施方式,装置100可基于预先存储在装置100中的关键词与第一字符串的比较结果,确定是否将第一字符串替换为另一字符串。可替代地,根据本公开另一实施方式的装置100可基于与第一字符串相关联的域,确定是否将第一字符串替换为另一字符串。可替代地,根据本公开另一实施方式的装置100可经由自然语言理解来解释第一字符串的含义,并且可基于解释结果来确定是否将第一字符串替换为另一字符串。
[0176]
图5a是根据本公开实施方式的用于解释由装置100执行的确定要执行装置端语音识别的方法的图。
[0177]
例如,根据本公开实施方式的装置100的处理器120的确定器125可基于预先存储在装置100中的关键词与第一字符串的比较结果,确定是否将第一字符串替换为另一字符串。
[0178]
当第一字符串中包括预先存储的至少一个关键词时,根据本公开实施方式的处理器125可确定不将第一字符串替换为另一字符串。因此,装置100可使用由装置100的asr模块121执行语音识别的结果,而无需服务器200的干预。
[0179]
例如,当asr模块121输出的第一字符串为“给我读我的文本”时,确定器125可确定第一字符串包括预先存储的关键词“文本”,并且可确定不将第一字符串替换为另一字符串。
[0180]
又例如,根据本公开实施方式的装置100的处理器120的确定器125可基于与第一字符串相关联的域或第一字符串是否包括命名实体,确定是否将第一字符串替换为另一字符串。
[0181]
当确定第一字符串不与命名实体面向域相关联且第一字符串与开放域相关联时,根据本公开实施方式的处理器125可确定不将第一字符串替换为另一字符串。因此,装置100可使用由装置100的asr模块121执行语音识别的结果,而无需服务器200的干预。
[0182]
例如,当由asr模块121输出的第一字符串为“拍照”时,确定器125可确定第一字符串与开放域相关联,并且可确定不将第一字符串替换为另一字符串。
[0183]
当确定命名实体被包括在第一字符串中时,根据本公开实施方式的处理器125可确定将第一字符串替换为另一字符串。
[0184]
根据本公开实施方式的确定器125可确定存储在存储器140中的命名实体中的至少一个是否包括在第一字符串中。可替代地,在没有用于命名实体的词典信息的情况下,根据本公开实施方式的确定器125可确定命名实体是否包括在第一字符串中。例如,确定器125可通过对从第一字符串中识别出的词执行词性(pos)标记,识别包括在第一字符串中的命名实体。
[0185]
例如,当由asr模块121输出的第一字符串为“拍照”时,确定器125可确定第一字符串不包括命名实体,并且可确定不将第一字符串替换为另一字符串。
[0186]
又例如,根据本公开实施方式的装置100的处理器120的确定器125可经由自然语言理解来解释第一字符串的含义,并且可基于解释结果来确定是否将第一字符串替换为另一字符串。
[0187]
当确定了语音信号是与装置100的操作相关联的通用命令作为解释结果时,根据本公开实施方式的处理器125可确定不将第一字符串替换为另一字符串。因此,装置100可使用由装置100的asr模块121执行语音识别的结果,而无需服务器200的干预。
[0188]
例如,当由asr模块121输出的第一字符串是“我有新的语音邮件吗?”时,确定器125可确定第一字符串是与确认文本消息相关联的通用命令,并且可确定不将第一字符串替换为另一字符串。
[0189]
图5b是根据本公开实施方式的用于解释由装置100执行的确定执行基于服务器的语音识别的方法的图。
[0190]
如图5b所示,根据本公开实施方式的装置100的处理器120的确定器125可确定需要将第一字符串替换为另一字符串,并且可基于该确定将第一字符串发送到服务器200。
[0191]
图5b示出了装置100的asr模块121接收与用户说出的“红雀棒球队”对应的语音信号并错误地获得第一字符串“猫鹿棒球队”的情况。
[0192]
例如,由于第一字符串不包括预先存储的关键词,根据本公开实施方式的装置100的处理器120的确定器125可确定要将第一字符串替换为另一字符串。
[0193]
又例如,当确定第一字符串与体育领域相关或者包括命名实体时,根据本公开实施方式的装置100的处理器120的确定器125可确定要将第一字符串替换为另一字符串。
[0194]
根据本公开实施方式的确定器125可确定存储在存储器140中的命名实体中的至少一个是否包括在第一字符串中。可替代地,在没有用于命名实体的词典信息的情况下,根据本公开实施方式的确定器125可确定命名实体是否包括在第一字符串中。例如,确定器125可通过对从第一字符串中识别出的词执行词性(pos)标记,识别包括在第一字符串中的命名实体。然而,本公开的实施方式不限于此,并且可使用各种类型的命名实体识别(ner)方法。
[0195]
又例如,根据本公开实施方式的装置100的处理器120的确定器125可确定出语音信号不是通用命令作为解释第一字符串的结果,并且可确定要将第一字符串替换为另一字符串。
[0196]
如图5b所示,根据本公开实施方式的装置100的确定器125可确定需要将第一字符串替换为另一字符串,并且可基于该确定将第一字符串发送到服务器200。服务器200可从装置100接收第一字符串,并且可通过使用服务器200可用或存储在服务器200内的语言模型和词典信息(例如,体育领域的词典信息)来执行解码。服务器200可获得已对包括在第一字符串中的至少一个字符进行校正的第二字符串作为解码结果。装置100可通过从服务器200接收第二字符串并使用接收到的第二字符串来提高语音识别的准确度。
[0197]
当根据本公开实施方式的装置100执行语音识别并因此获得构成句子或短语的字符串时,装置100可将句子或短语中的所有字符发送到服务器200,或仅将包括在句子或短语中的一些字符发送到服务器200。装置100的处理器120的确定器125可基于字符串的置信度分数,确定将低置信度分数的一些字符发送到服务器200。
[0198]
根据本公开实施方式的装置100可从服务器200接收校正的字符串,并且可组合根据确定出无需校正而未发送到服务器200的字符串与校正的字符串。根据本公开实施方式的装置100可输出组合字符串,输出基于组合字符串的语音识别结果,或基于解释组合字符串的结果来提供语音助手服务。
[0199]
根据本公开实施方式的装置100可向服务器200提供与装置100的第一字符串相关联的域的信息,同时请求服务器200校正第一字符串。域的信息是用于指示或标识域的信息,并且例如可包括域的名称和域的标识符,但是本公开的实施方式不限于此。装置100可
基于由装置100的asr模型输出的第一字符串的域置信度分数,识别与第一字符串相关联的域。域置信度分数可以是表示第一字符串的至少部分与特定域的关联强度的数字。例如,装置100可计算表示由asr模型输出的第一字符串与之前在装置100中注册的域相关联的强度的置信度分数。装置100可基于计算出的域置信度分数来识别与第一字符串相关联的域。装置100可基于规则识别与第一字符串相关联的域,或可通过使用训练用于域识别的ai模型获得与第一字符串相关联的域置信度分数。
[0200]
图6是根据本公开实施方式的用于解释帧同步字符串的图。
[0201]
如图6所示,根据本公开实施方式的装置100的asr模块121可输出帧同步字符串603,其包括分别与以预设时间间隔分割语音信号601获得的语音信号帧f对应的字符。
[0202]
例如,asr模块121可接收与用户的话语“棒球”对应的语音信号,并且可输出帧同步字符串[b,b,a,,a,a,s,s,e,,b,b,a,a,l]。
[0203]
然而,本公开的实施方式不限于此,并且根据本公开实施方式的asr模块121可输出非帧同步字符串(即,标签同步字符串)作为语音识别的结果。即使在这种情况下,装置100也可通过对从语音信号获得的字符串执行强制对齐来生成帧同步字符串。
[0204]
根据本公开实施方式的装置100的处理器120可识别包括在第一字符串中的每个字符被发音的语音信号部分,并且可识别包括在识别出的语音信号部分中的多个语音帧。处理器120可通过根据识别出的语音帧对字符进行多次连续排列来获得帧同步字符串。
[0205]
例如,asr模块121可输出第一字符串[b,a,s,e,b,a,l,l],即非帧同步字符串。在这种情况下,处理器120可基于每个字符被发音的时间段对第一字符串中包括的每个字符进行多次连续排列。因此,处理器120可获得帧同步字符串[b,b,a,,a,a,s,s,e,,b,b,a,a,l]。
[0206]
根据本公开实施方式的装置100可将帧同步字符串603输出到服务器200。服务器200可对从装置100接收到的帧同步字符串603进行解码,并且可将基于解码结果获得的第二字符串发送到装置100。
[0207]
图7是根据本公开实施方式的服务器的框图。
[0208]
根据本公开实施方式的服务器200可以以有线或无线方式连接到装置100,只要服务器200可通信地连接到装置100。
[0209]
参考图7,服务器200可包括通信接口210、处理器220和存储器230。除了图7所示的部件之外的替代部件可构成服务器200。图7所示的服务器中的一个或多个部件可被省略或合并在一起。
[0210]
根据本公开实施方式的服务器200的存储器230可存储用于执行语音识别的指令,以及在语音识别中使用的各种模型、神经网络、词典信息等。
[0211]
根据本公开实施方式的处理器220可通过执行存储在存储器230中并加载用于执行的一个或多个指令来执行语音识别。
[0212]
根据本公开实施方式的通信接口210可经由有线或无线通信与外部装置或装置进行通信。通信接口210可包括短距离通信模块、有线通信模块、移动通信模块、广播接收模块等。
[0213]
根据本公开实施方式的服务器200的通信接口210可从装置100接收第一字符串。第一字符串可经由装置100对输入到装置100的语音信号执行语音识别来输出。
[0214]
例如,服务器200接收到的第一字符串可以是帧同步字符串,其包括分别与通过以预设时间间隔分割语音信号而获得的语音信号帧对应的字符。又例如,服务器200接收到的第一字符串可以是非帧同步字符串。
[0215]
当从装置100接收到的第一字符串是非帧同步字符串时,根据本公开实施方式的处理器220可从第一字符串中获得帧同步字符串。处理器220可通过以帧为单位对第一字符串中包括的至少一个字符进行多次连续排列来获得帧同步字符串。
[0216]
根据本公开实施方式的服务器200的处理器220可通过将第一字符串中包括的至少一个字符替换为另一字符,从第一字符串中获得第二字符串。
[0217]
根据本公开实施方式的处理器220可识别发音与包括在第一字符串中的每个字符的发音相似的替换字符,并且基于所识别的替换字符来确定第一字符串内的至少一个字符已被校正为另一字符的估计字符串。处理器220可基于预先存储的诸如语言模型和词典信息的信息从确定的估计字符串中选择出最合适的估计字符串,并且可获得最合适的估计字符串作为第二字符串。
[0218]
现在将更详细地描述根据本公开实施方式的处理器220执行的获得第二字符串的方法。
[0219]
首先,处理器220可从第一字符串中识别出多个估计字符串。处理器220可计算与将要替换第一字符串内的每个字符的替换字符相关的似然度矩阵。处理器220可基于似然度矩阵内的似然度值来识别多个估计字符串,其中第一字符串内的至少一个字符已被替换为另一字符。
[0220]
根据本公开实施方式的处理器220可根据第一字符串计算多个估计字符串的似然度。处理器220可基于与要替换第一字符串内的每个字符的替换字符相关的似然度矩阵内的似然度值来计算多个估计字符串的似然度。
[0221]
从第一字符串中获得的似然度可指当假设多个估计字符串中的每一个是基本真实字符串时第一字符串被估计为语音识别结果的似然度。根据本公开实施方式,处理器220可识别发音与第一字符串内的每个字符的发音相似的替换字符,并且可基于识别的替换字符使用从第一字符串中获得的似然度以确定估计字符串,其中第一字符串内的至少一个字符已被校正为另一字符。
[0222]
处理器220可基于似然度、词典信息和语言模型来获得作为多个估计字符串中的一个的第二字符串。处理器220可基于计算的似然度来确定是否将第一字符串替换为第二字符串。基于该确定,处理器220可通过将包括在第一字符串中的至少一个字符替换为另一字符来从第一字符串中获得第二字符串。
[0223]
根据本公开实施方式的处理器220可经由本公开稍后描述的过程根据第一字符串计算似然度。
[0224]
例如,处理器220可基于每个字符的之前字符来计算第一字符串内的每个字符的后验概率。当考虑到某个字符的之前字符时,第一字符串内的某个字符的后验概率可包括某个字符被替换为多个其它字符的概率。换言之,当考虑到第一个字符串内的某个字符的之前字符时,某个字符的后验概率可包括装置100的处理器120的asr模块已准确预测某个字符的概率以及asr模块将某个字符错误地预测为另一字符的概率。
[0225]
接下来,处理器220可计算第一字符串的字符序列概率。字符串的字符序列概率可
指字符按照字符串排列的概率。字符序列概率可基于在字符串的每个字符之前累积的字符来计算。处理器220可基于每个字符的后验概率和字符序列概率,计算从第一字符串中获得的多个估计字符串的似然度。
[0226]
为了计算后验概率,根据本公开实施方式的处理器220可使用包括多个长短期记忆(lstm)层和softmax层的递归神经网络(rnn)。稍后将参考图10a更详细地描述用于计算后验概率的rnn。
[0227]
又例如,处理器220可基于预先确定的混淆矩阵来计算第一字符串内的每个字符的后验概率。处理器220可基于每个字符的后验概率来计算从第一字符串中获得的多个估计字符串的似然度。将参考图10b更详细地描述用于计算后验概率的混淆矩阵。
[0228]
又例如,处理器220可基于预先确定的概率值来计算第一字符串内的每个字符的后验概率。处理器220可确定第一字符串中包括的第一字符实际上是第一字符的概率为p,p可以是预先确定值,并且p可以是0到1之间的值。处理器220可确定第一字符串中包括的第一字符实际上是除第一字符以外的字符的概率为(1-p)/(n-1),n表示字符的数量,并且n可以是自然数。换言之,处理器220可确定装置100的处理器120的asr模块已准确预测第一字符串内的第一字符的概率为p,并且可确定asr模块已将另一字符错误地预测为第一字符的概率为(1-p)/(n-1)。
[0229]
例如,处理器220可将第一字符串中包括的第一字符实际上是第一字符的概率确定为0.9,并且将第一字符实际上是另一字符的概率确定为0.1/(n-1)。
[0230]
根据本公开实施方式的处理器220可包括似然度计算器,似然度计算器计算从第一字符串中获得的多个估计字符串的似然度。处理器220还可包括解码器,解码器通过使用词典信息和语言模型从似然度获得第二字符串。处理器220可通过使用词典信息和语言模型对从第一字符串中获得的似然度执行重新解码来获得第二字符串。
[0231]
例如,处理器220的解码器可基于存储在服务器200中的词典信息和语言模型来获得第二字符串。当输入从第一字符串中获得的多个估计字符串的似然度时,解码器可输出第二字符串。例如,处理器220的解码器可包括加权有限状态转换器(wfst)解码器。
[0232]
当处理器220执行wfst解码时,根据本公开实施方式的服务器200可基于字符之间的关系t、包括词和字符之间的映射信息的词典信息l、以及在分配特定词串时估计下个词的概率的语言模型g,通过使用wfst来构成和解码搜索空间。
[0233]
又例如,处理器220的解码器可基于词典信息和语言模型重新计算从第一字符串中获得的多个估计字符串的似然度。解码器可从多个估计字符串中确定出具有最大重新计算似然度的第二字符串。例如,处理器220的解码器可包括维特比解码器。考虑到词典信息和语言模型,维特比解码器可搜索相对于第一字符串具有最高似然度的字符串作为第二字符串。
[0234]
根据本公开实施方式的通信接口210可将第二字符串发送到装置100。可替代地,通信接口210可将对处理器220生成的语音信号的响应消息发送到装置100。处理器220可通过使用nlu模型来解释第二字符串,并且可基于解释结果生成对语音信号的响应消息。
[0235]
处理器220可通过将dm模型应用于解释结果来确定响应消息的类型。处理器220可通过使用nlg模型生成确定类型的响应消息并将其发送到装置100。
[0236]
可替代地,通信接口210可将与基于第二字符串产生的语音助手服务相关的信息
发送到装置100。为了提供语音助手服务,处理器220可通过使用服务器200内的nlu模型、dm模型、nlg模型等,基于第二字符串将用于执行与用户对话的信息提供给装置100。处理器220可基于解释第二字符串的结果来生成用于控制装置100或另一装置的控制命令,并将生成的控制命令提供给装置100。
[0237]
现在将参考图8a描述根据本公开实施方式的由服务器200的每个部件执行的支持装置100进行语音识别的方法。图8a示出了装置100的用户说出“红雀棒球队”的情况。
[0238]
首先,装置100可通过对用户的语音信号执行语音识别来估计第一字符串[猫鹿棒球队]。
[0239]
装置100可基于第一字符串的置信度分数、与第一字符串相关联的域、第一字符串含义的解释结果或第一字符串是否包括命名实体,确定是否将第一字符串替换为另一字符串。在上文中已参考图4a至图5b描述了由装置100执行的确定是否执行基于服务器的语音识别以替换第一字符串的详细方法,因此将省略其冗余描述。
[0240]
在图8a中,装置100可确定需要将第一字符串替换为另一字符串,并且可将第一字符串[猫鹿棒球队]发送到服务器200。
[0241]
当向服务器200发送第一字符串时,根据本公开实施方式的装置100可将与语音信号有关的信息连同第一字符串一并发送。根据本公开实施方式的装置100可将与第一字符串内的每个字符所表示的语音信号帧的长度有关的信息连同第一字符串一并发送。例如,装置100可将与语音信号帧同步的第一字符串发送到服务器200。与语音信号帧同步字符串可指包括分别与以预设时间间隔分割语音信号得到的语音信号帧对应的字符的字符串。
[0242]
然而,本公开实施方式不限于装置100向服务器200发送帧同步字符串的本公开实施方式。根据本公开实施方式的装置100可将非帧同步的第一字符串发送到服务器200。非帧同步的第一字符串可指根据标签同步方法将由语音信号发出的每个字符一一包括在内获得的字符串。
[0243]
当将非帧同步的第一字符串发送到服务器200时,根据本公开实施方式的装置100可连同非帧同步的第一字符串一起提供与语音信号有关的信息。服务器200可基于与语音信号相关的信息,通过强制对齐第一字符串来生成帧同步字符串。例如,与语音信号相关的信息可包括关于装置100的语音识别模型从中获得第一字符串的语音信号部分的信息。
[0244]
根据本公开实施方式的服务器200可经由通信接口210从装置100接收第一字符串。根据本公开实施方式的服务器200可接收帧同步的第一字符串。然而,如上所述,服务器200可接收非帧同步的第一字符串。在这种情况下,服务器200可从装置100接收与语音信号相关的信息连同装置100从语音信号获得的第一字符串。服务器200可基于与语音信号相关的信息,通过强制对齐第一字符串来生成帧同步的第一字符串。
[0245]
处理器220可从第一字符串中识别出多个估计字符串,并且可基于多个估计字符串获得第二字符串。
[0246]
根据本公开实施方式,处理器220可识别发音与第一字符串内的每个字符的发音相似的替换字符,并且基于所识别的替换字符确定第一字符串内的至少一个字符已被校正为另一字符的估计字符串。处理器220可基于预先存储的诸如语言模型和词典信息的信息从所确定的估计字符串中选择最合适的估计字符串,并且可获得最合适的估计字符串作为第二字符串。
[0247]
现在将更详细地描述根据本公开实施方式的处理器220执行的获得第二字符串的方法。
[0248]
首先,处理器220可计算从第一字符串中获得的多个估计字符串的似然度。
[0249]
考虑存储在装置100中的语言模型和词典信息,根据语音信号帧分别对应于任意字符的概率分布,获得装置100从语音信号估计的第一字符串。服务器200可从装置100估计的第一字符串中去除与装置100的语言模型和词典信息相关的偏差,并且可通过使用存储在服务器200中的语言模型和词典信息进行重新解码。
[0250]
服务器200可计算从第一字符串中获得的多个估计字符串的似然度,以从第一字符串中去除与装置100的语言模型和词典信息相关的偏差。
[0251]
处理器220可通过将存储在存储器230中的词典信息和语言模型应用于从第一字符串中获得的似然度来执行解码以获得第二字符串。当处理器220通过应用存储在服务器200的存储器230中的词典信息和语言模型进行解码时,处理器220可使用词典信息和包括许多命名实体的语言模型,从而提高语音识别的准确度。
[0252]
例如,命名实体“红雀”可能未存储在装置100的存储器的语言模型中。因此,装置100可能从语音信号“红雀棒球队”中错误地估计第一字符串[猫鹿棒球队]。
[0253]
然而,如图8a所示,体育领域的命名实体“红雀”可能存储在服务器200的存储器230中。因此,服务器200的处理器220可确定由装置100估计的“猫鹿”实际上是棒球队名称“红雀”的概率很高。
[0254]
处理器220可识别发音与第一字符串内的每个字符的发音相似的替换字符,并基于所识别的替换字符获得第一字符串内的至少一个字符已被校正为另一字符的第二字符串。因此,处理器220可获得第二字符串[红雀棒球队],其中第一字符串中的“猫鹿”已被“红雀”替换。稍后将参考图17描述通过使用wfst解码方法从第一字符串[猫鹿棒球队]获得第二字符串[红雀棒球队]的详细方法。
[0255]
服务器200可将第二字符串发送到装置100。装置100可将由装置100估计的第一字符串替换为从服务器200接收的第二字符串,并且可输出第二字符串。如图8a所示,例如,第一字符串[猫鹿棒球队]的置信度分数可以是0.1,并且第二字符串[红雀棒球队]的置信度分数可以是0.5。根据本公开实施方式的装置100可通过从服务器200接收置信度分数高于第一字符串的置信度分数的第二字符串来提高语音识别性能,并且利用接收到的第二字符串提供更准确的响应以答复用户输入。
[0256]
如上所述,根据本公开实施方式的服务器200可从装置100接收帧同步字符串或者可由从装置100接收到的字符串生成帧同步字符串。服务器200可通过获得与每个语音信号帧对应的每个字符的似然度来确定替换字符串。服务器200可同时接收包括多个字符的整个字符串,或者可顺序地接收包括在字符串中的至少一些字符。
[0257]
现在将参考图8b更详细地描述根据本公开实施方式的由服务器200执行的通过获得与每个语音信号帧对应的每个字符的似然度来确定替换字符串的方法。
[0258]
根据本公开实施方式的服务器200可从装置100接收帧同步的第一字符串,或可由从装置100接收到的字符串生成帧同步的第一字符串。
[0259]
例如,服务器200的通信接口210可从装置100接收与语音信号相关的信息连同由装置100从语音信号获得的字符串。服务器200可基于与语音信号相关的信息,通过强制对
齐字符串来生成帧同步的第一字符串。
[0260]
服务器200的字符串评估器221可针对帧同步的第一字符串内的每个字符计算似然度矩阵813,似然度矩阵813与要替换帧同步的第一字符串内的每个字符的替换字符有关。
[0261]
根据本公开实施方式,由字符串评估器221计算的某个字符的似然度矩阵可指包括用于替换某个字符的替换字符的似然度值的矩阵。用于替换某个字符的替换字符的似然度值可指当假定替换字符为基本真实字符时某个字符被估计为语音识别结果的概率。
[0262]
例如,对于包括在作为语音识别结果获得的字符串中的字符“a”,可获得包括真实字符为“a”的概率值、真实字符为“b”的概率值、真实字符为“c”的概率值
……
以及真实字符为“z”的概率值的似然度矩阵[0.4 0.01 0.01 0.01 0.2 ... 0.01]。当获得包括与字符串中包括的每个字符对应的替换字符的似然度值的似然度矩阵时,可将高似然度值分配给与每个字符发音相似的替换字符。
[0263]
服务器200的解码器223可基于似然度矩阵813从多个估计字符串中选择帧同步的第一字符串内的至少一个字符已被替换的一个估计字符串,并且可获得所选择的估计字符串作为第二字符串。
[0264]
例如,解码器223可基于词典信息和语言模型重新计算似然度矩阵813。解码器223可从多个估计字符串中确定出具有最大重新计算似然度的第二字符串。例如,解码器223可包括维特比解码器。考虑到词典信息和语言模型,维特比解码器可搜索相对于第一字符串具有最高似然度的字符串作为第二字符串。
[0265]
服务器200的解码器223可基于多个估计字符串的似然度、词典信息和语言模型,从多个估计字符串815中获得具有最高置信度分数的字符串817作为第二字符串。服务器200可将第二字符串发送到装置100。装置100可通过从服务器200接收置信度分数高于第一字符串的第二字符串并使用第二字符串来提高语音识别性能。
[0266]
现在将参考图9至图11b详细地描述本公开各种实施方式的由服务器200执行的计算似然度的方法。
[0267]
图9是根据本公开实施方式的服务器的详细框图。
[0268]
如图9所示,服务器200的通信接口210可从装置100接收第一字符串。
[0269]
处理器220的字符串评估器221可输出第一字符串的评估信息,使得解码器223能够推荐并输出置信度分数比第一字符串的置信度分数更高的第二字符串。例如,第一字符串的评估信息可包括根据第一字符串计算的似然度。
[0270]
字符串评估器221可计算从第一字符串中获得的多个估计字符串的似然度。字符串评估器221可通过将包括在第一字符串中的每个字符替换为另一字符来获得多个估计字符串。多个估计字符串的似然度可指当假设从第一字符串中获得的多个估计字符串中的每一个都是基本真实字符串时语音识别模块估计第一字符串的概率。
[0271]
从第一字符串中获得并由字符串评估器221输出的似然度可用于识别与第一字符串的字符发音相似的替换字符,并且基于所识别的替换字符来确定某个字符串内的至少一个字符已被校正为另一字符的估计字符串。
[0272]
字符串评估器221可计算与要替换第一字符串内的每个字符的替换字符相关的似然度矩阵,并且可基于似然度矩阵内的似然度值来识别多个估计字符串。字符串评估器221
可输出从每个字符获得的似然度矩阵作为多个估计字符串的似然度。
[0273]
字符串评估器221可通过使用存储在存储器230中的似然度计算数据231来根据第一字符串计算似然度。例如,似然度计算数据231可包括训练用于似然度计算的神经网络或混淆矩阵。
[0274]
例如,字符串评估器221可基于在每个字符之前出现的字符来计算第一字符串内的每个字符的后验概率。字符串评估器221可根据第一字符串计算字符序列概率。字符串评估器221可基于每个字符的后验概率和字符序列概率来计算从第一字符串中获得的多个估计字符串的似然度。
[0275]
又例如,字符串评估器221可基于预先确定的混淆矩阵来计算第一字符串内的每个字符的后验概率。字符串评估器221可基于每个字符的后验概率来计算从第一字符串中获得的多个估计字符串的似然度。
[0276]
在字符串评估器221计算似然度之后,解码器223可通过使用词典信息和语言模型,基于计算出的似然度来获得第二字符串。解码器223可从通过将第一字符串中的至少一个字符替换为另一字符而获得的多个估计字符串中获得具有最大似然度的第二字符串。
[0277]
解码器223可通过使用词典信息232和语言模型233获得第一字符串中的至少一个字符已被替换为另一字符的第二字符串。例如,解码器223可包括使用似然度作为输入的wfst解码器,或者使用典型令牌传递的维特比解码器。
[0278]
根据本公开实施方式,服务器200中存储的词典信息可以是存储词与字符串之间关系的词典信息,而不是存储音素串与词之间关系的一般词典信息。语言模型可以是ai模型,其已学习了词之间的关系,以便能够在分配特定词串时估计下一个词的概率。例如,语言模型可以是诸如rnn的神经网络或n-gram统计模型。
[0279]
通信接口210可将第二字符串发送到装置100。然而,本公开实施方式不限于将第二字符串发送到装置100的本公开实施方式。根据本公开实施方式的服务器200可通过对第二字符串进行自然语言处理来确定用户的话语意图,经由通信接口210将与基于第二字符串的语音助手服务相关的信息发送到装置100。
[0280]
根据本公开的各种实施方式,在上文中已参考图2b和图2c描述了与由服务器200发送到装置100的第二字符串有关的信息,因此将省略其冗余描述。
[0281]
根据本公开实施方式的服务器200的解码器223可通过针对不同的域使用不同条词典信息和不同的语言模型来对第一字符串执行解码。因此,根据本公开实施方式的服务器200可通过对从装置100接收到的第一字符串重新解码来输出语音识别准确度提高的语音识别结果。
[0282]
根据本公开实施方式的服务器200的处理器220可从装置100接收第一字符串并确定与第一字符串相关的域。服务器220的解码器223可通过使用与确定域对应的词典信息和语言模型来对第一字符串执行解码。
[0283]
例如,服务器200的处理器220可从装置100连同第一字符串一并接收与第一字符串相关的域信息,并且可基于接收到的域信息确定对第一字符串执行解码的域。例如,处理器220可将与通过从装置100接收到的域信息识别的域相同或相似的域确定为要执行解码的域。
[0284]
又例如,服务器200的处理器220可基于接收到的第一字符串来确定与从装置100
接收到的第一字符串相关的域。虽然图9中未示出,服务器200可在存储器230中存储用于执行域识别而训练的ai模型的域识别模型。通过使用域识别模型,处理器220可通过使用第一字符串作为输入值来输出域置信度分数。处理器220可基于指示所识别的域的置信度的域置信度分数来确定与第一字符串相关联的域。根据本公开实施方式,服务器200的字符串评估器221或解码器223可基于接收到的第一字符串来确定与从装置100接收到的第一字符串相关联的域。
[0285]
例如,服务器200的处理器223可基于接收到的第一字符串来确定与从装置100接收到的第一字符串相关的域。根据本公开实施方式的解码器223可通过使用专用于所确定的域的词典信息和语言模型来对接收到的第一字符串执行解码。
[0286]
根据本公开实施方式的解码器223可以是次级解码器。次级解码器可对从字符串评估器221接收到的关于第一字符串的评估信息执行初级解码,然后可通过使用初级解码的结果来执行次级解码。
[0287]
在这种情况下,根据本公开实施方式的解码器223可通过使用初级解码器基于通用词典和语言模型来执行解码。根据本公开实施方式的解码器223可通过使用次级解码器基于专用于接收到的第一字符串的确定域的词典和语言模型来执行解码。
[0288]
又例如,根据本公开实施方式的服务器200的通信接口210可从装置100接收用于确定与第一字符串相关的域的信息连同第一字符串。例如,从装置100接收到的用于确定域的信息可包括上下文信息。例如,上下文信息可包括关于用户当前在装置100或服务器200上使用的应用的信息、对话历史信息、装置100周围的情况信息或趋势信息中的至少一种。服务器200的处理器220可基于上下文信息来确定对第一字符串执行解码的域。现在将描述基于上下文信息确定域的详细方法。
[0289]
例如,处理器220可基于用户当前正在执行的应用来确定域。当用户正在访问装置100或服务器200上的地图应用时,处理器220可在确定从用户的话语获得的字符串的域时将与地图相关联的域确定为用于执行解码的域。例如,处理器220可通过对地图域应用更高的权重来确定要执行解码的域,或可将地图域确定为要执行解码的域。
[0290]
可替代地,例如,处理器220可基于对话历史信息来确定域。当确定用户的对话历史与“音乐”相关联时,处理器220可在确定从用户的话语获得的字符串的域时将与音乐相关联的域确定为要执行解码的域。例如,处理器220可通过对音乐域应用更高的权重来确定要执行解码的域,或可将音乐域确定为要执行解码的域。
[0291]
可替代地,例如,处理器220可基于安装在装置100上的传感器感测到的装置100的周围环境的情况信息来确定域。处理器220可基于使用装置100的全球定位系统(gps)信息识别出的装置100的位置来确定域。当用户尝试搜索餐厅时,处理器220可将与装置100的位置相关联的域确定为要执行解码的域。当装置100的位置靠近电影院时,处理器220可将与电影相关联的域确定为要执行解码的域。
[0292]
可替代地,例如,处理器220可基于趋势信息来确定域。处理器220可将与头条新闻或通过门户网站实时搜索关键词相关联的域确定为要执行解码的域。
[0293]
现在将详细描述根据本公开实施方式的服务器200的字符串评估器221基于第一字符串内的每个字符之前累积的字符获得似然度的情况。
[0294]
根据本公开实施方式的服务器200的通信接口210可从装置100接收帧同步的第一
字符串yo[0:l 1]。如上所述已参考图6描述了帧同步字符串,因此将省略其冗余描述。
[0295]
在下面的描述中,yo[l]可以是由装置端语音识别模块从语音信号中估计的帧同步字符。帧同步字符可指从包括在语音信号中的一个语音帧估计的字符。yo[l]包括在v中,v是一组所有字符。
[0296]yo
[0:l 1]是指当0≤l'≤l时yo[l']的序列。l和l’是字符串的索引。
[0297]
通信接口210可同时接收包括多个字符的整个字符串,或可顺序地接收包括在字符串中的一些字符。
[0298]yp
[l]是指估计的用于服务器对装置获得的字符串进行后处理的帧同步字符。y
p
[l]包括在v中,v是一组字符。wi是词串。wi是包括在d中的词,d是一组词。
[0299]
服务器200的字符串评估器221可计算字符被根据第一字符串yo[0:l 1]排列的字符序列概率p(yo[0:l 1])。字符序列概率p(yo[0:l 1])可根据字符级语言模型计算。
[0300]
字符串评估器221可计算当第一字符串yo[0:l 1]已由装置100估计时第l个字符实际上是y
p
[l]的后验概率p(y
p
[l]|yo[0:l 1])。字符串评估器221可基于第一字符串yo[0:l 1]来计算字符yo[l]的后验概率p(y
p
[l]|yo[0:l 1])。换言之,字符串评估器221可基于第一字符串yo[0:l 1]来计算装置100已准确估计字符yo[l]的概率和装置100已错误地估计字符yo[l]的概率。
[0301]
根据本公开实施方式的字符串评估器221可通过使用神经网络根据第一字符串计算第一字符串的每个字符的后验概率。也就是说,可利用用于根据第一字符串计算第一字符串的每个字符的后验概率的经训练的神经网络,执行根据第一字符串计算第一字符串的每个字符的后验概率。
[0302]
根据本公开实施方式的字符串评估器221可通过使用包括图10a的lstm层1010和softmax层1030的rnn 1000来计算第一字符串内的每个字符的后验概率。
[0303]
图10a的lstm层1010可包括多个堆叠的lstm层。在图10a中,第一字符串可输入到lstm层1010,从lstm层1010输出的数据可被输入到softmax层1030,并且softmax层1030可输出第一字符串的每个字符的后验概率。
[0304]
根据本公开实施方式,可通过学习基本真实字符串和从语音识别模块输出的错误字符串来训练计算字符串内的每个字符的后验概率的神经网络。详细地,当神经网络已接收到从语音识别模块输出的错误字符串时,可训练神经网络使得输出值接近基本真实字符串。
[0305]
根据本公开实施方式的由字符串评估器221用于获得后验概率的ai模型可基于多个语音识别模块的语音识别结果来训练,以防止后验概率过度拟合特定语音识别模块的语音识别结果。
[0306]
处理器220的字符串评估器221可基于后验概率p(y
p
[l]|yo[0:l 1])和字符序列概率p(yo[0:l 1])来计算似然度p(yo[0:l 1]|y
p
[l])。
[0307]
基于后验概率p(y
p
[l]|yo[0:l 1])和字符序列概率p(yo[0:l 1]),可使用以下等式1来计算似然度p(yo[0:l 1]|y
p
[l])。
[0308]
[等式1]
[0309]
[0310]
在[等式1]中,p(y
p
[l])表示y
p
[l]的先验概率。某个字符y
p
[l]的先验概率可以是基于某个字符的使用频率统计预先计算的值。
[0311]
根据本公开实施方式的服务器200的解码器223可通过使用词典信息232和语言模型233,根据似然度p(yo[0:l 1]|y
p
[l])估计第二字符串wi。第二字符串可以是通过将第一字符串的至少一个字符替换为另一字符而获得的字符串。通信接口210可将第二字符串wi发送到装置100。尽管服务器200从装置100接收到帧同步字符串yo[0:l 1],但是服务器200可向装置100发送具有词串形状的第二字符串wi。
[0312]
根据本公开另一实施方式的服务器200的字符串评估器221可仅考虑每个字符而不考虑每个字符之前累积的字符来计算似然度。根据本公开另一实施方式的字符串评估器221可仅考虑字符yo[l]而不是帧同步字符串yo[0:l 1]来计算似然度。当仅考虑字符yo[l]而不是帧同步字符串yo[0:l 1]时,服务器200可具有非常简单的结构,并且由于仅存储和使用字符级混淆矩阵而不是神经网络,因此可简化计算过程。
[0313]
服务器200的通信接口210可从装置100接收帧同步的第一字符串yo[0:l 1]。上面已参考图6描述了帧同步字符串,因此将省略其冗余描述。通信接口210可同时接收包括多个字符的整个字符串,或可顺序地接收包括在字符串中的一些字符。
[0314]
当第一字符串内的第一字符yo[l]已由装置100估计时,根据本公开另一实施方式的服务器200的字符串评估器221可获得第l个字符实际上是y
p
[l]的后验概率p(y
p
[l]|yo[l])。字符串评估器221可基于第一字符yo[l]来获得第一字符yo[l]的后验概率p(y
p
[l]|yo[l])。换言之,后验概率计算器221可基于第一字符yo[l]来获得装置100已准确估计第一字符yo[l]的概率和装置100已错误地估计第一字符yo[l]的概率。
[0315]
根据本公开实施方式的字符串评估器221可通过使用混淆矩阵根据第一字符串获得第一字符串的每个字符的后验概率。
[0316]
图10b示出了根据本公开实施方式的用于计算后验概率的混淆矩阵1001的示例。
[0317]
混淆矩阵1001包括装置100的语音识别模块已准确预测字符串中包括的某个字符的概率和另一字符被错误预测为某个字符的概率。
[0318]
例如,由于字符“a”和字符“e”发音相似,因此语音识别模块将实际字符“a”错误地估计为字符“e”的概率可能相对较高。另一方面,由于字符“a”和字符“b”发音非常不同,因此语音识别模块将实际字符“a”错误地估计为字符“b”的概率可能相对较低。
[0319]
因此,如图10b所示,装置100的语音识别模块将实际字符“a”错误地估计为字符“e”的概率可以是0.23,并且语音识别模块将实际字符“a”错误地估计为字符“b”的概率可为0.01。
[0320]
当装置100估计的字符是第一字符yo[l]时,根据本公开实施方式的字符串评估器221可从图10b的混淆矩阵1001中搜索并获得实际字符是y
p
[l]的后验概率p(y
p
[l]|yo[l])。
[0321]
字符串评估器221可基于获得的后验概率p(y
p
[l]|yo[l])来计算似然度p(yo[l]|y
p
[l])。
[0322]
基于后验概率p(y
p
[l]|yo[l]),可使用以下等式2来计算似然度p(yo[l]|y
p
[l])。
[0323]
[等式2]
[0324]
[0325]
在[等式2]中,p(y
p
[l])表示y
p
[l]的先验概率。某个字符y
p
[l]的先验概率可以是基于某个字符的使用频率统计预先计算的值。
[0326]
服务器200的解码器223可通过使用词典信息232和语言模型233,根据似然度p(yo[l]|y
p
[l])估计第二字符串wi。第二字符串可以是通过将第一字符串的至少一个字符替换为另一字符而获得的字符串。通信接口210可将第二字符串wi发送到装置100。尽管服务器200从装置100接收到帧同步字符串yo[0:l 1],但是服务器200可输出具有词串形状的第二字符串wi。
[0327]
如上所述,根据本公开实施方式的服务器200的字符串评估器221可从装置100接收帧同步字符串,并且可获得与每个语音信号帧对应的每个字符的似然度。例如,字符串评估器221可计算与语音信号帧对应的索引l的字符yo[l]的似然度p(yo[0:l 1]|y
p
[l])或p(yo[l]|y
p
[l])。
[0328]
现在将参考图11a和图11b详细地描述根据本公开实施方式的由字符串评估器221执行的根据从装置100接收到的字符串获得与每个语音信号帧对应的每个字符的似然度的方法。
[0329]
参考图11a,根据本公开实施方式的字符串评估器221可接收帧同步字符串1101。字符串评估器221可计算与要替换每个字符的替换字符有关的似然度矩阵。
[0330]
如图11b所示,根据本公开实施方式的字符串评估器221计算的与替换字符相关的似然度矩阵可被表示为包括某个字符是任意字符中的每一个的似然度的矩阵。如图11b的表1105所示,任意字符中的每一个可与似然度矩阵的索引中的每一个进行映射。
[0331]
例如,似然度矩阵1103中的索引a1的值可表示某个字符被替换为与索引a1对应的字符“a”的似然度。似然度矩阵1103中的索引a2的值可表示某个字符被替换为与索引a2对应的字符“b”的似然度。似然度矩阵1103中的索引a3的值可表示某个字符被替换为与索引a3对应的字符“c”的似然度。
[0332]
根据本公开实施方式的字符串评估器221可计算与要替换字符串内的每个字符的替换字符相关的似然度矩阵1107。字符串评价器221可将被计算作为多个估计字符串的似然度的似然度矩阵1107输出到解码器223,其中第一字符串内的至少一个字符已被替换。
[0333]
根据本公开实施方式的解码器222可通过使用词典信息和语言模型,基于从字符串评估器221接收的似然度来从多个估计字符串的置信度分数中获得置信度分数最高的字符串作为第二字符串。
[0334]
如上所述,根据本公开的各种实施方式的语音识别系统可在一些情况下执行装置端语音识别,或可在其它情况下执行基于服务器的语音识别。然而,本公开的实施方式不限于此。根据本公开实施方式的装置300可包括多个语音识别模块,并且可在一些情况下在第一语音识别模块中进行装置端语音识别,或可在其它情况下在第二语音识别模块中进行基于服务器的语音识别。
[0335]
图12是根据本公开实施方式的选择性地使用两个语音识别模块的装置300的框图。
[0336]
参考图12,装置300可包括接收器310、处理器320、存储器340和输出接口350。图12所示的装置300的一个或多个部件可被省略或合并在一起。装置300中可包括除图12所示的部件之外的附加部件。例如,参考图19,根据本公开一些实施方式的装置300还可包括用户
输入接口2100、感测单元2400和a/v输入接口2600。
[0337]
根据本公开实施方式的接收器310可从用户接收语音信号。例如,接收器310可经由麦克风将外部声音转换为电声数据来接收语音信号。在图12中,接收器310包括在装置300中。然而,根据本公开另一实施方式,接收器310可包括在单独的装置中并可以以有线或无线方式连接到装置300。
[0338]
根据本公开实施方式的存储器340可存储用于执行语音识别的指令以及在语音识别中使用的各种模型、神经网络、词典信息等。
[0339]
存储器340可存储在语音识别中使用的各种模型、神经网络、词典信息等。存储在存储器340中的第一数据341可包括第一asr模块321用来执行语音识别的模型、神经网络或词典信息中的至少一个。存储在存储器340中的第二数据342可包括第二asr模块322用来执行语音识别的模型、神经网络或词典信息中的至少一个。
[0340]
根据本公开实施方式的处理器320可通过执行存储在存储器340中的一个或多个指令来执行语音识别。根据本公开实施方式的处理器320可包括第一asr模块321和第二asr模块322。
[0341]
根据本公开实施方式的处理器320的第一asr模块321可接收由接收器310获得的语音信号,并且可基于第一数据341(例如,声学模型、神经网络、语言模型或词典信息)来对语音信号执行语音识别。第一asr模块321可从语音信号中获得第一字符串。第一字符串可以是帧同步字符串。
[0342]
由于图12的第一asr模块321可对应于图4a的asr模块121或图4b的asr模块121,因此将省略其冗余描述。
[0343]
根据本公开实施方式的处理器320的确定器323可确定是否将由第一asr模块321输出的第一字符串替换为另一字符串。
[0344]
例如,处理器320的确定器323可确定第一字符串的置信度分数,并且可基于所确定的置信度分数来确定是否将第一字符串替换为另一字符串。
[0345]
例如,当第一字符串的置信度分数等于或大于阈值时,根据本公开实施方式的处理器320的确定器323可确定不必对第一字符串进行校正,并且可通过输出接口350输出第一字符串。另一方面,当置信度分数小于阈值时,处理器320的确定器323可确定需要对第一字符串进行校正,并且可将第一字符串发送到第二asr模块322。
[0346]
又例如,处理器320的确定器323可基于预先存储在装置100中的关键词与第一字符串的比较结果,确定是否将第一字符串替换为另一字符串。又例如,处理器320的确定器323可基于命名实体是否包括在与第一字符串相关的域中或第一字符串中,确定是否将第一字符串替换为另一字符串。
[0347]
关于由根据本公开实施方式的处理器320的确定器323执行的确定是否将第一字符串替换为另一字符串的详细方法,可使用上面参考图3至图5b的由根据本公开实施方式的装置100的处理器120执行的确定是否将第一字符串替换为另一字符串的方法进行描述。将省略其重复描述。
[0348]
当确定不必对第一字符串进行校正时,根据本公开实施方式的处理器320的确定器323可确定不将第一字符串替换为另一字符串。当第一字符串没有被另一字符串替换时,根据本公开实施方式的处理器320的确定器323可通过输出接口350输出第一字符串。
[0349]
当确定需要将第一字符串替换为另一字符串时,根据本公开实施方式的处理器320的确定器323可基于该确定将第一字符串发送到第二asr模块322。
[0350]
根据本公开实施方式的处理器320的确定器323可以以句子、词、短语或帧为单位将第一字符串发送到第二asr模块322。当根据本公开实施方式的处理器320的第一asr模块321执行语音识别从而获得构成句子或短语的字符串时,确定器323可将包括在句子或短语中的所有字符发送到第二asr模块322,或将句子或短语中包括的一些字符发送到第二asr模块322。基于字符串的置信度分数,确定器323可将置信度分数低的一些字符发送到第二asr模块322。
[0351]
根据本公开实施方式的处理器320的第二asr模块322可接收并处理第一字符串。第二asr模块322可基于存储在第二数据342中的语言模型和词典信息,通过对第一字符串进行重新解码来获得第二字符串,其中第一字符串内的至少一个字符已被替换。
[0352]
第二asr模块322可根据第一字符串计算多个估计字符串的似然度。第二asr模块322可基于计算出的似然度来确定是否将第一字符串替换为第二字符串。第二asr模块322可基于该确定,通过将包括在第一字符串中的至少一个字符替换为另一字符来从第一字符串中获得第二字符串。第二asr模块322可基于似然度、词典信息和语言模型,获得作为多个估计字符串中的一个的第二字符串。
[0353]
由于图12的第二asr模块322可对应于图7和图9的处理器220,因此将省略其冗余描述。
[0354]
第二asr模块322可经由输出接口350输出第二字符串。
[0355]
根据本公开实施方式的输出接口350可输出与第一字符串或第二字符串对应的语音识别结果。输出接口350可将语音识别结果通知给用户,或可将语音识别结果发送到外部装置(例如,智能手机、家电、可穿戴装置或服务器)。例如,输出接口350可包括能够输出音频信号的扬声器或能够输出视频信号的显示器。
[0356]
可替代地,根据本公开实施方式的装置300可执行与解释第一字符串或第二字符串的结果对应的操作。例如,装置300可确定与语音识别结果对应的装置300的功能,并且通过输出接口350输出用于执行所确定的功能的屏幕图像。可替代地,装置300可将与解释结果对应的关键词发送到外部服务器,并且可从外部服务器接收与所发送的关键词相关的信息并通过输出接口350将接收到的信息输出到屏幕。
[0357]
可替代地,根据本公开实施方式的装置300可通过对第一字符串或第二字符串进行自然语言处理来确定用户的话语意图,通过输出接口350输出与语音助手服务相关的信息。装置300可使用例如装置300内的nlu模型、dm模型和nlg模型来提供语音助手服务。
[0358]
例如,装置300可基于第一字符串或第二字符串生成对用户语音输入的响应消息并输出所生成的响应消息,以考虑用户情况、装置情况等来模仿直接与用户交谈的人。又例如,装置300可基于第一字符串或第二字符串生成用户需要的信息,并且可输出所生成的信息。又例如,装置300可基于第一字符串或第二字符串确定用户的话语意图,并且可请求服务提供服务器提供用户请求的信息。装置300可通过输出接口350发送从服务提供服务器接收到的信息。
[0359]
与由第一asr模块321使用的第一数据341相比,根据本公开实施方式的第二asr模块322可使用包括许多语言模型和大量词典信息的第二数据342。与第一数据341相比,第二
数据342可包括诸如地名、人名和商标名的许多命名实体。因此,根据通过第二asr模块322的语音识别,可使用包括大量命名实体的词典信息和语言模型并且可进行高精度的语音识别。
[0360]
因此,图12的装置300可在第一asr模块321中执行,诸如听写、通用命令和字幕生成的通用语音识别以最小化延迟。然而,当由第一asr模块321输出的第一字符串的置信度分数不够高时,装置300可在第二asr模块322中对第一字符串执行附加处理。第二asr模块322可通过使用比第一数据341包括更多信息的第二数据342来提高语音识别的准确度。
[0361]
根据本公开实施方式的装置300的处理器320可从第二asr模块322获得校正的字符串,并且可根据确定出不需校正来组合未发送到第二asr模块322的字符串与校正的字符串。根据本公开实施方式的装置300可输出组合字符串,输出基于组合字符串执行的语音识别的结果,或基于解释组合字符串的结果来提供语音助手服务。
[0362]
根据本公开实施方式的处理器320的确定器323可将与第一字符串相关联的域的信息提供给第二asr模块322,同时请求第二asr模块322校正第一字符串。域的信息是用于标识域的信息,例如可包括域的名称和域的标识符,但是本公开的实施方式不限于此。
[0363]
装置300的确定器323可基于由第一asr模块321输出的第一字符串的域置信度分数来识别与第一字符串相关联的域。域置信度分数可以是表示第一字符串的至少部分与特定域的关联强度的数字。例如,确定器323可计算表示由第一asr模块321输出的第一字符串与之前在第一数据341中注册的域的相关强度的置信度分数。装置300可基于计算出的域置信度分数来识别与第一字符串相关联的域。装置300可基于规则来识别与第一字符串相关联的域,或可通过使用训练用于域识别的ai模型来获得与第一字符串相关联的域置信度分数。
[0364]
根据本公开实施方式的第二asr模块322可通过针对第二数据342中包括的不同域使用不同条词典信息和不同的语言模型来对第一字符串执行解码。因此,根据本公开实施方式的第二asr模块322可通过对第一字符串进行重新解码来输出语音识别准确度提高的语音识别结果。
[0365]
根据本公开实施方式的第二asr模块322可从确定器323接收第一字符串并确定与第一字符串相关联的域。第二asr模块322可通过使用与确定域对应的词典信息和语言模型来对第一字符串执行解码。
[0366]
例如,第二asr模块322可从确定器323接收与第一字符串相关联的域的信息连同第一字符串,并且可基于接收到的信息来确定用于对第一字符串执行解码的域。例如,第二asr模块322可将与根据从确定器323接收到的信息识别的域相同或相似的域确定为用于执行解码的域。
[0367]
又例如,第二asr模块322可基于接收到的第一字符串来确定与从确定器323接收到的第一字符串相关的域。装置300可在存储器340中存储域识别模型,该域识别模型是训练用于域识别的ai模型。第二asr模块322可通过使用域识别模型,通过使用第一字符串作为输入值来输出域置信度分数。第二asr模块322可基于域置信度分数来确定与第一字符串相关联的域。
[0368]
又例如,根据本公开实施方式的第二asr模块322可从确定器323接收用于确定与第一字符串相关的域的信息连同第一字符串。从确定器323接收的用于确定域的信息可包
括上下文信息。例如,上下文信息可包括关于用户当前在当前装置300上使用的应用的信息、对话历史信息、装置300周围的情况信息或趋势信息中的至少一种。第二asr模块322可基于上下文信息来确定对第一字符串执行解码的域。基于上下文信息来确定域的详细方法可使用图9的处理器220的操作方法,因此将省略其冗余描述。
[0369]
现在将详细描述根据本公开实施方式的装置100的操作方法。下面将要描述的装置100的操作方法的操作可分别由图3、图4a和图4b所示的装置来执行。
[0370]
图13是根据本公开实施方式的由装置执行的进行语音识别的方法的流程图。
[0371]
在操作s1310中,根据本公开实施方式的装置100可通过对语音信号执行语音识别来获得第一字符串。
[0372]
根据本公开实施方式的装置100可通过根据各种语音识别方法进行语音识别来估计第一字符串。
[0373]
例如,装置100可通过使用声学模型、词典信息和语言模型从语音信号获得字符串。首先,装置100可通过使用声学模型来获得包括在语音信号中的音素串。例如,装置100可通过使用隐马尔可夫模型、高斯混合模型、贝叶斯推理、多层神经网络等来估计包括音素的音素串。装置100可基于词典信息和语言模型从音素串中估计词并获得包括估计词的第一字符串。
[0374]
又例如,装置100可从语音信号中提取特征向量,并且可通过使用dnn从特征向量中输出第一字符串。
[0375]
例如,第一字符串可以是帧同步字符串,其包括分别与通过以预设时间间隔分割语音信号而获得的语音信号帧对应的字符。可替代地,例如,第一字符串可以是根据标签同步方法获得的将由语音信号发出的每个字符一一包括在内的字符串。
[0376]
当第一字符串是非帧同步的时,根据本公开实施方式的装置100可通过执行强制对齐来获得帧同步字符串。参考图6的描述可应用于帧同步字符串以及经由强制对齐来生成帧同步字符串的详细方法。将省略帧同步字符串的冗余描述以及经由强制对齐生成帧同步字符串的详细方法。
[0377]
在操作s1330中,根据本公开实施方式的装置100可确定是否将第一字符串替换为另一字符串。
[0378]
例如,根据本公开实施方式的装置100可确定第一字符串的置信度分数,并且可基于所确定的置信度分数来确定是否将第一字符串替换为另一字符串。例如,当第一字符串的置信度分数等于或高于阈值时,装置100可确定不需将第一字符串替换为另一字符串。另一方面,当第一字符串的置信度分数低于阈值时,装置100可确定需要将第一字符串替换为另一字符串。
[0379]
第一字符串的置信度分数可基于从第一字符串中获得的多个估计字符串的似然度或第一字符串内的至少一个字符被替换为另一字符的后验概率中的至少一个来计算。
[0380]
例如,装置100可基于作为维特比解码结果输出的似然度来计算置信度分数。可替代地,处理器120可基于从端到端语音识别模型中的softmax层输出的后验概率来计算置信度分数。
[0381]
可替代地,根据本公开实施方式的装置100可确定在对语音信号进行语音识别期间估计的多个估计字符串,并且可基于多个估计字符串之间的相关性来计算第一字符串的
置信度分数。随着包括第一字符串的多个估计字符串之间的相关性增加,第一字符串的置信度分数可增加。
[0382]
又例如,装置100可基于预先存储的关键词与第一字符串的比较结果,确定是否将第一字符串替换为另一字符串。例如,当预先存储的关键词不包括在第一字符串中时,装置100可确定是否将第一字符串替换为另一字符串。
[0383]
又例如,装置100可基于命名实体是否包括在与第一字符串相关的域中或第一字符串中,确定是否将第一字符串替换为另一字符串。例如,当确定第一字符串与命名实体面向域相关联时,装置100可确定将第一字符串替换为另一字符串。
[0384]
当在操作s1330中确定将第一字符串替换为另一字符串时,在操作s1340中,根据本公开实施方式的装置100可将第一字符串发送到服务器200。根据本公开实施方式的装置100可将帧同步的第一字符串发送到服务器200。装置100可同时发送包括多个字符的整个字符串,或可顺序地发送包括在字符串中的一些字符。根据本公开实施方式的装置100可以以词或句子为单位来发送第一字符串。
[0385]
当在操作s1330中确定不将第一字符串替换为另一字符串时,在操作s1370中,根据本公开实施方式的装置100可输出第一字符串。根据本公开实施方式的装置100可不变地输出第一字符串,或可输出从第一字符串中获得的词串。
[0386]
在操作s1350中,根据本公开实施方式的装置100可从服务器200接收第二字符串。第二字符串可以是服务器200通过将第一字符串内的至少一个字符替换为另一字符而获得的字符串。
[0387]
在操作s1360中,根据本公开实施方式的装置100可输出第二字符串。根据本公开实施方式的装置100可不变地输出第二字符串,或可输出从第二字符串获得的词串。例如,装置100可输出修改的第一字符串,其中第一字符串的字符被替换为第二字符串的字符,如参考图8a至图8b所描述的。
[0388]
本公开实施方式不限于图13的本公开实施方式,其中装置100不变地输出第一字符串或第二字符串。根据本公开实施方式的装置100可通过对第一字符串或第二字符串进行自然语言处理来确定用户的话语意图,输出与语音助手服务相关的信息。
[0389]
装置100可使用例如装置100内的nlu模型、dm模型和nlg模型,基于第一字符串或第二字符串来提供语音助手服务。
[0390]
例如,装置100可基于第一字符串或第二字符串生成响应消息并输出所生成的响应消息,以考虑用户情况、装置情况等来模仿直接与用户交谈的人。又例如,装置100可基于第一字符串或第二字符串生成用户需要的信息,并且可输出所生成的信息。又例如,装置100可基于第一字符串或第二字符串确定用户的话语意图,并且可请求服务提供服务器提供用户请求的信息。装置100可输出从服务提供服务器接收到的信息。
[0391]
根据本公开实施方式的装置100可接收并输出与基于第二字符串生成的语音助手服务相关的信息,而不是从服务器200接收第二字符串。与语音助手服务相关的信息可以是由服务器200基于通过校正第一字符串获得的第二字符串生成的信息。例如,与语音助手服务相关的信息可包括对用户的语音信号的响应消息、用户所需的服务或用户需要的信息。
[0392]
如图13所示,根据本公开实施方式的装置100可确定是否将由装置端语音识别模块输出的第一字符串替换为另一字符串,并且可基于该确定结果来选择性地使用基于服务
器的后处理。
[0393]
根据本公开实施方式的装置100可以以用户说出的词(或句子)为单位来计算由装置端语音识别模块输出的第一字符串的置信度分数,并且可基于计算出的置信度分数来确定是否替换第一字符串。
[0394]
图14是图13的根据本公开实施方式的由装置执行的进行语音识别的方法中的操作s1310的详细流程图。
[0395]
在操作s1411中,根据本公开实施方式的装置100可接收语音信号。在操作s1413中,根据本公开实施方式的装置100可确定是否已检测到词的边界。根据本公开实施方式的装置100可持续接收包括语音帧的语音信号直到检测到词的边界。
[0396]
例如,装置100可基于从语音信号中检测到的停顿或包括重音和语调的韵律信息来检测词的边界。
[0397]
当检测到词的边界时,在操作s1415,根据本公开实施方式的装置100可从语音信号中获得第一字符串。
[0398]
在操作s1431中,根据本公开实施方式的装置100可计算第一字符串的置信度分数。第一字符串的置信度分数可基于从第一字符串中获得的多个估计字符串的似然度或第一字符串内的至少一个字符被替换为另一字符的后验概率中的至少一个来计算。
[0399]
例如,装置100可基于作为维特比解码结果输出的似然度来计算置信度分数。可替代地,装置100可基于从端到端语音识别模型中的softmax层输出的后验概率来计算置信度分数。
[0400]
可替代地,根据本公开实施方式的装置100可确定在对语音信号进行语音识别期间估计的多个估计字符串,并且可基于多个估计字符串之间的相关性来计算第一字符串的置信度分数。随着包括第一字符串的多个估计字符串之间的相关性增加,第一字符串的置信度分数可增加。
[0401]
在操作s1433中,根据本公开实施方式的装置100可确定第一字符串的置信度分数是否小于阈值。
[0402]
当确定第一字符串的置信度分数小于阈值时,在操作s1340,根据本公开实施方式的装置100可将第一字符串发送到服务器200。响应于发送的第一字符串,装置100可接收第二字符串,其中第一字符串中的至少一个字符已被替换为另一字符。装置100可输出接收到的第二字符串。
[0403]
另一方面,当确定第一字符串的置信度分数等于或大于阈值时,在操作s1370,根据本公开实施方式的装置100可输出第一字符串。
[0404]
根据本公开实施方式的装置100可通过对第一字符串或第二字符串进行自然语言处理来确定用户的话语意图,输出与语音助手服务相关的信息,而不是不变地输出第一字符串或第二字符串。
[0405]
装置100可使用例如装置100内的nlu模型、dm模型和nlg模型,基于第一字符串或第二字符串来提供语音助手服务。
[0406]
例如,装置100可基于第一字符串或第二字符串生成响应消息并输出生成的响应消息,以考虑用户情况、装置情况等来模仿直接与用户交谈的人。又例如,装置100可基于第一字符串或第二字符串生成用户请求的信息,并且可输出所生成的信息。又例如,装置100
可基于第一字符串或第二字符串确定用户的话语意图,并且可请求服务提供服务器提供用户请求的信息。装置100可输出从服务提供服务器接收到的信息。
[0407]
根据本公开实施方式的装置100可接收与基于第二字符串生成的语音助手服务相关的信息,而不是响应于所发送的第一字符串从服务器200接收第二字符串。装置100可输出从服务器200接收的信息。与语音助手服务相关的信息可以是由服务器200基于通过校正第一字符串获得的第二字符串生成的信息。
[0408]
例如,与语音助手服务相关的信息可包括对用户语音信号的响应消息、用户所需的服务或用户需要的信息。
[0409]
如图14所示,根据本公开实施方式的装置100可基于第一字符串的置信度分数来确定是否将第一字符串替换为另一字符串。当第一字符串的置信度分数小于阈值时,装置100可将第一字符串发送到服务器200。装置100可基于服务器200内的词典信息和语言模型,从服务器200获得通过将第一字符串的至少一个字符替换为另一字符而获得的第二字符串。因此,根据本公开实施方式的装置100可通过从服务器200接收置信度分数高于第一字符串的第二字符串,并使用接收到的第二字符串来提高语音识别的准确度。
[0410]
图14示出了以用户说出的词为单位计算语音识别结果的置信度分数并确定是否替换第一字符串的本公开实施方式。然而,本公开的实施方式不限于此。根据本公开实施方式的装置100可以以用户说出的句子为单位来计算语音识别结果的置信度分数并确定是否替换第一字符串。可使用各种传统方法来检测用户说出的句子终止,在此将省略其详细描述。
[0411]
图15是根据本公开实施方式的服务器的操作方法的流程图。下文将要描述的服务器200的操作方法的操作可分别由图7和图9所示的服务器来执行。
[0412]
在操作s1510中,根据本公开实施方式的服务器200可从装置100接收第一字符串。第一字符串可经由装置100对语音信号执行语音识别来输出。
[0413]
例如,服务器200接收到的第一字符串可以是帧同步字符串,其包括分别与通过以预设时间间隔分割语音信号而获得的语音信号帧对应的字符。又例如,服务器200接收到的第一字符串可以是非帧同步字符串。
[0414]
当从装置100接收到的第一字符串是非帧同步字符串时,根据本公开实施方式的处理器220可从第一字符串中获得帧同步字符串。处理器220可通过以帧为单位对第一字符串中包括的至少一个字符进行多次连续排列来获得帧同步字符串。
[0415]
在操作s1520中,根据本公开实施方式的服务器200可根据第一字符串计算多个估计字符串的似然度。根据本公开实施方式的服务器200可通过将包括在第一字符串中的每个字符替换为另一字符来获得多个估计字符串。多个估计字符串的似然度可指当假设从第一字符串中获得的多个估计字符串中的每一个都是基本真实字符串时语音识别模块估计第一字符串的概率。
[0416]
根据本公开实施方式,服务器200可识别与第一字符串内的每个字符发音相似的替换字符,并且可基于所识别的替换字符来获得从第一字符串中获得的似然度以确定第一字符串内的至少一个字符已被校正为另一字符的估计字符串。
[0417]
根据本公开实施方式的服务器200可计算与将要替换第一字符串内的每个字符的替换字符相关的似然度矩阵,并且可基于似然度矩阵内的似然度值来识别多个估计字符
串。服务器200可输出从每个字符获得的似然度矩阵作为多个估计字符串的似然度。
[0418]
例如,服务器200可基于在第一字符串内的每个字符之前累积的字符来计算来自第一字符串的似然度。根据本公开实施方式的服务器200可基于在第一字符串中的每个字符之前累积的字符来计算第一字符串内的每个字符的后验概率。服务器200可基于在第一字符串内的每个字符之前累积的字符来计算字符序列概率。服务器200可基于每个字符的后验概率和字符序列概率来计算从第一字符串中获得的多个估计字符串的似然度。
[0419]
又例如,服务器200可仅考虑第一字符串内的每个字符而不考虑在第一字符串内的每个字符之前累积的字符来计算来自第一字符串的似然度。根据本公开实施方式的服务器200可基于预先确定的混淆矩阵来计算第一字符串内的每个字符的后验概率。服务器200可基于每个字符的后验概率来计算从第一字符串中获得的多个估计字符串的似然度。
[0420]
在操作s1530中,根据本公开实施方式的服务器200可基于在操作s1520中计算的似然度,通过将第一字符串中包括的至少一个字符替换为另一字符来从第一字符串中获得第二字符串。
[0421]
根据本公开实施方式的服务器200可基于计算的似然度来识别多个估计字符串,其中第一字符串内的至少一个字符已被替换为另一字符。服务器200可基于识别的多个估计字符串的似然度、语言模型和词典信息来从多个估计字符串中获得第二字符串。
[0422]
根据本公开实施方式的服务器200可基于计算出的似然度来确定是否将第一字符串替换为第二字符串。服务器200可基于该确定,通过将包括在第一字符串中的至少一个字符替换为另一字符来从第一字符串中获得第二字符串。服务器200可基于似然度、词典信息和语言模型,从多个估计字符串中选择出具有最大似然度的估计字符串。服务器200可根据所选择的估计字符串获得包括在第一字符串中的至少一个字符已被替换为另一字符的第二字符串。
[0423]
例如,服务器200可基于存储在服务器200中的词典信息和语言模型,通过使用wfst解码器来获得第二字符串。当服务器200执行wfst解码时,根据本公开实施方式的服务器200可基于字符之间的关系t、包括词与字符之间的映射信息的词典信息l、以及在分配指定特定词串时估计下个词的概率的语言模型g,通过使用wfst来构成和解码搜索空间。
[0424]
又例如,服务器200可包括基于词典信息和语言模型重新计算从第一字符串中获得的多个估计字符串的似然度的维特比解码器。维特比解码器可从多个估计字符串中确定出重新计算似然度最大的第二字符串。考虑到词典信息和语言模型,维特比解码器可搜索相对于第一字符串具有最高似然度的字符串作为第二字符串。
[0425]
在操作s1540中,根据本公开实施方式的服务器200可将第二字符串发送到装置100。可替代地,服务器可将要替换的一个或多个字符和一个或多个替换字符发送到装置100。
[0426]
根据本公开实施方式的服务器200可通过使用nlu模型来解释第二字符串,并且可基于解释的结果生成对用户的语音信号的响应消息。服务器200可生成响应消息并且还向装置100发送响应消息。
[0427]
本公开的实施方式不限于图15的本公开实施方式,其中服务器200将第二字符串不改变地发送到装置100。根据本公开实施方式的服务器200可通过对第二字符串进行自然语言处理来确定用户的话语意图,发送与语音助手服务相关的信息。
[0428]
服务器200可使用例如服务器200内的nlu模型、dm模型和nlg模型,基于第二字符串来提供语音助手服务。
[0429]
例如,服务器200可基于解释第二字符串的结果生成用于控制装置100或另一装置的控制命令,并将所生成的控制命令发送到装置100。又例如,服务器200可基于第二字符串生成响应消息并所发送生成的响应消息,以考虑用户情况、装置情况等来模仿直接与用户交谈的人。又例如,服务器200可基于第二字符串生成用户请求的信息,并且可发送所生成的信息。又例如,服务器200可基于第二字符串确定用户的话语意图,并且可请求服务提供服务器提供用户请求的服务。服务器200可发送从服务提供服务器接收到的信息。
[0430]
图16是根据本公开实施方式的服务器的操作方法中考虑到每个字符之前累积的字符而从字符串中获得似然度的方法的详细流程图。
[0431]
在操作s1510中,根据本公开实施方式的服务器200可从装置100接收第一字符串。图16中的操作s1510可与图15中的操作相同,因此省略进一步的冗余描述。
[0432]
在操作s1621中,根据本公开实施方式的服务器200可基于在第一字符串中的每个字符之前累积的字符来获得第一字符串内的每个字符的后验概率。
[0433]
例如,服务器200可通过使用预先训练用于计算字符串的后验概率的神经网络来计算第一字符串内的每个字符的后验概率。
[0434]
在操作s1623中,根据本公开实施方式的服务器200可根据第一字符串计算字符序列概率。
[0435]
在操作s1625中,根据本公开实施方式的服务器200可基于在操作s1621中计算的后验概率和在操作s1623中计算的字符序列概率,计算从第一字符串中获得的多个估计字符串的似然度。根据本公开实施方式的服务器200可计算与将要替换第一字符串内的每个字符的替换字符相关的似然度矩阵,并且可基于计算出的似然度矩阵来获得多个估计字符串的似然度。
[0436]
根据本公开实施方式的服务器200可确定是否已针对第一字符串中包括的所有字符计算了似然度矩阵。根据本公开实施方式的服务器200可重复执行操作s1621、s1623和s1625,直到针对第一字符串中包括的所有字符都计算了似然度矩阵。
[0437]
上面已参考图9描述了根据第一字符串计算似然度的详细过程,因此将省略其冗余描述。
[0438]
在操作s1627中,根据本公开实施方式的服务器200可通过使用词典信息和语言模型,从在操作s1625中计算的似然度获得第二字符串。第二字符串可以是通过将第一字符串的至少一个字符替换为另一字符而获得的字符串。
[0439]
例如,服务器200可基于词典信息、语言模型和计算的似然度通过使用似然度作为输入的wfst解码器或者使用典型令牌传递的维特比解码器,从多个估计字符串中获得第二字符串。
[0440]
在操作s1540中,根据本公开实施方式的服务器200可将第二字符串发送到装置100。根据本公开实施方式的服务器200可通过对第二字符串进行自然语言处理来确定用户的话语意图,发送与语音助手服务相关的信息,而不是将第二字符串不改变地发送到装置100。将省略其重复描述。图16中的操作1540可与图15中的操作相同,因此省略进一步的冗余描述。
[0441]
图17是用于解释根据本公开实施方式的wfst解码的图。
[0442]
根据本公开实施方式的服务器200可根据从装置100接收到的第一字符串来计算似然度,并且可通过使用计算的似然度作为输入来执行wfst解码。根据本公开实施方式的服务器200可通过对从第一字符串中获得的多个估计字符串的似然度t、包括词与字符之间的映射信息的词典信息l、以及在分配特定词串时下个词的概率的语言模型g中的每一个进行建模,通过使用wfst来执行wfst解码。
[0443]
现在将描述使用wfst来对存储关于词“该”、“猫”、“和”、“鹿”、“是”、“红雀”、“棒球”和“对”之间关系的信息的语言模型进行建模的示例。图17示出了基于语言模型可通过组合词形成的有限数量的字符串。
[0444]
在图17中,每个圆圈表示一种状态,并且语言模型中存储的词由箭头表示。wfst解码器可从沿着多个路径组合的多个字符串中的每一个来计算字符串的置信度分数。可基于每个字符串的似然度、词典信息和语言模型来计算每个字符串的置信度分数。wfst解码器可选择并输出具有最高置信度分数的字符串。
[0445]
例如,如图8a所示,根据本公开实施方式的服务器200可从装置100接收第一字符串[猫鹿棒球队]。
[0446]
服务器200可计算从第一字符串中获得的多个估计字符串的似然度。当计算出的似然度输入到服务器200的wfst解码器时,wfst解码器可输出第二字符串。wfst解码器可从多个估计字符串的置信度分数中确定具有最高置信度分数的第二字符串,并且可输出所确定的第二字符串。
[0447]
如图8a所示,体育领域的命名实体“红雀”可存储在服务器200的存储器230中。因此,服务器200的处理器220可确定由装置100估计的“猫鹿”实际上是棒球队名称“红雀”的概率很高。
[0448]
因此,参考图17,根据本公开实施方式的wfst解码器可从多个估计字符串[猫鹿棒球队]和[红雀棒球队]中确定出具有最高置信度的字符串[红雀棒球队]作为第二字符串,并且可输出所确定的第二字符串。
[0449]
图18示出了根据本公开实施方式的显示语音识别结果的装置的屏幕。
[0450]
根据本公开实施方式的装置100可输出经由语音识别从对用户接收的语音信号估计的字符串中获得的词串1811“猫鹿棒球队”。当执行装置端语音识别时,装置100可在屏幕上显示表示正在执行装置端语音识别的图像1812。
[0451]
当通过使用装置端语音识别执行语音识别的结果的置信度分数足够高时,根据本公开实施方式的装置100可无变化地使用执行语音识别的结果。
[0452]
另一方面,当根据本公开实施方式的装置100确定经由装置端语音识别执行语音识别的结果的置信度分数不够高时,装置100可将与语音识别结果对应的字符串发送到服务器200。
[0453]
根据本公开实施方式的服务器200可从装置100接收字符串并通过使用服务器200内的语言模型和词典信息对字符串进行解码,从而获得字符串中包括的至少一个字符已被校正的字符串“红雀棒球队”。服务器200可将“红雀棒球队”发送到装置100。
[0454]
根据本公开实施方式的装置100可输出从服务器200接收的字符串1821“红雀棒球队”。当执行基于服务器的语音识别时,装置100可在屏幕上显示表示正在执行基于服务器
的语音识别的图像1822。
[0455]
图19是根据本公开实施方式的装置的详细框图。
[0456]
图19的装置100可包括与以上参考图3描述的装置100的部件相同的部件。例如,来自图19的部件中的处理器2300可与图3的处理器120相同,并且输出接口2220可与图3的输出接口150相同。虽然图19未示出,但是图19的存储器2700可存储用于执行语音识别的指令以及在语音识别中使用的各种模型、神经网络、词典信息等,如图3的存储器140。因此,本文将省略其重复描述。
[0457]
图19的装置100可执行上面参考图3至图18描述的装置100的所有操作和功能。因此,现在将描述上面未描述的装置100的部件。
[0458]
参考图19,装置100可包括用户输入接口2100、输出接口2200、处理器2300、感测单元2400、通信接口2500、a/v输入接口2600和存储器2700。
[0459]
用户输入接口2100表示用户经由其输入用于控制装置100的数据的装置。例如,用户输入接口2100可包括但不限于小键盘、弹片开关、触摸板(电容覆盖型、电阻覆盖型、红外光束型、积分应变计型、表面声波型、压电型等)、滚轮或拨动开关。用户输入接口2100可接收用于生成要提供给用户的会话信息所需的用户单元。
[0460]
输出接口2200可输出音频信号、视频信号或振动信号,并且可包括显示器2210、音频输出接口2220和振动电机2230。
[0461]
振动电机2230可输出振动信号。例如,振动电机2230可输出与音频数据或视频数据(例如,接收声音的呼叫信号或接收声音的消息)的输出对应的振动信号。
[0462]
感测单元2400可感测装置100的状态或装置100周围的状态,并且可将与感测到的状态对应的信息发送到处理器2300。
[0463]
感测单元2400可包括但不限于选自以下至少一项:磁传感器2410、加速度传感器2420、温度/湿度传感器2430、红外传感器2440、陀螺仪传感器2450、位置传感器2460(例如,全球定位系统(gps))、压力传感器2470、接近传感器2480和rgb传感器2490(即,照度传感器)。本领域普通技术人员可通过大多数传感器的名称直观地理解其功能因此在此将省略其详细描述。
[0464]
通信接口2500可包括用于与另一装置通信的部件。例如,通信接口2500可包括短距离无线通信接口2510、移动通信接口2520和广播接收器2530。
[0465]
短距离无线通信接口2510的示例可包括但不限于蓝牙通信接口、蓝牙低功耗(ble)通信接口、近场通信(nfc)接口、无线局域网(wlan)(例如wi-fi)通信接口、zigbee通信接口、红外数据协会(irda)通信接口、wi-fi直连(wfd)通信接口、超宽带(uwb)通信接口和ant 通信接口。
[0466]
移动通信接口2520可与选自移动通信网络上的基站、外部终端和服务器的至少一个交换无线信号。在本文中,无线信号的示例可包括语音呼叫信号、视频呼叫信号或根据文本/多媒体消息发送的各种类型的数据。
[0467]
广播接收器2530经由广播信道从外部源接收广播信号和/或广播相关信息。广播频道可以是卫星频道、地波频道等。根据本公开实施方式,装置100可不包括广播接收器2530。
[0468]
通信接口2500可向第二交互式电子装置、另一装置和服务器发送生成要提供给用
户的会话信息所需的信息,或从第二交互式电子装置、另一装置和服务器接收生成要提供给用户的会话信息所需的信息。
[0469]
a/v输入接口2600输出音频信号或视频信号,并且可包括相机2610和麦克风2620。相机2610可在视频通话模式或拍摄模式下经由图像传感器获得诸如静止图像或运动图像的图像帧。经由图像传感器捕获的图像可由处理器2300或单独的图像处理器(未示出)处理。
[0470]
由相机2610获得的图像帧可存储在存储器2700中或经由通信接口2500发送到外部。取决于装置100的配置,可包括至少两个相机2610。
[0471]
麦克风2620接收外部音频信号并将外部音频信号转换为电子音频信号。例如,麦克风2620可从外部装置或讲话者接收音频信号。麦克风2620可使用各种噪声消除算法以去除接收外部音频信号时产生的噪声。
[0472]
存储器2700可存储由处理器2300用来执行处理和控制的程序,并且还可存储输入到装置100的数据或从装置输出的数据。
[0473]
存储器2700可包括选自以下至少一种类型的存储介质:闪存存储器、硬盘存储器、多媒体卡微型存储器、卡式存储器(例如,安全数字(sd)或极限数字(xd)存储器)、随机存取存储器(ram)、静态随机存取存储器(sram)、只读存储器(rom)、电可擦除可编程rom(eeprom)、可编程rom(prom)、磁存储器、磁盘和光盘。
[0474]
存储在存储器2700中的程序可根据其功能被分类成多个模块,例如,用户接口(ui)模块2710、触摸屏模块2720和通知模块2730。
[0475]
ui模块2710可提供专用于每个应用并与装置100互操作的ui、图形用户界面(gui)等。触摸屏模块2720可检测用户触摸屏上的触摸手势,并且将关于触摸手势的信息发送到处理器2300。根据本公开一些实施方式的触摸屏模块2720可识别和分析触摸代码。触摸屏模块2720可由包括控制器的单独硬件配置,并且可被包括在输出接口2200的显示器2210中。
[0476]
通知模块2730可生成用于通知在装置100中已生成事件的信号。在电子装置100中生成的事件的示例可包括呼叫信号接收、消息接收、按键信号输入、日程通知等。通知模块2730可经由显示器2210以视频信号的形式、经由音频输出接口2220以音频信号的形式、以及经由振动电机2230以振动信号的形式输出通知信号。
[0477]
本公开实施方式可实现为一个或多个软件程序,包括存储在计算机可读存储介质和/或装置100的存储器中的计算机可读指令。
[0478]
计算机是能够从存储介质中调用存储的指令并根据调用的指令根据本公开实施方式进行操作的装置,并且可包括根据本公开实施方式的图像发送装置和图像接收装置。
[0479]
计算机可读存储介质可设置为非暂时性存储介质。这里,“非暂时性”意味着存储介质不包括信号并且是有形的,但是不包括区分数据是半永久地还是暂时地存储在存储介质中。
[0480]
此外,根据本公开实施方式的电子装置或方法可在计算机程序产品中提供。计算机程序产品可作为商品在卖方与买方之间进行交易。
[0481]
计算机程序产品可包括软件程序和存储有软件程序的计算机可读存储介质。例如,计算机程序产品可包括通过电子装置的制造商或电子市场(例如,谷歌商店、苹果商店)
电子分发的软件程序形式的产品(例如可下载的应用)。对于电子分发,软件程序的至少部分可存储在存储介质上或可临时创建。在这种情况下,存储介质可以是制造商的服务器、电子市场的服务器,或用于临时存储软件程序的中继服务器的存储介质。
[0482]
计算机程序产品可包括服务器的存储介质或者由服务器和终端(例如,图像发送装置或图像接收装置)组成的系统中的终端的存储介质。可替代地,当存在第三装置(例如,智能电话)与服务器或终端通信时,计算机程序产品可包括第三装置的存储介质。可替代地,计算机程序产品可包括从服务器发送到终端或第三装置或从第三装置发送到终端的软件程序本身。
[0483]
在这种情况下,服务器、终端和第三装置中的一个可运行计算机程序产品以执行根据本公开实施方式的方法。可替代地,服务器、终端和第三装置中的至少两个可运行分发的计算机程序产品并执行根据本公开实施方式的方法。
[0484]
例如,服务器(例如,云服务器或ai服务器等)可执行存储在服务器上的计算机程序产品,以控制与服务器通信的终端执行根据本公开实施方式的方法。
[0485]
又例如,第三装置可运行计算机程序产品以控制与第三装置通信的终端执行根据本公开实施方式的方法。例如,第三装置可远程控制图像发送装置来发送包图像或图像接收装置来接收包图像。
[0486]
当第三装置运行计算机程序产品时,第三装置可从服务器下载计算机程序产品并运行所下载的计算机程序产品。可替代地,第三装置可运行以预加载状态提供的计算机程序产品,以执行根据本公开实施方式的方法。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献