專利名稱:用于對話的方法、裝置和程序及其中存儲程序的存儲介質(zhì)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于對話的方法、裝置和程序,以及包括在其中存儲程序的存儲介質(zhì)。具體地說,本發(fā)明涉及通過響應(yīng)輸入語句,快速地輸出在形式和內(nèi)容上適當(dāng)?shù)膽?yīng)答的交互方法、裝置和程序,以及包括其中存儲的該程序的存儲介質(zhì)。
背景技術(shù):
通過聲音與個人交互語音對話系統(tǒng)可以被粗略地分組為兩種類型用于特殊目的的系統(tǒng);以及用于非特定主題的談?wù)?聊天)的系統(tǒng)。
用于特殊目的的語音對話系統(tǒng)的例子是語音對話標(biāo)簽預(yù)定系統(tǒng)。用于非特定主題的談?wù)摰恼Z音對話系統(tǒng)的例子是“chatterbot”,它的說明可以在,例如,“Chatterbot Is Thinking”中找到(到2004年7月26日為止在URL地址“http:∥www.ycf.nanet.co.jp/-skato/muno/index.shtml”上是可訪問的)。
用于特殊目的的語音對話系統(tǒng)以及用于非特定主題的談?wù)摰恼Z音對話系統(tǒng)在與如何響應(yīng)用戶給出的語音輸入(講話)有關(guān)的設(shè)計(jì)原理上是不同的。
在用于特殊目的的語音對話系統(tǒng)中,必須輸出指導(dǎo)用戶講話的響應(yīng)以便提供達(dá)到目標(biāo)所需的信息。例如,在用于預(yù)定機(jī)票的語音對話系統(tǒng)中,當(dāng)有關(guān)起飛日期、起飛時間、起飛機(jī)場以及達(dá)到機(jī)場的信息對于進(jìn)行預(yù)定是必須的時,如果用戶說“二月16號,從東京到札幌”,則希望該語音對話系統(tǒng)可以檢測有關(guān)起飛時間信息的缺少并且返回應(yīng)答“您想什么時間起飛?”。
另一方面,在用于非特定主題的討論的語音對話系統(tǒng)中,對于如何應(yīng)答沒有唯一的答案。然而,在非特定主題的自由談?wù)撝?,希望該語音對話系統(tǒng)能夠返回一個引起用戶興趣的應(yīng)答或者一個使用戶感覺該語音對話系統(tǒng)理解用戶所說的話的應(yīng)答,從而使用戶想繼續(xù)與該語音對話系統(tǒng)交談。
為了輸出讓用戶感覺該系統(tǒng)理解用戶所說的話的應(yīng)答,需要該應(yīng)答在形式和內(nèi)容(主題)上與用戶的語言一致。
例如,當(dāng)用戶提出期待用以“Yes”或“No”開始的語句回答的問題時,在形式上是正確的應(yīng)答應(yīng)當(dāng)以“Yes”(或表示肯定的類似的詞)或“No”(或表示否定的類似的詞)開始。在用戶使用問候語言的情況下,在形式上是正確的應(yīng)答是與用戶使用的問候表達(dá)相應(yīng)的問候語句(例如,“Good morning”對“Good morning”,以及“Welcome home”對“Hi,I’m back”,是正確的應(yīng)答)。作為應(yīng)答,以同意的詞開始的語句可以是正確的形式。
另一方面,當(dāng)用戶談?wù)撎鞖鈺r,有關(guān)天氣的語句在內(nèi)容上是正確的應(yīng)答。
例如,當(dāng)用戶說“I’m worried about whether it will be finetomorrow.”,在形式和內(nèi)容上都正確的應(yīng)答的例子是“Yeah,I am alsoworried about the weather”。對于語句“Yeah,I am also worried aboutthe weather”,第一部分“Yeah”是同意的表達(dá)并且在形式上是正確的。后面的部分“I’m also worried about the weather”在內(nèi)容上是正確的。
如果語音對話系統(tǒng)輸出在形式和內(nèi)容上一致的應(yīng)答,諸如上面的例子,那么提供給用戶的應(yīng)答給用戶一個該系統(tǒng)理解了用戶所說的話的印象。
然而,在傳統(tǒng)的語音對話系統(tǒng)中,產(chǎn)生形式和內(nèi)容都一致的應(yīng)答是困難的。
一種在自由會話中產(chǎn)生應(yīng)答的已知方法是通過規(guī)則,而另一種已知的方法是通過例子。
通過規(guī)則的方法在程序調(diào)用Eliza中被使用,它在例如“What ELIZAtalks”(到2004年7月26日為止在URL地址“http:∥www.ycf.nanet.co.jp/skato/muno/eliza.html”上是可訪問的)或“Language Engineering”(Makoto Nagao,Shokodo,226-228頁)中被引用。
使用規(guī)則的方法中,當(dāng)輸入的語句包括特定的詞或表達(dá)時,使用一組規(guī)則產(chǎn)生應(yīng)答,每個規(guī)則定義將要輸出的語句。
例如,當(dāng)用戶說“Thank you very much”時,如果存在一個規(guī)則,即響應(yīng)包括“Thank you”的輸入語句應(yīng)該是“You are welcome”,則根據(jù)該規(guī)則產(chǎn)生應(yīng)答“You are welcome”。
然而,雖然描述用于產(chǎn)生形式一致的應(yīng)答的規(guī)則十分容易,但是描述用于產(chǎn)生內(nèi)容一致的應(yīng)答的規(guī)則是困難的。此外,可能存在大量用于產(chǎn)生內(nèi)容一致的應(yīng)答的規(guī)則,并且需要非常單調(diào)的工作來維持該大量的規(guī)則。
使用應(yīng)答模板產(chǎn)生應(yīng)答也是公知的,代替使用通過規(guī)則的方法或通過例子的方法(例如,在日本未審查的專利申請公開號為2001-357053中所公開的)。然而,該方法也具有與使用規(guī)則的那些方法類似的問題。
通過例子的方法的示例被公開,例如,在“Building of Dictionary”(到2004年7月26日為止在URL地址“http:∥www.ycf.nanet.co.jp/skato/muno/dict.html”上是可訪問的)中,其中根據(jù)個人之間的聊天日志創(chuàng)建目錄。在該技術(shù)中,從第(n-1)個語句中提取關(guān)鍵字,并且第n個語句被使用作為從第(n-1)個語句中提取關(guān)鍵字的值。對于所有的語句重復(fù)執(zhí)行該過程以便產(chǎn)生目錄。該技術(shù)中所述的“聊天日志”相當(dāng)于一個例子。
也就是說,在這個技術(shù)中,聊天日志等等可以用作語句的例子,因此與人工描述的大量規(guī)則的情況相比比較容易收集大量的例子,并且根據(jù)語句的大量例子可以用許多方法來產(chǎn)生應(yīng)答。
然而,在舉例的方法中,為了產(chǎn)生形式和內(nèi)容都一致的應(yīng)答,需要必須至少有一個例子與應(yīng)答相應(yīng)。
在許多情況下,與應(yīng)答相應(yīng)的例子僅僅在形式或內(nèi)容上一致。換句話說,雖然容易收集與僅僅在形式或內(nèi)容上一致的應(yīng)答語句相應(yīng)的例句,但是不容易收集與形式和內(nèi)容都一致的應(yīng)答語句相應(yīng)的例句。
在語音對話系統(tǒng)中,除了根據(jù)用戶講話的形式和內(nèi)容的應(yīng)答的一致性之外,輸出應(yīng)答的時間也是用戶對該系統(tǒng)是否具有好的感覺的一個重要因素。特別地,應(yīng)答時間,也就是說,從用戶說話之后起語音對話系統(tǒng)輸出應(yīng)答所需的時間是重要的。
應(yīng)答時間取決于執(zhí)行用戶講話的語音識別所需的時間、產(chǎn)生與用戶講話相應(yīng)的應(yīng)答所需的時間、通過語音合成以及播放語音波形產(chǎn)生與應(yīng)答相應(yīng)的語音波形所需的時間以及處理總體過程的時間。
在所有這些時間中,產(chǎn)生應(yīng)答所需的時間對于對話系統(tǒng)(對話裝置)來說是特殊的。在使用規(guī)則產(chǎn)生應(yīng)答的方法中,規(guī)則的數(shù)量越少,產(chǎn)生應(yīng)答所需的時間越短。同樣,在使用例子產(chǎn)生應(yīng)答的方法中,例子的數(shù)量越少,產(chǎn)生應(yīng)答所需的時間越短。
然而,為了用多種方法輸出應(yīng)答以至于用戶不對應(yīng)答產(chǎn)生厭倦,需要準(zhǔn)備相當(dāng)大量的規(guī)則和例子。因此,需要能夠使用足夠數(shù)量的規(guī)則或例子在短時間內(nèi)產(chǎn)生應(yīng)答的技術(shù)。
發(fā)明內(nèi)容
如上所述,希望對話系統(tǒng)能夠返回形式和內(nèi)容都合適的應(yīng)答以至于用戶感覺該對話系統(tǒng)理解了用戶所說的話。也希望對話系統(tǒng)可以快速地回應(yīng)用戶的話,以至于用戶不會感到灰心。
鑒于上述內(nèi)容,本發(fā)明提供了一種快速返回形式和內(nèi)容都合適的應(yīng)答的技術(shù)。
根據(jù)本發(fā)明實(shí)施例的對話裝置包括用于響應(yīng)輸入語句獲取形式應(yīng)答語句的形式應(yīng)答語句獲取裝置,用于響應(yīng)輸入語句獲取實(shí)際應(yīng)答語句的實(shí)際應(yīng)答語句獲取裝置以及用于控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出以至于響應(yīng)輸入語句輸出確定的應(yīng)答語句的輸出控制裝置。
根據(jù)本發(fā)明實(shí)施例的對話方法包括響應(yīng)輸入語句獲取形式應(yīng)答語句的步驟,響應(yīng)輸入語句獲取實(shí)際應(yīng)答語句的步驟,以及控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出以至于響應(yīng)輸入語句輸出確定的應(yīng)答語句的步驟。
根據(jù)本發(fā)明實(shí)施例的程序包括響應(yīng)輸入語句獲取形式應(yīng)答語句的步驟,響應(yīng)輸入語句獲取實(shí)際應(yīng)答語句的步驟,以及控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出以至于響應(yīng)輸入語句輸出確定的應(yīng)答語句的步驟。
根據(jù)本發(fā)明實(shí)施例的存儲在存儲介質(zhì)上的程序包括響應(yīng)輸入語句獲取形式應(yīng)答語句的步驟,響應(yīng)輸入語句獲取實(shí)際應(yīng)答語句的步驟,以及控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出以至于響應(yīng)輸入語句輸出確定的應(yīng)答語句的步驟。
根據(jù)本發(fā)明實(shí)施例的對話裝置包括配置為響應(yīng)輸入語句獲取形式應(yīng)答語句的形式應(yīng)答語句獲取單元,配置為響應(yīng)輸入語句獲取實(shí)際應(yīng)答語句的實(shí)際應(yīng)答語句獲取單元,以及配置為控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出以至于響應(yīng)輸入語句輸出確定的應(yīng)答語句的輸出單元。
在本發(fā)明的實(shí)施例中,如上所述,響應(yīng)一輸入語句,一形式應(yīng)答語句被獲取,并且進(jìn)一步地一實(shí)際應(yīng)答語句被獲取。通過控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出而輸出輸入語句的最終應(yīng)答語句。
根據(jù)本發(fā)明的一個實(shí)施例,可以輸出形式和內(nèi)容都合適的應(yīng)答,并且可以在短時間內(nèi)輸出該應(yīng)答。
圖1示出了根據(jù)本發(fā)明實(shí)施例的語音對話系統(tǒng)的框圖;圖2示出了應(yīng)答生成器的結(jié)構(gòu)例子的框圖;圖3示出了在例子數(shù)據(jù)庫中記錄的例子的簡圖;圖4示出了由形式應(yīng)答語句生成器執(zhí)行處理以產(chǎn)生形式應(yīng)答語句的簡圖;圖5示出了向量空間方法的簡圖;圖6示出了表示輸入語句和輸入例子的向量的例子;圖7示出了在例子數(shù)據(jù)庫中記錄的例子;圖8示出了由實(shí)際應(yīng)答語句生成器執(zhí)行處理以產(chǎn)生實(shí)際應(yīng)答語句的簡圖;圖9如上所述,是在對話日志數(shù)據(jù)庫15中記錄的對話日志;圖10示出了根據(jù)對話日志產(chǎn)生實(shí)際應(yīng)答語句的過程的簡圖;圖11示出了根據(jù)對話日志產(chǎn)生實(shí)際應(yīng)答語句的過程的簡圖;圖12示出了具有與遺忘曲線類似特征的函數(shù)圖表;圖13示出了由應(yīng)答輸出控制器執(zhí)行處理以控制語句的輸出的簡圖;圖14示出了根據(jù)本發(fā)明實(shí)施例的語音合成過程和對話過程的流程圖;圖15示出了根據(jù)本發(fā)明實(shí)施例的對話過程的流程圖;圖16示出了根據(jù)本發(fā)明實(shí)施例的對話過程的流程圖;圖17示出了根據(jù)DP匹配方法在輸入語句和模型輸入語句之間進(jìn)行匹配的例子;圖18示出了根據(jù)DP匹配方法在輸入語句和模型輸入語句之間進(jìn)行匹配的例子;圖19示出了主題空間;圖20示出了根據(jù)本發(fā)明實(shí)施例的對話處理的流程圖;圖21示出了位于音素邊界左邊和右邊的每兩個語境的定義的簡圖;圖22示出了位于音素邊界左邊和右邊的每兩個語境的定義的簡圖;圖23示出了位于音素邊界左邊和右邊的每兩個語境的定義的簡圖;以及圖24示出了根據(jù)本發(fā)明實(shí)施例的計(jì)算機(jī)的框圖。
具體實(shí)施例方式
下面將結(jié)合附圖參考實(shí)施例更加詳細(xì)地描述本發(fā)明。
圖1示出了根據(jù)本發(fā)明實(shí)施例的語音對話系統(tǒng)。
該語音對話系統(tǒng)包括麥克風(fēng)1,語音識別器2,控制器3,應(yīng)答生成器4,語音合成器5和喇叭6,它們被配置得通過聲音與用戶交互作用。
麥克風(fēng)1將用戶發(fā)出的聲音(語音)等等以電信號的形式轉(zhuǎn)換成聲音信號并且將它提供給語音識別器2。
語音識別器2對麥克風(fēng)1提供的聲音信號執(zhí)行語音識別并且將作為語音識別結(jié)果獲得的一系列詞(識別結(jié)果)提供到控制器3。
在由語音識別器2執(zhí)行的上述語音識別中,可以根據(jù)例如,HMM(隱藏馬爾可夫模型)方法或任何其他適當(dāng)?shù)乃惴ā?br>
從語音識別器2提供到控制器3的語音識別結(jié)果可能是一系列詞的最可能的識別候選(具有最高的相似性得分)或者可能是最可能的N個識別候選。在下面的討論中,假設(shè)一系列詞的最可能的識別候選作為語音識別結(jié)果從語音識別器2提供到控制器3。
從語音識別器2提供到控制器3的語音識別結(jié)果不必具有一系列詞的形式,但是該語音識別結(jié)果可以是詞表的形式。
語音對話系統(tǒng)除了或代替麥克風(fēng)1和語音識別器2可以包括鍵盤,以至于用戶可以通過該鍵盤輸入文本數(shù)據(jù)并且將所輸入的文本數(shù)據(jù)提供到控制器3。
通過執(zhí)行用戶所寫字符的字符識別而獲得的文本數(shù)據(jù)或者通過在使用照相機(jī)或掃描儀讀取的圖像上執(zhí)行光學(xué)字符識別(OCR)而獲得的文本數(shù)據(jù)也可以被提供到控制器3。
控制器3負(fù)責(zé)控制整個語音對話系統(tǒng)。
更特別地,例如,控制器3將控制信號提供到語音識別器2以便控制語音識別器2執(zhí)行語音識別??刂破?將從語音識別器2輸出的語音識別結(jié)果作為輸入語句提供到應(yīng)答生成器4以便響應(yīng)輸入語句產(chǎn)生應(yīng)答語句??刂破?從應(yīng)答生成器4接收應(yīng)答語句并且將所接收的應(yīng)答語句提供到語音合成器5。如果控制器3從語音合成器5接收表示語音合成已經(jīng)完成的完成通知,則控制器3響應(yīng)該完成通知執(zhí)行必要的處理。
該應(yīng)答生成器4產(chǎn)生作為語音識別結(jié)果從控制器3提供的輸入語句的應(yīng)答語句,也就是說,該應(yīng)答生成器4響應(yīng)用戶的講話產(chǎn)生文本數(shù)據(jù),并且應(yīng)答生成器4將所產(chǎn)生的應(yīng)答語句提供到控制器3。
語音合成器5產(chǎn)生與使用諸如通過規(guī)則的語音合成的語音合成技術(shù)從控制器3提供的應(yīng)答語句相應(yīng)的聲音信號,并且語音合成器5將合成的聲音信號提供到喇叭6。
喇叭6根據(jù)從語音合成器5接收的聲音信號輸出(廣播)合成的聲音。
除了或代替使用語音合成技術(shù)產(chǎn)生聲音信號,語音合成器5可以提前存儲與典型的應(yīng)答語句相應(yīng)的聲音數(shù)據(jù)并且可以播放該聲音數(shù)據(jù)。
除了或代替從喇叭6輸出的與從控制器3提供的應(yīng)答語句相應(yīng)的聲音,應(yīng)答語句可以顯示在顯示器上或者可以使用投影儀投影在屏幕上。
圖2示出了圖1中所示的應(yīng)答生成器4的內(nèi)部結(jié)構(gòu)的例子。
在圖2中,作為語音識別結(jié)果從語音識別器2(圖1)提供的輸入語句被提供到形式應(yīng)答語句生成器11。形式應(yīng)答語句生成器11根據(jù)輸入語句和存儲在例子數(shù)據(jù)庫121,122,...,12I中的例子(語言表達(dá)的例子),以及進(jìn)一步地作為要求根據(jù)存儲在對話日志數(shù)據(jù)庫15中的對話日志,產(chǎn)生(獲得)形式上與輸入語句一致的形式應(yīng)答語句。所合成的形式應(yīng)答語句被提供到應(yīng)答輸出控制器16。
因此,在目前的實(shí)施例中,由形式應(yīng)答語句生成器11產(chǎn)生的語句(形式應(yīng)答語句)是基于舉例方法的??蛇x地,形式應(yīng)答語句生成器11可以通過除了舉例方法的其他方法產(chǎn)生應(yīng)答語句,例如,通過規(guī)則方法。在形式應(yīng)答語句生成器11通過規(guī)則產(chǎn)生應(yīng)答語句的情況下,由規(guī)則數(shù)據(jù)庫代替例子數(shù)據(jù)庫12I。
例子數(shù)據(jù)庫12I(i=1,2,...,I)存儲形式應(yīng)答語句生成器11使用的例子以便產(chǎn)生至少在形式上與輸入語句(講話)一致的形式應(yīng)答語句。
存儲在例子數(shù)據(jù)庫12I中的例子在類別上與存儲在另一個例子數(shù)據(jù)庫12i’中的例子不同。例如,關(guān)于問候的例子存儲在例子數(shù)據(jù)庫12I中,而關(guān)于同意的例子存儲在例子數(shù)據(jù)庫12i’中。如上所述,例子的集合根據(jù)例子集合的類別被存儲在不同的例子數(shù)據(jù)庫中。
在以下的討論中,例子數(shù)據(jù)庫121,122,...,12I一般被描述為例子數(shù)據(jù)庫12,除非需要相互區(qū)分它們。
作為語音識別器2(圖1)的語音識別結(jié)果被提供并且與提供到形式應(yīng)答語句生成器11相同的輸入語句,被提供到實(shí)際應(yīng)答語句生成器13。實(shí)際應(yīng)答語句生成器13根據(jù)輸入語句和存儲在例子數(shù)據(jù)庫141,142,...,14J中的例子,以及進(jìn)一步地作為要求根據(jù)存儲在對話日志數(shù)據(jù)庫15中的對話日志,產(chǎn)生(獲得)在內(nèi)容上與輸入語句一致的實(shí)際應(yīng)答語句。所合成的實(shí)際應(yīng)答語句被提供到應(yīng)答輸出控制器16。
因此,在目前的實(shí)施例中,由實(shí)際應(yīng)答語句生成器13產(chǎn)生的語句(實(shí)際應(yīng)答語句)是基于舉例方法的??蛇x地,與形式應(yīng)答語句生成器11相同,實(shí)際應(yīng)答語句生成器13可以通過除了舉例的其他方法產(chǎn)生應(yīng)答語句,例如,通過規(guī)則方法。在實(shí)際應(yīng)答語句生成器13通過規(guī)則產(chǎn)生應(yīng)答語句的情況下,用規(guī)則數(shù)據(jù)庫代替例子數(shù)據(jù)庫14J。
由實(shí)際應(yīng)答語句生成器13使用的例子數(shù)據(jù)庫12J(j=1,2,...,J)存儲例子以便產(chǎn)生實(shí)際應(yīng)答語句,也就是說,例子在術(shù)語上至少與語句(講話)的內(nèi)容一致。
存儲在每個例子數(shù)據(jù)庫14J中的每個例子單元包括從談?wù)撎囟ǖ闹黝}開始到談?wù)摻Y(jié)束期間產(chǎn)生的一系列講話。例如,在談話中,如果發(fā)生用于改變主題的短語,諸如“順便說說”,則該短語可以被認(rèn)為是新單元的開始。
在以下的說明中,例子數(shù)據(jù)庫141,142,...,14J一般被描述為例子數(shù)據(jù)庫14,除非需要相互區(qū)分它們。
對話日志數(shù)據(jù)庫15存儲對話日志。更特別地,從應(yīng)答輸出控制器16提供的輸入語句以及響應(yīng)該輸入語句最后輸出的應(yīng)答語句(合成的應(yīng)答語句)之一或二者可以作為對話日志被記錄到對話日志數(shù)據(jù)庫15中。如上所述,記錄在對話日志數(shù)據(jù)庫15中的對話日志在產(chǎn)生應(yīng)答語句(形式應(yīng)答語句或?qū)嶋H應(yīng)答語句)的過程中根據(jù)要求由形式應(yīng)答語句生成器11或?qū)嶋H應(yīng)答語句生成器13使用。
應(yīng)答輸出控制器16控制來自形式應(yīng)答語句生成器11的形式應(yīng)答語句以及來自實(shí)際應(yīng)答語句生成器13的實(shí)際應(yīng)答語句的輸出,以至于與輸入語句相應(yīng)的合成應(yīng)答語句被輸出到控制器3(圖1)。更特別地,應(yīng)答輸出控制器16響應(yīng)通過響應(yīng)輸入語句而產(chǎn)生的形式應(yīng)答語句和實(shí)際應(yīng)答語句組合的輸入語句獲得將要被輸出的最終應(yīng)答語句,并且應(yīng)答輸出控制器16將所合成的最終應(yīng)答語句輸出到控制器3。
作為由語音識別器2(圖1)執(zhí)行的語音識別的結(jié)果而獲得的輸入語句也被提供到應(yīng)答輸出控制器16。應(yīng)答輸出控制器16響應(yīng)輸入語句輸出最終的應(yīng)答語句之后,應(yīng)答輸出控制器16將最終的應(yīng)答語句與輸入語句一起提供到對話日志數(shù)據(jù)庫15。從應(yīng)答輸出控制器16提供的輸入語句和最終的應(yīng)答語句作為對話日志被存儲在對話日志數(shù)據(jù)庫15中,如前面所述。
圖3示出了一個例子,它被存儲在例子數(shù)據(jù)庫12中并且由圖2中所示的形式應(yīng)答語句生成器11使用以產(chǎn)生形式應(yīng)答語句。
以響應(yīng)輸入語句發(fā)出的一組輸入表達(dá)和應(yīng)答表達(dá)的形式描述存儲在例子數(shù)據(jù)庫12中的每個例子。
為了使形式應(yīng)答語句生成器11能夠使用存儲在例子數(shù)據(jù)庫12中的例子產(chǎn)生形式應(yīng)答語句,每對應(yīng)答表達(dá)與該對的輸入表達(dá)相應(yīng)并且至少在形式上與該對的輸入表達(dá)一致。
存儲在例子數(shù)據(jù)庫12中的應(yīng)答表達(dá)的例子為肯定應(yīng)答諸如“是的”或“對的”,否定應(yīng)答諸如“不”或“不,不是”,問候應(yīng)答諸如“你好”或“歡迎你”,以及在講話期間施加的詞,諸如“啊哈”。輸入表達(dá)與作為輸入表達(dá)的應(yīng)答的在形式上是正常的應(yīng)答表達(dá)相耦合。
圖3中所示的例子數(shù)據(jù)庫12可以被創(chuàng)建,例如,如下所述。首先,從諸如因特網(wǎng)上可訪問的聊天日志的實(shí)際對話的說明中提取適合作為形式應(yīng)答表達(dá)的應(yīng)答表達(dá)。在每個被提取的應(yīng)答表達(dá)之前的表達(dá)作為與應(yīng)答表達(dá)相應(yīng)的輸入表達(dá)立即被提取,并且用例子數(shù)據(jù)庫12描述輸入和應(yīng)答表達(dá)的集合??蛇x地,可以人工地創(chuàng)建并且用例子數(shù)據(jù)庫12描述輸入和應(yīng)答表達(dá)的原始集合。
為了以后在后面描述的匹配處理中使用,存儲在例子數(shù)據(jù)庫12中的例子(輸入表達(dá)和應(yīng)答表達(dá))以分隔符劃分的每個詞的形式被描述。在圖3所示的例子中,空格被用作分隔符。對于沒有用空格將詞彼此分開的語言,諸如日語,按規(guī)定,在形式應(yīng)答語句生成器11或應(yīng)答輸出控制器16執(zhí)行處理期間除去空格。這對于例子數(shù)據(jù)庫14中描述的例子表達(dá)也是適用的,后面將參照圖7描述該例子數(shù)據(jù)庫14。
在沒有用空格將詞彼此分開的語言諸如日語的情況下,當(dāng)執(zhí)行匹配處理時,例子表達(dá)可以以非空格形式存儲,并且表達(dá)中的詞可以用空格相互分開。
注意到,在本發(fā)明中,術(shù)語“詞”用于描述根據(jù)便于處理的觀點(diǎn)所定義的一系列的字符,而詞不用等同于語言學(xué)上定義的詞。這對于“語句”也是適用的。
現(xiàn)在,參照圖4到6,下面描述由圖2中所示的形式應(yīng)答語句生成器11執(zhí)行的過程以便產(chǎn)生形式應(yīng)答語句。
如圖4中所示,形式應(yīng)答語句生成器11響應(yīng)輸入語句,根據(jù)存儲在例子數(shù)據(jù)庫12中的例子產(chǎn)生形式應(yīng)答語句。
圖4示意性地說明了存儲在圖3所示的例子數(shù)據(jù)庫12中的例子,其中以一組輸入表達(dá)和相應(yīng)的應(yīng)答表達(dá)的形式描述每個例子。在下文中,例子中的輸入表達(dá)和應(yīng)答表達(dá)將分別被稱為輸入例子和應(yīng)答例子。
如圖4中所示,形式應(yīng)答語句生成器11將輸入語句與存儲在例子數(shù)據(jù)庫12中的各個輸入例子#1,#2,...,#k,...進(jìn)行比較并且計(jì)算表示每個輸入例子#1,#2,...,#k,...相對于輸入語句的相似性的得分。例如,如果輸入例子#k與輸入語句最相似,也就是說,如果輸入例子#k具有最高的得分,則如圖4所示,形式應(yīng)答語句生成器11選擇與輸入例子#k耦合的應(yīng)答例子#k并且將所選擇的應(yīng)答例子#k作為形式應(yīng)答語句輸出。
因?yàn)槠诖问綉?yīng)答語句生成器11輸出在形式上與輸入語句一致的形式應(yīng)答語句,將由形式應(yīng)答語句生成器11計(jì)算表示輸入語句與每個輸入例子之間相似性的得分,以至于該得分表示與形式的相似性而不是與內(nèi)容(主題)的相似性。
為此,例如,形式應(yīng)答語句生成器11通過使用向量空間方法估算輸入語句與各自的輸入例子之間的匹配。
向量空間算法是廣泛地用于文本查找的方法之一。在向量空間方法中,由向量表示每個語句并且通過與各個語句相應(yīng)的兩個向量之間的角度提供兩個語句之間的相似性或距離。
參照圖5,描述了根據(jù)向量空間方法比較輸入語句與模型輸入語句的過程。
在此,讓我們假設(shè)模型輸入和應(yīng)答表達(dá)的K個集合被存儲在例子數(shù)據(jù)庫12中,并且在K個輸入例子之間總共有M個不同的詞(同一個詞的任何多個出現(xiàn)作為一個詞計(jì)算)。
在這種情況下,如圖5所示,存儲在例子數(shù)據(jù)庫12中的每個輸入例子可以由具有與各自的M個詞#1,#2,...,#M相應(yīng)的M個元素的向量表示。
在表示輸入例子的每個向量中,與第m個詞#m(m=1,2,...,M)相應(yīng)的第m個元素的值表示輸入例子中第m個詞#m出現(xiàn)的次數(shù)。
也可以通過包括M個元素的向量用相似的方法表示輸入語句。
如果用Xk表示代表輸入例子#k(k=1,2,...,K)的向量,用y表示代表輸入語句的向量,并且用θk表示向量Xk和向量y之間的角度,則可以根據(jù)下面的等式(1)確定cosθk。
cosθk=Xk·y|Xk||y|---(1)]]>其中·表示內(nèi)積,而|z|表示向量z的模。
當(dāng)向量Xk的方向和向量y的方向相同時,cosθk具有最大值1,并且當(dāng)向量Xk的方向和向量y的方向相反時,具有最小值-1。然而,實(shí)際上,輸入語句的向量y的元素和輸入例子#k的向量Xk的元素都是正的或者等于0,因此cosθk的最小值等于0。
在使用向量空間方法的比較過程中,為所有輸入例子#k計(jì)算cosθk作為得分,并且具有最高得分的輸入例子#k被認(rèn)為是與輸入語句最相似的輸入例子。
例如,當(dāng)輸入例子#1“This is an example of a description of an inputexample”以及輸入例子#2“Describe an input example such that each wordis delimited by a space as shown herein”存儲在例子數(shù)據(jù)庫12中時,如果語句“Which one of input example is more similar to this sentence?”作為輸入語句給出,則表示各個輸入例子#1和#2的向量如圖6中所示。
根據(jù)圖6,輸入例子#1的得分,即,cosθ1被計(jì)算為6/√23√8=0.442,而輸入例子#2的得分,即,cosθ2被計(jì)算為2/√19√8=0.162。
因此,在這個具體的例子中,輸入例子#1具有最高的得分,因此與輸入語句最相似。
在向量空間方法中,如前所述,每個輸入語句或者每個輸入例子的每個元素的值表示詞出現(xiàn)的次數(shù)。在下文中,詞出現(xiàn)的次數(shù)被稱為tf(術(shù)語頻率)。
一般地,當(dāng)tf被用作向量的每個元素的值時,頻繁地出現(xiàn)的詞比不頻繁出現(xiàn)的詞更能影響得分。在日語的情況下,高頻率地出現(xiàn)語氣動詞和助動詞。因此,tf的使用能夠使輸入例子的輸入語句中出現(xiàn)的語氣動詞和助動詞控制得分。例如,當(dāng)語氣動詞“no”(與英語的“of”相應(yīng))在輸入語句中高頻率地出現(xiàn)時,高頻率出現(xiàn)語氣動詞“no”的輸入例子具有較高的得分。
在文本查找中,有時,為了使查找結(jié)果不受高頻率出現(xiàn)的特殊詞的不希望的影響,不用tf而用tf×idf表示向量的每個元素的值,其中的idf是稍后描述的參數(shù)。
然而,在日語語句中,語氣動詞和助動詞表示所給語句的格式,因此希望由形式應(yīng)答語句生成器11在產(chǎn)生形式應(yīng)答語句的過程中所進(jìn)行的比較極大地受到輸入語句或輸入例子中出現(xiàn)的語氣動詞和助動詞的影響。
因此,tf有利地用于形式應(yīng)答語句生成器11執(zhí)行的比較過程中。
不用tf作為每個向量元素的值,tf×df(其中的df(文件頻率)是稍后將要描述的參數(shù))可以用于增強(qiáng)在形式應(yīng)答語句生成器11執(zhí)行的比較過程中語氣動詞和助動詞的影響。
當(dāng)給出詞w以及用于該詞的df時,df(w)通過下面的等式(2)給出。
df(w)=log(C(w)+offset) (2)其中的C(w)是出現(xiàn)詞w的輸入例子的數(shù)量,而offset是常量。在等式(2)中,例如,2用作對數(shù)(log)的底數(shù)。
正如從等式(2)中所看到的,用于詞w的df(w)隨著出現(xiàn)詞w的輸入例子的數(shù)量的增加而增加。
例如,讓我們假設(shè)有1023個包括語氣動詞“no”(與英語的“of”相應(yīng))的輸入例子,即,C(“no”)=1023。而且,讓我們也假設(shè)offset=1,并且模型輸入語句#k(或輸入語句中)中的語氣動詞“no”的出現(xiàn)次數(shù)是2,即,tf=2。在這種情況下,在代表輸入例子#k的向量#k中,如果tf被用于表示與詞(語氣動詞)“no”相應(yīng)的元素的值,則tf=2。如果tf×df被用于表示與詞(語氣動詞)“no”相應(yīng)的元素的值,則tf×df=2×10=20。
因此,tf×df的使用導(dǎo)致在形式應(yīng)答語句生成器11執(zhí)行的比較結(jié)果的語句中高頻率出現(xiàn)的詞的影響力的增強(qiáng)。
如上所述,在目前的實(shí)施例中,作為應(yīng)答表達(dá)的形式語句被存儲在例子數(shù)據(jù)庫12中,并且形式應(yīng)答語句生成器11將所給出的輸入語句和輸入例子進(jìn)行比較以便確定哪個輸入例子在格式上與輸入語句最相似,從而產(chǎn)生與輸入語句格式一致的應(yīng)答語句。
注意到,使用tf×df而不是tf作為向量元素的值可以適用于輸入例子和輸入語句或者可以只適用于輸入例子或輸入語句。
在上述的例子中,tf×df用于增強(qiáng)詞諸如語氣動詞和助動詞的影響力,它表示形式應(yīng)答語句生成器11執(zhí)行的比較過程中語句的格式。然而,增強(qiáng)該詞影響力的方法并不限定到tf×df的使用。例如,除了與語氣動詞,助動詞,以及表示語句格式的其他詞(即,對語句的格式?jīng)]有貢獻(xiàn)的元素被忽略)相應(yīng)的元素,輸入語句或輸入例子的向量元素的值可以被設(shè)置為0。
在上述的例子中,形式應(yīng)答語句生成器11根據(jù)存儲在例子數(shù)據(jù)庫12中的輸入語句和例子(輸入例子和應(yīng)答例子)產(chǎn)生作為對輸入語句的響應(yīng)的形式應(yīng)答語句。在形式應(yīng)答語句的產(chǎn)生中,該形式應(yīng)答語句生成器11也可以參考存儲在對話日志數(shù)據(jù)庫15中的對話日志。可以用類似的方法執(zhí)行同樣基于對話日志的應(yīng)答語句的產(chǎn)生以便通過實(shí)際應(yīng)答語句生成器13產(chǎn)生實(shí)際應(yīng)答語句,如稍后將要詳細(xì)描述的。
圖7示出了存儲在例子數(shù)據(jù)庫14中的例子,以便圖2中所示的實(shí)際應(yīng)答語句生成器13使用以產(chǎn)生實(shí)際應(yīng)答語句。
在例子數(shù)據(jù)庫14中,例如,例子以允許講話可以被相互區(qū)分的形式存儲。在圖7所示的例子中,例子被存儲在例子數(shù)據(jù)庫14中以至于用一個記錄(一行)描述一個講話(一個發(fā)言)的表達(dá)。
在圖7所示的例子中,每個講話的談話者和識別講話的表達(dá)序號也與每個記錄中講話的表達(dá)一起被描述。該表達(dá)序號被按照講話的次序順序地分配到每個例子,以及記錄按照表達(dá)序號的升序被分類。因此,具有表達(dá)序號的例子是對具有緊挨著的前一個表達(dá)序號的例子的響應(yīng)。
為了使實(shí)際應(yīng)答語句生成器13使用存儲在例子數(shù)據(jù)庫14中的例子產(chǎn)生實(shí)際應(yīng)答語句,每個語句至少應(yīng)當(dāng)在內(nèi)容上與緊挨著的前一個例子一致。
存儲在圖7中所示的例子數(shù)據(jù)庫14中的例子基于ATR(國際高級電信研究所)旅行會話文集”(http也可以基于圓桌會議的討論或會見的記錄產(chǎn)生例子。當(dāng)然,也可以人工創(chuàng)建原始例子。
如前面參照圖3所描述的,圖7中所示的例子以每個詞由空格劃界的格式存儲。注意,在諸如日語的語言中,不需要劃界每個詞。
希望例子數(shù)據(jù)庫14中描述的例子被分開以至于對話的一組講話被存儲為一塊數(shù)據(jù)(在一個文件中)。
當(dāng)例子被描述為每個記錄包括圖7中所示的一個講話時,希望記錄中的每個講話是對記錄在緊挨著的前一個記錄中的講話的應(yīng)答。如果執(zhí)行編輯諸如改變記錄的順序或者刪除一些記錄,該編輯可以使一些記錄變得不再是對緊挨著的前一個記錄的應(yīng)答。因此,當(dāng)以包括一個講話的一個記錄的格式描述例子時,希望不執(zhí)行編輯。
另一方面,在描述例子以至于用圖3中所示的記錄描述一組輸入例子和相應(yīng)的應(yīng)答例子的情況下,允許執(zhí)行編輯諸如改變記錄的順序或刪除一些記錄,因?yàn)椋庉嬛?,任何記錄仍然包括一組輸入例子和相應(yīng)的應(yīng)答例子。
一組輸入例子和相應(yīng)的應(yīng)答例子,比如圖3中所示的,可以使用圖7中所示的任意記錄中的講話作為輸入例子并且使用緊挨著的后一個記錄中的講話作為應(yīng)答例子來產(chǎn)生。
現(xiàn)在參照圖8,下面描述了由圖2中所示的實(shí)際應(yīng)答語句生成器13執(zhí)行以產(chǎn)生實(shí)際應(yīng)答語句的過程。
圖8示意性地示出了存儲在例子數(shù)據(jù)庫14中的例子,其中的例子按照講話的順序被記錄。
實(shí)際應(yīng)答語句生成器13根據(jù)存儲在例子數(shù)據(jù)庫14中的例子產(chǎn)生實(shí)際應(yīng)答語句作為對輸入語句的應(yīng)答,諸如圖8中所示的那些。
如圖8中所示,存儲在例子數(shù)據(jù)庫14中的例子被描述以至于按照講話的順序記錄對話中的講話。
如圖8中所示,實(shí)際應(yīng)答語句生成器13比較所給出的輸入語句和存儲在例子數(shù)據(jù)庫14中的每個例子#1,#2,...,#p-1,#p,#p+1,...,并且計(jì)算表示與輸入語句有關(guān)的每個例子的相似性的得分。例如,如果例子#p與輸入語句最相似,即,如果例子#p具有最高的得分,則,如圖8所示,實(shí)際應(yīng)答語句生成器13選擇例子#p后面緊挨著的例子#p+1并且將所選擇的例子#p+1作為實(shí)際應(yīng)答語句輸出。
因?yàn)閷?shí)際應(yīng)答語句生成器13被希望輸出在內(nèi)容上與輸入語句一致的實(shí)際應(yīng)答語句,所以應(yīng)當(dāng)由實(shí)際應(yīng)答語句生成器13計(jì)算表示輸入語句與每個例子之間的相似性的得分,以至于該得分不是表示形式的相似性而是表示內(nèi)容的相似性。
也可以使用上述的向量空間方法執(zhí)行比較以便根據(jù)內(nèi)容估算輸入語句和例子之間的相似性。
當(dāng)使用向量空間方法執(zhí)行輸入語句與例子之間的比較時,通過tf而不是tf×idf來表示向量的每個元素的值,其中的idf是稱為轉(zhuǎn)化文件頻率的參數(shù)。
對于詞w的idf值,idf(w)通過下面的等式(3)給出。
idf(w)=logPC(w)+offset---(3)]]>其中,P表示例子的總數(shù),C(w)表示出現(xiàn)詞w的例子的數(shù)量,而offset是常量。等式(3)中,例如,2被用作對數(shù)(log)的底數(shù)。
如可以從等式(3)中看到的,idf(w)對于只在特殊例子中出現(xiàn)的詞w具有較大的值,即,它表示例子的內(nèi)容(主題),但是idf(w)對于在許多例子中廣泛出現(xiàn)的詞w諸如語氣動詞和助動詞具有較小的值。
例如,當(dāng)有1024個包括語氣動詞“wa”(日語的語氣動詞在英語中沒有對應(yīng)部分)的例子時,C(wa)被賦予1024。此外,如果offset等于1,例子的總數(shù)P為4096,而語氣動詞“wa”在例子#p中(或在輸入語句中)出現(xiàn)的次數(shù)為2(即,tf=2),則,在表示例子#p的向量中,當(dāng)使用tf時,與語氣動詞“wa”相應(yīng)的元素的值為2,而當(dāng)使用tf×idf時為6。
注意,使用tf×idf而不是tf作為向量元素的值可以適用于輸入例子和輸入語句或者只適用于輸入例子或輸入語句。
在由實(shí)際應(yīng)答語句生成器13執(zhí)行的匹配估算中,將表示語句內(nèi)容的詞的貢獻(xiàn)提高到得分的方法不限定為tf×idf的使用,也可以通過例如設(shè)置表示輸入語句和例子的向量元素的值來提高該貢獻(xiàn),以至于與諸如語氣動詞和助動詞的輔助動詞而不是諸如名詞、動詞和形容詞的獨(dú)立詞相應(yīng)的元素被設(shè)置為0。
在上述的例子中,實(shí)際應(yīng)答語句生成器13根據(jù)存儲在例子數(shù)據(jù)庫14中的輸入語句和例子產(chǎn)生實(shí)際應(yīng)答語句作為對輸入語句的應(yīng)答。在產(chǎn)生的實(shí)際應(yīng)答語句中,實(shí)際應(yīng)答語句生成器13也可以參考存儲在對話日志數(shù)據(jù)庫15中的對話日志。下面描述使用對話日志產(chǎn)生應(yīng)答語句的方法。舉例來說,在下面的討論中,描述了通過實(shí)際應(yīng)答語句生成器13執(zhí)行過程以產(chǎn)生實(shí)際應(yīng)答語句。首先,描述記錄在對話日志數(shù)據(jù)庫15中的對話日志。
圖9示出了存儲在圖2中所示的對話日志數(shù)據(jù)庫15中的對話日志的例子。
在對話日志數(shù)據(jù)庫15中,例如,在用戶與圖1所示的語音對話系統(tǒng)之間進(jìn)行的講話被記錄,以至于每個記錄(行)包括一個講話(發(fā)言)。如上所述,對話日志數(shù)據(jù)庫15從應(yīng)答輸出控制器16接收通過執(zhí)行用戶講話的語音識別而獲得的輸入語句,也接收作為對輸入語句的應(yīng)答而產(chǎn)生的應(yīng)答語句。當(dāng)對話日志數(shù)據(jù)庫15接收輸入語句和相應(yīng)的應(yīng)答語句時,對話日志數(shù)據(jù)庫15記錄這些語句以便一條記錄包括一個講話。
在對話日志數(shù)據(jù)庫15的每個記錄中,除了講話(輸入語句或應(yīng)答語句),還描述了按照講話的順序分配給每個講話的序列號的講話序號、表示講話的時間(或日期和時間)的講話時間以及講話的談話者。
如果講話序號的初始值為1,則圖9中所示例子中的對話日志中存在講話序號從1到r-1的r-1個講話。在這種情況下,記錄在對話日志數(shù)據(jù)庫15中的下一個講話將具有講話序號r。
輸入語句的講話時間表示用戶進(jìn)行的講話被記錄為輸入語句的時間。應(yīng)答語句的講話時間表示從應(yīng)答輸出控制器16輸出應(yīng)答語句的時間。總之,由設(shè)置在圖1中所示的語音對話系統(tǒng)中的內(nèi)置時鐘(未示出)測量講話時間。
在對話日志數(shù)據(jù)庫15的每個記錄的字段“談話者(talker)”中,描述了表示講話的談話者的信息。也就是說,對于用戶講話的記錄被描述為輸入語句,在談話者字段中描述了“用戶”。對于描述了應(yīng)答語句的記錄,在談話者字段中描述“系統(tǒng)”以便表示由圖1中所示的語音對話系統(tǒng)輸出的講話。
在對話日志數(shù)據(jù)庫15中,每個記錄不需要包括表示講話序號、講話時間以及談話者的信息。在對話日志數(shù)據(jù)庫15中,希望輸入語句和對各個輸入語句的應(yīng)答按照與實(shí)際產(chǎn)生的輸入語句或應(yīng)答相應(yīng)的講話的順序相同的順序被記錄。
在實(shí)際應(yīng)答語句的產(chǎn)生中,除了存儲在例子數(shù)據(jù)庫14中的輸入語句和例子,實(shí)際應(yīng)答語句生成器13也可以參考存儲在對話日志數(shù)據(jù)庫15中的對話日志。
根據(jù)對話日志產(chǎn)生實(shí)際應(yīng)答語句的方法使用記錄在對話日志中的最后的講話。根據(jù)對話日志產(chǎn)生實(shí)際應(yīng)答語句的另一種方法使用記錄在對話日志中的最后的講話和前面講話的特殊序號。
這里讓我們假設(shè)記錄在對話日志中的最后的講話具有講話序號r-1。在下文中,具有講話序號r-1的講話將簡稱為講話#r-1。
圖10示出了根據(jù)記錄在對話日志中的最后的講話#r-1產(chǎn)生實(shí)際應(yīng)答語句的方法。
在實(shí)際應(yīng)答語句生成器13根據(jù)記錄在對話日志中的最后的講話#r-1產(chǎn)生實(shí)際應(yīng)答語句的情況下,實(shí)際應(yīng)答語句生成器13不僅估算輸入語句與存儲在例子數(shù)據(jù)庫14中的例子#p之間的匹配而且估算前一個例子#p-1與記錄在對話日志中的講話#r-1之間的匹配,如圖10所示。
使得分(A,B)表示代表兩個語句A與B之間相似性的得分,該得分在比較過程中被計(jì)算(例如,該得分由根據(jù)等式(1)確定的cosθk給出)。實(shí)際應(yīng)答語句生成器13為該輸入語句確定存儲在例子數(shù)據(jù)庫14中的例子#p的得分,例如,根據(jù)下面的等式(4)。
例子#p的得分=得分(輸入語句,例子#p)+α×得分(Ur-1,例子#p-1)(4)其中,Ur-1表示記錄在對話日志中的講話#r-1。在圖9所示的例子中,講話#r-1是底行(記錄)中描述的講話“Year,I am also worried about theweather”。在等式(4)中,α表示分配給講話#r-1的權(quán)(表示被考慮的講話#r-1的等級)。α被設(shè)置為合適的等于或大于0的值。當(dāng)α被設(shè)置為0時,例子#p的得分被確定而不需要考慮記錄在對話日志中的講話#r-1。
實(shí)際應(yīng)答語句生成器13執(zhí)行比較過程以便根據(jù)等式(4)確定記錄在例子數(shù)據(jù)庫14中的每個例子#1,#2,...,#p-1,#p,#p+1的得分。實(shí)際應(yīng)答語句生成器13從例子數(shù)據(jù)庫14中選擇位于具有最高得分的例子的緊挨著的下一個位置或者從多個具有較高得分的例子中選擇的例子的緊挨著的下一個位置處的例子,并且實(shí)際應(yīng)答語句生成器13應(yīng)用所選擇的例子作為輸入語句的實(shí)際應(yīng)答語句。例如,圖10中,如果根據(jù)等式(4)例子#p具有最高的得分,則位于例子#p下面位置處的例子#p+1被選擇并且被用作實(shí)際應(yīng)答語句。
等式(4)中,例子#p的總分被賦予得分(輸入語句,例子#p)的總和,該總和是與輸入語句相關(guān)的例子#p的得分,而α得分(Ur-1,例子#p-1)是與講話#r-1(Ur-1)相關(guān)的例子#p-1的系數(shù)α加權(quán)的得分。然而,總分的確定并不局限于根據(jù)等式(4),也可以用其他的方法來確定總分。例如,可以通過任意單調(diào)地增加的函數(shù)得分(輸入語句,例子#p)和α得分(Ur-1,例子#p-1)來提供總分。
圖11示出了使用包括最后的講話和記錄在對話日志中的任意數(shù)量的前面的講話的講話而產(chǎn)生實(shí)際應(yīng)答語句的方法。
在實(shí)際應(yīng)答語句生成器13使用包括最后的講話#r-1和記錄在對話日志中的前面的講話即講話#r-1、#r-2、...、#r-D的D個講話而產(chǎn)生實(shí)際應(yīng)答語句的情況下,該實(shí)際應(yīng)答語句生成器13不僅執(zhí)行輸入語句與記錄在例子數(shù)據(jù)庫14中的例子#p之間的比較,而且執(zhí)行講話#r-1,#r-2,...,#r-D與例子#p之前的各T個例子即例子#p-1、#p-2、...、#p-D之間的比較。
更特別地,該實(shí)際應(yīng)答語句生成器13確定記錄在例子數(shù)據(jù)庫14中的與輸入語句相關(guān)的例子#p的得分,例如,根據(jù)下面的等式(5)。
scoreforexample#p=Σd=0Df(tr-d)×score(ur-d,example#p-d)---(5)]]>其中,tr-d表示從將講話#r-1記錄到對話日志的時間(圖9中所示的講話時間)到當(dāng)前的時間所消耗的時間。注意,當(dāng)d=0,tr=0時。
等式(5)中,f(t)是以自變量t單調(diào)遞減的非負(fù)函數(shù)。當(dāng)t=0時f(t)的值為,例如1。
等式(5)中,Ur-d表示記錄在對話日志中的講話#r-d。注意,當(dāng)d=0時,Ur表示輸入語句。
等式(5)中,D是等于或大于0的整數(shù),并且小于p和r中較小的一個。
該實(shí)際應(yīng)答語句生成器13執(zhí)行比較過程以便根據(jù)等式(5)確定記錄在例子數(shù)據(jù)庫14中的每個例子#1,#2,...,#p-1,#p,#p+1的得分。實(shí)際應(yīng)答語句生成器13從例子數(shù)據(jù)庫14中選擇位于具有最高得分的例子緊挨著的下面位置的例子或選擇位于從多個具有較高得分的例子中選擇的例子緊挨著的下面位置的例子,并且實(shí)際應(yīng)答語句生成器13使用所選擇的例子作為對輸入語句的實(shí)際應(yīng)答語句。例如,圖11中,如果根據(jù)等式(5)例子#p具有最高的得分,則位于例子#p下面位置的例子#p+1被選擇并且被用作實(shí)際應(yīng)答語句。
根據(jù)等式(5),通過與輸入語句Ur相關(guān)的例子#p的得分的總和給出例子#p的總分,即,通過系數(shù)1(=f(0))以及與講話#r-d相關(guān)的前一個例子#p-d的得分來加權(quán)得分_(Ur,例子#p),即,通過系數(shù)f(tr-d加權(quán)得分_(Ur-d,例子#p-d)(d=1,2,3,...,D),其中的權(quán)f(tr-d隨著從講話#r-d Ur-d的發(fā)表到當(dāng)前的時間所消耗的時間tr-d而減小。等式(5)中,當(dāng)D設(shè)置為0時,例子#p的得分被確定而不需要考慮記錄在對話日志中的任何講話。
圖12示出了等式(5)中使用的時間t的函數(shù)f(t)的例子。
用所謂的遺忘曲線的模擬來確定圖12中所示的函數(shù)f(t),該曲線表示存儲器記憶衰減的趨勢。注意,與低速減小的遺忘曲線相反,圖12中所示的函數(shù)f(t)以高速減小。
如上所述,通過在實(shí)際應(yīng)答語句的產(chǎn)生中也使用對話日志,計(jì)算得分變得可能,以至于當(dāng)用戶發(fā)出與剛才的講話相同的講話時,與剛才的輸入語句相同的輸入語句因此被給出,與用作剛才輸入語句的應(yīng)答的例子不同的例子比用作剛才輸入語句的應(yīng)答的例子獲得較高的得分,從而返回與剛才的應(yīng)答語句不同的應(yīng)答語句。
此外,防止應(yīng)答語句的主題突然改變也變得可能,該突然改變給用戶不自然的感覺。
舉例來說,讓我們假設(shè)有關(guān)旅行期間的談話的例子以及通過編輯談話節(jié)目中的談話而獲得的例子被記錄在例子數(shù)據(jù)庫14中。在這種情況下,當(dāng)上回輸出的例子是關(guān)于旅行期間談話的例子之一時,如果通過編輯談話節(jié)目期間的談話而獲得的例子之一被用作這次輸出的實(shí)際應(yīng)答語句,則因?yàn)橹黝}的突然改變而使用戶具有不自然的感覺。
可以通過根據(jù)等式(4)或(5)計(jì)算與匹配相關(guān)的得分而避免上面的問題,以至于在實(shí)際應(yīng)答語句的產(chǎn)生中也使用對話日志,從而防止實(shí)際應(yīng)答語句改變主題。
更特別地,例如,當(dāng)根據(jù)在旅行期間進(jìn)行談話的例子中選擇的例子產(chǎn)生上回輸出的實(shí)際應(yīng)答語句時,如果根據(jù)等式(4)或(5)計(jì)算得分,則旅行期間談話的例子一般比通過編輯談話節(jié)目的談話獲得的例子的得分較高,因此可以防止通過編輯談話節(jié)目中的談話而獲得的例子之一這次作為實(shí)際應(yīng)答語句被選擇輸出。
當(dāng)用戶發(fā)出表示要改變主題的講話時,諸如“不改變主題”等等,應(yīng)答生成器4(圖2)可以刪除記錄在對話日志數(shù)據(jù)庫15中的對話日志,以便任何以前的輸入語句或應(yīng)答語句將不再影響以下的應(yīng)答語句。
參照圖13,下面描述了由圖2中所示的應(yīng)答輸出控制器16執(zhí)行的過程以便控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出。
如上所述,應(yīng)答輸出控制器16從形式應(yīng)答語句生成器11接收形式應(yīng)答語句并且從實(shí)際應(yīng)答語句生成器13接收實(shí)際應(yīng)答語句。應(yīng)答輸出控制器16將所接收的形式應(yīng)答語句和實(shí)際應(yīng)答語句結(jié)合為響應(yīng)輸入語句的最終的格式,并且該應(yīng)答輸出控制器16將所合成的最終的應(yīng)答語句輸出到控制器3。
更特別地,例如,應(yīng)答輸出控制器16按照這個次序順序地輸出響應(yīng)輸入語句所產(chǎn)生的形式應(yīng)答語句和實(shí)際應(yīng)答語句,結(jié)果,因此將形式應(yīng)答語句和實(shí)際應(yīng)答語句的結(jié)合作為最終的應(yīng)答語句輸出。
更特別地,例如,如圖13中所示,如果“I hope it will be fine tomorrow”被作為輸入語句提供到形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13,則形式應(yīng)答語句生成器11產(chǎn)生,例如,格式與輸入語句“I hope it will befine tomorrow”一致的形式應(yīng)答語句“I hope so,too”,而實(shí)際應(yīng)答語句生成器13產(chǎn)生,例如,內(nèi)容與輸入語句“I hope it will be fine tomorrow”一致的實(shí)際應(yīng)答語句“I’m al so worried about the weather”。此外,形式應(yīng)答語句生成器11將形式應(yīng)答語句“I hope so,too”提供到應(yīng)答輸出控制器16,而實(shí)際應(yīng)答語句生成器13提供實(shí)際應(yīng)答語句“I hope it will befine tomorrow”。
在這種情況下,應(yīng)答輸出控制器16通過控制器3按照與它們被接收時的順序相同的順序?qū)男问綉?yīng)答語句生成器11接收的形式應(yīng)答語句“I hope so,too”以及從實(shí)際應(yīng)答語句生成器13接收的實(shí)際應(yīng)答語句“I hope it will befine tomorrow”提供到語音合成器5(圖1)。語音合成器5順序地合成形式應(yīng)答語句“I hope so,too”和實(shí)際應(yīng)答語句“I hope it will be finetomorrow”的聲音。結(jié)果,所合成的聲音“I hope so,too.I hope it willbe fine tomorrow”作為對輸入語句“I hope it will be fine tomorrow”最終的應(yīng)答從喇叭6輸出。
參照圖13所描述的例子中,應(yīng)答輸出控制器16順序地輸出響應(yīng)輸入語句按照這個順序所產(chǎn)生的形式應(yīng)答語句和實(shí)際應(yīng)答語句,從而以形式應(yīng)答語句和實(shí)際應(yīng)答語句的結(jié)合的格式輸出最終的應(yīng)答語句??蛇x地,應(yīng)答輸出控制器16可以按照相反的順序輸出形式應(yīng)答語句和實(shí)際應(yīng)答語句,從而以形式應(yīng)答語句和實(shí)際應(yīng)答語句的相反順序的組合的格式輸出最終的應(yīng)答語句。
有關(guān)形式應(yīng)答語句和實(shí)際應(yīng)答語句之一應(yīng)當(dāng)被首先輸出的決定可以,例如,根據(jù)表示響應(yīng)輸入語句的合適程度的應(yīng)答得分進(jìn)行。更特別地,每個形式應(yīng)答語句和實(shí)際應(yīng)答語句的應(yīng)答得分被確定,并且具有較高得分的一個被首先輸出而具有較低得分的另一個下一個被輸出。
可選地,應(yīng)答輸出控制器16只可以輸出形式應(yīng)答語句和實(shí)際應(yīng)答語句中具有較高得分的一個,作為最終的應(yīng)答語句。
應(yīng)答輸出控制器16可以輸出形式應(yīng)答語句和/或?qū)嶋H應(yīng)答語句,以至于當(dāng)形式應(yīng)答語句和實(shí)際應(yīng)答語句的得分都比預(yù)定的門限值高時,形式應(yīng)答語句和實(shí)際應(yīng)答語句都按照正常的或者相反的順序被輸出,而當(dāng)只有形式應(yīng)答語句和實(shí)際應(yīng)答語句之一比預(yù)定的門限值高時,僅僅輸出具有較高得分的而不是其他的形式應(yīng)答語句和實(shí)際應(yīng)答語句之一。在形式應(yīng)答語句和實(shí)際應(yīng)答語句的得分都比預(yù)定的門限值低的情況下,預(yù)定的語句諸如表示語音對話系統(tǒng)不能理解用戶所說的話的語句或者要求用戶以不同的方式再說一遍的語句可以作為最終的應(yīng)答語句被輸出而不輸出該形式應(yīng)答語句和該實(shí)際應(yīng)答語句。
可以通過根據(jù)輸入語句和例子之間的匹配程度所確定的得分來給出應(yīng)答得分。
現(xiàn)在,參照圖14中所示的流程圖,描述圖1中所示的語音對話系統(tǒng)的操作。
在圖14中所示的操作中,應(yīng)答輸出控制器16按照這個順序順序地輸出形式應(yīng)答語句和實(shí)際應(yīng)答語句,以至于形式應(yīng)答語句和實(shí)際應(yīng)答語句的正常順序的組合作為對輸入語句的最終的應(yīng)答被輸出。
由語音對話系統(tǒng)執(zhí)行的過程主要包括對話過程和語音合成過程。
在對話過程的第一步S1中,語音識別器2等待用戶說話。如果用戶說話,則語音識別器2執(zhí)行通過麥克風(fēng)1輸入的聲音的語音識別。
用戶在等于或大于預(yù)定值的時間內(nèi)沒有說話的情況下,語音對話系統(tǒng)可以從喇叭6輸出諸如“Please say something”信息的合成語音以便提示用戶說話或者可以將該信息顯示在顯示器(未示出)上。
在步驟S1中,如果語音識別器2執(zhí)行用戶發(fā)出并通過麥克風(fēng)1輸入的聲音的語音識別,則語音識別器2將以一連串詞的格式的語音識別結(jié)果作為輸入語句提供到控制器3。
不是必須通過語音識別給出輸入語句,可以用其他的方法給出輸入語句。例如,用戶可以操作鍵盤等等來輸入語句。在這種情況下,控制器3將輸入語句劃分成詞。
如果控制器3接收輸入語句,則控制器3從步驟S1前進(jìn)到步驟S2。步驟S2中,控制器3分析輸入語句以便確定是否結(jié)束對話過程。
如果在步驟S2中確定不用結(jié)束對話過程,則控制器3將輸入語句提供到應(yīng)答生成器4(圖2)中的形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13。此后,控制器3將過程前進(jìn)到步驟S3。
在步驟S3中,形式應(yīng)答語句生成器11響應(yīng)輸入語句產(chǎn)生形式應(yīng)答語句并且將合成的形式應(yīng)答語句提供到應(yīng)答輸出控制器16。此后,過程轉(zhuǎn)到步驟S4。更特別地,例如,當(dāng)“I hope it will be fine tomorrow”作為輸入語句給出時,如果“I hope so,too”被產(chǎn)生作為該輸入語句的形式應(yīng)答語句,該形式應(yīng)答語句從形式應(yīng)答語句生成器11被提供到應(yīng)答輸出控制器16。
在步驟S4中,應(yīng)答輸出控制器16通過控制器3(圖1)將從形式應(yīng)答語句生成器11接收的形式應(yīng)答語句輸出到語音合成器5。此后,過程轉(zhuǎn)到步驟S5。
在步驟S5中,實(shí)際應(yīng)答語句生成器13響應(yīng)輸入語句產(chǎn)生實(shí)際應(yīng)答語句并且將合成的實(shí)際應(yīng)答語句提供到應(yīng)答輸出控制器16。此后,過程轉(zhuǎn)到步驟S6。更特別地,例如,當(dāng)“I hope it will be fine tomorrow”被作為輸入語句給出時,如果“I’m also worried about the weather”作為輸入語句的實(shí)際應(yīng)答語句被產(chǎn)生,則將該實(shí)際應(yīng)答語句從實(shí)際應(yīng)答語句生成器13提供到應(yīng)答輸出控制器16。
在步驟S6中,輸出步驟S4中的形式應(yīng)答語句之后,應(yīng)答輸出控制器16通過控制器3(圖1)將從實(shí)際應(yīng)答語句生成器13接收的實(shí)際應(yīng)答語句輸出到語音合成器5。此后,過程轉(zhuǎn)到步驟S7。
也就是說,如圖14所示,應(yīng)答輸出控制器16將從形式應(yīng)答語句生成器11接收的形式應(yīng)答語句輸出到語音合成器5,然后,在形式應(yīng)答語句之后,該應(yīng)答輸出控制器16將從實(shí)際應(yīng)答語句生成器13接收的實(shí)際應(yīng)答語句輸出到語音合成器5。在當(dāng)前的例子中,“I hope so,too”作為形式應(yīng)答語句被產(chǎn)生而“I’m also worried about the weather”作為實(shí)際應(yīng)答語句被產(chǎn)生,因此,通過將實(shí)際應(yīng)答語句連接到形式應(yīng)答語句的末尾而獲得的語句,即,“I hope so,too.I’m also worried about the weather”,被從應(yīng)答輸出控制器16輸出到語音合成器5。
在步驟S7中,應(yīng)答輸出控制器16更新記錄在對話日志數(shù)據(jù)庫15中的對話日志。此后,過程返回到步驟S1,而過程從步驟S1重復(fù)。
更特別地,在步驟S7中,輸入語句以及響應(yīng)輸入語句輸出的最終的應(yīng)答語句,即,形式應(yīng)答語句和實(shí)際應(yīng)答語句的正常順序的組合,被提供到對話日志數(shù)據(jù)庫15。如果具有講話序號r-1的講話是記錄在對話日志數(shù)據(jù)庫15中的最后的講話,則對話日志數(shù)據(jù)庫15將從應(yīng)答輸出控制器16提供的輸入語句記錄為具有講話序號r的講話并且也將從應(yīng)答輸出控制器16提供的合成的應(yīng)答語句記錄為具有講話序號r+1的講話。
更特別地,例如,當(dāng)“I hope it will be fine tomorrow”作為輸入語句給出,而“I hope so,too.I’m also worried about the weather”作為通過將實(shí)際應(yīng)答語句連接到形式應(yīng)答語句的末尾而產(chǎn)生的最終的應(yīng)答語句被輸出時,輸入語句“I hope it will be fine tomorrow”被記錄為對話日志數(shù)據(jù)庫15中具有講話序號r的講話,而合成的應(yīng)答語句“I hope so,too.I’m also worried about the weather”進(jìn)一步被記錄為具有講話序號r+1的講話。
另一方面,在步驟S2確定對話過程應(yīng)當(dāng)結(jié)束的情況下,即,在諸如“Let’s end our talk”的語句或表示談話結(jié)束的類似的語句作為輸入語句給出的情況下,該對話過程結(jié)束。
在該對話過程中,如上所述,響應(yīng)輸入語句在步驟S3中產(chǎn)生形式應(yīng)答語句,并且在步驟S4中該形式應(yīng)答語句從應(yīng)答輸出控制器16輸出到語音合成器5。此外,步驟S5中,產(chǎn)生與輸入語句相應(yīng)的實(shí)際應(yīng)答語句,而在步驟S6中該實(shí)際應(yīng)答語句從應(yīng)答輸出控制器16輸出到語音合成器5。
如果在對話過程中形式應(yīng)答語句或?qū)嶋H應(yīng)答語句從應(yīng)答輸出控制器16被輸出,則語音合成器5(圖1)開始該語音合成過程。注意,語音合成過程與對話過程被同時執(zhí)行。
在語音合成過程的第一步S11中,語音合成器5接收從應(yīng)答輸出控制器16輸出的形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。此后,過程轉(zhuǎn)到步驟S12。
步驟S12中,語音合成器5根據(jù)步驟S11中接收的形式應(yīng)答語句或?qū)嶋H應(yīng)答語句執(zhí)行語音的合成以便合成與形式應(yīng)答語句或?qū)嶋H應(yīng)答語句相應(yīng)的聲音。該合成的聲音從喇叭6(圖1)被輸出。如果聲音的輸出被完成,則語音合成過程結(jié)束。
在對話過程中,如上所述,步驟S4中的形式應(yīng)答語句從應(yīng)答輸出控制器16輸出到語音合成器5,而此后,步驟S6中,實(shí)際應(yīng)答語句從應(yīng)答輸出控制器16輸出到語音合成器5。在語音合成過程中,如上所述,每次接收應(yīng)答語句時,與所接收的應(yīng)答語句相應(yīng)的聲音被合成并且輸出。
更特別地,在“Ihope so,too”作為形式應(yīng)答語句被產(chǎn)生而“I’m alsoworried about the weather”作為實(shí)際應(yīng)答語句被產(chǎn)生的情況下,形式應(yīng)答語句“I hope so,too”和實(shí)際應(yīng)答語句“I’m also worried about the weather”按照這個順序從應(yīng)答輸出控制器16輸出到語音合成器5。語音合成器5按照這個順序合成與形式應(yīng)答語句“I hope so,too”和實(shí)際應(yīng)答語句“I’m alsoworried about the weather”相應(yīng)的聲音。結(jié)果,所合成的聲音“I hope so,too.I’m also worried about the weather”被從喇叭6輸出。
在對話過程和語音合成過程不能并行執(zhí)行的情況下,在對話過程的步驟S4和S5之間的步驟中,語音合成器5執(zhí)行與步驟S4中從應(yīng)答輸出控制器16輸出的形式應(yīng)答語句相關(guān)的語音合成過程,而在對話過程的步驟S6和S7之間的步驟中,執(zhí)行與步驟S6中從應(yīng)答輸出控制器16輸出的實(shí)際應(yīng)答語句相關(guān)的語音合成過程。
在當(dāng)前的實(shí)施例中,如上所述,分別提供形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13,并且通過形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13按照上述的方式分別產(chǎn)生形式應(yīng)答語句和實(shí)際應(yīng)答語句。因此,可以獲得格式與輸入語句一致的形式應(yīng)答語句并且也可以獲得內(nèi)容與輸入語句一致的實(shí)際應(yīng)答語句。此外,形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出由應(yīng)答輸出控制器16來控制,以便輸出格式和內(nèi)容都與輸入語句一致的最終的應(yīng)答語句。這可以使用戶具有系統(tǒng)理解用戶所說的話的感覺。
此外,因?yàn)楠?dú)立地執(zhí)行通過形式應(yīng)答語句生成器11的形式應(yīng)答語句的產(chǎn)生以及通過實(shí)際應(yīng)答語句生成器13的實(shí)際應(yīng)答語句的產(chǎn)生,如果語音合成器5能夠與形式應(yīng)答語句生成器11或?qū)嶋H應(yīng)答語句生成器13執(zhí)行的過程同時執(zhí)行與從應(yīng)答輸出控制器16輸出的形式應(yīng)答語句或?qū)嶋H應(yīng)答語句相關(guān)的語音合成,則實(shí)際應(yīng)答語句生成器13可以產(chǎn)生實(shí)際應(yīng)答語句,而由形式應(yīng)答語句生成器11產(chǎn)生的形式應(yīng)答語句的被合成的聲音被輸出。這可以降低從用戶給出輸入語句到開始輸出應(yīng)答語句的應(yīng)答時間。
當(dāng)形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13根據(jù)例子分別產(chǎn)生形式應(yīng)答語句和實(shí)際應(yīng)答語句時,與根據(jù)詞來表示輸入語句的內(nèi)容(主題)的實(shí)際應(yīng)答語句的產(chǎn)生中所使用的例子相比,不用為根據(jù)詞來確定輸入語句的格式(即,它在格式上與輸入語句一致)的形式應(yīng)答語句的產(chǎn)生準(zhǔn)備大量的例子。
鑒于上述內(nèi)容,在形式應(yīng)答語句的產(chǎn)生中所使用的例子的序號與實(shí)際應(yīng)答語句的產(chǎn)生中所使用的例子的序號的比率被設(shè)置為,例如,1∶9。這里,為了下面的解釋的簡單化,讓我們假設(shè)需要產(chǎn)生應(yīng)答語句的時間簡單地與應(yīng)答語句的產(chǎn)生中所使用的例子的序號成比例。在這種情況下,根據(jù)為形式應(yīng)答語句的產(chǎn)生所準(zhǔn)備的例子以及為實(shí)際應(yīng)答語句的產(chǎn)生所準(zhǔn)備的例子,產(chǎn)生形式應(yīng)答語句所需的時間是產(chǎn)生應(yīng)答語句所需時間的十分之一。因此,如果在形式應(yīng)答語句的產(chǎn)生完成之后立即輸出形式應(yīng)答語句,則應(yīng)答時間可以降低到輸出形式應(yīng)答語句所需時間的十分之一,而形式應(yīng)答語句和實(shí)際應(yīng)答語句都產(chǎn)生后實(shí)際應(yīng)答語句被完成。
在對話中,這可以實(shí)時地或很快地響應(yīng)輸入語句。
在語音識別器5不能與形式應(yīng)答語句生成器11或?qū)嶋H應(yīng)答語句生成器13執(zhí)行的過程并行執(zhí)行應(yīng)答輸出控制器16輸出的形式應(yīng)答語句或?qū)嶋H應(yīng)答語句的語音識別的情況下,當(dāng)形式應(yīng)答語句生成器11完成形式應(yīng)答語句的產(chǎn)生時,語音合成器5執(zhí)行形式應(yīng)答語句的語音合成,此后,當(dāng)實(shí)際應(yīng)答語句生成器13完成實(shí)際應(yīng)答語句的產(chǎn)生時,語音合成器5執(zhí)行實(shí)際應(yīng)答語句的語音合成??蛇x地,在形式應(yīng)答語句和實(shí)際應(yīng)答語句被順序產(chǎn)生之后,語音合成器5順序執(zhí)行形式應(yīng)答語句和實(shí)際應(yīng)答語句的語音合成。
除了輸入語句和例子,在實(shí)際應(yīng)答語句的產(chǎn)生中使用對話日志不但可以防止實(shí)際應(yīng)答語句內(nèi)容(主題)的突然改變,而且可以為同一個輸入語句產(chǎn)生不同的實(shí)際應(yīng)答語句。
現(xiàn)在,參照圖15中所示的流程圖,根據(jù)本發(fā)明的另一個實(shí)施例描述了語音對話系統(tǒng)執(zhí)行的對話過程。
圖15中所示的對話過程除了附加的步驟S26之外與圖14中所示的對話過程相似。也就是說,在圖15所示的對話過程中,步驟S21到S25以及步驟S27和28以與圖14所示的對話過程的步驟S1到S7相似的方式被分別執(zhí)行。然而,圖15中所示的對話過程與圖14中所示的對話過程不同,因?yàn)樵谂c圖14的步驟S5相應(yīng)的步驟S25完成之后,步驟S26被執(zhí)行,并且此后,執(zhí)行與圖14的步驟S6相應(yīng)的步驟S27。
也就是說,圖15所示的對話過程中,在步驟S21中,如圖14中所示的步驟S1,語音識別器2等待用戶說話。如果用戶說了話,則該語音識別器2執(zhí)行語音識別以檢測用戶說了什么,并且語音識別器2將語音識別結(jié)果以一連串詞的形式作為輸入語句提供到控制器3。如果控制器3接收了輸入語句,則控制器3將過程從步驟S21前進(jìn)到步驟S22。在步驟S22中,如圖14中所示的步驟S2,控制器3分析輸入語句以便確定是否結(jié)束對話過程。如果步驟S22中確定需要結(jié)束對話過程,則該對話過程被結(jié)束。
如果在步驟S22中確定不應(yīng)該結(jié)束該對話過程,則控制器3將輸入語句提供到應(yīng)答生成器4(圖2)中的形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13。此后,控制器3將過程前進(jìn)到步驟S23。在步驟S23中,形式應(yīng)答語句生成器11響應(yīng)輸入語句產(chǎn)生形式應(yīng)答語句并且將合成的形式應(yīng)答語句提供到應(yīng)答輸出控制器16。此后,過程轉(zhuǎn)到步驟S24。
在步驟S24中,應(yīng)答輸出控制器16通過控制器3(圖1)將從形式應(yīng)答語句生成器11接收的形式應(yīng)答語句輸出到語音合成器5。此后,過程轉(zhuǎn)到步驟S25。在應(yīng)答中,如參照圖14在上面所描述的,該語音合成器5執(zhí)行與形式應(yīng)答語句相關(guān)的語音合成。
在步驟S25中,實(shí)際應(yīng)答語句生成器13響應(yīng)輸入語句產(chǎn)生實(shí)際應(yīng)答語句并且將所合成的實(shí)際應(yīng)答語句提供到應(yīng)答輸出控制器16。然后過程轉(zhuǎn)到步驟S26。
在步驟S26中,應(yīng)答輸出控制器16確定從實(shí)際應(yīng)答語句生成器13接收的實(shí)際應(yīng)答語句是否與緊挨著的先前的步驟S24中輸出到語音合成器5(圖1)的形式應(yīng)答語句重疊,即,從實(shí)際應(yīng)答語句生成器13接收的實(shí)際應(yīng)答語句是否包括緊挨著的先前的步驟S24中輸出到語音合成器5的形式應(yīng)答語句。如果該實(shí)際應(yīng)答語句包括形式應(yīng)答語句,則與形式應(yīng)答語句相同的實(shí)際應(yīng)答語句的部分從實(shí)際應(yīng)答語句中刪除。
更特別地,例如,當(dāng)形式應(yīng)答語句為“Yes.”而實(shí)際應(yīng)答語句為“Yes,I’m also worried about the weather”時,如果根據(jù)圖14中所示的流程執(zhí)行對話過程,則“Yes.Yes,I’m also worried about the weather”作為最終的應(yīng)答被輸出,它是實(shí)際應(yīng)答語句和形式應(yīng)答語句的簡單連接。作為實(shí)際應(yīng)答語句和形式應(yīng)答語句簡單連接的結(jié)果,“Yes”在最終的應(yīng)答中重復(fù)。
在對話過程中,為了避免上述問題,在步驟S26中,檢查從實(shí)際應(yīng)答語句生成器13提供的實(shí)際應(yīng)答語句是否包括在緊挨著的先前的步驟S24中輸出到語音合成器5的形式應(yīng)答語句。如果實(shí)際應(yīng)答語句包括該形式應(yīng)答語句,那么與形式應(yīng)答語句相同的實(shí)際應(yīng)答語句的部分從實(shí)際應(yīng)答語句中刪除。更特別地,在形式應(yīng)答語句為“Yes.”而實(shí)際應(yīng)答語句為“Yes,I’m also worriedabout the weather”的情況下,實(shí)際應(yīng)答語句“Yes,I’m also worried aboutthe weather”包括與形式應(yīng)答語句“Yes”相同的部分,因此該相同的部分“Yes”從實(shí)際應(yīng)答語句中刪除。因此,實(shí)際應(yīng)答語句被修改為“I’m alsoworried about the weather”。
在實(shí)際應(yīng)答語句不包括整個形式應(yīng)答語句但是實(shí)際應(yīng)答語句與形式應(yīng)答語句部分地相互重疊的情況下,在上述的步驟S26中重疊部分可以從實(shí)際應(yīng)答語句中刪除。例如,當(dāng)形式應(yīng)答語句為“Yes,indeed”而實(shí)際應(yīng)答語句為“Indeed,I’m also worried about the weather”時,形式應(yīng)答語句“Yes,indeed”不完全包括在實(shí)際應(yīng)答語句“Indeed,I’m also worried about theweather”中,但是形式應(yīng)答語句的最后一部分“indeed”與實(shí)際應(yīng)答語句的第一部分“Indeed”相同。因此,在步驟S26中,該重疊部分“Indeed”從實(shí)際應(yīng)答語句“Indeed,I’m also worried about the weather”中刪除。結(jié)果,實(shí)際應(yīng)答語句被修改為“I’m also worried about the weather”。
當(dāng)實(shí)際應(yīng)答語句不包括與形式應(yīng)答語句重疊的部分時,在步驟S26中維持實(shí)際應(yīng)答語句而不作任何修改。
在步驟S26之后,處理轉(zhuǎn)到步驟S27,在該步驟中應(yīng)答輸出控制器16通過控制器3(圖1)將從實(shí)際應(yīng)答語句生成器13接收的實(shí)際應(yīng)答語句輸出到語音合成器5。此后,過程轉(zhuǎn)到步驟S28。在步驟S28中,如圖4中的步驟S7,應(yīng)答輸出控制器16通過將輸入語句以及響應(yīng)輸入語句輸出的最終應(yīng)答語句額外地記錄到對話日志數(shù)據(jù)庫15的對話日志中而更新對話日志。此后,處理返回到步驟S21,并且該處理從步驟S21重復(fù)。
在圖15所示的對話處理中,如上所述,在步驟S26中,與形式應(yīng)答語句部分或全部一致的實(shí)際應(yīng)答語句的部分從實(shí)際應(yīng)答語句中被刪除,而不再包括重疊部分的合成的實(shí)際應(yīng)答語句被輸出到語音合成器5。這防止了輸出包括諸如“Yes.Yes,I’m also worried about the weather”或“Yes,indeed.Indeed,I,m also worried about the weather”的重復(fù)部分的不自然的合成語音(應(yīng)答)。
更特別地,例如,當(dāng)形式應(yīng)答語句為“Yes.”而實(shí)際應(yīng)答語句為“Yes,I’m also worried about the weather”時,如果根據(jù)圖14中所示的流程執(zhí)行對話過程,則“Yes.Yes,I’m also worried about the weather”作為最終的應(yīng)答被輸出,它是實(shí)際應(yīng)答語句和形式應(yīng)答語句的簡單連接。作為實(shí)際應(yīng)答語句和形式應(yīng)答語句簡單連接的結(jié)果,“Yes”在最終的應(yīng)答中重復(fù)。當(dāng)形式應(yīng)答語句為“Yes,indeed”而實(shí)際應(yīng)答語句為“Indeed,I’m also worriedabout the weather”時,根據(jù)圖14所示的流程的對話過程將產(chǎn)生“Yes,indeed.Indeed,I,m also worried about the weather”作為最終的應(yīng)答,其中的“indeed”被重復(fù)。
相反,在圖15所示的對話過程中,檢查實(shí)際應(yīng)答語句是否包括與部分或全部的形式應(yīng)答語句一致的部分(重疊部分),如果檢測到重疊部分,則從實(shí)際應(yīng)答語句中刪除該重疊部分。因此,可以防止輸出包括重復(fù)部分的不自然的合成語言。
更特別地,例如,當(dāng)形式應(yīng)答語句為“Yes”而實(shí)際應(yīng)答語句為“Yes,I’m also worried about the weather”(包括整個形式應(yīng)答語句“Yes”)時,在步驟S26中,該重疊部分“Yes”從實(shí)際應(yīng)答語句“Yes,I’m also worriedabout the weather”中被刪除。結(jié)果,該實(shí)際應(yīng)答語句被修改為“I’m alsoworried about the weather”。因此,合成的合成語言變?yōu)椤癥es,I’m alsoworried about the weather”,它是形式應(yīng)答語句“Yes”以及被修改的不再包括重疊部分“Yes”的實(shí)際應(yīng)答語句“I’m also worried about the weather”的結(jié)合。
當(dāng)形式應(yīng)答語句為“Yes,indeed”而實(shí)際應(yīng)答語句為“Indeed,I’m alsoworried about the weather”(其中的“Indeed”是與形式應(yīng)答語句重疊的部分)時,在步驟S26中,重疊部分“Indeed”從實(shí)際應(yīng)答語句“Indeed,I’m also worried about the weather”中被刪除。結(jié)果,該實(shí)際應(yīng)答語句被修改為“I’m also worried about the weather”。因此,合成的合成語言變?yōu)椤癥es,indeed,I’m also worried about the weather”,它是形式應(yīng)答語句“Yes,indeed”以及被修改的不再包括重疊部分“Indeed”的實(shí)際應(yīng)答語句“I’m also worried about the weather”的結(jié)合。
當(dāng)形式應(yīng)答語句和實(shí)際應(yīng)答語句包括重疊部分時,重疊部分可以不從實(shí)際應(yīng)答語句而從形式應(yīng)答語句中刪除。然而,在圖15所示的對話過程中,因?yàn)槭窃谛问綉?yīng)答語句已經(jīng)在步驟S24中從應(yīng)答輸出控制器16輸出到語音合成器5之后,才在步驟S26中執(zhí)行重疊部分的刪除,所以不可能從形式應(yīng)答語句中刪除該重疊部分。
為了可以從形式應(yīng)答語句中刪除重疊部分,對話過程被修改為圖16中所示的流程圖。
在圖16所示的對話過程中,在步驟S31中,如圖14中所示的步驟S1,語音識別器2等待用戶說話。如果用戶說話,則語音識別器2執(zhí)行語音識別以檢測用戶說了什么,并且語音識別器2將具有一連串詞格式的語音識別結(jié)果作為輸入語句提供到控制器3。如果控制器3接收了該輸入語句,則控制器3將過程從步驟S31前進(jìn)到步驟S32。在步驟S32中,如圖14中所示的步驟S2,控制器3分析輸入語句以確定該對話過程是否應(yīng)當(dāng)被結(jié)束。如果在步驟S32中確定對話過程應(yīng)當(dāng)被結(jié)束,則該對話過程被結(jié)束。
如果在步驟S32中確定不結(jié)束對話過程,則控制器3將輸入語句提供到應(yīng)答生成器4(圖2)中的形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13。此后,控制器3將過程前進(jìn)到步驟S33。在步驟S33中,形式應(yīng)答語句生成器11響應(yīng)輸入語句產(chǎn)生形式應(yīng)答語句并且將合成的形式應(yīng)答語句提供到應(yīng)答輸出控制器16。此后,過程轉(zhuǎn)到步驟S34。
在步驟S34中,實(shí)際應(yīng)答語句生成器13響應(yīng)輸入語句產(chǎn)生實(shí)際應(yīng)答語句并且將合成的實(shí)際應(yīng)答語句提供到應(yīng)答輸出控制器16。此后,過程轉(zhuǎn)到步驟S35。
注意,步驟S33和S34可以并行執(zhí)行。
在步驟S35中,應(yīng)答輸出控制器16通過結(jié)合步驟S33中由形式應(yīng)答語句生成器11產(chǎn)生的形式應(yīng)答語句以及步驟S34中由實(shí)際應(yīng)答語句生成器13產(chǎn)生的實(shí)際應(yīng)答語句而產(chǎn)生最終的語句作為對輸入語句的應(yīng)答。此后,過程轉(zhuǎn)到步驟S36。稍后將詳細(xì)描述步驟S35中執(zhí)行的結(jié)合形式應(yīng)答語句和實(shí)際應(yīng)答語句的過程。
在步驟S36中,應(yīng)答輸出控制器16通過控制器3(圖1)將步驟S35中通過結(jié)合形式應(yīng)答語句和實(shí)際應(yīng)答語句產(chǎn)生的最終的應(yīng)答語句輸出到語音合成器5。此后,過程轉(zhuǎn)到步驟S37。語音合成器5采用與結(jié)合圖14在前面描述的語音合成過程相同的方式執(zhí)行語音合成,以便產(chǎn)生與應(yīng)答輸出控制器16提供的最終的應(yīng)答語句相應(yīng)的聲音。
在步驟S37中,應(yīng)答輸出控制器16以與圖14中的步驟S7相同的方式,通過將輸入語句以及作為對輸入語句的應(yīng)答而輸出的最終的應(yīng)答語句額外地記錄到對話日志數(shù)據(jù)庫15的對話日志中而更新該對話日志。此后,過程返回到步驟S31,過程從步驟S31重復(fù)。
在圖16所示的對話過程中,根據(jù)下面描述的第一到第三種方法之一,在步驟S35中通過結(jié)合形式應(yīng)答語句和實(shí)際應(yīng)答語句產(chǎn)生輸入語句的最終的應(yīng)答語句。
在第一種方法中,通過將實(shí)際應(yīng)答語句結(jié)合到形式應(yīng)答語句的末尾或者通過將形式應(yīng)答語句結(jié)合到實(shí)際應(yīng)答語句的末尾而產(chǎn)生最終的應(yīng)答語句。
在第二種方法中,檢查形式應(yīng)答語句和實(shí)際應(yīng)答語句是否滿足預(yù)定條件,下面將參照第六修改例進(jìn)一步詳細(xì)地描述。
在第二種方法中,當(dāng)形式應(yīng)答語句和實(shí)際應(yīng)答語句都滿足預(yù)定條件時,通過將實(shí)際應(yīng)答語句結(jié)合到形式應(yīng)答語句的末尾或者將形式應(yīng)答語句結(jié)合到實(shí)際應(yīng)答語句的末尾而產(chǎn)生最終的應(yīng)答語句,如同第一種方法。另一方面,當(dāng)只有形式應(yīng)答語句和實(shí)際應(yīng)答語句之一滿足預(yù)定條件時,滿足預(yù)定條件的形式應(yīng)答語句或?qū)嶋H應(yīng)答語句被用作最終的應(yīng)答語句。在形式應(yīng)答語句和實(shí)際應(yīng)答語句都不滿足預(yù)定條件的情況下,語句“I have no good answer”或相似的語句被用作最終的應(yīng)答語句。
在第三種方法中,使用機(jī)器翻譯領(lǐng)域中根據(jù)短語到短語的翻譯結(jié)果產(chǎn)生語句的公知技術(shù)從形式應(yīng)答語句和實(shí)際應(yīng)答語句產(chǎn)生最終的應(yīng)答語句。
在第一種方法或第二種方法中,當(dāng)形式應(yīng)答語句和實(shí)際應(yīng)答語句被連接時,可以從產(chǎn)生最終應(yīng)答語句的過程中刪除形式應(yīng)答語句和實(shí)際應(yīng)答語句之間的重疊部分,如圖15中所示的對話過程。
在圖16所示的對話過程中,如上所述,在形式應(yīng)答語句和實(shí)際應(yīng)答語句被結(jié)合之后,所合成的語句被作為最終應(yīng)答語句從應(yīng)答輸出控制器16輸出到語音合成器5。因此,可以從形式應(yīng)答語句和實(shí)際應(yīng)答語句兩者之一刪除重疊部分。
在形式應(yīng)答語句和實(shí)際應(yīng)答語句包括重疊部分的情況下,代替從形式應(yīng)答語句或?qū)嶋H應(yīng)答語句刪除重疊部分,應(yīng)答輸出控制器16可以忽略形式應(yīng)答語句并且可以簡單地只輸出實(shí)際應(yīng)答語句作為最終的應(yīng)答語句。
通過忽略形式應(yīng)答語句以及簡單地只輸出實(shí)際應(yīng)答語句作為最終的應(yīng)答語句,也可以防止合成的語音包括不自然的重復(fù)部分,如參照圖15在上面描述的。
更特別地,例如,當(dāng)形式應(yīng)答語句為“Yes”而實(shí)際應(yīng)答語句為“Yes,I’m also worried about the weather”時,如果忽略形式應(yīng)答語句而僅僅輸出實(shí)際應(yīng)答語句作為最終的應(yīng)答語句,則“Yes,I’m also worried about theweather”作為最終的應(yīng)答語句被輸出。在這個具體的例子中,如果按照這個順序簡單地連接形式應(yīng)答語句“Yes”和實(shí)際應(yīng)答語句“Yes,I’m also worriedabout the weather”,則合成的最終應(yīng)答語句“Yes。Yes,I’m also worriedabout the weather”包括不自然的重復(fù)的詞“Yes”。通過忽略形式應(yīng)答語句來防止這種不自然的表達(dá)。
當(dāng)形式應(yīng)答語句為“Yes,indeed”而實(shí)際應(yīng)答語句為“Indeed,I’m alsoworried about the weather”時,如果忽略形式應(yīng)答語句并且僅僅輸出實(shí)際應(yīng)答語句作為最終的應(yīng)答語句,則“Yes,indeed.I’m also worried aboutthe weather”作為最終的應(yīng)答語句被輸出。在這個具體的例子中,如果按照這個順序簡單地連接形式應(yīng)答語句“Yes,indeed”和實(shí)際應(yīng)答語句“Indeed,I’m also worried about the weather”,則合成的最終應(yīng)答語句“Yes,indeed.Indeed,I’m also worried about the weather”包括不自然的重復(fù)的詞“indeed”。通過忽略形式應(yīng)答語句來防止該不自然的表達(dá)。
在圖16所示的對話過程中,形式應(yīng)答語句和實(shí)際應(yīng)答語句都被產(chǎn)生之后,應(yīng)答輸出控制器16通過結(jié)合形式應(yīng)答語句和實(shí)際應(yīng)答語句來產(chǎn)生最終的應(yīng)答語句,并且應(yīng)答輸出控制器16將最終的應(yīng)答語句輸出到語音合成器5。因此,有從用戶給出輸入語句到開始輸出應(yīng)答語句的應(yīng)答時間變得比圖14或15中所示的對話過程的應(yīng)答時間長的可能性,圖14或15中形式應(yīng)答語句的語音合成以及實(shí)際應(yīng)答語句的產(chǎn)生被并行執(zhí)行。
然而,圖16所示的對話過程具有形式應(yīng)答語句和實(shí)際應(yīng)答語句都被產(chǎn)生之后,應(yīng)答輸出控制器16將形式應(yīng)答語句和實(shí)際應(yīng)答語句結(jié)合為應(yīng)答語句的最終格式的優(yōu)點(diǎn),這可以在結(jié)合過程中任意修改形式應(yīng)答語句和實(shí)際應(yīng)答語句的任意一個或者兩者。
現(xiàn)在,描述圖1所示的語音對話系統(tǒng)的第一到第十修改例。首先,非常簡單地描述第一到第十修改例,此后,詳細(xì)地描述每個修改例。
在第一修改例中,使用動態(tài)編程(DP)匹配方法執(zhí)行用于確定例子與輸入語句的相似性的比較,而不用向量空間方法。在第二修改例中,實(shí)際應(yīng)答語句生成器13使用具有最高得分的例子作為實(shí)際應(yīng)答語句,而不使用具有最高得分的例子的下面位置處的例子。在第三修改例中,圖1中所示的語音對話系統(tǒng)的特征在于只使用特定談話者的講話作為應(yīng)答語句的產(chǎn)生中使用的例子。在第四修改例中,在輸入語句與例子之間的匹配得分的計(jì)算中,根據(jù)例子的組加權(quán)得分以至于與目前的主題相關(guān)的例子被優(yōu)先地選擇為應(yīng)答語句。在第五修改例中,根據(jù)每個都包括一個或多個變量的例子產(chǎn)生應(yīng)答語句。在第六修改例中,確定形式應(yīng)答語句或?qū)嶋H應(yīng)答語句是否滿足預(yù)定條件,并且輸出滿足預(yù)定條件的形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。在第七修改例中,為語音識別結(jié)果計(jì)算信心度量,并且考慮該信心度量產(chǎn)生應(yīng)答語句。在第八修改例中,在應(yīng)答語句的產(chǎn)生中對話日志也被用作例子。在第九修改的實(shí)施例中,根據(jù)N個最好的語音識別候選者中的每個的可能性(表示可能性的得分)并且也根據(jù)每個例子和每個語音識別候選者之間匹配的得分確定應(yīng)答語句。在第十修改例中,根據(jù)用戶語音的聲學(xué)特征產(chǎn)生形式應(yīng)答語句。
下面進(jìn)一步詳細(xì)地描述第一到第十修改例。
第一修改例在第一修改例中,在由實(shí)際應(yīng)答語句生成器13執(zhí)行以確定輸入語句的例子的相似性的比較處理中,動態(tài)編程(DP)匹配方法被用來代替向量空間方法。
該DP匹配方法被廣泛用來計(jì)算彼此在元素的數(shù)量上不同(在長度上不同)的兩個模式之間的距離測量,同時考慮了每個模式的相似元素之間的對應(yīng)關(guān)系。
輸入語句和例子是一連串元素的格式,其中元素是詞。因此,DP匹配方法能夠用來計(jì)算輸入語句和例子之間的距離測量,同時考慮了包括在輸入語句和例子中的相似詞之間的對應(yīng)關(guān)系。
參見圖17,根據(jù)DP匹配方法在輸入語句和例子之間進(jìn)行的匹配的評估處理將在下面描述。
圖17示出了在輸入語句和例子之間DP匹配的例子。
在圖17的上方,顯示了輸入語句“I will go out tomorrow”和例子“Iwant to go out the day after tomorrow”之間DP匹配的結(jié)果的例子。在圖17的下方,顯示了輸入語句“Let’s play soccert omorrow”和例子“Whatshall we play tomorrow?”之間DP匹配的結(jié)果的例子。
在DP匹配中,輸入語句中的每個詞與例子中的對應(yīng)詞進(jìn)行比較并保持詞的順序,并且評估每個詞與其對應(yīng)詞之間的對應(yīng)關(guān)系。
有四種類型的對應(yīng)關(guān)系正確對應(yīng)(C),替換(S),插入(I)和刪除(D)。
正確對應(yīng)C是指輸入語句中的詞與例子中的對應(yīng)詞之間的精確匹配。替換S是指輸入語句中的詞與例子中的對應(yīng)詞彼此不同的對應(yīng)關(guān)系。插入I是指輸入語句中沒有詞相應(yīng)于例子中的詞的對應(yīng)關(guān)系(即,該例子包括沒有包括在輸入語句中的附加詞)。刪除D是指例子中沒有包括相應(yīng)于輸入語句中的詞的對應(yīng)詞的對應(yīng)關(guān)系(即,例子中缺少包括在輸入語句中的詞)。
每一對對應(yīng)詞被標(biāo)以符號C、S、I和D中的一個,以便指示由DP匹配確定的對應(yīng)關(guān)系。如果不是C的符號被標(biāo)注給一特殊對的對應(yīng)詞,即,如果S、I和D中的一個被標(biāo)注,那么在輸入語句和例子中就有一些區(qū)別(在詞上或詞的順序上)。
在輸入語句和例子之間的匹配被DP匹配方法評估的情況下,權(quán)被分配給輸入語句和例子的每個詞以表示在該匹配中每個詞有多重要。1可以作為權(quán)分配給所有詞,或者,分配給每個詞的權(quán)可以彼此不同。
圖18示出了在除了權(quán)被分配給輸入語句和例子的每個詞之外其它與圖17所示的例子相似的輸入語句和例子之間DP匹配的結(jié)果的例子。
在圖18的上方,顯示了與圖17的上方示出的那些相似的輸入語句和例子之間DP匹配的結(jié)果的例子,其中,權(quán)被分配給輸入語句和例子的每個詞。在圖18的下方,顯示了與圖17的下方示出的那些相似的輸入語句和例子之間DP匹配的結(jié)果的例子,其中,權(quán)被分配給輸入語句和例子的每個詞。
圖18中,位于輸入語句和例子的每個詞末尾的跟在冒號后面的數(shù)字表示分配給該詞的權(quán)。
在由形式應(yīng)答語句生成器11執(zhí)行的匹配處理中,為了正確地產(chǎn)生形式應(yīng)答語句,大權(quán)應(yīng)當(dāng)分配給語氣動詞、助動詞或類似的確定語句格式的詞。另一方面,在由實(shí)際應(yīng)答語句生成器13執(zhí)行的匹配處理中,為了正確地產(chǎn)生實(shí)際應(yīng)答語句,大權(quán)應(yīng)當(dāng)被分配給代表語句的內(nèi)容(主題)的詞。
因此,在由形式應(yīng)答語句生成器11執(zhí)行的匹配處理中,希望用于輸入語句的詞的權(quán)例如由df給出,而用于例子的詞的權(quán)被設(shè)置為1。另一方面,在由實(shí)際應(yīng)答語句生成器13執(zhí)行的匹配處理中,希望用于輸入語句的詞的權(quán)例如由idf給出,而用于例子的詞的權(quán)被設(shè)置為1。
然而,在圖18中,為了說明的目的,用于輸入語句的詞的權(quán)由df給出,而用于例子的詞的權(quán)由idf給出。
當(dāng)輸入語句和例子之間的匹配被評估時,需要引用指示輸入語句和例子彼此之間多么相似的評估標(biāo)準(zhǔn)(或它們彼此之間多么不同)。
在語音識別的匹配處理中,稱為正確性和精確性的評估標(biāo)準(zhǔn)是已知的。在文本搜索的匹配處理中,稱為精密度的評估標(biāo)準(zhǔn)是已知的。
這里,用于在使用DP匹配方法的輸入語句和例子之間的匹配處理中使用的評估標(biāo)準(zhǔn),根據(jù)正確性、精確性和精密度的類推被引入。
該評估標(biāo)準(zhǔn)的正確性、精確性和精密度由等式(6)到(8)分別給出。
在等式(6)到(8)中,CI表示分配給對應(yīng)關(guān)系中被評估為C(正確)的輸入語句的詞的權(quán)的總和,SI表示分配給對應(yīng)關(guān)系中被評估為S(替換)的輸入語句的詞的權(quán)的總和,DI表示分配給對應(yīng)關(guān)系中被評估為D(刪除)的輸入語句的詞的權(quán)的總和,Co表示分配給對應(yīng)關(guān)系中被評估為C(正確)的例子的詞的權(quán)的總和,So表示分配給對應(yīng)關(guān)系中被評估為S(替換)的例子的詞的權(quán)的總和,Io表示分配給對應(yīng)關(guān)系中被評估為I(插入)的例子的詞的權(quán)的總和。
當(dāng)所有詞的權(quán)被設(shè)置為1時,CI等于輸入語句中被評估為C(正確)的詞的數(shù)量,SI等于輸入語句中被評估為S(替換)的詞的數(shù)量,DI等于輸入語句中被評估為D(刪除)的詞的數(shù)量,Co等于例子中被評估為C(正確)的詞的數(shù)量,So等于例子中被評估為S(替換)的詞的數(shù)量,Io等于例子中被評估為I(插入)的詞的數(shù)量。
在圖18上方所示的與DP匹配關(guān)聯(lián)的例子中,根據(jù)等式(9)計(jì)算CI,SI,DI,Co,So和Io,因此正確性、精確性和精密度由等式(10)給出。
CI=5.25+5.11+5.01+2.61=17.98SI=4.14DI=0Co=1.36+1.49+1.60+4.00=8.45So=2.08(9)正確性=81.3(%)
精確性=14.2(%)精密度=48.3(%)(10)在圖18下方所示的與DP匹配關(guān)聯(lián)的例子中,根據(jù)等式(11)計(jì)算CI,SI,DI,Co,So和Io,因此正確性、精確性和精密度由等式(12)給出。
Ci=4.40+2.61=7.01SI=1.69DI=2.95Co=2.20+4.00=6.2So=2.39Io=4.91+1.53=6.44(11)正確性=60.2(%)精確性=-2.3(%)精密度=41.3(%)(12)3種評估標(biāo)準(zhǔn)的正確性、精確性和精密度中的任何一種可以用來作為指示輸入語句和例子之間相似性的得分。然而,如上所述,希望用于例子的詞的權(quán)被設(shè)置為1,用于由形式應(yīng)答語句生成器11執(zhí)行的匹配處理中的輸入語句的詞的權(quán)由df給出,而用于由實(shí)際應(yīng)答語句生成器13執(zhí)行的匹配處理中的輸入語句的詞的權(quán)由idf給出。在這種情況下,希望正確性、精確性和精密度的精確性用來作為指示輸入語句和例子之間相似性的得分。這允許形式應(yīng)答語句生成器11評估匹配,以致于語句的格式的相似性在該得分中被極大地反映,并且,也允許實(shí)際應(yīng)答語句生成器13評估匹配,以致于代表語句內(nèi)容的詞的相似性在該得分中被極大地反映。
當(dāng)評估標(biāo)準(zhǔn)“精確性”用來作為指示輸入語句和例子之間相似性的得分時,隨著該輸入語句和例子之間相似性的增加該得分接近1.0。
根據(jù)向量空間方法在輸入語句和例子之間的匹配中,當(dāng)包括在輸入語句中的詞與包括在例子中的詞之間的相似性高時,輸入語句和例子之間的相似性被認(rèn)為高。另一方面,根據(jù)DP匹配方法在輸入語句和例子之間的匹配中,當(dāng)不僅包括在輸入語句中的詞與包括在例子中的詞之間的相似性高而且詞的順序和語句的長度(包括在各個語句中的詞的數(shù)量)的相似性也高時,輸入語句和例子之間的相似性被認(rèn)為高。因此,DP匹配方法的使用使得比向量空間方法更嚴(yán)格地評估輸入語句和例子之間的相似性成為可能。
在等式(3)給出的idf用來作為輸入語句的詞的權(quán)的情況下,當(dāng)C(w)=0時idf不能被確定,因?yàn)榈仁?3)使C(w)=0無意義。
等式(3)中的C(w)代表出現(xiàn)詞w的例子的數(shù)量。因此,如果輸入語句中的詞沒有被包括在任何例子中,用于那個詞的C(w)就等于0。在這種情況下,根據(jù)等式(3)idf不能被確定(當(dāng)一個未知的詞包括在輸入語句中時這種情況發(fā)生,因此這一問題被稱為未知詞問題)。
當(dāng)用于輸入語句中的詞w的C(w)等于0時,上面描述的那個詞的問題由下述的兩種方法之一避免。
在第一種方法中,當(dāng)用于特殊詞w的C(w)=0時,用于該詞w的權(quán)被設(shè)置為0,以致于該詞w(未知詞)在匹配中被忽略。
在第二種方法中,當(dāng)用于特殊詞w的C(w)=0時,C(w)由0或在0到1范圍內(nèi)的非0值代替,并且,idf根據(jù)等式(3)被計(jì)算,以致于在匹配中大權(quán)被給出。
在DP匹配處理期間,指示輸入語句和例子之間相似性的得分的正確性、精確性和精密度的計(jì)算可以被執(zhí)行。更特別地,例如,當(dāng)精確性被用來作為指示輸入語句和例子之間相似性的得分時,輸入語句的詞和例子的詞之間的另一個對應(yīng)關(guān)系的各個詞的輸入語句和例子之一的對應(yīng)詞,即,用于輸入語句和例子中的另一個的各個詞的輸入語句和例子之一的對應(yīng)詞,被確定,以致于精確性具有最大值,并且確定每個詞具有哪個對應(yīng)關(guān)系類型C(正確)、S(替換)、I(插入)、D(刪除)。
在DP匹配中,輸入語句的詞和例子的詞之間的對應(yīng)關(guān)系可以被確定,以致于除了C(正確)確定類型的數(shù)量,即確定類型S(替換)、I(插入)和D(刪除)的數(shù)量被最小化。在確定了輸入語句和例子的每個詞具有對應(yīng)關(guān)系類型C(正確)、S(替換)、I(插入)和D(刪除)中的哪一個之后,用來作為指示輸入語句和例子之間相似性的得分的正確性、精確性和精密度的計(jì)算可以被執(zhí)行。
不使用正確性、精確性和精密度之一作為指示輸入語句和例子之間相似性的得分,也可以使用被確定作為正確性、精確性和精密度中的一個或多個的函數(shù)的值。
雖然DP匹配方法允許比根據(jù)向量空間方法匹配更嚴(yán)格地評估輸入語句和例子之間的相似性,但DP匹配方法需要更大量的計(jì)算和更長的計(jì)算時間。為了避免上述問題,如下所述,在輸入語句和例子之間的匹配可以既使用向量空間方法又使用DP匹配方法來評估。首先,對所有例子使用向量空間方法來評估匹配,評估為與輸入語句最類似的多個例子被選擇。隨后,根據(jù)使用DP匹配方法的匹配進(jìn)一步評估這些被選擇的例子。這一方法使得比在DP匹配方法中需要的時間更短的時間來執(zhí)行匹配評估成為可能。
在形式應(yīng)答語句或?qū)嶋H應(yīng)答語句的產(chǎn)生中,形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13可以使用相同或不同的方法執(zhí)行匹配評估。
例如,形式應(yīng)答語句生成器11可以使用DP匹配方法執(zhí)行匹配評估,而實(shí)際應(yīng)答語句生成器13可以使用向量空間方法執(zhí)行匹配評估。或者,形式應(yīng)答語句生成器11可以使用向量空間方法和DP匹配方法的組合執(zhí)行匹配評估,而實(shí)際應(yīng)答語句生成器13可以使用向量空間方法執(zhí)行匹配評估。
第二修改例在第二修改例中,實(shí)際應(yīng)答語句生成器13利用具有最高得分的例子作為實(shí)際應(yīng)答語句,而不用位于具有最高得分的例子之后的例子。
在先前的實(shí)施例或例子中,例如,如上參考圖8、10或11所述,在通過實(shí)際應(yīng)答語句生成器13產(chǎn)生實(shí)際應(yīng)答語句中,如果在與輸入語句的相似性方面,例子#p具有最高得分,則在例子#p之后的例子#p+1被用來作為實(shí)際應(yīng)答語句。而不是具有最高得分的例子#p可以被用來作為實(shí)際應(yīng)答語句。
然而,當(dāng)具有最高得分的例子#p與輸入語句完全一致時,如果例子#p被用來作為實(shí)際應(yīng)答語句,則與輸入語句一致的實(shí)際應(yīng)答語句作為輸入語句的應(yīng)答被輸出。這會給用戶不自然的感覺。
為了避免上述問題,當(dāng)具有最高得分的例子#p與輸入語句一致時,從與輸入語句不同的例子中選擇一個具有最高得分的例子,并且所選擇的例子用來作為實(shí)際應(yīng)答語句。在這種情況下,與輸入語句相似但不完全一致的例子被用來作為實(shí)際應(yīng)答語句。
在具有最高得分的例子被用來作為實(shí)際應(yīng)答語句的情況下,記錄在例子數(shù)據(jù)庫14(圖2)中的例子不必是基于實(shí)際對話的例子,但可以使用基于諸如小說、日記或報(bào)紙文章的獨(dú)白的例子。
通常,收集獨(dú)白的例子比收集對話的例子更容易。因此,當(dāng)具有最高得分的例子被用來作為實(shí)際應(yīng)答語句時,允許使用獨(dú)白的例子作為例子數(shù)據(jù)庫14中記錄的例子,并且創(chuàng)建例子數(shù)據(jù)庫14也變得容易。
允許在例子數(shù)據(jù)庫14中既記錄對話的例子又記錄獨(dú)白的例子。更特別地,例如,對話的例子可以記錄在例子數(shù)據(jù)庫14J中,而獨(dú)白的例子可以記錄在另一例子數(shù)據(jù)庫14j’中。在這種情況下,當(dāng)某一例子得到最高得分時,如果它是記錄在記錄對話的例子的例子數(shù)據(jù)庫14J中的例子,則位于該例子之后的例子可以用來作為實(shí)際應(yīng)答例子。相反地,如果具有最高得分的例子是記錄在記錄獨(dú)白的例子的例子數(shù)據(jù)庫14j’中的例子,該例子可以用來作為實(shí)際應(yīng)答語句。
在獨(dú)白的例子中,例子不必是緊挨著前面例子的應(yīng)答。因此,用與圖10或11中描述的方式相似的方式來計(jì)算輸入語句和例子之間匹配的得分是不合適的,在圖10或11中,根據(jù)等式(4)或(5)評估輸入語句與包括在用戶和語音對話系統(tǒng)之間的對話日志中的例子之間的匹配(其中的例子記錄在對話日志數(shù)據(jù)庫15′(圖2)中)。
另一方面,在輸入語句和例子之間的匹配處理中使用對話日志,使保持交談的當(dāng)前話題成為可能,即可以防止應(yīng)答語句的內(nèi)容突然改變,該改變給用戶不自然的感覺。
然而,當(dāng)獨(dú)白的例子被用作例子時,在匹配處理中使用對話日志是不合適的,因此會出現(xiàn)怎樣保持當(dāng)前的交談話題的問題。在輸入語句和例子之間的匹配處理中不使用對話日志而保持當(dāng)前的交談話題的方法將在第四修改例的描述中給出。
在第二修改例中,如上所述,由實(shí)際應(yīng)答語句生成器13執(zhí)行的處理中,當(dāng)在與輸入語句的匹配中獨(dú)白的例子得到最高得分時,如果該例子與輸入語句一致,則該例子被丟棄以防止與輸入語句一樣的語句作為應(yīng)答被輸出,但不同于輸入語句的具有最高得分的另一個例子被選擇,并且所選擇的例子被用來作為實(shí)際應(yīng)答語句。注意,該方法也可以應(yīng)用到在輸入語句和例子之間的匹配評估中位于具有最高得分的例子之后的例子被用作實(shí)際應(yīng)答語句的情況。
也就是說,在語音對話系統(tǒng)中,如果應(yīng)答語句與先前的應(yīng)答語句相同,用戶將會有不自然的感覺。
為了避免上述問題,實(shí)際應(yīng)答語句生成器13選擇位于被評估為與輸入語句相似的例子之后且與先前的應(yīng)答語句不同的例子,并且此時實(shí)際應(yīng)答語句生成器13使用所選擇的例子作為實(shí)際應(yīng)答語句輸出。也就是說,對于不同于被用來作為先前實(shí)際應(yīng)答語句的例子的例子,具有最高得分的例子被選擇,并且,此時位于該具有最高得分的例子之后的例子被作為實(shí)際應(yīng)答語句輸出。
第三修改例在第三修改例中,圖1所示的語音對話系統(tǒng)的特征在于僅使用特殊講話者的講話作為在應(yīng)答語句的產(chǎn)生中使用的例子。
在先前的實(shí)施例或修改例中,實(shí)際應(yīng)答語句生成器13選擇具有較高得分的例子之后的例子并使用所選擇的例子作為實(shí)際應(yīng)答語句,而不考慮用作實(shí)際應(yīng)答語句的例子的講話者。
例如,當(dāng)圖1所示的語音對話系統(tǒng)被希望擔(dān)任諸如旅館預(yù)定接待員的特殊人物的角色時,該語音對話系統(tǒng)不總是輸出作為預(yù)定接待員的合適的應(yīng)答。
為了避免上述問題,當(dāng)不僅例子而且每個例子的講話者都被記錄在例子數(shù)據(jù)庫14(圖2)中時,如圖7中所示的例子,在實(shí)際應(yīng)答語句的產(chǎn)生中,實(shí)際應(yīng)答語句生成器13可以考慮例子的講話者。
例如,當(dāng)諸如圖7中所示的那些例子被記錄在例子數(shù)據(jù)庫14中時,如果實(shí)際應(yīng)答語句生成器13優(yōu)先地使用講話者是“預(yù)定接待員”的例子作為實(shí)際應(yīng)答語句,則語音對話系統(tǒng)就擔(dān)任了旅館預(yù)定接待員的角色。
更特別地,與圖7中所示的例子不同,“預(yù)定接待員”的講話的例子(具有例子號1、3、5、...)和客戶(預(yù)定申請者)的講話的例子(具有例子號2、4、6、...)以講話的順序記錄。因此,當(dāng)產(chǎn)生實(shí)際應(yīng)答語句的算法被設(shè)置以致于在具有最高得分的例子之后的例子被用作實(shí)際應(yīng)答語句時,如果在緊挨著每個“預(yù)定接待員”的講話的例子前的每個例子被給了大得分,即,如果給予“客戶”的講話的例子大得分,則“預(yù)定接待員”的講話的例子被優(yōu)先地選擇作為實(shí)際應(yīng)答語句。
為了給予客戶的講話的例子大得分,例如,確定正在進(jìn)行計(jì)算的指示與輸入語句相似性的得分的例子是否是“客戶”的講話的例子,并且,如果確定該例子是“客戶”的講話,則預(yù)先確定的偏移值被加到該例子的得分或?qū)⒃摰梅殖艘砸活A(yù)先確定的系數(shù)。
以上述方式計(jì)算的得分導(dǎo)致實(shí)際應(yīng)答語句生成器13選擇在“客戶”的講話的例子之后的例子即“預(yù)定接待員”的講話的例子作為實(shí)際應(yīng)答語句的概率的增加。因此,能夠擔(dān)任預(yù)定接待員的角色的語音對話系統(tǒng)被實(shí)現(xiàn)。
該語音對話系統(tǒng)可以包括用于從多個人物中選擇任意人物的操作控制單元,以至于與通過操作該操作控制單元選擇的人物對應(yīng)的例子被優(yōu)先地用作實(shí)際應(yīng)答語句。
第四修改例在第四修改例中,在輸入語句和例子之間的匹配評估中的得分的計(jì)算不是按照等式(4)或(5)來執(zhí)行,而是執(zhí)行以便例子被分組并且權(quán)被分配給每組例子,以致于與當(dāng)前話題相關(guān)的例子被優(yōu)先地選擇為應(yīng)答語句。
為了上述目的,例如,例子被正確地分組并且例子以組為單位記錄在例子數(shù)據(jù)庫14(圖2)中。
更特別地,例如,當(dāng)根據(jù)電視談話節(jié)目等等重寫的例子被記錄在例子數(shù)據(jù)庫14中時,根據(jù)例如廣播、談話者或話題的日期來分組例子,并且該例子以組為單位記錄在例子數(shù)據(jù)庫14中。
因此,讓我們假設(shè)例子的組被分別記錄在例子數(shù)據(jù)庫141、142、...、14J中,即,例子的特別組被記錄在某一例子數(shù)據(jù)庫14J中,而例子的另一組被記錄在另一個例子數(shù)據(jù)庫14j’中。
記錄了一組例子的每個例子數(shù)據(jù)庫14J可以具有文件的格式或可以存儲在一部分文件中,以便該部分可以由標(biāo)簽等識別。
通過上述方式將例子的特別組記錄在某一例子數(shù)據(jù)庫14J中,該例子數(shù)據(jù)庫14J的特征在于例子組的話題內(nèi)容記錄在該例子數(shù)據(jù)庫14J中。將例子數(shù)據(jù)庫14J特征化的話題可以由前面向量空間方法的描述中說明的向量來表示。
例如,當(dāng)記錄在例子數(shù)據(jù)庫14J中的例子中有P個不同的詞時(其中當(dāng)同一詞在例子中出現(xiàn)多次時,該詞的數(shù)量被計(jì)為1),如果具有P個元素的向量被給定以致于該P(yáng)個元素相應(yīng)于P個詞中的每一個并且第i個元素的值表示第i個詞出現(xiàn)的數(shù)量,那么該向量表示特征化的例子數(shù)據(jù)庫14J的話題。
在此,如果特征化每個例子數(shù)據(jù)庫14J的該向量被稱為話題向量,那么每個例子數(shù)據(jù)庫14的話題向量可以被分布在每個軸代表話題向量的一個元素的話題空間中。
圖19示出了話題空間的一個例子。在圖19所示的例子中,為了簡化,假設(shè)話題空間是由兩個軸詞A軸和詞B軸定義的二維空間。
如圖19所示,每個例子數(shù)據(jù)庫141、142、...、14J的話題向量(每個話題向量的端點(diǎn))能夠分布在話題空間中。
在向量空間方法中,表示特征化例子數(shù)據(jù)庫14J的話題和特征化另一例子數(shù)據(jù)庫14j’的話題之間的相似性(或距離)的測量可以通過特征化例子數(shù)據(jù)庫14J的話題向量和特征化例子數(shù)據(jù)庫14J’的話題之間的角度的余弦而給出,或者可以通過話題向量之間的距離(話題向量的端點(diǎn)之間的距離)而給出。
隨著代表特征化例子數(shù)據(jù)庫14J的話題的話題向量和代表特征化例子數(shù)據(jù)庫14j’的話題的話題向量之間的角度的余弦的增加,記錄在例子數(shù)據(jù)庫14J中的例子組的話題和記錄在例子數(shù)據(jù)庫14j’中的例子組的話題之間的相似性變高,或者隨著這些話題向量之間的距離的減小,該相似性變高。
例如,在圖19中,例子數(shù)據(jù)庫141、143和1410在話題向量上彼此接近,因此記錄在例子數(shù)據(jù)庫141、143和1410中的例子的話題彼此相似。
在本修改實(shí)施例中,如上所述,實(shí)際應(yīng)答語句生成器13產(chǎn)生實(shí)際應(yīng)答語句,以致于當(dāng)輸入語句和例子之間的匹配被評估時,與輸入語句進(jìn)行比較的例子從話題與先前的實(shí)際應(yīng)答語句使用的例子相似的例子組中選擇出來,即,在表示輸入語句與例子之間相似性的得分的計(jì)算中,根據(jù)每一組例子的話題,權(quán)被分配給每一組例子,以致于具有與當(dāng)前話題相似的話題的一組例子獲得比其它組更大的得分,從而使得該組的一個例子被選為實(shí)際應(yīng)答語句的概率增加并因此使得保持當(dāng)前話題成為可能。
更特別地,例如,在圖19中,如果一個被用作先前輸出的實(shí)際應(yīng)答語句的例子是記錄在例子數(shù)據(jù)庫141中的一個例子,那么記錄在例子數(shù)據(jù)庫143或1410中的例子,該例子的話題或話題向量與例子數(shù)據(jù)庫141中的話題或話題向量接近,更可能在話題上與用作先前的實(shí)際應(yīng)答語句的例子相似。
相反,記錄在話題向量與例子數(shù)據(jù)庫141中的話題向量不接近的例子數(shù)據(jù)庫中的例子,諸如例子數(shù)據(jù)庫144到148,可能在話題上與用作先前的實(shí)際應(yīng)答語句的例子不同。
因此,為了優(yōu)先地選擇話題與當(dāng)前話題相似的例子作為下一個實(shí)際應(yīng)答語句,實(shí)際應(yīng)答語句生成器13根據(jù)例如下述等式(13)計(jì)算表示輸入語句和例子#p之間相似性的得分。
例子#p的得分=f_score(文件(Ur-1,文件(例子#p))×score(輸入語句,例子#p)(13)其中,Ur-1表示被用作先前實(shí)際應(yīng)答語句的例子,文件(Ur-1)表示記錄了例子Ur-1的例子數(shù)據(jù)庫14,文件(例子#p)表示記錄了例子#p_的例子數(shù)據(jù)庫14,f_score(文件(Ur-1),文件(例子#p))表示記錄在記錄了例子Ur-1的例子數(shù)據(jù)庫14中的一組例子和記錄在記錄了例子#p的例子數(shù)據(jù)庫14中的一組例子之間的相似性。例如可以通過話題向量之間話題空間的角度的余弦給出不同組的例子之間的相似性。在等式(13)中,score(輸入語句,例子#p)表示輸入語句和例子#p之間的相似性(得分),其中可以通過例如向量空間方法或DP匹配方法來確定相似性。
通過按照等式(13)計(jì)算表示輸入語句和例子#p之間相似性的得分,不必使用對話日志就能防止話題的突然改變成為可能。
第五修改例在第五修改實(shí)施例中,記錄在例子數(shù)據(jù)庫14中的例子可以包括一個或多個變量,并且,實(shí)際應(yīng)答語句生成器13從包括一個或多個變量的例子中產(chǎn)生實(shí)際應(yīng)答語句。
更特別地,特殊類的詞,諸如可用用戶名替換的詞、可用當(dāng)前日期/時間替換的詞等等,從記錄在例子數(shù)據(jù)庫14的例子中檢測,并且所檢測的詞被重寫為代表詞類的變量的形式。
在例子數(shù)據(jù)庫14中,例如,可用用戶名替換的詞被重寫為變量USER_NAME,例如,可用當(dāng)前時間替換的詞被重寫為變量TIME,例如,可用當(dāng)前日期替換的詞被重寫為變量DATE,等等。
在該語音對話系統(tǒng)中,與該語音對話系統(tǒng)交談的用戶的姓名被注冊,并且用注冊的用戶名替換變量USER_NAME。用當(dāng)前時間和當(dāng)前日期分別替換變量TIME和DATE。所有變量的相似的替換規(guī)則被預(yù)先確定。
例如,在實(shí)際應(yīng)答語句生成器13中,如果位于獲得最高得分的例子之后的例子,是包括變量諸如“Mr.USER_NAME,today is DATE”的例子,那么包括在該例子“Mr.USER_NAME,today is DATE”中的變量USER_NAME和DATE根據(jù)預(yù)先確定的規(guī)則替換,并且合成的例子被用作實(shí)際應(yīng)答語句。
例如,在語音對話系統(tǒng)中,如果“Sato”被注冊為用戶名,并且當(dāng)前日期是一月一號,那么在本例中的例子“Mr.USER_NAME,today is DATE”被替換為“Mr.Sato,today is January 1”,并且該結(jié)果被用作實(shí)際應(yīng)答語句。
如上所述,在本修改實(shí)施例中,記錄在例子數(shù)據(jù)庫14中的例子被允許包括一個或多個變量,并且,實(shí)際應(yīng)答語句生成器13在產(chǎn)生實(shí)際應(yīng)答語句的處理中根據(jù)預(yù)先確定的規(guī)則替換變量。這使得即使當(dāng)例子數(shù)據(jù)庫14只包括很小數(shù)量的例子時獲取更大種類的實(shí)際應(yīng)答語句成為可能。
當(dāng)記錄在例子數(shù)據(jù)庫14中的每個例子被以一組輸入例子和圖3中所示的例子數(shù)據(jù)庫12中的相應(yīng)的應(yīng)答例子的形式描述時,如果特殊類的詞既包括在輸入例子又包括在一特殊組的相應(yīng)的應(yīng)答例子中,則包括在每個表達(dá)中的詞用代表詞類的變量預(yù)先替換。在這種情況下,在實(shí)際應(yīng)答語句生成器13中,包括在輸入語句中的特殊類的詞用代表詞類的變量替換,并且,所合成的輸入語句與匹配處理中的輸入例子比較。實(shí)際應(yīng)答語句生成器13選擇與在匹配處理中獲得最高得分的與輸入例子結(jié)合的應(yīng)答例子,并且,實(shí)際應(yīng)答語句生成器13用包括在輸入語句中的變量替換的初始詞替換包括在應(yīng)答例子中的變量。所合成的應(yīng)答例子被用作實(shí)際應(yīng)答語句。
更特別地,例如,當(dāng)一組輸入例子“My name is Taro Sato”和相應(yīng)的應(yīng)答例子“Oh,you are Mr.Taro Sato”被記錄在例子數(shù)據(jù)庫14中時,屬于人名類的詞(多個詞)用表示人名類的變量$PERSON_NAME$替換。在該具體的例子中,包括在輸入例子“My name is Taro Sato”以及相應(yīng)的應(yīng)答例子“Oh,youare Mr.Taro Sato”中的詞“Taro Sato”用表示人名類的變量$PERSON_NAME$替換。結(jié)果,輸入例子“My name is Taro Sato”和相應(yīng)的應(yīng)答例子“Oh,youare Mr.Taro Sato”的集合被轉(zhuǎn)換成輸入例子“My name is $PERSON_NAME$”和應(yīng)答例子“Oh,you are Mr.$PERSON_NAME$”的集合。
在這種情況下,如果“My name is Suzuki”作為輸入語句給出,實(shí)際應(yīng)答語句生成器13用表示人名類的變量$PERSON_NAME$替換包括在輸入語句“My name is Suzuki”中屬于人名類的詞“Suzuki”,并且,實(shí)際應(yīng)答語句生成器13評估所合成的輸入語句“My name is $PERSON_NAME$”和輸入例子之間的匹配。如果上述輸入例子“My name is $PERSON_NAME$”在匹配的評估中獲得最高的得分,那么實(shí)際應(yīng)答語句生成器13選擇與輸入例子“My nameis $PERSON_NAME$”結(jié)合的應(yīng)答例子“Oh,you are Mr.$PERSON_NAME$”。此外,實(shí)際應(yīng)答語句生成器13用包括在初始輸入語句“My name is Suzuki”中并由$PERSON_NAME$替換的初始姓名“Suzuki”替換包括在應(yīng)答例子“Oh,youare Mr.$PERSON_NAME$”中的變量$PERSON_NAME$。結(jié)果,“Oh,you are Mr.Suzuki”作為模型應(yīng)答語句被獲得,并且被用作實(shí)際應(yīng)答語句。
第六修改例在第六修改實(shí)施例中,在應(yīng)答輸出控制器16(圖2)中,形式應(yīng)答語句或?qū)嶋H應(yīng)答語句沒有直接輸出到語音合成器5(圖1),但是確定形式應(yīng)答語句或?qū)嶋H應(yīng)答語句是否滿足預(yù)定條件,并且只有當(dāng)滿足預(yù)定條件時,形式應(yīng)答語句或?qū)嶋H應(yīng)答語句被輸出到語音合成器5(圖1)。
在位于輸入語句和例子之間的匹配中具有最高得分的例子之后的例子被直接用作形式應(yīng)答語句或?qū)嶋H應(yīng)答語句的情況下,即使所有的例子都具有相當(dāng)?shù)偷牡梅郑?,即使沒有適合作為輸入語句的應(yīng)答的例子,位于具有最高得分的例子之后具有較低得分的例子被用作形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
在一些情況下,具有很大長度(很大數(shù)量的詞)的例子或相反具有很小長度的例子不是用于作為形式應(yīng)答語句或?qū)嶋H應(yīng)答語句的適當(dāng)例子。
為了避免這樣的不適當(dāng)?shù)睦幼鳛樾问綉?yīng)答語句或?qū)嶋H應(yīng)答語句并最終輸出,應(yīng)答輸出控制器16確定形式應(yīng)答語句或?qū)嶋H應(yīng)答語句是否滿足預(yù)定條件并且只有當(dāng)滿足預(yù)定條件時將形式應(yīng)答語句或?qū)嶋H應(yīng)答語句輸出到語音合成器5(圖1)。
預(yù)定條件可以是要求例子獲得大于預(yù)定的閾值的得分和/或要求包括在該例子中的詞的數(shù)量(例子的長度)在C1到C2(C1<C2)的范圍內(nèi)。
預(yù)定條件可以為形式應(yīng)答語句和實(shí)際應(yīng)答語句共同定義或單獨(dú)定義。
也就是說,在第六修改實(shí)施例中,應(yīng)答輸出控制器16(圖2)確定從形式應(yīng)答語句生成器11提供的形式應(yīng)答語句以及實(shí)際應(yīng)答語句生成器13是否滿足預(yù)定條件,當(dāng)滿足預(yù)定條件時將形式應(yīng)答語句或?qū)嶋H應(yīng)答語句生成器13輸出到語音合成器5(圖1)。
因此,在第六修改實(shí)施例中,下述四種情況中的一種會發(fā)生1)形式應(yīng)答語句和實(shí)際應(yīng)答語句都滿足預(yù)定條件,并都被輸出到語音合成器5;2)只有形式應(yīng)答語句滿足預(yù)定條件,并因此只有形式應(yīng)答語句輸出到語音合成器5;3)只有實(shí)際應(yīng)答語句滿足預(yù)定條件,并因此只有實(shí)際應(yīng)答語句輸出到語音合成器5;以及4)形式應(yīng)答語句和實(shí)際應(yīng)答語句都不滿足預(yù)定條件,并因此都不輸出到語音合成器5。
在上述1至4種情況中的第4種情況中,因?yàn)樾问綉?yīng)答語句和實(shí)際應(yīng)答語句都不輸出到語音合成器5,所以沒有應(yīng)答提供給用戶。這使用戶誤以為語音對話系統(tǒng)發(fā)生了故障。為了避免第4種情況中的上述問題,應(yīng)答輸出控制器16可以輸出一個表示語音對話系統(tǒng)不能理解用戶所說的話的語句或要求用戶以不同方法再說一遍的語句給語音合成器5,諸如“我沒有一個好答案”或“請用不同方法再說一遍”。
參考圖20中的流程圖,描述了按照本修改實(shí)施例的對話過程,其中應(yīng)答輸出控制器16確定形式應(yīng)答語句和實(shí)際應(yīng)答語句是否滿足預(yù)定條件并且當(dāng)滿足預(yù)定條件時將形式應(yīng)答語句或?qū)嶋H應(yīng)答語句輸出到語音合成器5。
在圖20所示的對話過程中,圖15示出的對話過程被修改,以便確定形式應(yīng)答語句和實(shí)際應(yīng)答語句是否滿足預(yù)定條件,并且當(dāng)滿足預(yù)定條件時將形式應(yīng)答語句或?qū)嶋H應(yīng)答語句輸出到語音合成器5。注意,按照另一實(shí)施例的對話過程,諸如上面參考圖14的流程圖描述的的對話過程,也可以被修改以便確定形式應(yīng)答語句和實(shí)際應(yīng)答語句是否滿足預(yù)定條件,并且當(dāng)滿足預(yù)定條件時將形式應(yīng)答語句或?qū)嶋H應(yīng)答語句輸出到語音合成器5。
在圖20示出的對話過程中,作為圖14示出的步驟S1的步驟S41中,語音合成器2等待用戶說話。如果用戶說話,語音合成器2執(zhí)行語音識別以檢測用戶說了什么,并且語音合成器2將一連串詞形式的語音識別結(jié)果作為輸入語句提供給控制器3。如果控制器3接收該輸入語句,控制器3將該過程由步驟S41前進(jìn)到步驟S42。作為圖14示出的步驟S2的步驟S42中,控制器3分析輸入語句以確定對話過程是否應(yīng)當(dāng)結(jié)束。如果在步驟S42中確定對話過程應(yīng)當(dāng)結(jié)束,則對話過程結(jié)束。
如果在步驟S42中確定對話處理不應(yīng)當(dāng)結(jié)束,則控制器3將輸入語句提供到應(yīng)答生成器4(圖2)中的形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13。此后,控制器3將過程前進(jìn)到步驟S43。在步驟S43中,形式應(yīng)答語句生成器11響應(yīng)輸入語句產(chǎn)生形式應(yīng)答語句并將合成的形式應(yīng)答語句提供給應(yīng)答輸出控制器16。此后,過程轉(zhuǎn)到步驟S44。
在步驟S44中,應(yīng)答輸出控制器16確定從形式應(yīng)答語句生成器11提供的形式應(yīng)答語句是否滿足預(yù)定條件。更特別地,例如,應(yīng)答輸出控制器16確定與用作形式應(yīng)答語句的應(yīng)答例子結(jié)合的輸入例子的評估得分是否高于預(yù)定的閾值,或者包括在用作形式應(yīng)答語句的應(yīng)答例子中的詞數(shù)是否在C1到C2的范圍內(nèi)。
如果在步驟S44中確定形式應(yīng)答語句滿足預(yù)定條件,過程轉(zhuǎn)到步驟S45。在步驟S45中,應(yīng)答輸出控制器16通過控制器3(圖1)將滿足預(yù)定條件的形式應(yīng)答語句輸出到語音合成器5。此后,過程轉(zhuǎn)到步驟S46。在應(yīng)答中,如參考圖14在前面描述的,語音合成器5執(zhí)行與形式應(yīng)答語句相關(guān)的語音合成。
另一方面,在步驟S44中確定形式應(yīng)答語句不滿足預(yù)定條件的情況下,過程跳到步驟S46而不執(zhí)行步驟S45。也就是說,在這種情況下,不滿足預(yù)定條件的形式應(yīng)答語句沒有作為應(yīng)答輸出。
在步驟S46中,實(shí)際應(yīng)答語句生成器13響應(yīng)輸入語句產(chǎn)生實(shí)際應(yīng)答語句并將合成的實(shí)際應(yīng)答語句提供給應(yīng)答輸出控制器16。此后,過程轉(zhuǎn)到步驟S47。
在步驟S47中,輸出控制器16確定從實(shí)際應(yīng)答語句生成器13提供的實(shí)際應(yīng)答語句是否滿足預(yù)定條件。更特別地,例如,輸出控制器16確定緊挨著用作實(shí)際應(yīng)答語句的例子之前的例子的評估得分是否高于預(yù)定的閾值,或者包括在用作實(shí)際應(yīng)答語句的例子中的詞數(shù)是否在C1到C2的范圍內(nèi)。
如果在步驟S47中確定實(shí)際應(yīng)答語句不滿足預(yù)定條件,過程跳到步驟S50而不執(zhí)行步驟S48和S49。在這種情況下,不滿足預(yù)定條件的實(shí)際應(yīng)答語句沒有作為應(yīng)答輸出。
當(dāng)在步驟S47中確定該實(shí)際應(yīng)答語句不滿足預(yù)定條件時,如果在步驟S44中確定形式應(yīng)答語句也不滿足預(yù)定條件,即,如果上述的第4種情況發(fā)生,形式應(yīng)答語句和實(shí)際應(yīng)答語句都不被輸出。在這種情況下,如上所述,應(yīng)答輸出控制器16將預(yù)先確定的語句諸如“我沒有一個好答案”或“請用不同方法再說一遍”作為最后的應(yīng)答語句輸出給語音合成器5。此后,過程從步驟S47進(jìn)行到步驟S50。
另一方面,在步驟S47中確定實(shí)際應(yīng)答語句滿足預(yù)定條件的情況下,過程轉(zhuǎn)到步驟S48。在步驟S48中,如圖15示出的流程圖中的步驟S26,應(yīng)答輸出控制器16檢查滿足預(yù)定條件的實(shí)際應(yīng)答語句是否包括與在先前緊挨著的步驟S45中輸出給語音合成器5的形式應(yīng)答語句的重疊部分(表達(dá))。如果有這樣的重疊部分,應(yīng)答輸出控制器16從實(shí)際應(yīng)答語句中刪除該重疊部分。此后,過程進(jìn)行到步驟S49。
當(dāng)實(shí)際應(yīng)答語句沒有包括與形式應(yīng)答語句重疊的部分時,實(shí)際應(yīng)答語句被保持而在步驟S48中不進(jìn)行任何修改。
在步驟S49中,應(yīng)答輸出控制器16通過控制器3(圖1)將實(shí)際應(yīng)答語句輸出給語音合成器5。此后,過程進(jìn)行到步驟S50中。在步驟S50中,應(yīng)答輸出控制器16以與圖14中的步驟S7相似的方式,通過將輸入語句和作為對輸入語句的應(yīng)答輸出的合成應(yīng)答語句另外記錄在對話日志數(shù)據(jù)庫15的對話日志中而更新對話日志。此后,過程返回到步驟S41,并且過程從步驟S41被重復(fù)。
第七修改例在第七修改實(shí)施例中,在由形式應(yīng)答語句生成器11或?qū)嶋H應(yīng)答語句生成器13產(chǎn)生形式應(yīng)答語句或?qū)嶋H應(yīng)答語句的處理中,確定和考慮語音識別結(jié)果的信心度量。
在圖1示出的語音對話系統(tǒng)中,語音識別器2不必設(shè)計(jì)為由該語音對話系統(tǒng)2專門使用的類型,而也可以使用傳統(tǒng)的語音識別器(語音識別裝置或語音識別模塊)。
一些傳統(tǒng)語音識別器具有為包括在作為語音識別結(jié)果獲得的一連串詞中的每個詞確定信心度量并將信心度量和語音識別結(jié)果一起輸出的能力。
更特別地,當(dāng)用戶說“Let’s play succor tomorrow morning”時,該語音被識別為,例如“Let’s pray succor morning morning”,并且該識別結(jié)果“Let’s pray succor morning morning”的每個詞的信心度量被評估為,例如,“Let’s(0.98)pray(0.71)succor(0.98)morning(0.1)morning(0.98)”。在該評估結(jié)果“Let’s(0.98)pray(0.71)succor(0.98)morning(0.1)morning(0.98)”的例子中,每個圓括號包括的數(shù)字表示先前緊挨著的詞的信心度量。信心度量值越大,被識別的詞的相似性就越大。
在識別結(jié)果“Let’s(0.98)pray(0.71)succor(0.98)morning(0.1)morning(0.98)”中,例如,詞“succor”與實(shí)際說的詞“succor”完全一致,信心度量被評估為與0.98一樣高。另一方面,實(shí)際說的詞“tomorrow”被錯誤地識別為“morning”,該詞的信心度量被評估為與0.1一樣低。
如果語音識別器2具有為作為語音識別的結(jié)果獲得的一連串詞的每個詞確定信心度量的這種能力,則形式應(yīng)答語句生成器11或?qū)嶋H應(yīng)答語句生成器13在響應(yīng)由語音識別所給出的輸入語句而產(chǎn)生形式應(yīng)答語句或?qū)嶋H應(yīng)答語句的處理中,可以考慮該信心度量。
當(dāng)輸入語句作為語音識別的結(jié)果被給出時,具有高信心度量的詞更可能是正確的。相反,具有低信心度量的詞可能是錯誤的。
在輸入語句和例子之間匹配的評估處理中,希望信心度量低并因此可能是錯誤的詞對該匹配評估的影響比可能是正確的詞的影響小。
因此形式應(yīng)答語句生成器11或?qū)嶋H應(yīng)答語句生成器13在輸入語句和例子之間匹配相關(guān)的分?jǐn)?shù)計(jì)算中,考慮為每個包括在輸入語句中的詞評估的信心度量,以至于具有低信心度量的詞就不會對得分具有大的貢獻(xiàn)。
更特別地,在使用向量空間方法執(zhí)行輸入語句和例子之間的匹配評估的情況下,代表輸入語句的向量(公式(1)中的向量y)的每個元素的值不是由tf(與該向量的元素相應(yīng)的詞出現(xiàn)的數(shù)量)而是由與該向量的元素相應(yīng)的詞的信心度量的值的和給出。
在輸入語句被識別為“Let’s(0.98)pray(0.71)succor(0.98)morning(0.1)morning(0.98)”的上述例子中,輸入語句的向量的每個元素的值被給出,以至于與“Let’s”相應(yīng)的元素的值由“Let’s”的信心度量0.98給出,與“pray”相應(yīng)的元素的值由“pray”的信心度量0.71給出,與“succor”相應(yīng)的元素的值由“succor”的信心度量0.71給出,與“morning”相應(yīng)的元素的值由“morning”的信心度量即0.1+0.98=1.08給出。
在使用DP匹配方法執(zhí)行輸入語句和例子之間的匹配評估的情況下,每個詞的權(quán)可以由該詞的信心度量給出。
更特別地,在輸入語句被識別為“Let’s(0.98)pray(0.71)succor(0.98)morning(0.1)morning(0.98)”的當(dāng)前的例子中,詞“Let’s”、“pray”、“succor”、“morning”和“morning”由系數(shù)0.98、0.71、0.98、0.1和0.98分別加權(quán)。
在日語的情況下,如上所述,語氣動詞和助動詞對語句的格式具有大的貢獻(xiàn)。因此,當(dāng)形式應(yīng)答語句生成器11評估輸入語句和作為形式應(yīng)答語句的候選的例子之間的匹配時,希望語氣動詞和助動詞對匹配的得分有大的貢獻(xiàn)。
然而,在形式應(yīng)答語句生成器11中,當(dāng)匹配的評估被簡單地執(zhí)行以致于語氣動詞和助動詞有大的貢獻(xiàn)時,如果作為語音識別的結(jié)果而獲得的輸入語句包括錯誤識別的語氣動詞或助動詞,匹配的得分就被錯誤的語氣動詞或助動詞嚴(yán)重地影響,并且因此產(chǎn)生作為對輸入語句的應(yīng)答不自然的形式應(yīng)答語句。
上述問題能夠通過用在輸入語句和例子之間匹配的分?jǐn)?shù)的計(jì)算中根據(jù)信心度量確定的因數(shù)加權(quán)包括在輸入語句中的每個詞來避免,以至于該得分不會被低信心度量的詞即可能是錯誤的詞嚴(yán)重地影響。這防止了輸出作為對用戶講話應(yīng)答的不自然的形式應(yīng)答語句。
有各種已知的計(jì)算信心度量的方法,任何方法都可在此使用,只要該方法能夠確定包括在作為語音識別結(jié)果而獲得的語句中的每個詞的信心度量。
在一個詞接一個詞的基礎(chǔ)上確定信心度量的方法的例子在下面描述。
例如,當(dāng)語音識別器2(圖1)使用HMM(隱藏馬爾可夫模型)方法執(zhí)行語音識別時,信心度量可以被如下計(jì)算。
通常,在基于HMM聲學(xué)模型的語音識別中,識別以音素或音節(jié)為單位被執(zhí)行,詞以音素或音節(jié)的HMM串聯(lián)的形式被模型化。在語音識別中,如果輸入語音信號沒有被正確地分離成音素或音節(jié),那么識別錯誤就會發(fā)生。換言之,如果正確地確定出彼此分離的相鄰音素的邊界,則音素能夠被正確地識別并由此詞或語句能夠被正確地識別。
在此,讓我們引入音素邊界確認(rèn)測量(PBVM)以確認(rèn)在語音識別中輸入語音信號是否在正確的邊界被分離成音素。在語音識別處理中,為每個輸入語音信號的音素確定PBVM,在音素接音素的基礎(chǔ)上所確定的PBVM被擴(kuò)展為每個詞的PBVM。以這種方法確定的每個詞的PBVM被用作該詞的信心度量。
例如,PBVM可以如下計(jì)算。
首先,在語音識別結(jié)果(一連串詞的形式)中,語境(在時間上是連續(xù)的)位于音素k和下一個音素k+1之間的邊界的左邊和右邊。在音素邊界左邊和右邊的語境可以由圖21到23示出的3種方法中的1種定義。
圖21示出了定義位于音素邊界左邊和右邊的語境的第一種方法。
圖21示出了在一串識別的音素中,音素k、k+1和k+2,音素邊界k位于音素k和k+1之間,音素邊界k+1位于音素k+1和k+2之間。對于音素k和k+1,語音信號的幀邊界由虛線表示。例如,音素k的最后一幀被表示為幀i,音素k+1的第一幀被表示為幀i+1,等等。在音素k中,HMM狀態(tài)從a變化到b并進(jìn)一步變化到c。在音素k+1中,HMM狀態(tài)從a’變化到b’并進(jìn)一步變化到c’。
在圖21中(也在圖22和23中),實(shí)曲線代表語音信號的冪的變化。
在音素邊界k的左邊和右邊的兩個語境的第一個定義中,如圖21所示,音素邊界k的左邊的語境(即,在時間上緊接著音素邊界k之前的位置上的語境)包括相應(yīng)于HMM狀態(tài)c的所有幀(幀i-4到i),而音素邊界k的右邊的語境(即,在時間上緊接著音素邊界k之后的位置上的語境)包括相應(yīng)于HMM狀態(tài)c’的所有幀(幀i+1到i+4)。
圖22示出了定義位于音素邊界左邊和右邊的語境的第二種方法。在圖22中(也在隨后描述的圖23中),與圖21相似的部分用相同的參考數(shù)字或符號表示,并且這些相似部分的進(jìn)一步描述被省略。
在音素邊界k的左邊和右邊的兩個語境的第二個定義中,如圖22所示,音素邊界k的左邊的語境包括相應(yīng)于緊接著音素k的最后一個HMM狀態(tài)之前的HMM狀態(tài)b的所有幀,而音素邊界k的右邊的語境包括相應(yīng)于音素k+1的第二HMM狀態(tài)b’的所有幀。
圖23示出了音素邊界左邊和右邊的語境的第三種定義方法。在音素邊界k的左邊和右邊的兩個語境的第三個定義中,如圖23所示,音素邊界k的左邊的語境包括幀i-n到i,而音素邊界k的右邊的語境包括幀i+1到i+m,其中n和m是等于或大于1的整數(shù)。
在此引入代表語境的一個向量以確定音素邊界k左邊和右邊的兩個語境之間的相似性。
例如,當(dāng)在語音識別中在一幀接一幀的基礎(chǔ)上提取作為語音的特征值的頻譜時,語境向量(代表一個語境的向量)可以由其元素由包括在該語境中的每個幀的頻譜的各個系數(shù)給出的向量的平均值給出。
當(dāng)兩個語境向量x和y被給出時,表示向量x和y之間相似性的相似性函數(shù)s(x,y)可以由基于向量空間方法的下述等式(14)給出。
s(x,y)=xiy|x||y|---(14)]]>|x|和|y|表示向量x和y的長度,xt表示向量x的轉(zhuǎn)置。注意,由等式(14)給出的相似性函數(shù)s(x,y)是通過向量x和y的量值的積即|x|·|y|除向量x和y的內(nèi)積即xty得到的商,因此相似性函數(shù)s(x,y)等于兩個向量x和y的角度的余弦。
注意相似性函數(shù)s(x,y)的值隨著向量x和y之間的相似性的增加而減小。
用于音素邊界k的音素邊界確認(rèn)測量函數(shù)PBVM(k)能夠使用相似性函數(shù)s(x,y)表達(dá),例如,如等式(15)所示。
PBVM(k)=1-s(x,y)2---(15)]]>代表兩個向量之間相似性的函數(shù)不限制為上述的相似性函數(shù)s(x,y),而也可以使用表示兩個向量x和y的距離函數(shù)d(x,y)(注意d(x,y)在范圍-1到1內(nèi)被規(guī)范化)。在這種情況下,音素邊界確認(rèn)測量函數(shù)PBVM(k)由下述等式(16)給出。
PBVM(k)=1-d(x,y)2---(16)]]>音素邊界上的語境的向量x(也可以是向量y)可以由代表語境的各個幀的頻譜的所有向量的平均值(平均向量)給出,其中代表每個頻譜的向量的元素由重要幀的頻譜的系數(shù)給出?;蛘撸羲剡吔缟系恼Z境的向量x(也可以是向量y)可以由通過從代表最接近音素邊界k的幀的頻譜的向量中減去代表語境的各個幀的頻譜的所有向量的平均值得到的向量給出。在HMM的特征值(語音的特征向量)的輸出概率密度函數(shù)可以使用高斯分布(Gaussiandistribution)表達(dá)的情況下,音素邊界上的語境的向量x(也可以是向量y)可以例如從定義表達(dá)與該語境的幀相應(yīng)的HMM狀態(tài)的輸出概率密度函數(shù)的高斯分布的平均向量中被確定。
根據(jù)等式(15)或(16)的音素邊界k的音素邊界確認(rèn)測量函數(shù)PBVM(k)是變量k的連續(xù)函數(shù)并且在0到1的范圍內(nèi)取值。當(dāng)PBVM(k)=0時,音素邊界k右邊和左邊的語境的向量在方向上相等。也就是說,當(dāng)音素邊界確認(rèn)測量函數(shù)PBVM(k)具有等于0的值時,音素邊界k不可能是實(shí)際的音素邊界,因此一個識別錯誤可能發(fā)生。
另一方面,當(dāng)音素PBVM(k)具有等于1的值時,音素邊界k右邊和左邊的語境的向量在方向上相反,音素邊界k可能是正確的音素邊界。
如上所述,在0到1的范圍內(nèi)取值的音素邊界確認(rèn)測量函數(shù)PBVM(k)表示了音素邊界k是正確的音素邊界的相似性。
因?yàn)樽鳛檎Z音識別結(jié)果獲得的一連串詞的每個詞包括多個音素,每個詞的信心度量可以從該詞的音素邊界k的相似性,即,從該詞的音素的音素邊界確認(rèn)測量函數(shù)PBVM中被確定。
更特別地,詞的信心度量可以由例如該詞的音素的音素邊界確認(rèn)測量函數(shù)PBVM的值的平均值、該詞的音素的音素邊界確認(rèn)測量函數(shù)PBVM的值的最小值、該詞的音素的音素邊界確認(rèn)測量函數(shù)PBVM的最大值和最小值之間的差、該詞的音素的音素邊界確認(rèn)測量函數(shù)PBVM的值的標(biāo)準(zhǔn)偏差或該詞的音素的音素邊界確認(rèn)測量函數(shù)PBVM的值的變量(標(biāo)準(zhǔn)偏差除以平均值的商)的系數(shù)給出。
至于信心度量,也可以使用其它值,諸如在詞的識別中最可能候選的得分和下一個最可能候選的得分之間的差,例如在日本未審查專利申請公開號9-259226中所述的。信心度量也可以從根據(jù)HMM計(jì)算的各個幀的聲音得分中確定,或可以使用神經(jīng)網(wǎng)絡(luò)來確定。
第八修改例在第八修改實(shí)施例中,當(dāng)實(shí)際應(yīng)答語句生成器13產(chǎn)生應(yīng)答語句時,記錄在對話日志中的表達(dá)也被用作例子。
在參考圖10或11的更早描述的實(shí)施例中,當(dāng)實(shí)際應(yīng)答語句生成器13產(chǎn)生實(shí)際應(yīng)答語句時,記錄在對話日志數(shù)據(jù)庫15(圖2)中的對話日志被輔助地用在與輸入語句和例子之間匹配相關(guān)的得分的計(jì)算中。相反,在該修改實(shí)施例中,當(dāng)實(shí)際應(yīng)答語句生成器13產(chǎn)生實(shí)際應(yīng)答語句時該實(shí)際應(yīng)答語句生成器13使用記錄在對話日志中的表達(dá)作為例子。
當(dāng)記錄在對話日志中的表達(dá)被用作例子時,記錄在對話日志數(shù)據(jù)庫15中的所有語音(圖9)可以用與記錄在例子數(shù)據(jù)庫14中的例子相似的方式被簡化處理。然而,在這種情況下,如果從應(yīng)答輸出控制器16(圖2)輸出的最終應(yīng)答語句不適合作為輸入語句的應(yīng)答,該不適合的應(yīng)答語句能夠引起下一次對話中不適合的語句作為實(shí)際應(yīng)答語句而產(chǎn)生的概率的增加。
為了避免上述問題,當(dāng)記錄在對話日志中的表達(dá)被用作例子時,希望記錄在諸如圖9中所示的對話日志中的語音,在實(shí)際應(yīng)答語句的產(chǎn)生中特殊說話者的讀音被優(yōu)先地利用。
更特別地,例如,在圖9所示的對話日志中,在實(shí)際應(yīng)答語句的產(chǎn)生中說話者是“用戶”(例如,圖9中具有語音號r-4和r-2的語音)的語音被優(yōu)先地利用作為例子,而不是其它說話者的語音(圖9所示的例子中“系統(tǒng)”的語音)。用戶過去語音的優(yōu)先使用能夠給該用戶一個系統(tǒng)正在學(xué)習(xí)語言的感覺。
在記錄在對話日志中的語音的表達(dá)被用作例子的情況下,如同在第四修改實(shí)施例中,語音可以一組接一組地記錄,以及,在輸入語句和例子之間的匹配的評估中,得分可以根據(jù)等式(13)中的組被加權(quán),以至于與當(dāng)前話題相關(guān)的例子被優(yōu)先選擇為實(shí)際應(yīng)答語句。
為了上述目的,需要在一組接一組的基礎(chǔ)上根據(jù)例如話題對語音分組并記錄該語音在對話日志中。例如,這能夠如下被進(jìn)行。
在對話日志數(shù)據(jù)庫15中,在與用戶的交談中話題的改變被檢測,并且,從任意的話題改變之后緊接著的語音到下一個話題改變之前緊挨著的語音之間的語音(輸入語句和對每個輸入語句的應(yīng)答語句)被存儲在一個對話日志文件中,以至于特殊話題的語音被存儲在特殊對話日志文件中。
話題改變能夠通過檢測表示該話題改變的表達(dá)被檢測,諸如在談話中的“順便說一下”、“不要改變主題”等等。更特別地,許多表示話題改變的表達(dá)被準(zhǔn)備作為例子,并且,當(dāng)輸入語句和話題改變的一個例子之間的得分等于或大于預(yù)先確定的閾值時,確定已經(jīng)發(fā)生了話題改變。
當(dāng)用戶在預(yù)先確定的時間沒有說任何話時,可以確定已經(jīng)發(fā)生了話題改變。
在對話日志根據(jù)話題被存儲在不同的文件中的情況下,當(dāng)對話過程被啟動時,對話日志數(shù)據(jù)庫15的對話日志文件被打開,并且,從應(yīng)答輸出控制器16提供的輸入語句和每個輸入語句的最終應(yīng)答語句被作為語音寫入到所打開的文件中(圖9)。如果檢測到話題改變,當(dāng)前的對話日志文件就被關(guān)閉,新的對話日志文件被打開,并且,從應(yīng)答輸出控制器16提供的輸入語句和每個輸入語句的最終應(yīng)答語句被作為語音寫入到所打開的文件中(圖9)。該操作以相似的方式繼續(xù)進(jìn)行。
每個對話日志文件的文件名可以被給定,例如,通過表示話題的一串詞、序號和特殊的擴(kuò)展符(xxx)。在這種情況下,具有subject0.xxx、subject1.xxx等等文件名的對話日志文件被一個接一個地存儲在對話日志數(shù)據(jù)庫15中。
為了使用記錄在對話日志中的語音作為例子,需要在對話過程期間至少以只讀模式打開存儲在對話日志數(shù)據(jù)庫15中的所有對話日志,以便可以在對話過程期間讀出記錄在對話日志中的語音。在當(dāng)前的對話中用于記錄輸入語句和每個輸入語句的應(yīng)答語句的對話日志文件應(yīng)當(dāng)以讀/寫模式被打開。
因?yàn)閷υ捜罩緮?shù)據(jù)庫15的存儲容量有限,所以其語音不可能被用作實(shí)際應(yīng)答語句(例子)的對話日志文件可以被刪除。
第九修改例在第九修改實(shí)施例中,根據(jù)N個最好的語音識別候選者中的每個的相似性(表示相似性的分?jǐn)?shù))并且也根據(jù)每個例子和每個語音識別候選者之間匹配的分?jǐn)?shù)確定形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
在先前的實(shí)施例和修改實(shí)施例中,語音識別器2(圖1)輸出所有識別候選者中最相似的識別候選者作為語音識別結(jié)果。然而,在第九修改實(shí)施例中,語音識別器2輸出相似性較高的N個識別候選者作為輸入語句以及指示每個輸入語句相似性的信息。形式應(yīng)答語句生成器11或?qū)嶋H應(yīng)答語句生成器13評估作為輸入語句和例子給出的N個較高相似性的識別候選者中的每一個之間的匹配,并為與每個輸入語句有關(guān)的每個例子確定暫定得分。然后考慮到N個輸入語句(N個識別候選者)中的每一個的相似性根據(jù)與每個輸入語句有關(guān)的每個例子的暫定得分確定與每個輸入語句有關(guān)的每個例子的總分?jǐn)?shù)。
如果記錄在例子數(shù)據(jù)庫12或14中的例子數(shù)量用P表示,則形式應(yīng)答語句生成器11或?qū)嶋H應(yīng)答語句生成器13評估N個輸入語句中的每一個和P個例子中的每一個之間的匹配。也就是說,匹配評估被執(zhí)行N×P次。
在匹配的評估中,例如根據(jù)等式(17)確定每個輸入語句的總得分。
total_score(輸入語句#n,例子#p)=g(recog_score(輸入語句#n),match_score(輸入語句#n,例子#p))(17)其中“輸入語句#p”表示N個輸入語句(N個最高相似性識別候選者)中的第n個輸入語句,“例子#p”表示P個例子中的第p個例子,total_score(輸入語句#n,例子#p)是與輸入語句#n相關(guān)的例子#p的總分?jǐn)?shù),recog_score(輸入語句#n)是輸入語句(識別候選者)#n的相似性,match_score(輸入語句#n,例子#p)是表示與輸入語句#n相關(guān)的例子#p的相似性的得分并使用更早描述的向量空間法或DP匹配法確定該得分。在等式(17)中,兩個變量an和b的函數(shù)g(a,b)是變量an和b中的每個單調(diào)增加的函數(shù)。至于函數(shù)g(a,b),例如,g(a,b)=c1a+c2b(c1和c2是非負(fù)常數(shù))或g(a,b)=ab可以被使用。
形式應(yīng)答語句生成器11或?qū)嶋H應(yīng)答語句生成器13根據(jù)等式(17)為與N個輸入語句中的每個相關(guān)的P個例子中的每個確定總得分total_score(輸入語句#n,例子#p),并且利用具有最高total_score(輸入語句#n,例子#p)的值的例子作為形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13可以具有相同輸入語句或不同輸入語句的total_score(輸入語句#n,例子#p)的最高值。
如果對于形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13不同輸入語句的total_score(輸入語句#n,例子#p)具有最高值,則該情況可以被看成等于作為用戶發(fā)出的相同語音的語音識別結(jié)果的不同的輸入語句被提供給形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13的情況。這引起了怎樣將相同發(fā)音的不同輸入語句作為語音記錄到對話日志數(shù)據(jù)庫15中的問題。
在形式應(yīng)答語句生成器11不使用對話日志評估例子的匹配而實(shí)際應(yīng)答語句生成器13使用對話日志評估例子的匹配的情況下,對上述問題的解決方法是利用在由實(shí)際應(yīng)答語句生成器13執(zhí)行的評估中獲得最高total_score(輸入語句#n,例子#p)的輸入語句#n作為將被記錄在對話日志中的語音。
更簡單地,在由形式應(yīng)答語句生成器11執(zhí)行的評估中獲得最高total_score(輸入語句#n1,例子#p)的輸入語句#n1和在由實(shí)際應(yīng)答語句生成器13執(zhí)行的評估中獲得最高total-score(輸入語句#n2,例子#p)的輸入語句#n2都可以被記錄在對話日志中。
在輸入語句#n1和#n2都被記錄在對話日志中的情況下,要求在根據(jù)該對話日志(在參考圖10到12的更早描述的匹配中和在使用記錄在對話日志中的語音的表達(dá)式作為例子的匹配中)的匹配評估中,兩個輸入語句#n1和#n2應(yīng)當(dāng)被看成一個語音。
為了滿足上述要求,在使用向量空間方法執(zhí)行匹配評估的情況下,例如,代表輸入語句#n1的向量V1和代表輸入語句#n2的向量V2的平均向量(V1+V2)/2被看成代表對應(yīng)于兩個輸入語句#n1和#n2的一個語音的向量。
第十修改例在第十修改實(shí)施例中,形式應(yīng)答語句生成器11使用用戶語音的聲學(xué)特征產(chǎn)生形式應(yīng)答語句。
在先前實(shí)施例和修改實(shí)施例中,用戶發(fā)音的語音識別結(jié)果作為輸入語句被給出,形式應(yīng)答語句生成器11評估在產(chǎn)生形式應(yīng)答語句的過程中所給出的輸入語句和例子之間的匹配。相反,在第十修改實(shí)施例中,在產(chǎn)生形式應(yīng)答語句的過程中,該形式應(yīng)答語句生成器11使用用戶發(fā)音的聲學(xué)特征代替輸入語句或與輸入語句結(jié)合在一起。
至于用戶發(fā)音的聲學(xué)特征,例如,發(fā)音的發(fā)音長度(語音周期)或與節(jié)奏有關(guān)的度量信息可以被使用。
例如,形式應(yīng)答語句生成器11可以根據(jù)用戶發(fā)音的發(fā)音長度產(chǎn)生包括同一詞的重復(fù)的形式應(yīng)答語句,比如“uh-huh”、“uh-huh,uh-huh”、“uh-huh,uh-huh,uh-huh”等等,以至于重復(fù)詞的數(shù)量隨著發(fā)音長度而增加。
形式應(yīng)答語句生成器11也可以產(chǎn)生形式應(yīng)答語句以致于包括在形式應(yīng)答語句中的詞的數(shù)量隨著發(fā)音長度而增加,比如“My!”、“My God!”、“Oh,myGod!”等等。為了產(chǎn)生形式應(yīng)答語句以便詞的數(shù)量隨著發(fā)音長度而增加,例如,在評估輸入語句和例子之間的匹配中根據(jù)發(fā)音長度執(zhí)行加權(quán)以至于包括了許多詞的例子獲得較高的得分?;蛘?,可以預(yù)備包括各種數(shù)量的相應(yīng)于發(fā)音長度的各種值的詞的例子,并且包括了特殊數(shù)量的相應(yīng)于實(shí)際發(fā)音長度的詞的例子可以被選擇為形式應(yīng)答語句。在這種情況下,因?yàn)樵谛问綉?yīng)答語句的產(chǎn)生中使用語音識別的結(jié)果,所以快速地獲得形式應(yīng)答語句是可能的??梢詾橥话l(fā)音長度預(yù)備多個例子,并且例子中的一個可以被隨機(jī)選擇為形式應(yīng)答語句。
或者,形式應(yīng)答語句生成器11可以利用具有最高得分的例子作為形式應(yīng)答語句,并且語音合成器5(圖1)可以隨著發(fā)音長度的增加降低與形式應(yīng)答語句相應(yīng)的合成語音的重放速度(輸出速度)。
在一些情況下,與形式應(yīng)答語句相應(yīng)的合成語音的輸出從開始到結(jié)束的時間會隨著發(fā)音長度而增加。如參考圖14所示的流程圖更早描述的,如果應(yīng)答輸出控制器16在產(chǎn)生形式應(yīng)答語句之后立即輸出該形式應(yīng)答語句,而不等待將要產(chǎn)生的實(shí)際應(yīng)答語句,這可能會避免從用戶發(fā)音的結(jié)束到作為對該發(fā)音的應(yīng)答的合成語音的輸出的開始的響應(yīng)時間的增加,因此可以避免在形式應(yīng)答語句的輸出和實(shí)際應(yīng)答語句的輸出之間發(fā)生不自然的暫停。
更特別地,當(dāng)用戶發(fā)音的發(fā)音長度較長時,語音合成器2(圖1)就需要較長的時間來得到語音識別結(jié)果,并且實(shí)際應(yīng)答語句生成器13也需要較長的時間來評估作為語音識別結(jié)果的長輸入語句和例子之間的匹配。因此,如果在獲得語音識別結(jié)果之后形式應(yīng)答語句生成器11開始匹配評估以產(chǎn)生一形式應(yīng)答語句,那么需要長時間來獲得形式應(yīng)答語句因此應(yīng)答時間變長。
在實(shí)際應(yīng)答語句生成器13中,獲得實(shí)際應(yīng)答語句所用的時間比產(chǎn)生形式應(yīng)答語句所需的時間長,因?yàn)樗枰u估比形式應(yīng)答語句生成器11評估的例子更多的例子的匹配。因此,有可能當(dāng)形式應(yīng)答語句的合成語音的輸出完成時,實(shí)際應(yīng)答語句的產(chǎn)生還沒有完成。在這種情況下,在形式應(yīng)答語句的輸出結(jié)束和實(shí)際應(yīng)答語句的輸出開始之間發(fā)生自然的暫停。
為了避免上述問題,形式應(yīng)答語句生成器11以出現(xiàn)次數(shù)隨發(fā)音長度而增加的重復(fù)相同的詞的形式來產(chǎn)生形式應(yīng)答語句,并且,應(yīng)答輸出控制器16不等待實(shí)際應(yīng)答語句的產(chǎn)生就輸出形式應(yīng)答語句,以至于形式應(yīng)答語句在用戶發(fā)音結(jié)束之后立即被輸出。此外,因?yàn)樵谛问綉?yīng)答語句中重復(fù)的諸如“uh-huh”的詞的數(shù)量隨著發(fā)音長度而增加,所以在形式應(yīng)答語句以合成語音的形式輸出期間的時間隨著發(fā)音長度而增加。這使得在形式應(yīng)答語句被輸出期間語音合成器2獲得語音識別結(jié)果以及實(shí)際應(yīng)答語句生成器13獲得實(shí)際應(yīng)答語句成為可能。結(jié)果,可以避免上述不自然的暫停。
在形式應(yīng)答語句生成器11產(chǎn)生形式應(yīng)答語句中,除了用戶發(fā)音的發(fā)音長度外,可以使用諸如音高(頻率)等度量信息。
更特別地,形式應(yīng)答語句生成器11根據(jù)發(fā)音音高的變化確定由用戶說出的語句是否是陳述或疑問的形式。如果說的語句是陳述形式,那么可以產(chǎn)生適合作為對陳述句應(yīng)答的諸如“I see”的表達(dá)作為形式應(yīng)答語句。另一方面,當(dāng)用戶說出的語句是疑問形式時,形式應(yīng)答語句生成器11就產(chǎn)生適合作為對疑問句應(yīng)答的諸如“Let me see”的形式應(yīng)答語句。如上所述,根據(jù)用戶發(fā)音的發(fā)音長度形式應(yīng)答語句生成器11可以改變該形式應(yīng)答語句的長度。
形式應(yīng)答語句生成器11可以猜測用戶的感情狀態(tài)并根據(jù)所猜測的感情狀態(tài)產(chǎn)生形式應(yīng)答語句。例如,如果用戶在感情上是激動的,形式應(yīng)答語句生成器11可以產(chǎn)生形式應(yīng)答語句以肯定地應(yīng)答該用戶的說話而不使該用戶變得更激動。
例如,使用在日本未審查專利申請公開號5-12023中公開的方法,可以執(zhí)行用戶感情狀態(tài)的猜測。例如,使用在日本未審查專利申請公開號8-339446中公開的方法,可以執(zhí)行根據(jù)用戶感情狀態(tài)的應(yīng)答語句的產(chǎn)生。
提取說話長度或用戶說出的語句的度量信息的處理和猜測用戶感情狀態(tài)的處理,比語音識別處理需要的計(jì)算量少。因此,在形式應(yīng)答語句生成器11中,不是根據(jù)作為語音識別結(jié)果獲得的輸入語句而是根據(jù)發(fā)音長度、度量信息和/或用戶的感情狀態(tài)產(chǎn)生形式應(yīng)答語句,使得進(jìn)一步減少應(yīng)答時間(從用戶發(fā)出的語音的結(jié)束到應(yīng)答輸出的開始)成為可能。
如上描述的處理步驟的序列可以使用硬件裝置或軟件執(zhí)行。當(dāng)處理序列由軟件執(zhí)行時,形成該軟件的程序被安裝在通用計(jì)算機(jī)等等上。
圖24說明了根據(jù)本發(fā)明的實(shí)施例安裝了執(zhí)行上述處理的程序的計(jì)算機(jī)。
該程序可以提前安裝在作為布置在計(jì)算機(jī)內(nèi)的存儲媒體的硬盤105或ROM103中。
該程序也可以暫時或永久地存儲在可移動存儲媒體111諸如軟盤、CD-ROM(壓縮盤只讀存儲器)、MO(磁光)盤、DVD(數(shù)字通用盤)、磁盤或半導(dǎo)體存儲器中。存儲在該可移動存儲媒體111上的程序可以以所謂的軟件包的形式被提供。
不將程序從可移動存儲媒體111安裝到計(jì)算機(jī)上,程序也可以通過無線傳輸或依靠有線通訊通過網(wǎng)絡(luò)諸如LAN(局域網(wǎng))或Internet(因特網(wǎng))從下載站點(diǎn)傳輸給計(jì)算機(jī)。在這種情況下,計(jì)算機(jī)通過通訊單元108接收該程序并將所接收的程序安裝在計(jì)算機(jī)的硬盤105上。
該計(jì)算機(jī)包括CPU(中央處理單元)102。輸入/輸出接口110通過總線101連接到CPU102。如果CPU102通過輸入/輸出接口110接收由用戶使用包括鍵盤、鼠標(biāo)、麥克風(fēng)等輸入單元107發(fā)出的命令,該CPU102就執(zhí)行存儲在ROM(只讀存儲器)103上的程序。或者,CPU102可以執(zhí)行加載到RAM(隨機(jī)訪問存儲器)104內(nèi)的程序,其中,通過將存儲在硬盤105上的程序傳輸?shù)絉AM104、或在通過通訊單元108從人造衛(wèi)星或網(wǎng)絡(luò)接收到后傳送已安裝在硬盤105上的程序、或從加載到驅(qū)動器109的可移動記錄媒體111中讀出后傳送已安裝在硬盤105上的程序,程序可以被加載到RAM104。通過執(zhí)行該程序,CPU102執(zhí)行參考流程圖或框圖的上述處理。CPU102根據(jù)要求通過輸入/輸出接口110將處理結(jié)果輸出到包括LCD(液晶顯示器)和/或揚(yáng)聲器的輸出裝置106。該處理結(jié)果也可以通過通訊單元108被傳輸或存儲在硬盤105中。
在本發(fā)明中,根據(jù)流程圖中描述的順序,以由計(jì)算機(jī)執(zhí)行的程序中所描述的用于執(zhí)行各種處理的處理步驟不需要按照時間順序執(zhí)行。作為替換,該處理步驟可以并行或單獨(dú)執(zhí)行(通過并行處理或?qū)ο筇幚?。
該程序既可以由單一計(jì)算機(jī)執(zhí)行也可以由分布式形式的多個計(jì)算機(jī)執(zhí)行。該程序可以被傳送給遠(yuǎn)程的計(jì)算機(jī)從而可以被執(zhí)行。
在上述實(shí)施例中,記錄在例子數(shù)據(jù)庫12中由形式應(yīng)答語句生成器11使用的例子,以圖3示出的每條記錄包括一組輸入例子和相應(yīng)的應(yīng)答例子的形式被描述,而記錄在例子數(shù)據(jù)庫14中由實(shí)際應(yīng)答語句生成器13使用的例子,以圖7示出的每條記錄包括一個語音的形式被描述?;蛘撸涗浽诶訑?shù)據(jù)庫12中的例子可以被描述,以至于包括一個語音的每條記錄與例子數(shù)據(jù)庫14一樣。相反地,記錄在例子數(shù)據(jù)庫14中的例子可以被描述,以至于包括一組輸入例子和相應(yīng)的應(yīng)答例子的每條記錄與例子數(shù)據(jù)庫12一樣。
上面描述的僅用于形式應(yīng)答語句生成器11和實(shí)際應(yīng)答語句生成器13的任何技術(shù)可以根據(jù)要求被用于另一個。
圖1示出的語音對話系統(tǒng)可以被用于更多的裝置或系統(tǒng),諸如機(jī)器人、顯示在顯示器上的虛擬人物或具有翻譯能力的對話系統(tǒng)。
注意,在本發(fā)明中,沒有對該語音對話系統(tǒng)處理的語言的特別限制,本發(fā)明可以被應(yīng)用于諸如英語和日語等多種語言。
本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,根據(jù)設(shè)計(jì)要求和在所附的權(quán)利要求或其等同物的范圍內(nèi)的其它因素,可以發(fā)生各種修改、組合、子組合和改變。
權(quán)利要求
1.一種用于通過響應(yīng)輸入語句而輸出應(yīng)答語句的交互對話裝置,包括形式應(yīng)答語句獲取裝置,用于響應(yīng)輸入語句獲取形式應(yīng)答語句;實(shí)際應(yīng)答語句獲取裝置,用于響應(yīng)輸入語句獲取實(shí)際應(yīng)答語句;以及輸出控制裝置,用于控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出以便響應(yīng)輸入語句輸出最終的應(yīng)答語句。
2.如權(quán)利要求1的對話裝置,進(jìn)一步包括例子存儲裝置,用于存儲一個或多個例子,其中,該形式應(yīng)答語句獲取裝置或?qū)嶋H應(yīng)答語句獲取裝置根據(jù)輸入語句和例子獲取形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
3.如權(quán)利要求2的對話裝置,進(jìn)一步包括對話日志存儲裝置,用于將輸入語句或該輸入語句的最終的應(yīng)答語句作為對話日志存儲,其中,在形式應(yīng)答語句或?qū)嶋H應(yīng)答語句的獲取中,該形式應(yīng)答語句獲取裝置或?qū)嶋H應(yīng)答語句獲取裝置考慮該對話日志。
4.如權(quán)利要求3的對話裝置,其中,該形式應(yīng)答語句獲取裝置或?qū)嶋H應(yīng)答語句獲取裝置通過使用包括在作為例子的對話日志中的表達(dá)獲取形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
5.如權(quán)利要求3的對話裝置,其中,該對話日志存儲裝置為每個話題分別記錄對話日志。
6.如權(quán)利要求2的對話裝置,其中,該形式應(yīng)答語句獲取裝置或?qū)嶋H應(yīng)答語句獲取裝置使用向量空間方法評估輸入語句和例子之間的匹配,并基于在匹配評估中獲得較高得分的例子獲取形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
7.如權(quán)利要求2的對話裝置,其中,該形式應(yīng)答語句獲取裝置或?qū)嶋H應(yīng)答語句獲取裝置使用動態(tài)編程匹配方法評估輸入語句和例子之間的匹配,并基于在匹配評估中獲得較高得分的例子獲取形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
8.如權(quán)利要求7的對話裝置,其中,形式應(yīng)答語句獲取裝置或?qū)嶋H應(yīng)答語句獲取裝置用由df(文檔頻率)或idf(反文檔頻率)確定的系數(shù)加權(quán)包括在輸入語句中的每個詞,評估所加權(quán)的輸入語句和例子之間的匹配,并基于在匹配評估中獲得較高得分的例子獲取形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
9.如權(quán)利要求2的對話裝置,其中,該形式應(yīng)答語句獲取裝置或?qū)嶋H應(yīng)答語句獲取裝置獲取形式應(yīng)答語句或?qū)嶋H應(yīng)答語句,以致于首先使用向量空間方法執(zhí)行輸入語句和例子之間的匹配評估;進(jìn)一步使用動態(tài)編程匹配方法評估輸入語句和在使用向量空間方法的匹配評估中獲得較高得分的一些例子之間的匹配;以及基于在使用DP匹配方法的匹配評估中獲得較高得分的例子獲取形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
10.如權(quán)利要求2的對話裝置,其中,實(shí)際應(yīng)答語句獲取裝置利用與輸入語句相似的例子作為實(shí)際應(yīng)答語句。
11.如權(quán)利要求10的對話裝置,其中,實(shí)際應(yīng)答語句獲取裝置利用與輸入語句相似但與輸入語句不完全一致的例子作為實(shí)際應(yīng)答語句。
12.如權(quán)利要求2的對話裝置,其中例子存儲裝置用與說話的順序相同的順序存儲例子;以及實(shí)際應(yīng)答語句獲取裝置選擇位于與輸入語句相似的例子之后并與前一次輸出的實(shí)際應(yīng)答語句不同的例子,并且實(shí)際應(yīng)答語句獲取裝置利用所選擇的例子作為這一次被輸出的實(shí)際應(yīng)答語句。
13.如權(quán)利要求2的對話裝置,其中例子存儲裝置存儲例子和表示各個例子的說話者的信息,以至于例子和相應(yīng)的說話者被聯(lián)系在一起;以及考慮有關(guān)說話者的信息,該實(shí)際應(yīng)答語句獲取裝置獲取實(shí)際應(yīng)答語句。
14.如權(quán)利要求2的對話裝置,其中在一組接一組的基礎(chǔ)上,例子存儲裝置分別存儲例子;以及通過基于在與輸入語句的匹配中被評估的一組例子和其中之一被用作前次輸出的實(shí)際應(yīng)答語句的一組例子之間的相似性來評估輸入語句和例子之間的匹配,該實(shí)際應(yīng)答語句獲取裝置獲取這一次被輸出的實(shí)際應(yīng)答語句。
15.如權(quán)利要求2的對話裝置,其中例子存儲裝置存儲其一個或多個部分具有變量形式的例子;以及實(shí)際應(yīng)答語句獲取裝置通過用特殊的表達(dá)代替包括在該例子中的一個或多個變量而獲取實(shí)際應(yīng)答語句。
16.如權(quán)利要求2的對話裝置,進(jìn)一步包括語音識別裝置,用于識別語音并輸出作為輸入語句的語音識別結(jié)果,也輸出包括在作為語音識別結(jié)果獲得的語句中的每個詞的信心度量,其中,形式應(yīng)答語句獲取裝置或?qū)嶋H應(yīng)答語句獲取裝置通過考慮信心度量評估輸入語句和例子之間的匹配而獲取形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
17.如權(quán)利要求2的對話裝置,進(jìn)一步包括語音識別裝置,用于識別語音并輸出作為輸入語句的語音識別結(jié)果,其中,形式應(yīng)答語句獲取裝置或?qū)嶋H應(yīng)答語句獲取裝置考慮表示語音識別結(jié)果相似性的得分,根據(jù)在輸入語句和例子之間的匹配評估中所獲得的得分而獲取形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
18.如權(quán)利要求1的對話裝置,其中,形式應(yīng)答語句獲取裝置和實(shí)際應(yīng)答語句獲取裝置通過使用不同的方法分別獲取形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
19.如權(quán)利要求1的對話裝置,其中,輸出控制裝置確定形式應(yīng)答語句或?qū)嶋H應(yīng)答語句是否滿足預(yù)定條件,并且,當(dāng)形式應(yīng)答語句或?qū)嶋H應(yīng)答語句滿足該預(yù)定條件時,輸出控制裝置輸出形式應(yīng)答語句或?qū)嶋H應(yīng)答語句。
20.如權(quán)利要求1的對話裝置,進(jìn)一步包括語音識別裝置,用于識別語音并輸出作為輸入語句的語音識別結(jié)果;其中,形式應(yīng)答語句獲取裝置根據(jù)語音的聲學(xué)特征獲取形式應(yīng)答語句;以及實(shí)際應(yīng)答語句獲取裝置根據(jù)輸入語句獲取實(shí)際應(yīng)答語句。
21.如權(quán)利要求1的對話裝置,其中,輸出控制裝置輸出形式應(yīng)答語句并隨后輸出實(shí)際應(yīng)答語句。
22.如權(quán)利要求21的對話裝置,其中,輸出控制裝置從實(shí)際應(yīng)答語句中刪除形式應(yīng)答語句和實(shí)際應(yīng)答語句之間的重疊并輸出所合成的實(shí)際應(yīng)答語句。
23.如權(quán)利要求1的對話裝置,其中,輸出控制裝置連接形式應(yīng)答語句和實(shí)際應(yīng)答語句并輸出一個結(jié)果。
24.一種通過響應(yīng)輸入語句而輸出應(yīng)答語句的交互方法,包括以下步驟響應(yīng)輸入語句獲取形式應(yīng)答語句;響應(yīng)輸入語句獲取實(shí)際應(yīng)答語句;以及控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出,以致于響應(yīng)該輸入語句輸出最終的應(yīng)答語句。
25.一種使計(jì)算機(jī)通過響應(yīng)輸入語句而輸出應(yīng)答語句的交互程序,該程序包括以下步驟響應(yīng)輸入語句獲取形式應(yīng)答語句;響應(yīng)輸入語句獲取實(shí)際應(yīng)答語句;以及控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出,以致于響應(yīng)該輸入語句輸出最終的應(yīng)答語句。
26.一種包括存儲在其上使計(jì)算機(jī)通過響應(yīng)輸入語句而輸出應(yīng)答語句的交互程序的存儲介質(zhì),該程序包括以下步驟響應(yīng)輸入語句獲取形式應(yīng)答語句;響應(yīng)輸入語句獲取實(shí)際應(yīng)答語句;以及控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出,以致于響應(yīng)該輸入語句輸出最終的應(yīng)答語句。
27.一種用于響應(yīng)輸入語句而輸出應(yīng)答語句的交互對話裝置,包括形式應(yīng)答語句獲取單元,配置為響應(yīng)輸入語句獲取形式應(yīng)答語句;實(shí)際應(yīng)答語句獲取單元,配置為響應(yīng)輸入語句獲取實(shí)際應(yīng)答語句;以及輸出單元,配置為控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出以至于響應(yīng)輸入語句輸出最終的應(yīng)答語句。
全文摘要
一種用于通過輸出響應(yīng)輸入語句的應(yīng)答語句而交互對話裝置,包括配置為響應(yīng)輸入語句獲取形式應(yīng)答語句的形式應(yīng)答獲取單元,配置為響應(yīng)輸入語句獲取實(shí)際應(yīng)答語句的實(shí)際應(yīng)答獲取單元,以及配置為控制形式應(yīng)答語句和實(shí)際應(yīng)答語句的輸出以至于響應(yīng)輸入語句輸出最終的應(yīng)答語句的輸出控制單元。
文檔編號G10L15/00GK1734445SQ20051010383
公開日2006年2月15日 申請日期2005年7月26日 優(yōu)先權(quán)日2004年7月26日
發(fā)明者廣江厚夫, 赫爾穆特·勒克, 小玉康廣 申請人:索尼株式會社