CN101019171A - 用于生成向量码本的方法、用于压缩数据的方法及装置、以及分布式语音识别系统 - Google Patents

用于生成向量码本的方法、用于压缩数据的方法及装置、以及分布式语音识别系统 Download PDF

Info

Publication number
CN101019171A
CN101019171A CNA2004800439812A CN200480043981A CN101019171A CN 101019171 A CN101019171 A CN 101019171A CN A2004800439812 A CNA2004800439812 A CN A2004800439812A CN 200480043981 A CN200480043981 A CN 200480043981A CN 101019171 A CN101019171 A CN 101019171A
Authority
CN
China
Prior art keywords
sub
subset
vector
subsets
feature
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.)
Granted
Application number
CNA2004800439812A
Other languages
English (en)
Other versions
CN101019171B (zh
Inventor
茂瑞兹奥·福德瑞尼
多纳托·埃托尔
吉安马瑞奥·博拉诺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telecom Italia SpA
Original Assignee
Telecom Italia SpA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Telecom Italia SpA filed Critical Telecom Italia SpA
Publication of CN101019171A publication Critical patent/CN101019171A/zh
Application granted granted Critical
Publication of CN101019171B publication Critical patent/CN101019171B/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice

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)
  • Artificial Intelligence (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一种用于压缩数据的方法,所述数据由具有Q个特征的输入向量表示,其中,Q为大于1的整数,所述用于压缩数据的方法包括以下步骤:1)提供向量码本,该向量码本包括多个带索引的Q特征参考向量子集以及针对预定特征的、与所述多个子集相关联的阈值;2)通过将所述输入向量的、与所述预定特征相对应的特征的值与和所述多个子集相关联的阈值渐进地进行比较,以在所述多个子集之中识别一参考向量子集;3)识别如下参考向量,该参考向量在步骤2)中识别出的子集内提供针对所述输入向量的最低失真。

Description

用于生成向量码本的方法、用于压缩数据的方法及装置、 以及分布式语音识别系统
技术领域
本发明涉及用于压缩数据的方法。更具体地说,本发明涉及一种用于在分布式语音识别系统中压缩特征向量的方法。
背景技术
很多应用使用语音识别技术。示例包括:
-基于对诸如银行和经纪交易的“敏感”信息的语音识别的交互式语音应答(IVR)服务。可出于日后人工确认的目的或为了满足程序上的需要来存储语音识别特征;
-在从所采用的语音识别系统中收集的语音数据库中对发言进行的人工确认。该数据库然后可用来再训练并调整模型以提高系统性能;
-机器识别和人工识别相混合的应用(例如,人工辅助口述)。
US 5 946 653也公开了一种语音识别应用,其描述了一种通过识别口头命令并且然后基于所识别的口头命令来向目标系统施加激励从而控制目标系统的技术。利用语音命令控制的目标系统和软件应用是所希望的,这是因为用户可以通过说出命令来控制目标系统或应用,从而提高了操作的容易性和用户感觉到的用户友好性。
在典型的语音识别系统中,通过麦克风接收输入语音,对其采样并转换为原始输入语音的数字表示。然后对该经数字化的语音进行处理(根据通常称为“特征提取”或“前端”的处理)来生成以更紧凑的格式提供该语音的表示的特征向量。然后将这些特征向量传送或传递到模式识别和/或重构系统(通常被称作“后端”),该模式识别和/或重构系统为了重构输入语音将进入的特征向量与语音模板进行比较。
后端的语音识别和/或重构通常需要搜索算法,而该搜索算法是使用大量存储器和CPU周期的搜索算法。
在语音处理领域中有三种主要的方法:
-服务器侧:由设备通过传送信道将音频信号发送到服务器。服务器执行所有的音频信号处理并将识别处理的结果发送回该设备。该方法具有如下局限:缺少图形显示并且设备与服务器之间的连接不稳定。由于低分辨率模数转换、代码转换及传送损耗以及每个无线技术中固有的所有误差,经数字化的音频信号的质量有时不足以进行成功的语音识别。
-客户端侧:语音处理完全在用户设备中执行。尽管该方法解决了音频信道问题,但是客户端设备需要具有繁重的处理及存储性能以及低消耗;然而,诸如个人数字助理(PDA)、手机以及其他嵌入式设备的无线手持设备通常在计算、存储以及电池能量方面是有限的。从而由于所述资源有限性使得难以在这些常规设备上执行复杂的搜索算法。
-分布式语音识别(DSR):语音识别任务部分地在客户端设备中执行、部分地在服务器上执行。客户端设备提取关于用户的数字化语音的特定特征并将这些数字表示发送到服务器。服务器通过将所提取的信息与服务器中存储的语言模型和词汇列表相比较,以使无线设备更少地受到存储器的限制。该方法的其他优点在于,无需相当多的硬件要求即可将话音界面添加到各种移动设备;可以容易地更新服务、内容和代码;以及对于误差的低敏感度(这些系统通常可处理高达10%的数据包损失,而不会不利地影响语音识别准确度)。
因此分布式语音识别(DSR)系统提供了在无线手持设备中仅执行前端处理,而在远程服务器处执行计算及存储密集的后端处理(例如参见EP 1 395 978)。
此外,为了节省通信信道带宽,本领域中提出了在将在DST系统的前端处理中提取出的特征向量传送到远程服务器以进行后端处理之前对它们进行压缩。在本领域中通常将该压缩称为“向量量化”或“向量压缩”。
在这种环境下,欧洲电信标准协会(ETSI)发布了针对DRS特征提取和压缩算法的标准(“Aurora”)(ETSI ES 202.050、ES 202 212、ES 202 108以及ES 202 211)。
根据Aurora ETSI标准的特征提取算法,对数字化的输入语音进行过滤,利用汉明(Hamming)窗对各个语音帧进行加窗并利用快速傅立叶变换(FFT)将其变换到频域。然后,执行梅尔(Mel)频域变换以及后续的处理步骤,以针对语音数据的每个时间帧获得包括14个特征——十二个静态梅尔倒谱系数C(1)到C(12)加上零倒谱系数C(0)以及对数能量项InE——的向量(还参见EP 1 395 978)
根据Aurora ETSI标准的压缩算法,然后将这14个特征分组成多对,从而为语音数据的每个时间帧提供七个两特征向量。然后利用七个相应的预定码本对这些两特征向量进行压缩。
码本是预定的带索引的参考向量集,它们被选择以代表由特征向量表示的原始信息。码本中参考向量的分布可以是非均匀的,如Aurora ETSI标准所规定的。
通过用提供最低失真的参考向量的索引替代输入向量,来执行压缩或量化。
事实上,因为索引是0与N-1(其中,N为码本中参考向量的数目)之间的正整数值,所以可由比包括Q(Q≥2)个特征的输入特征向量更紧凑的信息来表示。
根据ETSI算法,通过求输入向量与相应码本的各参考向量之间的加权欧几里得距离来找到最低失真。一旦找到最接近的参考向量,就采用该参考向量的索引来表示该输入向量。
将对于两特征向量的利用欧几里得距离计算出的最小距离值Dmin表示为:
D min = arg min 1 ≤ i ≤ N { ( C i , A - X A ) 2 + ( C i , B - X B ) 2 }
其中,N为码本中向量的数目;(XA,XB)为输入向量,并且Ci=(Ci,A,Ci,B)是码本中的第i个向量。
根据上述表述式,常规ETSI压缩算法(穷举计算)要求N次距离计算,等同于求2·N次平方和3·N次加法(可以省略平方根的计算,因为其不会影响搜索最小值Dmin的结果)。这些操作要求正比于N的高处理器能力。
为了改进压缩算法,本领域中已进行了尝试,例如在EP 0 496541、US 5 946 653、US 6 389 389中所公开的。
然而,这些文档公开的技术不能有效地减少找出码本中距输入向量距离最小的向量所需的计算工作。
US 4 958 225中提出了一种针对视频数据压缩的不同向量量化技术。具体来说,该专利公开了一种采用向量量化来识别码本向量集中的与输入向量最为匹配的一个码本向量从而压缩视频数据的方法。根据一实施例,该方法包括以下步骤:1)计算输入向量I的范数;2)识别其范数最接近输入向量的范数的参考码本向量Aj;3)计算输入向量I与参考码本向量Aj之间的距离hI,J;4)识别由来自输入向量I周围的有限量的向量空间的多个码本向量(例如,范数在|I|-hI,J到|I|+hI,J范围内的向量)构成的码本向量子集S;5)在子集S中搜索距输入向量距离最小的码本向量;6)选择距输入向量距离最小的码本向量。在步骤4)中对子集S的识别减少了在步骤5)中针对最小距离计算而必须求值的向量数。
然而,本申请人注意到,即使该方法将必须在输入向量与参考向量之间计算的距离计算数减少到与子集S中所包括的参考向量的距离计算的数目,但是该方法仍需要要在步骤1到6执行大量计算和指令。此外,当必须执行步骤2)时,只能预先离线计算所有参考码本向量的范数,并将它们存储在存储器中以待日后使用。因此,该方法的在线计算工作依然很高。
因此,本申请人面临减少特征向量压缩所需的计算工作的技术问题。
更为具体的是,本申请人面临减少在DSR系统中的特征向量压缩所需的在线计算工作的技术问题。
本申请人发现,上述问题可以通过对码本的处理来解决,所述处理提供将码本分割为多个预定区域,各个区域包括码本的参考向量子集,并且所述处理提供生成对这些预定区域的预定访问信息,以使得可仅仅通过以下操作来执行每当接收到新的输入向量时就必须在线执行的向量压缩:利用所生成的访问信息来识别更好地表示输入向量的区域,并通过仅在所识别的区域(其包含数量低于码本中参考向量数的参考向量)内搜索提供最低失真的参考向量。由此,减少了特征向量压缩所需的在线计算量。此外,由于可离线地对于任何给定码本仅进行一次码本处理,所以不会给在线处理造成太多负担。
发明内容
因此,本发明的第一方面提供了一种用于生成向量码本的方法,该方法提供了始于向量码本的低数据压缩计算工作,所述向量码本包括N个参考向量的集,其中每个参考向量都包括Q个特征,其中,N和Q是大于1的正整数,所述方法包括以下步骤:
a)针对所述N个参考向量的集的预定特征的值,按照升序或降序来对所述N个参考向量的集进行排序;
b)将所述经排序的参考向量的集细分为多个子集;
c)将针对所述预定特征的相应阈值与所述多个子集中的每一个相关联。
在本说明书及权利要求书中,术语“向量”用来表示有序的标量集。向量的维是该有序集的标量元素的数量。例如,二维向量可表示为{a1,a2},其中,a1是该向量的第一标量元素,a2是第二标量元素。
此外,术语“特征”用来表示标量。例如,在语音识别系统的情况下,术语“特征”用来表示利用特征识别算法从输入语音中提取出的系数。
从属权利要求涉及本发明的具体实施例。
优选地,所述方法还包括进一步分割所述N个参考向量的集的步骤,所述进一步分割包括如下步骤:
d)针对所述N个参考向量的集的另一预定特征的值,按照升序或降序来对所述多个子集中的每一个的参考向量进行排序;
e)将所述多个经排序的参考向量子集中的每一个细分为多个子子集;
f)将针对所述另一预定特征的相应子阈值与所述多个子子集中的每一个相关联。
根据实施例,重复所述进一步分割步骤预定次数,每次将在前一次执行的所述进一步分割中获得的子子集看作子集,并且对于执行步骤d)和f),考虑所述N个参考向量的集的又一预定特征。
可针对所述参考向量集的、排序步骤所未考虑的任何其他剩余特征重复所述进一步分割步骤。优选的是,针对所述参考向量集中的全部剩余特征重复所述进一步分割步骤。
在步骤c)中,有利地根据所述N个参考向量的集的预定特征的值来选择阈值。
在步骤c)中,有利地根据各个子集中包括的参考向量的预定特征的值来选择每个阈值。
在步骤c)中,可将每个阈值设置为包括在各个子集的最后一个参考向量的预定特征的值与下一子集(如果有的话)的第一个参考向量的预定特征的值之间。优选地,将各阈值设置为等于各个子集的最后一个参考向量的预定特征的值。
在步骤f)中,有利地根据所述N个参考向量的集的另一预定特征的值来选择子阈值。
在步骤f)中,有利地根据各个子子集中包括的参考向量的另一预定特征的值来选择每个子阈值。
在步骤f)中,可将每个子阈值设置为包括在各个子子集的最后一个参考向量的另一预定特征的值与下一子子集(如果有的话)的第一个参考向量的另一预定特征的值之间。优选地,将步骤f)的每个子阈值设置为与各个子子集的最后一个参考向量的子预定特征的值相等的值。
可与步骤a)中采用的顺序无关地、按照升序或降序来执行步骤d)。
在步骤b)中,将经排序的集合细分为Nfirst个子集,其中,Nfirst为正整数,2≤Nfirst≤N。
有利地,在步骤b)中获得的子集包括基本上相同数量的参考向量。即,对于几乎所有子集,子集的参考向量数等于N/Nfirst。
需要注意的是,以上提及的表述“子集包括基本上相同数量的参考向量”用来包括以下情况:除式N/Nfirst的余数不为零,使得子集的参考向量的数目无法对于所有子集都等于N/Nfirst。
优选地,在步骤e)中,以相同数量的Nsecond个子子集来细分各个子集,其中,Nsecond为大于1的正整数。此外,Nsecond优选地不大于具有最低参考向量数的子集的参考向量数。
有利地,在步骤e)中,将各个子集细分为包括基本上相同数量的参考向量的多个子子集。
如下面更详细描述的,包括基本上相同数量的参考向量的子子集使得对于全部接收到的输入向量而言计算工作基本上相同,而与它们包含于其中的码本区域无关。
有利地,所述方法还包括步骤g),该步骤g)对于在步骤b)中获得的所述多个子集中的至少一个子集,利用相邻子集的至少一个参考向量对其进行扩展。
有利地,通过以下步骤来执行步骤g):如下来扩展在步骤b)中获得的、处于在步骤a)中排序的所述集的顶部处的子集,即,在该顶部子集的末端添加与在步骤a)中排序的所述集中紧接在该顶部子集之下的参考向量相对应的至少一个参考向量。
有利地,通过以下步骤来执行步骤g):如下来扩展在步骤b)中获得的、处于在步骤a)中排序的所述集的底部处的子集,即,在该底部子集的顶端添加与在步骤a)中排序的所述集中紧接在该底部子集之上的参考向量相对应的至少一个参考向量。
有利地,通过以下步骤来执行步骤g):通过以下步骤来执行步骤g):如下来扩展在步骤b)中获得的任何其他中央子集,即,在该中央子集的首端和末端添加与在步骤b)中排序的所述集中紧接该中央子集之上和之下的参考向量相对应的至少一个参考向量。
如下面更详细说明的,步骤g)生成相邻子集之间的交叠,这使得——在使用通过本发明的方法生成的码本的向量压缩方法中——对于位于码本中的相邻区域(由子集表示)边界附近的输入向量,减少了最小失真计算中的误差。
有利地,当执行步骤g)时,对于所扩展的子集执行步骤d)和e)。
有利地,在步骤g)中,在子集的首端和/或末端处扩展相同数量的参考向量。
有利地,所述进一步分割还包括在步骤e)之后的步骤h),该步骤h)对于在步骤e)中获得的多个子子集中的至少一个子子集,利用相邻子子集中的至少一个参考向量对其进行扩展。
有利地,通过以下步骤来执行步骤h):如下来扩展在步骤e)中获得的、处于步骤d)中排序的对应扩展子集的顶部处的每个子子集,即,在该顶部子子集的末端添加与在所述排序的对应扩展子集中紧接该顶部子子集之下的参考向量相对应的至少一个参考向量。
有利地,通过以下步骤来执行步骤h):如下来扩展在步骤e)中获得的、处于步骤d)中排序的对应扩展子集的底部处的每个子子集,即,在该底部子子集的首端添加与在所述排序的对应扩展子集中紧接该底部子子集之上的参考向量相对应的至少一个参考向量。
有利地,通过以下步骤来执行步骤h):如下来扩展在步骤e)中获得的任何其他中央子子集,即,在该中央子子集的首端和末端添加与在步骤d)中排序的对应扩展子集中紧接该中央子子集之上和之下的参考向量相对应的至少一个参考向量。
有利地,在执行步骤h)时,重复所述进一步分割步骤预定次数,每次将根据前一次执行的步骤h)而扩展的子子集看作子集。
如下面更详细说明的,步骤h)生成相邻子子集之间的交叠,这使得——在使用通过本发明的方法生成的码本的向量压缩方法中——对于位于码本中的相邻区域(由子子集表示)边界附近的输入向量,减少了最小失真计算中的误差。
有利地,在步骤h)中,在子子集的首端和/或末端扩展相同数量的行。
在第二方面中,本发明涉及一种提供低数据压缩计算工作的用于生成向量码本的电子处理系统,该系统包括适于执行根据本发明第一方面的方法的步骤的装置。
所述电子处理系统例如可以是个人计算机、计算机网络或作为无线手持设备的嵌入式设备(如,PDA或手机)。
在第三方面中,本发明涉及一种包括程序指令的计算机程序,所述程序指令适于在电子处理系统上执行程序时执行根据本发明第一方面的方法的步骤。
有利地,所述计算机程序包含在计算机可读介质上。
例如,计算机可读介质是只读存储器或磁记录装置。只读存储器的典型示例是CD ROM或半导体ROM。进而,磁记录装置的典型示例是软盘或硬盘。
根据一个实施例,例如,计算机程序承载于在如因特网的计算机网络中传送的载波信号上。
通常,载波信号是电信号或光信号。例如,其可以是无线电波信号或者是由调制解调器生成的电信号。这种载波信号例如可通过电缆或光缆、通过无线电波或者通过其他常规传送装置来载送。
在第四方面中,本发明涉及一种用于压缩数据的方法,所述数据由具有Q个特征的输入向量表示,其中,Q为大于1的整数,所述用于压缩数据的方法包括以下步骤:
1)提供如通过根据本发明第一方面的方法生成的向量码本,该向量码本包括:带索引的Q特征参考向量的多个子集,以及针对预定特征的、与所述多个子集相关联的阈值;
2)通过将所述输入向量的与所述预定特征相对应的特征的值和与所述多个子集相关联的阈值渐进地进行比较,以在所述多个子集之中识别出一参考向量子集;
3)在步骤2)中识别出的子集内识别出提供针对所述输入向量的最低失真的参考向量。
根据本发明,可通过简单的比较步骤(步骤2)并且通过识别仅在所识别出的包括数量低于码本的参考向量的子集内提供最低失真的参考向量,来执行向量压缩。因此,减少了向量压缩所需的计算工作。
此外,对于任何给定码本,可离线仅执行根据本发明第一方面的码本生成一次。因此,这不会使每当接收到输入向量时都必须在线执行的压缩方法超负荷。
通常,通过适于处理两个或更多个输入向量的功能来计算失真,以提供对失真的标量表示。通常,所述功能实施欧几里得距离。然而,该功能可实施任何类型的距离。
有利地,通过识别出距所述输入向量距离最小的参考向量来执行步骤3)。通常,通过计算输入向量与在步骤2)识别出的子集中所包括的各参考向量之间的距离来执行步骤3)。
有利地,所述压缩方法还包括将在步骤3)中识别出的参考向量的索引与所述输入向量相关联的步骤。
有利地,在步骤1)中,如通过根据本发明第一方面的方法所生成的,还为每个参考向量子集提供带索引的Q特征参考向量的多个子子集以及针对另一预定特征的与所述多个子子集相关联的子阈值。
有利地,所述压缩方法还包括以下步骤4),该步骤4)通过将所述输入向量的与所述另一预定特征相对应的另一特征的值和与所述多个子子集相关联的子阈值渐进地进行比较,来在与在步骤2)中识别出的子集相对应的所述多个子子集中识别出一子子集;步骤3)是在步骤4)识别出的所述子子集内执行的。
有利地,在步骤1)中,提供了如通过根据本发明第一方面的方法的步骤g)所生成的扩展子集,步骤2)和3)是对所述扩展子集执行的。
有利地,在步骤1)中,在步骤1)中,提供了如通过根据本发明第一方面的方法的步骤h)所生成的扩展子子集,步骤4)和3)是对于所述扩展子子集执行的。
在第五方面中,本发明涉及一种用于压缩数据的电子处理系统,该电子处理系统包括适于执行根据本发明第四方面的方法的步骤的装置。
所述电子处理系统例如可以是个人计算机、计算机网络、如无线手持设备(如,PDA或手机)的嵌入式设备,或者更具体地有DSR系统的用户设备。
在另一方面中,本发明涉及一种包括程序指令的计算机程序,所述程序指令适于在电子处理系统上执行所述程序时执行根据本发明第四方面的方法的步骤。
对于计算机程序的特性,参见以上参照本发明第三方面所描述的内容。
在另一方面中,本发明涉及一种适于数据压缩的设备,该设备包括:
-特征提取单元,用于处理数字输入数据以提供Q特征向量,其中,Q为大于1的整数;
-存储器单元,用于存储至少一个向量码本,所述至少一个向量码本包括经排序的带索引的Q特征参考向量的多个预定子集以及与所述多个子集相关联的预定阈值;
-数据压缩单元,用于针对由所述特征提取单元提供的每个输入Q特征向量,通过将该输入向量的预定特征与所述预定阈值相比较来识别出所存储子集中的一个子集;并且用于在所识别的子集内识别出针对输入特征向量提供最低失真的参考向量。
有利地,所述数据压缩单元还适于将提供最低失真的所述参考向量的索引与输入Q特征向量相关联。
有利地,所述数据压缩单元适于执行根据本发明第四方面的方法的步骤。
有利地,所述存储器单元适于存储通过根据本发明第一方面的方法生成的经排序索引的Q特征参考向量的(扩展)子集或(扩展)子子集、阈值以及任何子阈值。
有利地,所述设备还包括码本处理单元,该码本处理单元适于执行根据本发明第一方面的方法的步骤,并且适于将通过所述方法生成的(扩展)子集或(扩展)子子集、阈值以及任何子阈值存储在所述存储器单元中。
有利地,所述设备还包括转换单元,该转换单元用于将输入语音信号转换为数字语音数据并且将其提供给所述特征提取单元。
在另一方面中,本发明涉及一种分布式语音识别系统,该分布式语音识别系统包括:
根据本发明以上方面的用户设备;
识别设备,用于重构数字输入数据;
传送信道,用于所述用户设备与所述识别设备之间的数据传输。
有利地,所述用户设备适于将提供与输入Q特征向量的最低失真的参考向量的索引发送到所述识别设备。
有利地,所述分布式语音识别系统还包括码本处理单元,该码本处理单元适于执行根据本发明第一方面的方法的步骤,并且适于将通过所述方法生成的(扩展)子集或(扩展)子子集、阈值以及任何子阈值存储在所述存储器单元中。
附图说明
下面将参照在附图中表示为非限制示例的实施例来例示本发明的特征及优点,在附图中:
图1示出了示意性地描述了本发明的码本生成方法的流程图;
图2示出了包括两特征参考向量的非均匀码本的示例;
图3示出了表示具有N个两特征向量的码本的表格的示例;
图4示出了示意性地描述了根据本发明的区域选择过程的优选实施例的流程图;
图5示出了示意性地描述了根据本发明的最小失真搜索过程的优选实施例的流程图;
图6示出了示意性地描述了参数优化过程的优选实施例的流程图,该参数优化过程计算要在本发明的码本生成方法中使用的参数Nfirst、Mfirst、Nsecond、Msecond的值的最优集合;
图7示意性地示出了根据本发明的码本生成方法所处理的Q维表格;
图8示意性地示出了根据本发明实施例的DSR系统;
图9示出了示意性地描述了根据本发明的用于数据压缩的方法的流程图;
图10示意性地表示对二维表格执行的根据本发明的区域选择过程。
具体实施方式
图9是根据本发明的用于数据压缩的方法的流程图表示。
该方法例如可用于语音识别系统的客户端侧。
该方法开始于块900并且包括设置阶段和运行时间阶段。
设置阶段包括由块901表示的码本生成步骤(或区域格式化步骤),其中将预定码本细分为多个预定区域。
针对各输入特征向量执行运行时间阶段,并且该阶段包括分别由块902和903表示的区域选择步骤以及最小失真搜索步骤(或者最小失真搜索及映射步骤)。在区域选择步骤中,识别出码本的区域,该区域包括了提供对于输入向量的最小失真的码本向量。在最小失真搜索步骤中,在所识别出的区域中找到提供对输入向量的最小失真的码本向量,并将输入向量与所识别的码本向量的索引相映射。
在块904中,检查是否必须处理新的特征向量。在否的情况下,处理结束(块905)。
下面将更详细地描述本发明的方法。
根据本发明的提供低数据压缩计算工作的用于生成码本的方法,对包括N个参考向量(每个参考向量都具有Q个经排序的特征)的集合的码本进行处理用以将该码本分割为多个预定区域(每个预定区域包括参考向量子集),并且用以生成对所述预定区域的访问信息。
码本可由包括N行和Q列的表格来表示,其中,每行表示码本的一向量。
根据该表示,包括Q列和所述表格的行子集的子表格表示码本空间中的包括对应的码本参考向量子集的一区域。
通过细分的迭代操作及对所述表格中的行的排序处理来对所述表格进行处理,从而提供多个预定子表格和用于访问这些子表格的信息。
图1中的流程图示意性地示出了上述码本生成步骤的优选实施例。在这里考察的示例性示例中,该生成步骤是对具有N个两特征向量(即,Q=2){C1,A;C1,B},{C2,A;C2,B}……{CN,A;CN,B}的非均匀码本执行的,其中,1,2……N表示参考向量的索引,A和B分别表示向量的第一特征和第二特征。
图2示出了由针对DSR压缩算法的ETSI“Aurora”标准规定的、包括64个参考向量的非均匀二维码本的示例(即,Q=2且N=64)。
根据图1的流程图,该过程开始于块100,在块101处将非均匀码本转换成表格。
图3示出了在块101处形成的包括所述N个两特征向量{C1,A;C1,B},{C2,A;C2,B}……{CN,A;CN,B}的表格的示例。
在块102处,选择所述两列之一,并在保持向量的所有特征之间的对应关系的情况下,针对所选列中包括的特征值,升序(或,另选地降序)地逐行对表格中的所有向量进行排序。
在块103处,将所获得的经排序N行表格细分为Nfirst个2列子表格,这些子表格优选地具有尽可能彼此相等的行数,即,尽可能等于N/Nfirst
当然,当除式N/Nfirst的余数为零时Nfirst个子表格可具有等于N/Nfirst的相同行数。
为简便起见,在以下描述中,假设所述余数为零。
在块104处,定义识别在块103处获得的Nfirst个子表格的Nfirst个第一阈值。
例如可将Nfirst个第一阈值设置为包括在对应子表格的所选列中所包含的最末值与下一子表格(如果有的话)的所选列中所包含的第一值之间的值。优选地,将Nfirst个第一阈值设置为等于在对应子表格的所选列中包含的最末值。
在块105处,优选地通过在各个子表格的首和/或末加上与在经排序表格中该子表格之前和之后的Mfirst行(如果有的话)相对应的Mfirst行,来对各个子表格进行扩展,其中,Mfirst≤N/Nfirst。从而提供包括Pfirst,i行的扩展子表格,其中Pfirst,i可假设为以下的值:
对于表格中的首末扩展子表格,Pfirst,1=(N/Nfirst)+Mfirst
对于表格中的所有其他中央扩展子表格,Pfirst,2=(N/Nfirst)+2·Mfirst
在块106处,与先前在块102处采用的顺序无关地并且在保持向量的所有特征之间的对应关系的情况下,针对另一列中所包含的特征值按照升序(或降序)对各个扩展子表格的向量进行排序。
在块107处,将具有Pfirst,i行的各个经排序扩展子表格细分为Nsecond个两列子子表格,使得在子子表格中的行数为Pfirst,i/Nsecond。由于首末扩展子表格的较小尺寸,所以首末扩展子表格的行数比其他扩展的子表格的行数少。
当然,当除式Pfirst,i/Nsecond的余数为零时,从各个扩展子表格获得的Nsecond个子子表格可具有等于Pfirst,i/Nsecond的相同行数。
为简便起见,在以下描述中假设所述余数为零。
在块108处,定义Nsecond个第二阈值,其识别在块107处针对Nfirst个扩展子表格中的每一个获得的Nsecond个子子表格。
因此,提供了总共Nfirst·(Nsecond)个阈值。
例如可以利用以上公开的用于定义第一阈值的相同规则来定义Nsecond个第二阈值。
在块109处,优选地通过在各个尺寸为Pfirst,i/Nsecond的子子表格的首和/或末加上与在对应经排序扩展子表格中的、该子子表格之前和之后的Msecond行(如果有的话)相对应的Msecond行,来扩展各个子子表格,其中Msecond<(Pfirst,i/Nsecond)。由此提供了包括Psecond,j行的扩展子子表格,其中Psecond,j可假设为以下不同的值:
对于首末扩展子表格的首末扩展子子表格,Psecond,1=(Pfirst,1/Nsecond)+Msecond
对于首末扩展子表格的所有其他中央扩展子子表格,Psecond,2=(Pfirst,1/Nsecond)+2·Msecond
对于所有其他中央扩展子表格的首末扩展子子表格,Psecond,3=(Pfirst,2/Nsecond)+Msecond
对于所有其他中央扩展子表格的所有其他中央扩展子子表格,Psecond,4=(Pfirst,2/Nsecond)+2·Msecond
在块110处,将所生成的扩展子表格以及第一和第二阈值存储在存储器中,以使得随后可在向量压缩方法中使用它们。
需要注意的是,在块105和109处执行的扩展步骤是本发明的码本生成方法中的优选(但非必要)步骤,这些步骤通过提供子表格与子子表格之间的交叠而使得即使对于位于码本中由所述(子)子表格表示的相邻区域边界附近的输入向量,也能够显著地减少向量压缩中的误差。
一旦根据本发明的方法生成了给定码本,每当接收到新的输入向量时就可以通过用所述给定码本内提供最小失真的参考向量的索引来代替输入向量,以执行向量压缩。
更具体地说,根据本发明的向量压缩方法包括上述两个过程,即区域选择和最小失真搜索。
图4中的流程图示意性地示出了对于两特征输入向量和根据参考图1所公开的方法而处理的二维码本的区域选择过程的优选实施例。
过程开始于块401,从存储器中提取Nfirst个第一阈值和Nsecond个第二阈值(块402),并且接收新的输入向量{XA,XB}(块403)。
在块404处将参数i和j初始化为1。
在块405处,将输入向量的XA特征与第i个第一阈值(FIRST_THi)进行比较。如果XA≤FIRST_THi,则在块408中选择第i个子表格。如果XA>FIRST_THi,则在块406处将参数i与Nfirst进行比较。如果i<Nfirst,则在块407处将i递增1(i=i+1),并且返回块405;否则,在块408处选择第i个子表格。
换言之,在块405到408,将输入向量{XA,XB}的第一特征(即,XA)与Nfirst个第一阈值渐进地进行比较,以识别出输入向量包含于其中的子表格。
然后,在块409到412,将输入向量{XA,XB}的第二特征(即,XB)与Nsecond个第二阈值渐进地进行比较,以在块408处选择的第i个子表格内识别出输入向量包含于其中的子子表格。
更具体地说,在块409处,将输入向量的XB特征与第j个第二阈值(SECOND_TH_ij)进行比较。如果XB≤SECOND_TH_ij,则在块412处选择在块408处选择的第i个子表格的第j个子子表格。如果XB>SECOND_TH_ij,则在块410处将参数j与Nsecond进行比较。如果j<Nsecond,则在块411处将j递增1(j=j+1),并返回到块409;否则,在块412处选择在块408处选择的第i个子表格的第j个子子表格。在块413处,该过程结束。
图4中示出的实施例假设按照升序来执行码本生成方法的块102和106处执行的排序。当在块102和/或块106中使用降序时,在块405和/或块409处,将检查特征XA和/或XB是否大于(而不是小于)阈值。
此外,图4中示出的实施例——其中,将输入向量的第一特征XA渐进地与第一阈值相比较,并且将输入向量的第二特征XB渐进地与第二阈值相比较——假设在码本生成方法中,第一阈值与表格的第一列相关联,第二阈值与第二列相关联。
然而,通常,需要注意的是,当针对码本表格中的第q列定义了阈值集时,那么输入向量中的第q个特征是与所述阈值集渐进地进行比较的特征。
图10示意性地表示了针对两特征输入向量和由具有第一列CA和第二列CB的二维表格表示的二维码本执行的根据本发明的区域选择过程。在所示的示例中,通过区域选择过程识别出了第三扩展子表格S的第二扩展子子表格用以进行最小失真搜索过程。
图5中的流程图示意性地示出了最小失真搜索过程的优选实施例,其中通过识别距输入向量距离最小的参考向量来计算最小失真。
根据该过程,在区域选择过程的块412处选择的第i个子表格的第j个扩展子子表格内搜索最小距离参考向量。然后将接收到的输入向量与识别出的参考向量的索引相映射。
更具体地说,在块501处,该过程开始。
在块502处,将参数BEST_DIST初始化为值MAX_DIST,该MAX_DIST是等于或大于所考虑的码本的两点之间的最大距离的值;将参数k初始化为等于在区域选择过程的块412处选择的扩展子子表格中所包含的第一参考向量的索引的值m;并且,载入所述扩展子子表格的行数Psecond,j
块503检查是否处理了在块412处选择的扩展子子表格的所有Psecond,j个参考向量{CK,A,CK,B}。即,块503检查k是否大于m+(Psecond,j-1)。
在是的情况下,过程结束(块509)。在否的情况下,在块504处计算输入向量{XA,XB}与当前参考向量{CK,A,CK,B}之间的距离DIST。
在块505处,执行计算出的距离DIST与BEST_DIST参数之间的比较。如果DIST<BEST_DIST,则在块506处将参数BEST_DIST设置为等于计算出的距离DIST,否则在块508处将参数k递增1(k=k+1),并且返回到块503。
在块507处,以当前参考向量{CK,A,CK,B}的索引来替代接收到的向量{XA,XB},并且返回到块508。
根据本发明,在包含数目等于Psecond,j的多个元素的扩展子子集内执行最小失真搜索过程。
例如可通过(加权)欧几里得距离计算来执行最小失真搜索过程。
在距离计算的最大次数(DNM)方面的最差情况发生在输入向量位于从表格的中央子表格获得的中央子子表格中时。实际上,在这种情况下,子子表格和对应子表格都在首末扩展。
具体来说,在最差的情况下,由块504执行的距离计算的最大次数给出为:
DNM=Psecond,4=(Pfirst,2/Nsecond)+2·Msecond
其中,
Pfirst,2=(N/Nfirst)+2·Mfirst
因此,距离计算的最大次数(DNM)给出为:
DNM = ( N / N first ) + 2 &CenterDot; M first N sec ond + 2 &CenterDot; M sec ond = N N first &CenterDot; N sec ond + 2 &CenterDot; M first N sec ond + 2 &CenterDot; M sec ond < < N
例如,考虑64个两参考向量(N=64,Q=2)的非均匀码本。例如以4(Nfirst=4)来除具有64行和2列的对应码本表格。获得四个具有(N/Nfirst)=64/4=16行的子表格。然后将这些子表格扩展8行(Mfirst=8)。按照这种方式,扩展子表格的行数如下:
对于第一个和最后一个(首末)扩展子表格,P(1)=P(4)=Pfirst,1=(N/Nfirst)+Mfirst=24。
对于中央扩展子表格,P(2)=P(3)=Pfirst,2=(N/Nfirst)+2·Mfirst=32。
然后将各个扩展子表格细分为4个子子表格(Nsecond=4),由此获得总数等于Nfirst·Nsecond=4·4=16的子子表格,这些子子表格的行数如下:
对于从第一个和最后一个子表格获得的子子表格,Pfirst,1/Nsecond=24/4=6。
对于所有其他子子表格,Pfirst,2/Nsecond=32/4=8。
然后将子子表格扩展3行(Msecond=3)。按照这种方式,扩展子子表格的行数如下:
对于相对于第一个和最后一个扩展子表格的第一个和最后一个扩展子子表格,P(1,1)=P(1,4)=P(4,1)=P(4,4)=(Pfirst,1/Nsecond)+Msecond=9;
对于相对于第一个和最后一个扩展子表格的所有其他中央扩展子子表格,P(1,2)=P(1,3)=P(4,2)=P(4,3)=(Pfirst,1/Nsecond)+2·Msecond=12;
对于相对于中央扩展子表格的第一个和最后一个扩展子子表格,P(2,1)=P(2,4)=P(3,1)=P(3,4)=(Pfirst,2/Nsecond )+Msecond=11。
对于相对于中央扩展子表格的所有其他中央扩展子子表格,P(2,2)=P(2,3)=P(3,2)=P(3,3)=(Pfirst,2/Nsecond)+2·Msecond=14。
在该示例中,获得了等于14的距离计算的最大次数DNM。该值可通过上述关系获得如下:
DNM = N N first &CenterDot; N sec ond + 2 &CenterDot; M first N sec ond + 2 &CenterDot; M sec ond = 64 4 &CenterDot; 4 + 2 &CenterDot; 8 4 + 2 &CenterDot; 3 = 14 < < 64
从而,根据本发明要执行的距离计算的最大次数小于利用常规ETSI压缩算法(穷举计算)必须执行的距离计算次数(等于N)。
还需要注意,尽管在本发明的码本生成方法中,阈值与子表格和子子表格相关联,但是优选地在扩展子子表格中执行最小失真搜索过程。这有利地使得,即使在输入向量位于由所述子子表格表示的码本区域的边界附近时,也可减少向量压缩中的误差。
对于选择要在本发明的码本生成方法中使用的上述参数Nfirst、Mfirst、Nsecond以及Msecond,例如可通过以下近似过程来执行。即,可通过以下步骤来选择这些参数:首先使用具有很多行的子表格(子子表格),测试对于给定输入向量集(例如,从应用中获得或者随机生成)的向量压缩方法的结果,然后通过渐进地减少子表格(子子表格)的行数,直到压缩方法给出的误差低于取决于应用的可接受预选阈值。
为此,需要注意,可高度灵活地选择上述参数。实际上,各个子表格可具有彼此不同的行数,并且/或者可扩展不同的行数(例如,对于各个子表格有不同的Mfirst)。类似地,各个子子表格可具有彼此不同的行数,并且/或者可扩展不同的行数(例如,对于各个子子表格有不同的Msecond)。例如,有利地可选择参数,以使得即使在具有奇数个参考向量或者非2的幂的数量的参考向量的非均匀码本的情况下也获得具有几乎相同行数的子子表格。
申请人发现了一种在最小失真搜索过程的复杂度和精度方面优化对上述参数的选择过程的方法。
所提出的方法致力于在非均匀码本空间内生成包括几乎相同数量的参考向量的区域(即,码本表格的具有几乎相同行数的扩展子子表格),以使得最小失真搜索过程所需的计算工作对于所有接收到的输入向量来说大概相同,而与这些输入向量所包含于其中的区域无关。按照这种方式,将非均匀码本空间分为尺寸不同但点数近似相同的多个区域。
在所提出的优化方法中,施加了以下条件:
·分别将表格和各个扩展子表格分为包括近似(考虑到末端(子)子表格具有仅在一侧扩展的较低尺寸)相同行数(分别等于N/Nfirst和Pfirst,i/Nsecond)的子表格和子子表格。;
·将子表格扩展相同的行数Mfirst,并将子子表格扩展相同的行数Msecond
·参考向量数N等于2的幂:N=2n。如果码本中的参考向量数不是2的幂,则可在表格的末端或首端加上包含多个伪参考向量(例如,设置为等于码本的最低位或最高向量)的多行,以获得等于2的幂的行数。然后将伪向量排除在最小失真搜索过程的执行之外。需要注意的是,通过上述“AURORA”,ETSI标准定义的码本全部具有为2的幂的N个参考向量;
·Nfirst为2的幂:Nfirst=2r
·Mfirst的最大值为N/Nfirst
·Nsecond的最大值为Pfirst,1
·Nsecond为2的幂:Nsecond=2t
·Msecond的最大值为Pfirst,1/Nsecond
·必须满足以下关系式:
P first , 1 mod N sec ond = 0 P first , 2 mod N sec ond = 0
其中,r、s、t、u是非负整数,mod是模数运算符(即,“x mody”是除式“x/y”的余数)。
图6中的流程图示意性地示出了参数优化方法的优选实施例,其通过验证满足上述条件并且最终解对应于复杂度函数CPX(下面对其进行定义)的最小值并且给出了小于预定阈值THR_ERR的误差(最终设置为零)来计算值BEST_Nfirst、BEST_Mfirst、BEST_Nsecond、BEST_Msecond的最优集合。
根据图6的流程图,执行四个嵌套循环。
在块701处,过程开始。
在块702处,将参数BEST_CPX初始化为N(对复杂度函数CPX来说的最差情况)。
在块703处,将参数r初始化为1(即,BEST_Nfirst=2r=2),并且开始目的为设置参数BEST_Nfirst的最外第一循环。
在块704处,将参数值r与n进行比较。如果r=n(即,BEST_Nfirst=2r=N),则优化过程在块708处结束。如果r≠n,则执行块705。
在块705处,将参数s优化为N/Nfirst(即,BEST_Mfirst=N/Nfirst),并且开始目的为设置参数BEST_Mfirst的第二循环。
在块706处,将参数值s与零进行比较。如果s=0(即,BEST_Mfirst=0),则在块707处将参数r增加1(r=r+1),并且返回到块704。如果s≠0,则在块709处将参数t设置为等于log2(Pfirst,1),并且开始目的为设置参数BEST_Nsecond的第三循环。
在块710处,将参数值t与1进行比较。如果t=1(即,BEST_Nsecond=2t=1),则在块711处将参数s减小1(s=s-1),并且返回到块706。如果t≠1,则在块712处检查以下条件:Pfirst,1 modNsecond≠0;Pfirst,2 mod Nsecond≠0。如果所述条件之一得到满足,则在块713处将参数t减小1(t=t-1),并且返回到块710。如果所述条件中的任一个都得不到满足,则在块714处将参数u设置为等于Pfirst,1/Nsecond(即,BEST_Msecond=Pfirst,1/Nsecond),并且开始目的为设置参数BEST_Msecond的第四循环。
在块715处,将参数值u与零进行比较。如果u=0(即,BEST_Msecond=0),则在块713处将参数t减少1(t=t-1),并且返回到块710。如果u≠1,则在块716处计算复杂度函数CPX。
复杂度函数CPX表示运行时间内通过最小失真搜索过程必须执行以用以找到最小失真参考向量的距离计算次数。例如,将复杂度函数定义为考虑到码本所划分成的所有区域(所有扩展子子表格)而计算出的、各个区域(各个扩展子子表格)内包含的参考向量的平均数量,即为:
CPX = &Sigma; i = 1 N first &Sigma; j = 1 N sec ond P ( i , j ) N first &CenterDot; N sec ond
在块717处,将在块716处计算出的CPX值与BEST_CPX参数进行比较。如果CPX≥BEST_CPX,则在块713处将参数t增加1(t=t+1)并且返回到块710。如果CPX<BEST_CPX,则在块718处计算误差参数ERR。
在块719处,将在块718处计算出的ERR值与THR_ERR相比较。如果ERR>THR_ERR,则在块713处将参数t减小1(t=t-1),并且返回到块710。如果ERR≤THR_ERR,则在块720处将参数BEST_Nfirst、BEST_Mfirst、BEST_Nsecond、BEST_Msecond、BEST_CPX分别设置为等于2r、s、2t、u以及CPX。然后,在块721处,将参数u减小1(u=u-1),并且返回到块715。注意,只有当CPX<BEST_CPX时,才在块718处计算误差参数ERR。也就是说,只有当利用在块720的最近一次执行中设置的参数值BEST_Nfirst、BEST_Mfirst、BEST_Nsecond、BEST_Msecond、BEST_CPX找到了复杂度函数CPX的新的局部最小值时,才计算误差参数ERR。这有利地减少了优化过程的计算量。
块718处的误差参数ERR可通过以下步骤来获得:对输入向量集(例如,取决于应用或者随机生成)执行根据本发明的最小失真搜索过程;并且将由此获得的结果与通过常规穷举计算算法获得的那些结果进行比较。
在块719处使用的阈值THR_ERR由用户预定义,其取决于应用并还可被设置为零。
注意,在图6示出的实施例中,针对从最小值2变到最大值N的Nfirst,执行目的为设置参数Nfirst并开始于块704的最外循环。由此首先针对Nfirst的低值来检查参数优化过程,Nfirst的低值有利地使得要在本发明的码本生成方法中形成的子表格数较少,由此要存储的子表格数也减少。
对于目的为设置参数Mfirst并开始于块705的循环,它是针对从最大值N/Nfirst变到最小值0的Mfirst执行的。由此通过检查从最高值到最低值的复杂度来执行参数优化过程。
对于目的为设置参数Nsecond并开始于块709的循环,它是针对从最大值Pfirst,1变到最小值2的Nsecond执行的。按照这种方式,首先针对Nsecond的高值来检查参数优化过程,Nsecond的高值有利地使得在本发明的码本生成方法中形成具有较低数量的参考向量的较高数量的子子表格,从而减少了复杂度函数。
对于目的为设置参数Msecond并开始于块714的循环,它是针对从最大值Pfirst,1/Nsecond变到最小值0变化的Msecond执行的。按照这种方式,如果利用Msecond的当前值,ERR参数不低于阈值THR_ERR,则不检查Msecond的更低的值,并且以Nsecond的另一值重复该过程。这有利地减少了优化过程的计算。
尽管参照二维码本(Q=2)描述了参数优化过程,但是可以按照本领域技术人员根据对二维情况的以上描述将非常清楚的方式,将这一过程扩展到Q(Q>2)维码本的情况下。
注意,与本发明的码本生成方法一样,本发明的参数优化过程也可以离线执行,对于给定码本仅执行一次。
还要注意,参数优化过程不仅可用于针对预定应用选择对于所述应用给出的码本的Nfirst、Mfirst、Nsecond以及Msecond参数的最优值,而且可用于当对于所述应用给出的码本出于任何原因改变时选择所述参数的新的最优值。
以上参照图1、图4以及图5中的流程图针对二维码本(Q=2)描述了本发明的码本生成方法和压缩方法。然而,本发明的方法还可应用于包括N行和Q列的Q维码本,其中Q大于2。
在这种情况下,如图7中示意性示出的,可针对Q列码本表格中的各列迭代地执行针对两列码本表格所公开的码本生成方法中的排序、细分以及扩展步骤。
具体来说,必须针对码本表格的各列有利地重复以下步骤:
·相对于在当前考虑的列中包括的特征值,按照升序或降序对表格中的行或者在前一循环中获得的各(扩展)子表格中的行进行排序;
·将表格或在前一循环中获得的各(扩展)子表格细分为预定数量的子表格;
·针对当前考虑的列将阈值与各子表格相关联;
·考虑到表格中的另一列(如果有的话),可选地将各子表格扩展预定数量的行,从而生成要在下一循环中处理的扩展子表格。
然后将所生成的(扩展)子表格或(扩展)子子表格以及所有生成的阈值存储在存储器中,从而可随后在类似于以上公开的区域选择过程和最小失真搜索过程中使用它们。
通常,注意,可仅将通过上述步骤的最近一次执行生成的(扩展)子表格或(扩展)子子表格存储在存储器中。
当不执行扩展步骤时,这对应于将具有经排序的参考向量的表格如该表格从上述步骤的最近一次执行获得的那样存储在存储器中。
实际上,当执行扩展步骤时,有利的是将通过针对次近一次考虑的列执行的细分和扩展步骤所生成的且针对最近一次的列排序的扩展(子)子表格存储在存储器中。然后通过适当的指针可访问通过针对最近一次考虑的列执行的排序、细分以及扩展步骤生成的扩展子子表格(其要用在区域选择过程和最小失真搜索过程中)。
因为通过针对次进一列考虑执行的细分和扩展步骤生成的扩展(子)子表格相对于通过针对最近一次考虑的列执行的排序、细分以及扩展步骤生成的子子表格,总体上包括更少数量的参考向量,所以这使得能够节省存储空间。
在图7中,阴影矩形表示可利用类似于参照图4所公开的过程的区域选择过程对于接收到的输入向量渐进地识别出的(扩展)子表格的示例。
如从图7中所显见,码本表格的列越多,在最终选择的子表格601内必须通过最小失真搜索过程计算的距离计算次数越少。
实际上,在所示示例中,阴影扩展子表格的行数从第一列到最末列减少。因为用于应用最小失真搜索过程的子表格位于最末列中,所以本发明使得随着列数的增加,特征向量压缩所需的计算量能够逐渐减少。
根据本发明的码本生成方法、区域选择过程、最小失真搜索过程以及参数优化过程可通过诸如个人计算机、嵌入式设备或计算机网络的电子处理系统利用适当的硬件、固件和/或软件实现来执行。
将根据对于本领域技术人员根据本说明书显见的原则且不脱离本发明的范围来设计所述实现。
本发明的方法可用在需要进行数据压缩用以按照更紧凑的格式传送或者存储信息的任何时候。例如,本发明的方法可用于图像处理系统中的图像信号压缩或分布式语音识别系统中的语音信号压缩。
通过示例的方式,图8示出了根据本发明实现的分布式语音识别系统800的实施例的框图。
系统800包括用于特征提取和数据压缩的用户设备810以及用于最终信号识别的识别系统820(或者为“后端”)。用户设备810和识别系统820可分别为移动电话和远程服务器820。
系统800还包括限定用于用户设备810与识别系统820之间的数据交换的传输信道的数据网络805。
在图8中示出的框图中,用户设备810包括转换单元801,其中对输入语音进行采样并将其转换为原始输入语音的数字表示。转换单元801是电声设备,包括用于将声压波形转换为数字化信号的所有设备,例如,麦克风换能器、模拟滤波器、自动增益控制器以及模数转换器。
用户设备810还包括特征提取单元802(或者为“前端”),其中通过特征提取算法对数字化语音进行处理以生成一系列特征向量。特征提取算法可根据上述“AURORA”ETSI标准来实现,从而对于输入语音的每个时间帧生成一14特征向量。
分割单元803易于通过对14个特征进行成对分组,而将各个14特征向量分为七个两特征向量。
压缩单元804适于通过本发明的向量压缩方法利用根据本发明的码本生成方法生成的七个相应预定码本,对这七个两特征向量中的每一个进行压缩。优选地根据本发明的参数优化过程预先选择要在本发明的码本生成方法中使用的参数Nfirst、Mfirst、Nsecond以及Msecond。存储器单元806适于存储通过本发明的码本生成方法获得的(子)子表格和阈值。
将从向量压缩块804输出的索引通过传送信道805发送到识别系统820,该识别系统820根据常规技术对输入的索引进行处理以识别并且/或者重构输入语音。传送信道例如可以是4.8kbit/s的无线数据信道。
因为移动单元在计算、存储以及电池能量方面受到限制,所以有利地由移动单元外的电子处理系统(例如,个人计算机)离线地执行本发明的码本生成方法和参数优化方法。然后,将要由向量压缩单元804使用的所生成的扩展(子)子表格和阈值存储在移动单元的存储器(例如,存储器单元806)中。
按照这种方式,仅由移动单元执行如上所示需要低计算工作的本发明的向量压缩方法,而不会使其有限资源超负荷。

Claims (34)

1、一种用于生成向量码本的方法,该方法提供了始于向量码本的低数据压缩计算工作,所述向量码本包括N个参考向量的集,其中每个参考向量都包括Q个特征,其中,N和Q是大于1的正整数,所述方法包括以下步骤:
a)针对所述N个参考向量的集的预定特征的值,按照升序或降序来对所述N个参考向量的集进行排序;
b)将所述经排序的参考向量的集细分为多个子集;
c)将针对所述预定特征的相应阈值与所述多个子集中的每一个相关联。
2、根据权利要求1所述的方法,该方法还包括进一步分割所述N个参考向量的集的步骤,所述进一步分割包括如下步骤:
d)针对所述N个参考向量的集的另一预定特征的值,按照升序或降序来对所述多个子集中的每一个的参考向量进行排序;
e)将所述多个经排序的参考向量子集中的每一个细分为多个子子集;
f)将针对所述另一预定特征的相应子阈值与所述多个子子集中的每一个相关联。
3、根据权利要求2所述的方法,其中,重复所述进一步分割步骤预定次数,每次将在前一次执行的所述进一步分割中获得的子子集看作子集,并且对于执行步骤d)和f),考虑所述N个参考向量的集的又一预定特征。
4、根据权利要求1所述的方法,该方法还包括步骤g),该步骤g)对于在步骤b)中获得的所述多个子集中的至少一个子集,利用相邻子集的至少一个参考向量对其进行扩展。
5、根据权利要求4所述的方法,其中,通过以下步骤来执行步骤g):如下来扩展在步骤b)中获得的、处于在步骤a)中排序的所述集的顶部处的子集,即,在该顶部子集的末端添加与在步骤a)中排序的所述集中紧接在该顶部子集之下的参考向量相对应的至少一个参考向量。
6、根据权利要求4所述的方法,其中,通过以下步骤来执行步骤g):如下来扩展在步骤b)中获得的、处于在步骤a)中排序的所述集的底部处的子集,即,在该底部子集的顶端添加与在步骤a)中排序的所述集中紧接在该底部子集之上的参考向量相对应的至少一个参考向量。
7、根据权利要求4所述的方法,其中,通过以下步骤来执行步骤g):如下来扩展在步骤b)中获得的任何其他中央子集,即,在该中央子集的首端和末端添加与在步骤b)中排序的所述集中紧接该中央子集之上和之下的参考向量相对应的至少一个参考向量。
8、根据权利要求2所述的方法,该方法还包括步骤g),该步骤g)对于在步骤b)中获得的所述多个子集中的至少一个子集,利用相邻子集的至少一个参考向量对其进行扩展,并且对于根据步骤g)扩展的子集执行步骤d)和e)。
9、根据权利要求8所述的方法,其中,所述进一步分割还包括在步骤e)之后的步骤h),该步骤h)对于在步骤e)中获得的多个子子集中的至少一个子子集,利用相邻子子集中的至少一个参考向量对其进行扩展。
10、根据权利要求9所述的方法,其中,通过以下步骤来执行步骤h):如下来扩展在步骤e)中获得的、处于步骤d)中排序的对应扩展子集的顶部处的每个子子集,即,在该顶部子子集的末端添加与在所述排序的对应扩展子集中紧接该顶部子子集之下的参考向量相对应的至少一个参考向量。
11、根据权利要求9所述的方法,其中,通过以下步骤来执行步骤h):如下来扩展在步骤e)中获得的、处于步骤d)中排序的对应扩展子集的底部处的每个子子集,即,在该底部子子集的首端添加与在所述排序的对应扩展子集中紧接该底部子子集之上的参考向量相对应的至少一个参考向量。
12、根据权利要求9所述的方法,其中,通过以下步骤来执行步骤h):如下来扩展在步骤e)中获得的任何其他中央子子集,即,在该中央子子集的首端和末端添加与在步骤d)中排序的对应扩展子集中紧接该中央子子集之上和之下的参考向量相对应的至少一个参考向量。
13、根据权利要求3所述的方法,其中,所述进一步分割还包括在步骤e)之后的步骤h),该步骤h)对于在步骤e)中获得的多个子子集中的至少一个子子集,利用相邻子子集中的至少一个参考向量对其进行扩展,每次将根据前一次执行的步骤h)而扩展的子子集看作子集来重复所述进一步分割步骤。
14、一种包括程序指令的计算机程序,所述程序指令适于在电子处理系统上执行程序时执行根据权利要求1到13中的任一项的方法的步骤。
15、一种用于压缩数据的方法,所述数据由具有Q个特征的输入向量表示,其中,Q为大于1的整数,所述用于压缩数据的方法包括以下步骤:
1)提供如通过根据权利要求1到13中的任一项的方法生成的向量码本,该向量码本包括:带索引的Q特征参考向量的多个子集,以及针对预定特征的、与所述多个子集相关联的阈值;
2)通过将所述输入向量的与所述预定特征相对应的特征的值和与所述多个子集相关联的阈值渐进地进行比较,以在所述多个子集之中识别出一参考向量子集;
3)在步骤2)中识别出的子集内识别出提供针对所述输入向量的最低失真的参考向量。
16、根据权利要求15所述的方法,其中,通过识别出距所述输入向量距离最小的参考向量来执行步骤3)。
17、根据权利要求15所述的方法,该方法还包括将在步骤3)中识别出的参考向量的索引与所述输入向量相关联的步骤。
18、根据权利要求15所述的方法,其中,在步骤1)中,如通过根据权利要求2到13中的任一项的方法所生成的,还为每个参考向量子集提供带索引的Q特征参考向量的多个子子集以及针对另一预定特征的与所述多个子子集相关联的子阈值。
19、根据权利要求18所述的方法,该方法还包括步骤4),该步骤4)通过将所述输入向量的与所述另一预定特征相对应的另一特征的值和与所述多个子子集相关联的子阈值渐进地进行比较,来从与在步骤2)中识别出的子集相对应的所述多个子子集之中识别出一子子集;步骤3)是在步骤4)识别出的所述子子集内执行的。
20、根据权利要求15所述的方法,其中,在步骤1)中,提供了如通过根据权利要求4到13中的任一项的方法的步骤g)所生成的扩展子集,步骤2)和3)是对于所述扩展子集执行的。
21、根据权利要求19所述的方法,其中,在步骤1)中,提供了如通过根据权利要求9到13中的任一项的方法的步骤h)所生成的扩展子子集,步骤4)和3)是对所述扩展子子集执行的。
22、一种包括程序指令的计算机程序,所述程序指令适于在电子处理系统上执行程序时执行根据权利要求15到21中的任一项的方法的步骤。
23、一种适于数据压缩的设备(810),该设备包括:
特征提取单元(802),用于处理数字输入数据以提供Q特征向量,其中,Q为大于1的整数;
存储器单元(806),用于存储至少一个向量码本,所述至少一个向量码本包括经排序的带索引的Q特征参考向量的多个预定子集以及与所述多个子集相关联的预定阈值;
数据压缩单元(804),用于针对由所述特征提取单元(802)提供的各个输入Q特征向量,通过将该输入向量的预定特征与所述预定阈值相比较来识别出所述多个预定子集中的一个子集;并且用于在所识别出的子集内识别出针对输入特征向量提供最低失真的参考向量。
24、根据权利要求23所述的设备,其中,所述数据压缩单元(804)还适于将提供最低失真的所述参考向量的索引与输入Q特征向量相关联。
25、根据权利要求23所述的设备,其中,所述数据压缩单元(804)适于执行根据权利要求15到21中的任一项的方法的步骤。
26、根据权利要求23所述的设备,其中,所述存储器单元(806)适于存储通过根据权利要求1到13中的任一项的方法生成的经排序的带索引的Q特征参考向量的子集、阈值以及任何子阈值。
27、根据权利要求23所述的设备,其中,所述存储器单元(806)适于存储通过根据权利要求1到13中的任一项的方法生成的经排序的带索引的Q特征参考向量的子子集、阈值以及所有子阈值。
28、根据权利要求23所述的设备,该设备还包括码本处理单元,该码本处理单元适于执行根据权利要求1到13中的任一项的方法的步骤,并且适于将通过所述方法生成的子集、阈值以及任何子阈值存储在所述存储器单元(806)中。
29、根据权利要求23所述的设备,该设备还包括码本处理单元,该码本处理单元适于执行根据权利要求1到13中的任一项的方法的步骤,并且适于将通过所述方法生成的子子集、阈值以及所有子阈值存储在所述存储器单元(806)中。
30、根据权利要求23所述的设备,该设备还包括转换单元(801),该转换单元用于将输入语音信号转换为数字语音数据并且将其提供给所述特征提取单元(802)。
31、一种分布式语音识别系统(800),该分布式语音识别系统包括:
根据权利要求23到30中的任一项的用户设备(810);
识别设备(820),用于重构所述数字输入数据;
传送信道(805),用于所述用户设备(810)与所述识别设备(820)之间的数据传送。
32、根据权利要求31所述的分布式语音识别系统(800),其中,所述用户设备(810)适于将提供与输入Q特征向量的最低失真的参考向量的索引发送到所述识别设备(820)。
33、根据权利要求31所述的分布式语音识别系统(800),该分布式语音识别系统还包括码本处理单元,该码本处理单元适于执行根据权利要求1到13中的任一项的方法的步骤,并且适于将通过所述方法生成的子集、阈值以及任何子阈值存储在所述存储器单元(806)中。
34、根据权利要求31所述的分布式语音识别系统(800),该分布式语音识别系统还包括码本处理单元,该码本处理单元适于执行根据权利要求1到13中的任一项的方法的步骤,并且适于将通过所述方法生成的子子集、阈值以及所有子阈值存储在所述存储器单元(806)中。
CN2004800439812A 2004-07-23 2004-07-23 用于生成向量码本的方法、用于压缩数据的方法及装置、以及分布式语音识别系统 Expired - Fee Related CN101019171B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2004/008372 WO2006007871A1 (en) 2004-07-23 2004-07-23 Method for generating a vector codebook, method and device for compressing data, and distributed speech recognition system

Publications (2)

Publication Number Publication Date
CN101019171A true CN101019171A (zh) 2007-08-15
CN101019171B CN101019171B (zh) 2011-08-10

Family

ID=34958455

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004800439812A Expired - Fee Related CN101019171B (zh) 2004-07-23 2004-07-23 用于生成向量码本的方法、用于压缩数据的方法及装置、以及分布式语音识别系统

Country Status (8)

Country Link
US (1) US8214204B2 (zh)
EP (1) EP1771841B1 (zh)
JP (1) JP4703648B2 (zh)
KR (1) KR101010585B1 (zh)
CN (1) CN101019171B (zh)
AT (1) ATE464635T1 (zh)
DE (1) DE602004026645D1 (zh)
WO (1) WO2006007871A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009059557A1 (fr) * 2007-11-02 2009-05-14 Huawei Technologies Co., Ltd. Procédé et appareil de quantification à niveaux multiples
CN103837890A (zh) * 2014-02-26 2014-06-04 中国石油集团川庆钻探工程有限公司地球物理勘探公司 获取地震数据的方法及设备
CN107564535A (zh) * 2017-08-29 2018-01-09 中国人民解放军理工大学 一种分布式低速语音通话方法
CN112445943A (zh) * 2019-09-05 2021-03-05 阿里巴巴集团控股有限公司 数据处理的方法、装置和系统

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7587314B2 (en) * 2005-08-29 2009-09-08 Nokia Corporation Single-codebook vector quantization for multiple-rate applications
US20070299667A1 (en) * 2006-06-22 2007-12-27 Texas Instruments, Incorporated System and method for reducing storage requirements for a model containing mixed weighted distributions and automatic speech recognition model incorporating the same
GB0901262D0 (en) * 2009-01-26 2009-03-11 Mitsubishi Elec R&D Ct Europe Video identification
KR101711158B1 (ko) * 2010-12-22 2017-03-14 한국전자통신연구원 셀룰러 시스템에서 인접 셀간 간섭 제어 방법
US9779731B1 (en) * 2012-08-20 2017-10-03 Amazon Technologies, Inc. Echo cancellation based on shared reference signals
US10147441B1 (en) 2013-12-19 2018-12-04 Amazon Technologies, Inc. Voice controlled system
AU2016338689B2 (en) * 2015-10-14 2019-06-13 Pindrop Security, Inc. Call detail record analysis to identify fraudulent activity and fraud detection in interactive voice response systems
US11470194B2 (en) 2019-08-19 2022-10-11 Pindrop Security, Inc. Caller verification via carrier metadata

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4958225A (en) 1989-06-09 1990-09-18 Utah State University Foundation Full-search-equivalent method for matching data and a vector quantizer utilizing such method
US5061924B1 (en) 1991-01-25 1996-04-30 American Telephone & Telegraph Efficient vector codebook
US5651026A (en) * 1992-06-01 1997-07-22 Hughes Electronics Robust vector quantization of line spectral frequencies
JP3093879B2 (ja) * 1992-07-27 2000-10-03 オリンパス光学工業株式会社 ベクトル量子化コードブック作成及び探索装置
US5774839A (en) * 1995-09-29 1998-06-30 Rockwell International Corporation Delayed decision switched prediction multi-stage LSF vector quantization
GB9622055D0 (en) * 1996-10-23 1996-12-18 Univ Strathclyde Vector quantisation
US6009387A (en) * 1997-03-20 1999-12-28 International Business Machines Corporation System and method of compression/decompressing a speech signal by using split vector quantization and scalar quantization
US6161086A (en) * 1997-07-29 2000-12-12 Texas Instruments Incorporated Low-complexity speech coding with backward and inverse filtered target matching and a tree structured mutitap adaptive codebook search
US5946653A (en) 1997-10-01 1999-08-31 Motorola, Inc. Speaker independent speech recognition system and method
US6067515A (en) * 1997-10-27 2000-05-23 Advanced Micro Devices, Inc. Split matrix quantization with split vector quantization error compensation and selective enhanced processing for robust speech recognition
US5966688A (en) * 1997-10-28 1999-10-12 Hughes Electronics Corporation Speech mode based multi-stage vector quantizer
US6148283A (en) * 1998-09-23 2000-11-14 Qualcomm Inc. Method and apparatus using multi-path multi-stage vector quantizer
US6389389B1 (en) 1998-10-13 2002-05-14 Motorola, Inc. Speech recognition using unequally-weighted subvector error measures for determining a codebook vector index to represent plural speech parameters
US7389227B2 (en) * 2000-01-14 2008-06-17 C & S Technology Co., Ltd. High-speed search method for LSP quantizer using split VQ and fixed codebook of G.729 speech encoder
JP3483513B2 (ja) * 2000-03-02 2004-01-06 沖電気工業株式会社 音声録音再生装置
JP3367931B2 (ja) 2000-03-06 2003-01-20 日本電信電話株式会社 共役構造ベクトル量子化方法
US6633839B2 (en) 2001-02-02 2003-10-14 Motorola, Inc. Method and apparatus for speech reconstruction in a distributed speech recognition system
US7003454B2 (en) * 2001-05-16 2006-02-21 Nokia Corporation Method and system for line spectral frequency vector quantization in speech codec
CN1190772C (zh) 2002-09-30 2005-02-23 中国科学院声学研究所 语音识别系统及用于语音识别系统的特征矢量集的压缩方法
US20040176950A1 (en) * 2003-03-04 2004-09-09 Docomo Communications Laboratories Usa, Inc. Methods and apparatuses for variable dimension vector quantization

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009059557A1 (fr) * 2007-11-02 2009-05-14 Huawei Technologies Co., Ltd. Procédé et appareil de quantification à niveaux multiples
US8468017B2 (en) 2007-11-02 2013-06-18 Huawei Technologies Co., Ltd. Multi-stage quantization method and device
CN103837890A (zh) * 2014-02-26 2014-06-04 中国石油集团川庆钻探工程有限公司地球物理勘探公司 获取地震数据的方法及设备
CN103837890B (zh) * 2014-02-26 2016-07-06 中国石油集团川庆钻探工程有限公司地球物理勘探公司 获取地震数据的方法及设备
CN107564535A (zh) * 2017-08-29 2018-01-09 中国人民解放军理工大学 一种分布式低速语音通话方法
CN107564535B (zh) * 2017-08-29 2020-09-01 中国人民解放军理工大学 一种分布式低速语音通话方法
CN112445943A (zh) * 2019-09-05 2021-03-05 阿里巴巴集团控股有限公司 数据处理的方法、装置和系统

Also Published As

Publication number Publication date
JP4703648B2 (ja) 2011-06-15
KR101010585B1 (ko) 2011-01-24
KR20070047795A (ko) 2007-05-07
US8214204B2 (en) 2012-07-03
EP1771841A1 (en) 2007-04-11
ATE464635T1 (de) 2010-04-15
DE602004026645D1 (de) 2010-05-27
WO2006007871A1 (en) 2006-01-26
WO2006007871A8 (en) 2006-03-16
JP2008507718A (ja) 2008-03-13
EP1771841B1 (en) 2010-04-14
US20090037172A1 (en) 2009-02-05
CN101019171B (zh) 2011-08-10

Similar Documents

Publication Publication Date Title
JP4295118B2 (ja) パターン認識
US6278970B1 (en) Speech transformation using log energy and orthogonal matrix
EP1488411B1 (en) System for estimating parameters of a gaussian mixture model (gmm), or a gmm based hidden markov model
Bocchieri Vector quantization for the efficient computation of continuous density likelihoods
JP2690027B2 (ja) パターン認識方法及び装置
US6260013B1 (en) Speech recognition system employing discriminatively trained models
CN101019171B (zh) 用于生成向量码本的方法、用于压缩数据的方法及装置、以及分布式语音识别系统
US20100174389A1 (en) Automatic audio source separation with joint spectral shape, expansion coefficients and musical state estimation
WO2010080663A1 (en) Method and apparatus for vector quantization codebook search
CN112766484A (zh) 浮点神经网络模型量化系统和方法
US8386249B2 (en) Compressing feature space transforms
US20050096902A1 (en) Speech recognition from concurrent visual and audible inputs
KR20170088165A (ko) 심층 신경망 기반 음성인식 방법 및 그 장치
CA2190619A1 (en) Speech-recognition system utilizing neural networks and method of using same
US5737488A (en) Speech recognizer
CN112885367B (zh) 基频获取方法、装置、计算机设备和存储介质
EP1290543A2 (en) Method and apparatus for iterative training of a classification system
Takahashi et al. Discrete mixture HMM
JP2973805B2 (ja) 標準パターン作成装置
CN113593538B (zh) 语音特征的分类方法、相关设备及可读存储介质
Wang et al. Exploring quantization in few-shot learning
JP3091648B2 (ja) 隠れマルコフモデルの学習方法
JP3898676B2 (ja) 音声認識装置
JP2023079258A (ja) 音抽出システム及び音抽出方法
Yuan et al. A sequential initialization technique for vector quantizer design

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110810

Termination date: 20210723

CF01 Termination of patent right due to non-payment of annual fee