著录项信息
专利名称 | 产生词语确认临界值的装置、方法及系统 |
申请号 | CN200910261886.4 | 申请日期 | 2009-12-31 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2011-07-06 | 公开/公告号 | CN102117615A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G10L15/14 | IPC分类号 | G;1;0;L;1;5;/;1;4查看分类表>
|
申请人 | 财团法人工业技术研究院 | 申请人地址 | 中国台湾新竹县
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 财团法人工业技术研究院 | 当前权利人 | 财团法人工业技术研究院 |
发明人 | 林政贤;张森嘉;邱祺添 |
代理机构 | 北京市柳沈律师事务所 | 代理人 | 陈小雯 |
摘要
一种产生词语确认临界值的装置、方法及系统。当处理辨识目标确定之后,即可依照预期词语确认效果得到一建议临界值,除此之外,无须额外收集语料或训练模型。首先,计算至少一个语音单元所对应的一个或多个数值数据。而后,当接收至少一语音单元序列,并接收此语音单元序列中每一语音单元所对应的该或这些数值数据,并且据以组合成语音单元序列所对应的数值分布。根据一预期语词确认效果与该数值分布,产生一建议临界值输出。
1.一种产生词语确认临界值的装置,该装置包括:
一数值计算模块,用以计算产生至少一个语音单元所对应的一个或多个数值数据;
一目标分数产生器,接收至少一语音单元序列,并从该数值计算模块中,取出该语音单元序列中每一语音单元所对应的该一个或多个数值数据,并且据以组合成该语音单元序列所对应的数值分布;以及
一临界值决定器,连接到该目标分数产生器,用以接收该数值分布,并根据一预期语词确认效果与该数值分布,产生一建议临界值输出,
其中该数值计算模块包括:
一语音数据库,用以存储至少一个语音单元所对应的一笔或多笔语音数据;
一语音单元确认模块,接收该语音数据库中的该语音数据,并计算该语音单元所对应的一个或多个语词确认分数,并以数值数据形式提供给该目标分数产生器。
2.如权利要求1所述的产生词语确认临界值的装置,其中还包括一处理目标转语音单元处理器,用以接收处理目标,并将该处理目标转为该语音单元序列输出到该目标分数产生器。
3.如权利要求1所述的产生词语确认临界值的装置,其中该目标分数产生器以线性组合的方式将该语音单元序列中每一语音单元所对应的该一个或多个数值数据,组合成为该语音单元序列所对应的该数值分布。
4.如权利要求1所述的产生词语确认临界值的装置,其中该临界值决定器根据该预期语词确认效果的一输入条件,对应到该数值分布的一对应值,则该对应值则为输出的该建议临界值。
5.如权利要求4所述的产生词语确认临界值的装置,其中该预期语词确认效果的一输入条件为错误拒绝率。
6.如权利要求1所述的产生词语确认临界值的装置,其中该语音数据库所存储的这些语音数据的形式包括声音原始文件或语音特征参数其中之一,或声音原始文件及语音特征参数两者。
7.一种产生词语确认临界值的方法,该方法包括:
计算至少一个语音单元所对应的一个或多个数值数据;
接收至少一语音单元序列,并接收该语音单元序列中每一语音单元所对应的该一个或多个数值数据,并且据以组合成该语音单元序列所对应的数值分布;以及根据一预期语词确认效果与该数值分布,产生一建议临界值输出,
其中计算该语音单元所对应的一个或多个数值数据的步骤,包括:
计算存储在一语音数据库的该语音单元的语音数据,产生每一该语音单元的词语确认分数,并以一个或多个数值形式提供这些数值数据。
8.如权利要求7所述的产生词语确认临界值的方法,其中还包括将处理目标转为语音单元序列,以便据以做为选取该语音单元序列所对应的这些数值数据,而组成该数值分布。
9.如权利要求7所述的产生词语确认临界值的方法,其中当接收到该语音单元序列后,利用线性组合的方式将对应该语音单元序列中每一语音单元的一个或多个数值组合成对应该语音单元序列的该数值分布。
10.如权利要求7所述的产生词语确认临界值的方法,其中根据该预期语词确认效果的一输入条件,对应到该数值分布的一对应值,则该对应值则为输出的该建议临界值。
11.如权利要求10所述的产生词语确认临界值的方法,其中该预期语词确认效果的一输入条件为错误拒绝率。
12.如权利要求7所述的产生词语确认临界值的方法,其中在该语音数据库所存储的这些语音数据的形式包括声音原始文件或语音特征参数其中之一,或声音原始文件及语音特征参数两者。
13.一种产生词语确认临界值的系统,该系统包括:
一数值计算模块,用以计算产生至少一个语音单元所对应的一个或多个数值数据;
一目标分数产生模块,接收至少一语音单元序列,并从该数值计算模块中,取出该语音单元序列中每一语音单元所对应的该一个或多个数值数据,并且据以组合成该语音单元序列所对应的数值分布;以及
一临界值决定模块,连接到该目标分数产生模块,用以接收该数值分布,并根据一预期语词确认效果与该数值分布,产生一建议临界值输出,
其中该数值计算模块包括:
一语音数据库,用以存储至少一个语音单元所对应的一笔或多笔语音数据;
一语音单元确认模块,接收该语音数据库中的该语音数据,并计算该语音单元所对应的一个或多个语词确认分数,并以数值数据形式提供给该目标分数产生模块。
14.如权利要求13所述的产生词语确认临界值的系统,其中还包括一处理目标转语音单元处理模块,用以接收处理目标,并将该处理目标转为该语音单元序列输出到该目标分数产生模块。
15.如权利要求13所述的产生词语确认临界值的系统,其中该目标分数产生模块以线性组合的方式将该语音单元序列中每一语音单元所对应的该一个或多个数值数据,组合成为该语音单元序列所对应的该数值分布。
16.如权利要求13所述的产生词语确认临界值的系统,其中该临界值决定模块根据该预期语词确认效果的一输入条件,对应到该数值分布的一对应值,则该对应值则为输出的该建议临界值。
17.如权利要求16所述的产生词语确认临界值的系统,其中该预期语词确认效果的一输入条件为错误拒绝率。
18.如权利要求13所述的产生词语确认临界值的系统,其中该语音数据库所存储的这些语音数据的形式包括声音原始文件或语音特征参数其中之一,或声音原始文件及语音特征参数两者。
19.一种语音辨识系统,包括如权利要求1所述的一种产生词语确认临界值的装置,用以产生一建议临界值,而据以让该语音辨识系统进行确认,并据以输出确认结果。
20.如权利要求19所述的语音辨识系统,还包括
一语音辨识器,用以接收一语音信号;
一处理目标存储单元,存储多个处理目标,其中,该语音辨识器读取这些处理目标,并根据该语音信号与读取的这些处理目标进行判断,而后输出一辨识结果;以及一词语确认器,用以接收该辨识结果与该建议临界值进行确认,并据以输出确认结果。
21.一种词语确认系统,包括如权利要求1所述的一种产生词语确认临界值的装置,用以产生一建议临界值,而据以让该词语确认系统进行确认,并据以输出确认结果。
22.如权利要求21所述的词语确认系统,还包括
一处理目标存储单元,存储一个处理目标;以及
一词语确认器,用以接收一语音信号,并读取该处理目标,并根据该语音信号与读取的该处理目标进行比对后,与该建议临界值进行确认,并据以输出确认结果。
产生词语确认临界值的装置、方法及系统 \n技术领域\n[0001] 本发明涉及一种语音辨识系统,且特别涉及一种适用于语音辨识系统的词语确认\n临界值产生装置与方法。 \n背景技术\n[0002] 词语确认(或称为词语验证,utterance verification)功能是语音辨识系统中\n不可或缺的一部分,其能够有效的拒绝集合外词汇(Out of vocabulary)所造成的辨识误\n动作产生。而现今的词语确认演算法在计算出一词语确认分数后,会与一临界值相比对,当分数超越临界值时代表词语确认成功,反之代表确认失败。在实际的应用中,可通过额外收集语料并针对预期的确认效果分析出最佳的临界值,而大部分的解决方案也都是针对这样\n的架构试图找出最好的语词确认效果。 \n[0003] 例如图1A所示,传统的语音辨识系统包括语音辨识引擎110与语词确认器120。\n在接收到语音指令输入时,例如收到电视、电影或是音乐播放的要求,或是非语音输入的指令,例如电灯或是游戏的操作等等,语音辨识引擎110会根据辨识指令集112与语音模型\n114进行判断。在此辨识指令集112是针对电视、电影或是音乐播放要求动作的指令进行判\n断,而语音模型114则是提供针对这些动作的指令所建立的语音模型给语音辨识引擎110\n作为判断的依据。而辨识的结果将输出到语词确认器120,经过计算后得到一个信心分数,并且将对应语音输入的信心分数与一临界值进行比较,如130所示的判断步骤。当信心分\n数大于临界值时,也就是语音输入的要求是属于辨识指令集112内的指令,则会做出对应\n的反应,例如输入电视、电影或是音乐播放等等。但若是语音输入并非属于辨识指令集112内的指令时,例如电灯或是游戏的操作,则不会做出对应的反应。 \n[0004] 而临界值的产生,请参照图1B所示,是针对辨识指令集112内的指令,收集大量的语音数据进行分析后产生最佳的临界值,如指令集1产生最佳临界值1,而指令集2则是产\n生最佳临界值2。而这些语音数据都是通过大 量的人工输入方式进行,因此,当辨识词汇改变,上述工作就必须重复进行一次。而另外,当原来设定的临界值不如预期时,另一个方式是将此临界值让使用者自行调整,如图1C所示,可调高或是调低临界值,以便找出最满意\n的设定点。 \n[0005] 上述的方式,会限制语音辨识系统的运用范围,而使其实用度大大地降低。例如,此语音辨识系统若是运用在某些嵌入式系统当中时,例如系统单芯片(System-on-a-chip,简称SoC),在考虑成本的问题无法设计临界值调整的方式,这样的问题就必须解决。例如图\n2所示,当集成电路(IC)供应商提供具有语音辨识功能的IC给系统制造商时,系统制造商\n将这些具有语音辨识功能的IC整合到嵌入式系统中。在这样的架构下,除非从IC供应商\n进行临界值的调整后再重新出货给系统制造商,否则将面临无法调整临界值的问题。 \n[0006] 在许多关于词语确认系统的专利中,关于讨论临界值调整的解决方案,如以下美\n国专利所述。 \n[0007] 在 美 国 第 5,675,706 号 专 利 中 提 出 一 种“Vocabulary \nIndependentDiscriminative Utterance Verification For Non-Keyword Rejection In \nSubwordBased Speech Recognition”,在此专利中所公开的内容中,临界值是一个预先定义好的数值,而此数值的改变将牵扯到两种错误,包括错误接受率(False Alarm Rate)与\n错误拒绝率(False Reject Rate)的变化,系统设计者得自行调整并从中找到权衡之处。而本申请的方法是根据至少一个辨识目标与一预期词语确认效果(如错误接受率或错误拒\n绝率),接着得到对应的该确认效果的临界值,并非由使用者进行手动调整。 \n[0008] 而 另 一 美 国 第 5,737,489 号 专 利 中 提 出 一 种“Discriminative \nUtteranceVerification For Connected Digits Recognition”,进一步提到此临界值可通过线上搜集数据的方式动态计算出来,解决当辨识环境改变时,临界值的设定问题。此文件虽然有提到临界值的计算方式,不过此文件里线上搜集的方式是指在语音辨识与词语确认\n系统运作当中,通过新环境的测试数据先经过语音辨识得到辨识结果,再对其分析后针对\n先前预设的词语确认临界值进行更新的动作。 \n[0009] 综合许多在先文件的说明,发现通过额外的数据搜集与分析找到最佳的临界值,\n是最常见到的作法;其次便是将临界值开放给使用者自行调整。 但上述的方法都不外乎通过新环境的测试数据先经过语音辨识得到辨识结果,再对其分析后针对先前预设的词语确\n认临界值进行更新的动作。 \n发明内容\n[0010] 本发明提供一种词语确认临界值产生装置,适用于一语音辨识系统。此词语确认\n临界值产生装置包括一数值计算模块、一目标分数产生器与一临界值决定器。此数值计算\n模块用以计算并存储多个辨识目标所对应的多个数值数据。目标分数产生器至少接收其中\n一个辨识目标所组成的一语音单元序列,并从数值计算模块中选取此语音单元序列所对应\n的数值数据组成至少一数值分布。而临界值决定器,用以接收上述的数值分布,并根据一预期语词确认效果与数值分布,产生一建议临界值输出。 \n[0011] 本发明提供一种词语确认临界值产生方法,适用于一语音辨识系统。在此方法中,计算并存储多个辨识目标所对应的多个数值数据。在接收至少其中一个辨识目标所组成的\n语音单元序列,并选取此语音单元序列所对应的数值数据组成数值分布。根据一预期语词\n确认效果与此数值分布,产生一建议临界值输出。 \n[0012] 为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详\n细说明如下。 \n附图说明\n[0013] 图1A是说明传统语音辨识系统的系统架构示意图。 \n[0014] 图1B与1C为说明图1A的语音辨识系统中临界值的产生或调整方法示意图。 \n[0015] 图2是说明具有语音辨识功能的IC的从制造商到系统整合业者的处理流程示意\n简图。 \n[0016] 图3是说明本实施例所提出自动计算词语确认临界值的方法示意图。 \n[0017] 图4A是说明本发明一实施例的语音辨识系统方块示意图。 \n[0018] 图4B是词语确认器针对语词所进行的假设检定方法说明示意图。 \n[0019] 图5是说明本发明词语确认临界值产生器的方块示意图。 \n[0020] 图6A是说明本发明一实施例的数值计算模块的实施范例的方块示意图,而图6B\n为一产生数值的示意图。 \n[0021] 图7是说明存储在语音单元分数统计数据库内的数据如何运用在假设检定方法\n的示意图。 \n[0022] 图8A~图8E图示是说明本实施例所提出自动计算词语确认临界值方法的验证图\n示。 \n[0023] 图9是说明本发明另一实施例的语音辨识系统方块示意图。 \n[0024] 【主要元件符号说明】 \n[0025] 110:语音辨识引擎 \n[0026] 120:词语确认器 \n[0027] 112:辨识指令集 \n[0028] 114:语音模型 \n[0029] 310:指令集 \n[0030] 320:自动分析工具 \n[0031] 400:语音辨识系统 \n[0032] 410:语音辨识器 \n[0033] 420:辨识目标存储单元 \n[0034] 430:语词确认临界值产生器 \n[0035] 440:语词确认器 \n[0036] 510:辨识目标 \n[0037] 520:字转音处理器 \n[0038] 530:数值计算模块 \n[0039] 540:目标分数产生器 \n[0040] 550:临界值决定器 \n[0041] 560:预期语词确认效果 \n[0042] 600:数值计算模块 \n[0043] 602:语音数据 \n[0044] 610:切音处理器 \n[0045] 620:语音单元分数产生器 \n[0046] 630:切音模型 \n[0047] 640:词语确认模型 \n[0048] 650:语音单元分数统计数据库 \n[0049] 652:语音单元“ㄑ”的正向模型(H0) \n[0050] 654:语音单元“ㄑ”的反向模型(H0) \n[0051] 具体实施方式\n[0052] 本实施例提出一个计算词语确认临界值的方法,当辨识目标确定之后,即可依照\n预期词语确认效果得到一建议临界值,除此之外,无须额外收集语料或训练模型。 \n[0053] 请参照图3,当辨识的目标确定为一指令集310时,通过自动分析工具320,采用全自动而非人工离线(Offline)处理的方式,根据一预设条件分析得到建议的临界值。此实\n施例并非通过在新环境经过语音辨识得到辨识结果,再对其分析后针对先前预设的词语确\n认,并更新临界值。在本实施例中,在语音辨识系统开始使用前,已经经由针对特定的辨识目标进行了词语确认的效果的调整,而可动态得到一个建议临界值,以便输出让语词确认\n器加以判断,而得到确认的结果。 \n[0054] 对于IC设计的业者来说,本实施例的方法将使语音辨识的解决方案更为完整,其\n下游厂商可迅速的开发出语音辨识相关产品,不必担心收集语料的问题。这对语音辨识技\n术的推广有相当大的帮助。 \n[0055] 本实施的构想是在语音辨识与词语确认运作之前,针对目前的辨识目标预测出词\n语确认临界值,而在先文件中先使用预设临界值,其后在语音辨识系统与词语确认模块运\n作当中一边收集语料一边更新该预设临界值,与本申请的实施过程有很大的差异。再者,本申请也没有在语音辨识与词语确认系统运作中搜集任何数据来进行分析,而仅使用一预先\n存在的语音数据,如语音辨识系统或词语确认系统的训练语料。本申请提出的创新方法,认为词语确认的临界值可在辨识词汇决定后,并在语音辨识系统或词语确认模块运作前预先\n统计出来,无须额外的数据搜集,此架构明显与在先文件不同。 \n[0056] 请参照图4A,为说明本发明一实施例的语音辨识系统方块示意图。在此语音辨识\n系统400中,包括一语音辨识器410、一辨识目标存储单元420、一词语确认临界值产生器\n430与一语词确认器440。输入的语音信号则是传送到语音辨识器410与词语确认器440。\n而辨识目标存储单元420则是存储各种辨识的目标,输出到语音辨识器410与词语确认临\n界值产生器430。 \n[0057] 而语音辨识器410分别根据所接收的语音信号以及辨识目标422进行判断,而后\n输出辨识结果412到词语确认器440。同时,词语确认临界值产 生器430也针对辨识目标\n422对应产生一临界值432,并且输出到词语确认器440,而此词语确认器440则可根据辨识\n结果412与临界值432进行确认,以验证辨识结果412是否正确,也就是是否高于产生的临\n界值432。 \n[0058] 本实施提出词语确认临界值产生器430,如图所示,语音辨识器410的辨识目标为\n一组预设词汇(如N个中文词组),可经由辨识目标存储单元420进行读取。当语音信号通\n过此辨识器后,接着将辨识结果送至词语确认器440。 \n[0059] 另一方面,将辨识目标也输入词语确认临界值产生器430,并给定预期的词语确认效果,如10%错误拒绝比例,可得到一建议的临界值θUV。 \n[0060] 在词语确认临界值产生器430中,在一实施范例,可采用统计学上常见的假设检\n定(Hypothesis Testing)方法,来计算词语确认分数,但不以此为限。 \n[0061] 针对每个语音单元存在一组正向模型与一组反向模型(分别以H0、H1表示)。将\n辨识结果转化为语音单元序列后,利用对应的正向模型与反向模型,对每个单元分别算出\n一个正向与反向确认分数,并各自加总得到正向确认分数(H0 score)与反向确认分数(H1 \nscore),最后得到词语确认分数(简称UV score),其算式如下: \n[0062] \n[0063] T为语音信号的音框总数 \n[0064] 最后将词语确认分数UV score与临界值θUV比较,如果UV score大于θUV,则表\n示确认成功,则将辨识结果输出。 \n[0065] 上述的实施例请参照图4B,为词语确认器440针对第一个语词“前一项”所进行\n的假设检定(Hypothesis Testing)方法说明示意图。在从t1、t2~t8总共有八个音框\n段落(Frame segments)下,可分为为八个不同的假设检定区域,而语音信号则以强制对\n准(Forced Alignment)的方式对准这八个音框段落,分别切为对应声音信号的语音单元\n“sil”(代表Silence没有声音)、“ㄑ”、“一”、“ㄢ”、“null”、“一”、“ㄒ”、“一ㄤ”与“sil”。\n而对于每个语音单元分别算出一个正向与反向确认分数,例如图示的H0_sil与H1_sil、\nH0_ㄑ与H1_ㄑ、H0_一与H1_一、H0_ㄢ与H1_ㄢ、H1_null与H1_null、H0_一与H1_一、\nH0_ㄒ与H1_ㄒ、H0_一ㄤ与H1_一ㄤ、H0_sil与H1_sil。 \n[0066] 最后,各自加总得到正向确认分数(H0 score)与反向确认分数(H1score),最后\n得到词语确认分数(简称UV score)。 \n[0067] \n[0068] T为语音信号的音框总数 \n[0069] 上述词语确认临界值产生器,在一实施例中,例如图5所示的方块示意图。 \n[0070] 此词语确认临界值产生器500包括一处理目标转语音单元处理器520、目标分数\n产生器540与临界值决定器550(麻烦修改图五对应方块名称)。而词语确认临界值产生器\n500还包括一数值计算模块530。此数值计算模块530用以产生数值提供给目标分数产生\n器540。此数值计算模块530在一实施例中,可以包括一语音单元确认模块532与一语音数\n据库534。此语音数据库534用以存储一预先存在的语料,可为内建训练语料的数据库,或\n是一存储介质,而由使用者输入相关的训练用语料。而存储的数据,可以包括声音原始文件或者是语音特征参数等等。而语音单元确认模块532从语音数据库534中计算每一语音单\n元的词语确认分数,并以一个或多个数值形式提供给目标分数产生器540。 \n[0071] 目标分数产生器540根据所接收的一语音单元序列,并从数值计算模块530接收\n对应此语音单元序列中每一个语音单元的一个或多个数值,组合形成对应此语音单元序列\n的数值分布,提供给临界值决定器550。 \n[0072] 临界值决定器550根据一预期词语确认效果560以及所接收的语音单元序列的数\n值分布,产生一建议临界值输出。在一实施例中,例如给定10%错误拒绝比。而临界值决定器550,则是根据预期语词确认效果所定义的条件,从数值分布中,找出对应的一处,并将对应的数值输出作为此建议临界值。 \n[0073] 此数值计算模块530搜集对某个语音单元所对应的多个分数样本。例如对语音单\n元phoi存有X个分数样本,并且将其对应的数值存储。在此仍以前述实施例所采用的假设\n检定(Hypothesis Testing)方法为最佳实施例,但不以此为限。 \n[0074] 针对语音单元phoi而言,存在针对不同样本(Sample)所对应的正向与反向确认\n分数(分别以H0score、H1score表示)。 \n[0075] \n[0076] 其中H0 scorephoi,sample1表示为phoi的第一个正向分数样本,H1 scorephoi,sample1表示为phoi的第一个反向分数样本,Tphoi,sample1表示为phoi的第一个样本的音框长度。 [0077] 词语确认临界值产生器500收到辨识目标(假设W个中文单词)后,将所有单词\n经过处理目标转语音单元处理器520的中文字转音处理,转换为语音单元序列(Sequence)\nSeqi={pho1,…,phok },其中i为第i个中文单词,k为此中文单词的语音单元数目。 \n[0078] 接着将产生的语音单元序列,输入目标分数产生器540。 \n[0079] 在目标分数产生器540中,针对语音单元序列的内容,在数值计算模块530中,根\n据一挑选方式(例如随机挑选),取出对应的正向模型与反向模型的分数,并组合为一个分\n数样本X如下: \n[0080] \n[0081] \n[0082] \n[0083] \n[0084] 其中 与 指在数值计算模块530中\n针对第一个语音单元(pho1)所挑出的第N个H0与H1的分数样本。同理,H0scorephok,sampleM与 是指在统计数据库中针对第k个语音单元(phok)所挑出的第\nM个H0与H1的分数样本。 \n[0085] 对每个中文单词产生P个词语确认分数(简称UV score)样本{x1,x2…,xp}形成\n此单词的分数样本集合,再将所有单词的分数样本集中成为整体辨识目标的分数集合,并\n输入临界值决定器550。 \n[0086] 在临界值决定器550中,将整体辨识目标的分数集合经过直方图(histogram)统\n计后,转换为累积机率分布,即可从中找出合适的临界值之处θUV。例如,输出对应累积机率分布为0.1时的临界值。 \n[0087] 上述实施例中,数值计算模块530是此采用语音单元确认模块532与一语音数据\n库534进行,此为可即时计算处理的实施范例。但上述的数值计算模块530可采用具有完成\n词语确认功能的任何不同技术,皆属于本实施例的范围,例如在台湾第200421261号专利\n公开申请所提到的「词语验证方法及系统」所公开的内容,或是在″Confidence measures for speechrecognition:A survey″by Hui Jiang,Speech communication,2005的文献中所提到的技术等等。在另外一实施例中,可采用语音单元分数数据库,直接根据选择而输出对应的数值,但并非以此为限制。而这些存储在语音单元分数数据库的数值,则是经由接收一预先存在的语音数据,并且经由切音处理与语音单元分数产生器而产生对应的分数,\n并加以存储在语音单元分数数据库内。此实施例则底下说明。 \n[0088] 请参照图6A与图6B,分别为说明数值计算模块的实施范例示意图。图6A为数值\n计算模块的实施范例的方块示意图,而图6B为一产生数值的示意图。此数值计算模块600\n包括切音处理器610与语音单元分数产生器620,经过处理后输出数据到语音单元分数统\n计数据库650。 \n[0089] 上述作为训练语料的语音数据602,可以从既有的语音数据库中取得,例如\n500-People TRSC(Telephone Read Speech Corpus)语音数据库或Shanghai Mandarin \nELDA FDB 1000语音数据库即属于可得来源之一。 \n[0090] 这样的架构,即可在辨识目标确定之后,依照预期词语确认效果得到建议临界值,除此之外,无须额外收集语料或训练模型。此实施例并不需要在新环境经过语音辨识得到\n辨识结果,再对其分析后针对先前预设的词语确认效果更新临界值。在本实施例中,在语音辨识系统开始使用前,已经经由针对特定的辨识目标进行了词语确认的效果的调整,而可\n动态得到一个建议临界值,以便输出让语词确认器加以判断,而得到确认的结果。对于IC\n设计的业者来说,本实施例的方法将使语音辨识的解决方案更为完整,其下游厂商可迅速\n地开发出语音辨识相关产品,不必担心收集语料的问题。这对语音辨识技术的推广有相当\n大的帮助。 \n[0091] 在此方法中,首先,将语音数据602经过切音处理器610变成一个个 语音单元。在一实施例中,使用的切音模型630与词语确认器中用来进行强制对准(Forced Alignment)\n所用的模型相同。 \n[0092] 接着,每个语音单元由语音单元分数产生器620的运算而得到对应的结果。上述\n的语音单元分数产生器620,其分数产生是通过一组词语确认模型640运算所得。此词语\n确认模型640与辨识系统中所用的词语确认模型一致。语音单元分数620的组成可依语音\n辨识系统中所用的词语确认方式不同而有不同的呈现方式。例如,在一实施例中,如词语确认方式使用假设检定(Hypothesis Testing)的方式时,语音单元分数620的组成即为一使\n用该语音单元所属的正向模型对此单元所计算出的正向分数与一使用该语音单元所属反\n向模型对此单元所计算出的反向分数。在不同实施例中,可将针对每个语音单元的所有语\n料对应段落的正向分数与反向分数,连同单元长度全部存入语音单元分数统计数据库650\n中,此可称为第一种实施类型。在另一实施例中,可将针对每个语音单元的所有语料对应段落的正向分数与反向分数,只存入这两个分数相减除以长度以及其长度的统计值,例如平\n均值与变异数等等,存入语音单元分数统计数据库650中,此为第二种实施类型。 \n[0093] 依照词语确认方式的不同,语音单元分数组成也可包含一使用此语音单元所属正\n向模型对此语音单元所算出的正向分数,与使用此语音单元所属正向模型在此语料库中针\n对此语音单元之外的所有单元所算出的许多正向竞争分数。可针对每个单元,将所有语料\n对应的段落的正向分数与其所有对应的正向竞争分数,连同单元长度全部存入语音单元分\n数统计数据库650中,此可称为第三种实施类型,其中此对应的正向竞争分数可存储全部\n或仅为其中的一子集合。另外,也可只存储上述正向分数与其对应的许多正向竞争分数,经过数学运算后相减除以其长度以及此长度的统计值,如平均值与变异数等等,其中所述数\n学运算包括如算数平均与几何平均等等,存入语音单元分数统计数据库650中,此可称为\n第四种实施类型。 \n[0094] 在图5中的目标分数产生器540的运算方法,可依照语音单元分数统计数据库650\n所存储内容的不同,而有不同的产生方式。如当语音单元分数统计数据库650存储的是第\n一或第三实施类型时,可根据语音单元序列内容在语音单元分数统计数据库650中,通过\n随机挑选组合成样本分数,并形成此语音单元序列分数的分布。如为第二或第四实施类型\n时,根据单 元序列内容在语音单元分数统计数据库650中直接通过平均值与变异数的运\n算组合,形成语音单元序列分数分布的平均值与变异数。 \n[0095] 底下就图6B说明其中一种实施范例的运算方法。请参照图6B,,针对语词“前一\n项”所进行的假设检定方法中,对于语音单元“ㄑ”而言,经由语音单元“ㄑ”的正向模型(H0)652与反向模型(H1)654,取得对于语音单元“ㄑ”的词语确认分数(UV score)为 \n[0096] \n[0097] 每个语音单元经过语音单元分数产生器620处理后,利用词语确认模型640对其\n计算出正向(H0)与反向(H1)分数,以及连同此语音单元的长度存入语音单元分数统计数\n据库650内。 \n[0098] \n[0099] 请参照图7,是说明存储在语音单元分数统计数据库内的数据如何运用在假设检\n定方法中。如图所示,如以语词“前一项”的语音单元“sil”、“ㄑ”与“一”为例说明,但不以此为限。每个语音单元都有其对应的不同语音单元序列(Sequence),如语音单元“sil”所对应的第一序列到第N1序列,语音单元“ㄑ”所对应的第一序列到第N2序列,以及语音\n单元“一”所对应的第一序列到第N3序列。 \n[0100] 当进行计算词语确认分数(UV score)时,将会从对应的语音单元序列中,随机选\n择(Randomly Select)其中一个作为计算的依据,包括正向(H0)、反向(H1)分数与此语音\n单元的长度。最后,各自加总得到正向确认分数(H0score)与反向确认分数(H1 score),并得到词语确认分数(简称UV score)。 \n[0101] \n[0102] T为针对词语“前一项”的音框总数 \n[0103] 接着,底下将举几个实际验证例说明。 \n[0104] 使用现有的语音数据库进行验证,在此以500-People TRSC(TelephoneRead \nSpeech Corpus)语音数据库为例。从这个TRSC数据库中抽出9006句, 当作切音模型及词\n语确认模型(请参照图6A中的词语确认模型640与切音模型630)的训练语句。使用如图\n6A的实施例流程做切音处理与语音单元分数产生(请参照图6A中的切音处理器610与语\n音单元分数产生器620处理的操作),最后产生语音单元分数数据库。 \n[0105] 模拟测试语音数据,使用Shanghai Mandarin ELDA FDB 1000语音数据库,共取出三组测试词汇组。 \n[0106] 词汇组(1)内容为「前一项、讯息盒、接线员、应答设备、紧急电话」五个单词,共有\n4865句; \n[0107] 词汇组(2)内容为「井号、内部、外部、打电话、目录、列表」六个单词,共有5235句; \n[0108] 词汇组(3)内容为「向前、回电、删除、改变、取消、服务」六个单词,共有5755句。 [0109] 三组词汇组分别依例如图5所示的词语确认临界值产生器进行操作。经由处理目\n标转语音单元处理器520与目标分数产生器540,配合数值计算模块530,最后经临界值决\n定器550将找到的临界值输出。 \n[0110] 最后的结果可参照图8A到图8E图示。在图8A中,可以了解根据预期语词确认效\n果的要求,而得到不同的临界值,并且具有不同的错误拒绝率(False Rejection Rate)与\n错误接受率(False Alarm Rate)。测试集合内词汇的词语确认分数分布如图示中的标号\n810所标示的结果,其可以测试语料所分析得之。为了说明,在此采用第二套测试语料来分析集合外词汇的词语确认分数分布,如图示中的标号820所标示的结果,其中第二套测试\n语料的辨识词汇与第一套并无重复。例如图示中的临界值在0.0时,错误拒绝率为2%,而\n错误接受率则为0.2%。另外,临界值在4.1时,错误拒绝率为10%,而错误接受率则为0%。\n从图示中可以知道,可根据集合内词汇的词语确认分数分布810,在横轴上选择一个数值当作确认分数的临界值,并获得相对应的错误拒绝与错误接受率。事实上,由本方法即可产生模拟的集合内词汇的词语确认分数分布,经由直方图统计再转为累积机率分部后,便能从\n中找出合适的词语确认分数临界值,而其对应的累积机率值乘以100%即为错误拒绝比例\n(%)。 \n[0111] 图8B中,标号830所标示的实线,为对于词汇1使用实际测试语料经过辨识器与\n词语确认器统计出的词语确认分数分布,而标号840所标示的虚线,则是表示使用测试语\n料集合外的语料(如前述的TRSC)并经过本方法所模拟出的词语确认分数分布。图8C中\n的标号832所标示的实线,为表示对于词汇2使用实际测试语料经过辨识器与词语确认器\n统计出的词语确认分数分布,而标号842所标示的虚线,则是表示使用测试语料集合外的\n语料(如前述的TRSC)并经过本方法所模拟出的词语确认分数分布。图8D中标号834所\n标示的实线,为表示对于词汇3使用实际测试语料经过辨识器与词语确认器统计出的词语\n确认分数分布,而标号844所标示的虚线,则是表示使用测试语料集合外的语料(如前述的\nTRSC)并经过本方法所模拟出的词语确认分数分布。\n[0112] 将上述不同的标号830、832、834及840、842、844所得到的结果分别转换为累积机率统计分布后,针对词语确认分数与错误拒绝比例可转换为三组不同操作性能曲线,如图\n8E所示。横轴为词语确认分数(UV score)值,而纵轴为错误拒绝率(如图中的FR%)。从\n图中可看出此三组词汇组实施后的效能,其中实线为实际数据所描绘的分布,虚线为模拟\n所描绘的分布。由图8E可以得知,在错误拒绝率为0%~20%时,各组词汇组模拟曲线与\n实际曲线的误差小于6%,已在实用可接受的范围之内。 \n[0113] 虽然本发明已以实施例公开如上,然其并非用以限定本发明,本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰。 \n[0114] 如:本发明也可单独与词语确认器结合使用,如图9所示,在此语音辨识系统中,词语确认临界值产生器910接收一词语确认目标后产生一建议临界值912至词语确认器\n920。一语音信号即可输入词语确认器920,并针对该确认目标进行词语确认动作而得到确\n认结果。 \n[0115] 综合上述可能实施方式,我们将辨识目标或词语确认目标统称为处理目标,本申\n请提出的词语确认临界值产生器接收一个或多个该处理目标,并输出对应该或这些处理目\n标的建议临界值。 \n[0116] 故本发明的保护范围当视所附权利要求书所界定者为准。
法律信息
- 2013-01-02
- 2011-08-24
实质审查的生效
IPC(主分类): G10L 15/00
专利申请号: 200910261886.4
申请日: 2009.12.31
- 2011-07-06
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2007-05-16
|
2005-11-11
| | |
2
| | 暂无 |
2003-04-14
| | |
3
| | 暂无 |
1995-03-31
| | |
4
| | 暂无 |
1995-09-15
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |