專利名稱:基于事件階層表示法的多模式對話系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明是關(guān)于一種多模式對話系統(tǒng),尤指一種基于事件階層表示法的多模式對話系統(tǒng)。
背景技術(shù):
按,已知的對話管理技術(shù),大多是以表單式的對話模型為主,并根據(jù)業(yè)界標(biāo)準(zhǔn)以使用容易建置及管理的語音可延伸性標(biāo)記語言來(voiceextensible markup language,VXML)撰寫語音對話流程,而形成一表單式對話模型。以語音訂票系統(tǒng)為例,當(dāng)使用者欲訂購車票時,必須在連線至語音訂票系統(tǒng)后,根據(jù)其既定流程的引導(dǎo)來使用電話按鍵或語音輸入后,方可完成訂票程序。
然而,如此一來將令使用者的對話行為受到很大的限制,且系統(tǒng)反應(yīng)呆板,僅能根據(jù)既定流程加以作業(yè),因而缺乏實用性及應(yīng)用彈性;又,已知語音對話系統(tǒng)通常僅支援單一模式的語音輸入,而不能整合例如文字輸入或圖形介面等輸入格式,無法滿足使用者多元化的使用需求;且已知語音對話系統(tǒng)并不支援多主題切換,例如使用者一開始詢問“臺北”到“臺南”的火車票價,之后當(dāng)確認要進行訂票時,系統(tǒng)將重新詢問使用者欲訂購車票的起迄地點,徒增困擾、并延長作業(yè)時間。此外,已知的計晝式對話系統(tǒng)是使用人工智慧程序語言來進行邏輯推論運算,這種方式不易表達對話目標(biāo)中的物件資料結(jié)構(gòu),也不易處理程序性的運算,并非十分理想。由此可知,已知的對話管理系統(tǒng)仍存在有諸多缺點而有予以改進的必要。
發(fā)明內(nèi)容
本發(fā)明的主要目的是在提供一種基于事件階層表示法的多模式對話系統(tǒng),是使用事件階層表示法以透過邏輯關(guān)是和物件來描述對話管理,以便能輕易表達計劃式的對話流程。
本發(fā)明的另一目的是在提供一種基于事件階層表示法的多模式對話系統(tǒng),是使用描述語言以表示物件資料結(jié)構(gòu),以及進行程序性運算,以便利于計劃式的對話管理。
本發(fā)明的再一目的是在提供一種基于事件階層表示法的多模式對話系統(tǒng),是能進行跨主題的資料繼承,并處理多主題切換問題,以便以呈現(xiàn)出智慧性的對話行為。
本發(fā)明的又一目的是在提供一種基于事件階層表示法的多模式對話系統(tǒng),以便能接受語音、文字、及表單按鈕等圖形化介面的輸入模式,以形成友善的多模式使用者介面。
為達成上述的目的,本發(fā)明所提出的基于事件階層表示法的多模式對話系統(tǒng),主要包括一介面模組、一解譯模組、以及一對話管理模組。其中,介面模組是用以與使用者進行溝通互動,其包括有一用以接收一輸入信息,的輸入單元、及一輸出單元;解譯模組是辨識輸入信息,并將其轉(zhuǎn)換為一語意訊框,此語意訊框中具有關(guān)鍵詞(key)、數(shù)值(value)、與信心值(confidence);對話管理模組則包括有一主題描述XML文件、及一處理器,其主題描述XML文件是儲存復(fù)數(shù)個對話主題及其對應(yīng)的互動程序,并以及或圖(and-or graph)來表達各個對話流程間的邏輯關(guān)系,每一互動程序是具有至少一動作指令,此動作指令是選自下列其中之一用以詢問關(guān)鍵資訊、用以確認關(guān)鍵資訊、及用以更新關(guān)鍵資訊,處理器則可擷取語意訊框,并使用一程序語言以根據(jù)語意訊框的關(guān)鍵詞自主題描述XML文件中找出對應(yīng)的對話主題,并將對應(yīng)于此對話主題的互動程序所具有的每一動作指令依序轉(zhuǎn)換為一行動策略以輸出至輸出單元,以便和使用者進行互動。
其中,該對話管理模組是包括有一歷史資料庫,用以儲存該使用者于先前輸入信息所轉(zhuǎn)換咸的先前語意訊框中的關(guān)鍵詞。
其中,該處理器是根據(jù)目前語意訊框的關(guān)鍵詞自該主題描述XML文件中找出對應(yīng)的一對話主題,并自該歷史資料庫中找出該先前語意訊框的關(guān)鍵詞以繼承至目前語意訊框中。
其是使用可延伸性標(biāo)記語言以描述該等對話主題。
其中,該程序語言是為JavaScript語言。
其中,該輸入單元是為一語音裝置,該輸入信息是為一語音資料,且該解譯模組是具有一語音辨識單元,用以辨識該語音資料,再使用自然語言理解技術(shù)以將該語音資料轉(zhuǎn)換為一語意訊框。
其中,該輸入信息是為一文字資料,該解譯模組是使用自然語言理解技術(shù)以將該文字資料轉(zhuǎn)換為一語意訊框。
其中,該輸入單元是為一圖形介面,該圖形介面是包括有至少一選項以供使用者點選,該解譯模組是擷取該使用者所點選的選項形成的輸入信息以轉(zhuǎn)換為一語意訊框。
其中,該輸出單元是輸出一文字資料。
其中,該輸出單元是輸出一語音資料。
其中,該輸出單元是輸出一圖表選單。
為進一步說明本發(fā)明的技術(shù)內(nèi)容,以下結(jié)合實施例及附圖對本發(fā)明作一詳細的描述,其中圖1是本發(fā)明實施例的功能方塊圖。
圖2是本發(fā)明實施例介面模組的示意圖。
圖3是本發(fā)明中XML標(biāo)記語言描述的及或圖。
圖4是本發(fā)明第一實施例訂票主題的互動程序的示意圖。
圖5是本發(fā)明第二實施例更新訂票主題的互動程序的示意圖。
圖6是本發(fā)明第三實施例切換對話主題的示意圖。
具體實施例方式
有關(guān)本發(fā)明的較佳實施例,請先參閱圖1,顯示本實施例的多模式對話系統(tǒng)是由介面模組1、解譯模組2、及對話管理模組3所組成。其中,介面模組1是用以與使用者進行溝通互動,其具有多模式的輸入單元11用以接收由使用者所輸入的輸入信息,例如由聲訊介面111及電腦電話介面112所輸入的語音信息、由文字介面113所輸入的文字信息、點選圖形介面114所提供表單的輸入信息、以及由攝影機115所輸入的影像信息…等;介面模組1并具有多模式輸出單元12用以輸出圖表及選單121、文字122、人臉及語音合成123所形成的動晝及語音…等。因此,當(dāng)使用者使用本實施例的多模式對話系統(tǒng)時,將會與如圖2所示的介面模組1進行互動,其是以火車訂票系統(tǒng)為例,由于系統(tǒng)整合了人臉偵測技術(shù),因此攝影機115可偵測到有人接近而開始對話,當(dāng)然使用者亦可使用自然口語對話方式以透過聲訊介面111來訂火車票,使用觸控螢?zāi)坏膱D形介面114和系統(tǒng)互動,或是使用文字介面113來輸入欲查詢票價的請求;且藉由人臉合成及語音合成輸出單元123的設(shè)計而形成一交通資訊服務(wù)代理人的影像,可讓使用者感覺在與真人對話。
解譯模組12則可將多模式的輸入信息加以辨識解譯后,轉(zhuǎn)換為共同表達方式的語意訊框,此語意訊框中具有“關(guān)鍵詞(key)”、“數(shù)值(value)”、與“信心值(confidence)”,以作為后績對話管理模組的輸入;例如“關(guān)鍵詞”為明天,若今天為91/12/17,則“數(shù)值”便會對應(yīng)的計算為91/12/18“信心值”則根據(jù)不同輸入模式有個別的值,例如語音辨識的信心值若為90則表示辨識準(zhǔn)確度較高,若為50則表示辨識準(zhǔn)確度較低,而文字或圖形介面的輸入通常較為可靠,因此信心值為100。不同的輸入模式,有個別的前處理程序,例如若輸入信息為語音信息,則需透過語音辨識單元21分析出語音信息中的資訊,再透過自然語言理解單元22加以解析,以形成語意訊框若輸入信息為文字信息,將可直接使用自然語言理解單元22分析后轉(zhuǎn)換為語意訊框;若輸入信息是由圖形介面114或攝影機115所提供,則需透過信息解譯單元23來加以分析后轉(zhuǎn)換為語意訊框。由于上述語音辨識單元21、自然語言理解單元22、及信息解譯單元23的功能是可由已知技術(shù)達成,故不在此贅述上述各單元的詳細動作流程。此外,解譯模組12尚包括有一信息派遣單元24、一語言產(chǎn)生單元25、及一語音合成單元26,則是用以產(chǎn)生多媒體輸出信息以傳送至輸出單元12。
對話管理模組3是以對話管理機制來更新對話狀態(tài),進行主題推論,并連結(jié)后端的主題描述XML文件32及歷史資料庫33,以產(chǎn)生使用者所需的互動程序來加以動作。其中,主題描述XML文件32儲存有復(fù)數(shù)個對話主題,例如訂票主題、日期主題、票價主題、及天氣主題等,并使用可延伸性標(biāo)記語言(XML)的邏輯關(guān)系和物件來描述事件階層,且每一對話主題皆定義有一互動程序,其中具有至少一動作指令可用以詢問、確認、或更新關(guān)鍵資訊,例如訂票主題就必須對“搭車日期”、“起迄站”、“車種車次”、及“票種張數(shù)”等關(guān)鍵資訊進行上述動作;事件階層是達到不同的對話目標(biāo)的邏輯結(jié)構(gòu),可用及或圖(and-or graph)的方式表達,請參閱圖3;本發(fā)明中是以XML標(biāo)記語言描述及或圖的結(jié)構(gòu),包含“或(or)標(biāo)記”、“及(and)標(biāo)記”、“行動(action)標(biāo)記”、“條件(cond)標(biāo)記”、“輔助(help)標(biāo)記”與“描述程序(script)標(biāo)記”等;例如訂票主題、日期主題、票價主題、及天氣主題等各個主題之間是或(or)的關(guān)系,也就是只要有一個主題被選擇,即可進行后續(xù)的對話流程;而訂票主題下的“搭車日期”、“起迄站”、“車種車次”、及“票種張數(shù)”則是及(and)的關(guān)系,表示這些關(guān)鍵資訊都必須得知后才能完成訂票的主題;“行動標(biāo)記”描述各個子節(jié)點所對應(yīng)執(zhí)行的行動,例如詢問關(guān)鍵資訊;“條件標(biāo)記“則用以判斷各個子節(jié)點是否已達到目標(biāo),例如訂票的起迄站是否都已得知,若條件未達成,則執(zhí)行“行動標(biāo)記”所定義的程序;本實施例對話管理模組3的處理器31是使用JavaScript語言來表示物件資料結(jié)構(gòu)、以對于語意訊框中的關(guān)鍵詞來進行主題推論運算,例如當(dāng)語意訊框中具有一關(guān)鍵詞“票價”時,處理器31將可自主題描述XML文件32中找出票價主題并執(zhí)行對應(yīng)的互動程序;而歷史資料庫33則可儲存使用者于先前輸入信息所轉(zhuǎn)換咸的先前語意訊框中的關(guān)鍵詞,其具體功能將于后文中詳述。
以下是舉三個實施例來說明多模式對話系統(tǒng)在不同情況下與使用者所產(chǎn)生的互動情形。
第一實施例用以解析并執(zhí)行對話主題使用者是透過電腦電話介面112輸入“我明天要到高雄”的語音信息,因此透過語音辨識單元21及自然語言理解單元22的分析,將把輸入信息轉(zhuǎn)換為包括有關(guān)鍵詞“高雄”的語意訊框,再經(jīng)由對話管理模組3的處理器31來計算推測出此語意訊框是對應(yīng)于訂票主題。請參閱圖4訂票主題321的互動程序,本實施例的訂票主題321定義有五個動作指令以依序轉(zhuǎn)換為行動策略以輸出至輸出單元12來與使用者進行互動,即詢問、確認、及更新“選擇起迄站”、“選擇日期”、“選擇車班”、“票種張數(shù)”、及“確認”等關(guān)鍵資訊,待最后確認無誤之后則可完成訂票程序。由于根據(jù)輸入信息所轉(zhuǎn)換出的語意訊框包括有“高雄”的關(guān)鍵詞及語音辨識的信心分數(shù)若信心分數(shù)大于一預(yù)設(shè)的門欄值,則此關(guān)鍵詞可直接取代為關(guān)鍵資訊,于本例中,“高雄”即取代為“迄站”的關(guān)鍵資訊,如此一來,系統(tǒng)只要再詢問“起站”資訊即可,不必再重復(fù)詢問一次“迄站”資訊。
需注意的是,由于輸入單元11可接收多模式的輸入信息,因此本實施例的對話管理系統(tǒng)可針對不同模式的輸入,使用不同的確認及更正機制來計算關(guān)鍵詞及關(guān)鍵資訊的信心分數(shù)。例如使用圖形介面114所形成的表單來進行輸入時,由于使用者是點選既定選單上的選鈕,因此信心分數(shù)為滿分;或使用文字介面113所輸入的文字資訊,同樣具有極高的信心分數(shù);通常以聲訊介面111或電腦電話介面112所輸入的語音信息的信心分數(shù)較低,當(dāng)然若具有較高信心分數(shù)時,系統(tǒng)亦可自動采用此關(guān)鍵詞作為關(guān)鍵資訊,而不需詢問使用者以取得關(guān)鍵資訊。
第二實施例用以更新對話訊框的互動程序請參閱圖5,亦以訂票主題321為主,其互動流程皆與第一實施例相同,惟當(dāng)起迄站、日期、車班、票種張數(shù)都已詢問完成后,在進行票種張數(shù)確認時,使用者修改了日期,因此必須重新執(zhí)行一次訂票主題321的互動程序。由于先前向使用者所詢問確認后的關(guān)鍵資訊儲存于歷史資料庫33中,故當(dāng)重新進行互動程序時,系統(tǒng)將擷取出已確認的關(guān)鍵資訊而不需重新詢問使用者,即“起迄站”及“票種張數(shù)”,而“日期”及與其相關(guān)的“車班”則必須重新選取,而形成如訂票主題321’所示的動作指令。其中,歷史資料庫33所儲存的關(guān)鍵資訊將隨著各個對話主題的最新對話狀態(tài)及懸置主題而不斷更新。
第三實施例用以切換對話主題請參閱圖6,也是以訂票主題321加以說明,當(dāng)使用者在進行訂票主題321的互動程序時,例如在進行到選擇日期的互動程序時,使用者可能先詢問系統(tǒng)今天日期,因此系統(tǒng)將自動切換到日期主題322來回答使用者的問題,且當(dāng)此互動程序完成后,系統(tǒng)會適時地自動切換回原先的訂票主題321以繼續(xù)詢問使用者欲搭乘的卓班資訊。且在選擇車班的互動程序中,使用者詢問了票價資訊,故系統(tǒng)又將切換至票價主題323,且在主動切換回訂票主題321后,使用者又詢問了天氣狀況,因此系統(tǒng)同樣將會進行天氣主題324的互動程序以告知使用者相關(guān)的天氣狀況,再切換回訂票主題321。上述的各個主題切換,都是和訂票較為相關(guān)的主題,因此系統(tǒng)會無條件切回原訂票主題。若是其他跟訂票較不相關(guān)的主題如路況查詢、航班查詢時,系統(tǒng)則會先確認后再切回原訂票主題。
上述第三實施例中,使用者與系統(tǒng)的互動程序可使用以下的自然對話情境加以模擬,其中,系統(tǒng)端即為本實施例的多模式對話系統(tǒng)1.系統(tǒng)端歡迎光臨,請問您要什么服務(wù)?2.使用者我要臺北到高雄的自強號。
3.系統(tǒng)端您要哪一天出發(fā)?4.使用者明天是星期幾?5.系統(tǒng)端明天是星期六。
6.使用者嗯…7.系統(tǒng)端請問您要明天什么時候出發(fā)?8.使用者票價是多少?9.系統(tǒng)端臺北到高雄的自強號車票是845元。
10.使用者莒光號呢?11.系統(tǒng)端臺北到高雄的自強號車票是651元。
12.使用者嗯…13.系統(tǒng)端您要訂莒光號嗎?14.(使用者按下“正確”的按鈕)15.系統(tǒng)端請選擇您要的車次。
16.使用者我想查高雄的天氣。
17.系統(tǒng)端明天高雄的天氣陰時多云雷陣雨,最高溫32度,最低溫27度。
18.使用者那臺北呢?19.系統(tǒng)端明天臺北的天氣多云午后雷陣雨,最高溫34度,最低溫26度。
20.使用者嗯…21.系統(tǒng)端請選擇您要的車次。
22.(使用者點選表單中莒光號17車次,臺北到高雄)23.系統(tǒng)端您要訂哪一種票幾張?24.使用者我要成人票兩張。
25.系統(tǒng)端您要購買的是明天從臺北到高雄的苫光號17列車成人票兩張,一共是1302元。如果確定,請刷您的信用卡。
26.(使用者按下“確定”按鈕)27.系統(tǒng)端請取出您的車票,謝謝您,并歡迎您再次惠顧。
其中,第4行、第8行、及第16行的對話表示使用者分別由訂票主題321切換至日期主題322、票價主題323、及天氣主題324;而第7行、第13行、及第21行的對話則表示系統(tǒng)端適時主動切回原先訂票主題321的程序。
根據(jù)上述的說明,顯示本發(fā)明所提出的基于事件階層表示法的多模式對話系統(tǒng)是可智慧地處理多主題切換問題,以呈現(xiàn)出智慧的對話行為且多模式的使用者介面包括了語音、文字、及表單按鈕等圖形化的介面,有助于使用者以最自然、便利的方式,和系統(tǒng)進行互動;此外,本發(fā)明對話管理的描述是以邏輯關(guān)是和物件為基礎(chǔ),其使用延伸標(biāo)記語言來定義對話目標(biāo)與物件問的邏輯關(guān)是,并以描述語言(script language)來表示物件資料結(jié)構(gòu)和進行程序性運算,易于移植到不同的語言,具有高度應(yīng)用彈性,實為一大進步。
上述實施例僅是為了方便說明而舉例而已,本發(fā)明所主張的權(quán)利范圍自應(yīng)以申請專利范圍所述為準(zhǔn),而非僅限于上述實施例。
權(quán)利要求
1.一種基于事件階層表示法的多模式對話系統(tǒng),其特征在于,主要包括一介面模組,用以與使用者進行溝通互動,其包括有一用以接收一輸入信息的輸入單元、及一輸出單元;一解譯模組,是辨識該輸入信息并將其轉(zhuǎn)換為一語意訊框,該語意訊框是具有關(guān)鍵詞、數(shù)值、與信心值;以及一對話管理模組,其包括有一主題描述XML文件,是儲存復(fù)數(shù)個對話主題及其對應(yīng)的互動程序,每一互動程序是具有至少一動作指令,該動作指令是選自下列其中之一用以詢問關(guān)鍵資訊、用以確認關(guān)鍵資訊、及用以更新關(guān)鍵資訊;及一處理器,是擷取該語意訊框,并使用一程序語言以根據(jù)該語意訊框的關(guān)鍵詞自該主題描述XML文件中找出對應(yīng)的一對話主題,并將對應(yīng)于該對話主題的互動程序所具有的每一動作指令依序轉(zhuǎn)換為一行動策略以輸出至該輸出單元,以便和使用者進行互動。
2.如權(quán)利要求1所述的基于事件階層表示法的多模式對話系統(tǒng),其特征在于,其中,該對話管理模組是包括有一歷史資料庫,用以儲存該使用者于先前輸入信息所轉(zhuǎn)換咸的先前語意訊框中的關(guān)鍵詞。
3.如權(quán)利要求2所述的基于事件階層表示法的多模式對話系統(tǒng),其特征在于,其中,該處理器是根據(jù)目前語意訊框的關(guān)鍵詞自該主題描述XML文件中找出對應(yīng)的一對話主題,并自該歷史資料庫中找出該先前語意訊框的關(guān)鍵詞以繼承至目前語意訊框中。
4.如權(quán)利要求1所述的基于事件階層表示法的多模式對話系統(tǒng),其特征在于,其是使用可延伸性標(biāo)記語言以描述該等對話主題。
5.如權(quán)利要求1所述的基于事件階層表示法的多模式對話系統(tǒng),其特征在于,其中,該程序語言是為JavaScript語言。
6.如權(quán)利要求1所述的基于事件階層表示法的多模式對話系統(tǒng),其特征在于,其中,該輸入單元是為一語音裝置,該輸入信息是為一語音資料,且該解譯模組是具有一語音辨識單元,用以辨識該語音資料,再使用自然語言理解技術(shù)以將該語音資料轉(zhuǎn)換為一語意訊框。
7.如權(quán)利要求1所述的基于事件階層表示法的多模式對話系統(tǒng),其特征在于,其中,該輸入信息是為一文字資料,該解譯模組是使用自然語言理解技術(shù)以將該文字資料轉(zhuǎn)換為一語意訊框。
8.如權(quán)利要求1所述的基于事件階層表示法的多模式對話系統(tǒng),其特征在于,其中,該輸入單元是為一圖形介面,該圖形介面是包括有至少一選項以供使用者點選,該解譯模組是擷取該使用者所點選的選項形成的輸入信息以轉(zhuǎn)換為一語意訊框。
9.如權(quán)利要求1所述的基于事件階層表示法的多模式對話系統(tǒng),其特征在于,其中,該輸出單元是輸出一文字資料。
10.如權(quán)利要求1所述的基于事件階層表示法的多模式對話系統(tǒng),其特征在于,其中,該輸出單元是輸出一語音資料。
11.如權(quán)利要求1所述的基于事件階層表示法的多模式對話系統(tǒng),其特征在于,其中,該輸出單元是輸出一圖表選單。
全文摘要
本發(fā)明是有關(guān)于一種基于事件階層表示法的多模式對話系統(tǒng),是由一具有多模式輸入及輸出功能的介面模組、一解譯模組、及一對話管理模組所組成。當(dāng)系統(tǒng)自輸入單元接收到一多模式的輸入信息后,是經(jīng)由解譯模組進行辨識解譯,以將輸入信息轉(zhuǎn)換為一具有共同格式的語意訊框接著透過對話管理模組來更新對話狀態(tài),并進行主題推論,并連結(jié)后端的資料庫、網(wǎng)路資源、知識處理或資訊檢索等伺服器,來取得使用者所需的相關(guān)資訊;最后透過解譯模組的信息派遣單元、語言產(chǎn)生單元、及語音合成單元來產(chǎn)生多媒體的輸出以與使用者進行互動。
文檔編號G06F3/00GK1517901SQ0310167
公開日2004年8月4日 申請日期2003年1月14日 優(yōu)先權(quán)日2003年1月14日
發(fā)明者許天明, 林伯慎 申請人:財團法人資訊工業(yè)策進會