本說明書涉及發(fā)言人驗證(speaker verification)。
背景技術(shù):
在語音使能的環(huán)境(例如家庭或汽車)中,用戶可利用話音輸入訪問信息或控制各種功能。這些信息和功能可針對給定用戶個性化。在多用戶環(huán)境中,從一群發(fā)言人當(dāng)中識別給定發(fā)言人會是有利的。
技術(shù)實現(xiàn)要素:
本說明書涉及通過給發(fā)言人驗證系統(tǒng)提供更多信息來增強發(fā)言人驗證系統(tǒng)。例如,某些發(fā)言人驗證系統(tǒng)涉及連續(xù)地傾聽預(yù)定短語以便喚醒計算設(shè)備、通常執(zhí)行進(jìn)一步處理和/或接收更多用戶輸入,例如語音命令和查詢。這樣的發(fā)言人驗證系統(tǒng)可區(qū)分來自設(shè)備中的一組登記的用戶和未知的、未登記的用戶的對預(yù)定義短語的話語。在典型場景中,特定的計算設(shè)備將檢測由位置相對緊密接近設(shè)備的人說的預(yù)定義短語的任何話語,這些人例如會議室中的一群人或桌旁的其他用餐者。在一些情況下,這些人可使用與其設(shè)備相容的發(fā)言人驗證系統(tǒng)。通過利用協(xié)同定位(co-location)信息,與每個設(shè)備關(guān)聯(lián)的發(fā)言人驗證系統(tǒng)可檢測話語是由相應(yīng)設(shè)備的登記用戶說出的還是由緊密接近的另一用戶(例如,冒名頂替者(imposter))說出的,并且該信息可用于改善發(fā)言人驗證決定。
一般而言,在本說明書中描述的主題的一個創(chuàng)新方面可以體現(xiàn)在包括以下動作的方法中:由第一用戶設(shè)備接收對話語進(jìn)行編碼的音頻信號,由第一用戶設(shè)備獲得用于第一用戶設(shè)備的第一用戶的第一發(fā)言人模型,由第一用戶設(shè)備針對與第一用戶設(shè)備協(xié)同定位的第二用戶設(shè)備的對應(yīng)的第二用戶獲得用于第二用戶的第二發(fā)言人模型或指示話語是由第二用戶說出的相應(yīng)的可能性的第二分?jǐn)?shù),以及由第一用戶設(shè)備利用(i)第一發(fā)言人模型和第二發(fā)言人模型或(ii)第一發(fā)言人模型和第二分?jǐn)?shù)來確定話語是由第一用戶說出的。該方面的其他實施例包括對應(yīng)的計算機系統(tǒng)、裝置和記錄在一個或多個計算機存儲設(shè)備上的計算機程序,所述計算機系統(tǒng)、裝置和計算機程序每個都配置為執(zhí)行所述方法的動作。一個或多個計算機的系統(tǒng)可以憑借在操作中使得系統(tǒng)執(zhí)行動作的軟件、固件、硬件或它們的組合安裝在所述系統(tǒng)上而被配置為執(zhí)行特定操作或動作。一個或多個計算機程序可配置為憑借包括被數(shù)據(jù)處理裝置執(zhí)行時使得所述裝置執(zhí)行動作的指令來執(zhí)行特定操作或動作。
一般而言,在本說明書中描述的主題的一個創(chuàng)新方面可以體現(xiàn)在包括以下動作的方法中:由第一用戶設(shè)備接收對話語進(jìn)行編碼的音頻信號,由第一用戶設(shè)備獲得用于第一用戶設(shè)備的第一用戶的第一發(fā)言人模型,由第一用戶設(shè)備針對與第一用戶設(shè)備協(xié)同定位的其他用戶設(shè)備的多個其他用戶中的每一個獲得用于每個相應(yīng)用戶的發(fā)言人模型或指示話語是由相應(yīng)用戶說出的相應(yīng)的可能性的分?jǐn)?shù),以及由第一用戶設(shè)備利用(i)第一發(fā)言人模型和多個其他發(fā)言人模型或(ii)第一發(fā)言人模型和多個分?jǐn)?shù)來確定話語是由第一用戶說出的。該方面的其他實施例包括對應(yīng)的計算機系統(tǒng)、裝置和記錄在一個或多個計算機存儲設(shè)備上的計算機程序,所述計算機系統(tǒng)、裝置和計算機程序每個都配置為執(zhí)行所述方法的動作。一個或多個計算機的系統(tǒng)可以憑借在操作中使得所述系統(tǒng)執(zhí)行動作的軟件、固件、硬件或它們的組合安裝在所述系統(tǒng)上而被配置為執(zhí)行特定操作或動作。一個或多個計算機程序可配置為憑借包括被數(shù)據(jù)處理裝置執(zhí)行時使得所述裝置執(zhí)行動作的指令來執(zhí)行特定操作或動作。
一般而言,在本說明書中描述的主題的一個創(chuàng)新方面可以體現(xiàn)在包括以下動作的方法中:由第一用戶設(shè)備接收對話語進(jìn)行編碼的音頻信號,由第一用戶設(shè)備確定用于第一用戶設(shè)備的第一用戶的第一發(fā)言人模型,由第一用戶設(shè)備確定存儲在第一用戶設(shè)備上的用于可與第一用戶設(shè)備協(xié)同定位的其他人的一個或多個第二發(fā)言人模型,以及由第一用戶設(shè)備利用第一發(fā)言人模型和第二發(fā)言人模型確定話語是由第一用戶說出的。該方面的其他實施例包括對應(yīng)的計算機系統(tǒng)、裝置和記錄在一個或多個計算機存儲設(shè)備上的計算機程序,所述計算機系統(tǒng)、裝置和計算機程序每個都配置為執(zhí)行所述方法的動作。一個或多個計算機的系統(tǒng)可以憑借在操作中使得所述系統(tǒng)執(zhí)行動作的軟件、固件、硬件或它們的組合安裝在所述系統(tǒng)上而被配置為執(zhí)行特定操作或動作。一個或多個計算機程序可配置為憑借包括被數(shù)據(jù)處理裝置執(zhí)行時使得所述裝置執(zhí)行動作的指令來執(zhí)行特定操作或動作。
一般而言,在本說明書中描述的主題的一個創(chuàng)新方面可以體現(xiàn)在包括以下動作的方法中:通過至少一個計算機接收對話語進(jìn)行編碼的音頻信號,通過至少一個計算機針對兩個或更多個用戶設(shè)備中的每一個獲得對用于相應(yīng)用戶設(shè)備的相應(yīng)用戶的相應(yīng)發(fā)言人模型的識別,通過至少一個計算機利用識別的發(fā)言人模型確定話語是由用戶設(shè)備中的一個的特定用戶說出的。該方面的其他實施例包括對應(yīng)的計算機系統(tǒng)、裝置和記錄在一個或多個計算機存儲設(shè)備上的計算機程序,所述計算機系統(tǒng)、裝置和計算機程序每個都配置為執(zhí)行所述方法的動作。一個或多個計算機的系統(tǒng)可以憑借在操作中使得所述系統(tǒng)執(zhí)行動作的軟件、固件、硬件或它們的組合安裝在所述系統(tǒng)上而被配置為執(zhí)行特定操作或動作。一個或多個計算機程序可配置為憑借包括被數(shù)據(jù)處理裝置執(zhí)行時使得所述裝置執(zhí)行動作的指令來執(zhí)行特定操作或動作。
一般而言,在本說明書中描述的主題的一個創(chuàng)新方面可以體現(xiàn)在包括以下動作的方法中:由第一用戶設(shè)備接收對話語進(jìn)行編碼的音頻信號,由第一用戶設(shè)備獲得指示話語是由第一用戶設(shè)備的第一用戶說出的可能性的第一分?jǐn)?shù),由第一用戶設(shè)備針對與第一用戶設(shè)備協(xié)同定位的第二用戶設(shè)備的對應(yīng)的第二用戶獲得指示話語是由第二用戶說出的相應(yīng)的可能性的第二分?jǐn)?shù),由第一用戶設(shè)備確定第一分?jǐn)?shù)和第二分?jǐn)?shù)的組合,由第一用戶設(shè)備利用第一分?jǐn)?shù)和第二分?jǐn)?shù)的組合來歸一化第一分?jǐn)?shù)和第二分?jǐn)?shù),以及由第一用戶設(shè)備利用歸一化的第一分?jǐn)?shù)和歸一化的第二分?jǐn)?shù)來確定話語是由第一用戶說出的。
前述以及其他實施例每一個都可以可選地單獨或組合地包括下列特征中的一個或多個。由第一用戶設(shè)備針對與第一用戶設(shè)備協(xié)同定位的第二用戶設(shè)備的對應(yīng)的第二用戶獲得用于第二用戶的第二發(fā)言人模型或指示話語是由第二用戶說出的相應(yīng)的可能性的第二分?jǐn)?shù)可包括:由第一用戶設(shè)備針對協(xié)同定位在第一用戶設(shè)備的物理位置附近的物理區(qū)域中的第二用戶設(shè)備的第二用戶獲得用于第二用戶的第二發(fā)言人模型或指示話語是由第二用戶說出的相應(yīng)的可能性的第二分?jǐn)?shù)。所述方法可包括響應(yīng)于確定話語是由第一用戶發(fā)出的執(zhí)行動作。所述方法可包括分析音頻信號以識別包括在話語中的命令,并執(zhí)行與命令對應(yīng)的動作。所述方法可包括由第一用戶設(shè)備利用音頻信號的一部分和第一發(fā)言人模型生成指示話語是由第一用戶說出的可能性的第一分?jǐn)?shù)。所述方法可包括將第一分?jǐn)?shù)與第二分?jǐn)?shù)進(jìn)行比較以確定最高分?jǐn)?shù)。確定話語是由第一用戶說出的可包括確定第一分?jǐn)?shù)為最高分?jǐn)?shù)。
在一些實現(xiàn)方式中,由第一用戶設(shè)備針對協(xié)同定位在第一用戶設(shè)備的物理位置附近的物理區(qū)域中的第二用戶設(shè)備的對應(yīng)的第二用戶獲得用于第二用戶的第二發(fā)言人模型或指示話語是由第二用戶說出的相應(yīng)的可能性的第二分?jǐn)?shù)可包括:由第一用戶設(shè)備獲得第二發(fā)言人模型,并且由第一用戶設(shè)備利用音頻信號的一部分和第二發(fā)言人模型生成第二分?jǐn)?shù)。
在一些實現(xiàn)方式中,由第一用戶設(shè)備針對協(xié)同定位在第一用戶設(shè)備的物理位置附近的物理區(qū)域中的第二用戶設(shè)備的對應(yīng)的第二用戶獲得用于第二用戶的第二發(fā)言人模型或指示話語是由第二用戶說出的相應(yīng)的可能性的第二分?jǐn)?shù)可包括:由第一用戶設(shè)備確定第二用戶設(shè)備位于第一用戶設(shè)備的物理位置附近的物理區(qū)域中,由第一用戶設(shè)備確定第一用戶設(shè)備具有允許第一用戶設(shè)備訪問第二發(fā)言人模型的設(shè)置,由第一用戶設(shè)備接收第二發(fā)言人模型,以及由第一用戶設(shè)備利用音頻信號的一部分和第二發(fā)言人模型生成第二分?jǐn)?shù)。由第一用戶設(shè)備接收第二發(fā)言人模型可包括由第一用戶設(shè)備識別存儲在第一用戶設(shè)備上的一個或多個第三發(fā)言人模型,以及由第一用戶設(shè)備確定第三發(fā)言人模型的子集可包括第二發(fā)言人模型。所述方法可包括由第一用戶設(shè)備從第一用戶設(shè)備移除未包括在第三發(fā)言人模型的子集中的第三發(fā)言人模型。由第一用戶設(shè)備接收第二發(fā)言人模型可包括由第一用戶設(shè)備從第一用戶設(shè)備中的存儲器檢索第二發(fā)言人模型。由第一用戶設(shè)備生成第二分?jǐn)?shù)可包括由第一用戶設(shè)備利用存儲在第一用戶設(shè)備上的第二發(fā)言人模型和音頻信號的一部分而不從另一用戶設(shè)備請求第二發(fā)言人模型來生成第二分?jǐn)?shù)。由第一用戶設(shè)備接收第二發(fā)言人模型可包括由第一用戶設(shè)備從服務(wù)器接收第二發(fā)言人模型。第二用戶設(shè)備可包括第二發(fā)言人模型。由第一用戶設(shè)備接收第二發(fā)言人模型可包括由第一用戶設(shè)備從第二用戶設(shè)備接收第二發(fā)言人模型。
在一些實現(xiàn)方式中,由第一用戶設(shè)備針對位于第一用戶設(shè)備的物理位置附近的物理區(qū)域中的第二用戶設(shè)備的對應(yīng)的第二用戶獲得用于第二用戶的第二發(fā)言人模型或指示話語是由第二用戶說出的相應(yīng)的可能性的第二分?jǐn)?shù)可包括:由第一用戶設(shè)備確定第二用戶設(shè)備位于第一用戶設(shè)備的物理位置附近的物理區(qū)域中,以及由第一用戶設(shè)備接收第二分?jǐn)?shù)。由第一用戶設(shè)備接收第二分?jǐn)?shù)可包括由第一用戶設(shè)備從第二用戶設(shè)備接收第二分?jǐn)?shù)。由第一用戶設(shè)備接收第二分?jǐn)?shù)可包括由第一用戶設(shè)備從服務(wù)器接收第二分?jǐn)?shù)。所述方法可包括由第一用戶設(shè)備確定用于第二用戶設(shè)備的設(shè)備識別符,以及由第一用戶設(shè)備將設(shè)備識別符提供給服務(wù)器,其中第一用戶設(shè)備響應(yīng)于將識別符提供給服務(wù)器而從服務(wù)器接收第二分?jǐn)?shù)。
在一些實現(xiàn)方式中,所述方法可包括由第一用戶設(shè)備確定存儲在第一用戶設(shè)備上的用于可位于第一用戶設(shè)備的物理位置附近的物理區(qū)域中的其他人的一個或多個第三發(fā)言人模型,以及由第一用戶設(shè)備利用(i)第一發(fā)言人模型、第二發(fā)言人模型和第三發(fā)言人模型或(ii)第一發(fā)言人模型、第二分?jǐn)?shù)和第三發(fā)言人模型來確定話語是由第一用戶說出的。所述方法可包括由第一用戶設(shè)備利用音頻信號的一部分和第一發(fā)言人模型生成指示話語是由第一用戶說出的可能性的第一分?jǐn)?shù),由第一用戶設(shè)備針對第三發(fā)言人模型中的每一個利用相應(yīng)的第三發(fā)言人模型和音頻信號的一部分來生成相應(yīng)的第三分?jǐn)?shù),以及由第一用戶設(shè)備比較第一分?jǐn)?shù)、第二分?jǐn)?shù)和第三分?jǐn)?shù)以確定最高分?jǐn)?shù)。所述方法可包括由第一用戶設(shè)備針對第三用戶設(shè)備確定第三用戶設(shè)備位于第一用戶設(shè)備的物理位置附近的物理區(qū)域中的頻率,由第一用戶設(shè)備確定所述頻率是否滿足門限頻率,以及由第一用戶設(shè)備響應(yīng)于確定所述頻率滿足門限頻率來將用于第三用戶設(shè)備的第三用戶的第三發(fā)言人模型存儲在第三發(fā)言人模型中。所述方法可包括由第一用戶設(shè)備從第一用戶接收識別第三發(fā)言人模型的輸入,以及由第一用戶設(shè)備響應(yīng)于從用戶接收到識別第三發(fā)言人模型的輸入而將該第三發(fā)言人模型存儲在第三發(fā)言人模型中。
在一些實現(xiàn)方式中,所述方法可包括通過至少一個計算機針對用戶設(shè)備中的每一個從相應(yīng)的用戶設(shè)備接收相應(yīng)的發(fā)言人模型。所述方法可包括通過至少一個計算機針對用戶設(shè)備中的每一個利用相應(yīng)的識別從包括在至少一個計算機中的存儲器中檢索相應(yīng)的發(fā)言人模型。
在一些實現(xiàn)方式中,所述方法可包括由第一用戶設(shè)備確定歸一化的第一分?jǐn)?shù)滿足門限值,其中確定話語是由第一用戶說出的是響應(yīng)于確定歸一化的第一分?jǐn)?shù)滿足門限值的。所述方法可包括由第一用戶設(shè)備確定第一分?jǐn)?shù)和第二分?jǐn)?shù)的平均不滿足門限值,其中確定第一分?jǐn)?shù)和第二分?jǐn)?shù)的組合是響應(yīng)于確定第一分?jǐn)?shù)和第二分?jǐn)?shù)的平均不滿足門限值的。所述方法可包括由第一用戶設(shè)備確定第一分?jǐn)?shù)和第二分?jǐn)?shù)兩者都不滿足門限值,其中確定第一分?jǐn)?shù)和第二分?jǐn)?shù)的組合是響應(yīng)于確定第一分?jǐn)?shù)和第二分?jǐn)?shù)兩者都不滿足門限值的。所述方法可包括由第一用戶設(shè)備確定第一分?jǐn)?shù)不滿足門限值,其中確定第一分?jǐn)?shù)和第二分?jǐn)?shù)的組合是響應(yīng)于確定第一分?jǐn)?shù)不滿足門限值的。
在本說明書中描述的主題可以在特定實施例中實現(xiàn)以便實現(xiàn)下列優(yōu)點中的一個或多個。在一些實現(xiàn)方式中,對冒名頂替者發(fā)言人模型的使用可減少用戶設(shè)備響應(yīng)于由不是用戶設(shè)備的用戶的其他人說出的話語的動作。在一些實現(xiàn)方式中,當(dāng)使用冒名頂替者發(fā)言人模型時,系統(tǒng)可減少誤報達(dá)6%-8%。在一些實現(xiàn)方式中,系統(tǒng)可利用用于不同的協(xié)同定位發(fā)言人的分?jǐn)?shù)的組合來歸一化最后的話語分?jǐn)?shù)。
在附圖和下面的描述中闡述本說明書的主題的一個或多個實施例的細(xì)節(jié)。根據(jù)描述、附圖和權(quán)利要求書,所述主題的其他特征、方面和優(yōu)點將變得明了。
附圖說明
圖1A-1C示出了在其中一個或多個用戶設(shè)備A-D分析對話語進(jìn)行編碼的音頻信號的環(huán)境的示例。
圖2是發(fā)言人驗證系統(tǒng)的示例。
圖3是用于確定話語是否是由用戶說出的過程的流程圖。
圖4是可用于實現(xiàn)在該文檔中描述的系統(tǒng)和方法的計算設(shè)備的框圖。
在不同附圖中同樣的參考標(biāo)號和命名指示相同元素。
具體實施方式
發(fā)言人驗證系統(tǒng)可包括連續(xù)地傾聽預(yù)定義的短語以便喚醒計算設(shè)備、通常執(zhí)行進(jìn)一步處理和/或接收更多用戶輸入(例如語音命令和查詢)的過程。這樣的發(fā)言人驗證系統(tǒng)可區(qū)分來自設(shè)備中的一組登記的用戶和來自未知的、未登記的用戶的對熱詞(hotword)的話語。
登記涉及用戶是否已經(jīng)將樣本話語提供給系統(tǒng)以創(chuàng)建可用于將他或她與已知或未知的其他用戶區(qū)分開的模型。發(fā)言人驗證過程可涉及將針對給定話語創(chuàng)建的模型與針對發(fā)言人(或多個發(fā)言人)創(chuàng)建的模型進(jìn)行比較,并且基于相似性門限決定是接受還是拒絕話語。
發(fā)言人驗證系統(tǒng)在寬范圍的領(lǐng)域中具有可應(yīng)用性,并且也具有寬范圍的性能要求——特別是對于識別質(zhì)量和冒名頂替者防止有效性方面。例如,用于解鎖設(shè)備的發(fā)言人驗證系統(tǒng)與當(dāng)系統(tǒng)被用在受信任環(huán)境中已經(jīng)解鎖的設(shè)備時相比,可具有較高的要求來提供對冒名頂替者的低錯誤接受(false acceptance),在受信任環(huán)境中錯誤接受可不嚴(yán)格以支持較低的錯誤拒絕(不識別登記的用戶)。
當(dāng)驗證系統(tǒng)僅具有從(一個或多個)登記的發(fā)言人提供的信息來執(zhí)行對接受或拒絕給定話語的決定時,由于未知的可能的冒名頂替者的集合實際上無界,因此驗證過程會是具有挑戰(zhàn)性的。這可導(dǎo)致來自未知的發(fā)言人的話語將有較高概率超過用于登記的發(fā)言人的相似性門限,從而導(dǎo)致錯誤接受。這種挑戰(zhàn)對于移動設(shè)備來說尤其重要,其中在移動設(shè)備周圍的可能的冒名頂替者的可得性不斷地增加和改變。
可以通過給發(fā)言人驗證系統(tǒng)提供更多信息來改善這些系統(tǒng)。具體地,通過利用由一般可利用的API(其可已經(jīng)存在于移動設(shè)備/平臺中)提供的協(xié)同定位信息,在每個設(shè)備上的驗證系統(tǒng)能夠檢測附近是否存在可能的冒名頂替者。這樣的信息可用于調(diào)整相似性門限,并且還可共享其登記的發(fā)言人模型以改善驗證決定。在一些示例中,系統(tǒng)可利用用于協(xié)同定位的發(fā)言人的分?jǐn)?shù)的組合來歸一化用于一個或多個發(fā)言人模型的分?jǐn)?shù)。例如,用戶設(shè)備可利用存儲在用戶設(shè)備上的發(fā)言人模型和從其他用戶設(shè)備接收的發(fā)言人模型來生成相應(yīng)的分?jǐn)?shù)、決定分?jǐn)?shù)的組合并利用該組合歸一化每個分?jǐn)?shù)。
例如,用戶設(shè)備可由于背景噪聲而針對話語生成較低的分?jǐn)?shù),例如,分?jǐn)?shù)可以與背景噪聲成比例地降低。在高度嘈雜的條件下(例如,奔跑的車輛或人多的餐廳),對于來自用戶設(shè)備的用戶的話語的分?jǐn)?shù)不滿足門限值(例如,該分?jǐn)?shù)低于或等于接受門限)是有可能的,并且可能被錯誤地拒絕。對分?jǐn)?shù)的歸一化可減少噪聲代價。例如,由于每個都利用不同的發(fā)言人模型生成的多個分?jǐn)?shù)的平均不滿足接受門限,例如,該平均低于或等于接受門限,因此歸一化將導(dǎo)致對每個分?jǐn)?shù)的改善,以使得對于用戶設(shè)備的用戶的分?jǐn)?shù)應(yīng)當(dāng)滿足接受門限,例如大于接受門限。
由于這樣的驗證系統(tǒng)可訪問可能的冒名頂替者的模型,因此這些系統(tǒng)在其中冒名頂替者的話語比照登記的用戶獲得高于接受門限的相似性分?jǐn)?shù)的情況下,將能夠更好地拒絕一些話語(例如,減少錯誤接受率)。例如,如果話語比照“冒名頂替者”集合中的模型(例如,根據(jù)協(xié)同定位的用戶創(chuàng)建)中的一個具有相等或更高的分?jǐn)?shù),那么系統(tǒng)可假設(shè)該話語很有可能來自冒名頂替者并且拒絕它。這種方法可以與各種類型的發(fā)言人模型(例如,i-向量、d-向量等)相容。
可有多種方式來確定設(shè)備何時協(xié)同定位在給定地理區(qū)域中。例如,該信息可以源自全球定位系統(tǒng)(GPS)、近場通信(NFC)、藍(lán)牙、次聲音頻(Subsonic audio)和/或其他傳感器和技術(shù)中的一者或多者。在一些示例中,協(xié)同定位設(shè)備可以虛擬地關(guān)聯(lián),例如,當(dāng)所述設(shè)備參與相同電話或視頻會議時。在這些示例中,所述設(shè)備或服務(wù)器可利用日歷條目、電子郵件或文本消息或者其他“軟”概念來確定協(xié)同定位。
當(dāng)不是所有用戶都具有對應(yīng)的用戶設(shè)備時,多個用戶也可以協(xié)同定位于相同區(qū)域中,但是用戶設(shè)備中的一些包括用于那些用戶的發(fā)言人模型。例如,當(dāng)五個朋友在他們的起居室中的一個中并且這些朋友中的兩個具有其移動設(shè)備時,第一移動設(shè)備可包括用于不隨身具有移動設(shè)備的三個朋友的發(fā)言人模型并且第一和第二移動設(shè)備可利用這些發(fā)言人模型以及用于擁有設(shè)備的朋友的發(fā)言人模型來確定朋友中的哪個說出了特定話語。
在示例性實現(xiàn)方式中,發(fā)言人驗證系統(tǒng)接收對話語進(jìn)行編碼的音頻信號并且確定利用發(fā)言人模型生成的分?jǐn)?shù)是否滿足門限分?jǐn)?shù)值。當(dāng)發(fā)言人驗證系統(tǒng)僅利用用于特定用戶設(shè)備的特定用戶的單個發(fā)言人模型時,發(fā)言人驗證系統(tǒng)可為由另一用戶(例如,該用戶的兄弟)說出的話語生成滿足門限分?jǐn)?shù)值的分?jǐn)?shù)。
發(fā)言人驗證系統(tǒng)利用多個發(fā)言人模型(例如,一個用于該用戶而另一個用于該用戶的兄弟)來增加發(fā)言人驗證系統(tǒng)的準(zhǔn)確性。例如,發(fā)言人驗證系統(tǒng)為對話語進(jìn)行編碼的音頻信號生成兩個分?jǐn)?shù),一個用于該用戶而另一個分?jǐn)?shù)用于他的兄弟。發(fā)言人驗證系統(tǒng)比較這兩個分?jǐn)?shù)(這兩個分?jǐn)?shù)可都滿足門限分?jǐn)?shù)值)以確定哪個分?jǐn)?shù)最高。與當(dāng)不同的人說出話語(例如當(dāng)用于該不同的人的發(fā)言人模型將要被用于生成最高分?jǐn)?shù)之時)相比,發(fā)言人驗證系統(tǒng)最有可能利用用于說出話語的特定用戶的發(fā)言人模型生成最高分?jǐn)?shù)。
當(dāng)發(fā)言人驗證系統(tǒng)確定對于該用戶的分?jǐn)?shù)(例如,利用用于該用戶的發(fā)言人模型生成的分?jǐn)?shù))最高時,則該特定的用戶設(shè)備可響應(yīng)于話語來執(zhí)行動作。當(dāng)發(fā)言人驗證系統(tǒng)確定對于該用戶的兄弟的分?jǐn)?shù)(例如,利用用于該用戶的兄弟的發(fā)言人模型生成的分?jǐn)?shù))最高時,則該特定的用戶設(shè)備不采取動作。
發(fā)言人驗證系統(tǒng)可利用用于在特定用戶設(shè)備附近的物理區(qū)域中(例如,與所述特定用戶設(shè)備協(xié)同定位)的其他用戶的其他發(fā)言人模型或者從這些其他用戶設(shè)備接收的分?jǐn)?shù)來確定哪個分?jǐn)?shù)最高以及所述特定用戶設(shè)備是否應(yīng)該響應(yīng)于話語執(zhí)行動作。發(fā)言人驗證系統(tǒng)可在特定設(shè)備或另一設(shè)備(例如,服務(wù)器)上執(zhí)行。
圖1A-1C示出了在其中一個或多個用戶設(shè)備A-D 102a-d分析對話語進(jìn)行編碼的音頻信號的環(huán)境100的示例。用戶設(shè)備A-D 102a-d可利用多種不同算法中的一種來確定是話語可能為由用戶設(shè)備的相應(yīng)的用戶說出的并且用戶設(shè)備應(yīng)當(dāng)響應(yīng)于話語執(zhí)行動作,還是話語不可能主由相應(yīng)的用戶說出的并且用戶設(shè)備應(yīng)當(dāng)不采取動作。
例如,四個同事可處于會議室中,并且第一同事(例如,用戶D)可發(fā)出命令“好了,Google,請開始演示(Okay Google,please start the demo)”。用戶設(shè)備A 102a可利用包括用于用戶設(shè)備A 102a的用戶A的發(fā)言人模型A1024a及用于其他用戶的其他發(fā)言人模型的多個發(fā)言人模型分析音頻信號,所述其他用戶例如有時或經(jīng)常處于與用戶A或用戶設(shè)備A 102a相同的物理區(qū)域中。其他發(fā)言人模型可以存儲在用戶設(shè)備A 102a的存儲器中持續(xù)短時間段(例如,當(dāng)用戶設(shè)備A 102a最近從另一用戶設(shè)備B-D 102b-d請求過特定發(fā)言人模型時)或持續(xù)長時間段(例如,當(dāng)所述其他用戶高概率地處于與用戶設(shè)備A102a相同的物理區(qū)域中時)。
用戶設(shè)備A 102a確定對于發(fā)言人模型中的每一個的分?jǐn)?shù)并從多個分?jǐn)?shù)中確定最高分?jǐn)?shù)。用戶設(shè)備A 102a可例如通過將所述最高分?jǐn)?shù)與門限分?jǐn)?shù)值進(jìn)行比較來確定所述最高分?jǐn)?shù)是否滿足門限分?jǐn)?shù)值以及是否有高的可能性所述最高分?jǐn)?shù)是對于用戶設(shè)備A 102a的用戶A的。如果所述最高分?jǐn)?shù)不滿足門限分?jǐn)?shù)值,則用戶設(shè)備A 102a可例如不采取進(jìn)一步的動作,并且確定所述話語是由對于其用戶設(shè)備A 102a不具有發(fā)言人模型的用戶說出的。
當(dāng)用戶設(shè)備A 102a確定所述最高分?jǐn)?shù)是對于用戶設(shè)備A 102a的用戶A的(例如,確定發(fā)出所述命令的第一同事是用戶A)時,用戶設(shè)備A 102a響應(yīng)于對該音頻信號的接收執(zhí)行動作。例如,用戶設(shè)備A 102a可發(fā)起請求的演示。
當(dāng)用戶設(shè)備A 102a確定所述最高分?jǐn)?shù)不是對于用戶A的并且第一同事不是用戶A時,用戶設(shè)備A 102a針對所述音頻信號可不采取進(jìn)一步的動作。例如,用戶設(shè)備A 102a可伴隨由第一同事說出的另一話語接收另一音頻信號并且響應(yīng)于所述另一話語不采取動作。
在一些示例中,當(dāng)用戶設(shè)備A-D 102a-d包括相同或相容的發(fā)言人驗證系統(tǒng)時,用戶設(shè)備A-D 102a-d中的每一個可共享關(guān)于其相應(yīng)的用戶的信息,例如發(fā)言人模型,或關(guān)于對編碼話語的音頻信號的分析的信息,例如分?jǐn)?shù)。例如,如圖1A中所示,第一同事(例如,用戶D)可說出話語106“好了,Google,請開始演示”,并且用戶設(shè)備A-D 102a-d中的每一個上的麥克風(fēng)可捕獲表示所述話語的信號并且將所述話語編碼成音頻信號。
用戶設(shè)備A-D 102a-d中的每一個利用對應(yīng)的發(fā)言人模型A-D 104a-d分析相應(yīng)的音頻信號以生成表示用戶設(shè)備的相應(yīng)的用戶A-D說出話語106的可能性的分?jǐn)?shù),如圖1B中所示。在該示例中,用戶設(shè)備A 102a為用戶A生成0.76的分?jǐn)?shù),用戶設(shè)備B 102b為用戶B生成0.23的分?jǐn)?shù),用戶設(shè)備C 102c為用戶C生成0.67的分?jǐn)?shù),并且用戶設(shè)備D 102d為用戶D生成0.85的分?jǐn)?shù)。
用戶設(shè)備A-D 102a-d中的每一個與其他用戶設(shè)備共享各自的分?jǐn)?shù)。例如,用戶設(shè)備A-D 102a-d可利用一個或多個傳感器(例如GPS、NFC、藍(lán)牙、次聲音頻或任何其他適當(dāng)?shù)募夹g(shù))來確定物理上位于相應(yīng)的用戶設(shè)備附近的區(qū)域中的其他用戶設(shè)備。用戶設(shè)備A-D 102a-d可確定指示用戶設(shè)備是否可與另一用戶設(shè)備共享其分?jǐn)?shù)的訪問設(shè)置,并且可例如確定該另一用戶設(shè)備是否利用相同的發(fā)言人驗證系統(tǒng),并且可利用所述分?jǐn)?shù),或這兩者。
用戶設(shè)備A-D 102a-d中的每一個將所有的分?jǐn)?shù)相互比較以確定由相應(yīng)的用戶設(shè)備生成的分?jǐn)?shù)是否是最高分?jǐn)?shù)以及相應(yīng)的用戶設(shè)備是否應(yīng)當(dāng)響應(yīng)于話語106執(zhí)行動作。例如,如圖1C中所示,用戶設(shè)備D 102d確定利用用于用戶設(shè)備D 102d的用戶D的發(fā)言人模型D 104d生成的分?jǐn)?shù)為最高以及話語106是由用戶D說出的可能性大于話語106是由其他用戶設(shè)備A-C 102a-c的其他用戶說出的可能性。用戶設(shè)備D 102d可執(zhí)行與話語106對應(yīng)的動作,例如發(fā)起請求的演示108。用戶設(shè)備D 102d可將最高分?jǐn)?shù)與門限分?jǐn)?shù)值進(jìn)行比較以確保存在高的可能性所述話語是由用戶D而不是由例如對于其用戶設(shè)備D 102d沒有接收到分?jǐn)?shù)的另一用戶說出的。
類似地,其他用戶設(shè)備A-C 102a-c中的每一個確定其相應(yīng)的分?jǐn)?shù)不是最大的以及相應(yīng)的其他用戶設(shè)備應(yīng)當(dāng)不采取動作。在確定其相應(yīng)的分?jǐn)?shù)不是最大的分?jǐn)?shù)之前,其他用戶設(shè)備A-C 102a-c中的每一個可將最高分?jǐn)?shù)與門限分?jǐn)?shù)值(例如,特定于相應(yīng)的用戶設(shè)備)進(jìn)行比較以確保在所述話語與所述發(fā)言人模型中的一個之間至少存在最小的相似性并且確保所述話語不是由對于其其他用戶設(shè)備A-C 102a-c不具有相應(yīng)的發(fā)言人模型的另一用戶說出的。當(dāng)最高分?jǐn)?shù)是從另一用戶設(shè)備接收到的時,其他用戶設(shè)備A-C 102a-c可以知道或者可以不知道關(guān)于與最高分?jǐn)?shù)對應(yīng)的用戶、用戶設(shè)備或這兩者的信息。例如,用戶設(shè)備A-D 102a-d中的每一個可將分?jǐn)?shù)發(fā)送到其他用戶設(shè)備,而不帶有例如用戶或用戶設(shè)備的任何識別信息。在一些示例中,用戶設(shè)備可以將分?jǐn)?shù)與該分?jǐn)?shù)被對于其生成的用戶的識別符一起發(fā)送。
圖2是發(fā)言人驗證系統(tǒng)200的示例。一個或多個用戶設(shè)備A-B 202a-b或服務(wù)器204可分析對話語進(jìn)行編碼的音頻信號(例如,表示話語的屬性的數(shù)據(jù))以確定最有可能說出所述話語的用戶。用戶設(shè)備A-B 202a-b、服務(wù)器204或這些設(shè)備中的兩個或更多個的組合可利用發(fā)言人模型分析音頻信號,比較利用發(fā)言人模型確定的對音頻信號的不同的分析,以及確定特定的用戶是否說出了所述話語。
例如,用戶設(shè)備A-B 202a-b中的每一個包括用于其相應(yīng)的用戶的發(fā)言人模型A-B 206a-b??梢岳萌魏芜m當(dāng)?shù)姆椒▽τ谔囟ㄓ脩羯砂l(fā)言人模型A-B 206a-b,所述適當(dāng)?shù)姆椒ɡ缡姑總€用戶說出登記短語,然后例如從關(guān)鍵詞樣本提取梅爾頻率倒譜系數(shù)(mel-frequency cepstral coefficient,MFCC)特征,并且利用這些特征作為將來比較的參考,和/或利用對由特定用戶說出的話語的表示來訓(xùn)練神經(jīng)網(wǎng)絡(luò)。
發(fā)言人驗證模塊A 208a利用用于用戶設(shè)備A 202a的用戶A的發(fā)言人模型A 206a來確定特定話語是由用戶A說出的可能性。例如,發(fā)言人驗證模塊A 208a接收編碼特定話語的音頻信號(例如,音頻信號的表示),并且利用發(fā)言人模型A 206a來生成表示所述特定話語是由用戶A說出的可能性的分?jǐn)?shù)。
發(fā)言人驗證模塊A 208a可利用存儲在用戶設(shè)備A 202a上的一個或多個冒名頂替者發(fā)言人模型210a來針對冒名頂替者發(fā)言人模型210a中的每一個生成表示所述特定話語是由與特定的冒名頂替者發(fā)言人模型對應(yīng)的相應(yīng)的用戶說出的可能性的分?jǐn)?shù)。例如,用戶設(shè)備A 202a可接收所述音頻信號,確定用戶設(shè)備B 202b位于用戶設(shè)備A 202a的物理位置附近的物理區(qū)域中(例如,在同一房間中),并且從用戶設(shè)備B 202b或從服務(wù)器204請求用于用戶設(shè)備B 202b的用戶的發(fā)言人模型(例如,發(fā)言人模型B 206b)。例如,用戶設(shè)備A 可將用于用戶設(shè)備B 202b的設(shè)備識別符或用于用戶B的識別符作為對發(fā)言人模型B 206b的請求的一部分發(fā)送到例如服務(wù)器204。用戶設(shè)備A 202a將發(fā)言人模型B 206b作為冒名頂替者發(fā)言人模型210a中的一個存儲在存儲器中并且發(fā)言人驗證模塊208a針對冒名頂替者發(fā)言人模型210a中的每一個生成分?jǐn)?shù)。
冒名頂替者發(fā)言人模型210a可包括用于可處于用戶設(shè)備A 202a的物理位置附近的物理區(qū)域(例如,同一房間、走廊或者人行道或道路的一部分等等)中的其他用戶的發(fā)言人模型。冒名頂替者發(fā)言人模型可包括用于頻繁地處于與用戶A或用戶設(shè)備A 202a相同的物理區(qū)域中的用戶(例如,利用歷史數(shù)據(jù)進(jìn)行確定)的發(fā)言人模型。例如,用戶設(shè)備A 202a可確定另一用戶設(shè)備(例如,用戶設(shè)備C)每個工作日約四個小時處于與用戶設(shè)備A 202a相同的物理區(qū)域中,以及該每日四個小時的持續(xù)時間大于每日三個小時的門限持續(xù)時間(例如,特定于工作日,平均每日持續(xù)時間等),以及用于用戶設(shè)備C的用戶C的發(fā)言人模型C應(yīng)當(dāng)被存儲在冒名頂替者發(fā)言人模型210a中,例如,直到用戶A請求從冒名頂替者發(fā)言人模型210a中移除發(fā)言人模型C或?qū)τ谟脩粼O(shè)備C的每日持續(xù)時間不再滿足門限持續(xù)時間。僅舉幾個例子,頻率可為具體值,例如一天四個小時,或者為百分比,例如用戶設(shè)備A 202檢測到特定其他用戶設(shè)備的時間的百分之五或由用戶設(shè)備A 202檢測為特定的其他用戶設(shè)備的其他用戶設(shè)備的總數(shù)量的百分之十。
在一些示例中,用戶A可識別用戶設(shè)備A 202a應(yīng)當(dāng)將其包括在冒名頂替者發(fā)言人模型210a中的一個或多個發(fā)言人模型。例如,用戶設(shè)備A 202a可接收在用戶設(shè)備A 202a上為用戶A的家庭成員或朋友訓(xùn)練另一發(fā)言人模型的輸入。所述輸入可例如指示該另一發(fā)言人模型應(yīng)當(dāng)為冒名頂替者發(fā)言人模型,并且是用于不是用戶設(shè)備A 202a的用戶的、用戶A之外的用戶的發(fā)言人模型。該另一發(fā)言人模型可用于經(jīng)常處于用戶設(shè)備A 202a周圍的物理區(qū)域中的另一用戶(例如,用戶A的孩子),以減少或消除由用戶設(shè)備A 202a響應(yīng)于該另一用戶說出的話語而執(zhí)行的動作,除非用戶設(shè)備A 202a另有編程。
例如,當(dāng)發(fā)言人驗證模塊208a利用發(fā)言人模型A 206a生成第一分?jǐn)?shù)以及針對冒名頂替者發(fā)言人模型210a中的每一個生成相應(yīng)的第二分?jǐn)?shù)時,發(fā)言人驗證模塊208a比較所述分?jǐn)?shù)以確定最高分?jǐn)?shù)。當(dāng)最高分?jǐn)?shù)是利用發(fā)言人模型A 206a生成的時,發(fā)言人驗證模塊208a確定用戶A說出特定話語并且用戶設(shè)備A 202a可采取適當(dāng)?shù)膭幼鳎?,語音識別模塊212a可分析特定話語以識別包括在該特定話語中的命令。
在一個示例中,冒名頂替者發(fā)言人模型中的一個可以用于用戶A的氏族成員,例如,當(dāng)氏族成員中的兩個具有相似的話音時。發(fā)言人驗證模塊208a可通過利用相應(yīng)的發(fā)言人模型分析兄弟中的一個說出的話語來生成對于用戶A的第一分?jǐn)?shù)和對于其兄弟的第二分?jǐn)?shù)。發(fā)言人驗證模塊208a比較這兩個分?jǐn)?shù)以確定哪個分?jǐn)?shù)更大,所述兩個分?jǐn)?shù)中的每一個都可大于門限分?jǐn)?shù)并且單個都將要不然觸發(fā)用戶設(shè)備A 202a的動作(例如,由于發(fā)言人模型的相似性)。當(dāng)對于用戶A的第一分?jǐn)?shù)大于第二分?jǐn)?shù)時,用戶設(shè)備A 202例如基于所述話語執(zhí)行動作,并且可部分地利用語音識別模塊212a來確定所述動作。當(dāng)對于用戶A的兄弟的第二分?jǐn)?shù)大于第一分?jǐn)?shù)時,用戶設(shè)備A 202例如不采取進(jìn)一步動作,并且響應(yīng)于所述特定話語不執(zhí)行動作。
冒名頂替者發(fā)言人模型210a中的一些可以在一天中的特定時間、特定幾天期間,在特定位置,或在這些中的兩個或更多個的組合被利用。例如,當(dāng)用戶設(shè)備A 202a在用戶A的家庭成員的房子里時,用戶設(shè)備A 202a例如可對于生活在家庭成員的房子內(nèi)的人使用冒名頂替者發(fā)言人模型,以及除非檢測到這些人中的一個的協(xié)同定位用戶設(shè)備,否則不使用這些冒名頂替者發(fā)言人模型。
在一些示例中,用戶設(shè)備A-B 202a-b可利用存儲在存儲器中的設(shè)置214a-b來確定相應(yīng)的發(fā)言人模型或利用相應(yīng)的發(fā)言人模型生成的分?jǐn)?shù)是否可以被提供(例如,利用無線通信信道216,例如利用近場通信創(chuàng)建的信道)到其他用戶設(shè)備。例如,用戶設(shè)備A 202a可接收特定的話語,確定用戶設(shè)備B 202b處于用戶設(shè)備A 202a附近的物理區(qū)域中,并且從用戶設(shè)備B 202b請求發(fā)言人模型,例如,在不知道正在被請求的特定發(fā)言人模型的情況下請求發(fā)言人模型B 206b。用戶設(shè)備B 202b接收請求、分析設(shè)置B 214b以確定是否可以與另一設(shè)備或特定的用戶設(shè)備A 202a共享發(fā)言人模型B 206b,另外,響應(yīng)于確定用戶設(shè)備B 202b可共享發(fā)言人模型B 206b,設(shè)備B 202b利用無線通信信道216將發(fā)言人模型B 206b的副本發(fā)送到用戶設(shè)備A 202a。
例如,在當(dāng)多于一個人可操作單個用戶設(shè)備時的示例中,用戶設(shè)備A 202a可針對用戶設(shè)備B 202b的用戶B或用戶設(shè)備B 202b的所有用戶請求發(fā)言人模型。在當(dāng)多于一個人操作用戶設(shè)備A 202a時的示例中,發(fā)言人模型A 206b可包括多個發(fā)言人模型。在這些示例中,發(fā)言人驗證模塊208a可針對用戶設(shè)備A 202a的用戶中的每一個生成分?jǐn)?shù),將這些分?jǐn)?shù)與利用冒名頂替者發(fā)言人模型210a生成的其他分?jǐn)?shù)進(jìn)行比較,并且確定最高分?jǐn)?shù)。當(dāng)最高分?jǐn)?shù)是對于用戶設(shè)備A 202a的用戶中的一個時,用戶設(shè)備A 202a可執(zhí)行適當(dāng)?shù)膭幼鳎?,至少部分利用語音識別模塊212a確定的動作。
對是否要執(zhí)行動作的確定可以利用特定類型的動作、用戶設(shè)備A 202a的具體用戶或這兩者來進(jìn)行。例如,第一用戶A可具有發(fā)起用戶設(shè)備A 202a上任何應(yīng)用的許可,而第二用戶B可具有僅發(fā)起用戶設(shè)備A 202a上的教育應(yīng)用的許可。
在一些實現(xiàn)方式中,發(fā)言人模型中的一個或多個代替存儲在用戶設(shè)備A 202a-b上或者除了存儲在用戶設(shè)備A 202a-b上被存儲在服務(wù)器204上。例如,服務(wù)器204可存儲用于用戶設(shè)備A-B 202a-b的用戶A-B的發(fā)言人模型218。在這些示例中,用戶設(shè)備A 202a或用戶設(shè)備B 202b可接收對話語進(jìn)行編碼的音頻信號并且將音頻信號或音頻信號的一部分(例如,對音頻信號的一部分的表示)提供給服務(wù)器204。服務(wù)器204接收用戶設(shè)備、發(fā)言人模型或用戶設(shè)備的用戶的識別符,并且例如利用發(fā)言人識別符220確定發(fā)言人模型218中的哪一個與接收的識別符對應(yīng)。
在一些示例中,服務(wù)器204接收在分析音頻信號的一部分時除了用戶設(shè)備的發(fā)言人模型之外將會被利用的其他發(fā)言人模型的識別符。例如,當(dāng)用戶設(shè)備A 202a確定用戶設(shè)備B 202b物理上位于用戶設(shè)備A 202a的物理位置附近的區(qū)域中時,服務(wù)器204可利用發(fā)言人驗證請求從用戶設(shè)備A 202a接收音頻信號和用于用戶設(shè)備A-B 202a-b的識別符。
服務(wù)器204可以例如與音頻信號一起或分開地從用戶設(shè)備接收位置信息,并且利用該位置信息、例如利用其他用戶設(shè)備的位置信息來確定向服務(wù)器204提供過音頻信號的物理上位于所述用戶設(shè)備的物理位置附近的區(qū)域中的其他用戶設(shè)備。服務(wù)器204隨后可為所確定的其他設(shè)備識別其他發(fā)言人模型218。服務(wù)器204可以在于服務(wù)器204上生成分?jǐn)?shù)時或在將發(fā)言人模型提供給用戶設(shè)備A-B 202a-b時利用所識別的其他發(fā)言人模型。
服務(wù)器204上的發(fā)言人驗證模塊222利用來自給服務(wù)器204提供過音頻信號的用戶設(shè)備和所確定的其他用戶設(shè)備的所有發(fā)言人模型來生成相應(yīng)的分?jǐn)?shù),相應(yīng)的分?jǐn)?shù)中的每一個都表示相應(yīng)的人說出了編碼在音頻信號中的特定話語的可能性。發(fā)言人驗證模塊222可從包括在服務(wù)器204中的存儲器中檢索發(fā)言人模型。發(fā)言人驗證模塊222可從相應(yīng)的用戶設(shè)備接收發(fā)言人模型。服務(wù)器204或發(fā)言人驗證模塊222確定最高分?jǐn)?shù)并且向相應(yīng)的用戶設(shè)備提供指示該用戶設(shè)備的用戶最有可能說出了該特定話語的消息。服務(wù)器204可向其他用戶設(shè)備提供指示對應(yīng)的其他用戶可能沒有說過所述話語的消息。
在一些示例中,特定的用戶設(shè)備可給服務(wù)器204提供多個發(fā)言人識別符,例如,一個識別符用于特定的用戶設(shè)備的用戶中的每一個,一個識別符用于與該特定的用戶設(shè)備關(guān)聯(lián)的冒名頂替者發(fā)言人模型中的每一個,或這兩者。所述特定的用戶設(shè)備可包括指示用于發(fā)言人識別符中的每一個的模型的類型的數(shù)據(jù),例如用戶或冒名頂替者。發(fā)言人驗證模塊222可利用與接收的發(fā)言人識別符對應(yīng)的所有發(fā)言人模型218來分析音頻信號并且確定要使用哪個發(fā)言人模型來生成最高分?jǐn)?shù)。當(dāng)利用用于特定的用戶設(shè)備的用戶中的一個的模型生成了最高分?jǐn)?shù)時,服務(wù)器204給該特定的用戶設(shè)備提供指示該特定的用戶設(shè)備的用戶最有可能說出了所述特定話語的消息。所述消息可包括用于生成所述最高分?jǐn)?shù)的特定的發(fā)言人模型的發(fā)言人識別符。
在一些實現(xiàn)方式中,較低的數(shù)值可表示與較高的數(shù)值相比特定的用戶說出過話語的更大可能性。例如,較低的數(shù)值的可為比較高的數(shù)值更高的分?jǐn)?shù)。
在一些示例中,當(dāng)用戶設(shè)備具有多個用戶時,用戶設(shè)備或服務(wù)器204可確定用于用戶設(shè)備的當(dāng)前用戶的特定的發(fā)言人模型。例如,用戶設(shè)備可將用于當(dāng)前用戶的發(fā)言人標(biāo)識符提供給服務(wù)器204并且指示用于用戶設(shè)備的其他用戶的所有其他發(fā)言人識別符是用于存儲在服務(wù)器204上的冒名頂替者發(fā)言人模型的。在一些示例中,用戶設(shè)備利用用于當(dāng)前用戶的發(fā)言人模型來確定是否響應(yīng)于對音頻信號的接收執(zhí)行動作并且使用用于用戶設(shè)備的其他用戶的發(fā)言人模型作為冒名頂替者發(fā)言人模型。用戶設(shè)備可利用任何適當(dāng)?shù)姆椒▉泶_定用戶設(shè)備的當(dāng)前用戶,例如利用密碼、用戶名或這兩者來解鎖用戶設(shè)備和確定當(dāng)前用戶。
在一些實現(xiàn)方式中,當(dāng)分?jǐn)?shù)被針對音頻信號利用冒名頂替者發(fā)言人模型或從另一用戶設(shè)備接收的模型生成并且所述分?jǐn)?shù)大于或等于利用用于特定用戶設(shè)備的用戶的發(fā)言人模型生成的分?jǐn)?shù)時,該特定用戶設(shè)備響應(yīng)于對音頻信號的接收而不執(zhí)行動作。在這些實現(xiàn)方式中,當(dāng)兩個分?jǐn)?shù)相同時,響應(yīng)于對音頻信號的接收,用戶設(shè)備都不執(zhí)行動作。在其他實現(xiàn)方式中,當(dāng)對于不同用戶設(shè)備的兩個用戶的兩個分?jǐn)?shù)相同,并且兩個分?jǐn)?shù)都是最高分?jǐn)?shù)時,與這兩個分?jǐn)?shù)對應(yīng)的兩個用戶設(shè)備可都執(zhí)行動作。在當(dāng)對于單個用戶設(shè)備上的模型的兩個分?jǐn)?shù)都為相同最高分?jǐn)?shù)時的實現(xiàn)方式中,用戶設(shè)備可執(zhí)行動作或可不執(zhí)行動作。例如,當(dāng)所述兩個分?jǐn)?shù)中的每一個是對于用戶設(shè)備的不同用戶的時,用戶設(shè)備可執(zhí)行動作。當(dāng)分?jǐn)?shù)中的一個是對于用戶發(fā)言人模型的而分?jǐn)?shù)中的另一個是對于冒名頂替者發(fā)言人模型的時,用戶設(shè)備可不執(zhí)行動作。
在一些實現(xiàn)方式中,取決于檢測到的其他用戶設(shè)備的數(shù)量,用戶設(shè)備可調(diào)整門限值。例如在接收到音頻信號之后,當(dāng)沒有檢測到其他設(shè)備時門限值可以限制性較低,而當(dāng)檢測到其他用戶設(shè)備時門限值可以限制性較高。門限值可以基于檢測到的其他設(shè)備的數(shù)量變得限制性較高(例如,呈線性或指數(shù)),直到達(dá)到最大門限值。在一些示例中,例如利用針對相同話語利用不同的相似性模型生成的分?jǐn)?shù)的組合,可以對一個或多個分?jǐn)?shù)進(jìn)行歸一化。所述組合可為平均、和或積。
在一些實現(xiàn)方式中,用戶設(shè)備A-B 202a-b中的一個或多個可周期性地檢測處于相應(yīng)的用戶設(shè)備附近的物理區(qū)域中的其他用戶設(shè)備。例如,用戶設(shè)備B 202b可每五分鐘、每十分鐘或每三十分鐘確定另一用戶設(shè)備是否處于與用戶設(shè)備B 202b相同的房間中。在一些示例中,用戶設(shè)備B 202b在確定用戶設(shè)備B 202b已經(jīng)逗留在大致相同的區(qū)域持續(xù)預(yù)定的時間段(例如,用戶設(shè)備B 202b的用戶B持有用戶設(shè)備B 202b但是沒有走動或者用戶B逗留在單個房間中)之后可確定另一用戶設(shè)備是否位于距離用戶設(shè)備B 202b的預(yù)定距離內(nèi)。
用戶設(shè)備A-B 202a-b可包括個人計算機、移動通信設(shè)備(例如,智能電話或平板)和能夠通過網(wǎng)絡(luò)224發(fā)送和接收數(shù)據(jù)的其他設(shè)備,例如可穿戴設(shè)備,比如表或溫度控制器、電視和網(wǎng)絡(luò)連接的器具。網(wǎng)絡(luò)224(例如,局域網(wǎng)(WAN)、廣域網(wǎng)(WAN)、互聯(lián)網(wǎng)或其組合)連接用戶設(shè)備A-B 202a-b和服務(wù)器204。
圖3是用于確定話語是否是由用戶說出的過程300的流程圖。例如,過程300可以由發(fā)言人驗證系統(tǒng)200的用戶設(shè)備A 202a或服務(wù)器204使用。
所述過程接收對話語進(jìn)行編碼的音頻信號(302)。例如,用戶設(shè)備上的麥克風(fēng)接收音頻信號并且將音頻信號提供給第一用戶設(shè)備上的發(fā)言人驗證模塊或提供給服務(wù)器。
所述過程獲得用于第一用戶設(shè)備的第一用戶的第一發(fā)言人模型(304)。例如,發(fā)言人驗證系統(tǒng)確定對于第一用戶設(shè)備存在單個第一用戶并且獲得用于該第一用戶的第一發(fā)言人模型。在一些示例中,發(fā)言人驗證模塊確定對于第一用戶設(shè)備的當(dāng)前用戶,并且獲得用于該用戶的第一發(fā)言人模型,所述當(dāng)前用戶當(dāng)前登入到第一用戶設(shè)備或在第一用戶設(shè)備處于鎖定狀態(tài)時最近登入到過第一用戶設(shè)備。
在一些示例中,發(fā)言人驗證模塊確定對于第一用戶設(shè)備存在多個用戶并且獲得用于這些用戶中的一個的第一發(fā)言人模型。第一用戶設(shè)備然后可對于其他用戶重復(fù)過程300中的一個或多個步驟。例如,發(fā)言人驗證模塊可對于用戶中的每一個重復(fù)步驟304和306。
所述過程利用音頻信號的一部分和第一發(fā)言人模型生成指示話語是由第一用戶說出的可能性的第一分?jǐn)?shù)(306)。例如,第一設(shè)備的發(fā)言人驗證模塊利用音頻信號的全部和第一發(fā)言人模型來生成第一分?jǐn)?shù)。
所述音頻信號可包括對話語的發(fā)言人驗證模塊可將其對照第一發(fā)言人模型進(jìn)行比較的變換。例如,麥克風(fēng)可記錄話語并且將對話語的記錄提供到特征提取模塊,所述特征提取模塊生成發(fā)言人驗證模塊用于生成第一分?jǐn)?shù)的音頻信號。
在當(dāng)存在第一用戶設(shè)備的多個用戶時的實現(xiàn)方式中,發(fā)言人驗證模塊比較對于多個用戶中的每一個的分?jǐn)?shù)并且選擇最大的分?jǐn)?shù)。例如,第一用戶設(shè)備可具有一到五個發(fā)言人模型,每個發(fā)言人模型用于第一用戶設(shè)備的相應(yīng)的用戶。
發(fā)言人驗證模塊可將分?jǐn)?shù)(例如,最大的分?jǐn)?shù))與門限分?jǐn)?shù)值比較來確定所述分?jǐn)?shù)是否滿足門限分?jǐn)?shù)值。例如,發(fā)言人驗證模塊例如在門限分?jǐn)?shù)值是最低要求的分?jǐn)?shù)時確定最大的分?jǐn)?shù)是否高于門限分?jǐn)?shù)值或者在門限分?jǐn)?shù)值是最高要求的分?jǐn)?shù)時確定最大的分?jǐn)?shù)是否低于門限分?jǐn)?shù)值,并且最大的分?jǐn)?shù)具有對于第一用戶設(shè)備的用戶生成的分?jǐn)?shù)的最低數(shù)值。
如果最大的分?jǐn)?shù)滿足門限分?jǐn)?shù)值,則發(fā)言人驗證模塊或第一用戶設(shè)備上的另一模塊可針對在第一用戶設(shè)備上識別的冒名頂替者發(fā)言人模型(例如,存儲在第一用戶設(shè)備上或在服務(wù)器上)中的每一個生成分?jǐn)?shù),并且繼續(xù)過程300以執(zhí)行步驟308。如果最大的分?jǐn)?shù)不滿足門限分?jǐn)?shù)值,則用戶設(shè)備或服務(wù)器可停止執(zhí)行步驟300。當(dāng)?shù)谝挥脩粼O(shè)備或服務(wù)器停止執(zhí)行步驟300時,第一用戶設(shè)備或服務(wù)器可停止從其他用戶設(shè)備請求其他發(fā)言人模型或其他分?jǐn)?shù)。
第一用戶設(shè)備上的發(fā)言人驗證模塊或服務(wù)器上的類似模塊可針對冒名頂替者發(fā)言人模型中的每一個生成分?jǐn)?shù)直到生成了與針對第一用戶設(shè)備的用戶的最大分?jǐn)?shù)相同或高于此最大分?jǐn)?shù)的分?jǐn)?shù),此時,發(fā)言人驗證模塊停止執(zhí)行過程300。當(dāng)發(fā)言人驗證模塊確定沒有更多的冒名頂替者發(fā)言人模型或者針對第一用戶設(shè)備的用戶的最大分?jǐn)?shù)已經(jīng)與針對所有冒名頂替者發(fā)言人模型的分?jǐn)?shù)(例如利用步驟308和310確定的)(包括針對用于其他用戶設(shè)備的其他用戶的冒名頂替者發(fā)言人模型的分?jǐn)?shù))進(jìn)行了比較時,所述過程繼續(xù)步驟312。
例如,所述過程確定位于第一用戶設(shè)備的物理位置附近的物理區(qū)域中的一個或多個第二用戶設(shè)備(308)。第一用戶設(shè)備可利用近場通信來確定第二用戶設(shè)備。在當(dāng)發(fā)言人驗證模塊已經(jīng)確定了第一分?jǐn)?shù)時的示例中,第一用戶設(shè)備可將第一分?jǐn)?shù)提供給其他用戶設(shè)備,例如,用于由執(zhí)行類似過程的其他發(fā)言人驗證模塊使用。在一些示例中,第一用戶設(shè)備可將第一發(fā)言人模型、用于第一用戶設(shè)備的其他用戶的其他發(fā)言人模型或這兩者的組合提供給第二用戶設(shè)備中的至少一些。
在一些實現(xiàn)方式中,所述過程可確定與第一用戶設(shè)備協(xié)同定位但是處于不同物理位置中的第二用戶設(shè)備。例如,第一用戶設(shè)備在第一用戶設(shè)備和特定的第二用戶設(shè)備兩者都參與相同的電話或視頻會議時或在第一用戶設(shè)備和特定的第二用戶設(shè)備兩者都是參與相同的電話或視頻會議的靠近的設(shè)備時,可確定所述特定的第二用戶設(shè)備與第一用戶設(shè)備協(xié)同定位。所述設(shè)備可以位于相同的物理房間中或位于每個房間都包括有單獨的視頻會議設(shè)備的不同的房間中。第一設(shè)備或服務(wù)器可利用用于相應(yīng)用戶的日歷條目來確定設(shè)備是協(xié)同定位的,例如,當(dāng)用于兩個用戶的日歷條目是相同的并且指示所有的用戶在參加活動時。
所述過程針對第二用戶設(shè)備中的每一個的第二用戶獲得用于相應(yīng)的第二用戶的第二發(fā)言人模型或指示話語是由相應(yīng)的第二用戶說出的相應(yīng)的可能性的第二分?jǐn)?shù)(310)。例如,第二用戶設(shè)備上的其他發(fā)言人驗證模塊例如利用相應(yīng)的第二發(fā)言人模型和編碼相同話語或相同話語的一部分的其他音頻信號來生成針對第二用戶設(shè)備的用戶中的每一個的相應(yīng)的第二分?jǐn)?shù)。第一用戶設(shè)備從第二用戶設(shè)備接收第二分?jǐn)?shù)中的每一個并且可在單個消息或多個消息中從單個第二用戶設(shè)備接收多個第二分?jǐn)?shù)(當(dāng)該單個第二用戶設(shè)備具有多個用戶時)。
在一些示例中,服務(wù)器可生成第二分?jǐn)?shù)中的一些并且將這些第二分?jǐn)?shù)提供給第一用戶設(shè)備。服務(wù)器可為第一用戶設(shè)備的用戶生成一個第一分?jǐn)?shù)或多個第一分?jǐn)?shù)并且將第一分?jǐn)?shù)提供給第一用戶設(shè)備。服務(wù)器可對所有的分?jǐn)?shù)進(jìn)行比較并且向具有最大分?jǐn)?shù)的設(shè)備發(fā)送消息。服務(wù)器可將消息發(fā)送到不與最大分?jǐn)?shù)對應(yīng)的其他設(shè)備或可不將消息發(fā)送到不與最大的分?jǐn)?shù)對應(yīng)的其他設(shè)備。
所述過程確定所述話語是由第一用戶說出的(312)。例如,發(fā)言人驗證模塊將對于第一用戶設(shè)備的最大分?jǐn)?shù)與對于存儲在用戶設(shè)備上的冒名頂替者發(fā)言人模型的分?jǐn)?shù)或從第二用戶設(shè)備接收的第二分?jǐn)?shù)或這兩者進(jìn)行比較。例如當(dāng)發(fā)言人驗證模塊確定其他分?jǐn)?shù)中的一個大于或等于對于第一用戶設(shè)備的最大分?jǐn)?shù)時,發(fā)言人驗證模塊可停止將對于第一用戶設(shè)備的最大分?jǐn)?shù)與其他分?jǐn)?shù)進(jìn)行比較,并且可停止執(zhí)行過程300。
所述過程響應(yīng)于對所述話語是由第一用戶說出的確定執(zhí)行動作(314)。例如,語音識別模塊分析音頻信號并且確定編碼在音頻信號中的話語的文本表示。第一用戶設(shè)備利用所述文本表示來確定在話語中由第一用戶提供的命令并且響應(yīng)于該命令執(zhí)行動作。
在上述過程300中的步驟的順序僅是示意性的,并且可以以不同的順序來執(zhí)行確定話語是否是由第一用戶說出的。例如,用戶設(shè)備可在接收音頻信號(例如,執(zhí)行步驟302)之前確定位于該用戶設(shè)備的物理位置附近的物理區(qū)域中的第二用戶設(shè)備,例如,執(zhí)行步驟308。
在一些實現(xiàn)方式中,過程300可包括額外的步驟、更少的步驟,或者步驟中的一些可分成多個步驟。例如,第一用戶設(shè)備可確定第二用戶設(shè)備,確定用于第二用戶的任何發(fā)言人模型是否存儲在存儲器中(例如,作為冒名頂替者發(fā)言人模型),并且僅從相應(yīng)的第二用戶設(shè)備請求未存儲在所述存儲器中的第二發(fā)言人模型。在這些示例中,第一用戶設(shè)備可從存儲器移除例如針對其相應(yīng)的其他用戶設(shè)備不再處于第一用戶設(shè)備的物理位置附近的物理區(qū)域中的其他用戶的、且當(dāng)前未包括在第二用戶設(shè)備中的任何冒名頂替者發(fā)言人模型。
當(dāng)針對不再處于在第一用戶設(shè)備的物理位置附近的物理區(qū)域中的用戶設(shè)備從存儲器移除冒名頂替者發(fā)言人模型時,第一用戶設(shè)備可保留用于被標(biāo)記為不進(jìn)行移除的其他用戶的任何冒名頂替者發(fā)言人模型。例如,冒名頂替者發(fā)言人模型中的一個可用于第一用戶的經(jīng)常處于第一用戶設(shè)備的物理位置附近的物理區(qū)域中的朋友。第一用戶設(shè)備可為該朋友保留冒名頂替者發(fā)言人模型中的這一個,即便是在第一用戶設(shè)備未檢測到由該朋友操作的另一用戶設(shè)備的時候也如此。
在本說明書中描述的主題和功能性操作的實施例可以以數(shù)字電子電路、有形地體現(xiàn)的計算機軟件或固件、計算機軟件(包括在本說明書中公開的結(jié)構(gòu)以及其結(jié)構(gòu)等價物)或這些中的一個或多個的組合來實現(xiàn)。在本說明書中描述的主題的實施例可以實現(xiàn)為一個或多個計算機程序,即用于由數(shù)據(jù)處理裝置執(zhí)行或者控制數(shù)據(jù)處理裝置的操作的編碼在有形的非暫態(tài)程序載體上的計算機程序指令的一個或多個模塊。替代地或另外地,程序指令可以編碼在人工生成的傳播信號上,例如,機器生成的電、光或電磁信號,所述信號被生成來對信息編碼以傳輸?shù)胶线m的接收器裝置以供數(shù)據(jù)處理裝置執(zhí)行。計算機存儲介質(zhì)可為機器可讀存儲設(shè)備、機器可讀存儲基片、隨機或串行存取的存儲器設(shè)備或它們中的一個或多個的組合。
術(shù)語“數(shù)據(jù)處理裝置”指數(shù)據(jù)處理硬件并且涵蓋用于處理數(shù)據(jù)的所有種類的裝置、設(shè)備和機器,舉例來說包括可編程處理器、計算機或者多個處理器或計算機。所述裝置可為或可進(jìn)一步包括專用邏輯電路,例如FPGA(現(xiàn)場可編程門陣列)或ASIC(專用集成電路)。除了硬件之外,所述裝置還可以可選地包括創(chuàng)建用于計算機程序的執(zhí)行環(huán)境的代碼,例如,構(gòu)成處理器固件、協(xié)議棧、數(shù)據(jù)庫管理系統(tǒng)、操作系統(tǒng)或它們中的一個或多個的組合的代碼。
還可以被稱為或描述為程序、軟件、軟件應(yīng)用、模塊、軟件模塊、腳本或代碼的計算機程序可以以任何形式的編程語言來編寫,包括匯編型或解釋型語言或者聲明式語言或過程語言,并且其可以以任何形式部署,包括作為獨立程序或作為模塊、組件、子例程或適于用于計算環(huán)境中的其他單元。計算機程序可以(但不一定)與文件系統(tǒng)中的文件對應(yīng)。程序可以存儲在保持其他程序或數(shù)據(jù)的文件的一部分中(例如存儲在標(biāo)記語言文檔中的一個或多個腳本)、在專用于所討論的程序的單個文件中或在多個協(xié)調(diào)的文件中,例如存儲一個或多個模塊、子程序或代碼的部分的文件。計算機程序可以部署為在一個計算機上或在多個計算機上執(zhí)行,所述多個計算機位于一個地點或者分布在多個地點上并且通過通信網(wǎng)絡(luò)互連。
在本說明書中描述的過程和邏輯流可以由執(zhí)行一個或多個計算機程序的一個或多個可編程計算機來執(zhí)行,以通過對輸入數(shù)據(jù)進(jìn)行操作并生成輸出來執(zhí)行功能。還可以由專用邏輯電路執(zhí)行所述過程和邏輯流,并且裝置也可實現(xiàn)為專用邏輯電路,例如,F(xiàn)PGA(現(xiàn)場可編程門陣列)或ASIC(專用集成電路)。
適于執(zhí)行計算機程序的計算機舉例來說包括通用微處理器或?qū)S梦⑻幚砥骰蛘哌@兩者或任何其他種類的中央處理單元。一般而言,中央處理單元將從只讀存儲器或隨機存取存儲器或者這兩者接收指令和數(shù)據(jù)。計算機的基本元件是用于執(zhí)行或運行指令的中央處理單元以及用于存儲指令和數(shù)據(jù)的一個或多個存儲器設(shè)備。一般而言,計算機還將包括用于存儲數(shù)據(jù)的一個或多個大容量存儲設(shè)備(例如,磁盤、磁光盤或光盤),或者,計算機還將操作性地耦合為從所述大容量存儲設(shè)備接收數(shù)據(jù)或傳輸數(shù)據(jù)到所述大容量存儲設(shè)備,或者這兩種情況。然而,計算機無需具有這樣的設(shè)備。另外,計算機可以嵌入在另一設(shè)備中,所述另一設(shè)備僅列舉幾個:移動電話、個人數(shù)字助理(PDA)、移動音頻或視頻播放器、游戲控制臺、全球定位系統(tǒng)(GPS)接收器或便攜式存儲設(shè)備,例如通用串行總線(USB)閃存驅(qū)動器。
適于存儲計算機程序指令和數(shù)據(jù)的計算機可讀介質(zhì)包括所有形式的非易失性存儲器、介質(zhì)和存儲器設(shè)備,舉例來說包括半導(dǎo)體存儲器設(shè)備,例如,EPROM、EEPROM和閃存設(shè)備;磁盤,例如內(nèi)部硬盤或可拆卸盤;磁光盤;以及CD-ROM和DVD-ROM盤。處理器和存儲器可以通過專用邏輯電路補充,或者結(jié)合在專用邏輯電路中。
為了支持與用戶的交互,在本說明書中描述的主題的實施例可以實現(xiàn)在具有用于向用戶顯示信息的顯示設(shè)備(例如,CRT(陰極射線管)或LCD(液晶顯示)監(jiān)視器)以及鍵盤和指向設(shè)備(例如,鼠標(biāo)或軌跡球,通過其用戶可向計算機提供輸入)的計算機上。也可以利用其它種類的設(shè)備支持與用戶的交互;例如,提供給用戶的反饋可以是任何形式的知覺反饋,例如,視覺反饋、聽覺反饋或觸覺反饋;并且來自用戶的輸入可以以任何形式進(jìn)行接收,包括聲音、語音或觸覺輸入。另外,計算機可以通過將文檔發(fā)送到用戶使用的設(shè)備并且從該設(shè)備接收文檔來與用戶交互;例如,通過響應(yīng)于從網(wǎng)頁瀏覽器接收的請求將網(wǎng)頁發(fā)送到用戶的設(shè)備上的網(wǎng)頁瀏覽器。
在本說明書中描述的主題的實施例可以實現(xiàn)在計算系統(tǒng)中,該計算系統(tǒng)包括后端組件,例如作為數(shù)據(jù)服務(wù)器的后端組件,或包括中間件組件,例如應(yīng)用服務(wù)器,或包括前端組件,例如具有圖形用戶界面或網(wǎng)頁瀏覽器的客戶端計算機(用戶可通過該客戶端計算機與在本說明書中描述的主題的實現(xiàn)方式進(jìn)行交互),或者包括一個或多個這樣的后端、中間件或前端組件的任意組合。系統(tǒng)的組件可以通過任何形式的數(shù)字?jǐn)?shù)據(jù)通信(例如通信網(wǎng)絡(luò))或數(shù)字?jǐn)?shù)據(jù)通信的介質(zhì)而互連。通信網(wǎng)絡(luò)的示例包括局域網(wǎng)(LAN)和廣域網(wǎng)(WAN),例如互聯(lián)網(wǎng)。
計算系統(tǒng)可包括客戶端和服務(wù)器??蛻舳撕头?wù)器一般彼此遠(yuǎn)離并且典型地通過通信網(wǎng)絡(luò)來交互??蛻舳伺c服務(wù)器的關(guān)系由于運行在相應(yīng)的計算機上并相互具有客戶端-服務(wù)器關(guān)系的計算機程序而產(chǎn)生。在一些實施例中,服務(wù)器將數(shù)據(jù)(例如,HTML網(wǎng)頁)傳輸給用戶設(shè)備,例如用于將數(shù)據(jù)顯示給與用戶設(shè)備交互的用戶并且從該用戶接收用戶輸入,所述用戶設(shè)備充當(dāng)客戶端。在用戶設(shè)備處生成的數(shù)據(jù)(例如,用戶交互的結(jié)果)可以在服務(wù)器處從用戶設(shè)備接收到。
圖4是可用于實現(xiàn)在該文檔中描述的系統(tǒng)和方法的計算設(shè)備400、450的框圖,計算設(shè)備400、450作為客戶端或者一個服務(wù)器或多個服務(wù)器。計算設(shè)備400意在表示各種形式的數(shù)字計算機,例如膝上型計算機、桌面計算機、工作站、個人數(shù)字助理、服務(wù)器、刀片式服務(wù)器、主機(mainframe)和其他適當(dāng)?shù)挠嬎銠C。計算設(shè)備450意在表示各種形式的移動設(shè)備,例如個人數(shù)字助理、蜂窩電話、智能電話、智能手表、頭戴設(shè)備和其他類似的計算設(shè)備。本文示出的組件、其連接和關(guān)系以及其功能意圖僅為示例性的,而非意圖為限制在該文檔中描述和/或請求保護的發(fā)明的實現(xiàn)方式。
計算設(shè)備400包括處理器402、存儲器404、存儲設(shè)備406、連接到存儲器404和高速擴展端口410的高速接口408以及連接到低速總線414和存儲設(shè)備406的低速接口412。組件402、404、406、408、410和412中的每一個利用各種總線來互連,并且可以安裝在常見的主板上或在適當(dāng)?shù)臅r候以其他方式進(jìn)行安裝。處理器402可處理用于在計算設(shè)備400內(nèi)執(zhí)行的指令,包括存儲在存儲器404中或存儲設(shè)備406上以為外部輸入/輸出設(shè)備(例如,耦合到高速接口408的顯示器416)上的GUI顯示圖形信息的指令。在其他實現(xiàn)方式中,在適當(dāng)?shù)臅r候,可以與多個存儲器和多種類型的存儲器一起使用多個處理器和/或多個總線。另外,可以將多個計算設(shè)備400與提供必要操作部分的每個設(shè)備連接(例如,作為服務(wù)器陣列、一群刀片式服務(wù)器或多處理器系統(tǒng))。
存儲器404存儲計算設(shè)備400內(nèi)的信息。在一個實現(xiàn)方式中,存儲器404為計算機可讀介質(zhì)。在一個實現(xiàn)方式中,存儲器404為一個或多個易失性存儲器單元。在另一實現(xiàn)方式中,存儲器404為一個或多個非易失性存儲器單元。
存儲設(shè)備406能夠為計算設(shè)備400提供大容量存儲。在一個實現(xiàn)方式中,存儲設(shè)備406為計算機可讀介質(zhì)。在各種不同實現(xiàn)方式中,存儲設(shè)備406可為軟盤設(shè)備、硬盤設(shè)備、光盤設(shè)備或磁帶設(shè)備、閃存或其他類似的固態(tài)存儲器設(shè)備或設(shè)備的陣列,包括存儲區(qū)域網(wǎng)絡(luò)或其他配置中的設(shè)備。在一個實現(xiàn)方式中,計算機程序產(chǎn)品有形地體現(xiàn)為信息載體。計算機程序產(chǎn)品包含指令,所述指令在被執(zhí)行時執(zhí)行如上面所述的一種或多種方法。所述信息載體為計算機或機器可讀介質(zhì),例如存儲器404、存儲設(shè)備406或處理器402上的存儲器。
高速控制器408管理計算設(shè)備400的帶寬密集的操作,而低速管理器412管理帶寬密集性較低的操作。任務(wù)的這種分配僅是示例性的。在一個實現(xiàn)方式中,高速控制器408耦合到存儲器404、顯示器416(例如,通過圖形處理器或加速器)并且耦合到高速擴展端口410,高速擴展端口410可接受各種擴展卡(未示出)。在該實現(xiàn)方式中,低速控制器412耦合到存儲設(shè)備406和低速擴展端口414。可包括各種通信端口(例如,USB、藍(lán)牙、以太網(wǎng)、無線以太網(wǎng))的該低速擴展端口可耦合到一個或多個輸入/輸出設(shè)備,例如鍵盤、指向設(shè)備、掃描儀或例如通過網(wǎng)絡(luò)適配器耦合到聯(lián)網(wǎng)設(shè)備(例如交換機或路由器)。
計算設(shè)備400可以以多種不同形式來實現(xiàn),如圖中所示。例如,其可實現(xiàn)為標(biāo)準(zhǔn)服務(wù)器420或這樣的服務(wù)器的群組的幾倍。其還可實現(xiàn)為機架型服務(wù)器系統(tǒng)424的一部分。另外,其可實現(xiàn)在個人計算機(例如膝上型計算機422)中。替代地,來自計算設(shè)備400的組件可以與移動設(shè)備(例如設(shè)備450)中的其他組件(未示出)組合。每個這樣的設(shè)備可包括計算設(shè)備400、450中的一個或多個,并且整個系統(tǒng)可以由彼此通信的多個計算設(shè)備400、450組成。
在其他組件當(dāng)中,計算設(shè)備450尤其包括處理器452、存儲器464、輸入/輸出設(shè)備(例如顯示器454)、通信接口466和收發(fā)器468。設(shè)備450還可以提供有存儲設(shè)備,例如微驅(qū)動器或其他設(shè)備,以提供額外存儲。組件450、452、464、454、466和468中的每一個利用各種總線互連,并且所述組件中的若干個可以安裝在公共的主板上或在適當(dāng)?shù)臅r候以其他方式進(jìn)行安裝。
處理器452可處理用于在計算設(shè)備150內(nèi)執(zhí)行的指令,包括存儲在存儲器464中的指令。所述處理器還可包括單獨的模擬和數(shù)字處理器。所述處理器可提供例如用于設(shè)備450的其他組件的協(xié)調(diào)(例如,對用戶接口的控制)、設(shè)備450運行的應(yīng)用和設(shè)備150的無線通信。
處理器可通過控制接口458與用戶通信并且可與耦合到顯示器454的顯示接口456通信。顯示器454可為例如TFT LCD顯示器或OLED顯示器或者其他適當(dāng)?shù)娘@示器技術(shù)。顯示接口456可包括用于驅(qū)動顯示器454以將圖形和其他信息呈現(xiàn)給用戶的適當(dāng)電路??刂平涌?58可從用戶接收命令并且將其轉(zhuǎn)換用于提交給處理器452。另外,外部接口462可被設(shè)為與處理器452通信,以便使能設(shè)備450與其他設(shè)備的近區(qū)域通信。外部接口462可提供例如用于有線通信(例如,經(jīng)由塢接(docking)過程)或用于無線通信(例如,經(jīng)由藍(lán)牙或其他這樣的技術(shù))。
存儲器464存儲計算設(shè)備450內(nèi)的信息。在一個實現(xiàn)方式中,存儲器464為計算機可讀介質(zhì)。在一個實現(xiàn)方式中,存儲器464為一個或多個易失性存儲器單元。在另一實現(xiàn)方式中,存儲器464為一個或多個非易失性存儲器單元。擴展存儲器474還可以通過擴展接口472被提供并且連接到設(shè)備450,擴展接口472可包括例如SIMM卡接口。這樣的擴展存儲器474可為設(shè)備450提供額外的存儲空間,或還可為設(shè)備450存儲應(yīng)用或其他信息。具體地,擴展存儲器474可包括實現(xiàn)或補充上述過程的指令,并且還可以包括安全信息。因此,例如,擴展存儲器474可以被提供為用于設(shè)備450的安全模塊,并且可以編程有許可對設(shè)備450的安全使用的指令。另外,可以經(jīng)由SIMM卡提供安全應(yīng)用以及額外信息,例如以不可破解的方式將識別信息放置在SIMM卡上。
如上面所論述的,存儲器可包括例如閃存和/或MRAM存儲器。在一個實現(xiàn)方式中,計算機程序產(chǎn)品有形地體現(xiàn)為信息載體。計算機程序產(chǎn)品包含指令,所述指令在被執(zhí)行時執(zhí)行諸如上面所述的一種或多種方法。所述信息載體為計算機或機器可讀介質(zhì),例如存儲器464、擴展存儲器474或處理器452上的存儲器。
設(shè)備450可通過通信接口466進(jìn)行無線通信,通信接口466在需要的情況下可包括數(shù)字信號處理電路。通信接口466可支持在各種模式或協(xié)議下的通信,各種模式或協(xié)議例如GSM話音呼叫、SMS、EMS或MMS消息、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS等等。這樣的通信可例如通過射頻收發(fā)器468而發(fā)生。另外,短程通信可例如利用藍(lán)牙、WiFi或其他這樣的收發(fā)器(未示出)而發(fā)生。另外,GPS接收器模塊470可將額外的無線數(shù)據(jù)提供給設(shè)備450,所述額外的無線數(shù)據(jù)可由設(shè)備450上運行的應(yīng)用在適當(dāng)?shù)臅r候使用。
設(shè)備450還可以利用音頻編解碼器460可聽地進(jìn)行通信,音頻編解碼器460可從用戶接收說出的信息并且將其轉(zhuǎn)換成可利用的數(shù)字信息。音頻編解碼器460可同樣地為用戶生成可聽聲音,例如通過(例如設(shè)備450中聽筒的)揚聲器。這樣的聲音可包括來自話音電話呼叫的聲音,可包括被記錄的聲音(例如,話音消息、音樂文件等)并且還可以包括由操作在設(shè)備450上的應(yīng)用生成的聲音。
計算設(shè)備450可以以多種不同的形式實現(xiàn),如圖中所示。例如,其可以被實現(xiàn)為蜂窩電話480。其也可被實現(xiàn)為智能電話482、個人數(shù)字助理或其他類似的移動設(shè)備的一部分。
盡管本說明書包含了許多具體實現(xiàn)方式的細(xì)節(jié),但是這些不應(yīng)當(dāng)被解讀為對被請求保護的范圍的限制,而是應(yīng)當(dāng)被解讀為可特定于具體實施例的特征的描述。在本說明書中在分開的實施例的上下文中描述的某些特征也可以在單個實施例中組合地實現(xiàn)。相反,在單個實施例的上下文中描述的各種特征也可以分開地或以任何合適的子組合在多個實施例中實現(xiàn)。另外,盡管特征可以在上面描述為以某些組合起作用并且即便起初也是這樣請求保護的,但是來自請求保護的組合的一個或多個特征在一些情況下可以從該組合摘除,并且請求保護的組合可針對子組合或子組合的變型。
類似地,盡管在附圖中以特定順序描繪了操作,但是這不應(yīng)理解為,為了實現(xiàn)合意的結(jié)果要求這樣的操作以示出的特定順序或以相繼的順序來執(zhí)行,或者所有示意的操作都被執(zhí)行。在某些情形下,多任務(wù)和并行處理會有利。此外,在上述實施例中各種系統(tǒng)模塊和組件的分離不應(yīng)當(dāng)理解為在所有實施例中都要求這樣的分離,并且應(yīng)當(dāng)要理解所描述的程序組件和系統(tǒng)一般而言可集成在一起成為單個軟件產(chǎn)品或封裝到多個軟件產(chǎn)品中。
在其中本文討論的系統(tǒng)收集關(guān)于用戶的信息或可利用個人信息的情形中,可以給用戶提供控制程序或特征是否收集用戶信息(例如,發(fā)言人模型、用戶的偏好或用戶的當(dāng)前位置)或控制是否和/或如何從內(nèi)容服務(wù)器接收內(nèi)容的機會。另外,某些數(shù)據(jù)可以在將其存儲或使用之前以一個或多個方式進(jìn)行處理,以使得移除個人可識別的信息。例如,可以處理用戶的身份以使得不能夠確定對于該用戶的個人可識別的信息,或者用戶的地理位置可以被籠統(tǒng)化獲得位置信息的地方,例如,籠統(tǒng)化到市、郵編代碼或州級,以使得不能夠確定用戶的具體位置。因此,用戶可具有對如何收集關(guān)于該用戶的信息或如何由內(nèi)容服務(wù)器使用信息的控制。
已經(jīng)描述了主題的特定實施例。其他實施例在隨附的權(quán)利要求的范圍內(nèi)。例如,在權(quán)利要求中記載的動作可以以不同的順序執(zhí)行但是仍然實現(xiàn)合意的結(jié)果。作為一個示例,為了實現(xiàn)合意的結(jié)果,在附圖中描繪的過程未必要求示出的特定順序或相繼的順序。在一些情況下,多任務(wù)和并行處理會有利。例如,執(zhí)行相似性分?jǐn)?shù)計算的模塊(例如,發(fā)言人驗證模塊的一部分)可以以硬件實現(xiàn),例如直接在數(shù)字信號處理(DSP)單元上實現(xiàn)。