用于虛擬個人助理的可擴展上下文感知的自然語言交互的制作方法
【專利說明】
【背景技術(shù)】
[0001]虛擬個人助理是響應于來自用戶的自然語言請求而在計算裝置上執(zhí)行任務的人工智能系統(tǒng)。典型的虛擬個人助理是處置用戶任務的有限集合(諸如日歷、提醒和消息)的單一應用。那些虛擬個人助理理解如何響應于與那些任務關(guān)聯(lián)的若干自然語言短語。擴展虛擬個人助理的能力一般需要廣泛的修改以分析并響應于與新能力相關(guān)的自然語言。例如,基于語法模型的系統(tǒng)必須基本上對于任何新詞匯或短語行為都改變。類似地,基于口述模型的系統(tǒng)可需要廣泛的努力來集成需要的說出的數(shù)據(jù)的訓練集合。當添加附加能力時,集成新能力所需的努力和/或數(shù)據(jù)量可指數(shù)增加。
【附圖說明】
[0002]在附圖中作為示例而非作為限制圖示本文描述的概念。為了圖示的簡潔和清晰起見,在附圖中圖示的元件不一定按比例繪制。在適當?shù)牡胤?,附圖標記在各圖之間重復以指示對應或類似元件。
[0003]圖1是與虛擬個人助理進行上下文感知的自然語言交互的可擴展系統(tǒng)的至少一個實施例的簡化框圖;
圖2是圖1計算裝置的環(huán)境的至少一個實施例的簡化框圖;
圖3是圖1計算裝置和VPA服務器的一對環(huán)境的至少一個實施例的簡化框圖;
圖4是可由圖1-3的計算裝置執(zhí)行的用于上下文感知的數(shù)據(jù)捕獲的方法的至少一個實施例的簡化流程圖;
圖5是可由圖1和圖2的計算裝置執(zhí)行的用于上下文感知的自然語言交互的方法的至少一個實施例的簡化流程圖;
圖6是可由圖1-3的系統(tǒng)執(zhí)行的用于上下文請求解釋的方法的至少一個實施例的簡化流程圖;
圖7是可由圖1和圖3的VPA服務器執(zhí)行的用于上下文感知的自然語言交互的方法的至少一個實施例的簡化流程圖;以及
圖8是可由圖1和圖3的計算裝置執(zhí)行的用于上下文感知的自然語言交互的方法的至少一個實施例的簡化流程圖。
【具體實施方式】
[0004]雖然本公開的概念易受到各種修改和備選形式,但其特定實施例已經(jīng)在附圖中作為示例示出,并且將在本文中詳細描述。然而,應該理解,沒有意圖將本公開的概念局限于所公開的具體形式,而是相反,本發(fā)明覆蓋與本公開和所附權(quán)利要求書一致的所有修改、等效和備選。
[0005]在說明書中提到“一個實施例”、“實施例”、“圖示實施例”等指示所描述的實施例可包含具體特征、結(jié)構(gòu)或特性,但每一個實施例可以一定或者可以不一定包含該具體特征、結(jié)構(gòu)或特性。而且,此類短語不一定是指同一實施例。另外,當結(jié)合實施例描述具體特征、結(jié)構(gòu)或特性時,認為結(jié)合不管是否明確描述的其它實施例實現(xiàn)此類特征、結(jié)構(gòu)或特性在本領(lǐng)域技術(shù)人員的知識范圍內(nèi)。此外,應該認識到,包含在以“至少一個A、B和C”形式的列表中的項目可意味著(A); (B); (C); (A和B); (B和C)或(A,B和C)。類似地,包含在以“A、B或C中的至少一個”形式的列表中的項目可意味著(A) ; (B) ; (C) ; (A和B) ; (B和C)或(A, B和C)
所公開的實施例在一些情況下可用硬件、固件、軟件或它們的任何組合來實現(xiàn)。所公開的實施例也可實現(xiàn)為由易失性或非易失性機器可讀(例如計算機可讀)介質(zhì)攜帶或存儲在其上的指令,其可由一個或多個處理器讀取和執(zhí)行。機器可讀存儲介質(zhì)可實施為用于存儲或傳送由機器(例如易失性或非易失性存儲器、媒體盤或其它媒體裝置)可讀形式的信息的任何存儲裝置、機制或其它物理結(jié)構(gòu)。
[0006]在附圖中,一些結(jié)構(gòu)或方法特征可按特定布置和/或排序示出。然而,應該認識到,可能不需要此類特定布置和/或排序。而是,在一些實施例中,此類特征可按與在說明性附圖中示出的不同的方式和/或次序布置。此外,在具體附圖中包含結(jié)構(gòu)或方法特征不打算暗示此類特征在所有實施例中都需要,并且在一些實施例中,可能不包含或者可與其它特征組合。
[0007]現(xiàn)在參考圖1,用于與虛擬個人助理(VPA)進行可擴展上下文感知的自然語言交互的說明性系統(tǒng)100包含計算裝置102,在一些實施例中還有VPA服務器104,它們可通過網(wǎng)絡(luò)106彼此通信。在使用時,計算裝置102的用戶發(fā)起VPA命令,并向計算裝置102說出自然語言請求??稍谟嬎阊b置102上本地執(zhí)行或在遠程VPA服務器104上遠程執(zhí)行的虛擬個人助理解釋請求,并執(zhí)行請求的數(shù)據(jù)操作。虛擬個人助理可索引并搜索許多語言模型,它們各與具體情境上下文(例如用戶的當前位置)關(guān)聯(lián)以便找到用戶請求的最佳解釋。當嘗試理解自然語言請求時應用對具體上下文特定的語言模仿人類行為,并且從而可改進與虛擬個人助理的交互質(zhì)量。
[0008]計算裝置102使用也基于請求的具體上下文生成的用戶接口元素呈現(xiàn)可從VPA月艮務器104接收的用戶查詢的結(jié)果。語言模型、數(shù)據(jù)操作映射和用戶接口元素映射全都與具體上下文源(例如安裝在計算裝置102上的位置或具體活動上下文源)關(guān)聯(lián)。那些相同上下文源還捕獲并解釋由計算裝置102的上下文傳感器生成的數(shù)據(jù)。從而,虛擬個人助理的能力和可用上下文可通過安裝附加上下文源來擴展,每一個附加上下文源都包含解釋自然語言、處置用戶請求并顯示結(jié)果所必需的所有元數(shù)據(jù)。因而,數(shù)據(jù)捕獲、語言和數(shù)據(jù)交互的詳情可全都封裝在上下文源中,這可改進可擴展性,并降低虛擬個人助理的開發(fā)復雜性。
[0009]計算裝置102可被實施為能夠執(zhí)行本文描述的功能的任何類型裝置。例如,計算裝置102可實施為(而非限制):智能電話、蜂窩電話、平板計算機、筆記本計算機、膝上型計算機、臺式計算機、分布式計算系統(tǒng)、微處理器系統(tǒng)、消費電子裝置、智能電器和/或能夠識別所說用戶命令的任何其它計算裝置。如圖1所示,說明性計算裝置102包含處理器120、1/0子系統(tǒng)122、存儲器124和數(shù)據(jù)存儲裝置126。當然,在其它實施例中,計算裝置102可包含其它或附加組件,諸如在便攜計算機中發(fā)現(xiàn)的組件(例如各種輸入/輸出裝置)。此外,在一些實施例中,其中一個或多個說明性組件可結(jié)合在另一組件中,或另外來自另一組件的一部分。例如,在一些實施例中,存儲器124或其部分可結(jié)合在處理器120中。
[0010]處理器120可被實施為能夠執(zhí)行本文描述的功能的任何類型的處理器。例如,處理器可實施為單核或多核處理器、數(shù)字信號處理器、微控制器或其它處理器或處理/控制電路。類似地,存儲器124可實施為能夠執(zhí)行本文描述的功能的任何類型易失性或非易失性存儲器或數(shù)據(jù)存儲裝置。在操作中,存儲器124可存儲在計算裝置102操作期間使用的各種數(shù)據(jù)和軟件,諸如操作系統(tǒng)、應用、程序、庫以及驅(qū)動。存儲器124以通信方式經(jīng)由I/O子系統(tǒng)122耦合到處理器120,1/0子系統(tǒng)104可實施為電路和/或組件以便于與計算裝置102的處理器120、存儲器124和/或其它組件的輸入/輸出操作。例如,I/O子系統(tǒng)122可實施為或另外包含存儲器控制器集線器、輸入/輸出控制集線器、固件裝置、通信鏈路(即,點對點鏈路、總線鏈路、導線、電纜、光導、印刷電路板跡線等)和/或其它組件和子系統(tǒng)以便于輸入/輸出操作。在一些實施例中,I/O子系統(tǒng)122可形成片上系統(tǒng)(SoC)的一部分,并與計算裝置102的處理器120、存儲器124和其它組件一起結(jié)合在單個集成電路芯片上。
[0011]數(shù)據(jù)存儲裝置126可實施為配置用于數(shù)據(jù)的短期存儲或長期存儲的任何類型裝置,諸如例如存儲器裝置和電路、存儲卡、硬盤驅(qū)動器、固態(tài)驅(qū)動器或其它數(shù)據(jù)存儲裝置。數(shù)據(jù)存儲裝置126可存儲對計算裝置102可用的上下文源的程序文件、插件或外掛模塊,并且可充當由計算裝置102捕獲的音頻數(shù)據(jù)的臨時或永久存儲裝置。
[0012]計算裝置102還包含顯示器128、通信電路130和音頻傳感器132。計算裝置102的顯示器128可實施為能夠顯示數(shù)字信息的任何類型顯示器,諸如液晶顯示器(IXD)、發(fā)光二極管(LED)、等離子顯示器、陰極射線管(CRT)或其它類型顯示裝置。在一些實施例中,顯示器128可耦合到觸摸屏以便接收用戶輸入。
[0013]計算裝置102的通信電路130可實施為能夠?qū)崿F(xiàn)計算裝置102、VPA服務器104和/或其它遠程裝置之間通信的任何通信電路、裝置或它們的集合。通信電路130可配置成使用任一個或多個通信技術(shù)(例如無線或有線通信)以及關(guān)聯(lián)的協(xié)議(例如以太網(wǎng)、藍牙?、W1-Fi?、WiMAX等)來實現(xiàn)此類通信。
[0014]音頻傳感器132可實施為能夠捕獲音頻信號的任何傳感器,諸如麥克風、線路輸入插孔和關(guān)聯(lián)的電路、模數(shù)轉(zhuǎn)換器(ADC)或其它類型音頻傳感器。音頻傳感器132可由計算裝置102用于檢測由用戶發(fā)出的語音命令,如下面所描述的。
[0015]計算裝置102還包含位置電路134,并且可包含一個或多個其它上下文傳感器136。位置電路134可實施為能夠確定計算裝置102的精確定位或者大致定位的任何類型傳感器或電路。例如,位置電路134可實施為能夠確定計算裝置102的精確坐標的全球定位系統(tǒng)("GPS")接收器。在其它實施例中,位置電路134可使用由通信電路130提供的與具有已知定位的蜂窩網(wǎng)絡(luò)塔的距離和/或角度來使用三邊測量和/或三角測量來確定計算裝置102的定位。在其它實施例中,位置電路134可使用通信電路130基于與具有已知定位的無線網(wǎng)絡(luò)的關(guān)聯(lián)來確定計算裝置102的大致定位。
[0016]上下文傳感器136可實施為能夠檢測計算裝置102或其用戶的上下文的任何其它傳感器或多個傳感器。計算裝置102的上下文可包含位置、環(huán)境條件、一天中的時間、用戶身份、用戶的當前活動或者計算裝置102的其它條件。在一些實施例中,上下文傳感器136可實施為或合并在計算裝置102的其它傳感器中。例如,上下文傳感器可感測使用通信電路130的具體無線網(wǎng)絡(luò)、使用音頻傳感器132的周圍噪聲級別或其它上下文相關(guān)數(shù)據(jù)。
[0017]在系統(tǒng)100包含VPA服務器104的那些實施例中,VPA服務器104配置成執(zhí)行上下文感知的自然語言解釋,以及執(zhí)行虛擬個人助理服務。VPA服務器104可實施為能夠執(zhí)行本文描述的功能的任何類型的服務器計算裝置或裝置集合。說明性地,VPA服務器104包含處理器140、1/0子系統(tǒng)142、存儲器144、數(shù)據(jù)存儲裝置146、通信電路148和/或通常在服務器或類似計算裝置中發(fā)現(xiàn)的其它組件和裝置。VPA服務器104的各個組件可類似于計算裝置102的對應組件,其的描述可適用于VPA服務器104的對應組件,并且本文不再重復以免使本公開模糊不清。另外,VPA服務器104可實施為單個服務器計算裝置或服務器和關(guān)聯(lián)裝置的集合。例如,在一些實施例中,VPA服務器104可實施為從分布在網(wǎng)絡(luò)上并操作在公用或私用云中的多個計算裝置形成的“虛擬服務器”。因而,盡管VPA服務器104在圖1中圖示,并在下面被描述為單個服務器計算裝置,但應該認識到,VPA服務器104可實施為多個裝置一起合作來實現(xiàn)下面描述的功能性。
[0018]如下面更詳細論述的,計算裝置102和VPA服務器104可配置成通過網(wǎng)絡(luò)106用彼此和/或系統(tǒng)100的其它裝置傳送和接收數(shù)據(jù)。網(wǎng)絡(luò)106可實施為任何數(shù)量的各種有線和/或無線網(wǎng)絡(luò)。例如,網(wǎng)絡(luò)106可實施為或否者包含有線或無線局域網(wǎng)(LAN)、有線或無線廣域網(wǎng)(WAN)和/或可公開訪問的全球網(wǎng)諸如因特網(wǎng)。因此,網(wǎng)絡(luò)106可包含任何數(shù)量的附加裝置,諸如附加計算機、路由器和交換機,以便于系統(tǒng)100的裝置之間的通信。
[0019]現(xiàn)在參考圖2,在一個說明性實施例中,計算裝置102在操作期間建立環(huán)境200。說明性環(huán)境200包含用戶接口模塊202、傳感器輸入模塊204、上下文源管理器206、虛擬個人助理220和上下文數(shù)據(jù)庫228。環(huán)境200的各種模塊可實施為硬件、固件、軟件或它們的組合。
[0020]用戶接口模塊202配置成允許計算裝置102的用戶調(diào)用虛擬個人助理命令,并再現(xiàn)用戶接口元素以允許用戶消耗那些虛擬個人助理命令的結(jié)果或另外與這些結(jié)果交互。用戶接口模塊202可考慮到人機交互的一個或多個模式。例如,用戶接口模塊202可提供一個或多個硬件按鈕、使用顯示器128的傳統(tǒng)圖形用戶接口和/或語音命令和控制。用戶接口模塊202可例如使用音頻傳感器132來捕獲表示用戶的自然語言請求的音頻輸入數(shù)據(jù)。
[0021 ]傳感器輸入模塊204配置成從計算裝置102的各種上下文傳感器接收傳感器輸入,并將傳感器輸入提供給上下文源管理器206作為潛在的上下文源數(shù)據(jù)。例如,傳感器輸入模塊204可提供由位置電路134感測的位置信息和/或由上下文傳感器136感測的任何其它上下文數(shù)據(jù)。
[0022]上下文源管理器2