语音识别内容的确定方法、装置、电子设备和存储介质与流程
未命名
07-27
阅读:104
评论:0
1.本技术涉及语音识别技术领域,尤其涉及一种语音识别内容的确定方法、装置、电子设备和存储介质。
背景技术:
2.在需要对设定内容进行语音识别的场景下,通常是基于固定语法识别对语法格式文件进行解析,例如,对基于扩展巴科斯范式(extended backus
–
naur form,ebnf)语法编写的语法格式文件进行解析,以确定识别对应的设定内容。
3.相关技术中,在对语法格式文件进行解析确定语音识别内容的过程中,发现会占用较多的资源和占用较大的内存空间,因此,如何降低占用的资源和空间,是亟需要解决的技术问题。
技术实现要素:
4.本技术提出一种语音识别内容的确定方法、装置、电子设备和存储介质,降低了资源占用和内容占用,提高了效率。
5.本技术一方面实施例提出了一种语音识别内容的确定方法,包括:
6.获取待解析的语法格式文件中包括的第一变量语句;其中,所述第一变量语句中包括引用的变量;
7.获取引用的变量对应的第一子图的存储位置,其中,第一子图是对引用的变量对应的第二变量语句进行建图得到的;
8.基于所述第一子图的存储位置对所述第一变量语句进行建图,以得到所述第一变量语句对应的第二子图;
9.根据所述第二子图对所述语法格式文件中的主执行语句进行解析,以确定所述主执行语句对应的语音识别的目标内容。
10.本技术另一方面方面实施例提出了一种语音识别内容的确定装置,包括:
11.第一获取模块,用于获取待解析的语法格式文件中包括的第一变量语句;其中,所述第一变量语句中包括引用的变量;
12.第二获取模块,用于获取引用的变量对应的第一子图的存储位置,其中,第一子图是对引用的变量对应的第二变量语句进行建图得到的;
13.建图模块,用于基于所述第一子图的存储位置对所述第一变量语句进行建图,以得到所述第一变量语句对应的第二子图;
14.第一确定模块,用于根据所述第二子图对所述语法格式文件中的主执行语句进行解析,以确定所述主执行语句对应的语音识别的目标内容。
15.本技术另一方面实施例提出了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如前述一方面所述的方法。
16.本技术另一方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述一方面所述的方法。
17.本技术另一方面实施例提出了一种计算机程序产品,其上存储有计算机程序,所述程序被处理器执行时实现如前述一方面所述的方法。
18.本技术另一方面实施例提出了一种车辆,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如前述一方面所述的方法。
19.本技术提出的语音识别内容的确定方法、装置、电子设备和存储介质,获取待解析的语法格式文件中包括的第一变量语句,其中,第一变量语句中包括引用的变量,获取引用的变量对应的第一子图的存储位置,基于第一子图的存储位置对第一变量语句进行建图,以得到第一变量语句对应的第二子图,根据第二子图,对语法格式文件中的主执行语句进行解析,以确定主执行主语对应的语音识别的目标内容,通过在对第一变量语句建图的过程中,采用引用变量的位置信息对引用变量的解码图进行替换,降低了第一变量语句建图的复杂度和需要占用的存储空间,实现了降低cpu的资源利用和内存的占用。
附图说明
20.本技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
21.图1为本技术实施例所提供的一种语音识别内容的确定方法的流程示意图;
22.图2为本技术实施例提供的一种第一子图的示意图;
23.图3为本技术实施例提供的另一种语音识别内容的确定方法的流程示意图;
24.图4为本技术实施例提供的另一种第一子图的示意图;
25.图5为本技术实施例提供的一种第二子图的示意图;
26.图6为本技术实施例提供的另一种语音识别内容的确定方法的流程示意图
27.图7为本技术实施例提供的另一种第二子图的示意图;
28.图8为本技术实施例提供的另一种语音识别内容的确定方法的流程示意图;
29.图9为本技术实施例提供的一种语音识别内容的确定装置的结构示意图;
30.图10为本公开实施例提供的一种电子设备的结构框图。
具体实施方式
31.下面详细描述本技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本技术,而不能理解为对本技术的限制。
32.下面参考附图描述本技术实施例的语音识别内容的确定方法、装置、电子设备和存储介质。
33.图1为本技术实施例所提供的一种语音识别内容的确定方法的流程示意图。
34.本技术实施例的语音识别内容的确定方法的执行主体为语音识别内容的确定装置,该装置可设置于终端设备中,终端设备可以为电子设备,电子设备包含智能手机、掌上电脑、智能穿戴设备等,本实施例中不进行限定。
35.如图1所示,该方法可以包括以下步骤:
36.步骤101,获取待解析的语法格式文件中包括的第一变量语句。
37.其中,第一变量语句中包括引用的变量。
38.作为一种实现方式,语法格式文件,例如为xbnf文件,xbnf文件是固定语音识别中编写语法时采用的文件格式,其中,固定语音识别相对于通用语音识别,是指对设定内容进行识别,对于语音内容不属于设定内容的语音则无法识别。xbnf文件是采用扩展巴科斯范式(extended backus
–
naur form,ebnf)语法作为基础语法,ebnf也可称为扩展巴科斯范式,是基本巴科斯范式(bnf)元语法符号表示法的一种扩展。通过xbnf文件用以限定固定语音识别的识别范围,即识别的设定内容。
39.xbnf文件包含变量语句和主执行语句,例如:
40.$hello=你好;
41.《s》$hello《/s》
[0042]“《s》”和“《/s》”之间的是主执行语句,其中包含的内容即为固定语音识别所能识别的范围,在上面的例子中,识别内容是“你好”。
[0043]
变量语句以“$”开头,变量定义语法为:
[0044]
$变量名=变量内容;
[0045]
以“$”开始标明变量名,以分号结束,变量名由字母或者中文组成,引用变量时直接使用“$变量名”,例如:
[0046]
$hello=你好;
[0047]
$问好=$hello|hello;
[0048]
则变量“$问好”的内容为“你好|hello”,其中,变量“$hello”是采用常量定义的变量,变量“$hello”的内容为“你好”,变量“$问好”对应的变量语句中,包括了引用的变量“$hello”,其中,“|”是建图的语法。
[0049]
其中,第一变量语句可以为一个或多个,而不同的第一变量语句的建图方法相同,本实施例中不一一列举。
[0050]
步骤102,获取引用的变量对应的第一子图的存储位置。
[0051]
其中,第一子图是对引用的变量对应的第二变量语句进行建图得到的。
[0052]
本技术实施例中,第一变量语句中引用的变量为至少一个,针对引用的每一个变量,均获取该变量对应的第二变量语句进行建图得到的第一子图的存储位置,也就是说该变量对应的第二变量语句已经完成建图,而第二变量语句可以是常量定义的变量语句,或者是变量定义的变量语句,本实施例中不进行限定。其中,第一子图中包含了变量对应的内容,同理,第二子图包含了第一变量语句对应的第一变量对应的内容。
[0053]
为了简化,以第二变量语句为常量定义的变量语句为例进行说明,例如,第二变量语句为:$人名=张小三|王小二;
[0054]
则对第二变量语句建图,作为一种实现方式,首先将“张小三”按字切分形成主路径(0
→1→2→
3,其中,0、1、2和3为节点),然后将“王小二”按字切分形成路径(4
→5→6→
7,其中,4、5、6和7为节点),最后用空边(0
→
4,7
→
3)连接到主路径中,注意图中边上的“《eps》”代表这是一条空边,空边没有输出内容,一般只用于方便建图或建网的操作。从而,得到如图2所示的第二变量语句对应的第一子图。
[0055]
需要说明的是,变量中包含的语法不同,建图方式则不同,本实施例中对于不同的语法,和基于该语法建图的过程,因原理相似,不一一列举。
[0056]
本技术实施例中,预先对第一变量语句中引用的变量对应的第二变量语句进行建图,得到第二变量语句对应的第一子图,而该变量对应的第一子图中可能包含的节点数和边数非常多,使得第一子图占用较多的内存,从而,本技术中建立引用的该变量对应的第一子图和存储位置间的映射关系,采用引用的该变量对应的第一子图的存储位置来替代第一子图,以降低该变量被引用时需要的内存。
[0057]
步骤103,基于第一子图的存储位置对第一变量语句进行建图,以得到第一变量语句对应的第二子图。
[0058]
本技术实施例中,在对第一变量语句进行建图的过程中,不对引用的变量对应的第一子图在第一变量语句建图的过程中展开,而是采用第一子图的存储位置来替换第一子图,以建图得到第一变量语句对应的第二子图,以降低占用的内存,同时也可以提高第二子图的建图效率。尤其在该变量占用较大的内存,而该变量被多次调用的场景下,可以降低占用的内存,提高对语法格式文件中包括的变量的建图效率。
[0059]
步骤104,根据第二子图对语法格式文件中的主执行语句进行解析,以确定主执行语句对应的语音识别的目标内容。
[0060]
本技术实施例中,在对第一变量语句建图完成,以及对语法格式文件中的其他采用常量定义的变量语句也建图完成后,则对语法格式文件中的主执行语句进行解析,具体是对主执行语句也进行建图,在建图的过程中会将主执行语句中引用的所有的变量均展开以得到包含目标内容的图,进而基于该包含目标内容的图,以得到主执行语句对应的语音识别的目标内容,进而,根据目标内容实现对获取的语音中目标内容的识别,实现了在需要进行设定内容识别的场景下,可基于语法格式文件确定待识别的目标内容,基于目标内容实现特定内容的识别,提高了识别的针对性,提高了识别的准确性。
[0061]
本技术实施例的语音识别内容的确定方法中,获取待解析的语法格式文件中包括的第一变量语句,其中,第一变量语句中包括引用的变量,获取对变量对应的第二变量语句进行建图得到的第一子图的存储位置,采用第一子图的存储位置,对第一变量语句进行建图,以得到第一变量语句对应的第二子图,根据第二子图,对语法格式文件中的主执行语句进行解析,以确定主执行主语对应的语音识别的目标内容,通过在对第一变量语句建图的过程中,采用引用变量的位置信息对引用变量的解码图进行替换,降低了第一变量语句建图的复杂度和需要占用的存储空间,实现了降低中央处理器(central processing unit,简称cpu)的资源利用和内存的占用。
[0062]
基于上述实施例,图3为本技术实施例提供的另一种语音识别内容的确定方法的流程示意图,如图3所示,该方法包含以下步骤:
[0063]
步骤301,获取待解析的语法格式文件中包括的第一变量语句。
[0064]
其中,第一变量语句中包括引用的变量。
[0065]
步骤302,获取引用的变量对应的第一子图的存储位置。
[0066]
其中,第一子图是对引用的变量对应的第二变量语句进行建图得到的。
[0067]
其中,步骤301和步骤302可参照前述实施例中的解释说明,原理相同,此处不再赘述。
[0068]
步骤303,确定第一子图的存储位置对应的索引值。
[0069]
本技术实施例中,生成第一子图后即确定第一子图的存储位置,该存储位置指示预设的存储区域中的一个区域,每一个存储位置都可以对应一个索引值,也就是说可确定第一子图的存储位置和索引值的对应关系。其中,第一子图的存储位置可以是按照设定的存储位置依次配置的,或者是根据剩余的存储位置随机确定的,本实施例中不进行限定。
[0070]
需要说明的是,每一个变量语句生成的子图的存储位置都会确定唯一的一个索引值,以采用该索引值唯一指示一个变量语句对应的子图。也就是说对每一个引用的变量,通过该引用的变量的名称,可以查找到该引用的变量对应的第一子图的存储位置,根据存储位置和索引值的对应关系,可根据该引用的变量的名称查找到用于指示对应的第一子图的存储位置的索引值。
[0071]
步骤304,根据第一变量语句包含的语法规则,确定该引用的变量对应的第一子图对应的第一节点,并通过有向边连接第一节点,以生成第二子图。
[0072]
其中,第一节点包括第一子图的存储位置对应的索引值;有向边携带了所连接的第一节点对应的第一子图的开始节点信息和/或结束节点信息。
[0073]
本技术实施例的一种实现方式中,第一变量语句中包含引用的变量,也就是说第一变量语句是采用引用的变量来定义的,则根据第一变量语句包含的语法规则,确定第一变量语句中引用的变量对应的第一子图对应的第一节点,也就是说每一个第一节点指示的是引用的变量对应的第一子图的存储位置对应的索引值,进而采用有向边连接第一节点,以生成第二子图。
[0074]
作为一种示例,语法格式文件中包括的变量语句为:
[0075]
$digit=(零|一|二|三|四|五|六|七|八|九);
[0076]
$num=($digit)/min=1,max=3/;
[0077]
其中,第一变量语句为$num=($digit)/min=1,max=3/;引用的变量“$digit”对应的第二变量语句为$digit=(零|一|二|三|四|五|六|七|八|九);其中,第二变量语句中采用常量定义了变量“$digit”。
[0078]
根据第二变量语句包含的语法规则“|”,意思为:或者,对于“|”分隔开的内容,先选择第一个部分按字进行切分形成一条主路径,然后将剩余的每一个部分分别按字进行切分形成一条路径,用空边连接到主路径中,得到第二变量语句对应的第一子图,如图4所示。进而,确定第一子图对应的索引值为m,也就是说第一子图存储在索引值为m的存储区域中。
[0079]
根据第一变量语句,建图得到第二子图,具体来说,第一变量语句中的语法规则“/min=a,max=b/”限定了最少和最多的次数,根据第一变量语句包含的语法规则,确定引用的变量“$digit”对应的第一子图最少为1个,最多为3个,确定第一变量语句中引用的变量对应的第一子图对应的第一节点为3个,标记为第一节点0,第一节点1和第一节点2,每一个第一节点指示一个第一子图。进而采用有向边连接3个节点,得到如图5中所示的第二子图,也就是说第二子图被简化为包含3个节点和4个有向边,降低了建图的复杂度,节省了建图的时间和占用的内存。如图5中所示,其中,4个有向边中包含连接第一节点0和第一节点1之间的有向边,连接第一节点1和第一节点2之间的有向边,以及由第一节点1指向第一节点1的有向边,和由第一节点2指向第一节点2的有向边,其中,由第一节点1指向第一节点1的有向边,和由第一节点2指向第一节点2的有向边均为空边,代表第一节点1和第一节点2携带
的索引值指示的第一子图可以被跳过,从而实现重复最少1次,最多3次。其中,第一节点0,第一节点1和第一节点2均包括第一子图的存储位置对应索引值m,索引值m代表了索引位置为0的存储区域中的第一子图。第一节点0,第一节点1和第一节点2均代表一个第一子图,而每个第一子图中都包含一个开始和一个结束,其中,开始对应开始节点,结束对应结束节点,从而,连接第一节点0和第一节点1的有向边,是从第一节点0指向第一节点1,然而,第一节点0和第一节点1均代表了索引值m对应的存储位置存储的第一子图,因此,本技术中连接第一节点0和第一节点1的有向边,还携带了开始节点信息和结束节点信息,结束节点信息为从第一节点0对应的第一子图的结束节点引出,开始节点信息为指向第一节点1对应的第一子图的开始节点,即从第一节点0对应的第一子图的结束节点引出指向第一节点1对应的第一子图的开始节点。同理,对于图5中连接第一节点的其他有向边所携带的起始信息和结束信息的确定方法相同,此处不一一列举。
[0080]
需要说明的是,图5中虚线中的第一子图在第二子图中并不存在,图5仅为便于理解进行的示意。
[0081]
步骤305,根据第二子图,对语法格式文件中的主执行语句进行解析,以确定主执行语句对应的语音识别的目标内容。
[0082]
具体地,可参照前述实施例中的解释说明,原理相同,此处不再赘述。
[0083]
本技术实施例的语音识别内容的确定方法中,在对各个变量语句进行解析建图的过程中,采用节点携带的索引值替换要访问或拷贝的图,降低了在对变量语句解析建图过程中的复杂度,降低了占用的cpu资源和内存,而只在生成最终的主执行语句时进行访问和拷贝操作,以及消除出现递归引用时被引用变量cpu资源占用和内存占用增加的传递性,达到大大的降低cpu资源占用和内存占用的目的。
[0084]
基于上述实施例,图6为本技术实施例提供的另一种语音识别内容的确定方法的流程示意图,如图6所示,该方法包含以下步骤:
[0085]
步骤601,获取待解析的语法格式文件中包括的第一变量语句。
[0086]
其中,第一变量语句中包括引用的变量。
[0087]
步骤602,获取引用的变量对应的第一子图的存储位置。
[0088]
其中,第一子图是对引用的变量对应的第二变量语句进行建图得到的。
[0089]
其中,步骤601和步骤602可参照前述实施例中的解释说明,原理相同,此处不再赘述。
[0090]
步骤603,确定第一子图的存储位置对应的索引值。
[0091]
本技术实施例中,生成第一子图后即确定第一子图的存储位置,该存储位置指示预设的存储区域中的一个区域,每一个存储位置都可以对应一个索引值,也就是说可确定第一子图的存储位置和索引值的对应关系。
[0092]
需要说明的是,每一个变量语句生成的子图的存储位置都会确定唯一的一个索引值,以采用该索引值唯一指示一个变量语句对应的子图。也就是说对每一个引用的变量,通过该引用的变量的名称,可以查找到该引用的变量对应的第一子图的存储位置,根据存储位置和索引值的对应关系,可根据该引用的变量的名称查找到用于指示对应的第一子图的存储位置的索引值。
[0093]
步骤604,根据第一变量语句包含的语法规则,确定第一变量语句中引用的变量对
应的第一子图对应的第一节点和常量对应的第二节点,通过有向边连接第一节点和第二节点,以生成第二子图。
[0094]
其中,第一节点包括第一子图的存储位置对应的索引值;有向边携带了所连接的第一节点对应的第一子图的开始节点信息和/或结束节点信息。
[0095]
本技术实施例的一种实现方式中,第一变量语句中包含引用的变量和常量,也就是说第一变量语句是采用引用的变量和常量来定义的,则根据第一变量语句包含的语法规则,确定第一变量语句中的常量对应的第二节点和第一变量语句中引用的变量对应的第一子图对应的第一节点。
[0096]
作为一种示例,语法格式文件中包括的变量语句为:
[0097]
$digit=(零|一|二|三|四|五|六|七|八|九);
[0098]
$人名=$digit|小二;
[0099]
其中,第一变量语句为$人名=$digit|小二;第一变量语句中包含引用的变量和常量,即采用引用的变量和常量一起来定义了第一变量语句中的变量“$人名”,引用的变量“$digit”对应的第二变量语句为$digit=(零|一|二|三|四|五|六|七|八|九);其中,第二变量语句中采用常量定义了变量“$digit”。
[0100]
根据第二变量语句包含的语法规则,对第二变量语句进行建图得到第一子图,第一子图如图4所示。进而确定第一子图对应的索引值为m,也就是说第一子图存储在索引值为m的存储区域中,具体可参照上一实现方式中的解释说明,此处不再赘述。
[0101]
根据第一变量语句,建图得到第二子图,具体来说,第一变量语句中的语法规则“|”为“或者”,根据第一变量语句包含的语法规则,确定第一变量语句中引用的变量对应的第一子图对应的第一节点为1个,标记为第一节点0,而第二节点为3个,标记为第二节点1、第二节点2和第二节点3,其中,第二节点1、第二节点2和第二节点3均不携带指示第一子图的索引值m,而第一节点0携带的索引值m指示了第一子图。进而采用有向边连接4个节点,得到如图7中所示的第二子图,也就是说第二子图被简化为包含4个节点和4个有向边,降低了建图的复杂度,节省了建图的时间和占用的内存。
[0102]
如图7所示,用4个有向边实现了对第一节点和第二节点的连接,其中,第二节点1指向第一节点0的有向边携带了第一节点0指向的第一子图的开始节点信息,而由第一节点0指向第二节点3的有向边,携带了第一节点0指向的第一子图的结束节点信息,其他连接第二节点的有向边均不携带起始信息和结束信息,携带的是输出的内容,例如,小或二。
[0103]
需要说明的是,图7中虚线中的第一子图在第二子图中并不存在,而是示意图7中的第一节点0携带的索引值m指示的是该第一子图,也就是说图7仅为便于理解进行的示意。
[0104]
步骤606,根据第二子图,对语法格式文件中的主执行语句进行解析,以确定主执行语句对应的语音识别的目标内容。
[0105]
具体地,可参照前述实施例中的解释说明,原理相同,此处不再赘述。
[0106]
本技术实施例的语音识别内容的确定方法中,在对各个变量语句进行解析建图的过程中,采用节点携带的索引值替换要访问或拷贝的图,降低了在对变量语句解析建图过程中的复杂度,降低了占用的cpu资源和内存,而只在生成最终的主执行语句时进行访问和拷贝操作,以及消除出现递归引用时被引用变量cpu资源占用和内存占用增加的传递性,达到大大的降低cpu资源占用和内存占用的目的。
[0107]
基于上述实施例,图8为本技术实施例提供的另一种语音识别内容的确定方法的流程示意图,如图8所示,该方法包括:
[0108]
步骤801,获取映射关系表,根据语法格式文件中的主执行语句查找映射关系表,以确定不存在语法格式文件中的主执行语句和目标内容间的第一映射关系。
[0109]
其中,映射关系表中,包含解析完成的主执行语句和语音识别的内容之间的映射关系。
[0110]
本技术实施例中,针对固定语法识别建网以确定识别的特定内容的场景,例如,在多个页面来回切换时,需要加载不同页面对应的语法格式文件以确定要识别的目标内容,可对解析建图完成的主执行语句对应的目标内容进行缓存,以实现在不同的页面间切换时,若缓存中包含该页面对应的目标内容,则不需要重复解析,即建图的过程,可加快基于目标内容进行语音识别初始化的速度。作为一种实现方式,可预先维护一个解析完成的主执行语句和语音识别的内容的映射关系表,通过该映射表可确定当前需要解析语法格式文件中的主执行语句对应的目标内容是否在缓存中,在确定不存在语法格式文件中的主执行语句和目标内容间的第一映射关系的情况下,则需要采用本技术实施例的语音识别内容的确定方法对待解析的语法格式文件中的主执行语句进行解析,以提高识别速度。
[0111]
步骤802,获取待解析的语法格式文件中包括的第一变量语句。
[0112]
其中,第一变量语句中包括引用的变量。
[0113]
步骤803,获取对引用的变量对应的第二变量语句进行建图得到的第一子图的存储位置。
[0114]
步骤804,基于第一子图的存储位置,对第一变量语句进行建图,以得到第一变量语句对应的第二子图。
[0115]
步骤805,根据第二子图对语法格式文件中的主执行语句进行解析,以确定主执行语句对应的语音识别的目标内容。
[0116]
其中,步骤802至步骤805可参照前述实施例中的解释说明,原理相同,此处不再赘述。
[0117]
步骤806,确定映射关系表中包含的映射关系的数量,响应于数量大于或等于设定数量,获取映射关系表中包含的各个映射关系对应的访问次数和访问时间。
[0118]
步骤807,采用语法格式文件中的主执行语句和目标内容间的第一映射关系替换映射关系表中的第二映射关系。
[0119]
其中,第二映射关系对应的访问次数小于设定阈值次数,或者,预设时长内未被访问。
[0120]
本技术实施例中,确定映射关系表中包含的映射关系的数量为n,即最多可以保存n个主执行语句的目标内容。当完成一个xbnf文件中主执行语句的解析之后,若映射关系表中已保存的映射关系个数大于或等于n,则需要选出一个映射关系进行替换,进行替换的方法,作为一种实现方式,选出一个最长时间没有被访问过的第二映射关系进行替换;作为另一种实现方式,选出一个被访问次数最少的第二映射关系进行替换。
[0121]
步骤808,响应于数量小于设定数量,将第一映射关系存储至映射关系表中。
[0122]
本技术实施例中,确定映射关系表中包含的映射关系的数量为n,即最多可以保存n个主执行语句的目标内容。当完成一个xbnf文件中主执行语句的解析之后,若映射关系表
中已保存的映射关系个数小于n,则直接将该主执行语句的目标内容进行保存,并将该第一映射关系保存到映射关系表中,实现了基于映射关系表维护语法格式文件中的主执行语句和目标内容间的映射关系,降低运算量。
[0123]
本技术实施例的语音识别内容的确定方法中,在对各个变量语句进行解析建图的过程中,采用节点携带的索引值替换要访问或拷贝的图,降低了在对变量语句解析建图过程中的复杂度,降低了占用的cpu资源和内存,而只在生成最终的主执行语句时进行访问和拷贝操作,以及消除出现递归引用时被引用变量cpu资源占用和内存占用增加的传递性,达到大大的降低cpu资源占用和内存占用的目的。
[0124]
为了实现上述实施例,本技术实施例还提出一种语音识别内容的确定装置。
[0125]
图9为本技术实施例提供的一种语音识别内容的确定装置的结构示意图。
[0126]
如图9所示,该装置可以包括:
[0127]
第一获取模块91,用于获取待解析的语法格式文件中包括的第一变量语句;其中,所述第一变量语句中包括引用的变量。
[0128]
第二获取模块92,用于获取引用的变量对应的第一子图的存储位置,其中,第一子图是对引用的变量对应的第二变量语句进行建图得到的。
[0129]
建图模块93,用于基于所述第一子图的存储位置,对所述第一变量语句进行建图,以得到所述第一变量语句对应的第二子图。
[0130]
第一确定模块94,用于根据所述第二子图对所述语法格式文件中的主执行语句进行解析,以确定所述主执行语句对应的语音识别的目标内容。
[0131]
进一步,在本技术实施例的一种实现方式中,所述装置,还包括:
[0132]
第二确定模块,用于确定所述第一子图的存储位置对应的索引值。
[0133]
在本技术实施例的一种实现方式中,建图模块93,具体用于:
[0134]
根据所述第一变量语句包含的语法规则,确定引用的所述变量对应的第一子图对应的第一节点;
[0135]
通过有向边连接所述第一节点,以生成所述第二子图;其中,所述第一节点包括所述第一子图的存储位置对应的索引值;所述有向边携带了所连接的第一节点对应的第一子图的开始节点信息和/或结束节点信息。
[0136]
在本技术实施例的一种实现方式中,建图模块93,具体用于:
[0137]
根据所述第一变量语句包含的语法规则,确定所述第一变量语句中引用的所述变量对应的第一子图对应的第一节点和常量对应的第二节点;
[0138]
通过有向边连接所述第一节点和所述第二节点,以生成所述第二子图;所述第一节点包括所述第一子图的存储位置对应的索引值;所述有向边携带了所连接的第一节点对应的第一子图的开始节点信息和/或结束节点信息。
[0139]
在本技术实施例的一种实现方式中,所述装置,还包括:
[0140]
第三获取模块,用于获取映射关系表;其中,所述映射关系表中,包含解析完成的主执行语句和语音识别的内容之间的映射关系;
[0141]
第三确定模块,用于根据所述语法格式文件中的主执行语句查找所述映射关系表,以确定不存在所述语法格式文件中的主执行语句和所述目标内容间的第一映射关系。
[0142]
在本技术实施例的一种实现方式中,所述装置,还包括:
[0143]
第四确定模块,用于确定所述映射关系表中包含的映射关系的数量;
[0144]
第四获取模块,用于响应于所述数量大于或等于设定数量,获取所述映射关系表中包含的各个映射关系对应的访问次数和访问时间;
[0145]
替换模块,用于采用所述语法格式文件中的主执行语句和所述目标内容间的第一映射关系替换所述映射关系表中的第二映射关系;其中,所述第二映射关系对应的访问次数小于设定阈值次数,或者,预设时长内未被访问。
[0146]
在本技术实施例的一种实现方式中,所述装置,还包括:
[0147]
存储模块,用于响应于所述数量小于设定数量,将所述第一映射关系存储至所述映射关系表中。
[0148]
需要说明的是,前述对方法实施例的解释说明也适用于该实施例的装置,此处不再赘述。
[0149]
本技术实施例的语音识别内容的确定装置中,在对各个变量语句进行解析建图的过程中,采用节点携带的索引值替换要访问或拷贝的图,降低了在对变量语句解析建图过程中的复杂度,降低了占用的cpu资源和内存,而只在生成最终的主执行语句时进行访问和拷贝操作,以及消除出现递归引用时被引用变量cpu资源占用和内存占用增加的传递性,达到大大的降低cpu资源占用和内存占用的目的。
[0150]
为了实现上述实施例,本技术还提出一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如前述方法实施例所述的方法。
[0151]
为了实现上述实施例,本技术还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现如前述方法实施例所述的方法。
[0152]
为了实现上述实施例,本技术还提出一种计算机程序产品,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述方法实施例所述的方法。
[0153]
图10为本公开实施例提供的一种电子设备的结构框图。图10示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。电子设备可以为终端设备或者为服务器。
[0154]
如图10所示,电子设备10包括处理器11,其可以根据存储在只读存储器(rom,read only memory)12中的程序或者从存储器16加载到随机访问存储器(ram,random access memory)13中的程序而执行各种适当的动作和处理。在ram 13中,还存储有电子设备10操作所需的各种程序和数据。处理器11、rom 12以及ram 13通过总线14彼此相连。输入/输出(i/o,input/output)接口15也连接至总线14。
[0155]
以下部件连接至i/o接口15:包括硬盘等的存储器16;以及包括诸如lan(局域网,local area network)卡、调制解调器等的网络接口卡的通信部分17,通信部分17经由诸如因特网的网络执行通信处理;驱动器18也根据需要连接至i/o接口15。
[0156]
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分17从网络上被下载和安装。在该计算机程序被处理器11执行时,执行本公开的方法中限定的上述功能。
[0157]
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器16,上述指令可由电子设备10的处理器11执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
[0158]
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
技术特征:
1.一种语音识别内容的确定方法,其特征在于,包括:获取待解析的语法格式文件中包括的第一变量语句;其中,所述第一变量语句中包括引用的变量;获取所述引用的变量对应的第一子图的存储位置;其中,所述第一子图是对所述引用的变量对应的第二变量语句进行建图得到的;基于所述第一子图的存储位置对所述第一变量语句进行建图,以得到所述第一变量语句对应的第二子图;根据所述第二子图对所述语法格式文件中的主执行语句进行解析,以确定所述主执行语句对应的语音识别的目标内容。2.如权利要求1所述的方法,其特征在于,所述基于所述第一子图的存储位置,对所述第一变量语句进行建图,以得到所述第一变量语句对应的第二子图之前,还包括:确定所述第一子图的存储位置对应的索引值。3.如权利要求2所述的方法,其特征在于,所述基于所述第一子图的存储位置,对所述第一变量语句进行建图,以得到所述第一变量语句对应的第二子图,包括:根据所述第一变量语句包含的语法规则,确定引用的所述变量对应的第一子图对应的第一节点;通过有向边连接所述第一节点,以生成所述第二子图;其中,所述第一节点包括所述第一子图的存储位置对应的索引值;所述有向边携带了所连接的第一节点对应的第一子图的开始节点信息和/或结束节点信息。4.如权利要求2所述的方法,其特征在于,所述基于所述第一子图的存储位置,对所述第一变量语句进行建图,以得到所述第一变量语句对应的第二子图,包括:根据所述第一变量语句包含的语法规则,确定所述第一变量语句中引用的所述变量对应的第一子图对应的第一节点和常量对应的第二节点;通过有向边连接所述第一节点和所述第二节点,以生成所述第二子图;所述第一节点包括所述第一子图的存储位置对应的索引值;所述有向边携带了所连接的第一节点对应的第一子图的开始节点信息和/或结束节点信息。5.如权利要求1-4任一项所述的方法,其特征在于,所述方法,还包括:获取映射关系表;所述映射关系表中包括解析完成的主执行语句和语音识别的内容之间的映射关系;根据所述语法格式文件中的主执行语句查找所述映射关系表,以确定不存在所述语法格式文件中的主执行语句和所述目标内容间的第一映射关系。6.如权利要求4所述的方法,其特征在于,所述方法,还包括:确定所述映射关系表中包含的映射关系的数量;响应于所述数量大于或等于设定数量,获取所述映射关系表中包含的各个映射关系对应的访问次数和访问时间;采用所述语法格式文件中的主执行语句和所述目标内容间的第一映射关系替换所述映射关系表中的第二映射关系;其中,所述第二映射关系对应的访问次数小于设定阈值次数,或者,预设时长内未被访问。7.如权利要求6所述的方法,其特征在于,所述方法,还包括:
响应于所述数量小于设定数量,将所述第一映射关系存储至所述映射关系表中。8.一种语音识别内容的确定装置,其特征在于,包括:第一获取模块,用于获取待解析的语法格式文件中包括的第一变量语句;其中,所述第一变量语句中包括引用的变量;第二获取模块,用于获取所述引用的变量对应的第一子图的存储位置;其中,所述第一子图是对所述引用的变量对应的第二变量语句进行建图得到的;建图模块,用于基于所述第一子图的存储位置对所述第一变量语句进行建图,以得到所述第一变量语句对应的第二子图;第一确定模块,用于根据所述第二子图对所述语法格式文件中的主执行语句进行解析,以确定所述主执行语句对应的语音识别的目标内容。9.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1-7中任一所述的方法。10.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1-7中任一所述的方法。11.一种车辆,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1-7中任一所述的方法。
技术总结
本申请提出一种语音识别内容的确定方法、装置、电子设备和存储介质,其中,方法包括:获取待解析的语法格式文件中包括的第一变量语句,其中,第一变量语句中包括引用的变量,获取引用的变量对应的第一子图的存储位置,基于第一子图的存储位置,对第一变量语句进行建图,以得到第一变量语句对应的第二子图,根据第二子图,对语法格式文件中的主执行语句进行解析,以确定主执行主语对应的语音识别的目标内容。通过在对第一变量语句建图的过程中,采用引用变量的位置信息对引用变量的解码图进行替换,降低了第一变量语句建图的复杂度和需要占用的存储空间,实现了降低CPU的资源利用和内存的占用。内存的占用。内存的占用。
技术研发人员:唐文琦 夏文静 阳家俊 刘晓博 陈伟
受保护的技术使用者:北京罗克维尔斯科技有限公司
技术研发日:2022.11.15
技术公布日:2023/7/25
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:密封组件和密封方法与流程 下一篇:一种可充放气的智能约束手套
