新四季網

聊天方法與系統的製作方法

2023-07-22 17:18:26 2

專利名稱:聊天方法與系統的製作方法
技術領域:
本發明涉及網際網路交互式對話方法,尤其涉及一種聊天方法與系統。
背景技術:
網際網路的發展速度非常驚人,已經成為了現代人每天生活的一部分。利用網際網路進行相互通訊是網際網路的基本功能之一,從最初的電子郵件到現在風靡的即時通訊工具都擁有廣大的用於群。網際網路另一大功能是獲取信息,然而網際網路的信息浩如煙海,即使有強大的搜索工具仍然很難找到想要的信息。另外現代的人生活節奏越來越快,壓力越來越大,隨之而來的就是與人的交流越來越少,為了適應社會發展變化的需要,一些基於即時通訊平臺或簡訊平臺的聊天系統就產生了。這種系統是一種通過自然語言文字進行人機對話的系統,採用自然語言處理技術為核心,涉及到計算語言學、信息科學和人工智慧等多門學科。該系統一方面完成對用戶問題的分析處理;另一方面基於知識庫完成正確答案的生成,可以與用戶進行聊天,也可以進行查詢等多種功能。
例如與用戶可以進行下面兩端對話對話1用戶明天深圳天氣怎樣?機器人明天深圳市晴,26~32度。
用戶太好了。
機器人是啊,這麼好的天氣很適合郊遊。
(改為機器人好天氣很適合郊遊。)對話2用戶春節晚會上將會有什麼節目?機器人春節晚會上有相聲、小品,劉德華還會在春節晚會上獻上他的新歌。
用戶太好了。
機器人到時別忘記通過電視收看哦。
(改為機器人今年春晚肯定很精彩)這兩段對話中,用戶都輸入了相同的一句話「太好了」,但是在第一段中是用戶知道天氣後說「太好了」,第二段中是用戶知道春晚的節目後說「太好了」,還有很多種情況下,用戶都會說「太好了」,但是根據上下文的語境,很容易發現,用戶說「太好了」的含義是不同的。
聊天系統是根據用戶輸入的自然語言信息採用句子模式匹配,然後返回相應的應答技術實現。但是相同的句子模式下不能代表用戶與該系統交談的話題屬性也是相同的,這種現象也相當普遍。本文種所述的模式是指用戶輸入的自然語言經過加工處理提取處理的精練部分以及類型等屬性。
為此目前有些聊天系統建設知識庫時,在返回的應答中人工設計一些有關用戶聊天話題屬性的標籤,這些屬性是與系統中句子屬性相同的。系統接收到用戶輸入的自然語言信息並理解後,會在系統中對理解的自然語言信息進行模式匹配,並找到該模式匹配的應答信息,從應答信息中選擇一個向用戶反饋,同時將該應答信息的話題屬性標籤返回給用戶。但是當系統搜索不到與用戶輸入的信息相匹配的模式時,就無法知道新話題屬性的屬性是什麼,因此無法判斷用戶的話題屬性是否轉變,只有按照原來的話題屬性從應答中選擇一個反饋給用戶,也就很容易出現如下段對話的情況用戶明天深圳天氣怎樣?機器人明天深圳市晴,26~32度。
用戶深圳成功申辦大運會了。
機器人是啊,這麼好的天氣很適合郊遊。(這個例子不太好,這一句不太像默認應答)以上對話中系統沒有匹配到用戶輸入的「深圳成功申辦大運會了」,因此就延續了之前的天氣話題屬性。
由於聊天系統的知識庫都是有限的,當聊天系統遇到不能匹配的模式後,根據當前話題屬性有針對性的返回默認應答則能夠給予用戶更好的體驗,而且可以根據知識庫中知識分類的分布,有針對性的將用戶引導到臨近的話題屬性上,可以保證人機交談更加流暢。
但是由於該方法是在前一次用戶輸入句子、聊天系統返回應答時來設置話題屬性,在後一次用戶輸入問句時,如果沒有在知識庫中匹配到句子模式,就不能辨別新問句的話題屬性,而仍然延續前一句的話題屬性,並依據舊話題屬性選擇一個默認應答。而實際上用戶最後一次的語句話題屬性可能已經轉移,此時如果根據用戶每一次輸入重新判斷話題屬性是延續還是轉移,則會更好的鑑別用戶當前談論的話題屬性,在匹配不到句子模式時優選當前話題屬性有針對性的默認應答返回則能夠給予用戶更好的體驗。因此在匹配模式後進行話題屬性的賦予是現有技術中的關鍵癥結所在,其缺少判斷話題屬性是否轉移的方法;從而也就缺少了在用戶輸入自然語言信息後,進行理解,識別話題屬性的過程。

發明內容
本發明要解決的技術問題是提供一種能夠連續聊天的方法與系統。為解決上述技術問題,本發明的目的是通過以下技術方案實現的獲取輸入的語言信息,分析該語言信息的句子主幹與確定句型;通過預置的話題詞典、所述的句子主幹與句型確定該語言信息的話題屬性;判斷是否存在對應於所述的句子主幹與句型的句子模式,若否則從默認應答中選擇一個與所述話題屬性相對應的應答反饋,若是則確定一個模式,從該模式對應的應答中選擇一個反饋。
對應與該方法本發明實施例還提供了一種聊天系統,該系統包括獲取單元,用於獲取用戶輸入的自然語言信息;自然語言處理單元,用於通過計算語言知識分析所述的自然語言信息,確定該自然語言信息的句子主幹與句型;計算語言知識存儲單元,用於存儲理解自然語言必須的知識;
話題理解單元,用於通過句子主幹與句型、話題詞典鑑別用戶輸入的自然語言的話題屬性;話題詞典存儲單元,用於存儲話題詞典,該詞典包括自然語言信息中關鍵詞與話題之間的關聯關係;推理單元,用於通過推理知識判斷是否存在對應於所述的句子主幹與句型的句子模式,若不存在則從默認應答中選擇一個與話題相對應的應答;若存在則確定一個模式從該模式對應的應答中選擇一個應答;推理知識存儲單元,用於存儲對用戶輸入的自然語言信息匹配的各種句子模式;每種模式對應的帶有話題屬性的應答和帶有話題屬性的默認應答;發送單元,用於將推理單元選擇的應答反饋給用戶。
本發明還提供了一種聊天方法,該方法包括獲取輸入的語言信息,分析該語言信息的句子主幹與確定句型;通過所述的句子主幹與句型鑑別該語言信息的話題屬性,若為無主題則將前次的話題屬性確定為本次的話題屬性;判斷是否存在多個所述的話題屬性;若否,則從預置的句子模式中選擇一個與該語言信息匹配的句子模式;若選擇到則從所述的句子模式對應的應答信息中選擇一個輸出;若沒有選擇到則從默認應答信息中選擇一個輸出;若是,則從預置的句子模式中對每一個話題屬性選擇一個與該語言信息匹配的句子模式,並從中隨機選擇一個句子模式,從該句子模式對應的應答信息中選擇一個輸出;若沒有匹配到的句子模式,則從默認應答信息中選擇一個輸出。
對應於該方法,本發明還提供了一種聊天系統,該系統包括語言信息獲取單元,用於獲取用戶輸入的自然語言信息;分析單元,用於通過計算語言知識分析所述的自然語言信息,確定該自然語言信息的句子主幹與句型;自然語言知識存儲單元,用於存儲理解自然語言必須的知識;
話題單元,用於通過所述的句子主幹與句型、話題詞典鑑別該語言信息的話題屬性,若為無主題則將前次的話題屬性確定為本次的話題屬性;確定是否存在多個所述的話題屬性;話題存儲單元,用於存儲話題詞典,該詞典包括自然語言信息中關鍵詞與話題之間的關聯關係;推理模式及應答單元,用於當不存在多個所述的話題屬性時,則從預置的句子模式中選擇一個與該語言信息匹配的句子模式;若選擇到則從所述的句子模式對應的應答信息中選擇一個;若沒有選擇到則從默認應答信息中選擇一個;當存在多個所述的話題屬性時,則從預置的句子模式中對每一個話題屬性選擇一個與該語言信息匹配的句子模式,並從中隨機選擇一個句子模式,從該句子模式對應的應答信息中選擇一個;若沒有匹配到的句子模式,則從默認應答信息中選擇一個;推理模式及應答知識存儲單元,用於存儲對用戶輸入的自然語言信息匹配的各種句子模式;每種模式對應的帶有話題屬性的應答和帶有話題屬性的默認應答;發送應答單元,用於將推理模式及應答單元選擇的應答反饋給用戶。
以上技術方案可以看出,由於在進行模式匹配前就進行了話題鑑別的過程,降低了模式匹配不到產生的話題無法鑑別的機率;並且進一步在判斷為句子話題屬性為無主題時,將上一個句子的話題屬性賦予此次句子的話題屬性,使得在無主題時能夠連貫的進行對話。


圖1為本發明實施例多層次話題體系的示意圖;圖2為本發明實施例多層次話題的聊天方法流程圖;圖3為本發明實施例多層次話題的聊天的系統圖;圖4為本發明實施例單一層次話題的聊天方法流程圖;圖5為本發明實施例單一層次話題的聊天方法系統圖。
具體實施例方式
本發明實施例提供了基於話題屬性鑑別的聊天方法與系統,下面詳述實施例的內容。
在與用戶進行聊天前,首先要建立多層次話題機制的類別體系,即一種根據話題粒度大小建立的多層次話題體系,參見圖1。這種多層次話題機制類別體系是參照按照人類的知識知識結構建立的,例如影視明星是一個大粒度的話題,其下面包括有劉德華、張學友等多個相同小粒度的話題。
因自然語言處理很多需要訓練,建立一些統計關係,這就需要預先建立一些計算語言知識庫,專門用來對自然語言進行處理;其中包括但不限制於詞典、詞頻、句法規則、語義規則等各種統計數據,能夠得到句子的主幹與句子的類型等信息;並且還需要建立關鍵詞與話題之間的統計關係,建立關鍵詞和最小粒度話題之間的映射關係,一般是多對多的;關鍵詞對每個話題有不同的打分,建立每個關鍵詞與每個話題相關的概率的知識庫,形成一個話題辭典。
在建立上述基礎內容的基礎上,還需要建立推理知識庫,存儲針對用戶可能輸入的各種自然語言對應的模式,及每種模式下的應答、默認應答等多種內容,其中應答信息也是按照多層次話題粒度劃分的。
下面詳細介紹與用戶聊天的方法,參見圖2步驟201獲取用戶輸入的自然語言信息,分析句子主幹及確定句子類型;此處就是利用計算語言知識庫中存儲的內容進行分析,該部分的內容是人工智慧領域一個重要的研究方向,它使得計算機能夠理解和運用人類的自然語言,可以實現人與計算機之間基於自然語言的有效通信。本文中所述的自然語言都是指的人類使用的各種自然語言,例如中文、英文等。
步驟202進行話題屬性鑑別。
因為用戶輸入的自然語言信息是千變萬化的,有時候能夠通過句子主幹與句型等信息鑑別出話題屬性,有時候鑑別不出話題屬性,例如「太好了」等等類似的語句。此時鑑別的話題屬性就包括了話題屬性為有主題或無主題。
若用戶輸入例如「太好了」的句子時,則將與用戶之前的多次對話的主題確定為本次話題的主題。
步驟203判斷話題是否有衝突;若有衝突則執行步驟204,若沒有衝突則執行步驟205;此步驟所述的話題有衝突是指,由於本實施例建立的是多層次話題機制的類別體系,那麼在用戶輸入的自然語言信息中可能會包括多個相同層次,即多個相同粒度的話題主題,那麼系統就無法辨別用戶所述的到底是哪一個話題主題。
步驟204將粒度放大,確定一個話題屬性;該步驟就是指將多個相同粒度的話題主題逐步進行粒度放大,查找該粒度、即該層次的高一層次的話題,看是否能夠找到一個包含所有相同粒度的話題主題的高粒度話題主題;若找到了,則將找到的高粒度話題主題確定為本此對話的話題主題;若沒有找到則將本次對話主題定為無主題。
步驟205通過分析的句子主幹及確定的句子類型、系統預置的推理知識庫判斷是否存在對應的句子類型;若存在則執行步驟206;若不存在則執行步驟217;此處判斷是否存在對應的句子類型的標準是相似度高,並且需要達到一定的限值才能是與句子主幹、確定的句子類型對應的模型。
步驟206判斷是否僅匹配到一個句子模式,若是則執行步驟208,若不是則執行步驟207;步驟207因步驟204中進一步確定的了話題屬性為有主題或無主題,在將粒度放大確定為無主題的情況下,從多個句子模式中任意選擇一個句子模式;在粒度放大確定有主題或者無話題衝突時確定的主題情況下,從多個句子模式中選擇話題匹配的句子模式。
步驟208判斷步驟207中選擇的句子模式是否有話題主題;若有則執行步驟209;若沒有則執行步驟210;步驟209判斷在該有話題主題的句子模式對應的應答中,是否有話題匹配的最小粒度話題應答;若有則執行步驟214;若沒有則執行步驟211;推理知識庫中存儲的應答信息也是按照多層次話題粒度劃分的,為了向用戶返回最貼近話題主題的應答,所以首先在最小粒度話題的應答中查找。
步驟210從該句子模式對應的應答中任意選擇一個應答,並將該應答反饋用戶。
步驟211根據預先設置的多層次話題粒度體系,判斷話題粒度是否到達了最高一級,若沒有則執行步驟212;若到達則執行步驟210;步驟212將粒度放大;該步驟同步驟204的做法相似,就是指將多個相同粒度的話題主題進行粒度放大,查找該粒度、即該層次的高一層次的話題,看是否能夠找到一個包含所有相同粒度的話題主題的高粒度話題主題。
步驟213判斷高一級的粒度中是否有話題匹配的應答;若沒有則執行步驟209;若有則執行步驟214。
步驟214判斷是否有多個話題匹配的應答,若有則執行步驟215;若沒有則執行步驟216。
步驟215從多個話題匹配的應答中任意選擇一個應答。
步驟216將選擇的應答反饋給用戶。
步驟217在沒有匹配的問句模式時,判斷步驟204中確定的話題屬性是否為有主題,是則執行步驟218;否則執行步驟222;步驟218判斷默認應答中是否有最小粒度話題匹配的應答;若有則執行步驟221;若沒有則執行步驟219;推理知識庫中存儲的默認應答信息也是按照多層次話題粒度劃分的,為了向用戶返回最貼近話題主題的應答,所以首先在最小粒度話題的應答中查找。
步驟219根據預先設置的多層次話題粒度體系,判斷話題粒度是否到達了最高一級,若沒有則執行步驟219;若到達則執行步驟214;步驟220將粒度放大;該步驟同步驟204的做法相似,就是指將多個相同粒度的話題主題進行粒度放大,查找該粒度、即該層次的高一層次的話題,看是否能夠找到一個包含所有相同粒度的話題主題的高粒度話題主題。
步驟221判斷高一級的粒度中是否有話題匹配的應答;若沒有則執行步驟214;若有則執行步驟219。
步驟222從所有默認應答中任意選擇一個應答,並反饋給用戶。
在此實施例的基礎上,為了更好的為了進一步增加對話的連貫性,提高了用戶的滿意度,可以在確定話題主題時進行進一步細化,在話題主題轉移的情況下做相應的處理。
此方法與上述的實施例基本相同,只是在步驟202、204時有相應的變化,為此只詳細描述在202、204中的部分,將下述的內容替換入上述實施例就可,其他步驟不再累述。
步驟202進行話題屬性鑑別,並鑑別是否話題發生轉移。
因為用戶輸入的自然語言信息是千變萬化的,有時候能夠通過句子主幹與句型等信息鑑別出話題屬性,有時候鑑別不出話題屬性,例如「太好了」等等類似的語句。此時鑑別的話題屬性就包括了話題屬性為有主題或無主題。
若用戶輸入例如「太好了」的句子時,則將與用戶之前的多次對話的主題確定為本次話題的主題。
在鑑別話題屬性的同時進行話題是否發生轉移的判斷,即通過對比多次之前的對話主題,判斷此次的話題是否發生轉移,並將結果保存。
步驟204將粒度放大,確定一個話題屬性;此處是指將多個相同粒度的話題主題進行粒度放大,查找該粒度、即該層次的高一層次的話題,看是否能夠找到一個包含所有相同粒度的話題主題的高粒度話題主題;
若找到了,則將找到的高粒度話題主題確定為本此對話的話題主題;若沒有找到,並且根據步驟202中的話題轉移結果,進行相應的處理;若話題未發生轉移,則將前次的話題主題定為本次對話的話題主題;若話題發生轉移則將此次對話的主題定為無主題。
由於系統自身的存儲容量是有限的,為了更好的與用戶進行流暢的對話,本發明實施例還可以進行主動的話題轉移。例如可以在上述實施例的基礎上通過下述方法實現在有對應於所述的句子主幹與句型的句子模式,但與話題匹配的句子模型數量低於預置的限值時,將該話題屬性進行粒度放大,在放大的話題屬性粒度基礎上,判斷與此次話題屬性粒度相同的其他話題屬性的句子模型是否超過預置的限制,並從中選擇一個預置內容最多的話題屬性;若選擇到則將從話題屬性轉移至新話題上,並反饋轉移了話題屬性的應答;若沒有選擇到則從默認應答中選擇一個與所述話題屬性相對應的應答信息進行反饋。
本發明實施例還提供了一種基於話題屬性鑑別的聊天系統,參見圖3該系統包括獲取單元、自然語言處理單元、計算語言知識存儲單元、話題理解單元、話題詞典存儲單元、推理單元、推理知識存儲單元、發送單元;獲取單元,用於獲取用戶輸入的自然語言信息;自然語言處理單元,用於通過計算語言知識分析所述的自然語言信息,確定該自然語言信息的句子主幹與句型;計算語言知識存儲單元,用於存儲理解自然語言必須的知識;話題理解單元,用於通過句子主幹與句型、話題詞典鑑別用戶輸入的自然語言的話題屬性;推理單元,用於通過推理知識判斷是否存在對應於所述的句子主幹與句型的句子模式,若不存在則從默認應答中選擇一個與話題相對應的應答;若存在則確定一個模式從該模式對應的應答中選擇一個應答;推理知識存儲單元,用於存儲對用戶輸入的自然語言信息匹配的各種句子模式;每種模式對應的帶有話題屬性的應答和帶有話題屬性的默認應答;每種模式對應的帶有話題屬性的應答,模式的話題屬性是所有應答的話題屬性的集合;推理知識存儲單元還包含沒有模式相對應的默認應答,默認應答同樣帶有話題屬性。
發送單元,用於將推理單元選擇的應答反饋給用戶。
其中話題理解單元具體包括了話題鑑別單元、話題粒度判斷單元、第一話題選擇單元、第二話題選擇單元、話題轉移判斷單元;話題鑑別單元,用於鑑別獲得的自然語言信息的話題屬性是否為無主題;第一話題選擇單元,用於通過話題鑑別單元鑑別出無主題的結果,將前次的話題屬性置為該次的話題屬性;第二話題選擇單元,用於通過話題粒度判斷單元判斷的存在多個相同粒度的話題結果,將該粒度基礎上進行放大,直到選擇到一個包含所有話題粒度的話題;若選擇不到則將此次話題屬性定為無主題;用於在確定話題未發生轉移,且存在多個相同粒度話題結果、放大粒度後確定為無主題時,將前次的話題主題確定為本次話題主題;在確定話題未發生轉移、存在多個相同粒度的話題結果、放大粒度後確定為無主題時,將本次話題定為無主題。
話題粒度判斷單元,用於通過預置的話題粒度結構判斷確定的此次話題屬性在其最小粒度下是否存在多個相同粒度的話題;話題轉移判斷單元,用於在話題鑑別單元鑑別出話題屬性為有主題時,對比之前多次的話題主題,判斷此次話題主題是否發生轉移;話題詞典存儲單元,用於存儲話題詞典,該詞典包括自然語言信息中關鍵詞與話題之間的關聯關係;其中推理單元具體包括模式判斷單元、默認應答選擇單元、最小粒度判斷單元、默認應答話題選擇單元;第二無主題應答選擇單元、第二應答選擇單元;限值判斷單元、話題轉移單元、第三應答選擇單元;模式判斷單元,用於通過推理知識判斷是否存在對應於所述的句子主幹與句型的句子模式;
默認應答選擇單元,用於在不存在匹配的句子模式、第二話題選擇單元確定話題屬性為無主題時,從默認應答中選擇一個;最小粒度判斷單元,用於在不存在匹配的句子模式、第二話題選擇單元確定話題屬性有主題時,判斷默認應答中是否存在與其最小粒度話題匹配的應答;默認應答話題選擇單元,用於在判斷默認應答中存在與其最小粒度話題匹配的應答時,從所述的話題匹配的應答中選擇一個;在判斷默認應答中不存在與其最小粒度話題匹配的應答時,從默認應答中選擇一個。
第一無主題應答選擇單元、第一應答選擇單元;第一無主題應答選擇單元,用於在模式判斷單元判斷出僅有一個對應於所述的句子主幹與句型的句子模式、且話題屬性為無主題時,從該句子對應的應答中選擇一個;第一應答選擇單元,用於在模式判斷單元判斷出僅有一個對應於所述的句子主幹與句型的句子模式、且話題屬性為有主題時,從該模式對應的應答中選擇一個話題匹配的應答。
第二無主題應答選擇單元,用於在在模式判斷單元判斷出有多個對應於所述的句子主幹與句型的句子模式、且話題屬性為無主題時,從模式匹配度最高的模式對應的應答中選擇一個;第二應答選擇單元,還用於在模式判斷單元判斷出有多個對應於所述的句子主幹與句型的句子模式、且話題屬性為有主題時,則從話題屬性匹配的模式對應的應答中選擇一個話題屬性匹配的應答。
推理知識存儲單元,進一步用於存儲每種模式對應的帶有轉移話題屬性的應答;限值判斷單元,用於判斷是否有對應於所述的句子主幹與句型的句子模式,但與話題匹配的句子模式數量低於預置的限值;及將話題屬性進行粒度放大,在放大的話題屬性粒度基礎上,判斷與此次話題屬性粒度相同的其他話題屬性的句子模型是否超過預置的限制;
話題轉移單元,用於在與此次話題屬性粒度相同的其他話題屬性的句子模型超過預置的限制,將從話題屬性轉移至新話題上;第三應答選擇單元,用於在從話題屬性轉移時從每種模式對應的帶有轉移話題屬性的應答中選擇一個應答。
上述的實施例是在多層次話題機制的情況下進行了,下面所述的實施例是在單一層次話題機制下進行。即所有的話題只有同一粒度。參見圖4,本實施例具體流程為步驟401獲取用戶輸入的自然語言信息,分析句子主幹及確定句子類型;此處就是利用計算語言知識庫中存儲的內容進行分析,該部分的內容是人工智慧領域一個重要的研究方向,它使得計算機能夠理解和運用人類的自然語言,可以實現人與計算機之間基於自然語言的有效通信。本文中所述的自然語言都是指的人類使用的各種自然語言,例如中文、英文等。
步驟402進行話題屬性鑑別。
因為用戶輸入的自然語言信息是千變萬化的,有時候能夠通過句子主幹與句型等信息鑑別出話題屬性,有時候鑑別不出話題屬性,例如「太好了」等等類似的語句。此時鑑別的話題屬性就包括了話題屬性為有主題或無主題。
若用戶輸入例如「太好了」的句子時,則將與用戶之前的多次對話的主題確定為本次話題的主題。
步驟403判斷話題是否有衝突;若有衝突則執行步驟410,若沒有衝突則執行步驟404;此步驟所述的話題有衝突是指,由於本實施例建立的是多層次話題體系,那麼在用戶輸入的自然語言信息中可能會包括多個相同層次,即多個相同粒度的話題主題,那麼系統就無法辨別用戶所述的到底是哪一個話題主題。
步驟404通過分析的句子主幹及確定的句子類型、系統預置的推理知識庫判斷是否存在對應的句子類型;若存在則執行步驟405;若不存在則執行步驟413;此處判斷是否存在對應的句子類型的標準是相似度高,並且需要達到一定的限值才能是與句子主幹、確定的句子類型對應的模型。
步驟405判斷是否僅匹配到一個句子模式。若是則執行步驟407;若否則執行步驟406;步驟406從中選擇話題屬性匹配的句子模式,若選擇到則執行步驟407;若沒有選擇到從中任意選擇一個執行步驟407;步驟407判斷在該句子模式對應的應答中是否有話題匹配的應答,若沒有則執行步驟409;若有則執行步驟408;步驟408從話題匹配的應答中任意選擇一個反饋給用戶;步驟409從該句子模式對應的應答中任意選擇一個反饋給用戶;步驟410對所有有衝突的話題進行句子模式匹配;步驟411判斷是否有匹配的句子模式,若有則執行步驟412;若沒有則執行步驟413步驟412任意從所有有衝突問句模式中選擇一個,執行步驟407;步驟413判斷默認應答中是否有話題匹配的應答,若有則執行步驟414;若沒有則執行步驟415;步驟414從句子模式對應的話題匹配的應答中任意選擇一個反饋給用戶;步驟415從句子模式對應的所有默認應答中任意選擇一個反饋給用戶。
本發明還提供了一種聊天系統,參見圖5,該系統包括語言信息獲取單元、分析單元、話題單元、推理模式及應答單元、發送應答單元、自然語言知識存儲單元、話題存儲單元、推理模式及應答知識存儲單元;獲取單元,用於獲取用戶輸入的自然語言信息;分析單元,用於通過計算語言知識分析所述的自然語言信息,確定該自然語言信息的句子主幹與句型;自然語言知識存儲單元,用於存儲理解自然語言必須的知識;話題單元,用於通過所述的句子主幹與句型、話題詞典鑑別該語言信息的話題屬性,若為無主題則將前次的話題屬性確定為本次的話題屬性;確定是否存在多個所述的話題屬性;話題存儲單元,用於存儲話題詞典,該詞典包括自然語言信息中關鍵詞與話題之間的關聯關係;推理模式及應答單元,用於當不存在多個所述的話題屬性時,則從預置的句子模式中選擇一個與該語言信息匹配的句子模式;若選擇到則從所述的句子模式對應的應答信息中選擇一個;若沒有選擇到則從默認應答信息中選擇一個;當存在多個所述的話題屬性時,則從預置的句子模式中對每一個話題屬性選擇一個與該語言信息匹配的句子模式,並從中隨機選擇一個句子模式,從該句子模式對應的應答信息中選擇一個;若沒有匹配到的句子模式,則從默認應答信息中選擇一個;推理模式及應答知識存儲單元,用於存儲對用戶輸入的自然語言信息匹配的各種句子模式;每種模式對應的帶有話題屬性的應答和帶有話題屬性的默認應答;發送應答單元,用於將推理模式及應答單元選擇的應答反饋給用戶。
以上技術方案可以看出,由於在進行模式匹配前就進行了話題鑑別的過程,降低了模式匹配不到產生的話題無法鑑別的機率;並且進一步在判斷為句子話題屬性為無主題時,將上一個句子的話題屬性賦予此次句子的話題屬性,使得在無主題時能夠連貫的進行對話。
進一步在判斷話題屬性有主題時,進而將該次主題與前幾次的話題屬性進行對比,確定是否發生話題轉移,若發生轉移在粒度方法確定為無主題時會進行相應的處理,進一步增加了對話的連貫性,提高了用戶的滿意度。
由於系統自身的存儲容量是有限的,為了更好的與用戶進行流暢的對話,本發明實施例還可以進行主動的話題轉移,使得系統更加智能的與用戶進行對話。
以上對本發明實施例提供的一種聊天方法與系統進行了詳細介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本發明的方法及其核心思想;同時,對於本領域的一般技術人員,依據本發明的思想,在具體實施方式
及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本發明的限制。
權利要求
1.一種聊天方法,其特徵在於,該方法包括獲取輸入的語言信息,分析該語言信息的句子主幹與確定句型;通過預置的話題詞典、所述的句子主幹與句型確定該語言信息的話題屬性;判斷是否存在對應於所述的句子主幹與句型的句子模式,若否則從默認應答中選擇一個與所述話題屬性相對應的應答反饋,若是則確定一個模式,從該模式對應的應答中選擇一個反饋。
2.根據權利要求1所述的聊天方法,其特徵在於,確定該語言信息的話題屬性的方法具體為鑑別該語言信息是否為無主題,若是則將前次獲取的語言信息的話題屬性確定為本次話題屬性;通過在預置的話題屬性粒度結構判斷確定的本次話題屬性在其最小粒度下是否存在多個相同粒度的話題屬性;若不存在,則通過預置的句子模式判斷是否存在對應於所述的句子主幹與句型的句子模式;若存在,在判斷是否存在對應於所述的句子主幹與句型的句子模式前,首先通過預置的話題屬性粒度結構將該最小粒度放大,選擇到一個包含所有粒度的話題屬性,若選擇不到則將此次語言信息定為無主題。
3.根據權利要求2所述的聊天方法,其特徵在於,在鑑別出此次話題屬性有主題時,進一步比較之前的話題屬性主題,判斷是否發生話題屬性轉移;在存在多個相同粒度的話題屬性、在粒度放大後確定話題屬性為無主題、並且確定話題屬性未發生轉移的情況下,將前次獲取的語言信息的話題屬性確定為本次話題屬性;在存在多個相同粒度的話題屬性、在粒度放大後確定話題屬性為無主題、並且確定話題屬性發生轉移的情況下,將本次話題屬性定為無主題。
4.根據權利要求1至3其中之一所述的聊天方法,其特徵在於,從默認應答中選擇一個與所述話題屬性相對應的應答信息進行反饋的方法具體為判斷此次話題屬性是否為無主題,若是,則從默認應答中選擇一個進行反饋;若否,則判斷默認應答中是否存在與最小粒度話題屬性匹配的應答,若存在則將該應答進行反饋;若不存在則將該話題屬性粒度放大,選擇一個高粒度話題屬性匹配的應答進行反饋,若直到最高粒度仍然選擇不到話題屬性匹配的應答,則從默認應答中選擇一個輸出。
5.根據權利要求1所述的聊天方法,其特徵在於,若僅有一個對應於所述的句子主幹與句型的句子模式,且話題屬性為無主題,則從該句子模式對應的應答中選擇一個應答反饋;若話題屬性為有主題,則從該句子模式對應的應答中選擇一個話題屬性匹配的應答反饋。
6.根據權利要求1所述的聊天方法,其特徵在於,若存在多個對應於所述的句子主幹與句型的句子模式,且話題屬性為無主題,則從中選擇一個模式匹配度最高的,根據該模式匹配度最高的模式選擇一個應答反饋;若存在多個對應於所述的句子主幹與句型的句子模式,且話題屬性有主題,則選擇一個話題屬性匹配的模式,從該模式對應的應答中選擇一個話題屬性匹配的應答反饋。
7.根據權利要求5或6所述的聊天方法,其特徵在於,在話題屬性有主題時,從模式對應的應答中選擇一個話題屬性匹配應答的方法為判斷所述的對應應答中是否存在與最小粒度話題屬性匹配的應答,若存在則將該應答進行反饋;若不存在則將該話題屬性粒度放大,選擇一個高粒度話題屬性匹配的應答進行反饋,若直到最高粒度仍然選擇不到,則從所述的對應應答中選擇一個輸出。
8.根據權利要求5或6所述的聊天方法,其特徵在於,若有對應於所述的句子主幹與句型的句子模式,但與話題匹配的句子模型數量低於預置的限值時,將該話題屬性進行粒度放大,在放大的話題屬性粒度基礎上,判斷與此次話題屬性粒度相同的其他話題屬性的句子模型是否超過預置的限制,並從中選擇一個預置內容最多的話題屬性;若選擇到則將從話題屬性轉移至新話題上,並反饋轉移了話題屬性的應答;若沒有選擇到則從默認應答中選擇一個與所述話題屬性相對應的應答信息進行反饋。
9.一種聊天系統,其特徵在於,該系統包括獲取單元、自然語言處理單元、計算語言知識存儲單元、話題理解單元、話題詞典存儲單元、推理單元、推理知識存儲單元、發送單元;獲取單元,用於獲取用戶輸入的自然語言信息;自然語言處理單元,用於通過計算語言知識分析所述的自然語言信息,確定該自然語言信息的句子主幹與句型;計算語言知識存儲單元,用於存儲理解自然語言必須的知識;話題理解單元,用於通過句子主幹與句型、話題詞典鑑別用戶輸入的自然語言的話題屬性;話題詞典存儲單元,用於存儲話題詞典,該詞典包括自然語言信息中關鍵詞與話題之間的關聯關係;推理單元,用於通過推理知識判斷是否存在對應於所述的句子主幹與句型的句子模式,若不存在則從默認應答中選擇一個與話題相對應的應答;若存在則確定一個模式從該模式對應的應答中選擇一個應答;推理知識存儲單元,用於存儲對用戶輸入的自然語言信息匹配的各種句子模式;每種模式對應的帶有話題屬性的應答和帶有話題屬性的默認應答;發送單元,用於將推理單元選擇的應答反饋給用戶。
10.根據權利要求9所述的聊天系統,其特徵在於,話題理解單元具體包括話題鑑別單元、話題粒度判斷單元、第一話題選擇單元、第二話題選擇單元;話題鑑別單元,用於鑑別獲得的自然語言信息的話題屬性是否為無主題;第一話題選擇單元,用於通過話題鑑別單元鑑別出無主題的結果,將前次的話題屬性置為該次的話題屬性;第二話題選擇單元,用於通過話題粒度判斷單元判斷的存在多個相同粒度的話題結果,將將該粒度基礎上進行放大,直到選擇到一個包含所有話題粒度的話題;若選擇不到則將此次話題屬性定為無主題;話題粒度判斷單元,用於通過預置的話題粒度結構判斷確定的此次話題屬性在其最小粒度下是否存在多個相同粒度的話題;
11.根據權利要求10所述的聊天系統,其特徵在於,話題理解單元進一步包括話題轉移判斷單元;話題轉移判斷單元,用於在話題鑑別單元鑑別出話題屬性為有主題時,對比之前多次的話題主題,判斷此次話題主題是否發生轉移;第二話題選擇單元,進一步用於在確定話題未發生轉移,且存在多個相同粒度話題結果、放大粒度後確定為無主題時,將前次的話題主題確定為本次話題主題;在確定話題未發生轉移、存在多個相同粒度的話題結果、放大粒度後確定為無主題時,將本次話題定為無主題。
12.根據權利要求9至11其中之一所述的聊天系統,其特徵在於,推理單元具體包括模式判斷單元、默認應答選擇單元、最小粒度判斷單元、默認應答話題選擇單元;模式判斷單元,用於通過推理知識判斷是否存在對應於所述的句子主幹與句型的句子模式;默認應答選擇單元,用於在不存在匹配的句子模式、第二話題選擇單元確定話題屬性為無主題時,從默認應答中選擇一個;最小粒度判斷單元,用於在不存在匹配的句子模式、第二話題選擇單元確定話題屬性有主題時,判斷默認應答中是否存在與其最小粒度話題匹配的應答;默認應答話題選擇單元,用於在判斷默認應答中存在與其最小粒度話題匹配的應答時,從所述的話題匹配的應答中選擇一個;在判斷默認應答中不存在與其最小粒度話題匹配的應答時,從默認應答中選擇一個。
13.根據權利要求9所述的聊天系統,其特徵在於,推理單元還包括第一無主題應答選擇單元、第一應答選擇單元;第一無主題應答選擇單元,用於在模式判斷單元判斷出僅有一個對應於所述的句子主幹與句型的句子模式、且話題屬性為無主題時,從該句子對應的應答中選擇一個;第一應答選擇單元,用於在模式判斷單元判斷出僅有一個對應於所述的句子主幹與句型的句子模式、且話題屬性為有主題時,從該模式對應的應答中選擇一個話題匹配的應答。
14.根據權利要求9所述的聊天系統,其特徵在於,推理單元還包括第二無主題應答選擇單元、第二應答選擇單元;第二無主題應答選擇單元,用於在在模式判斷單元判斷出有多個對應於所述的句子主幹與句型的句子模式、且話題屬性為無主題時,從模式匹配度最高的模式對應的應答中選擇一個;第二應答選擇單元,還用於在模式判斷單元判斷出有多個對應於所述的句子主幹與句型的句子模式、且話題屬性為有主題時,則從話題屬性匹配的模式對應的應答中選擇一個話題屬性匹配的應答。
15.根據權利要求13、14所述的聊天系統,其特徵在於,推理單元還包括限值判斷單元、話題轉移單元、第三應答選擇單元;推理知識存儲單元,進一步用於存儲每種模式對應的帶有轉移話題屬性的應答;限值判斷單元,用於判斷是否有對應於所述的句子主幹與句型的句子模式,但與話題匹配的句子模型數量低於預置的限值;及將話題屬性進行粒度放大,在放大的話題屬性粒度基礎上,判斷與此次話題屬性粒度相同的其他話題屬性的句子模型是否超過預置的限制;話題轉移單元,用於在與此次話題屬性粒度相同的其他話題屬性的句子模型超過預置的限制,將從話題屬性轉移至新話題上;第三應答選擇單元,用於在從話題屬性轉移時從每種模式對應的帶有轉移話題屬性的應答中選擇一個應答。
16.一種聊天方法,其特徵在於,該方法包括獲取輸入的語言信息,分析該語言信息的句子主幹與確定句型;通過所述的句子主幹與句型鑑別該語言信息的話題屬性,若為無主題則將前次的話題屬性確定為本次的話題屬性;判斷是否存在多個所述的話題屬性;若否,則從預置的句子模式中選擇一個與該語言信息匹配的句子模式;若選擇到則從所述的句子模式對應的應答信息中選擇一個輸出;若沒有選擇到則從默認應答信息中選擇一個輸出;若是,則從預置的句子模式中對每一個話題屬性選擇一個與該語言信息匹配的句子模式,並從中隨機選擇一個句子模式,從該句子模式對應的應答信息中選擇一個輸出;若沒有匹配到的句子模式,則從默認應答信息中選擇一個輸出。
17.根據權利要求16所述的聊天方法,其特徵在於,從預置的句子模式中,選擇一個與該語言信息匹配的句子模式的方法具體為判斷預置的句子模式中是否有所述的語言信息匹配的句子模式;若有,則判斷是否僅存在一個匹配的預置的句子模式;若是,則從所述的句子模式對應的應答信息中選擇一個輸出;若否,則從多個匹配的預置的句子模式中選擇話題屬性匹配的句子模式;若沒有,則從默認應答信息中選擇一個輸出。
18.根據權利要求16或17所述的聊天方法,其特徵在於,所述的從默認應答信息中選擇一個輸出的方法為判斷默認應答信息中是否有話題屬性匹配的應答,若沒有則隨即選擇一個;若有則從話題屬性匹配的應答信息中選擇一個輸出。
19.根據權利要求16或17其中之一所述的聊天方法,其特徵在於,從所述的句子模式對應的應答信息中選擇一個的方法具體為判斷所述對應的應答信息中是否有話題屬性匹配的應答,若有則從話題屬性匹配的應答中隨機選擇一個輸出;若沒有則從所有對應的應答信息中選擇一個輸出。
20.一種聊天系統,其特徵在於,該系統包括語言信息獲取單元、分析單元、話題單元、推理模式及應答單元、發送應答單元、自然語言知識存儲單元、話題存儲單元、推理模式及應答知識存儲單元;語言信息獲取單元,用於獲取用戶輸入的自然語言信息;分析單元,用於通過計算語言知識分析所述的自然語言信息,確定該自然語言信息的句子主幹與句型;自然語言知識存儲單元,用於存儲理解自然語言必須的知識;話題單元,用於通過所述的句子主幹與句型、話題詞典鑑別該語言信息的話題屬性,若為無主題則將前次的話題屬性確定為本次的話題屬性;確定是否存在多個所述的話題屬性;話題存儲單元,用於存儲話題詞典,該詞典包括自然語言信息中關鍵詞與話題之間的關聯關係;推理模式及應答單元,用於當不存在多個所述的話題屬性時,則從預置的句子模式中選擇一個與該語言信息匹配的句子模式;若選擇到則從所述的句子模式對應的應答信息中選擇一個;若沒有選擇到則從默認應答信息中選擇一個;當存在多個所述的話題屬性時,則從預置的句子模式中對每一個話題屬性選擇一個與該語言信息匹配的句子模式,並從中隨機選擇一個句子模式,從該句子模式對應的應答信息中選擇一個;若沒有匹配到的句子模式,則從默認應答信息中選擇一個;推理模式及應答知識存儲單元,用於存儲對用戶輸入的自然語言信息匹配的各種句子模式;每種模式對應的帶有話題屬性的應答和帶有話題屬性的默認應答;發送應答單元,用於將推理模式及應答單元選擇的應答反饋給用戶。
全文摘要
本發明實施例提供了一種聊天方法,該方法包括獲取輸入的語言信息,分析該語言信息的句子主幹與確定句型;通過預置的話題詞典、所述的句子主幹與句型確定該語言信息的話題屬性;判斷是否存在對應於所述的句子主幹與句型的句子模式,若否則從默認應答中選擇一個與所述話題屬性相對應的應答反饋,若是則確定一個模式,從該模式對應的應答中選擇一個反饋。對應於該方法,本發明還提供了一種聊天系統,該系統包括獲取單元、自然語言處理單元、計算語言知識存儲單元、話題理解單元、話題詞典存儲單元、推理單元、推理知識存儲單元、發送單元。
文檔編號H04L12/58GK101071418SQ20071008957
公開日2007年11月14日 申請日期2007年3月29日 優先權日2007年3月29日
發明者劉雲峰, 楊海松, 禹榮凌, 劉致遠, 文勖 申請人:騰訊科技(深圳)有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀