專利名稱:會話控制裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種會話控制裝置,其根據(jù)來自用戶的話語發(fā)送應(yīng)答或響應(yīng)。
背景技術(shù):
近年來,返回對用戶話語的答復(fù)的會話控制裝置已經(jīng)用在不同的應(yīng)用中,例如汽車導(dǎo)航系統(tǒng)(例如,日本未審專利公開No.2004-258902、2004-258903和2004-258904)。這種會話控制裝置旨在與用戶建立會話的同時,答復(fù)用戶的問題并指導(dǎo)用戶。
通常,以上所述的這種會話控制裝置將對用戶話語內(nèi)容的應(yīng)答、響應(yīng)等準(zhǔn)備為數(shù)據(jù)庫,根據(jù)用戶的話語內(nèi)容從數(shù)據(jù)庫提取應(yīng)答、響應(yīng)等,以及通過發(fā)送所述應(yīng)答、響應(yīng)等而嘗試建立會話。然而,其不能對未在數(shù)據(jù)庫中準(zhǔn)備的用戶話語內(nèi)容進行答復(fù)。例如,其以如下方式進行設(shè)計,在用戶話語內(nèi)容中包括兩個或更多未知詞語(未在數(shù)據(jù)庫中準(zhǔn)備的詞語)的情況下存在“無法應(yīng)答”的情形,從而答復(fù)“我不知道”等。
在包括這種未知詞語的連續(xù)的用戶話語的情況下,目前已知的會話控制裝置重復(fù)“我不知道”,從而無法建立會話,因而,存在使用戶感覺不自然或不方便的缺陷。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種會話控制裝置,即使輸入了一種可能引起“無法應(yīng)答”的用戶話語,該裝置也不會僅僅返回可預(yù)測的、機械的應(yīng)答,而是可以根據(jù)用戶話語條件執(zhí)行能夠維持會話建立的應(yīng)答。
作為解決以上所述問題的方案,本發(fā)明包括下述特征。
本發(fā)明提出一種會話控制裝置,其響應(yīng)于用戶話語而發(fā)送應(yīng)答語句。該會話控制裝置包括處理器(例如CPU),執(zhí)行響應(yīng)于用戶話語而發(fā)送應(yīng)答語句的控制;以及存儲器(例如,會話數(shù)據(jù)庫),存儲多個方案,每個方案包括所述應(yīng)答語句和規(guī)定下一候選應(yīng)答語句的下一候選規(guī)定信息,所述下一候選應(yīng)答語句是將以承接于所述應(yīng)答語句之后的順序而被發(fā)送的應(yīng)答語句。處理器響應(yīng)于第一用戶話語,選擇存儲在所述存儲器中的方案,并發(fā)送所述方案中包括的應(yīng)答語句,在隨后說出的第二用戶話語對應(yīng)于由所述方案中包括的所述下一候選規(guī)定信息所規(guī)定的下一候選應(yīng)答語句的情況下,發(fā)送由所述下一候選規(guī)定信息所規(guī)定的所述下一候選應(yīng)答語句,而在所述第二用戶話語不關(guān)聯(lián)于所述下一候選應(yīng)答語句或者關(guān)系不清楚的情況下,推遲對所述下一候選應(yīng)答語句的發(fā)送;在推遲對所述下一候選應(yīng)答語句的發(fā)送的情況下,搜索關(guān)聯(lián)于所述第二用戶話語的話題,并且在其找到關(guān)聯(lián)于所述第二用戶話語的話題的情況下,發(fā)送關(guān)聯(lián)于所述話題的應(yīng)答語句,而在其未找到關(guān)聯(lián)于所述第二用戶話語的話題的情況下,推遲對關(guān)聯(lián)于所述話題的所述應(yīng)答語句的發(fā)送;以及在推遲對所述應(yīng)答語句的發(fā)送的情況下,估計所述第二用戶話語,并根據(jù)估計結(jié)果執(zhí)行用于發(fā)送應(yīng)答語句的控制。
在這種會話控制裝置中,根據(jù)用戶話語的內(nèi)容,首先是方案會話模塊且其次是談話空間會話模塊發(fā)送應(yīng)答語句,與用戶建立會話。在方案會話模塊或談話空間會話模塊均不能應(yīng)答的情況下,情形為該會話控制裝置沒有適當(dāng)?shù)闹R(或數(shù)據(jù))來向用戶話語提供應(yīng)答。即使在這種情形下,在根據(jù)本發(fā)明的會話控制裝置中,會話繼續(xù)和維持模塊也能夠根據(jù)用戶話語條件而發(fā)送維持會話的應(yīng)答。
也容許該會話控制裝置進一步包括下述特征。
即,容許該會話控制裝置進一步包括使處理器執(zhí)行如下控制的特征,即確定第二用戶話語是否是正在解釋某事、確認(rèn)某事或者批評或攻擊某事,根據(jù)確定結(jié)果從預(yù)定的應(yīng)答語句集合(例如,說明性會話響應(yīng)語句表、確認(rèn)會話響應(yīng)語句表、批評和攻擊會話響應(yīng)語句表或反射性會話語句表)中選擇所述應(yīng)答語句并發(fā)送。
即,該會話控制裝置包括處理器,執(zhí)行響應(yīng)于用戶話語而發(fā)送應(yīng)答語句的控制;以及存儲器,存儲多個方案,每個方案包括所述應(yīng)答語句和規(guī)定下一候選應(yīng)答語句的下一候選規(guī)定信息,所述下一候選應(yīng)答語句是將以承接于所述應(yīng)答語句之后的順序而被發(fā)送的應(yīng)答語句。處理器響應(yīng)于第一用戶話語,選擇存儲在所述存儲器中的方案,并發(fā)送所述方案中包括的應(yīng)答語句,在隨后說出的第二用戶話語對應(yīng)于由所述方案中包括的所述下一候選規(guī)定信息所規(guī)定的下一候選應(yīng)答語句的情況下,發(fā)送由所述下一候選規(guī)定信息所規(guī)定的所述下一候選應(yīng)答語句,而在所述第二用戶話語不關(guān)聯(lián)于所述下一候選應(yīng)答語句或者關(guān)系不清楚的情況下,推遲對所述下一候選應(yīng)答語句的發(fā)送;在推遲對所述下一候選應(yīng)答語句的發(fā)送的情況下,搜索關(guān)聯(lián)于所述第二用戶話語的話題,并且在其找到關(guān)聯(lián)于所述第二用戶話語的話題的情況下,發(fā)送關(guān)聯(lián)于所述話題的應(yīng)答語句,而在其未找到關(guān)聯(lián)于所述第二用戶話語的話題的情況下,推遲對關(guān)聯(lián)于所述話題的所述應(yīng)答語句的發(fā)送;以及在推遲發(fā)送該應(yīng)答語句的情況下,確定第二用戶話語是否是正在解釋某事、確認(rèn)某事或者批評或攻擊某事,根據(jù)確定結(jié)果從預(yù)定的應(yīng)答語句集合中選擇所述應(yīng)答語句并發(fā)送。
根據(jù)這種會話控制裝置,能夠根據(jù)用戶話語的內(nèi)容發(fā)送維持會話建立的應(yīng)答語句。
根據(jù)本發(fā)明,即使在不能利用裝置內(nèi)準(zhǔn)備的知識來應(yīng)答輸入的用戶話語的情況下,也能夠維持會話的建立。
本發(fā)明的附加目的和優(yōu)點將在以下的描述中闡述,并且通過描述其將變得顯而易見,或可以通過實施本發(fā)明而了解。通過利用在下文中具體指出的手段和組合可以實現(xiàn)和獲得本發(fā)明的目的和優(yōu)點。
附圖包含于說明書并構(gòu)成說明書的一部分,其示出本發(fā)明的實施例,并與上文給出的一般性說明和下文給出的實施例的詳細(xì)描述一起用于解釋本發(fā)明的原理。
圖1是示出會話控制裝置的配置實例的功能框圖;圖2是示出聲音識別單元的配置實例的功能框圖;圖3是示出詞語假設(shè)消除器的處理實例的時序圖;圖4是示出聲音識別單元的操作實例的流程圖;圖5是會話控制裝置的局部放大框圖;圖6是示出字母串與從字母串提取的詞素之間關(guān)系的視圖;圖7是示出“話語類型”、字母表中表示話語類型的兩個字母以及對應(yīng)于話語類型的話語實例的視圖;圖8示出語句類型與用于確定該類型的詞典之間的關(guān)系;圖9是示出在會話數(shù)據(jù)庫中存儲的數(shù)據(jù)的數(shù)據(jù)配置實例的示意圖;圖10是示出某一話題指定信息項和其它話題指定信息項之間關(guān)系的視圖;圖11是示出話題標(biāo)題(也稱為“第二詞素信息”)的數(shù)據(jù)配置實例的視圖;圖12是描述應(yīng)答語句的數(shù)據(jù)配置實例的視圖;圖13示出與某一話題指定信息項關(guān)聯(lián)的話題標(biāo)題、應(yīng)答語句和下一方案指定信息的具體實例;圖14是描述方案空間(plan space)的示意圖;圖15是示出方案實例的視圖;圖16是示出不同方案實例的視圖;圖17是示出方案會話(planned conversation)處理的具體實例的視圖;圖18是示出會話控制器的主處理的實例的流程圖;圖19是示出方案會話控制處理的實例的流程圖;圖20是承接圖19,示出方案會話控制處理的實例的流程圖;圖21是示出基本控制條件的視圖;
圖22是示出談話空間(talk space)會話控制處理的實例的流程圖;圖23是示出CA會話處理器的配置實例的功能框圖;以及圖24是示出CA會話處理的實例的流程圖。
具體實施例方式
下面將參考附圖給出對本發(fā)明第一實施例的描述。
本發(fā)明第一實施例被提出為一種會話控制裝置,其輸出對用戶話語的響應(yīng)并與用戶建立會話。
A.第一實施例1.會話控制裝置的配置實例1.1.整體配置圖1是示出根據(jù)本實施例的會話控制裝置1的配置實例的功能框圖。
會話控制裝置1具有例如安裝在其外殼內(nèi)的信息處理器,例如計算機或工作站,或者等效于信息處理器的硬件。包括在會話控制裝置1中的信息處理器由如下設(shè)備構(gòu)成,該設(shè)備配備有中央處理單元(CPU)、主存儲器(RAM)、只讀存儲器(ROM)、輸入/輸出設(shè)備(I/O)以及例如硬盤的外部存儲器設(shè)備。用于使信息處理器作為會話控制裝置1的程序或用于使計算機執(zhí)行會話控制方法的程序存儲在ROM、外部存儲器設(shè)備等中,將相關(guān)程序加載到主存儲器中,并由執(zhí)行該程序的CPU實現(xiàn)會話控制裝置1或會話處理方法。此外,并非必須將程序存儲在相關(guān)裝置內(nèi)的存儲器設(shè)備中,這是因為如下配置也是容許的,即,使得程序由計算機可讀程序記錄介質(zhì),例如磁盤、光盤、磁光盤、CD(壓縮盤)或DVD(數(shù)字視頻盤)或外部設(shè)備(例如ASP(應(yīng)用服務(wù)供應(yīng)商)服務(wù)器等)提供,并加載到主存儲器中。
如圖1所示,會話控制裝置1包括輸入單元100、聲音識別單元200、會話控制器300、結(jié)構(gòu)分析器400、會話數(shù)據(jù)庫500、輸出單元600和聲音識別詞典存儲器700。
1.1.1.輸入單元輸入單元100獲得由用戶輸入的輸入信息(用戶話語)。輸入單元100將對應(yīng)于所獲得的話語內(nèi)容的聲音作為聲音信號發(fā)送到聲音識別單元200。不必將輸入單元100限定為是一種處理聲音的組件,這是因為也容許其是一種處理字母輸入的例如鍵盤或觸摸屏的組件。在這種情況下,不必提供聲音識別單元200,將在下面描述。
1.1.2.聲音識別單元聲音識別單元200基于由輸入單元100獲得的話語內(nèi)容,識別對應(yīng)于該話語內(nèi)容的字母串。具體地,從輸入單元100向其中輸入了聲音信號的聲音識別單元200基于所輸入的聲音信號,將該聲音信號與聲音識別詞典存儲器700中存儲的詞典以及會話數(shù)據(jù)庫500進行對照,并發(fā)送從該聲音信號推斷的聲音識別結(jié)果。盡管在圖1所示的配置實例中,聲音識別單元200請求會話控制器300從會話數(shù)據(jù)庫500獲得存儲器詳情,并從會話數(shù)據(jù)庫500接收會話控制器300響應(yīng)于該請求而獲得的存儲器詳情,然而,如下方式的配置也是容許的,即,聲音識別單元200直接從會話數(shù)據(jù)庫500獲得存儲器詳情,并執(zhí)行與聲音信號的比較。
1.1.2.1.聲音識別單元的配置實例圖2示出聲音識別單元200的配置實例的功能框圖。聲音識別單元200包括特征提取器200A、緩沖存儲器(BM)200B、詞語對照單元200C、緩沖存儲器(BM)200D、候選確定單元200E以及詞語假設(shè)消除器200F。詞語對照單元200C和詞語假設(shè)消除器200F連接到聲音識別詞典存儲器700,候選確定單元200E連接到會話數(shù)據(jù)庫500。
連接到詞語對照單元200C的聲音識別詞典存儲器700存儲音素隱馬爾可夫模型(在下文中,將隱馬爾可夫模型稱為HMM)。音素HMM被表示為包含每一個條件,每一個條件包括下述信息。該信息配置有(a)條件編號,(b)可接收的上下文種類,(c)在前條件(preceding condition)和后續(xù)條件(following condition)列表,(d)輸出概率密度分布參數(shù),以及(e)自轉(zhuǎn)移概率和轉(zhuǎn)換到后續(xù)條件的概率。由于需要識別每一個分布來自于哪一個講話者,該實施例中使用的音素HMM轉(zhuǎn)換并生成指定講話者混合HMM。在本文中,輸出概率密度函數(shù)是具有34維對角協(xié)方差矩陣的混合高斯分布。此外,連接到詞語對照單元200C的聲音識別詞典存儲器700存儲詞典。所述詞典存儲符號串,其指示由用于音素HMM的每一個詞語的符號所表示的讀取(reading)。
在講話者發(fā)出的聲音輸入到麥克風(fēng)等中并轉(zhuǎn)換成聲音信號后,其被輸入到特征提取器200A。特征提取器200A在對輸入聲音信號進行A/D轉(zhuǎn)換后,提取并發(fā)送特征參數(shù)。盡管可以考慮多種用于提取并發(fā)送特征參數(shù)的方法,但是作為實例,提出了如下方法,其中執(zhí)行LPC分析,并提取34維特征參數(shù),包括對數(shù)冪、16階倒譜系數(shù)、Δ對數(shù)冪以及16階Δ倒譜系數(shù)。經(jīng)緩沖存儲器(BM)200B,將所提取特征參數(shù)的時間序列輸入到詞語對照單元200C中。
詞語對照單元200C基于經(jīng)緩沖存儲器200B輸入的特征參數(shù)數(shù)據(jù),利用一遍(one pass)Viterbi解碼方法,使用在聲音識別詞典存儲器700中存儲的音素HMM和詞典,檢測詞語假設(shè),計算似然并發(fā)送。其中,詞語對照單元200C計算詞語中的似然以及每一次從發(fā)聲開始處對每個HMM的每一個條件的似然。單獨詞語具有對于作為似然計算對象的詞語的標(biāo)識編號中的每一個差異、詞語的發(fā)聲開始時間以及在該詞語前發(fā)聲的在前詞語的似然。此外,為減少計算處理的數(shù)量,也容許從基于音素HMM和詞典所計算的整體似然中減少低似然柵格假設(shè)(likelihood grid hypothesis)。詞語對照單元200C經(jīng)緩沖存儲器200D,將所檢測的詞語假設(shè)和關(guān)于似然的信息與發(fā)聲開始時間處的時間信息(具體地,例如幀號)一起發(fā)送到候選確定單元200E和詞語假設(shè)消除器200F。
參照會話控制器300,候選確定單元200E將所檢測的詞語假設(shè)與規(guī)定(prescribed)談話空間中的話題指定信息進行比較,確定在所檢測的詞語假設(shè)中是否存在與規(guī)定談話空間中的話題指定信息相匹配的任何詞語假設(shè),在存在匹配的情況下,將匹配詞語假設(shè)作為識別結(jié)果發(fā)送,而在沒有匹配的情況下,請求詞語假設(shè)消除器200F執(zhí)行對詞語假設(shè)的消除。
將給出對候選確定單元200E的操作實例的描述?,F(xiàn)在,假定詞語對照單元200C發(fā)送多個詞語假設(shè)“kantaku”、“kataku”、“kantoku”及其似然(識別率),在這種情況下,在話題指定信息中包括與“電影”、“kantoku(導(dǎo)演)”關(guān)聯(lián)的規(guī)定談話空間,但不包括“kantaku(收回)”和“kataku(借口)”。此外,在“kantaku”、“kataku”和“kantoku”中,“kantaku”的似然(識別率)最高,“kantoku”的似然最低,而“kataku”的似然位于上述兩者之間。
在以上所述的情形中,候選確定單元200E將所檢測的詞語假設(shè)與規(guī)定談話空間中的話題指定信息進行比較,確定詞語假設(shè)“kantoku”與規(guī)定談話空間中的話題指定信息匹配,將詞語假設(shè)“kantoku”作為識別結(jié)果發(fā)送,并將其傳送到會話控制器300。通過以這種方式進行處理,優(yōu)先于具有更高似然(識別率)的詞語假設(shè)“kantaku”和“kataku”,選擇與目前正處理的話題“電影”關(guān)聯(lián)的詞語假設(shè)“kantoku(導(dǎo)演)”,從而,可以發(fā)送與會話的上下文相符的聲音識別結(jié)果。
同時,在沒有匹配的情況下,詞語假設(shè)消除器200F以如下方式進行操作,即,響應(yīng)于來自候選確定單元200E的請求,發(fā)送識別結(jié)果以便執(zhí)行對詞語假設(shè)的消除。在執(zhí)行了對具有相同完成時間和不同開始時間的相同詞語的詞語假設(shè)的消除后,為了用作在從發(fā)聲開始時間到相關(guān)詞語完成時間內(nèi)計算的整體似然中具有最高似然的代表性的一個詞語假設(shè),對于這些詞語的每一個主要音素環(huán)境,詞語假設(shè)消除器200F基于從詞語對照單元200C經(jīng)緩沖存儲器200D發(fā)送的多個詞語假設(shè),參考在聲音識別詞典存儲器700中存儲的統(tǒng)計語言模型,將進行了消除后的所有詞語假設(shè)的詞語串中具有最大整體似然的假設(shè)的詞語串作為識別結(jié)果而發(fā)送。在該實施例中,優(yōu)選地,待處理詞語的主要音素環(huán)境涉及三音素對準(zhǔn)(alignment),包括在該詞語之前的詞語假設(shè)的最后一個音素以及該詞語的詞語假設(shè)的前兩個音素。
將參考圖3給出對詞語假設(shè)消除器200F所進行的詞語消除處理實例的描述。圖3是示出詞語假設(shè)消除器200F的處理實例的時序圖。
例如,當(dāng)在第(i-1)個詞語Wi-1之后出現(xiàn)包括音素串a(chǎn)1、a2、...的第i個詞語Wi時,認(rèn)為存在六個假設(shè)Wa、Wb、Wc、Wd、We和Wf以作為詞語Wi-1的詞語假設(shè)。其中,認(rèn)為前三個詞語假設(shè)Wa、Wb和Wc的最后一個音素為/x/,并且后三個詞語假設(shè)Wd、We和Wf的最后一個音素為/y/。在完成時間te處,在預(yù)先假定詞語假設(shè)Wa、Wb和Wc的三個假設(shè)以及預(yù)先假定詞語假設(shè)Wd、We和Wf的一個假設(shè)存在的情況下,保留在具有相同主要音素環(huán)境的前三個假設(shè)中具有最高整體似然的假設(shè),同時刪除其它假設(shè)。
由于預(yù)先假定詞語假設(shè)Wd、We和Wf的假設(shè)具有與其它三個假設(shè)不同的主要音素環(huán)境,即,由于在前詞語假設(shè)的最后一個音素不是x而是y,因而不刪除預(yù)先假定詞語假設(shè)Wd、We和Wf的假設(shè)。即,對于在前詞語假設(shè)的每一個最后音素,僅保留一個假設(shè)。
盡管在以上所述的實施例中,將詞語的主要音素環(huán)境定義為三音素對準(zhǔn),包括在該詞語之前的詞語假設(shè)的最后一個音素和該詞語的詞語假設(shè)的前兩個音素,但是本發(fā)明不限于此,也容許音素對準(zhǔn)包括在前詞語假設(shè)的音素串以及包括該詞語的詞語假設(shè)的第一音素的音素串,其中在前詞語假設(shè)的音素串包括在前詞語假設(shè)的最后一個音素和相鄰于所述最后一個音素的至少一個在前詞語假設(shè)音素。
在以上所述的實施例中,特征提取器200A、詞語對照單元200C、候選確定單元200E和詞語假設(shè)消除器200F由例如計算機(例如微計算機)構(gòu)成,而緩沖存儲器200B和200D以及聲音識別詞典存儲器700由例如存儲器設(shè)備(例如硬盤存儲器)構(gòu)成。
盡管在上述實施例中,使用詞語對照單元200C和詞語假設(shè)消除器200F執(zhí)行聲音識別,但本發(fā)明不限于此,也容許構(gòu)造為,例如,參考音素HMM的音素對照單元,以及例如使用一遍DP算法、參考統(tǒng)計語言模型來執(zhí)行詞語的聲音識別的聲音識別單元。
此外,在該實施例中,聲音識別單元200被描述為是會話控制裝置1的一部分,但是,其也可能是獨立的聲音識別設(shè)備,包括聲音識別單元200、聲音識別詞典存儲器700和會話數(shù)據(jù)庫500。
1.1.2.2.聲音識別單元的操作實例下面,將參考圖4給出對聲音識別單元200的操作的描述。圖4是示出聲音識別單元200的操作實例的流程圖。當(dāng)從輸入單元100接收到聲音信號時,聲音識別單元200執(zhí)行對所接收聲音的特征分析,并生成特征參數(shù)(步驟S401)。接著,將特征參數(shù)與在聲音識別詞典存儲器700中存儲的音素HMM和語言模型進行比較,并獲得規(guī)定數(shù)量的詞語假設(shè)及其似然(步驟S402)。接著,聲音識別單元200比較所獲得的規(guī)定數(shù)量的詞語假設(shè)、所檢測的詞語假設(shè)以及規(guī)定談話空間中的話題指定信息,并確定在所檢測的詞語假設(shè)中是否存在與規(guī)定談話空間中的話題指定信息相匹配的詞語假設(shè)(步驟S403、S404)。在存在匹配的情況下,聲音識別單元200將匹配的詞語假設(shè)作為識別結(jié)果發(fā)送(步驟S405)。同時,在不存在匹配的情況下,聲音識別單元200根據(jù)所獲得的詞語假設(shè)的似然,將具有最大似然的詞語假設(shè)作為識別結(jié)果發(fā)送(步驟S406)。
1.1.3.聲音識別詞典存儲器返回到圖1,將繼續(xù)描述會話控制裝置1的配置實例。
聲音識別詞典存儲器700存儲對應(yīng)于標(biāo)準(zhǔn)聲音信號的字母串。已經(jīng)進行了對照的聲音識別單元200指定與對應(yīng)于聲音信號的詞語假設(shè)相對應(yīng)的字母串,并將指定的字母串作為字母串信號而發(fā)送到會話控制器300。
1.1.4.結(jié)構(gòu)分析器下面將參考圖5給出對結(jié)構(gòu)分析器400的配置實例的描述。圖5是示出會話控制器300和結(jié)構(gòu)分析器400的具體配置實例的框圖,其是會話控制裝置1的局部放大框圖。圖5僅示出了會話控制器300、結(jié)構(gòu)分析器400和會話數(shù)據(jù)庫500,而省略了其它組件。
結(jié)構(gòu)分析器400分析由輸入單元100或聲音識別單元200指定的字母串。在該實施例中,如圖5所示,結(jié)構(gòu)分析器400包括字母串指定單元410、詞素(morpheme)提取器420、詞素數(shù)據(jù)庫430、輸入類型確定單元440以及話語類型數(shù)據(jù)庫450。字母串指定單元410將由輸入單元100和聲音識別單元200指定的字母串序列劃分成多個分離從句。分離從句是指在不破壞語法意義的情況下通過盡可能小地劃分字母串而獲得的語句段。具體地,當(dāng)在字母串序列中存在一個具有某一長度的時間間隔或更多的時間間隔時,字母串指定單元410劃分該部分的字母串。字母串指定單元410將每一個劃分的字母串發(fā)送到詞素提取器420和輸入類型確定單元440。此后所述的“字母串”是指用于分離從句的字母串。
1.1.4.1詞素提取器詞素提取器420基于由字母串指定單元410劃分的分離從句的字母串,從分離從句的字母串中提取構(gòu)成字母串的最小單元的每一個詞素,作為第一詞素信息。其中,在該實施例中,詞素是指在字母串中表示的詞語構(gòu)成的最小單元。例如,可以將語音的一部分,例如名詞、形容詞或動詞,視作詞語構(gòu)成的最小單元。
在該實施例中,如圖6所示,每一個詞素表示為m1、m2、m3...。圖6是示出字母串和從該字母串提取的詞素之間關(guān)系的視圖。如圖6所示,從字母串指定單元410向其中輸入了字母串的詞素提取器420,將所輸入的字母串與在詞素數(shù)據(jù)庫430中預(yù)先存儲的詞素集合(詞素集合被準(zhǔn)備為描述屬于話音種類每一部分的每一個詞素的詞素中心詞、讀取、部分話音、結(jié)合等的詞素集合詞典)進行對照。已經(jīng)執(zhí)行了對照的詞素提取器420從字母串中提取與預(yù)先存儲的詞素集合中的任何一個相匹配的每一個詞素(m1、m2...)。所提取的詞素之外的元素(n1、n2、n3...)可以是例如助動詞等。
詞素提取器420將所提取的詞素作為第一詞素信息發(fā)送到話題指定信息檢索單元350。無需對第一詞素信息進行結(jié)構(gòu)化。在本文中,“結(jié)構(gòu)化”是指基于所述語音部分等,分類和分配包括在字母串中的詞素,例如,按照預(yù)定順序,例如“主語+賓語+謂語”,將例如所說出語句的字母串轉(zhuǎn)換成通過分配詞素而獲得的數(shù)據(jù)。當(dāng)然,即使在使用結(jié)構(gòu)化的第一詞素信息的情況下,也不會防礙該實施例的實現(xiàn)。
1.1.4.2.輸入類型確定單元輸入類型確定單元440基于由字母串指定單元410指定的字母串,確定話語內(nèi)容的類型(話語類型)。在該實施例中,作為指定話語內(nèi)容類型的信息的話語類型是指例如圖7所示的“話語類型”。圖7是示出“話語類型”、字母表中表示話語類型的兩個字母以及對應(yīng)于話語類型的話語實例的視圖。
其中,在該實施例中,如圖7所示,“話語類型”包括陳述(D)、時間(T)、場所(L)、否定(N)等等。由每一種類型構(gòu)造的語句被構(gòu)造成肯定語句或疑問語句?!瓣愂觥笔侵副硎居脩粢庖娀蛳敕ǖ恼Z句。在該實施例中,例如如圖7所示,陳述可以是例如“我喜歡Sato”的語句?!皥鏊笔侵父郊佑械乩砀拍畹恼Z句?!皶r間”是指附加有時間概念的語句?!胺穸ā笔侵府?dāng)否定陳述時的語句?!霸捳Z類型”的實例如圖7所示。
在該實施例中,為了使輸入類型確定單元440能夠確定“話語類型”,如圖8所示,輸入類型確定單元440使用用于確定是否為陳述的定義表示詞典,以及用于確定是否為否定的否定表示詞典等。從字母串指定單元410向其中輸入了字母串的輸入類型確定單元440,基于所輸入的字母串,將該字母串與預(yù)先存儲在話語類型數(shù)據(jù)庫450中的每一個詞典進行對照。已經(jīng)執(zhí)行了對照的輸入類型確定單元440從字母串中提取涉及每一個詞典的元素。
輸入類型確定單元440基于所提取的元素確定“話語類型”。例如,在字母串中包括了對某一事件進行陳述的元素的情況下,輸入類型確定單元440確定包括該元素的字母串為陳述。輸入類型確定單元440將所確定的“話語類型”發(fā)送到應(yīng)答獲取單元380。
1.1.5.會話數(shù)據(jù)庫下面將參考圖9給出對存儲在會話數(shù)據(jù)庫500中的數(shù)據(jù)的數(shù)據(jù)配置實例的描述。圖9是示出在會話數(shù)據(jù)庫500中存儲的數(shù)據(jù)的配置實例的示意圖。
如圖9所示,會話數(shù)據(jù)庫500預(yù)先存儲多個用于指定話題的話題指定信息項810。此外,也容許將每一個話題指定信息項810與其它話題指定信息項810進行關(guān)聯(lián),例如,如圖9所示,在指定話題指定信息C(810)的情況下,選定并存儲關(guān)聯(lián)于該話題指定信息C(810)的其它話題指定信息A(810)、話題指定信息B(810)和話題指定信息D(810)。
具體地,在該實施例中,話題指定信息810是指期望由用戶輸入的輸入細(xì)節(jié),或與對用戶的應(yīng)答語句關(guān)聯(lián)的“關(guān)鍵詞”。
將一個或多個話題標(biāo)題820與話題指定信息810相關(guān)聯(lián)并存儲。話題標(biāo)題820由詞素構(gòu)成,該詞素包括一個字母、多個字母串或其組合。將對用戶的應(yīng)答語句830與每一個話題標(biāo)題820相關(guān)聯(lián)并存儲。此外,將指示應(yīng)答語句830類型的多個應(yīng)答類型與應(yīng)答語句830關(guān)聯(lián)。
下面將給出對某一話題指定信息項810與其它話題指定信息項810之間關(guān)系的描述。圖10是示出某一話題指定信息項810A與其它話題指定信息項810B、810C1至810C4、810D1至810D3…之間關(guān)系的視圖。在以下描述中,“關(guān)聯(lián)于并存儲于”是指如下事實,即,當(dāng)讀完某一信息項X時,可以讀完與該信息項X關(guān)聯(lián)的信息項Y,例如,將用于調(diào)用信息項Y的信息(例如,表示信息項Y的存儲區(qū)地址的指針、信息項Y的存儲區(qū)的物理存儲地址、邏輯地址等等)存儲在信息項X中的情形稱為“信息項Y被“關(guān)聯(lián)于并存儲于”信息項X中”。
在圖10所示的實例中,通過上位概念、下位概念、同義詞和反義詞(在該圖的實例中省略),可將其它話題指定信息項關(guān)聯(lián)于并存儲于該話題指定信息項。在該圖所示的實例中,就話題指定信息810A(=“電影”)而言,作為上位概念話題指定信息810而關(guān)聯(lián)于并存儲于話題指定信息810A中的話題指定信息810B(=“娛樂”)被存儲在例如話題指定信息810A(“電影”)的上層。
此外,就話題指定信息810A(=“電影”)而言,可將話題指定信息810的下位概念項(=“導(dǎo)演”)、話題指定信息項810C2(=“主角”)、話題指定信息項810C3(=“發(fā)行人”)、話題指定信息項810C4(=“上映時間”),以及話題指定信息項810D1(=“七武士”)(The SevenSamurai)、話題指定信息項810D2(=“亂”)(Ran)和話題指定信息項810D3(=“保鏢”)(Yojinbo the Bodyguard)關(guān)聯(lián)于并存儲于話題指定信息810A中。
此外,同義詞900關(guān)聯(lián)于話題指定信息810A。該實例示出如下情形,即,將“作品”、“內(nèi)容”和“電影院”存儲作為指定信息項810A的關(guān)鍵詞“電影”的同義詞。通過選定這種同義詞,即使話語中未包括關(guān)鍵詞“電影”,在話語等中包括“作品”、“內(nèi)容”或“電影院”的情況下,也可以處理為如同話語等中包括了話題指定信息810A一樣。
參照會話數(shù)據(jù)庫500的存儲內(nèi)容,當(dāng)指定了話題指定信息項810時,根據(jù)該實施例的會話控制裝置1能夠以高速搜索和提取關(guān)聯(lián)于并存儲于話題指定信息810的其它話題指定信息項810,以及話題指定信息810的話題標(biāo)題820和應(yīng)答語句830等。
下面將參考圖11給出對話題標(biāo)題820(也稱為“第二詞素信息”)的數(shù)據(jù)配置實例的描述。圖11是示出話題標(biāo)題820的數(shù)據(jù)配置實例的視圖。
話題指定信息項810D1、810D2、810D3、…分別具有多個不同話題標(biāo)題8201、8202、…、話題標(biāo)題8203、8204、…以及話題標(biāo)題8205、8206。在該實施例中,如圖11所示,每一個話題標(biāo)題820是由第一指定信息1001、第二指定信息1002和第三指定信息1003構(gòu)成的信息項。其中,在該實施例中,第一指定信息1001是指構(gòu)成話題的主詞素。例如,構(gòu)成語句的主語可被視作第一指定信息1001的實例。此外,在該實施例中,第二指定信息1002是指與第一指定信息1001具有緊密關(guān)系的詞素。例如,可以將賓語視作第二指定信息1002。此外,在該實施例中,第三指定信息1003是指指示與某一主語關(guān)聯(lián)的動作的詞素,或限定名詞等的詞素。例如,可以將動詞、副詞或形容詞視作第三指定信息1003。不必將第一指定信息1001、第二指定信息1002和第三指定信息1003的含義限制于以上所述的內(nèi)容,因為即使對第一指定信息1001、第二指定信息1002和第三指定信息1003賦予其它含義(其它語音部分),只要能確定語句的內(nèi)容,就可實現(xiàn)該實施例。
例如,在主語為“七武士”且形容詞為“有趣的”情況下,如圖11所示,話題標(biāo)題(第二詞素信息)8202由作為第一指定信息1001的詞素“七武士”,以及作為第三指定信息1003的詞素“有趣的”構(gòu)成。由于在話題標(biāo)題8202中未包括關(guān)于第二指定信息1002的詞素,將符號“*”存儲為第二指定信息1002以表示沒有相關(guān)詞素。
話題標(biāo)題8202(七武士;*;有趣的)的意思是“七武士是有趣的”。下面,構(gòu)成話題標(biāo)題820的括號內(nèi)容是按照從左側(cè)開始的第一指定信息1001、第二指定信息1002以及第三指定信息1003的順序。此外,在話題標(biāo)題820的第一至第三指定中不包括詞素的情況下,將該部分用“*”表示。
構(gòu)成話題標(biāo)題820的指定信息不限于如第一至第三指定信息這種類型的三個指定信息,也容許例如具有其它指定信息(第四指定信息或更高序數(shù)指定信息)。
下面將參考圖12給出對應(yīng)答語句820的描述。在該實施例中,如圖12所示,為了提供對應(yīng)于用戶所說出話語的類型的應(yīng)答,應(yīng)答語句830被分類成多種類型(應(yīng)答類型),例如陳述(D)、時間(T)、場所(L)和否定(N),并按類型準(zhǔn)備。此外,肯定語句為(A)且疑問語句為(Q)。
將參考圖13給出對話題指定信息810的數(shù)據(jù)配置實例的描述。圖13示出與某一話題指定信息項810“Sato”關(guān)聯(lián)的話題標(biāo)題820和應(yīng)答語句830的具體實例。
將多個話題標(biāo)題(820)1-1、1-2、…與話題指定信息項810“Sato”相關(guān)聯(lián)。將應(yīng)答語句(830)1-1、1-2、…關(guān)聯(lián)于并存儲于每一個話題標(biāo)題(820)1-1、1-2、…中。為每一個應(yīng)答類型準(zhǔn)備應(yīng)答語句830。
在話題標(biāo)題(820)1-1為(Sato;*;喜歡){其是包括在“我喜歡Sato”中的提取詞素}的情況下,對應(yīng)于話題標(biāo)題(802)1-1的應(yīng)答語句(830)1-1可以是(DA;陳述肯定語句“我也喜歡”)、(TA;時間肯定語句“我喜歡站在擊球區(qū)時的Sato”)等等。以下將描述的應(yīng)答獲取單元380參照輸入類型確定單元440的輸出,獲得與話題標(biāo)題820關(guān)聯(lián)的一個應(yīng)答語句830。
下一方案規(guī)定信息840是規(guī)定響應(yīng)于用戶話語而優(yōu)先發(fā)送的應(yīng)答語句(稱為“下一應(yīng)答語句”)的信息,對于每一個應(yīng)答語句,以對應(yīng)于相關(guān)應(yīng)答語句的方式選定下一方案規(guī)定信息840。下一方案規(guī)定信息840可以是任何類型的信息,只要其是能夠指定下一應(yīng)答語句的信息即可,例如,可以是應(yīng)答語句ID,該應(yīng)答語句ID能夠從會話數(shù)據(jù)庫500中存儲的所有應(yīng)答語句中指定至少一個應(yīng)答語句。
盡管在該實施例中,將下一方案規(guī)定信息840描述為以應(yīng)答語句為單位指定下一應(yīng)答語句的信息(例如,應(yīng)答語句ID),然而,也容許下一方案規(guī)定信息840是以話題標(biāo)題820或話題指定信息810為單位指定下一應(yīng)答語句的信息(在這種情況下,由于將多個應(yīng)答語句規(guī)定為下一應(yīng)答語句,因而將其稱為下一應(yīng)答語句集合。然而,在應(yīng)答語句集合中包括的多個應(yīng)答語句中,只有一個應(yīng)答語句作為應(yīng)答語句而被實際發(fā)送)。例如,即使在將話題標(biāo)題ID或話題指定信息ID用作下一方案規(guī)定信息的情況下,也能夠?qū)崿F(xiàn)該實施例。
1.1.6會話控制器返回到圖5,將給出對會話控制器300的配置實例的描述。
會話控制器300除能夠控制在會話控制裝置1內(nèi)的每一個組件(聲音識別單元200、結(jié)構(gòu)分析器400、會話數(shù)據(jù)庫500、輸出單元600和聲音識別詞典存儲器700)之間的數(shù)據(jù)傳送,還具有響應(yīng)于用戶的話語而確定并發(fā)送應(yīng)答語句的功能。
在該實施例中,如圖5所示,會話控制器300包括管理器310、方案會話處理器320、談話空間會話處理器330和CA會話處理器340。下面將給出對這些組件的描述。
1.1.6.1.管理器管理器310具有存儲談話歷史和根據(jù)需要更新談話歷史的功能。管理器310具有響應(yīng)于來自話題指定信息搜索單元350、縮寫詞擴展單元360、話題搜索單元370和應(yīng)答獲取單元380的請求,將所有或部分所存儲的談話歷史傳送到每一個單元的功能。
1.1.6.2方案會話處理器方案會話處理器320具有執(zhí)行方案、與符合該方案的用戶建立會話的功能?!胺桨浮笔侵父鶕?jù)預(yù)定順序為用戶提供預(yù)定應(yīng)答。下面將給出對方案會話處理器320的描述。
方案會話處理器320具有響應(yīng)于用戶的話語而根據(jù)預(yù)定順序發(fā)送預(yù)定應(yīng)答的功能。
圖14是描述方案的示意圖。如圖14所示,在方案空間1401中預(yù)先準(zhǔn)備多個方案1402,例如方案1、方案2、方案3和方案4。方案空間1401是指由會話數(shù)據(jù)庫500中存儲的多個方案1402構(gòu)成的組。會話控制裝置1在裝置啟動時或會話開始時選擇用于在啟動時使用的、預(yù)先選定的方案,或根據(jù)用戶話語的內(nèi)容從方案空間1401中選擇合適的方案1402,并且利用所選方案1402將應(yīng)答語句發(fā)送到用戶話語。
圖15是示出方案1402的配置實例的視圖。方案1402包括應(yīng)答語句1501和與之關(guān)聯(lián)的下一方案規(guī)定信息1502。下一方案規(guī)定信息1502是指定方案1402的信息,其包括在應(yīng)答語句1501之后將發(fā)送給用戶的、包括在相關(guān)方案1402中的應(yīng)答語句(稱為下一候選應(yīng)答語句)。在該實例中,方案1包括應(yīng)答語句A(1501),當(dāng)執(zhí)行方案1時由會話控制裝置1發(fā)送該應(yīng)答語句A(1501);以及下一方案規(guī)定信息1502,其關(guān)聯(lián)于應(yīng)答語句A(1501)。下一方案規(guī)定信息1502是指定包括應(yīng)答語句B(1501)的方案1402的信息(ID002),所述應(yīng)答語句B(1501)是對應(yīng)答語句A(1501)的下一候選應(yīng)答語句。通過相同的方式,將下一方案規(guī)定信息1502選定用于應(yīng)答語句B(1501),當(dāng)發(fā)送應(yīng)答語句B(1501)時,規(guī)定包括下一候選應(yīng)答語句的方案2(1402)。通過這種方式,利用下一方案規(guī)定信息1502連續(xù)地連接多個方案1402,從而實現(xiàn)將一系列連續(xù)內(nèi)容發(fā)送到用戶的方案會話。即,通過將期望轉(zhuǎn)達給用戶的內(nèi)容(描述、指導(dǎo)、調(diào)查等)劃分成多個應(yīng)答語句,以及預(yù)先確定每一個應(yīng)答語句的順序且按照方案對其進行準(zhǔn)備,可以響應(yīng)于用戶的話語,依次為用戶提供應(yīng)答語句。只要存在與緊接在前的應(yīng)答語句的發(fā)送相對應(yīng)的用戶話語,就不必立即發(fā)送在由下一方案規(guī)定信息1502規(guī)定的方案1402中所包括的應(yīng)答語句1501,這是因為也可以在用戶和會話控制裝置1之間關(guān)于該方案之外的話題的會話之后,發(fā)送在由下一方案規(guī)定信息1502規(guī)定的方案1402中包括的應(yīng)答語句1501。
圖15所示的應(yīng)答語句1501對應(yīng)于圖13中所示的應(yīng)答語句830中的一個應(yīng)答語句字母串,而圖15所示的下一方案規(guī)定信息1502對應(yīng)于圖13所示的下一方案規(guī)定信息840。
方案1402的連接不限于圖15所示的一維矩陣類型。圖16是示出具有不同于圖15的連接類型的方案1402實例的視圖。在圖16所示的實例中,方案1(1402)具有形成下一候選應(yīng)答語句的兩個應(yīng)答語句1501,即,能夠規(guī)定方案1402的兩個下一方案指定信息項1502。為了選定兩個方案1402,即具有應(yīng)答語句B(1501)的方案2(1402)和具有應(yīng)答語句C(1501)的方案3(1402),作為包括下一候選應(yīng)答語句的方案1402,在發(fā)送某一應(yīng)答語句A(1501)的情況下,提供兩個下一方案規(guī)定信息項1502。應(yīng)答語句B和應(yīng)答語句C是可選擇的且可交替的,在發(fā)送了一個應(yīng)答語句的情況下,無需發(fā)送另一個即結(jié)束方案1(1402)。通過這種方式,方案1402的連接不限于一維排列形式,也容許其具有分支狀連接或網(wǎng)狀連接。
不限制每一個方案所具有的下一候選應(yīng)答語句的數(shù)量。此外,對于作為談話終點的方案1402,也可能不存在下一方案規(guī)定信息1502。
圖17示出某一個方案1402序列的具體實例。方案14021至14024序列對應(yīng)于用于告知用戶關(guān)于危機處理的信息的四個應(yīng)答語句15011至15014。四個應(yīng)答語句15011至15014一起構(gòu)成一個完整的談話(描述)。每一個方案14021至14024分別具有ID數(shù)據(jù)17021至17024,稱為“1000-01”、“1000-02”、“1000-03”以及“1000-04”。在ID數(shù)據(jù)中連字符后的標(biāo)號是指示發(fā)送順序的信息。此外,每一個方案14021至14024分別具有下一方案規(guī)定信息15021至15024。下一方案規(guī)定信息15024的內(nèi)容是稱為“1000-0F”的數(shù)據(jù),但連字符后的標(biāo)號“0F”是指示不存在應(yīng)接著發(fā)送的方案以及相關(guān)應(yīng)答語句是談話(描述)序列終點的信息。
在該實例中,在用戶話語是“告訴我在發(fā)生大地震情況時的危機處理”的情況下,方案會話處理器320開始執(zhí)行所述方案序列。即,當(dāng)方案會話處理器320接收到用戶話語“告訴我在發(fā)生大地震情況時的危機處理”時,方案會話處理器320搜索方案空間1401,并檢查是否存在具有對應(yīng)于用戶話語“告訴我在發(fā)生大地震情況時的危機處理”的應(yīng)答語句15011的方案1402。在該實例中,認(rèn)為與“告訴我在發(fā)生大地震情況時的危機處理”對應(yīng)的用戶話語字母串17011對應(yīng)于方案14021。
當(dāng)方案會話處理器320發(fā)現(xiàn)方案14021時,其獲得包括在方案14021中的應(yīng)答語句15011,將應(yīng)答語句15011作為對應(yīng)于用戶話語的應(yīng)答而發(fā)送,并通過下一方案規(guī)定信息15021指定下一候選應(yīng)答語句。
接著,在發(fā)送了應(yīng)答語句15011之后,當(dāng)經(jīng)由輸入單元100或聲音識別單元200接收到用戶話語時,方案會話處理器320執(zhí)行方案14022。也就是,方案會話處理器320確定是否執(zhí)行由下一方案規(guī)定信息15021規(guī)定的方案14022,即,發(fā)送第二應(yīng)答語句15012。具體地,方案會話處理器320將關(guān)聯(lián)于應(yīng)答語句15012或話題標(biāo)題820(圖17中省略)的用戶話語字母串(也稱為實例)17012與所接收的用戶話語進行比較,并確定它們是否匹配。在它們匹配的情況下,發(fā)送第二應(yīng)答語句15012。此外,當(dāng)在包括第二應(yīng)答語句15012的方案14022中描述了下一方案規(guī)定信息15022時,指定下一候選應(yīng)答語句。
通過相同的方式,響應(yīng)于此后連續(xù)的用戶話語,方案會話處理器320能夠依次地移動到方案14023和方案14024,并發(fā)送第三應(yīng)答語句15013和第四應(yīng)答語句15014。第四應(yīng)答語句15014是最后一個應(yīng)答語句,當(dāng)結(jié)束了第四應(yīng)答語句15014的發(fā)送時,方案會話處理器320結(jié)束該方案的執(zhí)行。
通過這種方式,通過依次執(zhí)行方案14021至14024,可以按照預(yù)定順序為用戶提供預(yù)先準(zhǔn)備的會話內(nèi)容。
1.1.6.3.談話空間會話控制處理器返回到圖5,將繼續(xù)描述會話控制器300的配置實例。
談話空間會話控制處理器330包括話題指定信息搜索單元350、縮寫詞擴展單元360、話題搜索單元370和應(yīng)答獲取單元380。管理器310控制整個會話控制器300。
作為指定用戶和會話控制裝置1之間的會話話題或主題的信息,“談話歷史”是包括以下所述的“目標(biāo)話題指定信息”、“目標(biāo)話題標(biāo)題”、“用戶輸入語句話題指定信息”以及“應(yīng)答語句話題指定信息”中的至少一個的信息。此外,包括在談話歷史中的“目標(biāo)話題指定信息”、“目標(biāo)話題標(biāo)題”和“應(yīng)答語句話題指定信息”不限于由緊接在前的會話所選定的那些信息,其也可以是在過去的規(guī)定周期期間已經(jīng)變?yōu)椤澳繕?biāo)話題指定信息”、“目標(biāo)話題標(biāo)題”和“應(yīng)答語句話題指定信息”的那些信息或者其累積記錄。
在下文中,將給出對構(gòu)成談話空間會話處理器330的每一個單元的描述。
1.1.6.3.1.話題指定信息搜索單元話題指定信息搜索單元350將由詞素提取器420提取的第一詞素信息與每一個話題指定信息項進行對照,并從與構(gòu)成第一詞素信息的詞素相匹配的話題指定信息項中搜索話題指定信息項。具體地,在從詞素提取器420輸入的第一詞素信息由兩個詞素“Sato”和“喜歡”構(gòu)成的情況下,將所輸入的第一詞素信息與話題指定信息集合進行對照。
在構(gòu)成第一詞素信息的詞素(例如“Sato”)包括在目標(biāo)話題標(biāo)題820focus(寫為820focus是為了將其與以上所找到的話題標(biāo)題和其它話題標(biāo)題區(qū)分開)的情況下,執(zhí)行了對照的話題指定信息搜索單元350將目標(biāo)話題標(biāo)題820focus發(fā)送到應(yīng)答獲取單元380。同時,在構(gòu)成第一詞素信息的詞素不包括在目標(biāo)話題標(biāo)題820focus中的情況下,話題指定信息搜索單元350基于第一詞素信息確定用戶輸入語句話題指定信息,并將輸入的第一詞素信息和用戶輸入語句話題指定信息發(fā)送到縮寫詞擴展單元360?!坝脩糨斎胝Z句話題指定信息”是指與第一詞素信息所包括的、相應(yīng)于用戶正在談?wù)搩?nèi)容的多個詞素中的一個詞素相對應(yīng)的話題指定信息,或者指與第一詞素信息所包括的、可能相應(yīng)于用戶正在談?wù)搩?nèi)容的多個詞素中的一個詞素相對應(yīng)的話題指定信息。
1.1.6.3.2縮寫詞擴展單元縮寫詞擴展單元360,使用以上所找到的話題指定信息項810(在下文中稱為“目標(biāo)話題指定信息”)以及包括在在前應(yīng)答語句中的話題指定信息項810(在下文中稱為“應(yīng)答語句話題指定信息”),通過擴展第一詞素信息,生成多種類型的擴展的第一詞素信息。例如,在用戶話語為“喜歡”的情況下,縮寫詞擴展單元360將目標(biāo)話題指定信息“Sato”包括在第一詞素信息“喜歡”中,并生成擴展的第一詞素信息“Sato,喜歡”。
即,當(dāng)將第一詞素信息表示為“W”,并將由目標(biāo)話題指定信息和應(yīng)答語句話題指定信息構(gòu)成的組表示為“D”時,縮寫詞擴展單元360將組“D”的元素包括在第一詞素信息“W”中,并生成擴展的第一詞素信息。
通過這種方式,在利用作為縮寫詞的第一詞素信息構(gòu)成的語句不是清楚的日語的情況下,或者在類似的情況下,縮寫詞擴展單元360能夠利用組“D”將組“D”的元素(例如“Sato”)包括在第一詞素信息“W”中。因此,縮寫詞擴展單元360能夠使第一詞素信息“喜歡”變成擴展的第一詞素信息“Sato,喜歡”。擴展的第一詞素信息“Sato,喜歡”對應(yīng)于用戶話語“我喜歡Sato”。
也就是,即使在用戶話語的內(nèi)容是縮寫詞的情況下,縮寫詞擴展單元360也能夠利用組“D”而擴展縮寫詞。因此,即使在由第一詞素信息構(gòu)成的語句為縮寫詞的情況下,縮寫詞擴展單元360也能使該語句成為正確的日語。
此外,縮寫詞擴展單元360基于組“D”搜索與擴展的第一詞素信息相匹配的話題標(biāo)題820。在找到了與擴展的第一詞素信息相匹配的話題標(biāo)題820的情況下,縮寫詞擴展單元360將話題標(biāo)題820發(fā)送到應(yīng)答獲取單元380。應(yīng)答獲取單元380能夠基于在縮寫詞擴展單元360中找到的適當(dāng)?shù)脑掝}標(biāo)題820,發(fā)送最適合于用戶話語內(nèi)容的應(yīng)答語句830。
縮寫詞擴展單元360不限于將組“D”的元素包括在第一詞素信息中。也容許縮寫詞擴展單元360基于目標(biāo)話題標(biāo)題,將構(gòu)成話題標(biāo)題的第一指定信息、第二指定信息或第三指定信息中的任何一個所包括的詞素包括在所提取的第一詞素信息中。
1.1.6.3.3.話題搜索單元在縮寫詞擴展單元360中未確定話題標(biāo)題820的情況下,話題搜索單元370將第一詞素信息和對應(yīng)于用戶輸入語句話題指定信息的每一個話題標(biāo)題820進行對照,并從每一個話題標(biāo)題820中搜索最接近地匹配第一詞素信息的話題標(biāo)題820。
具體地,從縮寫詞擴展單元360向其中輸入了搜索命令信號的話題搜索單元370,基于所輸入的搜索命令信號中包括的用戶輸入語句話題指定信息和第一詞素信息,從關(guān)聯(lián)于用戶輸入語句話題指定信息的每一個話題標(biāo)題中,搜索最接近地匹配第一詞素信息的話題標(biāo)題820。話題搜索單元370將所找到的話題標(biāo)題820作為搜索結(jié)果信號而發(fā)送到應(yīng)答獲取單元380。
以上所述的圖13示出與某一話題指定信息項810(=“Sato”)關(guān)聯(lián)的話題標(biāo)題820和應(yīng)答語句830的具體實例。如圖13所示,例如,當(dāng)話題指定信息810(=“Sato”)包括在輸入的第一詞素信息“Sato,喜歡”中時,話題搜索單元370指定話題指定信息810(=“Sato”),然后將與話題指定信息810(=“Sato”)關(guān)聯(lián)的每一個話題標(biāo)題(820)1-1、1-2、…與輸入的第一詞素信息“Sato,喜歡”進行對照。
話題搜索單元370基于對照結(jié)果,在每一個話題標(biāo)題(820)1-1至1-2中指定與輸入的第一詞素信息“Sato,喜歡”相匹配的話題標(biāo)題(820)1-1(Sato;*;喜歡)。話題搜索單元370將所找到的話題標(biāo)題(820)1-1(Sato;*;喜歡)作為搜索結(jié)果信號而發(fā)送到應(yīng)答獲取單元380。
1.1.6.3.4.應(yīng)答獲取單元應(yīng)答獲取單元380基于在縮寫詞擴展單元360或話題搜索單元370中找到的話題標(biāo)題820,獲得與話題標(biāo)題820關(guān)聯(lián)的應(yīng)答語句830。此外,應(yīng)答獲取單元380基于在話題搜索單元370中找到的話題標(biāo)題820,將與話題標(biāo)題820關(guān)聯(lián)的每一個應(yīng)答類型與由輸入類型確定單元440確定的話語類型進行對照。已經(jīng)執(zhí)行了對照的應(yīng)答獲取單元380在每一個應(yīng)答類型中搜索與所確定的應(yīng)答類型相匹配的應(yīng)答類型。
在圖13所示的實例中,在話題搜索單元370中找到的話題標(biāo)題為話題標(biāo)題1-1(Sato;*;喜歡)的情況下,應(yīng)答獲取單元350在與話題標(biāo)題1-1關(guān)聯(lián)的應(yīng)答語句1-1(DA、TA等)中,指定與由輸入類型確定單元440所確定的“話語類型”(例如DA)相匹配的應(yīng)答類型(DA)。已經(jīng)指定了應(yīng)答類型(DA)的應(yīng)答獲取單元380基于所指定的應(yīng)答類型(DA),獲得與應(yīng)答類型(DA)關(guān)聯(lián)的應(yīng)答語句1-1(“我也喜歡Sato”)。
其中,在“DA”、“TA”等中,“A”表示肯定形式。因此,在“A”包括于話語類型和應(yīng)答類型中的情況下,其指示關(guān)于某一事件的肯定。此外,在話語類型和應(yīng)答類型中也可能包括例如“DQ”或“TQ”的類型。在“DQ”和“TQ”中,“Q”表示關(guān)于某一事件的問題。
當(dāng)應(yīng)答類型包括疑問形式(Q)時,與該應(yīng)答類型關(guān)聯(lián)的應(yīng)答語句由肯定形式(A)構(gòu)成?;卮饐栴}等的語句可被視為由肯定形式(A)編譯的應(yīng)答語句。例如,在所說出的語句是“你曾經(jīng)操作過自動售貨機嗎?”的情況下,用于該所說出話語的話語類型是疑問形式(Q)。與疑問形式(Q)關(guān)聯(lián)的應(yīng)答語句可以是例如“我操作過自動售貨機”(肯定形式(A))。
同時,當(dāng)應(yīng)答類型包括肯定形式(A)時,與應(yīng)答類型關(guān)聯(lián)的應(yīng)答語句由疑問形式(Q)構(gòu)成。可將詢問關(guān)于話語內(nèi)容的問題的疑問語句或詢問特定事件的疑問語句等視為由疑問形式(Q)編譯的應(yīng)答語句。例如,在所說出的語句是“我的愛好是玩自動售貨機”的情況下,用于該所說出語句的話語類型是肯定形式(A)。與肯定形式(A)關(guān)聯(lián)的應(yīng)答語句可以是例如“你的愛好不是玩彈球盤嗎?”(詢問特定事件的疑問形式(Q))。
應(yīng)答獲取單元380將所獲得的應(yīng)答語句830作為應(yīng)答語句信號而發(fā)送到管理器310。從應(yīng)答獲取單元380向其中輸入了應(yīng)答語句信號的管理器310將所輸入的應(yīng)答語句信號發(fā)送到輸出單元600。
1.1.6.4.CA會話處理器CA會話處理器340具有如下功能在無法在方案會話處理器320或談話空間會話處理器330中確定對用戶話語的應(yīng)答語句的情況下,響應(yīng)于用戶話語的內(nèi)容,發(fā)送能夠繼續(xù)與用戶進行會話的應(yīng)答語句。
返回到圖1,將重新開始描述會話控制裝置1的配置實例。
1.1.7.輸出單元輸出單元600發(fā)送由應(yīng)答獲取單元380獲得的應(yīng)答語句。輸出單元600可以是例如揚聲器、顯示器等。具體地,從管理器310向其中輸入了應(yīng)答語句的輸出單元600基于該輸入的應(yīng)答語句,利用聲音輸出應(yīng)答語句,例如“我也喜歡Sato”。
至此完成了對會話控制裝置1的配置實例的描述。
2.會話控制方法具有上述配置的會話控制裝置1通過如下所述操作來執(zhí)行會話控制方法。
下面將給出對根據(jù)實施例的會話控制裝置1,特別是會話控制器300的操作的描述。
圖18是示出會話控制器300的主處理實例的流程圖。主處理是每次會話控制器300接收到用戶話語時執(zhí)行的處理,通過所執(zhí)行的主處理,發(fā)送對用戶話語的應(yīng)答語句,并建立用戶和會話控制裝置1之間的會話(對話)。
當(dāng)進入了主處理時,會話控制器300,或更具體地說是方案會話處理器320,首先執(zhí)行方案會話控制處理(S1801)。方案會話控制處理是執(zhí)行方案的處理。
圖19和圖20是示出方案會話控制處理的實例的流程圖。在下文中,將參考圖19和圖20給出對方案會話控制處理的實例的描述。
當(dāng)開始方案會話控制處理時,方案會話處理器320首先執(zhí)行基本控制條件信息校驗(S1901)。將方案1402執(zhí)行完成的存在或不存在存儲在預(yù)定存儲區(qū)中,作為基本控制條件信息。
基本控制條件信息具有描述方案的基本控制條件的作用。
圖21是示出針對被稱為場景的方案類型而可能出現(xiàn)的四個基本控制條件的視圖。在下文中,將給出對每一個條件的描述。
1.組合該基本控制條件是用戶話語匹配于正在執(zhí)行的方案1402,或更具體地說,匹配于與方案1402對應(yīng)的話題標(biāo)題820和示例性語句1701的情況。在這種情況下,方案會話處理器320結(jié)束相關(guān)方案1402,并移動到與由下一方案規(guī)定信息1502規(guī)定的應(yīng)答語句1501相對應(yīng)的方案1402。
2.取消該基本控制條件是在確定用戶話語的內(nèi)容正請求結(jié)束方案1402的情況下,或在確定用戶的興趣已經(jīng)轉(zhuǎn)移到正在執(zhí)行的方案之外的事件的情況下所設(shè)定的基本控制條件。在基本控制條件信息指示取消的情況下,方案會話處理器320查找在作為取消對象的方案1402之外,是否存在對應(yīng)于用戶話語的方案1402,并且在存在的情況下,開始執(zhí)行方案1402,而在不存在的情況下,結(jié)束方案的執(zhí)行。
3.維持該基本控制條件是在用戶話語不適用于與正在執(zhí)行的方案1402對應(yīng)的話題標(biāo)題820(參考圖13)或示例性語句1701(參考圖17),并且確定用戶話語不適用于基本控制條件“取消”的情況下,在基本控制條件信息中描述的基本控制條件。
在該基本控制條件的情況下,方案會話處理器320在接收到用戶話語時,首先考慮是否重啟已被推遲或取消的方案1402,并且在用戶話語不適合于重啟方案1402的情況下,例如,在用戶話語不對應(yīng)于與該方案1402對應(yīng)的話題標(biāo)題802或示例性語句1702的情況下,開始執(zhí)行另一方案1402或執(zhí)行稍后所述的談話空間會話控制處理(S1802)等。在用戶話語適合于重啟方案1402的情況下,基于所存儲的下一方案規(guī)定信息1502,發(fā)送應(yīng)答語句1501。
在基本控制條件是“維持”的情況下,盡管方案會話處理器320搜索另一方案1402以便能夠發(fā)送對應(yīng)于相關(guān)方案1402的、應(yīng)答語句1501之外的應(yīng)答,或執(zhí)行稍后所述的談話空間會話控制處理等,在用戶話語再次變?yōu)榕c方案1402關(guān)聯(lián)的話語時,重啟方案1402的執(zhí)行。
4.繼續(xù)該條件是在如下情況下設(shè)置的基本控制條件,即,用戶話語不對應(yīng)于正在執(zhí)行的方案1402中包括的應(yīng)答語句1501,即確定用戶話語的內(nèi)容不適用于基本控制條件“取消”并且從用戶話語所推斷的用戶意圖不清楚。
在基本控制條件為“繼續(xù)”的情況下,當(dāng)接收到用戶話語時,方案會話控制器320首先考慮是否重啟已被推遲或取消的方案1402,并且在用戶話語不適用于重啟方案1402的情況下,執(zhí)行稍后所述的CA會話控制處理,以便能夠發(fā)送引起用戶其它話語的應(yīng)答語句。
返回到圖19,將繼續(xù)描述方案會話控制處理。
已經(jīng)查詢了基本控制條件信息的方案會話處理器320確定由基本控制條件信息指示的基本控制條件是否為“組合”(S1902)。在確定基本控制條件為“組合”的情況下(S1902,是),方案會話處理器320確定應(yīng)答語句1501是否是由基本控制條件信息指示的、正在執(zhí)行的方案1402中的最后一個應(yīng)答語句(S1903)。
在確定已經(jīng)發(fā)送了最后一個應(yīng)答語句1501的情況下(S1903,是),當(dāng)已經(jīng)發(fā)送了方案1402中應(yīng)答用戶的所有內(nèi)容時,方案會話處理器320為了確定是否開始新的、單獨的方案1402,執(zhí)行搜索以查找在方案空間內(nèi)是否存在對應(yīng)于用戶話語的方案1402(S1904)。在作為搜索結(jié)果而未能找到對應(yīng)于用戶話語的方案1402的情況下(S1905,否),由于不存在將提供給用戶的方案1402,方案會話處理器320由此結(jié)束方案會話控制處理。
同時,在作為搜索結(jié)果而找到對應(yīng)于用戶話語的方案1402的情況下(S1905,是),方案會話處理器320移動到相關(guān)方案1402(S1906)。這是為了由于存在將提供給用戶的方案1402而開始相關(guān)方案1402的執(zhí)行(發(fā)送包括在方案1402中的應(yīng)答語句1501)。
接著,方案會話處理器320發(fā)送相關(guān)方案1402的應(yīng)答語句1501(S1908)。發(fā)送的應(yīng)答語句1501作為對用戶話語的應(yīng)答,方案會話處理器320將期望發(fā)送的信息提供給用戶。
在應(yīng)答語句發(fā)送處理(S1908)之后,方案會話處理器320結(jié)束方案會話控制處理。
同時,在確定在前發(fā)送的應(yīng)答語句1501是否是最后一個應(yīng)答語句1501的過程中(S1903),在在前發(fā)送的應(yīng)答語句1501不是最后一個應(yīng)答語句1501的情況下(S1903,否),方案會話處理器320移動到對應(yīng)于在前發(fā)送的應(yīng)答語句1501之后的應(yīng)答語句1501(即,由下一方案指定信息1502指定的應(yīng)答語句1501)的方案1402(S1907)。
然后,方案會話處理器320發(fā)送包括在相關(guān)方案1402中的應(yīng)答語句1501,執(zhí)行對用戶話語的應(yīng)答(S1908)。所發(fā)送的應(yīng)答語句1501是對用戶話語的應(yīng)答,方案會話處理器320將期望發(fā)送的信息提供給用戶。在應(yīng)答語句發(fā)送處理(S1908)之后,方案會話處理器320結(jié)束方案會話控制處理。
在S1902的確定處理中確定基本控制條件信息不是“結(jié)合”的情況下(S1902,否),方案會話處理器320確定由基本控制條件信息指示的基本控制條件是否為“取消”(S1909)。在確定基本控制條件為“取消”的情況下(S1909,是),由于不存在將繼續(xù)的方案1402,方案會話處理器320為了確定是否存在將開始的新的、單獨的方案1402,執(zhí)行搜索以查找在方案空間1401中是否存在對應(yīng)于用戶話語的方案1402(S1904)。然后,以與上述的S1903中的處理相同的方式,方案會話處理器320執(zhí)行從S1905至S1908的處理。
同時,在確定由基本控制條件信息指示的基本控制條件是否為“取消”的過程中(S1909),在確定基本控制條件不是“取消”的情況下(S1909,否),方案會話處理器320進一步確定由基本控制條件信息指示的基本控制條件是否是“維持”(S1910)。
在由基本控制條件信息指示的基本控制條件為“維持”的情況下(S1910,是),方案會話處理器320研究用戶是否已經(jīng)再次表示出了對已推遲或取消方案1402的興趣,在表示出興趣的情況下,以重啟臨時推遲或取消的方案1402的方式操作。即,方案會話處理器320檢查處于推遲或取消狀態(tài)的方案1402(圖20;S2001),并且確定用戶話語是否對應(yīng)于處于推遲或取消狀態(tài)的方案1402(S2002)。
在確定用戶話語對應(yīng)于相關(guān)方案1402的情況下(S2002,是),方案會話處理器320移動到對應(yīng)于該用戶話語的方案1402(S2003)。然后,為了發(fā)送包括在方案1402中的應(yīng)答語句1501,執(zhí)行應(yīng)答語句發(fā)送處理(圖19;S1908)。通過以這種方式進行操作,方案會話處理器320能夠響應(yīng)于用戶話語而重啟已推遲或取消的方案1402,并且可以向用戶傳送包括在預(yù)先準(zhǔn)備的方案1402中的所有內(nèi)容。
同時,在上述S2002(參考圖20)中確定處于推遲或取消狀態(tài)的方案1402不對應(yīng)于用戶話語(S2002,否)的情況下,方案會話處理器320為了確定是否存在將要開始的新的、單獨的方案1402,執(zhí)行搜索以查找在方案空間1401內(nèi)是否存在對應(yīng)于用戶話語的方案1402(圖19;S1904)。然后,以與上述的S1903中的處理(是)相同的方式,方案會話處理器320執(zhí)行從S1905至S1909的處理。
在S1910的確定中確定由基本控制條件信息指示的基本控制條件不是“維持”的情況下(S1910,否),意味著由基本控制條件信息指示的基本控制條件是“繼續(xù)”。在這種情況下,方案會話處理器320結(jié)束方案會話控制處理,而不發(fā)送應(yīng)答語句。
至此完成了對方案會話控制處理的描述。
返回到圖18,將繼續(xù)描述主處理。
當(dāng)結(jié)束了方案會話控制處理(S1801)時,會話控制器300開始談話空間會話控制處理(S1802)。然而,在方案會話控制處理中執(zhí)行了應(yīng)答語句發(fā)送的情況下(S1801),會話控制器300執(zhí)行基本控制信息更新處理(S1904)并結(jié)束主處理,而不執(zhí)行談話空間會話控制處理(S1802)或稍后所述的CA會話控制處理(S1803)。
圖22是示出根據(jù)該實施例的談話空間控制處理的實例的流程圖。
首先,輸入單元100執(zhí)行獲得來自用戶的話語內(nèi)容的步驟(步驟S2201)。具體地,輸入單元100獲得構(gòu)成用戶的話語內(nèi)容的聲音。輸入單元100將所獲得的聲音作為聲音信號發(fā)送到聲音識別單元200。也容許輸入單元100獲得由用戶輸入的字母串(例如,以文本格式輸入的字母數(shù)據(jù)),而不是來自用戶的聲音。在這種情況下,輸入單元100是字母輸入設(shè)備,例如鍵盤或觸屏,而不是麥克風(fēng)。
接著,聲音識別單元200基于由輸入單元100獲得的話語內(nèi)容,執(zhí)行識別對應(yīng)于話語內(nèi)容的字母串的步驟(步驟S2202)。具體地,從輸入單元100向其中輸入了聲音信號的聲音識別單元200基于所輸入的聲音信號,指定與聲音信號關(guān)聯(lián)的詞語假設(shè)(候選)。聲音識別單元200獲得對應(yīng)于所指定的詞語假設(shè)(候選)的字母串,并將所獲得的字母串發(fā)送到會話控制器300,或者更具體地說,作為字母串信號而發(fā)送到談話空間會話處理器330。
然后,字母串指定單元410執(zhí)行將由聲音識別單元200指定的字母串序列劃分成單個語句的步驟(步驟S2203)。具體地,當(dāng)在輸入字母串序列中存在具有某一長度的一個時間間隔或更多時間間隔時,從管理器310向其中輸入了字母串信號(或詞素信號)的字母串指定單元410劃分該部分的字母串。字母串指定單元410將每一個劃分的字母串發(fā)送到詞素提取器420和輸入類型確定單元440。在輸入字母串是從鍵盤輸入的字母串的情況下,優(yōu)選地,該字母串指定單元410劃分存在標(biāo)點符號、空格等處的字母串。
然后,詞素提取器420基于由字母串指定單元410指定的字母串,執(zhí)行將構(gòu)成字母串的最小單元的每一個詞素提取為第一詞素信息的步驟(步驟S2204)。具體地,從字母串指定單元410向其中輸入了字母串的詞素提取器420將所輸入的字母串與詞素數(shù)據(jù)庫430中預(yù)先存儲的詞素集合進行對照。詞素集合被準(zhǔn)備為描述屬于話音種類每一部分的每一個詞素的詞素中心詞、讀取、部分話音、結(jié)合等的詞素詞典。
已經(jīng)執(zhí)行了對照的詞素提取器420從輸入字母串中提取與預(yù)先存儲的詞素集合的任何一個匹配的每一個詞素(m1、m2、...)。詞素提取器420將所提取的每一個詞素作為第一詞素信息發(fā)送到話題指定信息搜索單元350。
接著,輸入類型確定單元440基于構(gòu)成由字母串指定單元410指定的一個語句的每一個詞素,執(zhí)行確定“話語類型”的步驟(步驟S2205)。具體地,從字母串指定單元410向其中輸入了字母串的輸入類型確定單元440基于所輸入的字母串,將字母串與存儲于話語類型數(shù)據(jù)庫450中的每一個詞典進行對照,并從字母串中提取與每一個詞典關(guān)聯(lián)的元素。已經(jīng)提取了元素的輸入類型確定單元440基于所提取的元素,確定這些元素屬于哪種“話語類型”。輸入類型確定單元440將所確定的“話語的類型”(話語類型)發(fā)送到應(yīng)答獲取單元380。
然后,話題指定信息搜索單元350執(zhí)行將由詞素提取器420提取的第一詞素信息與目標(biāo)話題標(biāo)題820focus進行比較的步驟(步驟S2206)。在構(gòu)成第一詞素信息的詞素與目標(biāo)話題標(biāo)題820focus匹配的情況下,話題指定信息搜索單元350將話題標(biāo)題820發(fā)送到應(yīng)答獲取單元380。同時,在構(gòu)成第一詞素信息的詞素不與話題標(biāo)題820匹配的情況下,話題指定信息搜索單元350將所輸入的第一詞素信息和用戶輸入語句話題指定信息作為搜索命令信號發(fā)送到縮寫詞擴展單元360。
然后,縮寫詞擴展單元360基于從話題指定信息搜索單元350輸入的第一詞素信息,執(zhí)行將目標(biāo)話題指定信息和應(yīng)答語句話題指定信息包括在輸入的第一詞素信息的步驟(步驟S2207)。具體地,當(dāng)?shù)谝辉~素信息被表示為“W”,且由目標(biāo)話題指定信息和應(yīng)答語句話題指定信息構(gòu)成的組被表示為“D”時,縮寫詞擴展單元360將話題指定信息“D”的元素包括在第一詞素信息“W”中,生成擴展的第一詞素信息,將擴展的第一詞素信息與關(guān)聯(lián)于組“D”的所有話題標(biāo)題820進行對照,并執(zhí)行對是否存在與擴展的第一詞素信息相匹配的話題標(biāo)題820的搜索。在存在與擴展的第一詞素信息相匹配的話題標(biāo)題820的情況下,縮寫詞擴展單元360將話題標(biāo)題820發(fā)送到應(yīng)答獲取單元380。同時,在未找到與擴展的第一詞素信息相匹配的話題標(biāo)題820的情況下,縮寫詞擴展單元360將第一詞素信息和用戶輸入語句話題指定信息發(fā)送到話題搜索單元370。
接著,話題搜索單元370執(zhí)行將第一詞素信息與用戶輸入語句話題指定信息進行對照,并從每一個話題標(biāo)題820中搜索與第一詞素信息匹配的話題標(biāo)題820的步驟(步驟S2208)。具體地,從縮寫詞擴展單元360向其中輸入了的搜索命令信號的話題搜索單元370基于用戶輸入語句話題指定信息和包括在輸入搜索命令信號中的第一詞素信息,從關(guān)聯(lián)于用戶輸入語句話題指定信息的每一個話題標(biāo)題820中,搜索與第一詞素信息相匹配的話題標(biāo)題820。話題搜索單元370將作為搜索結(jié)果而獲得的話題標(biāo)題820作為搜索結(jié)果信號發(fā)送到應(yīng)答獲取單元380。
接著,應(yīng)答獲取單元380基于在話題指定信息搜索單元350、縮寫詞擴展單元360或話題搜索單元370中找到的話題標(biāo)題820,將由結(jié)構(gòu)分析單元400確定的用戶話語類型與關(guān)聯(lián)于話題標(biāo)題820的每一個應(yīng)答類型進行對照,并執(zhí)行對應(yīng)答語句830的選擇(步驟S2209)。
具體地,按照如下所述執(zhí)行對應(yīng)答語句830的選擇。即,從話題搜索單元370向其中輸入了搜索結(jié)果信號且從輸入類型確定單元440向其中輸入了“話語類型”的應(yīng)答獲取單元380,基于與輸入的搜索結(jié)果信號和輸入的“話語類型”相關(guān)聯(lián)的“話題標(biāo)題”,在關(guān)聯(lián)于“話題標(biāo)題”的應(yīng)答語句集合中,指定匹配于“話語類型”(DA等)的應(yīng)答類型。
接著,應(yīng)答獲取單元380經(jīng)由管理器310將在步驟S2209中獲得的應(yīng)答語句830發(fā)送到輸出單元600(步驟S2210)。已經(jīng)從管理器310接收到應(yīng)答語句的輸出單元600發(fā)送所輸入的應(yīng)答語句830。
至此完成了對談話空間會話控制處理的描述。返回到圖18,將重新開始對主處理的描述。
當(dāng)結(jié)束了談話空間會話控制處理時,會話控制器300執(zhí)行CA會話控制處理(S1803)。然而,在方案會話控制處理(S1801)和談話空間會話控制處理(S1802)中執(zhí)行了應(yīng)答語句發(fā)送的情況下,會話控制器300執(zhí)行基本控制信息更新處理(S1804)并結(jié)束主處理,而不執(zhí)行CA會話控制處理(S1803)。
CA會話控制處理(S1803)是一種如下所述的處理,其確定用戶話語是“解釋某事”、“確認(rèn)某事”、“批評和攻擊”或是“其它事”,并根據(jù)用戶話語的內(nèi)容和確定結(jié)果發(fā)送應(yīng)答語句。通過執(zhí)行CA會話控制處理,即使在方案會話控制處理或談話空間會話處理中不能輸出與用戶話語相匹配的應(yīng)答語句的情況下,也具有啟動發(fā)送所謂的“連接”應(yīng)答語句的作用,所述發(fā)送能夠使與用戶的會話流中保持連續(xù)而沒有中斷。
圖23是示出CA會話處理器340的配置實例的功能框圖。CA會話處理器340包括確定單元2301和應(yīng)答單元2302。
確定單元2301從管理器310或談話空間會話處理器330接收用戶所說出的語句,還接收應(yīng)答語句發(fā)送命令。在方案會話處理器20和談話空間會話處理器330不執(zhí)行或不能執(zhí)行應(yīng)答語句發(fā)送的情況下,執(zhí)行應(yīng)答語句發(fā)送命令。此外,確定單元2301從結(jié)構(gòu)分析器400(更具體地說,輸入類型確定單元440)接收輸入類型,即,用戶話語的類型(參考圖12)?;诖?,確定單元2301確定用戶話語意圖。例如,在用戶話語是語句“我喜歡Sato”的情況下,基于包括在該語句中的獨立詞語“Sato”和“喜歡”,以及基于用戶話語的類型是陳述肯定語句(DA)的事實,確定用戶正執(zhí)行對“Sato”和“喜歡”的說明。
應(yīng)答單元2302根據(jù)來自確定單元2301的確定結(jié)果,確定應(yīng)答語句并發(fā)送。在該實例中,應(yīng)答單元2302包括說明性會話響應(yīng)表、肯定會話響應(yīng)表、批評和攻擊會話響應(yīng)表以及反射性會話表。
說明性會話響應(yīng)表是一種如下所述的表,其存儲在確定用戶話語正在解釋某事的情況下,作為對該話語的應(yīng)答而發(fā)送的多種應(yīng)答語句。例如,將不能作為回應(yīng)而提問的、例如“是真的么?”的應(yīng)答語句準(zhǔn)備為應(yīng)答語句實例。
確認(rèn)會話應(yīng)答表是一種如下所述的表,其存儲在確定用戶話語正在確認(rèn)或提問某事的情況下,作為對該話語的應(yīng)答而發(fā)送的多種應(yīng)答語句。例如,將不能作為回應(yīng)而提問的、例如“我恐怕不知道”的應(yīng)答語句準(zhǔn)備為應(yīng)答語句實例。
批評和攻擊會話響應(yīng)表是一種如下所述的表,其存儲在確定用戶話語正在批評或攻擊會話控制裝置的情況下,作為對該話語的應(yīng)答而發(fā)送的多種應(yīng)答語句。例如,將例如“對不起”的應(yīng)答語句準(zhǔn)備為應(yīng)答語句實例。
反射性會話表準(zhǔn)備例如用戶話語“我對***不感興趣”的應(yīng)答語句?!?**”是指其中將存儲包括在相關(guān)的用戶話語中的獨立詞語。
應(yīng)答單元2302以如下方式操作,即參考說明性會話響應(yīng)表、肯定會話響應(yīng)表、批評和攻擊會話響應(yīng)表以及反射性會話表,確定應(yīng)答語句,并將所確定的應(yīng)答語句發(fā)送到管理器310。
下面將給出對CA會話處理(S1803)的具體實例的描述,該處理是由CA會話處理器340執(zhí)行的處理。圖24是示出CA會話處理的具體實例的流程圖。如上所述,在方案會話控制處理(S1801)和談話空間會話控制處理(S1802)中執(zhí)行應(yīng)答語句發(fā)送的情況下,會話控制器300不執(zhí)行CA會話控制處理(S1803)。即,CA會話控制處理(S1803)僅在方案會話控制處理(S1801)和談話空間會話控制處理(S1802)中推遲了應(yīng)答語句發(fā)送的情況下,才執(zhí)行應(yīng)答語句發(fā)送。
在CA會話處理(S1803)中,CA會話處理器340(確定單元2301)首先確定用戶話語是否是解釋某事的語句(S2401)。在確定用戶話語是解釋某事的語句的情況下(S2401,是),CA會話處理器340(應(yīng)答單元2302)通過例如查詢說明性會話響應(yīng)表的方法來確定應(yīng)答語句。
同時,在確定用戶話語不是解釋某事的語句的情況下(S2401,否),CA會話處理器340(確定單元2301)確定用戶話語是否是確認(rèn)或提問某事的語句(S2403)。在確定用戶話語是確認(rèn)或提問某事的語句的情況下(S2403,是),CA會話處理器340(應(yīng)答單元2302)通過例如查詢肯定會話響應(yīng)表的方法來確定應(yīng)答語句(S2404)。
同時,在確定用戶話語不是確認(rèn)或提問某事的語句的情況下(S2403,否),CA會話處理器340(確定單元2301)確定用戶話語是否是批評或攻擊的語句(S2405)。在確定用戶話語是批評或攻擊的語句的情況下(S2405,是),CA會話處理器340(應(yīng)答單元2302)通過例如查詢批評或攻擊會話響應(yīng)表的方法來確定應(yīng)答語句(S2406)。
同時,在確定用戶話語不是批評或攻擊的語句的情況下(S2405,否),CA會話處理器340(確定單元2301)請求應(yīng)答單元2302確定反射性會話應(yīng)答語句。響應(yīng)于該請求,CA會話處理器340(應(yīng)答單元2302)通過例如查詢反射性會話響應(yīng)表的方法來確定應(yīng)答語句(S2407)。
至此結(jié)束了CA會話處理(S1903)。通過CA會話處理,會話控制裝置1能夠響應(yīng)于用戶話語條件而執(zhí)行可維持會話建立的應(yīng)答。
返回到圖18,將繼續(xù)描述會話控制器300的主處理。
當(dāng)結(jié)束了CA會話處理(S1803)時,會話控制器300執(zhí)行基本控制信息更新處理(S1804)。在該處理中,會話控制器300,或更具體地說是管理器310,在方案會話處理器320已經(jīng)執(zhí)行了應(yīng)答語句發(fā)送的情況下,將基本控制信息設(shè)置成“組合”,在方案會話處理器300已經(jīng)停止了應(yīng)答語句發(fā)送的情況下,將基本控制信息設(shè)置成“取消”,在談話空間會話處理器330已經(jīng)執(zhí)行了應(yīng)答語句發(fā)送的情況下,將基本控制信息設(shè)置成“維持”,以及在CA會話處理器340已經(jīng)執(zhí)行了應(yīng)答語句發(fā)送的情況下,將基本控制信息設(shè)置成“繼續(xù)”。
在方案會話控制處理(S1801)中查詢在基本控制信息更新處理中設(shè)置的基本控制信息,并在方案的繼續(xù)或重啟中對其進行使用。
如上所述,通過在每次接收到用戶話語時執(zhí)行主處理,會話控制裝置1能夠響應(yīng)于用戶話語,不僅能執(zhí)行預(yù)先準(zhǔn)備的方案,而且還能適當(dāng)?shù)仨憫?yīng)未包括在該方案中的話題。
本領(lǐng)域的技術(shù)人員將會很容易地想到附加的優(yōu)點和修改。因此,在更寬泛的方案中,本發(fā)明不限于本文示出和描述的具體細(xì)節(jié)和代表性實施例。因此,在不脫離由附加的權(quán)利要求及其等效物定義的一般概念原理的精神或范圍的情況下,可以做出各種修改。
權(quán)利要求
1.一種會話控制裝置,其響應(yīng)于用戶話語而發(fā)送應(yīng)答語句,包括方案存儲單元,其存儲多個方案,每個方案包括所述應(yīng)答語句和規(guī)定下一候選應(yīng)答語句的下一候選規(guī)定信息,所述下一候選應(yīng)答語句是將以承接于所述應(yīng)答語句之后的順序而被發(fā)送的應(yīng)答語句;方案會話單元,其響應(yīng)于第一用戶話語,選擇存儲在所述方案存儲單元中的方案,并發(fā)送所述方案中包括的應(yīng)答語句,在隨后說出的第二用戶話語對應(yīng)于由所述方案中包括的所述下一候選規(guī)定信息所規(guī)定的下一候選應(yīng)答語句的情況下,發(fā)送由所述下一候選規(guī)定信息所規(guī)定的所述下一候選應(yīng)答語句,而在所述第二用戶話語不關(guān)聯(lián)于所述下一候選應(yīng)答語句或者關(guān)系不清楚的情況下,推遲對所述下一候選應(yīng)答語句的發(fā)送;談話空間會話單元,其在所述方案會話單元推遲對所述下一候選應(yīng)答語句的發(fā)送的情況下,搜索關(guān)聯(lián)于所述第二用戶話語的話題,并且在其找到關(guān)聯(lián)于所述第二用戶話語的話題的情況下,發(fā)送關(guān)聯(lián)于所述話題的應(yīng)答語句,而在其未找到關(guān)聯(lián)于所述第二用戶話語的話題的情況下,推遲對關(guān)聯(lián)于所述話題的所述應(yīng)答語句的發(fā)送;以及會話繼續(xù)和維持單元,其在所述談話空間會話單元推遲對所述應(yīng)答語句的發(fā)送的情況下,估計所述第二用戶話語,并根據(jù)估計結(jié)果發(fā)送所述應(yīng)答語句。
2.根據(jù)權(quán)利要求1所述的會話控制裝置,其中所述會話繼續(xù)和維持單元確定所述第二用戶話語是否在解釋某事、確認(rèn)某事、或者在批評或攻擊某事,根據(jù)確定結(jié)果從預(yù)先準(zhǔn)備的應(yīng)答語句集合中選擇應(yīng)答語句并發(fā)送。
全文摘要
即使對于“無法應(yīng)答”的用戶話語,也能根據(jù)用戶話語條件維持會話建立。會話控制裝置包括會話數(shù)據(jù)庫,存儲多個方案,分別包括應(yīng)答語句和規(guī)定下一候選應(yīng)答語句的下一候選規(guī)定信息,下一候選應(yīng)答語句是承接在應(yīng)答語句之后發(fā)送的應(yīng)答語句;方案會話處理器,若第二用戶話語不關(guān)聯(lián)于下一候選應(yīng)答語句或關(guān)系不清楚,推遲下一候選應(yīng)答語句的發(fā)送;談話空間會話控制處理器,若方案會話模塊推遲下一候選應(yīng)答語句的發(fā)送,搜索關(guān)聯(lián)于第二用戶話語的話題,若未找到關(guān)聯(lián)于第二用戶話語的話題,推遲關(guān)聯(lián)于話題的應(yīng)答語句的發(fā)送;以及CA會話處理器,若談話空間會話模塊推遲應(yīng)答語句的發(fā)送,從第二用戶話語中估計第二用戶話語,根據(jù)估計結(jié)果發(fā)送應(yīng)答語句。
文檔編號G10L15/10GK1975857SQ200610136038
公開日2007年6月6日 申請日期2006年10月20日 優(yōu)先權(quán)日2005年10月21日
發(fā)明者黃聲揚, 勝倉裕 申請人:阿魯策株式會社, 株式會社PtoPA