本專利申請要求于2014年8月28日提交的標(biāo)題為“AUTOMATIC SPEECH RECOGNITION BASED ON USER FEEDBACK”的美國臨時(shí)專利申請62/043,041和于2015年1月7日提交的標(biāo)題為“AUTOMATIC SPEECH RECOGNITION BASED ON USER FEEDBACK”的美國非臨時(shí)專利申請14/591,754的優(yōu)先權(quán),這兩個(gè)美國專利申請全文以引用方式并入本文以用于所有目的。
技術(shù)領(lǐng)域
本文整體涉及自動語音識別,更具體地涉及基于用戶反饋來改善自動語音識別。
背景技術(shù):
自動語音識別(ASR)系統(tǒng)可能遭遇轉(zhuǎn)錄錯(cuò)誤。這些錯(cuò)誤的出現(xiàn)可能是由于多種原因,諸如混亂的語音輸入、背景嘈雜的語音輸入、或者包含發(fā)音與其它字詞類似的字詞的語音輸入。另外,在實(shí)時(shí)ASR系統(tǒng)中,為了實(shí)現(xiàn)可接受的遲延時(shí)間,可對準(zhǔn)確性作出妥協(xié)。例如,可實(shí)現(xiàn)較小詞匯模型或穩(wěn)健性較低的語音識別引擎。這些妥協(xié)可能促成轉(zhuǎn)錄錯(cuò)誤。常規(guī)地,ASR系統(tǒng)所接收的每個(gè)語音輸入可進(jìn)行相同地處理。然而,相同地處理所有語音輸入可能導(dǎo)致類似的轉(zhuǎn)錄錯(cuò)誤反復(fù)地重新出現(xiàn),這可能導(dǎo)致用戶方灰心沮喪以及差的用戶體驗(yàn)。
技術(shù)實(shí)現(xiàn)要素:
本文提供了用于在數(shù)字助理中處理語音的系統(tǒng)和過程。在示例性過程中,可從用戶接收第一語音輸入??衫玫谝蛔詣诱Z音識別系統(tǒng)處理第一語音輸入來生成第一識別結(jié)果??山邮罩甘镜谝蛔R別結(jié)果中的潛在錯(cuò)誤的輸入。該輸入可用于改善第一識別結(jié)果。
在一些實(shí)施例中,該輸入可包括第二語音輸入,該第二語音輸入是第一語音輸入的重復(fù)??衫玫诙詣诱Z音識別系統(tǒng)處理第二語音輸入來生成第二識別結(jié)果。
在一些實(shí)施例中,可提示用戶重復(fù)第一語音輸入的至少一部分。可從用戶輸入接收第三語音輸入,該第三語音輸入是第一語音輸入的重復(fù)??衫玫诙詣诱Z音識別系統(tǒng)處理第三語音輸入來生成第三識別結(jié)果。
在一些實(shí)施例中,可利用第二自動語音識別系統(tǒng)處理第一語音輸入來生成第四識別結(jié)果。
附圖說明
圖1示出了根據(jù)各種實(shí)施例的用于實(shí)施數(shù)字助理的系統(tǒng)和環(huán)境。
圖2示出了根據(jù)各種實(shí)施例的實(shí)施數(shù)字助理的客戶端側(cè)部分的用戶設(shè)備。
圖3A示出了根據(jù)各種實(shí)施例的數(shù)字助理系統(tǒng)或其服務(wù)器部分。
圖3B示出了根據(jù)各種實(shí)施例的圖3A所示數(shù)字助理的功能。
圖4A-圖4B示出了根據(jù)各種實(shí)施例的用于處理語音的過程。
圖5示出了根據(jù)各種示例的電子設(shè)備的功能框圖。
具體實(shí)施方式
在以下對示例的描述中將引用附圖,在附圖中以例示的方式示出了可被實(shí)施的特定示例。應(yīng)當(dāng)理解,在不脫離各個(gè)示例的范圍的情況下,可使用其他示例并且可作出結(jié)構(gòu)性變更。
如上所述,來自ASR系統(tǒng)的類似錯(cuò)誤的反復(fù)重新出現(xiàn)可導(dǎo)致差的用戶體驗(yàn)。在本文所述的各種實(shí)施例中,提供了用于基于用戶反饋來改善語音處理的系統(tǒng)和過程。在一些實(shí)施例中,語音處理可在數(shù)字助理中執(zhí)行。在一個(gè)示例性過程中,可從用戶接收第一語音輸入??衫玫谝籄SR系統(tǒng)處理第一語音輸入來生成第一識別結(jié)果。可接收指示第一識別結(jié)果中的潛在錯(cuò)誤的輸入。該輸入可用于生成改善的識別結(jié)果,由此降低類似錯(cuò)誤重新出現(xiàn)的概率。
在一些實(shí)施例中,該輸入可包括第二語音輸入,該第二語音輸入是第一語音輸入的重復(fù)。具體地,用戶可重復(fù)第一語音輸入來指示第一識別結(jié)果中的潛在錯(cuò)誤??衫玫诙嗀SR系統(tǒng)處理第二語音輸入來生成第二識別結(jié)果。在其他實(shí)施例中,可提示用戶重復(fù)第一語音輸入的至少一部分??蓮挠脩糨斎虢邮盏谌Z音輸入,該第三語音輸入是第一語音輸入的重復(fù)??衫玫诙嗀SR系統(tǒng)處理第三語音輸入來生成第三識別結(jié)果。在另外的實(shí)施例中,可利用第二ASR系統(tǒng)處理第一語音輸入來生成第四識別結(jié)果。在一些實(shí)施例中,第二ASR系統(tǒng)可比第一ASR系統(tǒng)準(zhǔn)確。因此,第二識別結(jié)果、第三識別結(jié)果和第四識別結(jié)果可各自都比第一識別結(jié)果準(zhǔn)確。
另外,在一些實(shí)施例中,可通過利用第一識別結(jié)果和利用第二ASR系統(tǒng)所生成的識別結(jié)果(例如第二識別結(jié)果、第三識別結(jié)果或第四識別結(jié)果)執(zhí)行ASR系統(tǒng)組合來確定組合結(jié)果。組合結(jié)果可比第一識別結(jié)果準(zhǔn)確。
與更準(zhǔn)確的第二ASR系統(tǒng)和與執(zhí)行ASR系統(tǒng)組合相關(guān)聯(lián)的更長的遲延和計(jì)算時(shí)間可以是由于降低類似錯(cuò)誤重新出現(xiàn)的概率而作出的可接受的妥協(xié)。具體地,在發(fā)現(xiàn)與第一識別結(jié)果相關(guān)聯(lián)的錯(cuò)誤之后,用戶可能偏向于等待更長時(shí)間以獲得后續(xù)正確結(jié)果,而不是在較短時(shí)間段內(nèi)獲得相同錯(cuò)誤。因此可實(shí)施本文所公開的系統(tǒng)和過程以降低在語音處理期間類似錯(cuò)誤重新出現(xiàn)的概率,由此改善用戶體驗(yàn)。
1.系統(tǒng)和環(huán)境
圖1示出了根據(jù)各種實(shí)施例的系統(tǒng)100的框圖。在一些實(shí)施例中,系統(tǒng)100可實(shí)施數(shù)字助理。術(shù)語“數(shù)字助理”、“虛擬助理”、“智能自動化助理”或“自動數(shù)字助理”可以是指解譯口頭和/或文本形式的自然語言輸入以推斷用戶意圖并基于推斷出的用戶意圖來執(zhí)行動作的任何信息處理系統(tǒng)。例如,為了按照推斷出的用戶意圖行事,系統(tǒng)可執(zhí)行以下中的一個(gè)或多個(gè):利用被設(shè)計(jì)用于實(shí)現(xiàn)所推斷出的用戶意圖的步驟和參數(shù)來識別任務(wù)流,將來自推斷出的用戶意圖的具體要求輸入到任務(wù)流中;通過調(diào)用程序、方法、服務(wù)、API等來執(zhí)行任務(wù)流;以及生成對用戶的聽覺(例如,語音)和/或視覺形式的輸出響應(yīng)。
具體地,數(shù)字助理可以能夠接受至少部分地為自然語言命令、請求、聲明、講述和/或詢問的形式的用戶請求。通常,用戶請求可以要么尋求數(shù)字助理作出信息性回答,要么尋求數(shù)字助理執(zhí)行任務(wù)。針對用戶請求的令人滿意的響應(yīng)可以是提供所請求的信息性回答、執(zhí)行所請求的任務(wù)、或這兩者的組合。例如,用戶可向數(shù)字助理提出諸如“我現(xiàn)在在哪里?”之類的問題?;谟脩舻漠?dāng)前位置,數(shù)字助理可能回答“你在中央公園西門附近?!庇脩暨€可請求執(zhí)行任務(wù),例如“請邀請我的朋友下周來參加我女朋友的生日聚會。”作為響應(yīng),數(shù)字助理可通過講出“好的,馬上”來確認(rèn)請求,并然后代表用戶將合適的日歷邀請發(fā)送到用戶的電子通訊錄中列出的用戶朋友中的每個(gè)朋友。在執(zhí)行所請求的任務(wù)期間,數(shù)字助理有時(shí)可在涉及很長時(shí)間段上多次信息交換的持續(xù)對話中與用戶進(jìn)行交互。存在與數(shù)字助理進(jìn)行交互以請求信息或執(zhí)行各種任務(wù)的許多其他方法。除提供言語響應(yīng)并采取經(jīng)編程的動作之外,數(shù)字助理還可提供其他視覺或聽覺形式的響應(yīng),例如作為文本、警報(bào)、音樂、視頻、動畫等。
數(shù)字助理的示例在提交于2011年1月10日的名為“Intelligent Automated Assistant”的申請人的美國實(shí)用新型專利申請序列號12/987,982中有所描述,其全部公開內(nèi)容以引用方式并入本文。
如圖1中所示,在一些實(shí)施例中,可根據(jù)客戶端-服務(wù)器模型來實(shí)施數(shù)字助理。數(shù)字助理可包括在用戶設(shè)備104a、104b上執(zhí)行的客戶端側(cè)部分102a、102b(后文稱作“DA客戶端102”)和在服務(wù)器系統(tǒng)108上執(zhí)行的服務(wù)器側(cè)部分106(后文稱作“DA服務(wù)器106”)。DA客戶端102可通過一個(gè)或多個(gè)網(wǎng)絡(luò)110與DA服務(wù)器106通信。DA客戶端102可提供客戶端側(cè)功能諸如面向用戶的輸入和輸出處理,并且與DA服務(wù)器106通信。DA服務(wù)器106可為任意數(shù)量的DA客戶端102提供服務(wù)器側(cè)功能,該任意數(shù)量的DA客戶端102各自位于相應(yīng)的用戶設(shè)備104上。
在一些實(shí)施例中,DA服務(wù)器106可包括面向客戶端的I/O接口112、一個(gè)或多個(gè)處理模塊114、數(shù)據(jù)與模型116、以及到外部服務(wù)的I/O接口118。面向客戶端的I/O接口可促成數(shù)字助理服務(wù)器106的面向客戶端的輸入和輸出處理。一個(gè)或多個(gè)處理模塊114可利用數(shù)據(jù)與模型116來處理語音輸入并基于自然語音輸入來確定用戶意圖。另外,一個(gè)或多個(gè)處理模塊114基于推斷出的用戶意圖進(jìn)行任務(wù)執(zhí)行。在一些實(shí)施例中,DA服務(wù)器106可通過一個(gè)或多個(gè)網(wǎng)絡(luò)110與外部服務(wù)120通信來完成任務(wù)或采集信息。到外部服務(wù)的I/O接口118可促成此類通信。
用戶設(shè)備104的示例可包括但不限于手持式計(jì)算機(jī)、個(gè)人數(shù)字助理(PDA)、平板電腦、膝上型計(jì)算機(jī)、臺式計(jì)算機(jī)、蜂窩電話、智能電話、增強(qiáng)型通用分組無線電服務(wù)(EGPRS)移動電話、媒體播放器、導(dǎo)航設(shè)備、游戲控制器、電視機(jī)、電視機(jī)頂盒、遙控器、可穿戴電子設(shè)備、或者這些數(shù)據(jù)處理設(shè)備中任意兩種或更多種的組合或其他數(shù)據(jù)處理設(shè)備。參照圖2中示出的示例性用戶設(shè)備104提供有關(guān)用戶設(shè)備104的更多細(xì)節(jié)。
一個(gè)或多個(gè)通信網(wǎng)絡(luò)110的示例可包括局域網(wǎng)(“LAN”)和廣域網(wǎng)(“WAN”),例如互聯(lián)網(wǎng)。一個(gè)或多個(gè)通信網(wǎng)絡(luò)110可使用任何已知的網(wǎng)絡(luò)協(xié)議來實(shí)施,包括各種有線或無線協(xié)議,諸如例如以太網(wǎng)、通用串行總線(USB)、火線(FIREWIRE)、全球移動通信系統(tǒng)(GSM)、增強(qiáng)型數(shù)據(jù)GSM環(huán)境(EDGE)、碼分多址(CDMA)、時(shí)分多址(TDMA)、藍(lán)牙、Wi-Fi、互聯(lián)網(wǎng)協(xié)議語音技術(shù)(VoIP)、Wi-MAX、或任何其他合適的通信協(xié)議。
可在一個(gè)或多個(gè)獨(dú)立式數(shù)據(jù)處理裝置或計(jì)算機(jī)分布式網(wǎng)絡(luò)上實(shí)施服務(wù)器系統(tǒng)108。在一些實(shí)施例中,服務(wù)器系統(tǒng)108還可采用第三方服務(wù)提供方(例如,第三方云服務(wù)提供方)的各種虛擬設(shè)備和/或服務(wù)來提供服務(wù)器系統(tǒng)108的下層計(jì)算資源和/或基礎(chǔ)結(jié)構(gòu)資源。
盡管圖1中所示的數(shù)字助理可包括客戶端側(cè)部分(例如,DA客戶端102)和服務(wù)器側(cè)部分(例如,DA服務(wù)器106)兩者,但在一些實(shí)施例中,數(shù)字助理的功能可被實(shí)現(xiàn)為安裝在用戶設(shè)備上的獨(dú)立式應(yīng)用程序。此外,數(shù)字助理的客戶端部分與服務(wù)器部分之間的功能劃分在不同的具體實(shí)施中可以不同。例如,在一些實(shí)施例中,DA客戶端可為僅提供面向用戶的輸入和輸出處理功能,并且將數(shù)字助理的所有其他功能委派給后端服務(wù)器的瘦客戶端。
2.用戶設(shè)備
圖2示出了根據(jù)各種實(shí)施例的用戶設(shè)備104的框圖。用戶設(shè)備104可包括存儲器接口202、外圍設(shè)備接口206、以及一個(gè)或多個(gè)處理器204。用戶設(shè)備104中的各種部件可由一條或多條通信總線或信號線耦接。用戶設(shè)備104可包括各種傳感器、子系統(tǒng)、以及耦接至外圍設(shè)備接口206的外圍設(shè)備。傳感器、子系統(tǒng)、以及外圍設(shè)備可采集信息并且/或者促成用戶設(shè)備104的各種功能。
例如,可將運(yùn)動傳感器210、光傳感器212和接近傳感器214耦接至外圍設(shè)備接口206以促成取向、光和接近感測功能。一個(gè)或多個(gè)其他傳感器216,諸如定位系統(tǒng)(例如,GPS接收器)、溫度傳感器、生物識別傳感器、陀螺儀、指南針、加速度計(jì)等,也可連接至外圍設(shè)備接口206,以促成相關(guān)功能。
在一些實(shí)施例中,相機(jī)子系統(tǒng)220和光學(xué)傳感器222可用于促成相機(jī)功能,諸如拍攝照片和記錄視頻剪輯。可通過一個(gè)或多個(gè)有線和/或無線通信子系統(tǒng)224來促成通信功能,該有線和/或無線通信子系統(tǒng)可包括各種通信端口、射頻接收器與發(fā)射器和/或光學(xué)(例如紅外)接收器與發(fā)射器。可將音頻子系統(tǒng)226耦接至揚(yáng)聲器228和麥克風(fēng)230以促成支持語音的功能,例如語音識別、語音復(fù)制、數(shù)字記錄和電話功能。麥克風(fēng)230可以被配置為從用戶接收語音輸入。
在一些實(shí)施例中,I/O子系統(tǒng)240也可耦接至外圍設(shè)備接口206。I/O子系統(tǒng)240可包括觸摸屏控制器242和/或一個(gè)或多個(gè)其他輸入控制器244。觸摸屏控制器242可以耦接到觸摸屏246。觸摸屏246和觸摸屏控制器242例如可使用多種觸摸靈敏度技術(shù)中的任一種來檢測接觸和移動或它們的間斷,該多種觸摸靈敏度技術(shù)諸如電容技術(shù)、電阻技術(shù)、紅外技術(shù)、表面聲波技術(shù)、接近傳感器陣列等。可將一個(gè)或多個(gè)其他輸入控制器244耦接到其他輸入/控制設(shè)備248,諸如一個(gè)或多個(gè)按鈕、搖臂開關(guān)、拇指滾輪、紅外端口、USB端口和/或諸如觸筆之類的指針設(shè)備。
在一些實(shí)施例中,存儲器接口202可耦接至存儲器250。存儲器250可包括任何電子、磁性、光學(xué)、電磁、紅外或半導(dǎo)體系統(tǒng)、裝置或設(shè)備、便攜式計(jì)算機(jī)磁盤(磁性)、隨機(jī)存取存儲器(RAM)(磁性)、只讀存儲器(ROM)(磁性)、可擦除可編程只讀存儲器(EPROM)(磁性)、便攜式光盤諸如CD、CD-R、CD-RW、DVD、DVD-R或DVD-RW、或閃存存儲器諸如緊湊型閃存卡、安全數(shù)字卡、USB存儲設(shè)備、記憶棒等。在一些實(shí)施例中,存儲器250的非暫態(tài)計(jì)算機(jī)可讀存儲介質(zhì)可用于存儲指令(例如用于執(zhí)行過程400,如下所述),以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備諸如基于計(jì)算機(jī)的系統(tǒng)、包含處理器的系統(tǒng)或可從該指令執(zhí)行系統(tǒng)、裝置或設(shè)備取得指令并執(zhí)行指令的其他系統(tǒng)來使用或與它們結(jié)合。在其他實(shí)施例中,指令(例如用于執(zhí)行過程400,如下所述)可存儲在服務(wù)器系統(tǒng)108的非暫態(tài)計(jì)算機(jī)可讀存儲介質(zhì)(未示出)上,或者可在存儲器250的非暫態(tài)計(jì)算機(jī)可讀存儲介質(zhì)和服務(wù)器系統(tǒng)110的非暫態(tài)計(jì)算機(jī)可讀存儲介質(zhì)之間進(jìn)行分配。在本文的上下文中,“非暫態(tài)計(jì)算機(jī)可讀存儲介質(zhì)”可以是可包含或存儲程序以供指令執(zhí)行系統(tǒng)、裝置和設(shè)備使用或與它們結(jié)合的任何介質(zhì)。
在一些實(shí)施例中,存儲器250可存儲操作系統(tǒng)252、通信模塊254、用戶接口模塊256、傳感器處理模塊258、電話模塊260和應(yīng)用程序262。操作系統(tǒng)252可包括用于處理基礎(chǔ)系統(tǒng)服務(wù)以及用于執(zhí)行硬件相關(guān)任務(wù)的指令。通信模塊254可促成與一個(gè)或多個(gè)附加設(shè)備、一個(gè)或多個(gè)計(jì)算機(jī)和/或一個(gè)或多個(gè)服務(wù)器的通信。用戶接口模塊256可促成圖形用戶界面處理和使用其他輸出通道(例如,揚(yáng)聲器)的輸出處理。傳感器處理模塊258可促成傳感器相關(guān)處理和功能。電話模塊260可促成電話相關(guān)的過程和功能。應(yīng)用程序模塊262可促成用戶應(yīng)用程序的各種功能,諸如電子消息收發(fā)、網(wǎng)絡(luò)瀏覽、媒體處理、導(dǎo)航、成像和/或其他過程和功能。
如本文所述,存儲器250還可存儲客戶端側(cè)數(shù)字助理指令(例如,在數(shù)字助理客戶端模塊264中)以及各種用戶數(shù)據(jù)266(例如,特定于用戶的詞匯數(shù)據(jù)、偏好數(shù)據(jù)和/或其他數(shù)據(jù)諸如用戶的電子通訊錄、待辦事項(xiàng)列表、購物清單、特定于用戶的名字發(fā)音等)以提供數(shù)字助理的客戶端側(cè)功能。
在各種實(shí)施例中,數(shù)字助理客戶端模塊264可以能夠通過用戶設(shè)備104的各種用戶接口(例如,I/O子系統(tǒng)244)接受聲音輸入(例如,語音輸入)、文本輸入、觸摸輸入和/或手勢輸入。數(shù)字助理客戶端模塊264還可以能夠提供聽覺(例如,語音輸出)、視覺和/或觸覺形式的輸出。例如,可將輸出提供為語音、聲音、警報(bào)、文本消息、菜單、圖形、視頻、動畫、振動和/或以上兩者或更多者的組合。在操作期間,數(shù)字助理客戶端模塊264可使用通信子系統(tǒng)224來與數(shù)字助理服務(wù)器106通信。
在一些實(shí)施例中,數(shù)字助理客戶端模塊264可利用各種傳感器、子系統(tǒng)和外圍設(shè)備來從用戶設(shè)備104的周圍環(huán)境采集附加信息以建立與用戶、當(dāng)前用戶交互和/或當(dāng)前用戶輸入相關(guān)聯(lián)的上下文。在一些實(shí)施例中,數(shù)字助理客戶端模塊264可將上下文信息或其子集與用戶輸入一起提供至數(shù)字助理服務(wù)器以幫助推斷用戶的意圖。在一些實(shí)施例中,數(shù)字助理還可使用上下文信息來確定如何準(zhǔn)備及向用戶傳送輸出。
在一些實(shí)施例中,伴隨用戶輸入的上下文信息可包括傳感器信息,例如照明、環(huán)境噪聲、環(huán)境溫度、周圍環(huán)境的圖像或視頻等。在一些實(shí)施例中,上下文信息還可包括設(shè)備的物理狀態(tài),例如設(shè)備取向、設(shè)備位置、設(shè)備溫度、電力水平、速度、加速度、運(yùn)動模式、蜂窩信號強(qiáng)度等。在一些實(shí)施例中,還可將與用戶設(shè)備106的軟件狀態(tài)相關(guān)的信息,例如用戶設(shè)備104的運(yùn)行中進(jìn)程、已安裝程序、過去和當(dāng)前的網(wǎng)絡(luò)活動、后臺服務(wù)、錯(cuò)誤日志、資源使用等,作為與用戶輸入相關(guān)聯(lián)的上下文信息提供至數(shù)字助理服務(wù)器。
在一些實(shí)施例中,DA客戶端模塊264可響應(yīng)于來自數(shù)字助理服務(wù)器的請求而選擇性地提供存儲在用戶設(shè)備104上的信息(例如,用戶數(shù)據(jù)266)。在一些實(shí)施例中,數(shù)字助理客戶端模塊264還可在數(shù)字助理服務(wù)器106請求時(shí)引出來自用戶經(jīng)由自然語言對話或其他用戶接口的附加輸入。數(shù)字助理客戶端模塊264可將所述附加輸入傳送至數(shù)字助理服務(wù)器106,以幫助數(shù)字助理服務(wù)器106進(jìn)行意圖推斷和/或滿足在用戶請求中表達(dá)的用戶意圖。
在各種實(shí)施例中,存儲器250可包括附加指令或更少的指令。例如,DA客戶端模塊264可包括以下在圖3A中所述的數(shù)字助理模塊326的子模塊中的任何子模塊。此外,可在硬件和/或固件中,包括在一個(gè)或多個(gè)信號處理和/或?qū)S眉呻娐分?,?shí)施用戶設(shè)備104的各種功能。
3.數(shù)字助理系統(tǒng)
圖3A示出了根據(jù)各種實(shí)施例的示例性數(shù)字助理系統(tǒng)300的框圖。在一些實(shí)施例中,可在獨(dú)立式計(jì)算機(jī)系統(tǒng)上實(shí)施數(shù)字助理系統(tǒng)300。在一些實(shí)施例中,數(shù)字助理系統(tǒng)300可分布在多個(gè)計(jì)算機(jī)上。在一些實(shí)施例中,數(shù)字助理的模塊和功能中的一些可被劃分成服務(wù)器部分和客戶端部分,其中客戶端部分位于用戶設(shè)備(例如,用戶設(shè)備104)上并通過一個(gè)或多個(gè)網(wǎng)絡(luò)與服務(wù)器部分(例如,服務(wù)器系統(tǒng)108)通信,例如如圖1中所示。在一些實(shí)施例中,數(shù)字助理系統(tǒng)300可為圖1中所示的服務(wù)器系統(tǒng)108(和/或數(shù)字助理服務(wù)器106)的具體實(shí)施。應(yīng)當(dāng)指出,數(shù)字助理系統(tǒng)300僅為數(shù)字助理系統(tǒng)的一個(gè)示例,并且該數(shù)字助理系統(tǒng)300可具有比圖示更多或更少的部件、可組合兩個(gè)或更多個(gè)部件、或可具有部件的不同配置或布局。圖3A中所示的各種部件可在硬件、用于由一個(gè)或多個(gè)處理器執(zhí)行的軟件指令、包括一個(gè)或多個(gè)信號處理集成電路和/或?qū)S眉呻娐返墓碳?、或它們的組合中實(shí)現(xiàn)。
數(shù)字助理系統(tǒng)300可包括存儲器302、輸入/輸出(I/O)接口306、網(wǎng)絡(luò)通信接口308、以及一個(gè)或多個(gè)處理器304。這些部件可通過一條或多條通信總線或信號線310彼此通信。
在一些實(shí)施例中,存儲器302可包括非暫態(tài)計(jì)算機(jī)可讀介質(zhì),諸如高速隨機(jī)存取存儲器和/或非易失性計(jì)算機(jī)可讀存儲介質(zhì)(例如,一個(gè)或多個(gè)磁盤存儲設(shè)備、閃存存儲器設(shè)備或其他非易失性固態(tài)存儲器設(shè)備)。
在一些實(shí)施例中,I/O接口306可將數(shù)字助理系統(tǒng)300的輸入/輸出設(shè)備316諸如顯示器、鍵盤、觸摸屏和麥克風(fēng)耦接至用戶接口模塊322。I/O接口306,與用戶接口模塊322結(jié)合,可接收用戶輸入(例如,語音輸入、鍵盤輸入、觸摸輸入等)并相應(yīng)地對這些輸入進(jìn)行處理。在一些實(shí)施例中,例如當(dāng)在獨(dú)立式用戶設(shè)備上實(shí)施數(shù)字助理時(shí),數(shù)字助理系統(tǒng)300可包括相對于圖2中的用戶設(shè)備104所描述的部件和I/O接口及通信接口中的任一者。在一些實(shí)施例中,數(shù)字助理系統(tǒng)300可代表數(shù)字助理具體實(shí)施的服務(wù)器部分,并且可通過位于用戶設(shè)備(例如,圖2中所示的用戶設(shè)備104)上的客戶端側(cè)部分與用戶進(jìn)行交互。
在一些實(shí)施例中,網(wǎng)絡(luò)通信接口308可包括無線傳輸和接收電路314和/或一個(gè)或多個(gè)有線通信端口312。該一個(gè)或多個(gè)有線通信端口可經(jīng)由一個(gè)或多個(gè)有線接口例如以太網(wǎng)、通用串行總線(USB)、火線等接收和發(fā)送通信信號。無線電路314可從通信網(wǎng)絡(luò)及其他通信設(shè)備接收RF信號和/或光學(xué)信號以及將RF信號和/或光學(xué)信號發(fā)送至通信網(wǎng)絡(luò)及其他通信設(shè)備。無線通信可使用多種通信標(biāo)準(zhǔn)、協(xié)議和技術(shù)中的任一種,諸如GSM、EDGE、CDMA、TDMA、藍(lán)牙、Wi-Fi、VoIP、Wi-MAX、或任何其他合適的通信協(xié)議。網(wǎng)絡(luò)通信接口308可使得能夠?qū)崿F(xiàn)數(shù)字助理系統(tǒng)300與網(wǎng)絡(luò)(諸如互聯(lián)網(wǎng)、內(nèi)聯(lián)網(wǎng)和/或無線網(wǎng)絡(luò)諸如蜂窩電話網(wǎng)絡(luò)、無線局域網(wǎng)(LAN)和/或城域網(wǎng)(MAN))以及其他設(shè)備之間的通信。
在一些實(shí)施例中,存儲器302、或存儲器302的計(jì)算機(jī)可讀存儲介質(zhì)可存儲程序、模塊、指令和數(shù)據(jù)結(jié)構(gòu),包括以下內(nèi)容中的全部或其子集:操作系統(tǒng)318、通信模塊320、用戶接口模塊322、一個(gè)或多個(gè)應(yīng)用程序324和數(shù)字助理模塊326。特別地,存儲器302或存儲器302的計(jì)算機(jī)可讀存儲介質(zhì)可存儲用于執(zhí)行過程400的指令,如下文所述。一個(gè)或多個(gè)處理器304可執(zhí)行這些程序、模塊和指令,并從數(shù)據(jù)結(jié)構(gòu)進(jìn)行讀取/向數(shù)據(jù)結(jié)構(gòu)進(jìn)行寫入。
操作系統(tǒng)318(例如,Darwin、RTXC、LINUX、UNIX、OSX、WINDOWS、或嵌入式操作系統(tǒng)諸如VxWorks)可包括用于控制和管理一般系統(tǒng)任務(wù)(例如,存儲器管理、存儲設(shè)備控制、電力管理等)的各種軟件部件和/或驅(qū)動器,并促成各種硬件、固件與軟件部件之間的通信。
通信模塊320可促成數(shù)字助理系統(tǒng)300與其他設(shè)備之間通過網(wǎng)絡(luò)通信接口308進(jìn)行的通信。例如,通信模塊320可與圖2中所示的設(shè)備104的通信模塊254通信。通信模塊320還可包括用于處理由無線電路314和/或有線通信端口312接收的數(shù)據(jù)的各種部件。
用戶接口模塊322可經(jīng)由I/O接口306(例如,來自鍵盤、觸摸屏、指向設(shè)備、控制器和/或麥克風(fēng))接收來自用戶的命令和/或輸入,并在顯示器上生成用戶界面對象。用戶接口模塊322還可準(zhǔn)備輸出(例如,語音、聲音、動畫、文本、圖標(biāo)、振動、觸覺反饋和光照等)并將其經(jīng)由I/O接口306(例如,通過顯示器、音頻通道、揚(yáng)聲器和觸摸板等)傳送至用戶。
應(yīng)用程序324可包括被配置為由一個(gè)或多個(gè)處理器304執(zhí)行的程序和/或模塊。例如,如果在獨(dú)立式用戶設(shè)備上實(shí)施數(shù)字助理系統(tǒng),則應(yīng)用程序324可包括用戶應(yīng)用程序,諸如游戲、日歷應(yīng)用程序、導(dǎo)航應(yīng)用程序或電子郵件應(yīng)用程序。如果在服務(wù)器場上實(shí)施數(shù)字助理系統(tǒng)300,則應(yīng)用程序324可包括例如資源管理應(yīng)用程序、診斷應(yīng)用程序、或調(diào)度應(yīng)用程序。
存儲器302還可存儲數(shù)字助理模塊(或數(shù)字助理的服務(wù)器部分)326。在一些實(shí)施例中,數(shù)字助理模塊326可包括以下子模塊或其子集或超集:輸入/輸出處理模塊328、語音轉(zhuǎn)文本(STT)處理模塊330、自然語言處理模塊332、對話流處理模塊334、任務(wù)流處理模塊336和服務(wù)處理模塊338。這些模塊中的每一個(gè)模塊可具有對數(shù)字助理326的以下數(shù)據(jù)與模型中的一者或多者或其子集或超集的訪問權(quán)限:知識本體360、詞匯索引344、用戶數(shù)據(jù)348、任務(wù)流模型354和服務(wù)模型356。
在一些實(shí)施例中,使用在數(shù)字助理模塊326中實(shí)施的處理模塊、數(shù)據(jù),和模型,數(shù)字助理可執(zhí)行以下內(nèi)容中的至少一些:將語音輸入轉(zhuǎn)換成文本;識別從用戶接收的自然語言輸入中表達(dá)的用戶的意圖;主動地引出并獲得為了充分推斷用戶的意圖而需要的信息(例如,通過消除字詞、名稱、意向等的歧義);確定用于實(shí)現(xiàn)推斷出的意圖的任務(wù)流;以及執(zhí)行任務(wù)流以實(shí)現(xiàn)推斷出的意圖。
在一些實(shí)施例中,如圖3B中所示,I/O處理模塊328可通過圖3A中的I/O設(shè)備316與用戶交互或通過圖3A中的網(wǎng)絡(luò)通信接口308與用戶設(shè)備(例如,圖1中的用戶設(shè)備104)交互以獲得用戶輸入(例如,語音輸入)以及提供對用戶輸入的響應(yīng)(例如,作為語音輸出)。I/O處理模塊328可任選地隨同用戶輸入一起或在接收到用戶輸入之后不久獲得與來自用戶設(shè)備的用戶輸入相關(guān)聯(lián)的上下文信息。上下文信息可包括與用戶輸入相關(guān)的特定于用戶的數(shù)據(jù)、詞匯和/或偏好。在一些實(shí)施例中,上下文信息還包括在接收用戶請求時(shí)設(shè)備(例如,圖1中的用戶設(shè)備104)的軟件和硬件狀態(tài)和/或與在接收用戶請求時(shí)用戶的周圍環(huán)境相關(guān)的信息。在一些實(shí)施例中,I/O處理模塊328還可向用戶發(fā)送與用戶請求有關(guān)的跟進(jìn)問題,并從用戶接收回答。在用戶請求被I/O處理模塊328接收且用戶請求可包含語音輸入時(shí),I/O處理模塊328可將語音輸入轉(zhuǎn)發(fā)至STT處理模塊330(或語音識別器)以進(jìn)行語音文本轉(zhuǎn)換。
STT處理模塊330可包括一個(gè)或多個(gè)ASR系統(tǒng)。該一個(gè)或多個(gè)ASR系統(tǒng)可處理通過I/O處理模塊328接收的語音輸入來生成識別結(jié)果。每個(gè)ASR系統(tǒng)可包括前端語音預(yù)處理器。前端語音預(yù)處理器可從語音輸入提取代表性特征。例如,前端語音預(yù)處理器可對語音輸入執(zhí)行傅立葉變換以提取將語音輸入表征為一系列代表性多維向量的譜特征。另外,每個(gè)ASR系統(tǒng)可包括一個(gè)或多個(gè)語音識別模型(例如聲學(xué)模型和/或語言模型),并且可實(shí)施一個(gè)或多個(gè)語音識別引擎。語音識別模型的示例可包括隱馬爾科夫模型、高斯混合模型、深度神經(jīng)網(wǎng)絡(luò)模型、n元模型和其他統(tǒng)計(jì)模型。語音識別引擎的示例可包括基于動態(tài)時(shí)間規(guī)整引擎和基于加權(quán)有限狀態(tài)轉(zhuǎn)換器(WFST)引擎。一個(gè)或多個(gè)語音識別模型和一個(gè)或多個(gè)語音識別引擎可用于處理前端語音預(yù)處理器的所提取代表性特征以生成中間識別結(jié)果(例如音素、音素序列和子字詞)并最終生成文本識別結(jié)果(例如字詞、字詞序列或符號序列)。在一些實(shí)施例中,可至少部分地由第三方服務(wù)或在用戶的設(shè)備(例如用戶設(shè)備104)上處理語音輸入以生成識別結(jié)果。一旦STT處理模塊330生成了包含文本(例如字詞、或字詞序列、或符號序列)的識別結(jié)果,識別結(jié)果就可被傳遞給自然語言處理模塊332用于意圖推斷。
在一些實(shí)施例中,STT處理模塊330可包括和/或經(jīng)由語音字母表轉(zhuǎn)換模型331訪問可識別字詞的詞匯。每個(gè)詞匯字詞可與該字詞在語音識別語音字母表中表示的一個(gè)或多個(gè)候選發(fā)音相關(guān)聯(lián)。例如,詞匯可包括與候選發(fā)音“tuh-may-doe”和“tuh-mah-doe”相關(guān)聯(lián)的字詞“tomato”。在一些實(shí)施例中,可基于字詞的拼寫和一個(gè)或多個(gè)語言學(xué)和/或語音學(xué)規(guī)則來確定字詞的候選發(fā)音。在一些實(shí)施例中,可手動生成候選發(fā)音,例如基于已知的標(biāo)準(zhǔn)發(fā)音。
在一些實(shí)施例中,候選發(fā)音可基于候選發(fā)音的普遍性進(jìn)行排序。例如,候選發(fā)音“tuh-may-doe”可被排序高于“tuh-mah-doe”,因?yàn)榍罢呤歉J褂玫陌l(fā)音(例如在所有用戶中,對于特定地理區(qū)域中的用戶,或者對于任何其他適當(dāng)?shù)挠脩糇蛹?。在一些實(shí)施例中,候選發(fā)音中的一者可被選為預(yù)測發(fā)音(例如最可能發(fā)音)。
當(dāng)語音輸入被接收時(shí),STT處理模塊330可用于(例如利用聲學(xué)模型)確定與語音輸入對應(yīng)的音素,然后嘗試(例如利用語言模型)確定與該音素匹配的字詞。例如,如果STT處理模塊330可首先識別與語音輸入的一部分對應(yīng)的音素序列“tuh-may-doe”,則其然后可基于詞匯索引344確定該序列對應(yīng)于字詞“tomato”。
在一些實(shí)施例中,STT處理模塊330可使用近似匹配技術(shù)來確定話語中的字詞。因此,例如STT處理模塊330可確定音素序列“duh-may-doe”對應(yīng)于字詞“tomato”,即使那個(gè)特定音素序列并非是用于那個(gè)字詞的候選音素之一。
在一些實(shí)施例中,STT處理模塊330可以能夠基于兩個(gè)或更多個(gè)識別結(jié)果來確定組合結(jié)果。例如,STT處理模塊330可以能夠執(zhí)行下文所述過程400的框414、424和430。
數(shù)字助理的自然語言處理模塊332(“自然語言處理器”)可取得由STT處理模塊330生成的字詞或符號的序列(“符號序列”),并嘗試將該符號序列與由數(shù)字助理所識別的一個(gè)或多個(gè)“可執(zhí)行意圖”相關(guān)聯(lián)。“可執(zhí)行意圖”可表示可由數(shù)字助理執(zhí)行并且可具有在任務(wù)流模型354中實(shí)施的相關(guān)聯(lián)的任務(wù)流的任務(wù)。相關(guān)聯(lián)任務(wù)流可以是數(shù)字助理為了執(zhí)行任務(wù)而采取的一系列經(jīng)編程的動作和步驟。數(shù)字助理的能力范圍可取決于已在任務(wù)流模型354中實(shí)施并存儲的任務(wù)流的數(shù)量和種類,或換言之,可取決于數(shù)字助理所識別的“可執(zhí)行意圖”的數(shù)量和種類。然而,數(shù)字助理的有效性還可取決于助理從以自然語言表達(dá)的用戶請求中推斷出正確的“一個(gè)或多個(gè)可執(zhí)行意圖”的能力。
在一些實(shí)施例中,除從STT處理模塊330獲得的字詞或符號的序列之外,自然語言處理模塊332還可接收與用戶請求相關(guān)聯(lián)的上下文信息,例如來自I/O處理模塊328。自然語言處理模塊332可任選地使用上下文信息來明確、補(bǔ)充和/或進(jìn)一步定義在從STT處理模塊330接收的符號序列中包含的信息。上下文信息可包括例如用戶偏好,用戶設(shè)備的硬件和/或軟件狀態(tài),在用戶請求之前、期間或之后不久收集的傳感器信息,數(shù)字助理與用戶之間的先前交互(例如,對話),等等。如本文所述,上下文信息可以是動態(tài)的,并且可隨對話的時(shí)間、位置、內(nèi)容、以及其他因素而變化。
在一些實(shí)施例中,自然語言處理可以是基于例如知識本體360進(jìn)行的。知識本體360可以是包含許多節(jié)點(diǎn)的分級結(jié)構(gòu),每個(gè)節(jié)點(diǎn)表示“可執(zhí)行意圖”或與“可執(zhí)行意圖”或其他“屬性”中的一者或多者相關(guān)的“屬性”。如上所述,“可執(zhí)行意圖”可表示數(shù)字助理能夠執(zhí)行的任務(wù),即,該任務(wù)為“可執(zhí)行的”或可被進(jìn)行的?!皩傩浴笨纱砼c可執(zhí)行意圖或另一屬性的子方面相關(guān)聯(lián)的參數(shù)。知識本體360中可執(zhí)行意圖節(jié)點(diǎn)與屬性節(jié)點(diǎn)之間的連接可定義由屬性節(jié)點(diǎn)代表的參數(shù)如何從屬于由可執(zhí)行意圖節(jié)點(diǎn)代表的任務(wù)。
自然語言處理模塊332可從STT處理模塊330接收符號序列(例如,文本串),并確定符號序列中的字詞牽涉哪些節(jié)點(diǎn)。在一些實(shí)施例中,如果發(fā)現(xiàn)符號序列中的字詞或短語與知識本體360中的一個(gè)或多個(gè)節(jié)點(diǎn)相關(guān)聯(lián)(經(jīng)由詞匯索引344),則所述字詞或短語可“觸發(fā)”或“激活”那些節(jié)點(diǎn)?;谝鸭せ罟?jié)點(diǎn)的數(shù)量和/或相對重要性,自然語言處理模塊332可選擇可執(zhí)行意圖中的一個(gè)可執(zhí)行意圖作為用戶意圖使數(shù)字助理執(zhí)行的任務(wù)。在一些實(shí)施例中,可選擇具有最多“已觸發(fā)”節(jié)點(diǎn)的域。在一些實(shí)施例中,可選擇具有最高置信度值(例如,基于其各個(gè)已觸發(fā)節(jié)點(diǎn)的相對重要性)的域。在一些實(shí)施例中,可基于已觸發(fā)節(jié)點(diǎn)的數(shù)量和重要性的組合來選擇域。在一些實(shí)施例中,在選擇節(jié)點(diǎn)的過程中還考慮附加因素,諸如數(shù)字助理先前是否已正確解譯來自用戶的類似請求。
用戶數(shù)據(jù)348可包括特定于用戶的信息,諸如特定于用戶的詞匯、用戶偏好、用戶地址、用戶的默認(rèn)語言和第二語言、用戶的聯(lián)系人列表、以及每位用戶的其他短期或長期信息。在一些實(shí)施例中,自然語言處理模塊332可使用特定于用戶的信息來補(bǔ)充用戶輸入中所包含的信息以進(jìn)一步限定用戶意圖。例如,針對用戶請求“邀請我的朋友參加我的生日派對”,自然語言處理模塊332可以能夠訪問用戶數(shù)據(jù)348以確定“朋友”是哪些人以及“生日派對”將于何時(shí)何地舉行,而不需要用戶在其請求中明確地提供此類信息。
在一些實(shí)施例中,一旦自然語言處理模塊332基于用戶請求識別出可執(zhí)行意圖(或域),自然語言處理模塊332便可生成結(jié)構(gòu)化查詢以表示所識別的可執(zhí)行意圖。在一些實(shí)施例中,結(jié)構(gòu)化查詢可包括針對可執(zhí)行意圖的域內(nèi)的一個(gè)或多個(gè)節(jié)點(diǎn)的參數(shù),并且所述參數(shù)中的至少一些參數(shù)填充有在用戶請求中指定的特定信息和要求。例如,用戶可以說“幫我在壽司店預(yù)訂晚上7點(diǎn)的座位。”在這種情況下,自然語言處理模塊332可以能夠基于用戶輸入將可執(zhí)行意圖正確地識別為“餐廳預(yù)訂”。根據(jù)知識主體,“餐廳預(yù)訂”域的結(jié)構(gòu)化查詢可包括參數(shù)諸如{菜系}、{時(shí)間}、{日期}、{同行人數(shù)}等。在一些實(shí)施例中,基于語音輸入和利用STT處理模塊330從語音輸入得到的文本,自然語言處理模塊332可針對餐廳預(yù)訂域生成部分結(jié)構(gòu)化查詢,其中部分結(jié)構(gòu)化查詢包括參數(shù){菜系=“壽司類”}以及{時(shí)間=“晚上7點(diǎn)”}。然而,在該實(shí)施例中,用戶話語包含的信息不足以補(bǔ)全與域相關(guān)聯(lián)的結(jié)構(gòu)化查詢。因此,基于當(dāng)前可用信息,不可能在結(jié)構(gòu)化查詢中指定其他必要參數(shù)諸如{同行人數(shù)}和{日期}。在一些實(shí)施例中,自然語言處理模塊332可用所接收的上下文信息來填充結(jié)構(gòu)化查詢的一些參數(shù)。例如,在一些實(shí)施例中,如果用戶請求“附近的”壽司店,則自然語言處理模塊332可用來自用戶設(shè)備104的GPS坐標(biāo)來填充結(jié)構(gòu)化查詢中的{位置}參數(shù)。
在一些實(shí)施例中,自然語言處理模塊332可將結(jié)構(gòu)化查詢(包括任何已補(bǔ)全的參數(shù))傳送至任務(wù)流處理模塊336(“任務(wù)流處理器”)。任務(wù)流處理模塊336可被配置為接收來自自然語言處理模塊332的結(jié)構(gòu)化查詢,補(bǔ)全結(jié)構(gòu)化查詢(必要時(shí)),以及執(zhí)行“完成”用戶最終請求所需的動作。在一些實(shí)施例中,完成這些任務(wù)所必需的各種過程可在任務(wù)流模型354中提供。在一些實(shí)施例中,任務(wù)流模型可包括用于獲取來自用戶的附加信息的過程、以及用于執(zhí)行與可執(zhí)行意圖相關(guān)聯(lián)的動作的任務(wù)流。
如上所述,為了補(bǔ)全結(jié)構(gòu)化查詢,任務(wù)流處理模塊336可能需要發(fā)起與用戶的附加對話,以便獲得附加信息和/或弄清可能有歧義的話語。當(dāng)此類交互有必要時(shí),任務(wù)流處理模塊336可調(diào)用對話流處理模塊334來進(jìn)行與用戶的對話。在一些實(shí)施例中,對話流處理模塊334可確定如何(和/或何時(shí))向用戶詢問附加信息,并且接收和處理用戶響應(yīng)??赏ㄟ^I/O處理模塊328將問題提供給用戶并從用戶接收回答。在一些實(shí)施例中,對話流處理模塊334可經(jīng)由聽覺和/或視覺輸出向用戶呈現(xiàn)對話輸出,并接收經(jīng)由口頭或物理(例如,點(diǎn)擊)響應(yīng)的來自用戶的輸入。繼續(xù)上述實(shí)施例,在任務(wù)流處理模塊336調(diào)用對話流處理模塊334來確定針對與域“餐廳預(yù)訂”相關(guān)聯(lián)的結(jié)構(gòu)化查詢的“同行人數(shù)”和“日期”信息時(shí),對話流處理模塊334可生成諸如“一行幾位?”和“預(yù)訂哪天?”之類的問題傳遞給用戶。一旦接收到來自用戶的回答,對話流處理模塊334則可用缺失信息填充結(jié)構(gòu)化查詢,或?qū)⑿畔鬟f給任務(wù)流處理模塊336以補(bǔ)全結(jié)構(gòu)化查詢的缺失信息。
一旦任務(wù)流處理模塊336已針對可執(zhí)行意圖補(bǔ)全了結(jié)構(gòu)化查詢,任務(wù)流處理模塊336就可繼續(xù)執(zhí)行與可執(zhí)行意圖相關(guān)聯(lián)的最終任務(wù)。因此,任務(wù)流處理模塊336可根據(jù)結(jié)構(gòu)化查詢中包含的特定參數(shù)來執(zhí)行任務(wù)流模型中的步驟和指令。例如,針對可執(zhí)行意圖“餐廳預(yù)訂”的任務(wù)流模型可包括用于聯(lián)系餐廳并實(shí)際上請求在特定時(shí)間針對特定同行人數(shù)的預(yù)訂的步驟和指令。例如,通過使用結(jié)構(gòu)化查詢諸如:{餐廳預(yù)訂,餐廳=ABC咖啡館,日期=2012/3/12,時(shí)間=下午7點(diǎn),同行人數(shù)=5人},任務(wù)流處理模塊336可執(zhí)行以下步驟:(1)登錄到ABC咖啡館的服務(wù)器或餐廳預(yù)訂系統(tǒng)諸如(2)在網(wǎng)站上的表格中輸入日期、時(shí)間和同行人數(shù)信息,(3)提交表格,以及(4)在用戶日歷中針對該預(yù)訂制作日歷條目。
在一些實(shí)施例中,任務(wù)流處理模塊336可在服務(wù)處理模塊338(“服務(wù)處理模塊”)的輔助下完成用戶輸入中所請求的任務(wù)或者提供用戶輸入中所請求的信息性回答。例如,服務(wù)處理模塊338可代表任務(wù)流處理模塊336發(fā)起電話呼叫、設(shè)置日歷條目、調(diào)用地圖搜索、調(diào)用用戶設(shè)備上安裝的其他用戶應(yīng)用程序或與所述其他用戶應(yīng)用程序交互、以及調(diào)用第三方服務(wù)(例如,餐廳預(yù)訂門戶網(wǎng)站、社交網(wǎng)站、銀行門戶網(wǎng)站等)或與第三方服務(wù)交互。在一些實(shí)施例中,可通過服務(wù)模型356中的相應(yīng)服務(wù)模型指定每項(xiàng)服務(wù)所需的協(xié)議和應(yīng)用程序編程接口(API)。服務(wù)處理模塊338可針對服務(wù)訪問適當(dāng)?shù)姆?wù)模型,并依據(jù)服務(wù)模型根據(jù)該服務(wù)所需的協(xié)議和API生成針對該服務(wù)的請求。
例如,如果餐廳已啟用在線預(yù)訂服務(wù),則餐廳可提交服務(wù)模型,該服務(wù)模型指定進(jìn)行預(yù)訂的必要參數(shù)以及將必要參數(shù)的值傳送至在線預(yù)訂服務(wù)的API。在被任務(wù)流處理模塊336請求時(shí),服務(wù)處理模塊338可使用存儲在服務(wù)模型中的web地址來建立與在線預(yù)訂服務(wù)的網(wǎng)絡(luò)連接,并將預(yù)訂的必要參數(shù)(例如,時(shí)間、日期、同行人數(shù))以根據(jù)在線預(yù)訂服務(wù)的API的格式發(fā)送至在線預(yù)訂接口。
在一些實(shí)施例中,自然語言處理模塊332、對話流處理模塊334以及任務(wù)流處理模塊336可共同且反復(fù)地使用以推斷并限定用戶的意圖、獲得信息以進(jìn)一步明確并提煉用戶意圖、并最終生成響應(yīng)(即,對用戶的輸出,或完成任務(wù))以滿足用戶的意圖。
有關(guān)數(shù)字助理的更多細(xì)節(jié)可見于提交于2010年1月18日的名稱為“Intelligent Automated Assistant”的美國實(shí)用新型專利申請12/987,982、提交于2011年6月3日的名稱為“Generating and Processing Data Items That Represent Tasks to Perform”的美國實(shí)用新型專利申請61/493,201中,其全部公開內(nèi)容以引用方式并入本文。
4.數(shù)字助理中語音處理的過程
圖4A-圖4B示出了根據(jù)各種實(shí)施例的用于處理語音的過程400。過程400可在具有一個(gè)或多個(gè)處理器以及存儲用于供所述一個(gè)或多個(gè)處理器執(zhí)行的一個(gè)或多個(gè)程序的存儲器的電子設(shè)備處執(zhí)行。在這些實(shí)施例中,過程400可在用戶設(shè)備104或服務(wù)器系統(tǒng)108處執(zhí)行。在一些實(shí)施例中,過程400可由數(shù)字助理系統(tǒng)300(圖3A)執(zhí)行,數(shù)字助理系統(tǒng)如上所述可實(shí)施在獨(dú)立式計(jì)算機(jī)系統(tǒng)(例如用戶設(shè)備104或服務(wù)器系統(tǒng)108)上或者分布在多個(gè)計(jì)算機(jī)(例如用戶設(shè)備104、服務(wù)器系統(tǒng)108和/或附加或另選設(shè)備或系統(tǒng))上。雖然以下討論將過程400描述為由數(shù)字助理(例如數(shù)字助理系統(tǒng)300)執(zhí)行,但該過程并不限于由任何特定設(shè)備、設(shè)備組合或具體實(shí)施來執(zhí)行。此外,過程的各個(gè)框可以任何適當(dāng)?shù)姆绞椒植荚谒鲆粋€(gè)或多個(gè)計(jì)算機(jī)、系統(tǒng)或設(shè)備上。
參考圖4,在過程400的框402處,可接收來自用戶的第一語音輸入。在一些實(shí)施例中,第一語音輸入可在與數(shù)字助理的交互過程中被接收或者作為與數(shù)字助理的交互的一部分被接收。在其他實(shí)施例中,第一語音輸入可以是要由數(shù)字助理轉(zhuǎn)錄以供輸入電子設(shè)備的應(yīng)用程序(例如電子郵件、文字處理、消息、網(wǎng)絡(luò)搜索等)中的口述。第一語音輸入可以聲波、音頻文件或代表性音頻信號(模擬或數(shù)字)的形式被接收。在一些實(shí)施例中,第一語音輸入可以是電子設(shè)備(例如用戶設(shè)備104)的麥克風(fēng)(例如麥克風(fēng)230)接收的聲波。在其他實(shí)施例中,第一語音輸入可以是電子設(shè)備的音頻子系統(tǒng)(例如音頻子系統(tǒng)226)、外圍設(shè)備接口(例如外圍設(shè)備接口206)或處理器(例如處理器204)接收的代表性音頻信號或所記錄音頻文件。在另外的實(shí)施例中,第一語音輸入可以是數(shù)字助理系統(tǒng)的I/O接口(例如I/O接口306)或處理器(例如處理器304)接收的代表性音頻信號或所記錄音頻文件。
在一些實(shí)施例中,第一語音輸入可包括用戶請求。用戶請求可以是任何請求,包括指示數(shù)字助理能執(zhí)行的任務(wù)的請求(例如進(jìn)行和/或促進(jìn)餐廳預(yù)定、發(fā)起電話呼叫或文本消息等)、針對響應(yīng)的請求(例如對問題的回答,諸如“地球距離太陽多遠(yuǎn)?”)等等。
在過程400的框404處,可利用第一ASR系統(tǒng)處理第一語音輸入,以生成第一識別結(jié)果??墒褂脗鹘y(tǒng)的語音轉(zhuǎn)文本處理技術(shù)來處理第一語音輸入。在一些實(shí)施例中,可利用電子設(shè)備的STT處理模塊(例如STT處理模塊330)處理第一語音輸入,以生成第一識別結(jié)果。具體地,STT處理模塊可包括第一ASR系統(tǒng)。第一ASR系統(tǒng)的一個(gè)或多個(gè)語音識別模型(例如聲學(xué)模型和/或語言模型)和第一ASR系統(tǒng)的一個(gè)或多個(gè)語音識別引擎可用于處理第一語音輸入。
在一些實(shí)施例中,第一識別結(jié)果可包括中間識別結(jié)果,諸如音素和子字詞(例如音節(jié)、詞素等)。具體地,第一識別結(jié)果可包括與第一語音輸入對應(yīng)的音素或符號的序列。這個(gè)對應(yīng)于第一語音輸入的音素序列可被稱為第一語音輸入的音素轉(zhuǎn)錄。在一些實(shí)施例中,第一識別結(jié)果可包括與第一語音輸入的至少一部分對應(yīng)的文本諸如字詞或字詞序列。另外,在一些實(shí)施例中,處理第一語音輸入可包括確定從第一語音輸入得到的每個(gè)音素、音素序列、子字詞、字詞、或字詞序列的置信度量度。置信度量度可反映識別結(jié)果的置信度或準(zhǔn)確度。在一些實(shí)施例中,第一識別結(jié)果因此可包括所得到的音素、音素序列、子字詞、字詞或字詞序列的置信度量度。
在過程400的框406處,可執(zhí)行基于第一識別結(jié)果的動作。在實(shí)施過程400以轉(zhuǎn)錄語音供用于輸入到電子設(shè)備的應(yīng)用程序(例如電子郵件、消息收發(fā)、文字處理、網(wǎng)絡(luò)搜索等)中的實(shí)施例中,第一識別結(jié)果可包括從第一語音輸入的至少一部分轉(zhuǎn)錄的文本。在這些實(shí)施例中,所述動作可包括在電子設(shè)備上顯示(例如在觸摸屏246上)第一識別結(jié)果的文本的至少一部分。
在其他實(shí)施例中,第一語音輸入可包括針對數(shù)字助理的用戶請求。在這些實(shí)施例中,所述動作可包括執(zhí)行用于滿足用戶請求的任務(wù)。具體地,所述動作可包括(例如利用服務(wù)處理模塊338)執(zhí)行旨在滿足(例如利用自然語言處理模塊332、對話流處理模塊334和任務(wù)流處理模塊336確定的)與用戶請求相關(guān)聯(lián)的用戶意圖的任務(wù)。例如,第一語音輸入可包括用戶請求“給Tim Carpenter打電話”。第一識別結(jié)果因此可包括文本“給Tim Carpenter打電話”。基于該文本,數(shù)字助理可執(zhí)行撥打用戶聯(lián)系人列表中所列出的與名叫“Tim Carpenter”的人相關(guān)聯(lián)的電話號碼的任務(wù)。
在另外的實(shí)施例中,所述動作可包括生成總結(jié)、描述或確認(rèn)數(shù)字助理(例如利用自然語言處理模塊332)由第一文本推斷出的意圖的輸出(例如語音或文本)。在一個(gè)此類實(shí)施例中,數(shù)字助理可基于包含文本“網(wǎng)絡(luò)搜索松樹”的第一識別結(jié)果而輸出短語“搜索網(wǎng)絡(luò)查找關(guān)于松樹的信息”。在另一個(gè)此類實(shí)施例中,數(shù)字助理可基于包含文本“給Tim Carpenter打電話”的第一識別結(jié)果輸出問題“您想要給Tim Carpenter打電話嗎?”。
在過程400的框408處,可從用戶接收指示第一識別結(jié)果中的潛在錯(cuò)誤的輸入。在一些實(shí)施例中,潛在錯(cuò)誤可由用戶基于在框406處執(zhí)行的動作來推斷。在一個(gè)此類實(shí)施例中,在框402處從用戶接收的第一語音輸入可包括“請給Tim Carpenter打電話”。然而,數(shù)字助理在框406處執(zhí)行的動作可包括給“Jim Carpenter”打電話。在這個(gè)實(shí)施例中,用戶可推斷出在第一識別結(jié)果中存在潛在錯(cuò)誤,因此可在電子設(shè)備處從用戶接收指示潛在錯(cuò)誤的輸入。
在框408處接收的輸入可以是任何指示第一識別結(jié)果中的潛在錯(cuò)誤的輸入。在一些實(shí)施例中,所述輸入可包括第二語音輸入。在這些實(shí)施例中,第二語音輸入可在框410處被處理以確定第二語音輸入是否是框402處第一語音輸入的至少一部分的重復(fù)。用戶重復(fù)第一語音輸入的至少一部分可指示第一識別結(jié)果中的潛在錯(cuò)誤。
在過程400的框410處,可確定框408處的輸入是否包括第二語音輸入,該第二語音輸入是第一語音輸入的至少一部分的重復(fù)。為了確定在框408處接收的輸入是否可用于改善識別結(jié)果并降低相同錯(cuò)誤重新出現(xiàn)的概率,確定所述輸入是否包括作為第一語音輸入的至少一部分的重復(fù)的第二語音輸入可以是可取的。例如,如果確定所述輸入包括作為第一語音輸入的至少一部分的重復(fù)的第二語音輸入,則第二語音輸入可被處理以生成可用于改善識別結(jié)果的第二識別結(jié)果(例如在框412處)
在一些實(shí)施例中,所述確定可包括將第二語音輸入的音頻波形與第一語音輸入的音頻波形進(jìn)行比較。在這些實(shí)施例中,如果確定第二語音輸入的音頻波形基本上類似于第一語音輸入的音頻波形的對應(yīng)部分,則可將第二語音輸入確定為是第一語音輸入的至少一部分的重復(fù)。具體地,如果第二語音輸入的音頻波形與第一語音輸入的音頻波形的對應(yīng)部分之間的差異小于預(yù)先確定的閾值,則可將第二語音輸入確定為是第一語音輸入的至少一部分的重復(fù)。
在其他實(shí)施例中,確定第二語音輸入是否是第一語音輸入的至少一部分的重復(fù)可包括將第二語音輸入的音素轉(zhuǎn)錄與第一語音輸入的音素轉(zhuǎn)錄進(jìn)行比較。在這些實(shí)施例中,初始可利用ASR系統(tǒng)(例如框404處的第一ASR系統(tǒng)、框412處的第二ASR系統(tǒng)等等)處理第二語音輸入,以生成第二語音輸入的音素轉(zhuǎn)錄。然后可相對于第一語音輸入的對應(yīng)部分的音素轉(zhuǎn)錄來確定第二語音輸入的音素轉(zhuǎn)錄的錯(cuò)誤率。換句話講,可將第二語音輸入的音素轉(zhuǎn)錄與第一語音輸入的對應(yīng)部分的音素轉(zhuǎn)錄進(jìn)行比較以確定錯(cuò)誤率。在這些實(shí)施例中,如果相對于第一語音輸入的對應(yīng)部分的音素轉(zhuǎn)錄,第二語音輸入的音素轉(zhuǎn)錄錯(cuò)誤率小于預(yù)先確定的值,則可將第二語音輸入確定為是第一語音輸入的至少一部分的重復(fù)。
應(yīng)當(dāng)認(rèn)識到,第二語音輸入可以是在框408處接收的輸入的僅一部分。例如,第一語音輸入可包括“給Tim Carpenter打電話”,在框408處接收的輸入可包括語音“不,不是Jim,我說的是‘Tim Carpenter’”。在這個(gè)實(shí)施例中,在框408處接收的輸入包括第二語音輸入“Tim Carpenter”,這是第一語音輸入的至少一部分的重復(fù)。另外應(yīng)當(dāng)認(rèn)識到,框410可包括對于確定框408處的輸入是否包括作為第一語音輸入的至少一部分的重復(fù)的第二語音輸入所必需的其他步驟。例如,框410可附加地包括確定在框408處接收的輸入是否包括語音。
在過程400的框412處,可利用第二ASR系統(tǒng)處理第二語音輸入,以生成第二識別結(jié)果。利用第二ASR系統(tǒng)處理第二語音輸入可類似于框404處利用第一ASR系統(tǒng)處理第一語音輸入。在一些實(shí)施例中,可利用電子設(shè)備的STT處理模塊(例如STT處理模塊330)處理第二語音輸入,以生成第二識別結(jié)果。具體地,STT處理模塊可包括第二ASR系統(tǒng)。第二ASR系統(tǒng)的一個(gè)或多個(gè)語音識別模型(例如聲學(xué)模型和/或語言模型)和第二ASR系統(tǒng)的一個(gè)或多個(gè)語音識別引擎可用于處理第一語音輸入。
在一些實(shí)施例中,第二識別結(jié)果可包括中間識別結(jié)果,諸如音素和子字詞(例如音節(jié)、詞素等)。具體地,第二識別結(jié)果可包括與第二語音輸入對應(yīng)的音素或符號的序列。這個(gè)對應(yīng)于第二語音輸入的音素序列可被稱為第二語音輸入的音素轉(zhuǎn)錄。在一些實(shí)施例中,第二識別結(jié)果可包括與于第二語音輸入的至少一部對應(yīng)分的文本諸如字詞或字詞序列。另外,在一些實(shí)施例中,處理第二語音輸入可包括確定從第二語音輸入得到的每個(gè)音素、音素序列、子字詞、字詞、或字詞序列的置信度量度。置信度量度可反映識別結(jié)果的置信度或準(zhǔn)確度。在一些實(shí)施例中,第二識別結(jié)果因此可包括所得到的音素、音素序列、子字詞、字詞或字詞序列的置信度量度。
在一些實(shí)施例中,第二ASR系統(tǒng)可以是與第一ASR系統(tǒng)相同的ASR系統(tǒng)。因此,在這些實(shí)施例中,在框402處接收的第一語音輸入和在框408處接收的輸入的第二語音輸入可以都利用相同ASR系統(tǒng)來處理。例如,用戶對第二語音輸入的發(fā)音可能比對第一語音輸入的發(fā)音更清楚。另外,用戶可能說得更大聲,因此第二語音輸入可具有比第一語音輸入更高的信噪比。因此在一些實(shí)施例中,雖然使用相同的ASR系統(tǒng),但生成的第二識別結(jié)果可以比第一識別結(jié)果更準(zhǔn)確。這樣,可利用在框408處接收的輸入改善識別結(jié)果,并且可避免相同的錯(cuò)誤。
在其他實(shí)施例中,第二ASR系統(tǒng)可與第一ASR系統(tǒng)不同。在這些實(shí)施例中,在框402處接收的第一語音輸入和在框408處接收的輸入的第二語音輸入可利用不同ASR系統(tǒng)來處理。對于生成第二語音輸入的更準(zhǔn)確識別結(jié)果并因此降低發(fā)生相同錯(cuò)誤的概率,利用不同的ASR系統(tǒng)可以是有利的。例如,所使用的第二ASR系統(tǒng)的錯(cuò)誤率可低于第一ASR系統(tǒng)的錯(cuò)誤率,因此第二ASR系統(tǒng)可生成比第一ASR系統(tǒng)更準(zhǔn)確的識別結(jié)果。另外,第二ASR系統(tǒng)可需要比第一ASR系統(tǒng)更高的計(jì)算成本以實(shí)現(xiàn)更高的準(zhǔn)確度。因此,第二ASR系統(tǒng)的延遲可比第一ASR系統(tǒng)的延遲更大。在一些實(shí)施例中,第二ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別引擎可不同于第一ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別引擎。具體地,第二ASR系統(tǒng)的語音識別引擎可比第一ASR系統(tǒng)的語音識別引擎更穩(wěn)健。在一些實(shí)施例中,第二ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別模型可不同于第一ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別模型。具體地,第二ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別模型可具有比第一ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別模型更大的詞匯。因此,在一些實(shí)施例中,第二識別結(jié)果可具有比第一識別結(jié)果更高的置信度量度。
在一些實(shí)施例中,框412可響應(yīng)于在框410處確定輸入包括作為第一語音輸入的至少一部分的重復(fù)的第二語音輸入而執(zhí)行。在一個(gè)此類實(shí)施例中,初始可利用默認(rèn)ASR系統(tǒng)(例如框404處的第一ASR系統(tǒng))處理在框408處接收的輸入的第二語音輸入,以生成初始識別結(jié)果。然后可基于將這個(gè)初始識別結(jié)果與第一識別結(jié)果進(jìn)行比較來確定所述輸入是否包括作為第一語音輸入的至少一部分的重復(fù)的第二語音輸入。響應(yīng)于確定框408的輸入是包括第一語音輸入的至少一部分的重復(fù)的第二語音輸入,可利用更準(zhǔn)確的ASR系統(tǒng)(例如第二ASR系統(tǒng))重新處理第二語音輸入以生成第二識別結(jié)果。第二識別結(jié)果可不同于初始識別結(jié)果,其中第二識別結(jié)果可具有比初始識別結(jié)果更高的置信度量度。
在其他實(shí)施例中,框412可在框410處確定輸入是否包括作為第一語音輸入的至少一部分的重復(fù)的第二語音輸入之前執(zhí)行。在這些實(shí)施例中,初始可利用第二ASR系統(tǒng)處理在框408處接收的輸入的第二語音輸入,以生成第二識別結(jié)果。然后可基于將第二識別結(jié)果與第一識別結(jié)果進(jìn)行比較來確定框408的輸入是否包括作為第一語音輸入的至少一部分的重復(fù)的第二語音輸入。響應(yīng)于確定所述輸入包括作為第一語音輸入的至少一部分的重復(fù)的第二語音輸入,第二識別結(jié)果可被用于過程400的后續(xù)步驟。例如,第二識別結(jié)果可用于確定組合結(jié)果(例如在框414處,將在下文中進(jìn)行描述),或者第二識別結(jié)果可用于執(zhí)行基于第二識別結(jié)果的動作(例如在框416處,將在下文中進(jìn)行描述)。
在過程400的框414處,可(例如利用STT處理模塊330)基于第一識別結(jié)果和第二識別結(jié)果確定第一組合結(jié)果。在一些實(shí)施例中,第一組合結(jié)果可包括第一識別結(jié)果的至少一部分和第二識別結(jié)果的至少一部分。例如,第二語音輸入可以是第一語音輸入的僅一部分的重復(fù)。在這些實(shí)施例中,第一識別結(jié)果和第二識別結(jié)果可被組合生成第一組合結(jié)果。在一具體實(shí)施例中,第一語音輸入可包括話語“How many calories in a kiwi fruit(在獼猴桃水果中包含多少卡路里)?”,并且第一識別結(jié)果可包括字詞序列“How many calories in a cure for it”。在這個(gè)實(shí)施例中,用戶可以只重復(fù)第一語音輸入的對應(yīng)于第一識別結(jié)果中錯(cuò)誤的部分。例如,第二語音輸入可包括話語“in a kiwi fruit(在獼猴桃水果中)”,并且第二識別結(jié)果可包括字詞序列“How in a kiwi fruit”。因此在這個(gè)實(shí)施例中,第一識別結(jié)果和第二識別結(jié)果可被組合生成第一組合結(jié)果“How many calories in a kiwi fruit?”。
另外在一些實(shí)施例中,第一識別結(jié)果和第二識別結(jié)果可借助于ASR系統(tǒng)組合而被組合以確定第一組合結(jié)果。ASR系統(tǒng)組合可結(jié)合應(yīng)用不同語音識別模型和/或語音識別引擎的多個(gè)ASR系統(tǒng)(例如第一ASR系統(tǒng)和第二ASR系統(tǒng))的識別結(jié)果,以實(shí)現(xiàn)更高的準(zhǔn)確度。因此,第一組合結(jié)果可比第一識別結(jié)果和第二識別結(jié)果中每一個(gè)都更準(zhǔn)確。ASR系統(tǒng)組合的示例包括識別輸出表決錯(cuò)誤減少(ROVER)、交叉適應(yīng)、混淆網(wǎng)絡(luò)組合和網(wǎng)格組合。
實(shí)施ASR系統(tǒng)組合的更多細(xì)節(jié)可見于以下參考文獻(xiàn):J.Fiscus,“A Post-Processing System To Yield Reduced Word Error Rates:Recognizer Output Voting Error Reduction(ROVER)”,In Proc.IEEE Automatic Speech Recognition and Understanding Workshop,第347-354頁,1997;S.Stüker、C.Fügen、S.Burger和Matthias“Cross-system adaptation and combination for continuous speech recognition:the influence of phoneme set and acoustic front-end”,In Interspeech,Pittsburgh,PA,USA,2006年9月;G.Evermann和P.Woodland,“Posterior Probability Decoding,Confidence Estimation And System Combination,In Proc.NIST Speech Transcription Workshop,”2000;L.Mangu、E.Brill、A.Stolcke,“Finding Consensus In Speech Recognition:Word Error Minimization And Other Applications Of Confusion Networks”,Computer Speech and Language 14(4),第291-294頁,2000;A.Sankar,“Bayesian model combination(baycom)for improved recognition”,In IEEE International Conference on Acoustics,Speech,and Signal Processing(ICASSP),第845-848頁,Philadelphia,PA,USA,2005年4月;所有參考文獻(xiàn)全文通過引用方式并入本文。
在過程400的框416處,可基于第二識別結(jié)果或第一組合結(jié)果執(zhí)行動作。在框416處執(zhí)行的動作可類似于在框406處執(zhí)行的動作。在一些實(shí)施例中,所述動作可包括在電子設(shè)備上顯示第二識別結(jié)果的文本或第一組合結(jié)果的文本的至少一部分。在其他實(shí)施例中,所述動作可包括執(zhí)行用于滿足包含在第一語音輸入和/或第二語音輸入中的用戶請求的任務(wù)。在另外的實(shí)施例中,所述動作可包括生成總結(jié)、描述或確認(rèn)數(shù)字助理(例如利用自然語言處理模塊332)由第二識別結(jié)果或第一組合結(jié)果推斷出的意圖的輸出(例如語音或文本)。
在框414被執(zhí)行的實(shí)施例中,在框416處執(zhí)行的動作可基于第一組合結(jié)果。然而在其他實(shí)施例中,框414可以不被執(zhí)行,并且在框416處執(zhí)行的動作可基于第二識別結(jié)果。在一個(gè)此類實(shí)施例中,第二語音輸入可以是整個(gè)第一語音輸入的重復(fù)。另外,第二識別結(jié)果可具有足夠高的置信度量度使得不必執(zhí)行ASR系統(tǒng)組合。因此在這個(gè)實(shí)施例中,在框416處執(zhí)行的動作可基于第二識別結(jié)果。
重新參見過程400的框410,可確定所述輸入不包括作為第一語音輸入的重復(fù)的第二語音輸入。在一些實(shí)施例中,可確定所述輸入包括第二語音輸入,然而第二語音輸入不是第一語音輸入的重復(fù)。在這些實(shí)施例中,第二語音輸入可包括指示第一識別結(jié)果中的潛在錯(cuò)誤的預(yù)先確定的話語。在一些實(shí)施例中,所述預(yù)先確定的話語可包括特定字詞,諸如“不”、“錯(cuò)誤”、“不對”、“不正確”、“理解錯(cuò)誤”、“不好”等等。在一些實(shí)施例中,所述預(yù)先確定的話語可包括特定短語,諸如“重試”、“那是什么?”、“你在說什么?”、“錯(cuò)得厲害”等等。在一些實(shí)施例中,所述預(yù)先確定的話語可包括對數(shù)字助理的戲謔調(diào)侃、指責(zé)、或失意表達(dá),諸如“forget you(哪里話)!”、“what(啥)????”、“ugh(呸)!”、“you stink(你糟透了)”等等。
在其他實(shí)施例中,可在框410處確定在框408處接收的輸入不包括任何語音輸入。例如,在框408處接收的輸入可包括指示第一識別結(jié)果中的潛在錯(cuò)誤的非語音輸入。在一些實(shí)施例中,所述輸入可以是示能表示的選擇。具體地,可提供在被選定時(shí)指示第一識別結(jié)果中的潛在錯(cuò)誤的示能表示。在一個(gè)實(shí)施例中,示能表示可以是物理按鈕。在另一實(shí)施例中,示能表示可以是觸摸屏元件。觸摸屏元件可與文本諸如“報(bào)告錯(cuò)誤”相關(guān)聯(lián),因此向用戶告知選定該觸摸屏元件將指示第一識別結(jié)果中的潛在錯(cuò)誤。
在第一識別結(jié)果的文本的至少一部分被顯示在電子設(shè)備上(例如在框406處)的實(shí)施例中,所述輸入可以是所顯示文本的至少一部分的選擇。具體地,用戶可經(jīng)由觸摸屏(例如觸摸屏246)或其他輸入/控制設(shè)備(例如其他輸入/控制設(shè)備248)突出顯示電子設(shè)備上第一識別結(jié)果的所顯示文本的至少一部分。所選定的部分還可指示第一識別結(jié)果的文本的與潛在錯(cuò)誤相關(guān)聯(lián)的部分。
在一些實(shí)施例中,在框408處接收的輸入可以是電子設(shè)備的預(yù)先確定的運(yùn)動。所述預(yù)先確定的運(yùn)動可由電子設(shè)備的運(yùn)動傳感器(例如運(yùn)動傳感器210)來檢測。在一個(gè)此類實(shí)施例中,所述預(yù)先確定的運(yùn)動可以是搖晃運(yùn)動。另外,所述預(yù)先確定的運(yùn)動可具有特定運(yùn)動模式(例如特定速度、頻率和/或移動幅度)。
在一些實(shí)施例中,在框408處接收的輸入可以是與在框406處執(zhí)行的動作相關(guān)聯(lián)的拒絕或取消。在一個(gè)此類實(shí)施例中,在框406處執(zhí)行的動作可包括響應(yīng)于第一語音輸入“給Tim Carpenter打電話”而給“Jim Carpenter”打電話。在這個(gè)實(shí)施例中,在框408處接收的輸入可包括取消對“Jim Carpenter”的電話呼叫。在其他實(shí)施例中,所述輸入可包括數(shù)字助理拒絕所提議的任務(wù)。在一個(gè)此類實(shí)施例中,在框406處執(zhí)行的動作可包括基于第一語音輸入“給Tim Carpenter打電話”而輸出問題“您是想給Jim Carpenter打電話嗎?”。在這個(gè)實(shí)施例中,響應(yīng)于這個(gè)問題而接收的輸入可包括響應(yīng)“不”或指示對該問題的拒絕的類似輸入。
在過程400的框418處,可提示用戶重復(fù)第一語音輸入的至少一部分???18可響應(yīng)于在框408處接收指示第一識別結(jié)果中的潛在錯(cuò)誤的輸入而被執(zhí)行。另外在一些實(shí)施例中,框418可響應(yīng)于在框410處確定在框408處接收的輸入不包括作為第一語音輸入的至少一部分的重復(fù)的第二語音輸入而執(zhí)行。在框418處提供的提示可包括請求用戶重復(fù)第一語音輸入的至少一部分的輸出(例如語音或文本)。例如,在電子設(shè)備上實(shí)施的數(shù)字助理可通過輸出“對不起–您能重復(fù)您的請求嗎?”來提示用戶。
框418還可包括識別第一語音輸入的與第一語音識別中潛在錯(cuò)誤相關(guān)聯(lián)的部分。在一些實(shí)施例中,可基于第一識別結(jié)果的置信度量度來識別第一語音輸入的與潛在錯(cuò)誤相關(guān)聯(lián)的部分。具體地,置信度量度可指示利用第一ASR系統(tǒng)從第一語音輸入得到的每個(gè)字詞或音素的置信度。第一語音輸入的與置信度量度低于預(yù)先確定的值的字詞或音素對應(yīng)的部分可被識別為第一語音輸入的與第一語音識別中潛在錯(cuò)誤相關(guān)聯(lián)的部分。在這個(gè)具體實(shí)施例中,第一語音輸入可包括“給Tim Carpenter打電話”,并且第一識別結(jié)果可包括文本“給Jim Carpenter打電話”。另外,第一識別結(jié)果可包括文本中每個(gè)字詞的置信度量度。在這個(gè)實(shí)施例中,字詞“打電話”和“Carpenter”可各自具有高于預(yù)先確定的值的置信度量度,而字詞“Jim”可具有低于所述預(yù)先確定值的置信度量度。因此在這個(gè)實(shí)施例中,第一語音輸入中的部分“Tim”可被識別為與第一語音識別中的潛在錯(cuò)誤相關(guān)聯(lián)。于是可提示用戶重復(fù)第一語音輸入的被識別為與第一語音識別中潛在錯(cuò)誤相關(guān)聯(lián)的部分。在這個(gè)實(shí)施例中,數(shù)字助理可通過輸出“您能重復(fù)一下您想要打電話給的那個(gè)人的名字嗎?”來提示用戶。
在過程400的框420處,可從用戶接收第三語音輸入。第三語音輸入可以是第一語音輸入的至少一部分的重復(fù)。用戶可響應(yīng)于在框418處提供的提示而提供第三語音輸入。第三語音輸入可隨后用于改善識別結(jié)果,并因此降低相同錯(cuò)誤重新出現(xiàn)的概率。
在過程400的框422處,可利用第二ASR系統(tǒng)處理第三語音輸入,以生成第三識別結(jié)果。第三語音輸入可以與框412處的第二語音輸入類似的方式來進(jìn)行處理。在一些實(shí)施例中,第三識別結(jié)果可包括中間識別結(jié)果,諸如音素和子字詞(例如音節(jié)、詞素等)。在一些實(shí)施例中,第三識別結(jié)果可包括與第三語音輸入的至少一部分對應(yīng)的文本諸如字詞或字詞序列。另外,第三識別結(jié)果可包括從第三語音輸入得到的每個(gè)音素、音素序列、子字詞、字詞、或字詞序列的置信度量度。
如上所述,第二ASR系統(tǒng)可以與第一ASR系統(tǒng)相同。在其他實(shí)施例中,第二ASR系統(tǒng)可與第一ASR系統(tǒng)不同。第二ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別模型可不同于第一ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別模型。另外,第二ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別引擎可不同于第一ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別引擎。在一些實(shí)施例中,第二ASR系統(tǒng)的錯(cuò)誤率可以比第一ASR系統(tǒng)的錯(cuò)誤率低。在一些實(shí)施例中,第二ASR系統(tǒng)的延遲可以比第一ASR系統(tǒng)的延遲更大。
在過程400的框424處,可基于第一識別結(jié)果和第三識別結(jié)果確定第二組合結(jié)果。第二組合結(jié)果可以與框414處的第一組合結(jié)果類似的方式來確定。在一些實(shí)施例中,第二組合結(jié)果可包括第一識別結(jié)果的至少一部分和第三識別結(jié)果的至少一部分。在一些實(shí)施例中,第一識別結(jié)果和第三識別結(jié)果可借助于ASR系統(tǒng)組合被組合以生成第二組合結(jié)果。
在過程400的框426處,可基于第三識別結(jié)果或第二組合結(jié)果執(zhí)行動作。在框426處執(zhí)行的動作可類似于在框416處執(zhí)行的動作。在一些實(shí)施例中,所述動作可包括在電子設(shè)備上顯示第三識別結(jié)果或第二組合結(jié)果的文本的至少一部分。在其他實(shí)施例中,所述動作可包括執(zhí)行用于滿足包含在第一語音輸入和/或第三語音輸入中的用戶請求的任務(wù)。在另外的實(shí)施例中,所述動作可包括生成總結(jié)、描述或確認(rèn)數(shù)字助理(例如利用自然語言處理模塊332)由第三識別結(jié)果或第二組合結(jié)果推斷出的意圖的輸出(例如語音或文本)。在框424被執(zhí)行的實(shí)施例中,在框426處執(zhí)行的動作可基于第二組合結(jié)果。然而在框424不被執(zhí)行的實(shí)施例中,在框426處執(zhí)行的動作可至少部分地基于第三識別結(jié)果。
在過程400的框428處,可利用第二ASR系統(tǒng)處理第一語音輸入,以生成第四識別結(jié)果。在一些實(shí)施例中,框428可響應(yīng)于在框408處接收指示第一識別結(jié)果中的潛在錯(cuò)誤的輸入而被執(zhí)行。在一些實(shí)施例中,框428可響應(yīng)于在框410處確定在框408處接收的輸入不包括作為第一語音輸入的至少一部分的重復(fù)的第二語音輸入而執(zhí)行。
可利用第二ASR系統(tǒng)以與在框412處利用第二ASR系統(tǒng)處理第二語音輸入類似的方式處理第一語音輸入。在一些實(shí)施例中,第二ASR系統(tǒng)可與第一ASR系統(tǒng)不同。在一個(gè)此類實(shí)施例中,第二ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別引擎可不同于第一ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別引擎。在另一個(gè)此類實(shí)施例中,第二ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別模型可不同于第一ASR系統(tǒng)的所述一個(gè)或多個(gè)語音識別模型。在一些實(shí)施例中,第二ASR系統(tǒng)可比第一ASR系統(tǒng)更準(zhǔn)確,因此具有更低的錯(cuò)誤率。為了降低相同錯(cuò)誤重新出現(xiàn)的概率,利用另一更準(zhǔn)確的ASR系統(tǒng)重新處理第一語音輸入可以是可取的。這可導(dǎo)致改善的后續(xù)語音識別,因此改善用戶體驗(yàn)。在一些實(shí)施例中,第二ASR系統(tǒng)可比第一ASR系統(tǒng)具有更大的延遲,這是因?yàn)榕c更準(zhǔn)確的ASR系統(tǒng)相關(guān)聯(lián)的更高的計(jì)算成本。為了實(shí)現(xiàn)更準(zhǔn)確的識別結(jié)果以及降低相同錯(cuò)誤重新出現(xiàn)的概率,更大的延遲可以是可接受的妥協(xié)。具體地,在發(fā)現(xiàn)了與識別結(jié)果相關(guān)聯(lián)的錯(cuò)誤之后,用戶可能通常愿意等待更長的時(shí)間得到更準(zhǔn)確的結(jié)果,而不是在較短時(shí)間段后再次發(fā)生相同的錯(cuò)誤。
在一些實(shí)施例中,可利用第二ASR系統(tǒng)處理第一語音輸入的僅一部分,以生成第四識別結(jié)果。具體地,框428可包括識別第一語音輸入的與第一語音識別中潛在錯(cuò)誤相關(guān)聯(lián)的部分。然后可利用第二ASR系統(tǒng)處理第一語音輸入的與潛在錯(cuò)誤相關(guān)聯(lián)的部分,以生成第四識別結(jié)果。第一語音輸入的與潛在錯(cuò)誤相關(guān)聯(lián)的部分可以與框418中所述類似的方式來識別。例如,可基于第一識別結(jié)果的置信度量度來識別第一語音輸入的與潛在錯(cuò)誤相關(guān)聯(lián)的部分。
在過程400的框430處,可基于第一識別結(jié)果和第四識別結(jié)果確定第三組合結(jié)果??梢耘c框414處的第一組合結(jié)果和框424處的第二組合結(jié)果類似的方式來確定第三組合結(jié)果。在一些實(shí)施例中,第三組合結(jié)果可包括第一識別結(jié)果的至少一部分和第四識別結(jié)果的至少一部分。在一些實(shí)施例中,第一識別結(jié)果和第四識別結(jié)果可借助于ASR系統(tǒng)組合被組合以生成第三組合結(jié)果。
在過程400的框432處,可基于第四識別結(jié)果或第三組合結(jié)果執(zhí)行動作。在框432處執(zhí)行的動作可類似于在框416或426處執(zhí)行的動作。在一些實(shí)施例中,所述動作可包括在電子設(shè)備上顯示第四識別結(jié)果或第三組合結(jié)果的文本的至少一部分。在其他實(shí)施例中,所述動作可包括執(zhí)行用于滿足包含在第一語音輸入和/或第四語音輸入中的用戶請求的任務(wù)。在另外的實(shí)施例中,所述動作可包括生成總結(jié)、描述或確認(rèn)數(shù)字助理(例如利用自然語言處理模塊332)由第四識別結(jié)果或第三組合結(jié)果推斷出的意圖的輸出(例如語音或文本)。在框430被執(zhí)行的實(shí)施例中,在框432處執(zhí)行的動作可基于第三組合結(jié)果。然而在框430不被執(zhí)行的實(shí)施例中,在框432處執(zhí)行的動作可至少部分地基于第四識別結(jié)果。
雖然過程400的框402至框432在圖4A-圖4B中按特定次序示出,但應(yīng)當(dāng)理解,這些框可按任意次序執(zhí)行。例如,在一些實(shí)施例中,框412可在框410之前執(zhí)行或與框410同時(shí)執(zhí)行。另外應(yīng)當(dāng)理解,在一些情況下,過程400的一個(gè)或多個(gè)框可以是任選的,并且還可執(zhí)行附加框。例如在一些實(shí)施例中,過程400可包括框402、404、408和412,而其余的框是任選的。在其他實(shí)施例中,過程400可包括框402、404、408、418、420和422,而其余的框是任選的。在另外的實(shí)施例中,過程400可包括框402、404、408和428,而其余的框是任選的。
5.電子設(shè)備
圖5示出根據(jù)各種所述實(shí)施例的原理進(jìn)行配置的電子設(shè)備500的功能框圖。設(shè)備的功能塊可任選地由執(zhí)行各種所述實(shí)施例的原理的硬件、軟件或硬件和軟件的組合來實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,圖5中所述的功能塊可任選地被組合或被分離為子塊,以便實(shí)現(xiàn)各種所述實(shí)施例的原理。因此,本文的描述任選地支持本文所述的功能塊的任何可能的組合、分離或進(jìn)一步限定。
如圖5所示,電子設(shè)備500可包括被配置為顯示用戶界面并接收來自用戶的輸入的觸摸屏顯示單元502、被配置為接收語音輸入的音頻輸入單元504、被配置為接收來自用戶的輸入的輸入單元506和被配置為輸出音頻的揚(yáng)聲器單元508。在一些實(shí)施例中,音頻輸入單元504可被配置為接收來自用戶的聲波形式的語音輸入,并將語音輸入以代表性信號的形式傳輸給處理單元510。電子設(shè)備500還可包括耦接到觸摸屏顯示單元502、音頻輸入單元504、輸入單元506和揚(yáng)聲器單元508的處理單元510。在一些實(shí)施例中,處理單元510可包括接收單元512、語音處理單元514、確定單元516、執(zhí)行單元518、提示單元520和識別單元522。
處理單元510被配置為(例如從音頻輸入單元504并且利用接收單元512)從用戶接收第一語音輸入。處理單元510被配置為(例如利用語音處理單元514)利用第一自動語音識別系統(tǒng)處理第一語音輸入,以生成第一識別結(jié)果。處理單元510被配置為(例如從輸入單元506并且利用接收單元512)從用戶接收指示第一識別結(jié)果中的潛在錯(cuò)誤的輸入。所述輸入可包括第二語音輸入。處理單元510被配置為(例如利用語音處理單元514)利用第二自動語音識別系統(tǒng)處理第二語音輸入,以生成第二識別結(jié)果。在一些實(shí)施例中,第二語音輸入是第一語音輸入的至少一部分的重復(fù)。
在一些實(shí)施例中,處理單元510被配置為(例如利用確定單元516)確定第二語音輸入是否包括第一語音輸入的至少一部分的重復(fù)。在一些實(shí)施例中,響應(yīng)于確定第二語音輸入包括第一語音輸入的至少一部分的重復(fù),利用第二自動語音識別系統(tǒng)處理第二語音輸入以生成第二識別結(jié)果。在一些實(shí)施例中,確定第二語音輸入是否包括第一語音輸入的至少一部分的重復(fù)包括相對于第一語音輸入的對應(yīng)部分的音素轉(zhuǎn)錄來確定第二語音輸入的音素轉(zhuǎn)錄錯(cuò)誤率是否小于預(yù)先確定的值。在一些實(shí)施例中,確定第二語音輸入是否包括第一語音輸入的至少一部分的重復(fù)包括將第二語音輸入的音頻波形與第一語音輸入的對應(yīng)部分的音頻波形進(jìn)行比較。
在一些實(shí)施例中,處理單元510被配置為(例如利用執(zhí)行單元518)執(zhí)行基于第一識別結(jié)果的動作。在一些實(shí)施例中,所述動作包括在電子設(shè)備上顯示第一識別結(jié)果的文本的至少一部分。在一些實(shí)施例中,第一語音輸入包含用戶請求,并且所述動作包括執(zhí)行用于滿足用戶請求的任務(wù)。
在一些實(shí)施例中,第一自動語音識別系統(tǒng)和第二自動語音識別系統(tǒng)是相同的自動語音識別系統(tǒng)。在一些實(shí)施例中,第一自動語音識別系統(tǒng)和第二自動語音識別系統(tǒng)是不同的自動語音識別系統(tǒng)。在一些實(shí)施例中,第一自動語音識別系統(tǒng)包括一個(gè)或多個(gè)語音識別模型,第二自動語音識別系統(tǒng)包括與第一自動語音識別系統(tǒng)的所述一個(gè)或多個(gè)語音識別模型不同的一個(gè)或多個(gè)語音識別模型。在一些實(shí)施例中,第一自動語音識別系統(tǒng)包括語音識別引擎,第二自動語音識別系統(tǒng)包括與第一自動語音識別系統(tǒng)的語音識別引擎不同的語音識別引擎。
在一些實(shí)施例中,處理單元510被配置為(例如利用確定單元516)基于第一識別結(jié)果和第二識別結(jié)果確定組合結(jié)果。在一些實(shí)施例中,處理單元510被配置為(例如利用執(zhí)行單元518)執(zhí)行基于組合結(jié)果的動作。在一些實(shí)施例中,組合結(jié)果是通過利用第一識別結(jié)果和第二識別結(jié)果執(zhí)行自動語音識別系統(tǒng)組合來確定的。在一些實(shí)施例中,執(zhí)行自動語音識別系統(tǒng)組合包括實(shí)施以下中至少一者:識別輸出表決錯(cuò)誤減少、交叉適應(yīng)、混淆網(wǎng)絡(luò)組合和網(wǎng)格組合。
在一些實(shí)施例中,處理單元510被配置為(例如利用執(zhí)行單元518)執(zhí)行基于第二識別結(jié)果的動作。在一些實(shí)施例中,所述動作包括在電子設(shè)備上顯示第二識別結(jié)果的文本的至少一部分。在一些實(shí)施例中,第一語音輸入包含用戶請求,并且所述動作包括執(zhí)行用于滿足用戶請求的任務(wù)。
在一些實(shí)施例中,處理單元510被配置為(例如從音頻輸入單元504并且利用接收單元512)從用戶接收第一語音輸入。處理單元510被配置為(例如利用語音處理單元514)利用第一自動語音識別系統(tǒng)處理第一語音輸入,以生成第一識別結(jié)果。處理單元510被配置為(例如從輸入單元506并且利用接收單元512)從用戶接收指示第一識別結(jié)果中的潛在錯(cuò)誤的輸入。在一些實(shí)施例中,處理單元510被配置為(例如利用提示單元520并經(jīng)由觸摸屏顯示單元502或揚(yáng)聲器單元508)提示用戶重復(fù)第一語音輸入的至少一部分。在一些實(shí)施例中,處理單元510被配置為(例如從音頻輸入單元504并且利用接收單元512)從用戶接收第二語音輸入。處理單元510被配置為(例如利用語音處理單元514)利用第二自動語音識別系統(tǒng)處理第二語音輸入,以生成第二識別結(jié)果。
在一些實(shí)施例中,所述輸入是包括預(yù)先確定的話語的語音輸入。在一些實(shí)施例中,所述輸入是電子設(shè)備的預(yù)先確定的運(yùn)動。在一些實(shí)施例中,所述輸入是示能表示的選擇。在一些實(shí)施例中,第一識別結(jié)果的文本被顯示在電子設(shè)備上,所述輸入是所顯示文本的至少一部分的選擇。在一些實(shí)施例中,所述輸入與提議的任務(wù)的拒絕相關(guān)聯(lián)。
在一些實(shí)施例中,處理單元510被配置為(例如利用識別單元522)識別第一語音輸入的與第一識別結(jié)果中的潛在錯(cuò)誤對應(yīng)的部分。在一些實(shí)施例中,利用第一自動語音識別系統(tǒng)處理第一語音輸入包括確定第一識別結(jié)果的文本中每個(gè)字詞的置信度量度。在一些實(shí)施例中,第一語音輸入的與潛在錯(cuò)誤相關(guān)聯(lián)的部分是基于文本中每個(gè)字詞的置信度量度來識別。在一些實(shí)施例中,提示用戶重復(fù)第一語音輸入的與潛在錯(cuò)誤對應(yīng)的所識別的部分。
在一些實(shí)施例中,處理單元510被配置為執(zhí)行與第一語音輸入相關(guān)聯(lián)的動作。在一些實(shí)施例中,所述動作包括在電子設(shè)備上顯示第一識別結(jié)果的文本的至少一部分。在一些實(shí)施例中,第一語音輸入包含用戶請求,并且所述動作包括執(zhí)行用于滿足用戶請求的任務(wù)。
在一些實(shí)施例中,第一自動語音識別系統(tǒng)和第二自動語音識別系統(tǒng)是相同的自動語音識別系統(tǒng)。在一些實(shí)施例中,第一自動語音識別系統(tǒng)和第二自動語音識別系統(tǒng)是不同的自動語音識別系統(tǒng)。在一些實(shí)施例中,第一自動語音識別系統(tǒng)包括一個(gè)或多個(gè)語音識別模型,第二自動語音識別系統(tǒng)包括與第一自動語音識別系統(tǒng)的所述一個(gè)或多個(gè)語音識別模型不同的一個(gè)或多個(gè)語音識別模型。在一些實(shí)施例中,第一自動語音識別系統(tǒng)包括語音識別引擎,第二自動語音識別系統(tǒng)包括與第一自動語音識別系統(tǒng)的語音識別引擎不同的語音識別引擎。
在一些實(shí)施例中,處理單元510被配置為(例如利用確定單元516)基于第一識別結(jié)果和第二識別結(jié)果確定組合結(jié)果。在一些實(shí)施例中,處理單元510被配置為(例如利用執(zhí)行單元518)執(zhí)行基于組合結(jié)果的動作。在一些實(shí)施例中,組合結(jié)果是通過利用第一識別結(jié)果和第二識別結(jié)果執(zhí)行自動語音識別系統(tǒng)組合來確定的。在一些實(shí)施例中,執(zhí)行自動語音識別系統(tǒng)組合包括實(shí)施以下中至少一者:識別輸出表決錯(cuò)誤減少、交叉適應(yīng)、混淆網(wǎng)絡(luò)組合和網(wǎng)格組合。
在一些實(shí)施例中,處理單元510被配置為(例如從音頻輸入單元504并且利用接收單元512)從用戶接收語音輸入。處理單元510被配置為(例如利用語音處理單元514)利用第一自動語音識別系統(tǒng)處理語音輸入,以生成第一識別結(jié)果。處理單元510被配置為(例如從輸入單元506并且利用接收單元512)從用戶接收指示第一識別結(jié)果中的潛在錯(cuò)誤的輸入。在一些實(shí)施例中,處理單元510被配置為(例如利用語音處理單元514)利用第二自動語音識別系統(tǒng)處理語音輸入,以生成第二識別結(jié)果。
在一些實(shí)施例中,第二自動語音識別系統(tǒng)的錯(cuò)誤率比第一自動語音識別系統(tǒng)的錯(cuò)誤率低。在一些實(shí)施例中,第二自動語音識別系統(tǒng)的延遲比第一自動語音識別系統(tǒng)的延遲大。
在一些實(shí)施例中,第一自動語音識別系統(tǒng)包括一個(gè)或多個(gè)語音識別模型,第二自動語音識別系統(tǒng)包括與第一自動語音識別系統(tǒng)的所述一個(gè)或多個(gè)語音識別模型不同的一個(gè)或多個(gè)語音識別模型。在一些實(shí)施例中,第一自動語音識別系統(tǒng)包括語音識別引擎,第二自動語音識別系統(tǒng)包括與第一自動語音識別系統(tǒng)的語音識別引擎不同的語音識別引擎。
在一些實(shí)施例中,所述輸入是包含預(yù)先確定的話語的語音輸入。在一些實(shí)施例中,所述輸入是示能表示的選擇。在一些實(shí)施例中,所述輸入與提議的任務(wù)的拒絕相關(guān)聯(lián)。
在一些實(shí)施例中,處理單元510被配置為(例如利用識別單元522)識別語音輸入的與第一識別結(jié)果中的潛在錯(cuò)誤對應(yīng)的部分。在一些實(shí)施例中,利用第二自動語音識別系統(tǒng)處理第一語音輸入的與潛在錯(cuò)誤對應(yīng)的所識別的部分,以生成第二識別結(jié)果。
在一些實(shí)施例中,處理單元510被配置為(例如利用確定單元516)基于第一識別結(jié)果和第二識別結(jié)果確定組合結(jié)果。在一些實(shí)施例中,處理單元510被配置為(例如利用執(zhí)行單元518)執(zhí)行基于組合結(jié)果的動作。在一些實(shí)施例中,組合結(jié)果是通過利用第一識別結(jié)果和第二識別結(jié)果執(zhí)行自動語音識別系統(tǒng)組合來確定的。在一些實(shí)施例中,執(zhí)行系統(tǒng)組合包括實(shí)施以下中至少一者:識別輸出表決錯(cuò)誤減少、交叉適應(yīng)、混淆網(wǎng)絡(luò)組合和網(wǎng)格組合。
在一些實(shí)施例中,處理單元510被配置為(例如利用執(zhí)行單元518)執(zhí)行基于第一識別結(jié)果的動作。在一些實(shí)施例中,處理單元510被配置為(例如利用執(zhí)行單元518)執(zhí)行基于第二識別結(jié)果的動作。
在一些實(shí)施例中,處理單元510被配置為(例如從音頻輸入單元504并且利用接收單元512)從用戶接收第一語音輸入。處理單元510被配置為(例如利用語音處理單元514)利用第一自動語音識別系統(tǒng)處理第一語音輸入,以生成第一識別結(jié)果。處理單元510被配置為(例如從輸入單元506并且利用接收單元512)從用戶接收指示第一識別結(jié)果中的潛在錯(cuò)誤的輸入。在一些實(shí)施例中,處理單元510被配置為(例如利用確定單元516)確定所述輸入是否包括重復(fù)第一語音輸入的至少一部分的第二語音輸入。在一些實(shí)施例中,響應(yīng)于確定所述輸入包括重復(fù)第一語音輸入的至少一部分的第二語音輸入,處理單元510被配置為(例如利用語音處理單元514)利用第二自動語音識別系統(tǒng)處理第二語音輸入,以生成第二識別結(jié)果。在一些實(shí)施例中,響應(yīng)于確定所述輸入不包括重復(fù)第一語音輸入的至少一部分的第二語音輸入,處理單元510被配置為(例如利用提示單元520)提示用戶重復(fù)第一語音輸入的至少一部分,(例如從音頻輸入單元504并利用接收單元512)從用戶接收第三語音輸入,并(例如利用語音處理單元514)利用第二自動語音識別系統(tǒng)處理第三語音輸入以生成第三識別結(jié)果。
雖然參照附圖對示例進(jìn)行了全面的描述,但應(yīng)注意,各種變化和修改對于本領(lǐng)域內(nèi)的技術(shù)人員而言將變得顯而易見。應(yīng)當(dāng)理解,此類變化和修改被認(rèn)為包括在由所附權(quán)利要求所限定的各種示例的范圍內(nèi)。