利用設備停靠情境的語音識別的制作方法
【專利摘要】用于利用??壳榫硜?,執(zhí)行語音識別的方法、系統(tǒng)以及包括被編碼在計算機存儲介質上的計算機程序的裝置。在一個方面,一種方法包括訪問包括經(jīng)編碼的語音的音頻數(shù)據(jù)。指示客戶端設備的??壳榫车男畔⒈辉L問,??壳榫撑c音頻數(shù)據(jù)相關聯(lián)。多個語言模型被標識。多個語言模型中的至少一個語言模型基于??壳榫潮贿x擇。利用所選擇的語音模型對音頻數(shù)據(jù)執(zhí)行語音識別,以標識針對音頻數(shù)據(jù)的一部分的轉錄。
【專利說明】利用設備??壳榫车恼Z音識別
[0001]與相關申請的交叉引用
[0002]本申請要求2011年I月21日遞交的美國臨時申請N0.61 / 435,022和2011年3月4日遞交的美國申請N0.13 / 040,553的優(yōu)先權。這些申請的全部內容通過引用被合并于此。
【背景技術】
[0003]語音識別的使用正變得越來越普遍。隨著技術的改進,計算設備的用戶已經(jīng)獲得了對語音識別功能的更多使用。很多用戶在他們的工作以及日常生活的其它方面中依賴語音識別。
【發(fā)明內容】
[0004]就一個總的方面而言,一種計算機實現(xiàn)的方法包括訪問包括經(jīng)編碼的語音的音頻數(shù)據(jù);訪問指示客戶端設備的停靠情境的信息,??壳榫撑c音頻數(shù)據(jù)相關聯(lián);標識多個語言模型;基于停靠情境來選擇多個語言模型中的至少一個;并且使用所選擇的語言模型對音頻數(shù)據(jù)執(zhí)行語音識別,以標識針對音頻數(shù)據(jù)的一部分的轉錄。
[0005]實現(xiàn)方式可以包括以下特征中的一個或多個特征。例如,指示客戶端設備的??壳榫车男畔⒅甘究蛻舳嗽O備與第二設備之間的連接,客戶端設備被物理連接到的第二設備。指示客戶端設備的??壳榫车男畔⒅甘究蛻舳嗽O備與客戶端設備被無線連接到的第二設備之間的連接。方法包括針對多個語言模型中的每個語言模型,基于??壳榫硜泶_定要分配給語言模型的加權值,加權值指示語言模型將指示針對經(jīng)編碼的語音的正確轉錄的概率,其中基于??壳榫尺x擇多個語言模型中的至少一個包括基于被分配的加權值來選擇多個語言模型中的至少一個。音頻數(shù)據(jù)中所編碼的語音被客戶端設備檢測,并且指示??壳榫车男畔⒅甘疽纛l數(shù)據(jù)中所編碼的語音被客戶端設備檢測到時客戶端設備是否被連接到停靠站臺。音頻數(shù)據(jù)中所編碼的語音被客戶端設備檢測,并且其中指示??壳榫车男畔⒅甘疽纛l數(shù)據(jù)中所編碼的語音被客戶端設備檢測到時客戶端設備被連接到的停靠站臺的類型。經(jīng)編碼的語音包括一個或多個口述查詢短語,轉錄包括口述查詢短語的轉錄,并且方法還包括使得搜索引擎利用一個或多個口述查詢短語的轉錄執(zhí)行搜索并且向客戶端設備提供指示搜索查詢的結果的信息。確定針對多個語言模型中的每個語言模型的加權值包括訪問與??壳榫诚嚓P聯(lián)的所存儲的加權值。確定針對多個語言模型中的每個語言模型的加權值包括訪問所存儲的加權值并且基于??壳榫掣淖兯鎯Φ募訖嘀?。多個語言模型中的每個語言模型針對特定的詞語話題類別被訓練。基于??壳榫炒_定加權值包括確定客戶端設備被連接到車輛??空九_并且針對被訓練為輸出地址的導航語言模型,確定提高導航語言模型相對于多個語言模型中的其它語言模型被選擇的概率的加權值。
[0006]就另一個總的方面而言,一種計算機實現(xiàn)的方法包括在客戶端設備處檢測包括語音的音頻;將所檢測到的音頻編碼為音頻數(shù)據(jù);將音頻數(shù)據(jù)傳輸至服務器系統(tǒng);標識客戶端設備的停靠情境;將指示??壳榫车男畔鬏斨练掌飨到y(tǒng);以及在客戶端設備處接收音頻數(shù)據(jù)中的至少一部分的轉錄,服務器系統(tǒng)已經(jīng)基于指示??壳榫车男畔亩鄠€語言模型中選擇了語言模型,通過利用所選擇的語言模型對音頻數(shù)據(jù)執(zhí)行語音識別生成了轉錄,并且將轉錄傳輸至客戶端設備。
[0007]實現(xiàn)方式可以包括以下特征中的一個或多個特征。例如,被標識的??壳榫呈窃诼曇舯粰z測到時客戶端設備的停靠情境。指示客戶端設備的停靠情境的信息指示客戶端設備與客戶端設備被物理連接到的第二設備之間的連接。指示客戶端設備的??壳榫车男畔⒅甘究蛻舳嗽O備與客戶端設備被無線連接到的第二設備之間的連接。
[0008]這些方面的其它實現(xiàn)方式包括系統(tǒng)、裝置以及被編碼在計算機存儲設備上被配置為執(zhí)行方法的動作的計算機程序。
[0009]關于一個或更多個實現(xiàn)方式的細節(jié)在附圖和下面的描述中被給出。根據(jù)說明書、附圖和權利要求,其它特征和優(yōu)點將變得清楚。 【專利附圖】
【附圖說明】
[0010]圖1是用于利用客戶端設備的??壳榫硜韴?zhí)行語音識別的系統(tǒng)的示例的示圖。
[0011]圖2A是圖示了語言模型的表征的示例的示圖。
[0012]圖2B是圖示了聲音模型結合圖2A中所示的語言模型的使用示例的示圖。
[0013]圖3是圖示了用于利用客戶端設備的停靠情境執(zhí)行語音識別的過程的示例的流程圖。
[0014]圖4是計算設備的框圖。
【具體實施方式】
[0015]在各種實現(xiàn)方式中,客戶端設備的停靠情境可以被用于提高語音識別的準確性。語音識別系統(tǒng)可以包括多個語言模型,每個語言模型針對不同的詞語話題或類別被訓練。當訪問包括經(jīng)編碼的語音的音頻數(shù)據(jù)時,語音識別也可以訪問指示與語音相關聯(lián)的??壳榫车男畔ⅰM?壳榫晨梢园ɡ绠斦Z音被檢測到時檢測到語音的設備的??壳榫场UZ音識別系統(tǒng)可以利用該??壳榫硜磉x擇特定的語言模型,以用于識別在該??壳榫持斜惠斎氲恼Z音。
[0016]在很多實例中,設備的??壳榫晨梢灾甘井斣O備在該??壳榫持袝r設備的用戶可能發(fā)出的語音的類型。例如,對被連接到車輛??空九_的客戶端設備講話的用戶可能使用與導航或地址相關的詞語。當語音在車輛停靠站臺中的設備上被輸入時,語音識別系統(tǒng)可以選擇針對與導航相關的詞語被訓練的語言模型并使用該模型來識別語音。通過基于??壳榫尺x擇特定的語言模型,語音識別系統(tǒng)可以將語音識別過程傾向于在該??壳榫持凶羁赡鼙恢v出的詞語。因此,利用基于??壳榫尺x擇的語言模型的語音識別可以產生比利用通用的語言模型的語音識別更準確的轉錄。
[0017]圖1是圖示了用于利用客戶端設備102的停靠情境來執(zhí)行語音識別的系統(tǒng)100的示例的示圖。系統(tǒng)100包括客戶端通信設備(“客戶端設備”)102、語音識別系統(tǒng)104(例如自動語音識別(‘451?”引擎))和搜索引擎系統(tǒng)109??蛻舳嗽O備102、語音識別系統(tǒng)104以及搜索引擎系統(tǒng)109通過一個或多個網(wǎng)絡108彼此通信。圖1還圖示了在狀態(tài)(A)到(G)期間的數(shù)據(jù)流。[0018]客戶端設備102可以是移動設備,例如蜂窩電話或智能電話??蛻舳嗽O備102的其它示例包括全球定位系統(tǒng)(GPS)、導航系統(tǒng)、平板計算機、筆記本型計算機和臺式計算機。
[0019]客戶端設備102可以被連接到??空九_106。??空九_106可以被物理地耦接到客戶端設備102,并且可以與客戶端設備102通信以例如通過有線或無線鏈路傳遞功率和/或數(shù)據(jù)。??空九_106可以在客戶端設備102與停靠站臺106通信的同時物理地(例如在支架或機座中)支持或穩(wěn)定客戶端設備102。客戶端設備102可以被直接連接到??空九_106或者可以通過線纜或其它接口被連接。
[0020]在狀態(tài)(A)期間,客戶端設備102的用戶101向客戶端設備102的麥克風講出一個或多個短語。在所圖示的示例中,用戶101講出短語103( “10號大街”)作為搜索查詢的一部分。與所講出的短語103相對應的發(fā)聲被編碼為音頻數(shù)據(jù)105。短語103可以基于例如被顯示在客戶端設備102上的搜索界面或者在客戶端設備102的用戶界面上被選擇的搜索控制被標識為查詢短語。
[0021]客戶端設備102還標識??壳榫?,例如當用戶101講出短語103時客戶端設備102的??壳榫?。在所圖示的示例中,當用戶101講出短語103時,客戶端設備102被連接到車輛??空九_106??蛻舳嗽O備102確定例如客戶端設備102被連接到??空九_106 (例如客戶端設備102當前是“被??康摹?,停靠站臺106是車輛??空九_,以及停靠站臺106是被加電的。
[0022]??壳榫晨梢允嵌陶Z103在其中被講出的情境。例如,??壳榫晨梢园ㄔ谂c被講出的查詢短語103相對應的聲音被客戶端設備102檢測到時客戶端設備102的狀態(tài)。檢測語音可以包括但不限于感知、接收或記錄語音。檢測語音可以不要求確定所接收的聲音包括語音或者標識包括經(jīng)編碼的語音的聲音的一部分,但是這些情況可能發(fā)生在一些實現(xiàn)方式中。
[0023]??壳榫晨梢园蛻舳嗽O備102被連接到的??空九_的身份和特征。例如,??壳榫晨梢园ㄒ韵率马椫械囊粋€或多個:(i)客戶端設備102是否被連接到任何停靠站臺106, (ii)客戶端設備102被連接到的??空九_106的類型(例如車輛停靠站臺、計算機或音樂播放器),(iii)??空九_106的操作狀態(tài)(例如,停靠站臺106處于開啟、關閉、空閑還是省電模式下),以及(iv)客戶端設備102與停靠站臺106之間的關系(例如客戶端設備102正在充電、下載信息、上傳信息或播放媒體或者連接處于空閑狀態(tài))。
[0024]??壳榫尺€包括與客戶端設備102與??空九_106之間的連接相關的其它因素,例如客戶端設備102與??空九_106已被連接的時間長度。??壳榫晨梢园ㄍ?空九_106的一個或多個能力(例如GPS接收器、視覺顯示、聲音輸出和網(wǎng)絡接入)。??壳榫尺€可以包括指示??空九_106的型號、制造商和軟件版本的一個或多個標識符。停靠情境還可以包括針對多個設備的上述因素,多個設備包括被連接到客戶端設備102的外圍設備(例如打印機、外部存儲設備和成像設備)。
[0025]在一些實現(xiàn)方式中,??壳榫持甘娟P于例如通過線纜或者直接的物理鏈路被物理地耦接到客戶端的??空九_的信息。在一些實現(xiàn)方式中,??壳榫持甘颈淮_定為與客戶端設備102的地理位置相鄰的并且通過諸如藍牙之類的無線協(xié)議被連接的停靠站臺106。例如,當客戶端設備102在車輛中時,客戶端設備102可以無線地連接到被物理地連接到車輛的停靠站臺106。即使客戶端設備102未被物理地連接到車輛停靠站臺106,無線連接也可以被包括在??壳榫持?。又例如,停靠情境可以指示與客戶端設備102通信的一個或多個其它設備,例如被無線地連接的聽筒。??壳榫晨梢园蛻舳嗽O備102與之通信的設備中的任意設備。
[0026]客戶端設備102生成指示??壳榫车囊粋€或多個方面的??壳榫承畔?07。??壳榫承畔?07與音頻數(shù)據(jù)105相關聯(lián)。例如,??壳榫承畔?07可以指示其中音頻數(shù)據(jù)105中被編碼的語音被客戶端設備102檢測到的客戶端設備102的??壳榫???蛻舳嗽O備102或者另一系統(tǒng)可以存儲與音頻數(shù)據(jù)105相關聯(lián)的??壳榫承畔?07。
[0027]在狀態(tài)⑶期間,語音識別系統(tǒng)104訪問??壳榫承畔?07。語音識別系統(tǒng)104還訪問音頻數(shù)據(jù)105。例如,客戶端設備102可以將??壳榫承畔?07和音頻數(shù)據(jù)105傳輸給語音識別系統(tǒng)104。作為附加方式或替代方式,??壳榫承畔?07、音頻數(shù)據(jù)105或者這兩者可以從被連接到語音識別系統(tǒng)104的存儲設備中或者從另一系統(tǒng)中被訪問。
[0028]在一些實現(xiàn)方式中,??壳榫承畔?07可以在音頻數(shù)據(jù)105或者甚至是音頻數(shù)據(jù)105中被編碼的短語103被講出之前被訪問。例如,客戶端設備102可以被配置為當客戶端設備102的??壳榫掣淖儠r向語音識別系統(tǒng)104提供更新后的??壳榫承畔?07。因此,最近被接收的??壳榫承畔?07可以被假設為指示當前的停靠情境。語音識別系統(tǒng)104可以利用停靠情境信息107來選擇要用于識別語音序列中的第一個詞語的語言模型。在一些實現(xiàn)方式中,語音識別系統(tǒng)104甚至可以在用戶101開始講話之前基于??壳榫承畔?07選擇語言模型。
[0029]在狀態(tài)(C)期間,語音識別系統(tǒng)104標識出多個語言模型llla-llld。語言模型Illa-1lld可以指示例如短語序列中一個短語基于序列中的其它短語的出現(xiàn)概率。語言模型以及它們可以如何被使用將參考圖2A和2B被更詳細地描述。
[0030]語言模型Illa-1lld可以分別被單獨聚焦在特定的話題(例如導航或購物)或短語類型(例如名字或地址)上。在一些實例中,語言模型Illa-1lld可以專用于特定動作(例如語音撥號或播放媒體)或者專用于特定的??壳榫?例如未被???、被連接到車輛??空九_或者被連接到媒體??空九_)。因此,語言模型Illa-1lld可以包括通用語言模型中所包括的詞匯的子集。例如,針對導航的語言模型Illa可以包括被用在導航中的短語,例如數(shù)字和地址。
[0031]語音識別系統(tǒng)可以標識比所示出的那些語言模型更精細粒度的語言模型。例如,代替針對媒體的單個語言模型llld,語音識別系統(tǒng)104可以標識與視頻、音頻或圖像相關的不同的語言模型(或者語言模型Illd的多個部分)。
[0032]在一些實現(xiàn)方式中,被標識的語言模型Illa-1lld可以是被包括在更大的通用語言模型中的子模型。通用語言模型可以包括被專門訓練用于準確預測特定類型的詞語的若干個語言模型。例如,一個語言模型可以被訓練為預測名字,另一個語言模型被訓練為預測數(shù)字,以及另一個語言模型被訓練為預測地址等等。
[0033]語音識別系統(tǒng)104可以標識與??壳榫承畔?07中所指示的??壳榫诚嚓P聯(lián)的語言模型Illa — llld。例如,語音識別系統(tǒng)104可以標識至少具有匹配用戶101所講出的短語103的閾值概率的語言模型llla-llld。又例如,特定的一組語言模型Illa-1lld可以被預先確定以對應于特定的??壳榫?。
[0034]作為附加方式或替代方式,語音識別系統(tǒng)104可以基于之前所識別的語音標識語言模型llla-llld。例如,語音識別系統(tǒng)104可以確定基于之前所識別的詞語“玩(play) ”,針對游戲的語言模型和針對媒體的語言模型最可能匹配序列中接下來的短語。因此,語音識別系統(tǒng)104可以標識出針對游戲的語言模型和針對媒體的語言模型作為可以被用于識別音頻數(shù)據(jù)105中被編碼的語音的語言模型。
[0035]在狀態(tài)⑶期間,語音識別系統(tǒng)104基于停靠情境信息107中所指示的??壳榫硜泶_定針對所標識的語言模型llla-llld中的每個語言模型的加權值。在一些實現(xiàn)方式中,針對所標識的語言模型llla-llld中的每個語言模型的加權值還基于其它信息,例如來自基于語音序列中已經(jīng)被識別的短語的語言模型的輸出。所確定的加權值被分配給語言模型llla-llld中的相應的語言模型。
[0036]加權值可以指示用戶101所講出的短語103與相應的語言模型Illa — Illd中所包括的短語的類型相匹配的概率,并且從而指示語言模型llla-llld將指示短語103的正確轉錄的概率。例如,被分配給導航語言模型Illa的加權值可以指示音頻數(shù)據(jù)105中被編碼的語音包括導航短語的概率。被分配給web搜索語言模型Illb的加權值可以指示音頻數(shù)據(jù)中被編碼的語音包括web搜索中通常使用的常見短語的概率。
[0037]在一些實現(xiàn)方式中,語音識別系統(tǒng)104可以從所存儲的加權值的多個組112、113、114、115中選擇。每個加權值的集合112、113、114、115可以對應于特定的停靠情境。在所示出的示例中,加權值的集合113對應于車輛停靠站臺106。因為??壳榫承畔?07指示客戶端設備102被連接到車輛??空九_106,所以語音識別系統(tǒng)選擇與車輛??空九_106相對應的加權值的集合113。集合113內的加權值被分配給相應的語言模型llla-llld。
[0038]各個組112、113、114、115中的加權值可以例如通過對在各種??壳榫持械母鞣N用戶所講出的大量短語進行統(tǒng)計分析而被確定。針對給定特定的停靠情境情況下的特定語言模型的加權值可以基于所觀察到的語言模型在該??壳榫持挟a生正確結果的頻率。如果例如導航語言模型Illa對于客戶端設備102在車輛??空九_中時出現(xiàn)的語音的50%正確地預測語音,則集合113中針對導航語音模型Illa的加權值可以為0.5。關于語言模型如何預測語音的示例在下面參考圖2A和2B被描述。
[0039]在一些實現(xiàn)方式中,語音識別系統(tǒng)104可以通過調節(jié)初始的一組加權值來確定針對語言模型llla-llld的加權值。例如,當停靠情境信息107指示客戶端設備102未被??繒r或者當客戶端設備102的停靠情境未知時,一組加權值112可以被使用。當停靠情境信息107指示客戶端設備102被??浚瑒t組112中的各個加權值可以基于??壳榫车母鱾€方面被改變。加權值可以利用公式、查找表以及其它方法被確定。在一些實現(xiàn)方式中,語音識別系統(tǒng)104可以利用??壳榫硰姆謩e與關鍵短語相對應的所存儲的加權值的集合中進行選擇。加權值的組112,113,114,115不需要直接與單一??壳榫诚嚓P聯(lián)。例如,集合112可以與關鍵短語“導航至(navigate to)”相關聯(lián)。當用戶101講出短語“導航至”時,不管??壳榫呈欠褚阎?,集合112都被選擇。此外,當客戶端設備102被已知在車輛??空九_106中時,集合112可以被選擇,就像用戶已經(jīng)講出關鍵短語“導航至”一樣,即使用戶101沒有講出該關鍵短語。
[0040]??壳榫晨梢杂绊懽罱K被用于選擇語言模型的各種決定以及加權值的類型,例如從開始狀態(tài)到與一個或多個關鍵短語相關聯(lián)的狀態(tài),或者從與關鍵短語相關聯(lián)的加權值到特定語言模型的選擇。??壳榫晨梢员挥糜诖_定被用于選擇與關鍵短語相對應的一個或多個狀態(tài)的加權值,并且與關鍵短語相對應的狀態(tài)可以又與針對語言模型llla-llld的加權值相關聯(lián)。例如,車輛停靠情境可以被用于確定針對與短語“導航至”相對應的狀態(tài)的加權值“0.6”以及針對與短語“呼叫(call) ”相對應的狀態(tài)的加權值“0.4”。每個關鍵短語狀態(tài)可以與指示源自該狀態(tài)的各個語言模型的可能性的一組加權值相關聯(lián)。
[0041]即使在與關鍵短語相對應的狀態(tài)已被選擇之后,并且指示各個語言模型11 la-1 Ild的概率的一組加權值已被選擇之后,??壳榫橙匀豢梢员挥糜谛薷募訖嘀?。例如,與短語“導航至”相關聯(lián)的狀態(tài)可以包括指示導航語言模型的可能性是商業(yè)語言模型的兩倍的加權值。??壳榫晨梢员挥糜谛薷募訖嘀狄允沟?,對于當前口述的識別,導航語言模型的可能性是商業(yè)語言模型的三倍。
[0042]在狀態(tài)(E)期間,語音識別系統(tǒng)104基于被分配的加權值來選擇語言模型。如表116中所示,來自組113的加權值113a-113d被分配給語言模型llla-llld。這些加權值113a —113d基于??壳榫?[目息107中所指不的??壳榫持覆幌鄳恼Z目模型llla-llld與用戶101所講出的短語103相匹配的概率。針對導航的語言模型Illa具有最高的加權值113a,這指示基于??壳榫?,語言模型Illa最可能正確預測語音數(shù)據(jù)中被編碼的短語103的內容。基于這些加權值,語音識別系統(tǒng)104選擇語言模型Illa以用于對音頻數(shù)據(jù)105的語音識別。
[0043]在一些實現(xiàn)方式中,單個語言模型Illa基于加權值113a_113d被選擇。在一些實現(xiàn)方式中,多個語言模型llla-llld可以基于加權值113a-113d被選擇。例如,包括最好的N個語言模型llla-llld的子集可以被選擇并且之后被用于標識針對音頻數(shù)據(jù)105的候選轉錄。
[0044]語音識別系統(tǒng)104還可以利用加權值與其它因素的組合來選擇語言模型。例如,語音識別系統(tǒng)104可以確定加權值113a — 113d及其它加權值的加權組合,例如基于語音序列中被識別的之前的詞語或者基于之前的轉錄的加權值。
[0045]例如,語音識別系統(tǒng)104可以將序列中的第一個短語轉錄為“玩”。僅僅基于??壳榫车募訖嘀悼赡苤甘緦Ш秸Z言模型或者媒體語言模型應當被用于識別后續(xù)的語音?;谄渌畔⒌牡诙M加權值(例如之前被用于識別第一個短語“玩”的語言模型的輸出)可以指示游戲語言模型或媒體語言模型應當被使用??紤]這兩組加權值,語音識別系統(tǒng)104可以選擇媒體語言模型為最可能產生序列中的下一個短語的正確轉錄的語言模型。如該示例中,在一些實例中,不同的語言模型可以被用于識別序列中的不同短語,即使對于序列中的每個短語,??壳榫晨赡苁窍嗤?。
[0046]在狀態(tài)(F)期間,語音識別系統(tǒng)104利用所選擇的語言模型Illa對音頻數(shù)據(jù)105執(zhí)行語音識別。語音識別系統(tǒng)104標識針對音頻數(shù)據(jù)105的至少一部分的轉錄。語音識別系統(tǒng)104利用所選擇的語言模型Illa比利用通用的語言模型更可能正確地識別短語103。這是因為??壳榫持甘玖嗽谝纛l數(shù)據(jù)105中最可能被編碼的短語的類型,并且所選擇的語言模型Illa被選擇為最佳地預測那些可能的短語。
[0047]通過利用所選擇的語言模型111a,語音識別系統(tǒng)104可以將針對短語103的可能轉錄的范圍縮窄為由所選擇的語言模型Illa指示的那些轉錄。這可以實質上改進語音識另O,尤其是對于詞組中的第一個詞語。一般來說,在語音序列開始時有非常大量的短語可能出現(xiàn)。對于序列中的第一個短語,語音識別系統(tǒng)不能受益于序列中之前的詞語來指示接下來可能的短語。然而,即使沒有指示話題的之前的短語(例如“至...的駕駛路線(drivingdirections to)”或者“示出...處的地圖(show map at) ”),語音識別系統(tǒng)104仍然將識別側重于正確的短語集合,因為基于??壳榫尺x擇的被選擇的語言模型Illa已經(jīng)針對短語103的可能內容被修整。利用基于停靠情境選擇的語言模型因而可以允許語音識別與用戶已經(jīng)在前綴短語中指定了語音話題的情況一樣準確或者甚至更準確。
[0048]鑒于相同的原因,語音識別可以針對單個短語以及針對短的短語序列被改進,其中幾乎沒有詞語之間的相互關系引導語音識別。因為搜索查詢通常包括短的短語序列,所以使用基于停靠情境的語言模型可以大大提高在該應用中的準確性。
[0049]在該示例中,被講出的短語103包括地址“ 10號大街”,并且沒有指示短語103包括地址的口述前綴短語(例如“導航至”)?;谄渲卸陶Z103被講出的??壳榫?,語音識別系統(tǒng)104還選擇針對地址被訓練(例如被優(yōu)化或專門設計)的專門的語言模型111a。這個語言模型Illa可以指示音頻數(shù)據(jù)105中被編碼的第一個短語將是數(shù)字并且第一個短語后面跟著街名的高概率。所選擇的語言模型Illa中所包括的專門的詞匯和模式可以提高音頻數(shù)據(jù)105的語音識別的準確性。例如在所選擇的語言模型Illa的焦點以外的短語(例如與導航不相關的短語)可以被排除在語言模型Illa以外,從而排除它們作為針對短語103的可能轉錄。作為對比,那些短語可能被包括為通用語言模型中的有效轉錄可能,通用語言模型可能包括看上去是有效可能轉錄的很多短語,但是實際上對于識別當前的短語103來說是不相干的。
[0050]利用所選擇的語言模型,語音識別系統(tǒng)104選擇針對音頻數(shù)據(jù)105的轉錄“10號大街”。該轉錄可以被傳輸至搜索引擎系統(tǒng)109。該轉錄也可以被傳輸給客戶端設備102,這允許用戶101可以驗證轉錄的準確性并且在必要的情況下做出修正。
[0051]在狀態(tài)(G)期間,搜索引擎系統(tǒng)109利用對口述查詢短語103的轉錄來執(zhí)行搜索。該搜索可以是web搜索、針對導航方向的搜索或者另一種類型的搜索。指示搜索查詢的結果的信息被傳輸給客戶端設備102。轉錄利用基于停靠情境選擇的專門的語言模型Illa被確定。因此,該轉錄與用戶101所講出的查詢短語103匹配的可能性大于使用通用語言模型的可能性。因此,包括該轉錄的搜索查詢更可能是用戶101所意圖的搜索。
[0052]雖然短語103的轉錄被描述為用在搜索中,但是該轉錄的各種其它使用也是可能的。在其它實現(xiàn)方式中,轉錄可以被用于例如訪問地圖或方向、找到并播放音樂或其它媒體、標識聯(lián)系信息并啟動通信、選擇并發(fā)起應用、定位并打開文檔、移動設備102的活動功能(例如照相機)等等。對于這些使用中的每種使用,利用轉錄所訪問的信息可以被服務器系統(tǒng)、客戶端設備102或者??空九_106中的一個或多個標識。
[0053]在一些實現(xiàn)方式中,不同的語言模型llla-llld可以被選擇并用于識別音頻數(shù)據(jù)105的不同部分中的語音。即使當音頻數(shù)據(jù)105與單一??壳榫诚嚓P聯(lián),其它信息(例如序列中其它被識別的詞語)也可能影響語言模型llla-llld的選擇。因此,序列中的不同短語可以利用不同的語言模型llla-llld被識別。
[0054]圖2A是圖示了語言模型200的表征的示例的圖。一般來說,語音識別系統(tǒng)接收包括語音的音頻數(shù)據(jù)并輸出最佳匹配音頻數(shù)據(jù)的一個或多個轉錄。語音識別系統(tǒng)可以同時或者順序地執(zhí)行多個功能以識別來自音頻數(shù)據(jù)的一個或多個術語。例如,語音識別系統(tǒng)可以包括聲音模型和語言模型200。語言模型200和聲音模型可以被一起用于選擇音頻數(shù)據(jù)中的語音的一個或多個轉錄。
[0055]聲音模型可以被用于標識匹配音頻數(shù)據(jù)的一部分的短語。對于音頻數(shù)據(jù)的特定部分,聲音模型可以輸出匹配音頻數(shù)據(jù)的各個方面的短語以及指示每個短語與音頻數(shù)據(jù)的匹配程度的加權值或置信分值。
[0056]語言模型200可以包括關于語音模式中的短語之間的關系的信息。例如,語言模型200可以包括關于常被使用的短語的序列以及符合語法規(guī)則和其它語言習慣的序列。語言模型200可以被用于指示語音序列中的一個短語基于序列中的一個或多個其它短語的出現(xiàn)的概率。例如,語言模型200可以基于詞語序列中之前的詞語標識哪個詞語具有出現(xiàn)在詞語序列的特定部分中的最高概率。
[0057]語言模型200包括一組節(jié)點20la-20Ii以及節(jié)點201a_201i之間的轉換202a-202h。每個節(jié)點201a_201i代表單個短語(例如詞語)在語音序列中被選擇的判決點。從節(jié)點201a-201i向外的每個轉換202a-202h與可以被選擇作為序列的成員的短語相關聯(lián)。每個轉換202a-202h還與加權值相關聯(lián),該加權值例如指示與轉換202a_202h相關聯(lián)的短語在序列中的點處出現(xiàn)的概率。加權值可以基于序列中的多個之前的短語被設置。例如,每個節(jié)點處的轉換和針對這些轉換的加權值可以基于在語音序列中的該節(jié)點之前出現(xiàn)的N個短語而被確定。
[0058]例如,第一節(jié)點201a代表語音序列中的第一個短語被選擇的判決點。源自節(jié)點201a的唯一轉換是與短語“the”相關聯(lián)的轉換202a。順著轉換202a意味著選擇短語“the”作為語音序列中的第一個短語,導致在節(jié)點201b處的下一個判決。
[0059]在節(jié)點201b處,有兩種可能的轉換:(I)轉換202b,該轉換與短語“帽子(hat) ”相關聯(lián)并且具有加權值0.6 ;以及(2)轉換202c,該轉換與短語“多個帽子(hats)”相關聯(lián)并且具有加權值0.4。轉換202b具有比轉換202c更高的加權值,指示短語“帽子”比短語“多個帽子”更可能出現(xiàn)在語音序列中的該點處。通過在每個節(jié)點201a-201i處選擇具有最高加權值的轉換202a-202h,指示最可能的短語序列的路徑204被創(chuàng)建,在該示例中,最可能的短語序列為“帽子是黑色的(the hat is black)”。
[0060]語言模型中的轉換的加權值可以基于展示有效短語序列的示例文本庫中的語言模式被確定。以下技術中的一個或多個技術可以被使用。諸如區(qū)分性訓練之類的機器學習技術可以被用于利用隱式馬爾可夫模型(“HMM”)設置轉換的概率。加權后的有限狀態(tài)機轉換器可以被用于手動地指定和建立語法模型。N元文法平滑(N-gram smoothing)可以被用于對示例短語庫中的η元文法的出現(xiàn)次數(shù)進行計數(shù),并且由那些計數(shù)值導出轉換概率。諸如Baum-Welch算法之類的期望-最大化技術可以被用于設置使用示例文本庫的HMM中的概率。
[0061]圖2Β是圖示了聲音模型結合圖2Α中所示的語言模型的使用示例的圖。語言模型的輸出可以與聲音模型的輸出組合以選擇針對音頻數(shù)據(jù)的轉錄。例如,圖2Β圖示了針對與單個短語相對應的音頻數(shù)據(jù)的一部分的來自聲音模型和語言模型的輸出的組合。具體而言,圖2Β圖示了針對以下音頻數(shù)據(jù)的輸出,該音頻數(shù)據(jù)與源自圖2Α中的節(jié)點201d的轉換202f-202h所選擇的短語相對應。語言模型輸出短語212a-212c以及與源自節(jié)點201d的最高加權的轉換相關聯(lián)的相應的加權值。聲音模型輸出最佳匹配音頻數(shù)據(jù)的短語216a-216c,以及指示短語216a-216c與音頻數(shù)據(jù)匹配的程度的相應的加權值217a_217c。[0062]加權值213a-213c和217a_217c被組合以生成組合加權值223a_223e,這些組合加權值被用于對組合的一組短語222a-222e進行排名。如圖所示,基于聲音模型和語言模型的輸出,短語222a “黑色(black)”具有最高的組合加權值,并且因而是針對音頻數(shù)據(jù)的相應部分的最可能的轉錄。雖然聲音模型和語言模型所輸出的加權值213a-213c,217a-217c被顯示為在確定組合加權值223a-223e上具有等同的影響力,但是加權值213a_213c,217a-217c也可以被不等同地組合并且可以與其它類型的數(shù)據(jù)組合。
[0063]圖3是圖示了用于利用客戶端設備的停靠情境執(zhí)行語音識別的過程300的示例的流程圖。簡單地說,過程300包括訪問包括經(jīng)編碼的語音的音頻數(shù)據(jù)。指示客戶端設備的停靠情境的信息被訪問。多個語言模型被標識。這些語言模型中的至少一個基于??壳榫潮贿x擇。利用所選擇的語言模型,對音頻數(shù)據(jù)進行語音識別。
[0064]更詳細地說,包括經(jīng)編碼的語音的音頻數(shù)據(jù)被訪問(302)。音頻數(shù)據(jù)可以從客戶端設備處被接收。經(jīng)編碼的語音可以是被客戶端設備檢測的語音,例如由客戶端設備記錄的語音。經(jīng)編碼的語音可以包括一個或多個口述查詢短語。
[0065]指示客戶端設備的??壳榫车男畔⒈辉L問(304)。??壳榫晨梢耘c音頻數(shù)據(jù)相關聯(lián)。指示??壳榫车男畔⒖梢詮目蛻舳嗽O備處被接收。例如,指示停靠情境的信息可以指示當音頻數(shù)據(jù)中被編碼的語音被客戶端設備檢測到時客戶端設備是否被連接到??空九_。指示??壳榫车男畔⑦€可以指示當音頻數(shù)據(jù)中被編碼的語音被客戶端設備檢測到時客戶端設備被連接到的??空九_的類型。
[0066]指示??壳榫车男畔⒖梢灾甘究蛻舳嗽O備與客戶端設備被無線連接到的第二設備之間的連接。指示??壳榫车男畔⒖梢灾甘究蛻舳嗽O備與客戶端設備被物理連接到的第二設備之間的連接。
[0067]多個語言模型被標識(306)。多個語言模型中的每個語言模型可以指示短語序列中的一個短語基于序列中的其它短語的出現(xiàn)的概率。多個語言模型中的每個語言模型可以針對特定話題類別的詞語被訓練。對于每個語言模型,詞語的話題類別可以是不同的。多個語言模型中的一個或多個語言模型可以包括語言模型的一部分或子集。例如,多個語言模型中的一個或多個語言模型可以是另一語言模型的子模型。
[0068]被標識的語言模型中的至少一個語言模型基于??壳榫潮贿x擇(308)。例如,針對被標識的語言模型中的每個語言模型的加權值可以基于??壳榫潮淮_定。加權值可以被分配給相應的語言模型。每個加權值可以指示其被分配給的語言模型將指示經(jīng)編碼的語音的正確轉錄的概率。確定針對語言模型中的每個語言模型的加權值可以包括訪問與??壳榫诚嚓P聯(lián)的所存儲的加權值。確定針對多個語言模型中的每個語言模型的加權值包括訪問所存儲的加權值并且基于??壳榫掣淖兯鎯Φ募訖嘀?。
[0069]基于停靠情境確定加權值可以包括例如確定客戶端設備被連接到車輛??空九_,并且針對被訓練為輸出地址的導航語言模型,確定提高導航語言模型相對于其它被標識的語言模型被選擇的概率的加權值。
[0070]利用所選擇的語言模型對音頻數(shù)據(jù)執(zhí)行語音識別(310)。針對音頻數(shù)據(jù)的至少一部分的轉錄被標識。例如,針對音頻數(shù)據(jù)中被編碼的一個或多個口述短語的轉錄可以被生成。
[0071]音頻數(shù)據(jù)中的被編碼的語音可以包括口述查詢短語,并且音頻數(shù)據(jù)的一部分的轉錄可以包括口述查詢短語的轉錄。過程300可以包括使得搜索引擎利用一個或多個口述查詢短語的轉錄執(zhí)行搜索并且向客戶端設備提供標識搜索查詢的結果的信息。
[0072]圖4是作為客戶端或者作為服務器或多個服務器、可以被用于實現(xiàn)本文檔中所描述的系統(tǒng)和方法的計算設備400,450的框圖。計算設備400意在代表各種形式的數(shù)字計算機,例如膝上型計算機、臺式機、工作站、個人數(shù)字助理、服務器、刀片式服務器、主機和其它合適的計算機。計算設備450意在代表各種形式的客戶端設備,例如個人數(shù)字助理、蜂窩電話、智能電話和其它類似的計算設備。這里所示出的組件、它們的連接及關系以及它們的功能只是示例性,而不是要限制本文檔中所描述和/或要求保護的發(fā)明的實現(xiàn)方式。
[0073]計算設備400包括處理器402、存儲器404、存儲設備406、連接到存儲器404和高速擴展端口 410的高速接口控制器408,以及連接到低速擴展端口 414和存儲設備406的低速接口控制器412。組件402、404、406、408、410和412中的每個組件利用各個總線被互連,并且可以被安裝在共用的母板上或者以其它合適的方式被安裝。處理器402可以處理用于在計算設備400內執(zhí)行的指令,包括存儲在存儲器404中或者存儲設備406上的指令,以將針對⑶I的圖形信息顯示在外部輸入/輸出設備上,例如被耦接到高速接口 408的顯示器416上。在其它實現(xiàn)方式中,多個處理器和/或多個總線可以適當?shù)嘏c多個存儲器和多種類型的存儲器一起被使用。此外,多個計算設備400可以被連接,每個設備提供必要的操作的若干部分(例如作為服務器陣列、一組刀片式服務器或者多處理器系統(tǒng))。
[0074]存儲器404存儲計算設備400內的信息。在一種實現(xiàn)方式中,存儲器404是易失性存儲器單元。在另一種實現(xiàn)方式中,存儲器404是非易失性存儲器單元。存儲器404也可以是另一種形式的計算機可讀介質,例如磁盤或光盤。
[0075]存儲設備406能夠為計算設備400提供海量存儲。在一種實現(xiàn)方式中,存儲設備406可以是計算機可讀介質或者包括計算機可讀介質,例如柔性盤設備、硬盤設備、光盤設備或者磁帶設備、閃存存儲器或者其它類似的固態(tài)存儲器設備或者一組設備,包括在存儲區(qū)域網(wǎng)絡或者其它配置中的設備。計算機程序產品可以被有形地包括在信息載體中。計算機程序產品還可以包括在被執(zhí)行時執(zhí)行例如上述那些方法的一個或多個方法的指令。信息載體是計算機或機器可讀的介質,例如存儲器404、存儲設備406或者處理器402上的存儲器。
[0076]此外,計算設備400或450可以包括通用串行總線(USB)閃存驅動。USB閃存驅動可以存儲操作系統(tǒng)和其它應用。USB閃存驅動可以包括輸入/輸出組件,例如可以被插入到另一計算設備的USB端口中的無線發(fā)射器或USB連接器。
[0077]高速接口控制器408管理針對計算設備400的帶寬密集型操作,而低速接口控制器412管理較低帶寬密集程度的操作。這種對功能的分配只是示例性的。在一種實現(xiàn)方式中,高速控制器408被耦接到存儲器404、顯示器416 (例如通過圖形處理器或加速器)以及可以接受各種擴展卡(未被示出)的高速擴展端口 410。在該實現(xiàn)方式中,低速控制器412被耦接到存儲設備406和低速擴展端口 414。可以包括各種通信端口(例如USB、藍牙、以太網(wǎng)、無線以太網(wǎng))的低速擴展端口 414可以被耦接到一個或多個輸入/輸出設備,例如鍵盤、定點設備、掃描儀或者例如通過網(wǎng)絡適配器的聯(lián)網(wǎng)設備,例如交換機或路由器。
[0078]計算設備400可以按很多種不同的形式被實現(xiàn),如圖中所示。例如,它可以作為標準服務器420被實現(xiàn),或者在一組這樣的服務器中多次被實現(xiàn)。計算設備400也可以作為機架式服務器系統(tǒng)424的一部分被實現(xiàn)。此外,它可以在諸如膝上型計算機422之類的個人計算機中被實現(xiàn)?;蛘?,計算設備400的組件可以與客戶端設備(未被示出)中的其它組件組合,例如設備450。這樣的設備中的每個設備可以包括一個或多個計算設備400,450,并且整個系統(tǒng)可以由彼此通信的多個計算設備400,450構成。
[0079]計算設備450包括處理器452、存儲器464、諸如顯示器454之類的輸入/輸出設備、通信接口 466和收發(fā)器468等等。設備450還可以被提供有存儲設備,例如微驅動、固態(tài)存儲組件或者其它設備,以提供額外的存儲。組件452、464、454、466和468中的每個組件利用各個總線被互連,并且這些組件中的若干個組件可以被安裝在共用的母板上或者以其它合適的方式被安裝。
[0080]處理器452可以執(zhí)行計算設備400的指令,包括存儲在存儲器464中的指令。處理器可以被實現(xiàn)為包括獨立的多個模擬和數(shù)字處理器的芯片的芯片組。此外,處理器可以利用很多種體系結構中的任意體系結構來實現(xiàn)。例如,處理器402可以是CISC(復雜指令集計算機)處理器、RISC(簡化指令集計算機)處理器、或者MISC(最小指令集計算機)處理器。處理器可以實現(xiàn)例如設備450的其它組件的協(xié)作,例如對用戶接口、設備450所運行的應用以及設備450的無線通信的控制。
[0081 ] 處理器452可以通過被耦接到顯示器454的控制接口 458和顯示器接口 456與用戶通信。顯示器454可以例如是TFT (薄膜晶體管液晶顯示器)顯示器或者OLED (有機發(fā)光二極管)顯示器或者其它合適的顯示技術。顯示器接口 456可以包括用于驅動顯示器454向用戶呈現(xiàn)圖形和其它信息的合適的電路??刂平涌?458可以接收來自用戶的命令并將將它們轉化以提交給處理器452。此外,外部接口 462可以被提供為與處理器452通信,以實現(xiàn)設備450與其它設備的近距離通信。外部接口 462可以例如在一些實現(xiàn)方式中提供有線通信,或者在其它實現(xiàn)方式中提供無線通信,并且多個接口也可以被使用。
[0082]存儲器464存儲計算設備450內的信息。存儲器464可以作為計算機可讀介質、易失性存儲器單元或者非易失性存儲器單元中的一個或多個被實現(xiàn)。擴展存儲器474也可以被提供并且通過擴展接口 472被連接到設備450,擴展接口 472可以包括例如SIMM (單列存儲器模塊)卡接口。這種擴展存儲器474可以為設備450提供額外的存儲空間,或者也可以存儲用于設備450的應用或其它信息。具體而言,擴展存儲器474可以包括用以執(zhí)行或補充上述過程的指令,并且還可以包括安全信息。因而,例如,擴展存儲器474可以作為用于設備450的安全模塊被提供,并且可以被編程有允許設備450的安全使用的指令。此夕卜,安全應用可以通過SIMM卡與附加的信息一起被提供,例如以不可破解的方式在SIMM卡上放置標識信息。
[0083]存儲器可以包括例如閃存和/或NVRAM存儲器,如下面所討論的。在一個實現(xiàn)方式中,計算機程序產品被有形地包括在信息載體中。計算機程序產品包括在被執(zhí)行時執(zhí)行例如上述那些方法的一個或多個方法的指令。信息載體是計算機或機器可讀介質,例如可以例如通過收發(fā)器468或外部接口 462被接收的存儲器464、擴展存儲器474或者處理器452上的存儲器。
[0084]設備450可以通過通信接口 466無線地通信,必要時,該通信接口 466可以包括數(shù)字信號處理電路。通信接口 466可以實現(xiàn)在各種模式或協(xié)議下的通信,例如GSM語音呼叫、SMS、EMS 或 MMS 消息、CDMA, TDMA, PDC、WCDMA, CDMA2000 或者 GPRS 等等。這種通信可以例如通過射頻收發(fā)器468進行。此外,短程通信可以例如使用藍牙、WiFi或者其它這樣的收發(fā)器(未被示出)進行。此外,GPS(全球定位系統(tǒng))接收器模塊470可以向設備450提供附加的導航及位置相關的無線數(shù)據(jù),這些數(shù)據(jù)可以適當?shù)乇贿\行在設備450上的應用使用。
[0085]設備450也可以利用音頻編解碼器460進行有聲通信,音頻編解碼器460可以接收來自用戶的口述信息并將其轉化為可用的數(shù)字信息。音頻編解碼器460同樣可以生成針對用戶的可聽到的聲音,例如通過例如設備450的手持機中的揚聲器。這樣的聲音可以包括來自語音電話呼叫的聲音,可以包括被記錄的聲音(例如語音消息、音樂文件等)并且也可以包括由運行在設備450上的應用生成的聲音。
[0086]計算設備450可以按很多種不同的形式被實現(xiàn),如圖中所示。例如,它可以被實現(xiàn)為蜂窩電話480。它也可以被實現(xiàn)為智能電話482、個人數(shù)字助理或者其它類似的客戶端設備的一部分。
[0087]這里所描述的系統(tǒng)和技術的各種實現(xiàn)方式可以在數(shù)字電子線路、集成電路、專門設計的ASIC(專用集成電路)、計算機硬件、固件、軟件和/或它們的組合中被實現(xiàn)。這些各種實現(xiàn)方式可以包括在一個或多個計算機程序中的實現(xiàn)方式,計算機程序是在包括至少一個可編程處理器的可編程系統(tǒng)上可以執(zhí)行和/或解析的,至少一個可編程處理器可以是專用的也可以是通用的,并且至少一個可編程處理器被耦接以從存儲系統(tǒng)、至少一個輸入設備和至少一個輸出設備接收數(shù)據(jù)和指令并且向它們發(fā)送數(shù)據(jù)和指令。
[0088]這些計算機程序(也被公知為程序、軟件、軟件應用或代碼)包括針對可編程處理器的機器指令,并且可以用高級過程和/或面向對象的編程語言來實現(xiàn),以及/或者用匯編/機器語言來實現(xiàn)。如這里所使用的,術語“機器可讀介質”、“計算機可讀介質”指被用于向可編程處理器提供機器指令和/或數(shù)據(jù)的任何計算機程序產品、裝置和/或設備(例如磁盤、光盤、存儲器、可編程邏輯器件(PLD)),包括作為機器可讀信號接收機器指令的機器可讀介質。術語“機器可讀信號”指被用于向可編程處理器提供機器指令和/或數(shù)據(jù)的任何號。
[0089]為了提供與用戶的交互,這里所描述的系統(tǒng)和技術可以在具有用于向用戶顯示信息的顯示設備(例如CRT (陰極射線管)或LCD (液晶顯示器)監(jiān)視器)和用戶可以用其向計算機提供輸入的鍵盤和定點設備(例如鼠標或跟蹤球)的計算機上被實現(xiàn)。其它類型的設備也可以被用于提供與用戶的交互;例如,被提供給用戶的反饋可以是任何形式的知覺反饋(例如視覺反饋、聽覺反饋或觸覺反饋);并且來自用戶的輸入可以按任何形式被接收,包括聲音、語音或觸覺輸入。
[0090]這里所描述的系統(tǒng)和技術可以在包括后端組件(例如作為數(shù)據(jù)服務器)或者包括中間組件(例如應用服務器)或者包括前端組件(例如具有圖形用戶接口的客戶端計算機或者用戶可以通過其與這里所描述的系統(tǒng)和技術的實現(xiàn)方式進行交互的web瀏覽器)或者這些后端、中間或前端組件的任意組合的計算系統(tǒng)中被實現(xiàn)。系統(tǒng)的組件可以通過任何數(shù)字數(shù)據(jù)通信的形式或介質(例如通信為了)被互連。通信網(wǎng)絡的示例包括局域網(wǎng)(“LAN”)、廣域網(wǎng)(“WAN”)、對等網(wǎng)絡(具有自組織成員或者靜態(tài)成員)、網(wǎng)格計算架構和互聯(lián)網(wǎng)。、
[0091]計算系統(tǒng)可以包括客戶端和服務器??蛻舳撕头掌饕话闶潜舜诉h程的并且通常通過通信網(wǎng)絡進行交互。客戶端與服務器的關系通過運行在相應的計算機上并且彼此具有客戶端-服務器關系的計算機程序呈現(xiàn)。[0092]多個實現(xiàn)方式已經(jīng)被描述。然而,應當理解各種修改可以被進行。例如,以上所示出的流程的各種形式可以被使用,其中的步驟可以被重新排序、添加或刪除。此外,雖然已經(jīng)描述了提供針對媒體共享的激勵和方法的若干應用已被描述,但是應當意識到多種其它應用也可以被設想。因此,其它實現(xiàn)方式也在所附權利要求的范圍內。
【權利要求】
1.一種計算機實現(xiàn)的方法,包括: 在服務器系統(tǒng)處接收包括經(jīng)編碼的語音的音頻數(shù)據(jù),所述經(jīng)編碼的語音已被客戶端設備檢測到; 在所述服務器系統(tǒng)處接收指示所述音頻數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測到時所述客戶端設備的停靠情境的信息; 標識多個語言模型,所述多個語言模型中的每個語言模型指示短語序列中一個短語基于所述序列中的其它短語的出現(xiàn)概率; 針對所述多個語言模型中的每個語言模型,通過訪問與所述??壳榫诚嚓P聯(lián)的所存儲的加權值,基于所述??壳榫硜泶_定要分配給所述語言模型的加權值,所述加權值指示使用所述語言模型將生成對所述經(jīng)編碼的語音的正確轉錄的概率; 基于所分配的加權值來選擇所述多個語言模型中的至少一個語言模型;以及使用所選擇的語言模型對所述音頻數(shù)據(jù)執(zhí)行語音識別,以標識針對所述音頻數(shù)據(jù)的一部分的轉錄。
2.根據(jù)權利要求1所述的方法,其中所述??壳榫持甘舅鲆纛l數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測到時所述客戶端設備被連接到的??空九_的類型。
3.根據(jù)權利要求1或2所述的方法,其中所述經(jīng)編碼的語音包括一個或多個查詢短語,并且其中所述轉錄包括所述查詢短語,并且其中所述方法還包括: 生成包括所述查詢短語的搜索查詢; 使用所述搜索查詢來執(zhí)行搜索;以及` 向所述客戶端設備提供指示所述搜索的結果的信息。
4.根據(jù)權利要求1至3中的任一項所述的計算機實現(xiàn)的方法,其中所述多個語言模型中的每個語言模型針對特定的詞語話題類別被訓練。
5.根據(jù)權利要求1至4中的任一項所述的計算機實現(xiàn)的方法,其中基于所述??壳榫硜泶_定加權值包括: 確定所述客戶端設備被連接到車輛??空九_;以及 針對被訓練為輸出地址的導航語言模型,確定提高所述導航語言模型相對于所述多個語言模型中的其它語言模型被選擇的概率的加權值。
6.一種計算機實現(xiàn)的方法,包括: 訪問包括經(jīng)編碼的語音的音頻數(shù)據(jù); 訪問指示客戶端設備的??壳榫车男畔?,所述停靠情境與所述音頻數(shù)據(jù)相關聯(lián); 標識多個語言模型; 基于所述??壳榫硜磉x擇所述多個語言模型中的至少一個語言模型;以及使用所選擇的語言模型對所述音頻數(shù)據(jù)執(zhí)行語音識別,以標識針對所述音頻數(shù)據(jù)的一部分的轉錄。
7.根據(jù)權利要求6所述的計算機實現(xiàn)的方法,其中指示所述客戶端設備的??壳榫车乃鲂畔⒅甘舅隹蛻舳嗽O備與第二設備之間的連接,所述客戶端設備被物理連接到所述第二設備。
8.根據(jù)權利要求6或7所述的計算機實現(xiàn)的方法,其中指示所述客戶端設備的??壳榫车乃鲂畔⒅甘舅隹蛻舳嗽O備與第二設備之間的連接,所述客戶端設備被無線連接到所述第二設備。
9.根據(jù)權利要求6至8中的任一項所述的計算機實現(xiàn)的方法,還包括針對所述多個語言模型中的每個語言模型,基于所述停靠情境來確定要分配給所述語言模型的加權值,所述加權值指示所述語言模型將指示針對所述經(jīng)編碼的語音的正確轉錄的概率; 其中基于所述??壳榫尺x擇所述多個語言模型中的至少一個語言模型包括基于所分配的加權值來選擇所述多個語言模型中的至少一個語言模型。
10.根據(jù)權利要求6至9中的任一項所述的計算機實現(xiàn)的方法,其中所述音頻數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測,并且其中指示??壳榫车乃鲂畔⒅甘舅鲆纛l數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測到時所述客戶端設備是否被連接到停靠站臺。
11.根據(jù)權利要求6至10中的任一項所述的計算機實現(xiàn)的方法,其中所述音頻數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測,并且其中指示??壳榫车乃鲂畔⒅甘舅鲆纛l數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測到時所述客戶端設備被連接到的??空九_的類型。
12.根據(jù)權利要求6至11中的任一項所述的計算機實現(xiàn)的方法,其中所述經(jīng)編碼的語音包括一個或多個口述查詢短語,并且其中所述轉錄包括對所述口述查詢短語的轉錄,并且其中所述方法還包括: 使得搜索引擎使用對所述一個或多個口述查詢短語的轉錄來執(zhí)行搜索;以及 向所述客戶端設備提供指示所述搜索查詢的結果的信息。
13.根據(jù)權利要求6至12中的任一項所述的計算機實現(xiàn)的方法,其中確定針對所述多個語言模型中的每個語言模型的加權值包括訪問與所述停靠情境相關聯(lián)的所存儲的加權值。
14.根據(jù)權利要求6至13中的任一項所述的計算機實現(xiàn)的方法,其中確定針對所述多個語言模型中的每個語言模型的加權值包括訪問所存儲的加權值,并且基于所述??壳榫掣淖兯鎯Φ募訖嘀怠?br>
15.根據(jù)權利要求6至14中的任一項所述的計算機實現(xiàn)的方法,其中所述多個語言模型中的每個語言模型針對特定的詞語話題類別被訓練。
16.根據(jù)權利要求6至15中的任一項所述的計算機實現(xiàn)的方法,其中基于所述??壳榫硜泶_定加權值包括: 確定所述客戶端設備被連接到車輛??空九_;以及 針對被訓練為輸出地址的導航語言模型,確定提高所述導航語言模型相對于所述多個語言模型中的其它語言模型被選擇的概率的加權值。
17.—種系統(tǒng),包括: 一個或多個處理器;以及 計算機可讀介質,其上存儲有指令,所述計算機可讀介質被耦接到所述一個或多個處理器,所述指令在被所述一個或多個處理器執(zhí)行時使得所述系統(tǒng)執(zhí)行包括以下操作的操作: 訪問包括經(jīng)編碼的語音的音頻數(shù)據(jù); 訪問指示客戶端設備的停靠情境的信息,所述停靠情境與所述音頻數(shù)據(jù)相關聯(lián); 標識多個語言模型;基于所述??壳榫硜磉x擇所述多個語言模型中的至少一個語言模型;以及 使用所選擇的語言模型對所述音頻數(shù)據(jù)執(zhí)行語音識別,以標識針對所述音頻數(shù)據(jù)的一部分的轉錄。
18.根據(jù)權利要求17所述的系統(tǒng),其中所述操作還包括針對所述多個語言模型中的每個語言模型,基于所述??壳榫硜泶_定要分配給所述語言模型的加權值,所述加權值指示所述語言模型將指示針對所述經(jīng)編碼的語音的正確轉錄的概率; 其中基于所述??壳榫硜磉x擇所述多個語言模型中的至少一個語言模型包括基于所分配的加權值來選擇所述多個語言模型中的至少一個語言模型。
19.根據(jù)權利要求17或18所述的系統(tǒng),其中所述音頻數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測,并且其中指示??壳榫车乃鲂畔⒅甘舅鲆纛l數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測到時所述客戶端設備是否被連接到??空九_。
20.根據(jù)權利要求17至19中的任一項所述的系統(tǒng),其中所述音頻數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測,并且其中指示??壳榫车乃鲂畔⒅甘舅鲆纛l數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測到時所述客戶端設備被連接到的??空九_的類型。
21.一種計算機存儲介質,所述計算機存儲介質被編碼有計算機程序,所述程序包括指令,所述指令在被一個或多個計算機執(zhí)行時使得所述一個或多個計算機執(zhí)行包括以下操作的操作: 訪問包括經(jīng)編碼的語音的音頻數(shù)據(jù); 訪問指示客戶端設備的??壳椤ぞ车男畔?,所述??壳榫撑c所述音頻數(shù)據(jù)相關聯(lián); 標識多個語言模型,所述多個語言模型中的每個語言模型指示短語序列中一個短語基于所述序列中的其它短語的出現(xiàn)概率; 基于所述??壳榫硜磉x擇所述多個語言模型中的至少一個語言模型;以及 使用所選擇的語言模型對所述音頻數(shù)據(jù)執(zhí)行語音識別,以標識針對所述音頻數(shù)據(jù)的一部分的轉錄。
22.根據(jù)權利要求21所述的計算機存儲介質,其中所述操作還包括針對所述多個語言模型中的每個語言模型,基于所述??壳榫硜泶_定要分配給所述語言模型的加權值,所述加權值指示所述語言模型將指示針對所述經(jīng)編碼的語音的正確轉錄的概率; 其中基于所述??壳榫硜磉x擇所述多個語言模型中的至少一個語言模型包括基于所分配的加權值選擇所述多個語言模型中的至少一個語言模型。
23.根據(jù)權利要求21或22所述的計算機存儲介質,其中所述音頻數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測,并且其中指示??壳榫车乃鲂畔⒅甘舅鲆纛l數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測到時所述客戶端設備是否被連接到停靠站臺。
24.根據(jù)權利要求21至23中的任一項所述的計算機存儲介質,其中所述音頻數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測,并且其中指示??壳榫车乃鲂畔⒅甘舅鲆纛l數(shù)據(jù)中所編碼的語音被所述客戶端設備檢測到時所述客戶端設備被連接到的??空九_的類型。
25.根據(jù)權利要求21至24中的任一項所述的計算機存儲介質,其中所述經(jīng)編碼的語音包括一個或多個口述查詢短語,并且其中所述轉錄包括對所述口述查詢短語的轉錄,并且其中所述操作還包括: 使得搜索引擎使用對所述一個或多個口述查詢短語的轉錄來執(zhí)行搜索;以及向所述客戶端設備提供指示所述搜索查詢的結果的信息。
26.—種計算機實現(xiàn)的方法,包括: 在客戶端設備處檢測包括語音的音頻; 將所檢測到的音頻編碼為音頻數(shù)據(jù); 將所述音頻數(shù)據(jù)傳輸至服務器系統(tǒng); 標識所述客戶端設備的停靠情境; 將指示所述停靠情境的信息傳輸至所述服務器系統(tǒng);并且 在所述客戶端設備處接收所述音頻數(shù)據(jù)中的至少一部分的轉錄,所述服務器系統(tǒng)已經(jīng): 基于指示所述停靠情境的信息從多個語言模型中選擇語言模型, 通過使用所選擇的語言模型對所述音頻數(shù)據(jù)執(zhí)行語音識別來生成所述轉錄,以及 將所述轉錄傳輸至所述客戶端設備。
27.根據(jù)權利要求26所述的計算機實現(xiàn)的方法,其中所述被標識的??壳榫呈窃谒鲆纛l被檢測到時所述客戶端設備的停靠情境。
28.根據(jù)權利要求 26或27所述的計算機實現(xiàn)的方法,其中指示所述客戶端設備的??壳榫车乃鲂畔⒅甘舅隹蛻舳嗽O備與第二設備之間的連接,所述客戶端設備被物理連接到所述第二設備。
29.根據(jù)權利要求26至28中的任一項所述的計算機實現(xiàn)的方法,其中指示所述客戶端設備的??壳榫车乃鲂畔⒅甘舅隹蛻舳嗽O備與第二設備之間的連接,所述客戶端設備被無線連接到所述第二設備。
【文檔編號】G10L15/26GK103430232SQ201280012519
【公開日】2013年12月4日 申請日期:2012年1月13日 優(yōu)先權日:2011年1月21日
【發(fā)明者】M·I·勞埃德, P·里斯布德 申請人:谷歌公司