CN117809630A - 一种电子设备及语音唤醒方法 - Google Patents
一种电子设备及语音唤醒方法 Download PDFInfo
- Publication number
- CN117809630A CN117809630A CN202311395235.0A CN202311395235A CN117809630A CN 117809630 A CN117809630 A CN 117809630A CN 202311395235 A CN202311395235 A CN 202311395235A CN 117809630 A CN117809630 A CN 117809630A
- Authority
- CN
- China
- Prior art keywords
- voice
- pinyin
- wake
- electronic device
- text
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000012545 processing Methods 0.000 claims abstract description 38
- 230000002618 waking effect Effects 0.000 claims abstract description 21
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 239000011159 matrix material Substances 0.000 claims description 7
- 230000006870 function Effects 0.000 abstract description 13
- 230000004044 response Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 15
- 230000003993 interaction Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 11
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000001816 cooling Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 241000282994 Cervidae Species 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000011093 media selection Methods 0.000 description 1
- 230000036651 mood Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/10—Speech classification or search using distance or distortion measures between unknown speech and reference templates
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请实施例公开一种电子设备及语音唤醒方法,接收用户输入的语音数据;对语音数据进行语音处理,得到语音数据转换的文本信息;按照预设长度对文本信息进行截取以获得备选文本;对自定义唤醒词和备选文本进行动态匹配,获得自定义唤醒词和备选文本之间的最小编辑距离;根据最小编辑距离,计算置信度;如果置信度大于阈值,唤醒语音应用,语音应用用于响应用户输入的语音指令;如果置信度不大于所述阈值,不唤醒语音应用。本申请实施例可以提升语音识别和唤醒的准确性,避免因用户误唤醒语音应用导致的语音控制指令的错误响应和执行,降低误唤醒和漏唤醒,提升唤醒率和唤醒准确率,提升语音控制功能和用户语音使用体验。
Description
技术领域
本申请涉及语音处理技术领域,尤其涉及一种电子设备及语音唤醒方法。
背景技术
电子设备一般配置有用于语音控制的应用(以下简称:语音应用),语音应用可以包括休眠状态和清醒状态,休眠状态下语音应用不响应及不执行用户输入的语音指令,清醒状态下可以响应输入的语音指令以执行指令指示的动作/程序。因此,在语音应用处于休眠状态时,用户需要先唤醒语音应用,再通过与语音应用的交互实现语音控制。
语音唤醒方式包括固定唤醒方式和自定义唤醒方式。其中,固定唤醒方式是利用固定唤醒词唤醒语音应用,固定唤醒词通常为电子设备预置的语音产品名称,例如“小X”。固定唤醒方式无法兼容不同用户的使用习惯和偏好,并且先唤醒后语音交互也会导致语音控制效率低,甚至有些用户不清楚或忘记默认的唤醒词,导致无法有效使用语音控制功能。
自定义唤醒方式可以支持用户使用多样性的唤醒词唤醒语音应用,自定义唤醒词主要为用户高频使用的语音指令,例如“打开空调”、“播放歌曲”等,不再拘泥于单一的固定唤醒词。但自定义唤醒方式容易产生误唤醒和唤醒率下降等问题。
发明内容
本申请一些实施例提供了一种电子设备及语音唤醒方法,实现电子设备端侧执行自定义唤醒任务时,降低漏唤醒和误唤醒,提高自定义唤醒的唤醒率和唤醒准确性。
第一方面,本申请一些实施例提供一种电子设备,包括:
声音采集器,用于采集用户输入的语音数据;
控制器,用于执行:
接收所述声音采集器采集并传输的语音数据;
对所述语音数据进行语音处理,得到语音数据转换的文本信息;
按照预设长度对所述文本信息进行截取以获得备选文本;
对自定义唤醒词和所述备选文本进行基于滑窗的动态匹配,获得自定义唤醒词和所述备选文本之间的最小编辑距离;
根据所述最小编辑距离,计算置信度;
如果所述置信度大于阈值,唤醒语音应用,所述语音应用用于响应用户输入的语音指令;
如果所述置信度不大于所述阈值,不唤醒所述语音应用。
在一些实施例中,在对自定义唤醒词和所述备选文本进行基于滑窗的动态匹配之前,所述控制器还用于执行:将所述自定义唤醒词和所述备选文本统一转换为目标格式;对格式转换后的所述自定义唤醒词进行拼音转换,获得第一拼音;格式转换后的所述备选文本进行拼音转换,获得第二拼音。
在一些实施例中,所述控制器对自定义唤醒词和所述备选文本进行基于滑窗的动态匹配,包括:根据所述第一拼音的长度生成滑窗;在所述滑窗按照预设步长和目标方向沿所述第二拼音移动时,利用所述滑窗截取所述第二拼音,获得所述滑窗当前截取的拼音串;计算第一拼音与所述滑窗移动k步后截取的拼音串之间的最小编辑距离DI[h][h]k,其中k表示滑窗的移动步数,h表示所述第一拼音的长度;计算所述第一拼音与所述第二拼音之间的最小编辑距离d,d=min{DI[h][h]k∣k=0,1,…Q},其中,Q表示所述滑窗完整遍历第二拼音时移动的总步数。
在一些实施例中,所述控制器按照如下方式计算所述置信度:
其中,c表示所述置信度。
在一些实施例中,所述控制器计算第一拼音与所述滑窗移动k步后截取的拼音串之间的最小编辑距离DI[h][h]k,包括:创建维度为[h+1,h+1]的矩阵DI,所述矩阵DI用于计算编辑距离DI[i][j]x,其中,i表示所述第一拼音中字母的序号,j表示所述滑窗移动k步后截取的拼音串中字母的序号,1≤i≤h,1≤j≤h,x表示编辑操作的类型序号,DI[i][j]x表示将所述第一拼音的前i个字母转换为所述拼音串的前j个字母所需执行的第x种编辑操作的最小次数;以i=0和j=0为起始,遍历i和j,并计算编辑距离DI[i][j],直至i=j=h,得到最小编辑距离DI[h][h]k;其中,DI[i][j]=min{DI[i][j]x∣x=1,2,…,R},R表示所述编辑操作包括的类型总数。
在一些实施例中,所述编辑操作的类型包括插入、替换和删除,则有:
x=1:DI[i][j]1=DI[i][j-1]+1;
x=2:DI[i][j]2=DI[i-1][j-1]+1;
x=3:DI[i][j]3=DI[i-1][j]+1;
其中,x=1对应插入操作,DI[i][j]1表示在所述第一拼音的第i个字母后插入所述拼音串的第j个字母,使得所述第一拼音的前i个字母与所述拼音串的前j+1个字母相同时的编辑距离;
x=2对应交换操作,DI[i][j]2表示将所述第一拼音的第i个字母替换为所述拼音串的第j个字母时的编辑距离;
x=3对应删除操作,DI[i][j]3表示删除所述第一拼音的第i个字母,使得所述第一拼音的前i-1个字母与所述拼音串的前j个字母相同时的编辑距离。
在一些实施例中,如果所述第一拼音的第i个字母与所述拼音串的第j个字母相同,则有DI[i][j]=DI[i-1][j-1]。
在一些实施例中,所述电子设备配置有语音识别模型,所述语音识别模型包括编码器、解码器、联合器和分类器,所述编码器和所述解码器的输出端均连接所述联合器的输入端,所述联合器的输出端连接所述分类器,则所述控制器对所述语音数据进行语音处理,包括:将所述声音采集器采集的语音帧输入至所述编码器;将所述语音识别模型的历史输出数据输入至所述解码器;将所述编码器和所述解码器的输出结果输入至所述联合器;将所述联合器的输出结果输入至所述分类器,以使所述分类器输出至少一个所述文本信息及其概率。
在一些实施例中,在唤醒语音应用之后,所述控制器还用于执行:控制所述语音应用根据所述文本信息包含的非唤醒意图,生成语音控制指令;将所述语音控制指令发送给执行对象,以使所述执行对象执行所述语音控制指令指示的程序,所述执行对象为所述电子设备的软件或硬件。
第二方面,本申请一些实施例还提供一种语音唤醒方法,包括:
接收用户输入的语音数据;
对所述语音数据进行语音处理,得到语音数据转换的文本信息;
按照预设长度对所述文本信息进行截取以获得备选文本;
对自定义唤醒词和所述备选文本进行基于滑窗的动态匹配,获得自定义唤醒词和所述备选文本之间的最小编辑距离;
根据所述最小编辑距离,计算置信度;
如果所述置信度大于阈值,唤醒语音应用,所述语音应用用于响应用户输入的语音指令;
如果所述置信度不大于所述阈值,不唤醒所述语音应用。
第三方面,本申请一些实施例还提供一种计算机存储介质,该计算机存储介质中存储有程序指令,当程序指令在计算机上运行时,使得计算机执行以上各方面及其各个实现方式中涉及的方法。
电子设备在对用户输入的语音数据进行语音处理后,将音频转换为文本,为便于后续动态匹配自定义唤醒词和文本信息,提升匹配效率,可以按照预设长度截取文本信息,该预设长度例如可参照自定义唤醒词常规的最大长度来设定,这样可以得到截取的备选文本。本申请实施例在语音识别后,为了进一步提升识别的准确性,避免误唤醒或漏唤醒等情况,采用文本动态匹配算法,计算自定义唤醒词与备选文本之间的最小编辑距离,最小编辑距离可以评估自定义唤醒词与备选文本之间的相似度/匹配度,基于该最小编辑距离计算置信度,并比较置信度与阈值,从而决策是否唤醒语音应用,从而提升语音识别和唤醒的准确性,避免因用户误唤醒语音应用导致的语音控制指令的错误响应和执行,降低误唤醒和漏唤醒,提升唤醒率和唤醒准确率,提升语音控制功能和用户语音使用体验。
附图说明
为了更清楚地说明本申请一些实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一些实施例提供的语音业务处理的操作场景图;
图2为本申请一些实施例提供的电子设备的硬件配置框图;
图3为本申请一些实施例提供的服务器和电子设备的软件架构配置框图;
图4为本申请一些实施例提供的一种语音交互网络架构示意图;
图5为本申请一些实施例提供的用户唤醒电子设备内的语音应用的交互示意图一;
图6为本申请一些实施例提供的用户唤醒电子设备内的语音应用的交互示意图二
图7为本申请一些实施例提供的电子设备端自定义语音唤醒的处理架构的示意图;
图8为本申请一些实施例提供的语音唤醒方法的流程图;
图9为本申请一些实施例提供的一种语音识别模型的示意图;
图10为本申请一些实施例提供的基于transformer结构的输入特征提取的流程图;
图11为本申请一些实施例提供的文本动态匹配算法的流程图;
图12为本申请一些实施例提供的文本动态匹配时的滑窗移动机制。
具体实施方式
为使本申请的目的和实施方式更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
需要说明的是,本申请中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。
图1为本申请一些实施例提供的语音业务处理的操作场景图。如图1所示,在操作场景中可以包括服务器100和电子设备200,电子设备200示例性包括智能电视200a、移动终端备200b、智能音箱200c等。
本申请中服务器100与电子设备200可以通过多种通信方式进行数据交互。可允许电子设备200通过局域网(LAN)、无线局域网(WLAN)或其他网络进行通信连接。服务器100可以向电子设备200提供语义解析和意图识别结果、各种业务相关数据等内容。示例性的,电子设备200与服务器100可以进行信息和数据的交互,以及接收软件程序更新等。
服务器100可以是提供各种服务的服务器,例如对电子设备200采集的语音数据提供支持的后台服务器。服务器100可以对接收到的语音等数据进行语义解析、意图识别等语音处理,并将处理结果(例如:语音文本、意图指令等)反馈给电子设备200。服务器100还可以响应于电子设备200的业务请求,将对应的业务数据(例如:应用数据,媒资数据等)发送给电子设备200。服务器100可以是一个服务器集群,也可以是多个服务器集群,可以包括一类或多类服务器。
电子设备200可以是硬件设备,也可以是软件装置。当电子设备200为硬件设备时,可以是具有声音采集功能的各种电子设备,包括但不限于:智能电视、智能冰箱、智能空调、智能音箱等家电设备,智能手机、平板电脑、电子书阅读器、智能手表、智能游戏机、计算机、AI设备、机器人、智能车载等终端设备。
当电子设备200为软件装置时,可以包括至少一个软件功能模块/服务/模型(例如声音采集模块、语音服务、语音处理模型等),该软件装置可以应用于在上述列举的硬件电子设备中。该软件装置可以实现成多个软件或软件模块(例如用来提供声音采集服务),也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本申请实施例所提供的语音唤醒方法可以通过服务器100执行,也可以由电子设备200端侧执行,还可以通过服务器100和电子设备200共同执行,本申请对此不做限定。
图2为本申请实施例提供的电子设备200的硬件配置框图。如图2所示,电子设备200可以包括但不限于通信器210、检测器220、外部装置接口230、控制器240、显示器250、音频输出接口260、用户接口270、存储器280、供电电源中的至少一种。控制器240可以包括:中央处理器,视频处理器、音频处理器,图形处理器,RAM,ROM,用于输入/输出的第一接口至第n接口。
显示器250包括用于呈现画面的显示屏组件,以及驱动图像显示的驱动组件,用于接收源自控制器240输出的图像信号,显示视频内容、图像内容以及菜单操控界面的组件以及用户操控UI界面。显示器250可为液晶显示器、OLED显示器、以及投影显示器,还可以为一种投影装置和投影屏幕。
通信器210是用于根据各种通信协议类型与外部设备或服务器100进行通信的组件。例如,通信器210可以包括:Wifi模块,蓝牙模块,有线以太网模块等其他网络通信协议芯片或近场通信协议芯片,以及红外接收器中的至少一种。电子设备200可以通过通信器210与服务器100建立通信连接,实现控制信号和数据信号的发送和接收。
用户接口270,可以用于接收外部的控制信号,例如用户基于用户界面输入的操作。
检测器220可以用于采集外部环境或与外部交互的信号。例如,检测器220可以包括:光接收器,用于采集环境光线强度的传感器;或者,检测器220可以包括图像采集器,例如摄像头,用于采集外部环境场景、用户属性或用户交互手势;再或者,检测器220可以包括声音采集器,用于采集外部环境中的声音,例如采集用户对电子设备200发出的语音指令,该语音指令包括用于唤醒语音应用(例如:语音助手)的语音唤醒指令。
声音采集器可以是麦克风,也称“话筒”,“传声器”,可以用于接收用户的声音,将声音信号转换为电信号。电子设备200可以设置至少一个麦克风。在一些实施例中,电子设备200可以设置两个麦克风,除了采集声音信号,还可以实现降噪功能。电子设备200还可以设置三个,四个或更多麦克风,可以设置麦克风阵列,实现近场或远场采集声音信号,降噪,识别声音来源,实现定向录音等功能。
此外,麦克风可以是内置在电子设备200上,或者麦克风通过有线或者无线(例如蓝牙连接等)的方式与电子设备200相连接。当然,本申请实施例对麦克风在电子设备200上的安装位置不作限定。或者,电子设备200可以不包括麦克风,即上述麦克风并未设置于电子设备200中。电子设备200可以通过某些接口(例如:USB接口)外接麦克风,该外接的麦克风可以通过外部固定件(例如:带夹子的麦克风支架)固定在电子设备200上的任意位置。
控制器240,可以通过存储在存储器270中的各种软件程序,控制电子设备200的任务执行以及响应用户的操作或语音指令。控制器240用于控制电子设备200的整体操作。
控制器240可以包括:中央处理器(Central Processing Unit,CPU),视频处理器,音频处理器,图形处理器(Graphics Processing Unit,GPU),RAM(Random Access Memory,RAM),ROM(Read-Only Memory,ROM),用于输入/输出的第一接口至第n接口,通信总线(Bus)等中的至少一种。
电子设备200在不同的设备类型和操作系统下可以具有不同的软件配置。图3为本申请一些实施例提供的一种服务器和电子设备的软件架构配置框图。以配置Android(安卓)操作系统的的电子设备200为例,如图3所示,电子设备200从逻辑上可以分为应用程序(Applications)层(简称“应用层21”)、内核层22和硬件层23。服务器100包括但不限于通信控制模块101、意图识别模块102和数据存储模块103。
在一些实施例中,如图3所示,硬件层23可以包括图2示例的通信器210、检测器220、控制器240和显示器250等。
在一些实施例中,如图3所示,应用层21包括一个或多个应用。应用可以为系统应用,也可以为第三方应用。例如,应用层21可以包括语音应用,语音应用可以提供语音交互界面和相关语音服务,语音应用可以与通信控制模块101进行交互,实现电子设备200与服务器100的连接。
内核层22作为硬件层23和应用层21之间的软件中间件,用于管理和控制硬件资源和软件资源。
在一些实施例中,内核层22包括检测器驱动,检测器驱动可以包括麦克风驱动,麦克风驱动用于将麦克风采集的语音数据发送至应用层21的语音应用。在电子设备200中的语音应用启动,电子设备200与服务器100已建立通信连接的情况下,麦克风驱动用于将检测器230中麦克风采集的用户输入的语音数据发送至语音应用。之后,语音应用可以将该语音数据发送至服务器中的意图识别模块202;意图识别模块202用于将电子设备200发送的语音数据输入至意图识别模型,意图识别模型可以是配置语音处理、意图识别等算法的模型,用于输出语音数据指示的用户意图,例如用户意图为“打开空调”。
为清楚说明本申请的实施例,下面结合图4对本申请实施例提供的一种语音识别网络架构进行描述。
图4为本申请一些实施例提供的一种语音交互网络架构示意图。如图4所示,电子设备200采集用户输入的语音数据,并将语音数据发送给服务器100。服务器100可以配置语音识别模块、语义理解模块、业务服务模块等。其中,语音识别模块可以部署有ASR(Automatic Speech Recognition,自动语音识别)服务,ASR服务用于将语音数据转换为文本;语义理解模块可以部署有NLU(Natural Language Understanding,自然语音理解)服务,NLU服务用于对文本进行语义解析,从而识别用户语音的意图;业务服务模块,用于根据执行与用户输入的语音指令匹配的业务服务,例如业务服务可以提供查询功能(如天气查询、媒资查询等)。图4所示架构中可存在部署有不同业务服务的多个实体服务设备,也可以在一个或多个实体服务设备中集合一项或多项功能服务。
在一些实施例中,下面对基于图4所示架构处理输入电子设备的信息的过程进行举例描述,以输入电子设备的信息为通过语音输入的指令语句为例:
[语音识别]
电子设备在接收到通过用户输入的指令语句后,可以对指令语句的音频进行降噪处理和特征提取,这里的去噪处理可包括去除回声和环境噪声等步骤。电子设备将指令语句的音频发送给服务器100中的语音识别模块,语音识别模块将指令语句的音频转换为文本。
[语义理解]
语义理解模块利用声学模型和语言模型,对识别出的候选文本和相关联的上下文信息进行自然语言理解,将文本解析为结构化的、机器可读的信息,业务领域、意图、词槽等信息以表达语义等。语义理解模块得到可执行意图后,可以确定意图置信度得分,并基于所确定的意图置信度得分选择一个或者多个候选可执行意图,
[业务服务]
语义理解模块根据对指令语句的文本的语义解析和意图识别结果,向相应的业务服务模块下发第一指令。业务服务模块响应于该第一指令,执行相应的业务功能,例如指令语句为“播放节目A”,则业务服务模块可以获取节目A的媒资数据,并将该媒资数据发送给电子设备200,以使电子设备200起播节目A,从而完成语音响应和业务执行。
需要说明的是,图4所示架构只是一种示例,并非对本申请保护范围的限定。本申请实施例中,也可采用其他架构来实现类似功能,例如:上述过程全部或部分可以由电子设备来完成,在此不做赘述。本申请实施例对服务器100的结构不限定,服务器100至少可以包括通信器和控制器,通信器用于实现服务器100与电子设备200的通信连接,控制器用于执行服务器100中的相关运算、控制逻辑和业务功能。
在语音控制场景中,电子设备200可与用户预先约定一个用于唤醒语音应用(例如:语音助手)的唤醒词,该唤醒词通常为电子设备200预置的语音产品的名称或昵称,例如小X,这种方式属于固定唤醒方式。图5为本申请一些实施例提供的用户唤醒电子设备内的语音应用的交互示意图一,参见图5,以固定唤醒方式唤醒智能电视的语音应用为例,用户说出语句1为“嗨,小X”,其中“小X”为固定唤醒词,相当于用户向该智能电视内置的语音应用“打招呼”,声音采集器将采集的语句1的音频数据发送给语音应用;语音应用可以将该音频数据发送给服务器,或者调用电子设备预置的语音模型对该音频数据1进行解析处理。
语音应用获取到语音处理结果中包含的关键词,比较该关键词和唤醒词,若关键词与唤醒词匹配,则唤醒成功,语句1触发语音唤醒指令,使语音应用由休眠状态恢复至清醒状态,允许响应之后采集到的语音指令并执行与用户语音意图匹配的动作/程序,即先唤醒后语音交互。若关键词与唤醒词不匹配,则唤醒失败,语音应用仍保持休眠状态,在休眠状态下不允许执行除唤醒任务之外的其他语音控制。
固定唤醒方式要求使用固定唤醒词以唤醒语音应用,然而不同用户有不同的使用习惯和偏好,这种一成不变的唤醒模式影响着用户使用体验,并且先唤醒后语音交互也会导致语音控制效率低,甚至有些用户不清楚或忘记默认的唤醒词,导致无法有效使用语音控制功能,由此产生更人性化的自定义唤醒方式。
相较于固定唤醒方式,自定义唤醒方式不再拘泥于固定唤醒词,自定义唤醒词可以是用户利用个性化唤醒词替换原始的固定唤醒词,例如使用“快乐宝贝”替代“小X”;或者,自定义唤醒词可以包含更广泛的能够唤醒语音应用的词汇,自定义唤醒词的数量可以从几十个到几百个,甚至更多,自定义唤醒词主要为用户针对特定电子设备高频使用的语音指令,例如“打开空调”、“播放歌曲”、“查询天气”、“声音大一点,“声音小一点”、“返回主页”等。
图6为本申请一些实施例提供的用户唤醒电子设备内的语音应用的交互示意图二。参见图6,用户基于当前显示的有线电视板块的推荐页面,说出的语句2为“下一页”,若“下一页”作为该电子设备的自定义唤醒词之一,则该语句2可以触发自定义唤醒任务,使得智能电视自主唤醒语音应用,并在成功唤醒语音应用后,切换到下一个推荐页面。
如果电子设备200为显示设备,则自定义唤醒词可以是基于用户界面输入的语音指令。例如,在显示设备显示视频播放界面时,自定义唤醒词可以包含例如“播放”、“暂停”、“全屏播放”、“退出全屏”、“X倍速”等关键词,示例性为“2倍速播放”。
又例如,在显示设备显示购物界面或者媒资选择界面时,自定义唤醒词可以包含例如“上一页”、“下一页”、“第X页”、“第X个”等关键词,示例性为“查看第2个商品的详情”。
又例如,车载终端显示器的界面中包括至少一个可触控按钮,这些可触控按钮的功能触发指令均可作为自定义唤醒词,例如“播放CD”、“打开蓝牙”等。这样,电子设备若检测到用户语句中包含自定义唤醒词,则可自行唤醒语音应用,并在唤醒成功后控制语音应用执行对应的控制指令。
又例如,用户说出“打开空调的制冷模式”,智能家居语音控制系统识别到该语句中包含自定义唤醒词“打开空调”,则唤醒语音应用,语音应用向智能空调发送控制指令,以控制智能空调启动并进入制冷模式。自定义唤醒场景不限于本申请实施例的示例。
自定义唤醒方式存在至少如下几个问题:
问题一,自定义唤醒方式需要针对大量唤醒词进行训练和优化,算法模型复杂,运算量大,若算法模型配置于电子设备200,可能降低电子设备200的运行性能,增加电子设备200的负荷,甚至不适配电子设备200的芯片性能。
问题二,参照图1~图4的配置形式,可以将自定义唤醒技术的算法模型配置于服务器100端,这样电子设备200将用户的语音数据上传至服务器100,由服务器100调用算法模型并执行自定义唤醒任务。但这种方式要求电子设备200与服务器100保持联网,一旦断网则无法触发自定义唤醒,并且同步上传用户语音数据还会暴露用户隐私。
问题三,自定义唤醒存在误唤醒和唤醒率下降(漏唤醒)问题,影响用户对语音控制功能的使用体验。
本申请以下实施例提供一种语音唤醒方案,针对问题一和问题二,通过优化算法模型,降低算法模型的复杂度,实现兼容更多电子设备200的芯片性能,提升自定义唤醒在电子设备端侧执行的可行性,这样电子设备不必保持与服务器的联网,也无需将用户输入的语音数据上传服务器,达到保护用户隐私的目的。针对问题三,本申请实施例采用动态文本匹配算法,对模型输出的语音识别结果进行文本动态匹配,降低误唤醒,提升自定义唤醒方式的唤醒率和唤醒准确性,从而为用户提供更好的语音控制功能。
图7为本申请一些实施例提供的电子设备端自定义语音唤醒的处理架构的示意图。参见图7,该处理架构可以包括音频前端处理模块71、语音识别模块72和文本动态匹配模块73。电子设备的声音采集器接收到语音信号后,将语音信号发送至音频前端处理模块71,音频前端处理模块71用于对语音信号进行预处理,并将预处理后的语音信号发送至语音识别模块72。其中,音频前端处理模块71的预处理包括但不限于回声消除、噪声抑制、语音端点检测等环节,预处理的目的是便于语音识别模块72的处理,提升语音识别的准确性。语音信号的预处理方式可以参照相关技术,本申请实施例不再赘述。
在一些实施例中,语音识别模块72配置有语音识别模型,语音识别模块72将预处理后的语音信号输入至语音识别模型,由语音识别模型对该语音信号进行处理,以将语音信号转化为本文信息,并将该文本信息发送至文本动态匹配模块73。文本动态匹配模块73对文本信息进行动态匹配,并输出唤醒结果,唤醒结果包括不唤醒和允许唤醒。电子设备根据该唤醒结果,决策是否唤醒语音应用,以及在唤醒语音应用后执行与自定义唤醒词对应的语音指令。
图7示例的处理架构以及架构中各模块配置的算法可适用于不同系统(包括但不限于安卓、Windows和Linux等)的电子设备。以下实施例将对该架构执行的语音唤醒方法、语音识别模块72和文本动态匹配模块73的算法配置进行详细说明。
基于图7的架构,图8为本申请一些实施例提供的语音唤醒方法的流程图。参见图8,该方法由电子设备端侧执行,包括如下步骤:
步骤S81,接收声音采集器采集并传输的语音数据。
步骤S82,对语音数据进行语音处理,得到语音数据转换的文本信息。
在一些实施例中,电子设备可以控制音频前端处理模块71对语音数据进行预处理,以及控制语音识别模块72对预处理后的语音数据进行语音处理,语音处理包括但不限于语义分析、意图识别等,语音处理时使用的算法模型不限定。若电子设备芯片性能受限,可以参照图3和图4的示例,由服务器端执行语音处理流程。
步骤S83,按照预设长度对文本信息进行截取以获得备选文本。
在一些实施例中,可以参照与电子设备关联的至少一个自定义唤醒词的平均长度或最大长度,设置预设长度,预设长度可以大于自定义唤醒词的平均长度或最大长度。例如,自定义唤醒词的最大长度一般为5~6个字,则预设长度可以设置为10字。
通过预设长度截取文本信息以获取备选文本,可以降低后续文本动态匹配算法的运算量,缩减或过滤掉某些无效文字(例如语气词,“哎”等),有利于提升文本动态匹配的效率和准确性。
步骤S84,对自定义唤醒词和备选文本进行基于滑窗的动态匹配,获得自定义唤醒词和备选文本之间的最小编辑距离。
在一些实施例中,可以基于自定义唤醒词的长度设置滑窗,并利用滑窗在备选文本中的移动,实现文本字符间的逐步比较和动态匹配,以获取最小编辑距离,最小编辑距离用于衡量自定义唤醒词和备选文本之间的相似性/匹配度,最小编辑距离越小通常匹配度越高,表明备选文本与自定义唤醒词越相似。
步骤S85,根据最小编辑距离,计算置信度。
在一些实施例中,可以根据自定义唤醒词和备选文本之间的最小编辑距离,结合自定义唤醒词的长度,计算置信度,置信度用于衡量唤醒语音应用的可信程度。
步骤S86,判断置信度是否大于阈值。
如果置信度大于阈值,则执行步骤S87;反之,如果置信度不大于阈值,则执行步骤S88。
步骤S87,唤醒语音应用。
步骤S88,不唤醒语音应用。
图9为本申请一些实施例提供的一种语音识别模型的示意图。参见图9,语音识别模块72配置的语音识别模型包括编码器(Encoder)、解码器(Decoder)、联合器(Joint)、分类器。电子设备可以使用该语音识别模型实现上述步骤S82。
在一些实施例中,参见图9,该语音识别模型的输入为语音特征向量组成的序列,对应语音帧,记作xt;该语音识别模型的输出为建模单元组成的序列,记作yu,建模单元可以是音素、字符或者字词。语音识别模块72可以将t时刻的语音帧xt输入至编码器,使编码器对该音频帧进行编码;语音识别模块72可以将语音识别模型在先非空白的历史输出数据yu-M…yu-2,yu-1输入至解码器,其中M用于表征历史输出与u时刻输出之间的间隔,解码器对该历史输出数据进行解码。
在一些实施例中,编码器可采用transformer结构,transformer结构要求输入的是对数梅尔谱图特征,因此语音识别模块72可以先对语音数据进行对数梅尔谱图特征的提取。
图10为本申请一些实施例提供的基于transformer结构的输入特征提取的流程图。参见图10,语音识别模块72可对语音数据依次进行预加重、分帧、加窗、FFT(FastFourier Transform,快速傅里叶变换)、幅值平方、Mel滤波器组、对数功率、对数梅尔谱图生成等处理,由此获得对数梅尔谱图特征,将该对数梅尔谱图特征输入至编码器。其中,对数梅尔谱图特征的维度表示为[T,F],T为时间帧数,F为编码前的音频特征维度;编码器输出的编码序列可表示为输出维度表示为[T,D],D为编码器的输出特征维度。
在一些实施例中,解码器可以选用如CNN(Convolutional Neural Network,卷积神经网络)、RNN(Recurrent Neural Network,循环神经网络)等结构。解码器可以首先对历史输出的标签进行嵌入操作,获得标签向量Vl,然后将标签向量Vl输入解码器的神经网络结构(例如RNN)进行解码,解码器输出的解码序列可以表示为输出维度表示为[U,D],U表示标签字符的个数,D为解码器的输出特征维度,编解码器的输出特征维度保持一致。
在一些实施例中,参见图9,编码器和解码器的输出端均连接联合器。联合器可以包括多个(例如2个)线性层,联合器用于对编码器和解码器的输出进行联合,联合器的输出结果可表示为联合器通过矩阵变换输出的特征维度表示为[T,D,V],V表示词汇表的大小。本申请中联合器可以视作一种Joint Network(联合神经网络),联合器可以通过如MLP(Multi-layer Perceptron,多层感知器模型)等结构实现。
在一些实施例中,参见图9,联合器将输出结果zt,u发送至分类器,由分类器获取当前时刻输出的概率分布p(y|t,u),p(y|t,u)用于表征每个可能类别(即识别的文本信息)的概率大小。这样,语音识别模块72可以获取用户语音转换成的文本信息,例如获取最大概率或者高于阈值概率映射的目标文本信息。
在一些实施例中,分类器可以使用Softmax等结构,则p(y|t,u)的计算方式如以下公式一所示:
在公式一中,T表示输入的时间帧,U表示标签字符的个数,表示ti时刻的语音帧,ti是对应语音帧的时间变量,/>表示ui-1时刻的历史输出,ui-1是对应历史输出的时间变量。
本申请实施例中语音识别模块72配置的算法模型具备的优势包括:编码器模型网络层数更少,模型涉及的参量较少,并且无需多个模型级联,能够缩减模型的计算量,降低语音识别模型的复杂度,利于模型的训练和扩展,能够适配大多数电子设备的芯片性能,提升语音识别和自定义唤醒在电子设备端侧执行的可行性,这样电子设备可以不必保持与服务器的联网,也无需将用户输入的语音数据上传服务器,有益于保护用户隐私。
在一些实施例中,语音识别模块72在对语音数据进行处理并获得文本信息后,可以将该文本信息输入至文本动态匹配模块73。文本动态匹配模块73配置有文本动态匹配算法,该算法可以提高自定义唤醒的唤醒率,降低误唤醒率。这样,通过语音识别模块72和文本动态匹配模块73的配合,可以提升电子设备端侧执行自定义唤醒任务时的唤醒率和准确性。
图11为本申请一些实施例提供的文本动态匹配算法的流程图,电子设备可以使用图11示例的文本动态匹配算法实现上述步骤S83~步骤88。假设自定义唤醒词为Keys,语音识别模块72识别的文本信息为TextWord,参见图11,在当前时刻t,文本动态匹配算法的运算逻辑如下:
步骤1:根据自定义唤醒词Keys,从文本信息TextWord中截取候选文本Text。
在一些实施例中,自定义唤醒词具有一定长度,假设最大长度的自定义唤醒词包括M个字,则文本动态匹配模块73可以截取文本信息TextWord的后N个字,N大于M,并按照后N个字的原始排序组合成截取候选文本Text。例如,一个自定义唤醒词示例为“打开空调”,文本信息TextWord示例为“打开空调的制冷模式二十度”,假设N=10,则候选文本Text被截取为“空调的制冷模式二十度”。通过将文本信息TextWord适度缩减为候选文本Text,可以降低后续文本动态匹配的计算量,提升匹配效率。
步骤2:将自定义唤醒词Keys和候选文本Text转换为目标格式。
在一些实施例中,文本动态匹配模块73可以将自定义唤醒词Keys和候选文本Text分别进行UTF-8编码,将两者转换为统一的UTF-8格式,以提升后续匹配的准确性。其中,UTF-8是一种编码格式,每个字节包含8个比特(bit),UTF-8是针对Unicode的一种可变长度字符编码,其特点是可对不同范围的字符使用不同长度的编码,可以用来表示Unicode标准中的任何字符,并且其编码中的第一个字节仍与ASCII相容,使得原来处理ASCII字符的软件无须或只进行少部分修改后便可继续使用。
步骤3:将自定义唤醒词Keys和候选文本Text转换为拼音。
在一些实施例中,为便于字符匹配,文本动态匹配模块73可以分别对自定义唤醒词Keys和候选文本Text进行拼音转换,以将两者由汉字结构转变为拼音结构。文本动态匹配模块73可以配置拼音转换子模块,这样文本动态匹配模块73将自定义唤醒词Keys和候选文本Text分别输入至拼音转换子模块,由拼音转换子模块生成自定义唤醒词Keys的第一拼音p_Keys,以及生成候选文本Text对应的第二拼音p_Text。例如,一个自定义唤醒词示例为“播放歌曲”,则对应的p_Keys示例为“bofanggequ”。
步骤4:获取自定义唤醒词Keys的拼音长度h,以拼音长度h为滑窗对p_Text进行截取,以及按照预设步长移动滑窗。其中,预设步长不限定,例如为1个字母。
图12为本申请一些实施例提供的文本动态匹配时的滑窗移动机制。参见图12,当前自定义唤醒词Keys示例为“打开空调”,第一拼音p_Keys示例为“dakaikongtiao”,则自定义唤醒词Keys的拼音长度h为13个字母,文本动态长匹配模块73可以生成可容纳13个字母的滑窗window。
参见图12,假设候选文本Text被截取为“空调的制冷模式二十度”,第二拼音p_Text示例为“kongtiaodezhilengmoshiershidu”,则滑窗window首先截取的是“kongtiaodezhi”,假设预设步长为1个字母,则移动滑窗下一次截取的是“ongtiaodezhil”,以此类推,直至滑窗最终截取“gmoshiershidu”,滑窗总共移动16步。
在首次截取滑窗,以及滑窗按照预设步长沿目标方向每移动一步时,循环执行以下步骤5。其中,目标方向可以是沿第二拼音p_Text从左至右的方向。
步骤5:计算自定义唤醒词Keys的第一拼音p_Keys与滑窗当前截取的拼音串之间的最小编辑距离。
将自定义唤醒词Keys的第一拼音p_Keys简称为A,将滑窗在p_Text中截取的拼音字符串简称为B,则文本动态匹配模块73可以创建一个维度为[h+1,h+1]的矩阵DI,便于计算编辑距离DI[i][j],i表示A中字母的序号,j表示B中字母的序号,1≤i≤h,1≤j≤h,DI[i][j]表示A的前i个字母转换为B的前j个字母所需执行的编辑操作的最小次数。最小编辑距离可用于评估A和B之间的相似度,通常A和B之间的最小编辑距离越小则越相似。
在一些实施例中,在创建矩阵DI之后,可以对矩阵DI进行初始化,其中DI[i][0]表示将A的前i个字母构成的拼音串转换成空串所需的最小修改次数,当j=0时,DI[i][0]=i。DI[0][j]表示将空串转换成B的前j个字母构成的拼音串所需的最小修改次数,当i=0时,DI[0][j]=j。如果A的第i个字母与B的第j个字母相同,即满足A[i]=B[j],则DI[i][j]=DI[i-1][j-1]。
在一些实施例中,编辑操作包括但不限于插入、删除和替换等。例如在“to”之后插入字母p,则字符串变为“top”;又例如,删除“eat”中的字母e,则字符串变为“at”;又例如,将“deer”中的第3个字母e替换为字母a,则字符串变为“dear”。
在一些实施例中,如果A的第i个字母与B的第j个字母不同,则可以针对不同类型的编辑操作,分别计算编辑距离。
步骤5.1:如果在A的第i个字母后插入B的第j个字母,使得A的前i个字母与B的前j+1个字母相同,则有编辑距离DI[i][j]1=DI[i][j-1]+1。
步骤5.2:如果将A的第i个字母替换为B的第j个字母,则有编辑距离DI[i][j]2=DI[i-1][j-1]+1。
步骤5.3:如果删除A的第i个字母,使得A的前i-1个字母与B的前j个字母相同,则有编辑距离DI[i][j]3=DI[i-1][j]+1。
步骤5.4:将步骤5.1~步骤5.3三种情况中编辑距离的最小值作为编辑距离DI[i][j],DI[i][j]=min{DI[i][j]x∣x=1,2,…,R},其中x表示编辑操作的类型序号,R为编辑操作包括的类型总数。例如,R等于3时,x=1对应插入操作,x=2对应替换操作,x=3对应删除操作,则DI[i][j]的计算如公式二所示:
步骤5.5:根据DI矩阵的初始值,从i=0和j=0开始,循环遍历i和j,直至得到DI[h][h]k。DI[h][h]k表示自定义唤醒词Keys的第一拼音p_Keys与滑窗移动k步后截取的拼音串之间的最小编辑距离,即A与B之间的最小编辑距离。
步骤6:按照预设步长移动滑窗,循环执行步骤5,直至滑窗结束移动。
步骤7:获取自定义唤醒词Keys的第一拼音p_Keys与候选文本Text的第二拼音p_Text之间的最小编辑距离d。
将候选文本Text的第二拼音p_Text简称为C,利用d表示p_Keys与p_Text之间的最小编辑距离,即A与C之间的最小编辑距离,则d=min{DI[h][h]k∣k=0,1,…Q},其中k表示滑窗的移动步数,DI[h][h]k表示p_Keys与滑窗移动k步后截取的拼音串之间的最小编辑距离,Q表示滑窗完整遍历p_Text时移动的总步数。
获取滑窗以步移模式遍历p_Text时的DI[h][h]k的最小值,从而得到p_Keys与p_Text之间的最小编辑距离d,该最小编辑距离d可以衡量自定义唤醒词与候选文本之间的相似性,以便文本动态匹配模块73决策是否唤醒语音应用。
步骤8:根据p_Keys的拼音长度h和最小编辑距离d,计算置信度c。
在一些实施例中,置信度c的计算方式如公式三所示:
步骤9:判断置信度c是否大于阈值Th。
如果置信度c大于阈值Th,认为自定义唤醒词与候选文本的匹配度较高,则执行步骤10;如果置信度c不大于阈值Th,认为自定义唤醒词与候选文本匹配度低,则执行步骤11。
步骤10,输出唤醒结果为允许唤醒。
步骤11,输出唤醒结果为不唤醒。
通过文本动态匹配模块73配置的上述步骤1~步骤11的算法,可以提高电子设备端侧执行自定义唤醒的准确性,提高唤醒率,降低漏唤醒和误唤醒,增进语音控制功能。
在一些实施例中,语音应用被唤醒后,可以根据文本信息中包含的非唤醒意图,生成语音控制指令。其中,非唤醒意图是指用户语音中除唤醒语音应用之外包含的其他意图,例如用户朝智能电视的麦克风说出“播放电影S”,如果“打开新闻频道”与某一自定义唤醒词高度匹配,则除了唤醒智能电视的语音应用之外,还能识别到的意图为起播电影S,则语音应用可以生成匹配该意图的语音控制指令。
在一些实施例中,语音应用可以将语音控制指令发送给执行对象,以使该执行对象执行语音控制指令指示的程序,从而完成语音的识别、响应和执行等控制环节。其中,执行对象可以为电子设备的软件程序或硬件结构,软件程序例如为媒体播放器、不同的软件功能模块等,硬件结构例如为音频播放设备、显示器等。
本申请一些实施例还提供一种计算机存储介质,该计算机存储介质可存储有程序。当计算机存储介质配置在电子设备中时,该程序执行时可以包括以上实施例中语音唤醒方法包括的程序步骤。其中,计算机存储介质可为磁碟、光盘、只读存储记忆体(英文:Read-Only Memory,简称ROM)或随机存储记忆体(英文:Random Access Memory,简称RAM)等。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述示例性的讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释本公开的内容,从而使得本领域技术人员更好的使用所述实施方式。
Claims (10)
1.一种电子设备,其特征在于,包括:
声音采集器,用于采集用户输入的语音数据;
控制器,用于执行:
接收所述声音采集器采集并传输的语音数据;
对所述语音数据进行语音处理,得到语音数据转换的文本信息;
按照预设长度对所述文本信息进行截取以获得备选文本;
对自定义唤醒词和所述备选文本进行基于滑窗的动态匹配,获得自定义唤醒词和所述备选文本之间的最小编辑距离;
根据所述最小编辑距离,计算置信度;
如果所述置信度大于阈值,唤醒语音应用,所述语音应用用于响应用户输入的语音指令;
如果所述置信度不大于所述阈值,不唤醒所述语音应用。
2.根据权利要求1所述的电子设备,其特征在于,在对自定义唤醒词和所述备选文本进行基于滑窗的动态匹配之前,所述控制器还用于执行:
将所述自定义唤醒词和所述备选文本统一转换为目标格式;
对格式转换后的所述自定义唤醒词进行拼音转换,获得第一拼音;
对格式转换后的所述备选文本进行拼音转换,获得第二拼音。
3.根据权利要求2所述的电子设备,其特征在于,所述控制器对自定义唤醒词和所述备选文本进行基于滑窗的动态匹配,包括:
根据所述第一拼音的长度生成滑窗;
在所述滑窗按照预设步长和目标方向沿所述第二拼音移动时,利用所述滑窗截取所述第二拼音,获得所述滑窗当前截取的拼音串;
计算第一拼音与所述滑窗移动k步后截取的拼音串之间的最小编辑距离DI[h][h]k,其中k表示滑窗的移动步数,h表示所述第一拼音的长度;
计算所述第一拼音与所述第二拼音之间的最小编辑距离d,d=min{DI[h][h]k∣k=0,1,…Q},其中,Q表示所述滑窗完整遍历第二拼音时移动的总步数。
4.根据权利要求3所述的电子设备,其特征在于,所述控制器按照如下方式计算所述置信度:
其中,c表示所述置信度。
5.根据权利要求3所述的电子设备,其特征在于,所述控制器计算第一拼音与所述滑窗移动k步后截取的拼音串之间的最小编辑距离DI[h][h]k,包括:
创建维度为[h+1,h+1]的矩阵DI,所述矩阵DI用于计算编辑距离DI[i][j]x,其中,i表示所述第一拼音中字母的序号,j表示所述滑窗移动k步后截取的拼音串中字母的序号,1≤i≤h,1≤j≤h,x表示编辑操作的类型序号,DI[i][j]x表示将所述第一拼音的前i个字母转换为所述拼音串的前j个字母所需执行的第x种编辑操作的最小次数;
以i=0和j=0为起始,遍历i和j,并计算编辑距离DI[i][j],直至i=j=h,得到最小编辑距离DI[h][h]k;其中,DI[i][j]=min{DI[i][j]x∣x=1,2,…,R},R表示所述编辑操作包括的类型总数。
6.根据权利要求5所述的电子设备,其特征在于,所述编辑操作的类型包括插入、替换和删除,则有:
x=1:DI[i][j]1=DI[i][j-1]+1;
x=2:DI[i][j]2=DI[i-1][j-1]+1;
x=3:DI[i][j]3=DI[i-1][j]+1;
其中,x=1对应插入操作,DI[i][j]1表示在所述第一拼音的第i个字母后插入所述拼音串的第j个字母,使得所述第一拼音的前i个字母与所述拼音串的前j+1个字母相同时的编辑距离;
x=2对应交换操作,DI[i][j]2表示将所述第一拼音的第i个字母替换为所述拼音串的第j个字母时的编辑距离;
x=3对应删除操作,DI[i][j]3表示删除所述第一拼音的第i个字母,使得所述第一拼音的前i-1个字母与所述拼音串的前j个字母相同时的编辑距离。
7.根据权利要求5所述的电子设备,其特征在于,如果所述第一拼音的第i个字母与所述拼音串的第j个字母相同,则有DI[i][j]=DI[i-1][j-1]。
8.根据权利要求1所述的电子设备,其特征在于,所述电子设备配置有语音识别模型,所述语音识别模型包括编码器、解码器、联合器和分类器,所述编码器和所述解码器的输出端均连接所述联合器的输入端,所述联合器的输出端连接所述分类器,则所述控制器对所述语音数据进行语音处理,包括:
将所述声音采集器采集的语音帧输入至所述编码器;
将所述语音识别模型的历史输出数据输入至所述解码器;
将所述编码器和所述解码器的输出结果输入至所述联合器;
将所述联合器的输出结果输入至所述分类器,以使所述分类器输出至少一个所述文本信息及其概率。
9.根据权利要求1所述的电子设备,其特征在于,在唤醒语音应用之后,所述控制器还用于执行:
控制所述语音应用根据所述文本信息包含的非唤醒意图,生成语音控制指令;
将所述语音控制指令发送给执行对象,以使所述执行对象执行所述语音控制指令指示的程序,所述执行对象为所述电子设备的软件或硬件。
10.一种语音唤醒方法,其特征在于,包括:
接收用户输入的语音数据;
对所述语音数据进行语音处理,得到语音数据转换的文本信息;
按照预设长度对所述文本信息进行截取以获得备选文本;
对自定义唤醒词和所述备选文本进行基于滑窗的动态匹配,获得自定义唤醒词和所述备选文本之间的最小编辑距离;
根据所述最小编辑距离,计算置信度;
如果所述置信度大于阈值,唤醒语音应用,所述语音应用用于响应用户输入的语音指令;
如果所述置信度不大于所述阈值,不唤醒所述语音应用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311395235.0A CN117809630A (zh) | 2023-10-25 | 2023-10-25 | 一种电子设备及语音唤醒方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311395235.0A CN117809630A (zh) | 2023-10-25 | 2023-10-25 | 一种电子设备及语音唤醒方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117809630A true CN117809630A (zh) | 2024-04-02 |
Family
ID=90434037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311395235.0A Pending CN117809630A (zh) | 2023-10-25 | 2023-10-25 | 一种电子设备及语音唤醒方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117809630A (zh) |
-
2023
- 2023-10-25 CN CN202311395235.0A patent/CN117809630A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021082941A1 (zh) | 视频人物识别方法、装置、存储介质与电子设备 | |
KR102309540B1 (ko) | 사용자의 입력 입력에 기초하여 타겟 디바이스를 결정하고, 타겟 디바이스를 제어하는 서버 및 그 동작 방법 | |
WO2021036644A1 (zh) | 一种基于人工智能的语音驱动动画方法和装置 | |
US20220139393A1 (en) | Driver interface with voice and gesture control | |
KR102309031B1 (ko) | 지능형 에이전트 관리 방법 및 장치 | |
US11393465B2 (en) | Artificial intelligence apparatus for speech interaction and method for the same | |
US11580970B2 (en) | System and method for context-enriched attentive memory network with global and local encoding for dialogue breakdown detection | |
US20200219384A1 (en) | Methods and systems for ambient system control | |
CN112040263A (zh) | 视频处理方法、视频播放方法、装置、存储介质和设备 | |
CN111819625A (zh) | 用于语言模型个性化的系统和方法 | |
CN114038457B (zh) | 用于语音唤醒的方法、电子设备、存储介质和程序 | |
CN112735418A (zh) | 一种语音交互的处理方法、装置、终端及存储介质 | |
CN112182196A (zh) | 应用于多轮对话的服务设备及多轮对话方法 | |
WO2022227507A1 (zh) | 唤醒程度识别模型训练方法及语音唤醒程度获取方法 | |
US20230081558A1 (en) | Electronic device and operation method thereof | |
CN117809630A (zh) | 一种电子设备及语音唤醒方法 | |
CN114999496A (zh) | 音频传输方法、控制设备及终端设备 | |
CN114627859A (zh) | 一种脱机语义识别电子相框的方法及系统 | |
CN114822598A (zh) | 服务器及语音情感识别方法 | |
CN114627864A (zh) | 显示设备与语音交互方法 | |
US20220319497A1 (en) | Electronic device and operation method thereof | |
CN114047901B (zh) | 人机交互方法及智能设备 | |
CN111880645B (zh) | 基于用户的语音输入确定目标设备并控制目标设备的服务器及其操作方法 | |
US20230267934A1 (en) | Display apparatus and operating method thereof | |
US20220406308A1 (en) | Electronic apparatus and method of controlling the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |