《一种语音文件查询方法和装置.pdf》由会员分享,可在线阅读,更多相关《一种语音文件查询方法和装置.pdf(16页完整版)》请在专利查询网上搜索。
1、10申请公布号CN104142974A43申请公布日20141112CN104142974A21申请号201410024095022申请日20140120G06F17/3020060171申请人腾讯科技(深圳)有限公司地址518044广东省深圳市福田区振兴路赛格科技园2栋东403室72发明人李露马建雄卢鲤74专利代理机构北京德琦知识产权代理有限公司11018代理人阎敏宋志强54发明名称一种语音文件查询方法和装置57摘要本发明提出一种语音文件查询方法和装置,其中方法包括将每个目标语音文件分别转换成对应的目标音节混淆网络;将待查询语音文件或待查询文本转换成对应的待查询音节混淆网络;计算所述待查询音。
2、节混淆网络与各个目标音节混淆网络的相似度,获取相似度最高的一个以上目标音节混淆网络所对应的目标语音文件。本发明能够提高语音查询的精确度。51INTCL权利要求书3页说明书9页附图3页19中华人民共和国国家知识产权局12发明专利申请权利要求书3页说明书9页附图3页10申请公布号CN104142974ACN104142974A1/3页21一种语音文件查询方法,其特征在于,所述方法包括将每个目标语音文件分别转换成对应的目标音节混淆网络;将待查询语音文件或待查询文本转换成对应的待查询音节混淆网络;计算所述待查询音节混淆网络与各个目标音节混淆网络的相似度,获取相似度最高的一个以上目标音节混淆网络所对应的。
3、目标语音文件。2根据权利要求1所述的方法,其特征在于,所述将目标语音文件转换成对应的目标音节混淆网络、或者将待查询语音文件转换成对应的待查询音节混淆网络的方式为利用音节解码器对所述目标语音文件或待查询语音文件进行解码,得到中间结果;利用框架LATTICE转换工具对所述中间结果进行转换,得到对应的音节混淆网络。3根据权利要求1所述的方法,其特征在于,所述将待查询文本转换成对应的待查询音节混淆网络的方式为将所述待查询文本划分为多个词;查找所述各个词对应的音节;将查找到的音节串联,得到音节序列Y1、Y2、YM,其中,M为音节的个数,YI(I1、2、M)为音节;构造初始节点V0和结束节点VM2;并构造。
4、(M1)个中间节点,包括V1、V2、VM1;构造V0与V1的之间的一条边,将该边的音节标签设置为空标签NULL,将该边的权重设置为1;构造VM1与VM2的之间的一条边,将该边的音节标签设置为NULL,将该边的权重设置为1;依次针对两个相邻的中间节点VI与VI1(I1,2,,M)构造一条边,将各条边的音节标签分别设置为Y1、Y2、YM,将每条边的权重均设置为1。4根据权利要求1所述的方法,其特征在于,所述将每个目标语音文件分别转换成对应的目标音节混淆网络之后进一步包括,建立所有目标音节混淆网络的索引,包括正排索引和倒排索引;所述正排索引包括各个目标音节混淆网络与音节混淆网络标识的对应关系;所述倒。
5、排索引包括目标音节混淆网络中的各个音节所属的目标音节混淆网络的音节混淆网络标识、以及该音节所对应的边的权重。5根据权利要求4所述的方法,其特征在于,所述计算待查询音节混淆网络与各个目标音节混淆网络的相似度的方式为查询所述所有目标音节混淆网络的索引,确定包含所述待查询音节混淆网络中所有音节的目标音节混淆网络;根据待查询音节混淆网络生成对应的状态转移查询表,采用所述状态转移查询表计算待查询音节混淆网络与所述确定出的各个目标音节混淆网络的相似度。6根据权利要求5所述的方法,其特征在于,所述采用状态转移查询表计算相似度的具体方式为针对该目标音节混淆网络的每个节点构造一个令牌,将该令牌的状态STATUS。
6、设置为所述状态转移查询表的初始状态,将该令牌的观测设置为NULL,将该令牌的权重设置为1,将该令牌的得分SCORE设置为0;针对各个令牌分别执行以下步骤A,得到最终存活令牌列表,并对最终存活令牌列表中所有令牌的得分求和,将求和结果作为待查询音节混淆网络与该目标音节混淆网络的相似度;权利要求书CN104142974A2/3页3A、判断所述当前令牌的观测是否为NULL,如果是,则执行步骤B;否则执行步骤C;B、在所述状态转移查询表中查询行取STATUS、并且列取NULL时对应的表格,设表格中的状态为STATUS,如果STATUS为状态转移表的终止状态,将当前令牌加入最终存活令牌列表,结束当前步骤;。
7、否则,删除当前令牌,在所述状态转移表中查询行取STATUS的非空表格C1CK,在当前位置构造K个新的令牌,每个新的令牌的状态为STATUS,观测为表格对应的列上的音节标签,权重为表格中的权重,得分为当前令牌的得分,针对所述新的令牌继续执行步骤A;C、设所述令牌的观测为OBSR,遍历所述目标音节混淆网络中以该令牌所在节点为出发点的各条边,如果所述各条边的音节标签均不为OBSR,则删除该令牌;如果有一条边上的音节标签为OBSR,则执行如下步骤在所述状态转移查询表中,查询行取STATUS、并且列取OBSR时对应的表格,设该表格对应的状态为STATUS,如果STATUS为状态转移表的终止状态,将当前令。
8、牌加入最终存活令牌列表,结束当前步骤;否则,删除当前令牌,在所述状态转移查询表中查询行取STATUS的非空表格C1CK,在该边的结束节点上构造K个新的令牌,每个令牌的状态为STATUS,观测为表格对应的列上的音节标签,权重为表格中的权重,得分SCORE更新为原SCORE与当前令牌权重与该边的权重的乘积之和,针对所述新的令牌继续执行步骤A。7一种语音文件查询装置,其特征在于,所述装置包括转换模块,用于将每个目标语音文件分别转换成对应的目标音节混淆网络;将待查询语音文件或待查询文本转换成对应的待查询音节混淆网络;相似度计算模块,用于计算所述待查询音节混淆网络与各个目标音节混淆网络的相似度;获取模块。
9、,用于获取相似度最高的一个以上目标音节混淆网络所对应的目标语音文件。8根据权利要求7所述的装置,其特征在于,所述转换模块将目标语音文件转换成对应的目标音节混淆网络、或者将待查询语音文件转换成对应的待查询音节混淆网络的方式为利用音节解码器对所述目标语音文件或待查询语音文件进行解码,得到中间结果;利用框架LATTICE转换工具对所述中间结果进行转换,得到对应的音节混淆网络。9根据权利要求7所述的装置,其特征在于,所述转换模块将待查询文本转换成对应的待查询音节混淆网络的方式为将所述待查询文本划分为多个词;查找所述各个词对应的音节;将查找到的音节串联,得到音节序列Y1、Y2、YM,其中,M为音节的个数。
10、,YI(I1、2、M)为音节;构造初始节点V0和结束节点VM2;并构造(M1)个中间节点,包括V1、V2、VM1;构造V0与V1的之间的一条边,将该边的音节标签设置为空标签NULL,将该边的权重设置为1;构造VM1与VM2的之间的一条边,将该边的音节标签设置为NULL,将该边的权重设置为1;依次针对两个相邻的中间节点VI与VI1(I1,2,,M)构造一条边,将各条边的音节标签分别设置为Y1、Y2、YM,将每条边的权重均设置为1。权利要求书CN104142974A3/3页410根据权利要求7所述的装置,其特征在于,所述转换模块还用于,建立所有目标音节混淆网络的索引,包括正排索引和倒排索引;所述正。
11、排索引包括各个目标音节混淆网络与音节混淆网络标识的对应关系;所述倒排索引包括目标音节混淆网络中的各个音节所属的目标音节混淆网络的音节混淆网络标识、以及该音节所对应的边的权重。11根据权利要求10所述的装置,其特征在于,所述相似度计算模块计算待查询音节混淆网络与各个目标音节混淆网络的相似度的方式为查询所述所有目标音节混淆网络的索引,确定包含所述待查询音节混淆网络中所有音节的目标音节混淆网络;根据待查询音节混淆网络生成对应的状态转移查询表,采用所述状态转移查询表计算待查询音节混淆网络与所述确定出的各个目标音节混淆网络的相似度。12根据权利要求11所述的装置,其特征在于,所述相似度计算模块采用状态转。
12、移查询表计算相似度的具体方式为针对该目标音节混淆网络的每个节点构造一个令牌,将该令牌的状态STATUS设置为所述状态转移查询表的初始状态,将该令牌的观测设置为NULL,将该令牌的权重设置为1,将该令牌的得分SCORE设置为0;针对各个令牌分别执行以下步骤A,得到最终存活令牌列表,并对最终存活令牌列表中所有令牌的得分求和,将求和结果作为待查询音节混淆网络与该目标音节混淆网络的相似度;A、判断所述当前令牌的观测是否为NULL,如果是,则执行步骤B;否则执行步骤C;B、在所述状态转移查询表中查询行取STATUS、并且列取NULL时对应的表格,设表格中的状态为STATUS,如果STATUS为状态转移表。
13、的终止状态,将当前令牌加入最终存活令牌列表,结束当前步骤;否则,删除当前令牌,在所述状态转移表中查询行取STATUS的非空表格C1CK,在当前位置构造K个新的令牌,每个新的令牌的状态为STATUS,观测为表格对应的列上的音节标签,权重为表格中的权重,得分为当前令牌的得分,针对所述新的令牌继续执行步骤A;C、设所述令牌的观测为OBSR,遍历所述目标音节混淆网络中以该令牌所在节点为出发点的各条边,如果所述各条边的音节标签均不为OBSR,则删除该令牌;如果有一条边上的音节标签为OBSR,则执行如下步骤在所述状态转移查询表中,查询行取STATUS、并且列取OBSR时对应的表格,设该表格对应的状态为ST。
14、ATUS,如果STATUS为状态转移表的终止状态,将当前令牌加入最终存活令牌列表,结束当前步骤;否则,删除当前令牌,在所述状态转移查询表中查询行取STATUS的非空表格C1CK,在该边的结束节点上构造K个新的令牌,每个令牌的状态为STATUS,观测为表格对应的列上的音节标签,权重为表格中的权重,得分SCORE更新为原SCORE与当前令牌权重与该边的权重的乘积之和,针对所述新的令牌继续执行步骤A。权利要求书CN104142974A1/9页5一种语音文件查询方法和装置技术领域0001本发明涉及语音检索技术领域,尤其涉及一种语音文件查询方法和装置。背景技术0002现有技术中,通常的语音文件查询方法有。
15、如下两种0003第一种首先,使用自动语音转写技术将每一条目标语音文件分别转换成对应的文字形式的目标文本文件,然后通过文本检索技术建立目标文本文件的索引。0004在查询过程中,输入文字查询词,比较查询词与每个目标文本文件的相似度,并根据相似度对目标文本文件进行排序,从而查询到与查询词最接近的目标文本文件,并最终得到与查询词最接近的目标语音文件。或者,在查询过程中,直接输入待查询语音文件,将待查询语音文件转换成对应的待查询文本文件,然后比较相似度,得到与待查询语音文件最接近的目标语音文件。0005第二种首先,将每一条目标语音文件分别转写成音节/音素序列。0006在查询过程中,将输入的文字查询词或待。
16、查询语音文件转写成音节/音素序列,通过比较音节/音素序列的相似度,得到与文字查询词或待查询语音文件最接近的目标语音文件。0007上述两种方法共同的缺点是需要将目标语音文件、以及文字查询词或待查询语音文件转写成文字或音节/音素形式,由于自然语音存在着口音多变、噪声环境复杂等问题,语音转写的错误率很高,因此造成语音查询的精确度不高。发明内容0008本发明提供了一种语音文件查询方法,能够提高语音查询的精确度。0009本发明还提供了一种语音文件查询装置,能够提高语音查询的精确度。0010本发明的技术方案是这样实现的0011一种语音文件查询方法,包括0012将每个目标语音文件分别转换成对应的目标音节混淆。
17、网络;0013将待查询语音文件或待查询文本转换成对应的待查询音节混淆网络;0014计算所述待查询音节混淆网络与各个目标音节混淆网络的相似度,获取相似度最高的一个以上目标音节混淆网络所对应的目标语音文件。0015一种语音文件查询装置,包括0016转换模块,用于将每个目标语音文件分别转换成对应的目标音节混淆网络;将待查询语音文件或待查询文本转换成对应的待查询音节混淆网络;0017相似度计算模块,用于计算所述待查询音节混淆网络与各个目标音节混淆网络的相似度;0018获取模块,用于获取相似度最高的一个以上目标音节混淆网络所对应的目标语音文件。0019可见,本发明提出的语音文件查询方法和装置,通过将目标。
18、语音文件和待查询语音文件/待查询文本转换成音节混淆网络,并比较音节混淆网络的相似度以实现语音文件说明书CN104142974A2/9页6查询,避免了将语音转写成文字或音节/音素形式过程中出现的错误,能够提高语音查询的精确度。附图说明0020图1为本发明提出的语音文件查询方法实现流程图;0021图2为音节混淆网络示意图;0022图3为实施例二的实现流程图;0023图4为实施例三中所应用的其中一个音节混淆网络示意图;0024图5为实施例三中构造成功的倒排索引示意图;0025图6为实施例五中所应用的查询音节混淆网络S的示意图;0026图7为本发明提出的语音文件查询装置结构示意图。具体实施方式0027。
19、本发明提出一种语音文件查询方法,如图1为该方法实现流程图,包括以下步骤0028步骤101将每个目标语音文件分别转换成对应的目标音节混淆网络;0029步骤102将待查询语音文件或待查询文本转换成对应的待查询音节混淆网络;0030步骤103计算所述待查询音节混淆网络与各个目标音节混淆网络的相似度,获取相似度最高的一个以上目标音节混淆网络所对应的目标语音文件。0031上述方法中,将目标语音文件和待查询语音文件/待查询文本转换成音节混淆网络,通过比较两个音节混淆网络的相似度,能够查询到包含待查询语音文件/待查询文本的目标语音文件。上述方法避免了将语音文件转写成文字或音节/音素形式,因此能够避免因该转换。
20、过程中出现错误而对语音查询造成的不利影响。0032以下举具体的实施例,分别介绍上述各个步骤的实现方式。0033实施例一0034本实施例介绍将目标语音文件或待查询语音文件转换成音节混淆网络的具体方式。0035首先介绍音节混淆网络。音节混淆网络是一种特殊的加权有向图结构,满足如下条件任意一条从初始节点到结束节点的路径必须经过所有的其他节点,图2给出了一个音节混淆网络的示例。把音节混淆网络的节点按顺序排成一个序列,边仅存在于相邻的两个节点之间,边上有音节标签和权重。两个相邻节点之间可以存在若干条边,所有边上的权重之和为1。0036从目标语音文件或待查询语音文件转换成到音节混淆网络的方式可以包括两个步。
21、骤首先使用音节解码器对目标语音文件或待查询语音文件进行解码,产生中间结果LATTICE;然后用框架(LATTICE)转换工具生成音节混淆网络。这两个步骤可以使用现有的工具,在此不再赘述。0037实施例二0038本实施例介绍将待查询文本转换成音节混淆网络的具体方式。0039转换过程大体分为两个部分,首先将待查询文本转换成音节序列,然后根据音节序列生成音节混淆网络。说明书CN104142974A3/9页70040参照图3,具体转换过程步骤举例如下0041步骤1输入待查询文本,例如“语音查询”;0042步骤2使用前向最大匹配分词算法将待查询文本划分为N个词语,记为W1、W2、WN。在本例中,可以划分。
22、为2个词语,分别为“语音”和“查询”。0043步骤3针对W1、W2、WN中的每个词,分别在标音词表中查找对应的音节。0044步骤4将查找到的音节串联起来,构成音节序列,记为Y1、Y2、YM。其中,M为音节的个数,YI(I1、2、M)为音节。在如图3中显示了生成的音节序列。0045步骤5构造初始节点V0和结束节点VM2;并构造(M1)个中间节点,包括V1、V2、VM1。0046构造V0与V1的之间的一条边,将该边的音节标签设置为空标签(NULL),将该边的权重设置为1;构造VM1与VM2的之间的一条边,将该边的音节标签设置为NULL,将该边的权重设置为1;依次针对两个相邻的中间节点VI与VI1(。
23、I1,2,,M)构造一条边,将各条边的音节标签分别设置为Y1、Y2、YM,将每条边的权重均设置为1。如图3中显示了转换得到的音节混淆网络。0047实施例三0048在上述步骤101中,还可以进一步建立所有目标音节混淆网络的索引;在上述步骤103中,可以查询通过查询该索引,确定包含待查询音节混淆网络中所有音节的目标音节混淆网络,之后计算待查询音节混淆网络与确定出的各个目标音节混淆网络的相似度。0049本实施例介绍建立索引的具体方式。0050目标音节混淆网络的索引包括正排索引和倒排索引。0051其中,正排索引中存储目标语音文件所对应的目标音节混淆网络与音节混淆网络标识的对应关系;0052倒排索引包括。
24、目标音节混淆网络中的各个音节所属的目标音节混淆网络的音节混淆网络标识、以及该音节所对应的边的权重。倒排索引中的索引单元为音节,索引项中记录音节所在的目标音节混淆网络的标识、该音节所对应的边的权重等信息。0053以下参照附图4和附图5介绍构造索引的具体实现方式。如图4为本实施例中所应用的其中一个音节混淆网络,该音节混淆网络的标识为SOURCE1927。图5为本实施例中构造成功的倒排索引,图5中针对每个音节有一条索引项列表,音节之后所连接的每一个框为该音节的一个索引项。0054构造索引的具体步骤包括0055步骤1输入音节混淆网络,每个音节混淆网络对应一个标识SID。0056步骤2将音节混淆网络及其。
25、对应的SID保存入正排索引。0057步骤3针对所有音节混淆网络中的各个音节,分别建立对应的索引项列表,该索引向列表中包括该音节。0058步骤4针对所有音节混淆网络中的每一条边,依次执行以下步骤,直至所有边被处理完毕。0059设边上的音节标签为LBL,权重为W,在倒排索引文件中查找LBL对应的索引项列表;构造索引项,记录该边所在音节混淆网络的标识SID、该边的权重W和其他信息;将构造好的索引项插入LBL对应的索引项列表中。说明书CN104142974A4/9页80060实施例四0061本实施例介绍使用音节混淆网络进行检索的具体方式。0062检索目的设待查询语音文件或待查询文本对应的待查询音节混淆。
26、网络为S,目标语音文件对应的目标音节混淆网络为D。如果S中至少一条从初始节点到结束节点的路径能够在D中找到,则认为检索成功。0063为了完成检索,可以将待查询音节混淆网络为转换为一张状态转移查询表。例如,待查询文本为“腾讯”时,其音节混淆网络对应的状态转移查询表如表10064NULLTENG2XUN4011012102310341040065表10066表1中,行号为状态,列号为音节标签。如果行取X、列取Y时,对应的表格不为空,则表示存在以状态为X的节点为起点、并且音节标签为Y的边;并且,该表格的内容包含该边的终点以及权重。例如,由1表所示的状态转移查询表可以看出,对应的音节混淆网络中,存在以。
27、状态为0的节点为起点、音节标签为NULL的一条边,并且该边的终点是状态为1的节点、该边的权重为10。0067以上介绍了状态转移查询表。以下介绍利用状态转移查询表计算待查询音节混淆网络与目标音节混淆网络的相似度的具体方式。包括以下步骤0068步骤1查询所有目标音节混淆网络的索引,确定包含待查询音节混淆网络中所有音节的目标音节混淆网络。具体可以采用如下方式0069根据待查询音节混淆网络中的音节序列Y1、Y2、YM查询目标音节混淆网络的索引,得到各个音节对应的目标音节混淆网络的集合,分别记为SET1、SET2、SETM;求SET1、SET2、和SETM的交集,得到同时包含音节Y1、Y2、和YM的待查。
28、询音节混淆网络的集合。0070步骤2根据待查询音节混淆网络为S生成对应的状态转移查询表T。0071步骤3针对集合SET中的每一个目标音节混淆网络DI,计算S与DI的相似度。计算相似度的具体方式为0072针对DI的每个节点构造一个令牌,将该令牌的状态STATUS设置为T的初始状态,将该令牌的观测设置为NULL,将该令牌的权重设置为1,将该令牌的得分SCORE设置为0;针对各个令牌分别执行以下步骤A,得到最终存活令牌列表,并对最终存活令牌列表中所有令牌的得分求和,将求和结果作为待查询音节混淆网络与该目标音节混淆网络的相似度;说明书CN104142974A5/9页90073A、判断所述当前令牌的观测。
29、是否为NULL,如果是,则执行步骤B;否则执行步骤C;0074B、在所述状态转移查询表中查询行取STATUS、并且列取NULL时对应的表格,设表格中的状态为STATUS,如果STATUS为状态转移表的终止状态,将当前令牌加入最终存活令牌列表,结束当前步骤;否则,删除当前令牌,在所述状态转移表中查询行取STATUS的非空表格C1CK,在当前位置构造K个新的令牌,每个新的令牌的状态为STATUS,观测为表格对应的列上的音节标签,权重为表格中的权重,得分为当前令牌的得分,针对所述新的令牌继续执行步骤A;0075C、设所述令牌的观测为OBSR,遍历所述目标音节混淆网络中以该令牌所在节点为出发点的各条边。
30、,如果所述各条边的音节标签均不为OBSR,则删除该令牌;如果有一条边上的音节标签为OBSR,则执行如下步骤在所述状态转移查询表中,查询行取STATUS、并且列取OBSR时对应的表格,设该表格对应的状态为STATUS,如果STATUS为状态转移表的终止状态,将当前令牌加入最终存活令牌列表,结束当前步骤;否则,删除当前令牌,在所述状态转移查询表中查询行取STATUS的非空表格C1CK,在该边的结束节点上构造K个新的令牌,每个令牌的状态为STATUS,观测为表格对应的列上的音节标签,权重为表格中的权重,得分SCORE更新为原SCORE与当前令牌权重与该边的权重的乘积之和,针对所述新的令牌继续执行步骤。
31、A。0076步骤4按照相似度由大到小的顺序对集合SET中的目标查询音节混淆网络进行排序;相似度越高,则表明目标查询音节混淆网络与待查询音节混淆网络越相似,该目标查询音节混淆网络所对应的目标语音文件也就是本发明需要查询的目标语音文件。0077实施例五0078对于实施例四中计算相似度的方法,本实施例介绍一个实际的例子。0079在本实施例中,待查询语音文件为“知道了”,如图6为该待查询音节混淆网络S的示意图。0080将该S转换为状态转移查询表T,如下表2。0081NULLZHI1DAO4LE10110121023103410451050082表20083本实施例中采用的目标音节混淆网络D如图4所示。。
32、说明书CN104142974A6/9页100084计算相似度时,针对D的每一个节点构造一个令牌,00851)针对状态为0的节点0086构造一个令牌A,设置令牌A的状态STATUS0,观测为UNLL,权重为1,得分SCORE0;0087由于令牌A的观测为UNLL,则在表2中查找到(0,UNLL)对应的表格,该表格中的状态STATUS1,不是表2的终止状态,则删除令牌A;并在表2中查询行取1(即STATUS的值)的非空表格,该表格对应的列上的音节标签为ZHI1、该表格中的权重为1,则在当前位置(即状态为0的节点)构造1个新的令牌B,设置令牌B的状态STATUS1(即STATUS的值),观测为ZHI。
33、1,权重为1(即该表格中的权重),得分SCORE0(即令牌A的得分);0088由于令牌B的观测不为UNLL,则遍历D中以令牌B所在节点(即状态为0的节点)为出发点的各条边,遍历结果为所有边的音节标签均不为ZHI1,故删除令牌B。00892)针对状态为1的节点0090构造一个令牌C,设置令牌C的状态STATUS0,观测为UNLL,权重为1,得分SCORE0;0091由于令牌C的观测为UNLL,则在表2中查找到(0,UNLL)对应的表格,该表格中的状态STATUS1,不是表2的终止状态,则删除令牌C;并在表2中查询行取1(即STATUS的值)的非空表格,该表格对应的列上的音节标签为ZHI1、该表格。
34、中的权重为1,则在当前位置(即状态为1的节点)构造1个新的令牌D,设置令牌D的状态STATUS1(即STATUS的值),观测为ZHI1,权重为1(即该表格中的权重),得分SCORE0(即令牌C的得分);0092由于令牌D的观测不为UNLL,则遍历D中以令牌D所在节点(即状态为1的节点)为出发点的各条边,遍历结果为所有边的音节标签均不为ZHI1,故删除令牌D。00933)针对状态为2的节点0094构造一个令牌E,设置令牌E的状态STATUS0,观测为UNLL,权重为1,得分SCORE0;0095由于令牌E的观测为UNLL,则在表2中查找到(0,UNLL)对应的表格,该表格中的状态STATUS1,。
35、不是表2的终止状态,则删除令牌E;并在表2中查询行取1(即STATUS的值)的非空表格,该表格对应的列上的音节标签为ZHI1、该表格中的权重为1,则在当前位置(即状态为2的节点)构造1个新的令牌F,设置令牌F的状态STATUS1(即STATUS的值),观测为ZHI1,权重为1(即该表格中的权重),得分SCORE0(即令牌E的得分);0096由于令牌F的观测不为UNLL,则遍历D中以令牌E所在节点(即状态为2的节点)为出发点的各条边,遍历结果为有一条边的音节标签为ZHI1;在表2中,查询(1,ZHI1)时对应的表格,该表格对应的状态为STATUS2,不是该表格的终止状态,则删除令牌F;在表2中查。
36、询行取2(即STATUS的值)的非空表格,该表格对应的列上的音节标签为DAO4、该表格中的权重为1,则在该边的结束节点上(即状态为3的节点)上构造1个令牌G,设置令牌G的状态STATUS2(即STATUS的值),观测为DAO4,权重为1(即该表格中的权重),得分SCORE01095095。0097由于令牌G的观测不为UNLL,则遍历D中以令牌G所在节点(即状态为3的节点)为出发点的各条边,遍历结果为有一条边的音节标签为DAO4;在表2中,查询(2,DAO4)时对应的表格,该表格对应的状态为STATUS3,不是该表格的终止状态,则删除令牌G;在说明书CN104142974A107/9页11表2中。
37、查询行取3(即STATUS的值)的非空表格,该表格对应的列上的音节标签为LE1、该表格中的权重为1,则在该边的结束节点上(即状态为4的节点)上构造1个令牌H,设置令牌H的状态STATUS3(即STATUS的值),观测为LE1,权重为1(即该表格中的权重),得分SCORE095107165。0098由于令牌H的观测不为UNLL,则遍历D中以令牌H所在节点(即状态为4的节点)为出发点的各条边,遍历结果为有一条边的音节标签为LE1;在表2中,查询(3,LE1)时对应的表格,该表格对应的状态为STATUS4,不是该表格的终止状态,则删除令牌H;在表2中查询行取4(即STATUS的值)的非空表格,该表格。
38、对应的列上的音节标签为NULL、该表格中的权重为1,则在该边的结束节点上(即状态为5的节点)上构造1个令牌I,设置令牌I的状态STATUS4(即STATUS的值),观测为NULL,权重为1(即该表格中的权重),得分SCORE16511265。0099由于令牌I的观测为UNLL,则在表2中查找到(4,UNLL)对应的表格,该表格中的状态STATUS5,是表2的终止状态,则将令牌I加入最终存活令牌列表。0100之后,针对状态为3、4、5、6、7的节点均设置一个令牌,并采用与上述同样的方式执行。最后,最终存活令牌列表中包括一个令牌I,令牌I的得分SCORE265,该得分就可以作为待查询音节混淆网络S。
39、与目标音节混淆网络D的相似度。如果最终存活令牌列表中包括多个令牌,则将所有令牌的得分求和,求和结果可以作为待查询音节混淆网络S与目标音节混淆网络D的相似度。0101本发明还提出一种语音文件查询装置,如图7为该装置的结构示意图,包括0102转换模块701,用于将每个目标语音文件分别转换成对应的目标音节混淆网络;将待查询语音文件或待查询文本转换成对应的待查询音节混淆网络;0103相似度计算模块702,用于计算所述待查询音节混淆网络与各个目标音节混淆网络的相似度;0104获取模块703,用于获取相似度最高的一个以上目标音节混淆网络所对应的目标语音文件。0105上述装置中,转换模块701将目标语音文件。
40、转换成对应的目标音节混淆网络、或者将待查询语音文件转换成对应的待查询音节混淆网络的方式可以为0106利用音节解码器对所述目标语音文件或待查询语音文件进行解码,得到中间结果;利用框架LATTICE转换工具对所述中间结果进行转换,得到对应的音节混淆网络。0107转换模块701将待查询文本转换成对应的待查询音节混淆网络的方式可以为0108将所述待查询文本划分为多个词;0109查找所述各个词对应的音节;0110将查找到的音节串联,得到音节序列Y1、Y2、YM,其中,M为音节的个数,YI(I1、2、M)为音节;0111构造初始节点V0和结束节点VM2;并构造(M1)个中间节点,包括V1、V2、VM1;0。
41、112构造V0与V1的之间的一条边,将该边的音节标签设置为空标签NULL,将该边的权重设置为1;构造VM1与VM2的之间的一条边,将该边的音节标签设置为NULL,将该边的权重设置为1;依次针对两个相邻的中间节点VI与VI1(I1,2,,M)构造一条边,将各说明书CN104142974A118/9页12条边的音节标签分别设置为Y1、Y2、YM,将每条边的权重均设置为1。0113上述转换模块701还可以用于,建立所有目标音节混淆网络的索引,包括正排索引和倒排索引;0114所述正排索引包括各个目标音节混淆网络与音节混淆网络标识的对应关系;0115所述倒排索引包括目标音节混淆网络中的各个音节所属的目标。
42、音节混淆网络的音节混淆网络标识、以及该音节所对应的边的权重。0116相似度计算模块702计算待查询音节混淆网络与各个目标音节混淆网络的相似度的方式可以为0117查询所述所有目标音节混淆网络的索引,确定包含所述待查询音节混淆网络中所有音节的目标音节混淆网络;根据待查询音节混淆网络生成对应的状态转移查询表,采用所述状态转移查询表计算待查询音节混淆网络与所述确定出的各个目标音节混淆网络的相似度。0118所述相似度计算模块702采用状态转移查询表计算计算相似度的具体方式可以为0119针对该目标音节混淆网络的每个节点构造一个令牌,将该令牌的状态STATUS设置为所述状态转移查询表的初始状态,将该令牌的观。
43、测设置为NULL,将该令牌的权重设置为1,将该令牌的得分SCORE设置为0;针对各个令牌分别执行以下步骤A,得到最终存活令牌列表,并对最终存活令牌列表中所有令牌的得分求和,将求和结果作为待查询音节混淆网络与该目标音节混淆网络的相似度;0120A、判断所述当前令牌的观测是否为NULL,如果是,则执行步骤B;否则执行步骤C;0121B、在所述状态转移查询表中查询行取STATUS、并且列取NULL时对应的表格,设表格中的状态为STATUS,如果STATUS为状态转移表的终止状态,将当前令牌加入最终存活令牌列表,结束当前步骤;否则,删除当前令牌,在所述状态转移表中查询行取STATUS的非空表格C1CK。
44、,在当前位置构造K个新的令牌,每个新的令牌的状态为STATUS,观测为表格对应的列上的音节标签,权重为表格中的权重,得分为当前令牌的得分,针对所述新的令牌继续执行步骤A;C、设所述令牌的观测为OBSR,遍历所述目标音节混淆网络中以该令牌所在节点为出发点的各条边,如果所述各条边的音节标签均不为OBSR,则删除该令牌;如果有一条边上的音节标签为OBSR,则执行如下步骤在所述状态转移查询表中,查询行取STATUS、并且列取OBSR时对应的表格,设该表格对应的状态为STATUS,如果STATUS为状态转移表的终止状态,将当前令牌加入最终存活令牌列表,结束当前步骤;否则,删除当前令牌,在所述状态转移查询。
45、表中查询行取STATUS的非空表格C1CK,在该边的结束节点上构造K个新的令牌,每个令牌的状态为STATUS,观测为表格对应的列上的音节标签,权重为表格中的权重,得分SCORE更新为原SCORE与当前令牌权重与该边的权重的乘积之和,针对所述新的令牌继续执行步骤A。0122综上所述,本发明提出技术方案将目标语音文件和待查询语音文件/待查询文本转换成音节混淆网络,并比较两者的相似度,相似度高的目标语音文件就是要查询的目标语音文件。本发明的方案避免了将语音转写成文字或音节/音素形式过程中出现的错误,能够提高语音查询的精确度。说明书CN104142974A129/9页130123以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。说明书CN104142974A131/3页14图1图2说明书附图CN104142974A142/3页15图3图4说明书附图CN104142974A153/3页16图5图6图7说明书附图CN104142974A16。