用于增强话音识别准确度的有地理标记的环境音频的制作方法

文档序号:13727165阅读:153来源:国知局
本申请是2012年10月12日进入中国国家阶段的、国际申请日为2011年3月22日的、申请号为201180019038.8的发明专利申请(名称为“用于增强话音识别准确度的有地理标记的环境音频”)的分案申请。相关申请的交叉引用本申请要求于2010年4月14日提交的、标题为GEOTAGGEDENVIRONMENTALAUDIOFORENHANCEDSPEECHRECOGNITIONACCURACY的第12/760,147号美国申请的优先权,其公开的内容通过引用并入于此。技术领域本说明书涉及话音识别。

背景技术:
如在本说明书中所用,“搜索查询”包括当用户请求搜索引擎执行搜索查询时用户向搜索引擎提交的一个或者多个查询检索词,其中“检索词”或者“查询检索词”包括一个或者多个完全或者部分字词、字符或者字符串。搜索查询的“结果”(或者“搜索结果”)包括统一资源定位符(URI)以及其它内容,该URI引用搜索引擎确定响应于搜索查询的资源。搜索结果可以包括其它事物、比如标题、预览图像、用户评分、地图或者方向、对应资源的描述或者已经从对应资源自动或者人工提取的或者以别的方式与对应资源关联的文字摘录。在其它方式之中,用户可以通过在键盘上键入或者在话音查询的上下文中通过向移动设备的麦克风中口述查询来录入搜索查询的查询检索词。当提交语音查询时,移动设备的麦克风除了用户的口述话语之外还可能记录环境噪声或者声音或者“环境音频”。例如,环境音频可以包括处于用户周围的其他人的背景聊天或者谈话或者自然(例如,狗吠)或者人造物体(例如,办公室、机场或者公路噪声或者建筑活动)生成的噪声。环境音频可能部分地遮蔽用户的语音从而使得自动化话音识别(“ASR”)引擎难以准确识别口述话语。

技术实现要素:
一般而言,可以在用于ASR引擎为地理区域适配、训练、选择或者另外生成噪声模型并且用于将这一噪声模型应用于从位于这一地理区域中或者附近的移动设备接收的“有地理标记的”音频信号(或者“采样”或者“波形”)的方法中体现本说明书中描述的主题内容的一个创新方面。如本说明书所用,“有地理标记的”音频信号指代已经与地理位置元数据或者地理空间元数据关联或者用地理位置元数据或者地理空间元数据“标记”的信号。位置元数据可以包括导航坐标如纬度和经度、海拔信息、方位或者指向信息或者与位置相关联的名称或者地址以及其它内容。更具体而言,方法包括:接收与由多个移动设备在多个地理位置记录的环境音频对应的有地理标记的音频信号;存储有地理标记的音频信号;以及使用有地理标记的音频信号的所选子集来针对特定地理区域生成噪声模型。在接收移动设备在特定地理区域内或者附近记录的话语时,ASR引擎可以使用针对特定地理区域生成的噪声模型来对音频信号执行噪声补偿,并且可以对噪声补偿的音频信号执行话音识别。注意,可以在接收话语之前、期间或者之后生成用于特定地理区域的噪声模型。一般而言,可以在包括以下动作的方法中体现本说明书中描述的主题内容的另一创新方面:接收与由多个移动设备在多个地理位置记录的环境音频对应的有地理标记的音频信号;接收与由特定移动设备记录的话语对应的音频信号;确定与特定移动设备相关联的特定地理位置;使用有地理标记的音频信号的子集来针对特定地理位置生成噪声模型,其中使用已经针对特定地理位置生成的噪声模型来对与话语对应的音频信号执行噪声补偿。这些方面的其它实施例包括被配置成执行方法的动作的对应系统、装置和计算机程序,所述计算机程序编码在计算机存储设备上。这些和其它实施例可以各自可选地包括以下特征中的一个或者多个特征。在各种示例中,使用噪声补偿的音频信号来对话语执行话音识别;生成噪声模型还包括在接收与话语对应的音频信号之前生成噪声模型;生成噪声模型还包括在接收与话语对应的音频信号之后生成噪声模型;为每个有地理标记的音频信号,确定在特定地理位置和与有地理标记的音频信号相关联的地理位置之间的距离,以及选择与在特定地理位置的预定距离内的地理位置相关联、或者与在N个与特定地理位置最近的地理位置之中的地理位置相关联的有地理标记的音频信号作为有地理标记的音频信号的子集;选择与特定地理位置相关联的有地理标记的音频信号作为有地理标记的音频信号的子集;基于特定地理位置、并且基于与话语关联的上下文数据选择有地理标记的音频信号的子集;上下文数据包括引用移动设备何时记录话语时的时间或者日期的数据、引用特定移动设备在记录话语时测量的速度或者运动量的数据、引用移动设备的设置的数据、或者引用移动设备的类型的数据;话语代表语音搜索查询,或者向数字口授应用或者对话系统的输入;确定特定地理位置还包括从移动设备接收引用特定地理位置的数据;确定特定地理位置还包括确定与设备相关联的以往地理位置或者默认地理位置;生成噪声模型包括使用有地理标记的音频信号的子集作为训练集来训练高斯混合模型(GMM);生成话语的一个或者多个候选转录,使用一个或者多个候选转录来执行搜索查询;处理接收的有地理标记的音频信号以排除环境音频的、包括多个移动设备的用户的语音的部分;从针对多个地理位置生成的多个噪声模型之中选择针对特定地理位置生成的噪声模型;限定围绕特定地理位置的区域,从多个噪声模型之中选择与区域内的地理位置相关联的多个噪声模型,生成选择的噪声模型的加权组合,其中使用选择的噪声模型的加权组合来执行噪声补偿;生成噪声模型还包括使用有地理标记的音频信号的子集以及使用音频信号的与话语对应的环境音频部分来为特定地理位置生成噪声模型;以及/或者区域被限定为围绕特定地理位置,以及选择在区域内记录的有地理标记的音频信号作为有地理标记的音频信号的子集可以实现本说明书中描述的主题内容的具体实施例以实现以下优点中的一个或者多个优点。ASR引擎可以提供音频信号的更好噪声抑制。可以提高话音识别准确度。可以使用环境音频信号来生成噪声模型,这些环境音频信号准确反映地理区域中的实际环境噪声。可以在服务器侧而不是在客户端设备上执行话音识别和噪声模型生成,以允许更好的过程优化并且增加计算效率。在附图和下文描述中阐述本说明书中描述的主题内容的一个或者多个实施例的细节。主题内容的其它潜在特征、方面和优点将从说明书、附图和权利要求中变得容易理解。附图说明图1是使用有地理标记的环境音频以增强话音识别准确度的示例系统的图。图2是过程的示例的流程图。图3是过程的另一示例的流程图。图4是过程的示例的泳道(swimlane)图。各种附图中的相似标号指示相似要素。具体实施方式图1是使用有地理标记的环境音频以增强话音识别准确度的示例系统100的图。图1还图示了在状态(a)至状态(i)期间在系统100内的数据流以及在状态(i)期间在移动设备104上显示的用户接口158。更具体而言,系统100包括通过一个或者多个网络110与包括移动设备102和移动设备104的移动客户端通信设备通信的服务器106和ASR引擎108。服务器106可以是搜索引擎、口授引擎、对话系统或者是使用转录的话音的任何其它引擎或者系统。网络110可以包括无线蜂窝网络、无线局域网(WLAN)或者Wi-Fi网络、第三代(3G)或者第四代(4G)移动电信网络、专用网络(如内联网)、公用网络(如因特网)或者其任何适当组合。状态(a)至状态(i)描绘了当系统100执行示例过程时出现的数据流。状态(a)至状态(i)可以是时序状态,或者它们可以在与所图示序列不同的序列中出现。简言之,根据图1中所示示例过程,ASR引擎108从移动设备102接收有地理标记的环境音频信号130并且针对多个地理位置生成地理特有噪声模型112。当接收与移动设备104记录的话语对应的音频信号138时,确定与移动设备104(或者移动设备104的用户)相关联的特定地理位置。ASR引擎108使用与特定地理位置匹配的或者以别的方式适合于特定地理位置的地理特有噪声模型来转录话语,并且从ASR引擎108向服务器106传达一个或者多个候选转录146。当服务器106是搜索引擎时,服务器106使用候选转录146来执行一个或者多个搜索查询、生成搜索结果152并且向移动设备104传达搜索结果152用于显示。更具体而言,在状态(a)期间,移动设备102通过网络110向ASR引擎108传达包括环境音频的有地理标记的音频信号130(本说明书称之为“环境音频信号”)。一般而言,环境音频可以包括(自然地或者以别的方式)出现于特定位置的任何环境声音。环境音频通常排除移动设备的用户的声音、话语或者语音。设备102a传达已经用引用“位置A”的元数据132a标记的音频信号130a,设备102b传达已经用引用“位置B”的元数据132b标记的音频信号130b,以及设备102c传达已经用也引用“位置B”的元数据132c标记的音频信号130c。如图所示,移动设备102可以将元数据132与音频信号130进行关联,或者ASR引擎108或者另一服务器可以在推断移动设备102的(或者移动设备102的用户的)位置之后关联元数据与音频信号130。环境音频信号130可以各自包括相对高质量音频(如十六千赫兹无损音频信号)的两秒(或者更多)摘录。环境音频信号130可以与元数据相关联,该元数据引用相应移动设备102在记录、捕获或者获得环境音频时的地理位置。可以从移动设备102向ASR引擎108人工上传环境音频信号130。例如,可以与生成并且向公用图像数据库或者贮存库传达图像结合生成并且传达环境音频信号130。备选地,对于选择参与的用户,可以自动获得并且从移动设备102向ASR引擎108传达环境音频信号130而在向ASR引擎108传达每个环境音频信号之前不请求显式用户致动。元数据132可以用任何数目的不同格式或者细节或者粒度水平描述位置。例如,元数据132a可以包括与移动设备102a的当时存在位置相关联的纬度和经度,并且元数据132c可以包括与移动设备102c的当时存在位置相关联的地址或者地理区域。另外,由于将移动设备102b图示为在移动的交通工具中,所以元数据132b可以描述交通工具的路径(例如,包括起点和终点以及运动数据)。此外,元数据132可以按照位置类型描述位置(例如,“移动交通工具”、“在海滩上”、“在餐馆中”、“在高建筑物中”、“南亚”、“农村区域”、“有建筑噪声的某处”、“游乐园”、“在船艇上”、“室内”、“地下”、“在街道上”、“森林”)。单个音频信号可以与描述一个或者多个位置的元数据相关联。与音频信号138相关联的地理位置可以代之以按照界定区域来描述、表达为限定界定区域的坐标集。备选的,可以使用区域标识符(比如,州名或者标识符、城市名、惯用名(例如,“中央公园”)、国名或者任意限定的区域的标识符(例如“隔间/区域ABC123”))来限定地理位置。在将位置与环境音频信号进行关联之前,移动设备102或者ASR引擎108可以处理元数据以调整位置信息的细节水平(例如,以确定与特定坐标集相关联的州),或者可以离散化位置信息(例如通过选择沿着路径的具体点或者与路径相关联的区域)。也可以通过指定或者添加位置型元数据、例如通过向其的关联地理坐标与海滩位置相关联的环境音频信号添加“在海滩上”标记或者通过向包括在背景中交谈的多个人的声音的环境音频信号添加“有许多人的某处”标记来调整元数据的细节水平。在状态(b)期间,ASR引擎108从移动设备102接收有地理标记的环境音频信号130,并且在数据存储库111中在环境音频信号的汇集114中存储有地理标记的音频信号(或者其部分)。如下文描述的那样,汇集用于训练、适配或者生成一个或者多个地理位置特有(或者“地理特有”)噪声模型112。由于汇集114中的环境音频信号不应包括用户的语音,所以ASR引擎108可以使用语音活动检测器以验证环境音频信号的汇集114仅包括与环境噪声对应的音频信号130或者滤除或者标识或者排除音频信号130(或者音频信号130的部分),这些音频信号包括移动设备102的各种用户的语音。ASR引擎108存储的环境音频信号的汇集114可以包括数以百计、数以千计、数以百万计或者数以千万计的环境音频信号。在所图示示例中,有地理标记的环境音频信号130a的部分或者全部可以存储于汇集114中作为环境音频信号124,有地理标记的环境音频信号130b的部分或者全部可以存储于汇集114中作为环境音频信号126a,并且有地理标记的环境音频信号130c的部分或者全部可以存储于汇集114中作为环境音频信号120b。在汇集中存储环境音频信号130可以包括确定用户的语音是否在音频信号130中被编码,并且分别基于确定用户的语音在音频信号130中被或者未被编码来确定存储或者确定不存储环境音频信号130。备选地,在汇集中存储环境音频信号130可以包括标识环境音频信号130的包括用户的语音的部分、通过去除包括用户的语音的部分或者通过关联对包括用户的语音的部分进行引用的元数据来变更环境音频信号130并且在汇集中存储变更的环境音频信号130。与环境音频信号130关联的其它上下文数据或者元数据也可以存储于汇集114中。例如,在汇集114中包括的环境音频信号在一些实现中可以包括其它元数据标记、比如指示背景语音(例如,自助餐厅聊天)是否存在于环境音频内的标记、标识获得特定环境音频信号的日期的标记(例如,用来确定采样年龄)或者标识特定环境音频信号是否以某一方式从汇集的在相同或者相似位置获得的其它环境音频信号偏离的标记。以这一方式,可以可选地过滤环境音频信号的汇集114以排除满足或者未满足特定标准的特定环境音频信号、比如排除比某个年龄更老的或者包括背景聊天的特定环境音频信号,该背景聊天可以标识个人或者本质上为专有或者私密的。在附加示例中,可以在与环境音频信号关联的元数据中标记如下数据,该数据引用汇集114的环境音频信号是否被人工或者自动上传。例如,可以仅使用自动上传的或者人工上传的那些环境音频信号来生成噪声模型112,或者可以在生成噪声模型期间向每个上传类别分配不同加权。虽然已经描述汇集114的环境音频信号为包括标识相应地理位置的显式标记,但是在其它实现中,比如当可以推导在音频信号与地理位置之间的关联性时,无需显式使用标记。例如,可以通过处理(例如用服务器106存储的)搜索日志来隐式关联地理位置与环境音频信号以确定用于特定环境音频信号的地理位置信息。因而ASR引擎108接收有地理标记的环境音频信号可以包括获得未明确包括地理标记的环境音频信号,并且推导和关联用于环境音频信号的一个或者多个地理标记。在状态(c)期间,通过网络110从移动设备104向ASR引擎108传达音频信号138。虽然图示了移动设备102为与移动设备104不同的设备,但是在其它实现中,从提供有地理标记的环境音频信号130的移动设备104之一传达音频信号138。音频信号138包括移动设备104(例如,当用户隐式或者显式发起语音搜索查询时)记录的话语140(“纽约体育馆”)。音频信号138包括引用地理位置“位置B”的元数据139。除了包括话语140之外,音频信号138还可以包括环境音频摘录、比如在口述话语140之前或者之后记录的环境音频的两秒摘录。尽管如在图1中所示将话语140描述为语音查询,但是在其它示例实现中,话语可以是向口授系统或者向对话系统输入的语音。可以使用与汇集114中包括的环境音频信号相关联的地理位置相同或者不同的细节水平来限定与音频信号138相关联的地理位置(“位置B”)。例如,与汇集114中包括的环境音频信号相关联的地理位置可以对应于地理区域,而与音频信号138相关联的地理位置可以对应于特定地理坐标。当细节水平不同时,ASR引擎108可以处理地理元数据139或者与汇集114的环境音频信号相关联的元数据以对准细节水平,从而可以执行子集选择过程。移动设备104(或者移动设备104的用户)可以基于当记录话语140时当前的位置信息将元数据139与音频信号138相关联,并且可以从移动设备104将元数据139与音频信号138一起向ASR引擎108传达。备选地,ASR引擎108可以基于ASR引擎108推断的用于移动设备104(或者移动设备104的用户)的地理位置将元数据与音频信号138相关联。ASR引擎108可以使用用户的日历时间表、用户偏好(例如,如存储于ASR引擎108或者服务器106的用户账户中或者如从移动设备104传达)、默认位置、以往位置(例如,移动设备104的GPS模块计算的最新位置)、用户在提交语音搜索查询时显式提供的信息、根据话语104本身、三角测量(例如,WiFi或者小区塔三角测量)、移动设备104中的GPS模块或者推算定位(deadreckoning)来推断地理位置。元数据139可以包括准确度信息,该信息指定地理位置确定的准确度,从而表示移动设备104在记录话语140时的时间实际上在元数据139指定的特定地理位置的可能性。还可以与音频信号138一起包括其它元数据。例如,与音频信号一起包括的元数据可以包括与相应移动设备102相关联的位置或者场所。例如,场所信息可以描述其中注册移动设备102的区域或者移动设备102的用户的语言或者方言以及其它可选参数。话音识别模块118可以使用这一信息以选择、训练、适配或者生成与移动设备104的上下文匹配的噪声、话音、声学、流行度或者其它模型。在状态(d)中,ASR引擎108选择汇集114中的环境音频信号的子集并且使用噪声模型生成模块116以使用环境音频信号的子集、例如通过使用环境音频信号的子集作为用于噪声模型的训练集来训练、适配或者生成一个或者多个噪声模型112(例如高斯混合模型(GMM))。子集可以包括汇集114中的环境音频信号中的所有或者比所有更少的环境音频信号。一般而言,噪声模型112与话音模型、声学模型、流行度模型和/或其它模型一起应用于音频信号138以将口述话语140转译或者转录成一个或者多个文字后续转录146,并且向候选转录生成话音识别置信度分数。具体地,噪声模型用于噪声抑制或者噪声补偿以增强口述话语140对于ASR引擎108的可理解性。更具体而言,噪声模型生成模块116可以使用音频信号、具体针对在被地理标记为已经在与音频信号138关联的地理位置(“位置B”)或者附近或者在相同或者相似类型的位置记录的环境音频信号126a和126b的汇集114来为该地理位置生成噪声模型120b。由于音频信号138与这一地理位置(“位置B”)相关联,所以除了环境音频信号126a和126b之外或者替代地,在音频信号138本身中包括的环境音频也可以用来针对该地理位置生成噪声模型。类似地,噪声模型生成模块116可以使用被地理标记为已经在另一地理位置(“位置A”)或者附近在相同或者相似类型的位置记录的环境音频信号124来为该另一地理位置生成噪声模型120a。如果噪声模型生成模块116被配置成选择被地理标记为已经在与音频信号138相关联的地理位置附近记录的环境音频信号,并且如果“位置A”在“位置B”附近,则噪声模型生成模块116还可以使用环境音频信号124来为“位置B”生成噪声模型120b。除了有地理标记的位置之外,与汇集114的环境音频信号相关联的其它上下文数据还可以用来选择环境音频信号的子集以用于生成噪声模型112或者调整特定音频信号将对生成具有的权值或者影响。例如,ASR引擎108可以选择汇集114中的环境音频信号的子集,该子集的环境音频信号的上下文信息指示它们比预定时间段更长或者更短或者它们满足某个质量或者近因标准。另外,ASR引擎108可以选择汇集114中的如下环境音频信号作为子集,这些环境音频信号的上下文信息指示它们是使用具有与移动设备104相似的音频子系统的移动设备来记录的。可以用来从汇集114选择环境音频信号的子集的其它上下文数据在一些示例中可以包括时间信息、日期信息、对特定移动设备在记录期间测量的速度或者运动量进行引用的数据、其它设备传感器数据、设备状态数据(例如,蓝牙耳机、扬声器电话或者传统输入方法)、如果用户选择提供用户标识符则包括标识符或者标识移动设备类型或者机型的信息。上下文数据例如可以提供在音频信号138的记录周围的条件的指示。在一个示例中,移动设备104与音频信号138一起供应的上下文数据可以指示移动设备104沿着与高速公路相关联的路径在高速公路速度行驶。ASR108可以推断音频信号138被记录在交通工具内,并且可以选择汇集114中的环境音频信号的与“在移动交通工具以内”位置类型相关联的子集。在另一示例中,移动设备104与音频信号138一起供应的上下文数据可以指示移动设备104在农村区域中并且话语140记录于周日上午6点。基于这一上下文数据,ASR108可以推断如果子集包括在高峰时段期间在农村区域中记录的环境音频信号,则不会提高话音识别的准确度。因而上下文数据可以由噪声模型生成模块116用来在生成噪声模型112时过滤环境音频信号的汇集114或者由话音识别模块118用来为特定话语选择适当噪声模型112。在一些实现中,噪声模型生成模块116可以基于与音频信号关联的地理位置邻近于与音频信号138关联的地理位置来选择汇集114的环境音频信号的加权组合。噪声模型生成模块116还可以使用音频信号138本身中包括的环境音频(例如,在口述话语之前或者之后或者在话语之间的停顿期间记录的环境音频)来生成噪声模型112。例如,噪声模型生成模块116可以首先相对于音频信号138中包括的环境音频的质量确定存储于汇集114中的环境音频信号的质量,并且可以选择仅使用存储于汇集114中的音频信号、仅使用音频信号138中包括的环境音频或者其任何适当加权或者未加权组合来生成噪声模型。例如,噪声模型生成模块116可以确定音频信号138包括非大量环境音频或者在汇集114中为该特定地理位置存储高质量环境音频,并且可以选择生成噪声模型而未使用音频信号138中包括的环境音频(或者向该环境音频给予小权值)。在一些实现中,噪声模型生成模块116从汇集114选择与N(例如,五、二十或者五十)个地理位置相关联的环境音频信号作为子集,这些地理位置最接近于与音频信号138相关联的地理位置。当与音频信号138相关联的地理位置时描述点或者地点(例如,坐标)时,可以相对于该地理位置限定几何形状(例如,圆形或者方形),并且噪声模型生成模块116可以从汇集114选择与完全或者部分位于限定的地理形状内的地理区域相关联的音频信号作为子集。如果已经按照位置类型(例如,“在海滩上”、“城市”)限定与音频信号138相关联的地理位置,则ASR引擎108仍然可以选择与相同或者相似位置类型关联的环境音频信号,即使与所选音频信号关联的物理地理位置在物理上未在与音频信号138关联的地理位置附近。例如,可以用“在海滩上”元数据为在佛罗里达海滩上记录的音频信号标记噪声模型,并且噪声模型生成模块116可以从汇集114选择如下环境音频信号作为子集,这些环境音频信号的相关联元数据指示它们也记录于海滩上,尽管事实是它们记录于澳大利亚、夏威夷或者冰岛的海滩上。如果与音频信号138相关联的地理位置未匹配于与汇集114的任何环境音频信号相关联的任何物理地理位置(或者没有与该任何物理地理位置的高质量匹配),则噪声模型生成模块116可以恢复基于匹配位置类型、而不是匹配实际物理地理位置来选择子集。其它匹配过程如集群(clusting)算法可以用来匹配音频信号与环境音频信号。除了生成一般的地理特有噪声模型112之外,噪声模型生成模块116还可以生成以其它标准为目标或者其它标准特有的地理特有噪声模型、比如不同设备类型或者一天不同时间特有的地理特有噪声模型。可以基于检测到已经满足阈值标准、比如确定汇集114的阈值数目的环境音频信号引用相同地理位置并且共享另一相同或者相似上下文(例如,一天中的某个时间、一周中的某天、运动特性、设备类型等)来生成作为目标的子模型。可以在已经接收话语140之前、期间或者之后生成噪声模型112。例如可以与处理话语140并行处理来自与话语相同或者相似的位置的多个环境音频信号,并且这些环境音频信号可以用来实时或者接近实时生成噪声模型112以更好地逼近围绕移动设备104的实况噪声条件。在状态(e)中,ASR引擎108的话音识别模块118使用用于与音频信号138相关联的地理位置的地理特有噪声模型120b来对音频信号138执行噪声补偿以增强话音识别的准确度,并且随后对噪声补偿的音频信号执行话音识别。当音频信号138包括描述移动设备104的设备类型的元数据时,ASR引擎108可以应用与音频信号关联的地理位置和移动设备104的设备类型二者特有的噪声模型122。话音识别模块118可以生成与在音频信号138中编码的话语匹配的一个或者多个候选转录和用于候选转录的话音识别置信度值。在状态(f)期间,从ASR引擎108向服务器106传达话音识别模块118生成的候选转录146中的一个或者多个候选转录。当服务器106是搜索引擎时,可以使用候选转录作为候选查询检索词以执行一个或者多个搜索查询。ASR引擎108可以在向服务器106发送候选转录146之前按照它们的相应话音识别置信度分数对它们排序。通过转录口述话语并且向服务器106提供候选转录,ASR引擎108可以向移动设备104提供话音搜索查询能力、口授能力或者对话系统能力。服务器106可以使用候选查询检索词来执行一个或者多个搜索查询、生成引用搜索结果160的文件152。服务器106在一些示例中可以包括用来在因特网内发现引用的网上搜索引擎、用来发现企业或者个人的电话簿型搜索引擎或者另一专门化搜索引擎(例如,提供对诸如餐馆和电影娱乐信息、医疗和药品信息等娱乐清单的引用的搜索引擎)。在状态(h)期间,服务器106向移动设备104提供引用搜索结果160的文件152。文件152可以是标记语言文件、比如可扩展标记语言(XML)或者超文本标记语言(HTML)文件。在状态(i)期间,移动设备104在用户接口158上显示搜索结果160。具体而言,用户接口包括:搜索框157,其显示具有最高话音识别置信度分数的候选查询检索词(“纽约体育馆”);备选查询检索词建议区域159,其显示话语140可能已经预计的候选查询检索词的另一替代(“JimNewark”);搜索结果160a,其包括指向用于“纽约健身房”160a的资源的链接;以及搜索结果160b,其包括指向用于“曼哈顿塑体”160b的链接。搜索结果160a还可以包括在被选择时可以由移动设备104拨号的电话号码的链接。图2是过程200的示例的流程图。简言之,过程200包括接收一个或者多个有地理标记的环境音频信号、接收与地理位置相关联的话语并且至少部分基于地理位置生成噪声模型。可以对音频信号执行噪声补偿,因为噪声模型促使提高话音识别准确度。更具体而言,当过程200开始时,接收与环境音频对应的有地理标记的音频信号(202)。移动设备可以在特定地理位置记录有地理标记的音频信号。有地理标记的音频信号可以包括关联上下文数据、诸如在记录有地理标记的音频信号期间测量的时间、日期、速度或者运动量,或者记录有地理标记的音频信号的设备类型。可以处理接收的有地理标记的音频信号以排除环境音频的如下部分,这些部分包括移动设备的用户的语音。可以接收并且存储在一个或者多个地理位置记录的多个有地理标记的音频信号。接收特定移动设备记录的话语(204)。话语可以包括语音搜索查询或者可以是向口授或者对话应用或者系统的输入。话语可以包括关联上下文数据,诸如在记录有地理标记的音频信号期间测量的时间、日期、速度或者运动量,或者记录有地理标记的音频信号的设备类型。确定与移动设备相关联的特定地理位置(206)。例如,可以从移动设备接收引用特定地理位置的数据,或者可以确定与移动设备相关联的以往地理位置或者默认地理位置。使用有地理标记的音频信号的子集来针对特定地理位置生成噪声模型(208)。可以通过为每个有地理标记的音频信号确定在特定地理位置和与有地理标记的音频信号相关联的地理位置之间的距离;以及选择在特定地理位置的预定距离内的或者与在N个与特定地理位置最近的地理位置之中的地理位置相关联的那些有地理标记的音频信号来选择有地理标记的音频信号的子集。可以通过标识与特定地理位置相关联的有地理标记的音频信号,以及/或者通过标识在声学上与话语相似的有地理标记的音频信号来选择有地理标记的音频信号的子集。可以基于特定地理位置并且基于与话语相关联的上下文数据来选择有地理标记的音频信号的子集。生成噪声模型可以包括使用有地理标记的音频信号的子集作为训练集来训练GMM。一些噪声减少或者分离算法如非负矩阵因式分解(NMF)可以使用特征矢量本身而不是高斯分量代表的平均值。其它算法如Alqonquin可以在有人为变化时使用GMM或者特征矢量本身。使用已经针对特定地理位置生成的噪声模型对与话语对应的音频信号执行噪声补偿以增强音频信号或者减少话语由于噪声所致的不确定性(210)。对噪声补偿的音频信号执行话音识别(212)。执行话音识别可以包括生成话语的一个或者多个候选转录。可以使用一个或者多个候选转录来执行搜索查询,或者可以提供候选转录中的一个或者多个候选转录作为数字口授应用的输出。备选地,可以提供候选转录中的一个或者多个候选转录作为向对话系统的输入以允许计算机系统与特定移动设备的用户对话。图3是过程300的示例的流程图。简言之,过程300包括采集有地理标记的音频信号并且至少部分基于与每个有地理标记的音频信号相关联的特定地理位置生成多个噪声模型。可以在对话语执行话音识别时至少部分基于与话语相关联的地理位置选择这些噪声模型中的一个或者多个噪声模型。更具体而言,当过程300开始时,接收与环境音频对应的有地理标记的音频信号(302)。移动设备可以在特定地理位置记录有地理标记的音频信号。可以处理接收的有地理标记的音频信号以排除环境音频的如下部分,这些部分包括移动设备的用户的语音。可以接收并且存储在一个或者多个地理位置记录的多个有地理标记的音频信号。可选地,接收与有地理标记的音频信号关联的上下文数据(304)。有地理标记的音频信号可以包括关联上下文数据、诸如在记录有地理标记的音频信号期间测量的时间、日期、速度或者运动量或者记录有地理标记的音频信号的设备类型。生成一个或者多个噪声模型(306)。可以使用有地理标记的音频信号的子集来针对特定地理位置,或者可选地针对位置类型生成每个噪声模型。可以通过为每个有地理标记的音频信号确定在特定地理位置和与有地理标记的音频信号相关联的地理位置之间的距离,并且选择在特定地理位置的预定距离内的、或者与在N个与特定地理位置最近的地理位置之中的地理位置相关联的那些有地理标记的音频信号来选择有地理标记的音频信号的子集。可以通过标识与特定地理位置相关联的有地理标记的音频信号来选择有地理标记的音频信号的子集。可以基于特定地理位置并且基于与有地理标记的音频信号相关联的上下文数据选择有地理标记的音频信号的子集。生成噪声模型可以包括使用有地理标记的音频信号的子集来训练高斯混合模型(GMM)。接收特定移动设备记录的话语(308)。话语可以包括语音搜索查询。话语可以包括关联上下文数据,诸如在记录有地理标记的音频信号期间测量的时间、日期、速度或者运动量,或者记录有地理标记的音频信号的设备类型。检测地理位置(310)。例如,可以从移动设备的GPS模块接收引用特定地理位置的数据。选择噪声模型(312)。可以从针对多个地理位置生成的多个噪声模型之中选择噪声模型。上下文数据可以可选地促成从针对特定地理位置的多个噪声模型之中选择特定的噪声模型。使用所选噪声模型对话语执行话音识别(314)。执行话音识别可以包括生成话语的一个或者多个候选转录。可以使用一个或者多个候选转录来执行搜索查询。图4示出了用于使用有地理标记的环境音频来增强话音识别准确度的过程400的示例的泳道图。过程400可以由移动设备402、ASR引擎404和搜索引擎406来实现。移动设备402可以向ASR引擎404提供音频信号、比如环境音频信号或者与话语对应的音频信号。虽然仅图示了一个移动设备402,但是移动设备402可以代表向过程400贡献环境音频信号和语音查询的大量移动设备402。ASR引擎404可以基于环境音频信号生成噪声模型,并且可以在执行话音识别时将一个或者多个噪声模型应用于传入语音搜索查询。ASR引擎404可以向搜索引擎406提供语音搜索查询内的话语的转录以完成语音搜索查询请求。过程400始于移动设备402向ASR引擎404提供408有地理标记的音频信号。音频信号可以包括环境音频以及关于记录环境音频的位置的指示。可选地,有地理标记的音频信号可以包括例如形式为元数据的上下文数据。ASR引擎404可以在环境音频数据存储库中存储有地理标记的音频信号。移动设备402向ASR引擎404提供410话语。话语例如可以包括语音搜索查询。话语的记录可以可选地包括例如在记录话语之前或者之后短暂记录的环境音频采样。移动设备402向ASR引擎404提供412地理位置。移动设备在一些示例中可以提供使用GPS模块来检测的导航坐标、最新(但是未必与记录并行)GPS读数、默认位置、根据先前提供的话语派生的位置或者通过发射塔的推算定位或者三角测量来估计的位置。移动设备402可以可选地向ASR引擎404提供上下文数据、比如传感器数据、设备机型标识或者设备设置。ASR引擎404生成414噪声模型。可以部分通过训练GMM来生成噪声模型。可以基于移动设备402提供的地理位置生成噪声模型。例如,从在移动设备402的位置或者附近的位置提交的有地理标记的音频信号可以促成噪声模型。可选地,移动设备402提供的上下文数据可以用来过滤有地理标记的音频信号以选择与记录话语的条件最适合的有地理标记的音频信号。例如,可以按照一周中的某天或者一天中的某个时间来过滤在移动设备402提供的地理位置附近的有地理标记的音频信号。如果环境音频采样与移动设备402提供的话语一起包括,则可以可选地在噪声模型中包括环境音频采样。ASR引擎404对提供的话语执行话音识别416。使用由ASR引擎404生成的噪声模型,可以将移动设备402提供的话语转录成一个或者多个查询检索词集合。ASR引擎404向搜索引擎406转发418生成的转录。如果ASR引擎404生成多个转录,则可以可选地以置信度为序对转录排序。ASR引擎404可以可选地向搜索引擎406提供上下文数据、比如地理位置,搜索引擎406可以使用该上下文数据对搜索结果过滤或者排序。搜索引擎406使用转录来执行420搜索操作。搜索引擎406可以对与转录检索词有关的一个或者多个URI定位。搜索引擎406向移动设备402提供422搜索查询结果。例如,搜索引擎406可以转发如下HTML代码,该代码生成定位的URI的可视清单。已经描述多个实现。然而,将理解可以进行各种修改而未脱离公开内容的精神实质和范围。例如,可以在重新排序、添加或者去除步骤时使用上文所示流程的各种形式。因而其它实现在所附权利要求的范围内。可以在数字电子电路中或者在包括本说明书中公开的结构及其结构等效物的计算机软件、固件或者硬件中或者在它们中的一项或者多项的组合中实现本说明书中描述的实施例和所有功能操作。实施例可以被实现为一个或者多个计算机程序产品、即在计算机可读介质上编码的用于由数据处理装置执行或者控制数据处理装置的操作的计算机程序指令的一个或者多个模块。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储器设备、实现机器可读传播信号的物质组成或者它们中的一项或者多项的组合。术语“数据处理装置”涵盖了用于处理数据的所有装置、设备和机器、例如包括一个可编程处理器、一个计算机或者多个处理器或者计算机。装置除了包括硬件之外还可以包括为讨论的计算机程序创建执行环境的代码、例如构成处理器固件、协议栈、数据库管理系统、操作系统或者它们中的一项或者多项的组合的代码。传播信号是人为生成的信号、例如由机器生成的电、光学或者电磁信号,该信号被生成以用于对信息进行编码以用于向适当接收器装置发送。可以用包括编译或者解释语言的任何形式的编程语言编写计算机程序(也称为程序、软件、软件应用、脚本或者代码),并且可以用任何形式部署它、包括作为独立程序或者作为适合用于在计算环境中使用的模块、部件、子例程或者其它单元。计算机程序不一定对应于文件系统中的文件。程序可以存储于保持其它程序或者数据的文件的部分中(例如存储于标记语言文档中的一个或者多个脚本)、专用于讨论的程序的单个文件中或者多个协同文件(例如存储一个或者多个模块、子程序或者代码部分的文件)中。计算机程序可以被部署成在一个计算机上或者在位于一个地点或者分布于多个地点并且由通信网络互连的多个计算机上执行。在本说明书中描述的过程和逻辑流程可以由一个或者多个可编程处理器执行,该处理器执行一个或者多个计算机程序以通过对输入数据操作并且生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路如FPGA(现场可编程门阵列)或者ASIC(专用集成电路)执行,并且装置也可以实现为该专用逻辑电路。适合于执行计算机程序的处理器例如包括通用和专用微处理器和任何种类的数字计算机的任何一个或者多个处理器。一般而言,处理器将从只读存储器或者随机存取存储器或者这二者接收指令和数据。计算机的基本单元是用于执行指令的处理器以及用于存储指令和数据的一个或者多个存储器设备。一般而言,计算机也将包括用于存储数据的一个或者多个海量存储设备如磁盘、光磁盘或者光盘或者操作地耦合成从该海量存储设备接收数据或者向该海量存储设备传送数据或者这二者。然而计算机无需具有这样的设备。另外,计算机可以嵌入于另一设备中,仅举数例,该另一设备例如是写字板计算机、移动电话、个人数字助理(PDA)、移动音频播放器、全球定位系统(GPS)接收器。适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备、例如包括半导体存储器设备如EPROM、EEPROM和闪存设备;磁盘如内部硬盘或者可拆卸盘;光磁盘;以及CDROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路补充或者并入于专用逻辑电路中。为了提供与用户的交互,实施例可以实限于计算机上,该计算机具有用于向用户显示信息的显示器设备如CRT(阴极射线管)或者LCD(液晶显示器)监视器以及用户可以用来向计算机提供输入的键盘和指点设备如鼠标或者跟踪球。其它种类的设备也可以用来提供与用户的交互;例如向用户提供的反馈可以是任何形式的感官反馈如视觉反馈、听觉反馈或者触觉反馈;并且可以用包括声音、话音或者触觉输入的任何形式接收来自用户的输入。实施例可以实现于计算系统中,该计算系统包括后端部件如作为数据服务器或者包括中间件部件如应用服务器或者包括前端部件、例如具有如下图形用户界面或者网上浏览器的客户端计算机或者这样的后端、中间件或者前端部件中的一个或者多个部件的任何组合,用户可以通过该图形用户界面或者网上浏览器与实现交互。系统的部件可以由任何数字数据通信形式或者介质如通信网络互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”)如因特网。计算系统可以包括客户端和服务器。客户端和服务器一般相互远离并且通常通过通信网络交互。客户端和服务器的关系借助计算机程序来发生,这些计算机程序在相应计算机上运行并且相互具有客户端-服务器关系。尽管本说明书包含许多细节,但是这些不应解释为对公开内容的范围或者可以要求保护的内容的范围的限制、而应当作为对具体实现特有的特征的描述。也可以在单个实施例组合实施本说明书中在单独实施例的上下文中描述的某些特征。反言之,也可以在多个实施例中单独或者在任何适当子组合中实施在单个实施例的上下文中描述的各种特征。另外虽然上文可以将特征描述为在某些实施例中作用并且甚至起初这样要求保护,但是在一些情况下可以从要求保护的组合中去除来自该组合的一个或者多个特征,并且要求保护的组合可以涉及子组合或者子组合的变体。类似地,尽管在附图中以特定顺序描绘操作,但是这不应理解为要求以所示特定顺序或者以序列顺序执行这样的操作或者执行所有所示操作以实现希望的结果。在某些境况中,多任务和并行处理可以是有利的。另外,在上文描述的实施例中分离各种系统部件不应理解为在所有实施例中要求这样的分离,并且应当理解描述的程序部件和系统一般可以一起集成于单个软件产品中或者封装到多个软件产品中。在其中提到HTML文件的每个实例中,可以替换为其它文件类型或者格式。例如HTML文件可以替换为XML、JSON、明文或者其它类型的文件。另外当提到表或者散列表时,可以使用其它数据结构(比如电子数据表、关系数据库或者结构化文件)。这样已经描述特定实施例。其它实施例在所附权利要求的范围内。例如在权利要求中记载的动作可以按不同顺序来执行并且仍然获得希望的结果。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1