一种eswfst构建方法
【专利摘要】本发明公开了一种ESWFST构建方法,该ESWFST构建方法包括,对WFST的八元组进行定义;将正则文法转换成WFST;对WFST进行序列的运算;嵌入文法名称;把文法名称加入词典之后进行处理;经解码器进行处理;生成ESWFST的格式;对结果进行识别。该ESWFST构建方法在基于自然语言的语义理解过程中,特别是在文法识别的应用中(如导航类应用),语音识别结果的展现形式能够给予理解过程更多的辅助信息,从而提升识别结果的可理解性。
【专利说明】
一种ESWFST构建方法
技术领域
[0001 ]本发明属于语音识别技术领域,尤其涉及一种ESWFST构建方法。
【背景技术】
[0002] WFST技术是语音识别过程中解码器采用的一种静态解码技术,该技术能够有效的 把声学模型和语言模型的信息结合在一起,在解码器开始工作之前,已经静态的构建了解 码空间。目前,该技术被应用于大多数主流解码器采用,成为语音识别技术中一个重要的分 支。
[0003] 近年来,随着语音识别的识别率不断提高,基于自然语言的语义理解系统的性能 也得到了显著的提升,特别是限定识别空间的语义理解过程,该识别空间限制能够被识别 出来的语言集总数,语义理解只需要在限定识别空间上进行理解。但一般的做法是先识别 出来文本结果,然后再将文本结果和对应的空间正则表达进行匹配,继而通过建立的映射, 有效映射至语义理解参数。或在全局语义表达空间上进行解析,根据句子语言属性挖掘其 中的语义表达形式。这些方法都有一个缺点,就是在语义解析过程会丢失识别过程中对解 码器对文法路径的选择过程,需要有额外的成本开销进行匹配和理解。传统的WFST构建语 音识别所用的资源时失去了语法本身和解码过程中的属性。
【发明内容】
[0004] 本发明的目的在于提供一种ESWFST构建方法,旨在解决在语义解析过程会丢失识 别过程中对解码器对文法路径的选择过程,需要有额外的成本开销进行匹配和理解的问 题。
[0005] 本发明是这样实现的,该ESWFST构建方法包括以下步骤:
[0006] 步骤一、对WFST的八元组进行定义;
[0007] 步骤二、将正则文法转换成WFST;
[0008] 步骤三、对WFST进行序列的运算;
[0009]步骤四、嵌入文法名称;
[0010] 步骤五、把文法名称加入词典之后进行处理;
[0011] 步骤六、经解码器进行处理;
[0012] 步骤七、生成ESWFST的格式 [0013]步骤八、对结果进行识别。
[0014]本发明还采取如下技术措施:
[0015] 对ESWFST进行序列的运算包括:det、min运算。
[0016] 嵌入文法名称的方法包括以下步骤:
[0017] 步骤一、文法解析时,碰到文法名称,添加一条空边与其所指内容相连接,并添加_ namej各式的词,其权值由当前链接决定;
[0018] 步骤二、文法结束后,输入_root_A,作为树的根结点。
[0019] 声学模型中不包含文法名称发音的处理方式为把辅助符号作为文法名称的发音。
[0020] 解码时对词处理的方法:
[0021 ]出现_XXJ#式词时,不会应用插入惩罚策略;
[0022]出现_XXJ#式词时,不会尝试对齐其时间边界;
[0023]对于_XXJ#式词时,置信度的计算进行区分。
[0024] 本发明具有的优点和积极效果是:该ESWFST构建方法在基于自然语言的语义理解 过程中,特别是在文法识别的应用中(如导航类应用),语音识别结果的展现形式能够给予 理解过程更多的辅助信息,从而提升识别结果的可理解性。这种技术也是语法类识别被广 泛应用于语音导航类产品的原因。嵌入语义的WFST(简称ESWFST,Embed Semantic Weighted Finite-State Transducer)是在构建WFST时加入有助于语义理解或分析过程的 语义信息的一种技术,ESWFST从实际构词过程中确定句子的构词结构和包含的语法信息, 使其不但能够在句法层面上使计算机有效的理解一句话中独立的实体词的含义,同时辅助 计算机理解一句话中的逻辑关系的表达,实现对本句话的语义理解。
【附图说明】
[0025] 图1是本发明实施例提供的ESWFST构建方法的流程图;
[0026] 图2是本发明实施例提供的嵌入文法名称的方法流程图;
[0027]图3是本发明实施例提供的a | b正则结构对应的WFST格式图;
[0028]图4是本发明实施例提供的ab正则结构对应的WFST格式图;
[0029]图5是本发明实施例提供的a*b正则结构对应的WFST格式图;
[0030]图6是本发明实施例提供的文法被如正则的WFST格式图;
[0031]图7是本发明实施例提供的用ESWFST技术构建的WFST格式图;
[0032] 图8是本发明实施例提供的式(3)对应语法树;
[0033] 图9是本发明实施例提供的式(4)对应语法树。
【具体实施方式】
[0034]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明 进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于 限定本发明。
[0035]下面结合附图1至9及具体实施例对本发明的应用原理作进一步描述。
[0036] 该ESWFST构建方法包括以下步骤:
[0037] S101、对WFST的八元组进行定义;WFST可以被如下的八元组进行定义:
[0038] T=(Q,E, T ,I,F,E,A,p) (1)
[0039] 上式(l)中,Q表示状态集,E表示输入符号集,r表示输出符号集,i表示初始状态 集,F表示终止状态集,c e y r x e是连接状态的边集合,X表示起始结点的权值映 射,P表示终止结点的权值映射;
[0040] S102、将正则文法转换成WFST;正则文法与正则表达式是等价的,任何一个正则文 法总是可以转化成一个等价的正则表达式;同时,正则表达式与有限自动机是等价的,一个 可以被有限自动机识别的语言必然是可以用正则表达式来表示的,而一个用正则表达式表 示的语言一定可以用一个有限自动机来识别;
[0041]从理论上,语音识别所面对的解码语言空间是无限集的,但从指定语言模型构建 开始,WFST给语音识别引擎提供了一个有限状态集的文本句子搜索空间;假定这个有限状 态集的搜索空间是由正规语言提供的,正规语言能够通过应用有限次的某个标准操作从一 元的语言(词)产生,同时,正规语言能够被有限自动机识别;
[0042]下面列举构造正规文法的三种操作转换到对应的WFST的形式,如列表所示
[0043] l、a|b,WFST对应如图3所示;
[0044] 2、a b,WFST对应如图4所示;
[0045] 3、a*b,WFST对应如图5所示;
[0046]对于由上面三种操作写成的正规文法,都可以同时被表示成WFST的形式。
[0047] S103、对WFST进行序列的运算,以保证给语音识别引擎确定的、最小化的ESWFST; [0048]以下面的文法为例:
[0049] #JSGF VI.0;
[0050] grammar command;
[0051] public<command> = <action> | (<action>and<command>);
[0052] <action> = stop | start;
[0053]如上面的文法可以被如下的正则所表示
[0054] p=A|(AbP) (2)
[0055] A = c | d;表示成WFST如图6所示:
[0056] 用ESWFST技术构建的WFST格式如图7所示,可以直接从文法表达式(2)生成WFST的 格式,但像P和A这些组织文法结构的符号没有被WFST的输入或输出集合继承,导致文法部 分含义被丢失,对基于文法的资源解码器来说,保留文法结构会使识别结果自动含有文法 解析信息,从而易于进一步的语义分析。
[0057] ESWFST与WFST相区分的主要点在于ESWFST的构建过程中能够保留句法结构。这些 词在解码器的识别结果中也保留,从而维持文法结构的完整性。其具有以下性质:
[0058] UESWFST资源中包含这些句法结构词。
[0059 ] 2、每一个正则表达文法都与一条识别的路径相对应。
[0060] 3、对于一个任何识别结果,都存在语法树与其对应。
[0061 ] 构建ESWFST流程的运算都是在定义的半环中进行,包括compose、determinize、 minimize、push过程等。但ESWFST也有其特殊性,因为在WFST构建过程中,主要是解析表达 文法所表达的内容,而不会去表达文法在表达内容过程中的结构。所以相比WFST构建, ESWFST需要处理几个方面的问题。
[0062] S104、嵌入文法名称;
[0063] S105、把文法名称加入词典之后进行处理;
[0064]在把文法名称加入词典之后,声学模型中不包含文法名称发音的处理方式为把辅 助符号作为文法名称的发音。将#phi作为文法名称词的发音,在生成词典的transducer时, 需要对该符号作特殊处理,使其能够成为连接边,同时,跳过该辅助发音的声学模型有效性 检查。
[0065] S106、经解码器进行处理;
[0066] S107、生成 ESWFST 的格式;
[0067] S108、对结果进行识别。
[0068] 对ESWFST进行序列的运算包括:det、min运算这两种运算会在定义的域上保持原 有的输入和输出的顺序关系,这也是ESWFST运算能够用于语音识别引擎构建搜索空间的基 础。
[0069] 嵌入文法名称的方法包括以下步骤:
[0070] S201、文法解析时,碰到文法名称,添加一条空边与其所指内容相连接,并添加_ namej各式的词,其权值由当前链接决定;
[0071 ] S202、文法结束后,输入_r〇〇t_A,作为树的根结点。
[0072] 解码时对词处理的方法:
[0073] 出现_XXJ#式词时,不会应用插入惩罚策略;
[0074] 出现_XXJ#式词时,不会尝试对齐其时间边界;
[0075] 对于_XXJ#式词时,置信度的计算进行区分。
[0076]对结果进行识别中,
[0077] ESWFST构建资源之后,识别结果中会包含文法名称,并可以很容易的解析为语法 树的结果。如识别结果为
[0078] _root-action_start (3)
[0079] _root-action_start and_command-action_stop (4)
[0080] 上面的结果中包含了正则描述的结构或过程,分别可以转换为如下的语法树结 构,通过附图8、9就可以看出ESWFST和WFST的识别结果区别了,在WFST的时候,识别结果是 ESWFST对应的叶子结点,而ESWFST的识别结果包含了树干,而这些树干正是正则文法解析 叶子的路径,可以视为叶子的正则表达。
[0081]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
【主权项】
1. 一种ESWFST构建方法,其特征在于,该ESWFST构建方法包括以下步骤: 步骤一、对WFST的八元组进行定义; 步骤二、将正则文法转换成WFST; 步骤三、对WFST进行序列的运算; 步骤四、嵌入文法名称; 步骤五、把文法名称加入词典之后进行处理; 步骤六、经解码器进行处理; 步骤七、生成ESWFST的格式; 步骤八、对结果进行识别。2. 如权利要求1所述的ESWFST构建方法,其特征在于,对ESWFST进行序列的运算包括: det、min 运算。3. 如权利要求1所述的ESWFST构建方法,其特征在于,嵌入文法名称的方法包括以下步 骤: 步骤一、文法解析时,碰到文法名称,添加一条空边与其所指内容相连接,并添加_ namej各式的词,其权值由当前链接决定; 步骤二、文法结束后,输入_root_A,作为树的根结点。4. 如权利要求1所述的ESWFST构建方法,其特征在于,声学模型中不包含文法名称发音 的处理方式为把辅助符号作为文法名称的发音。5. 如权利要求1所述的ESWFST构建方法,其特征在于,解码时对词处理的方法: 出现_XXJ#式词时,不会应用插入惩罚策略; 出现_XXJ#式词时,不会尝试对齐其时间边界; 对于_XXJ#式词时,置信度的计算进行区分。
【文档编号】G10L15/193GK105895091SQ201610210222
【公开日】2016年8月24日
【申请日】2016年4月6日
【发明人】赵茂祥, 何国涛, 李全忠, 蒲瑶
【申请人】普强信息技术(北京)有限公司