自動問答方法及裝置的制造方法
【專利摘要】本發明公開了一種自動問答方法及裝置。其中一種方法包括:獲取用戶的請求信息;對請求信息進行自動分詞,得到分詞信息;基于分詞信息進行請求信息與知識點的匹配處理,當匹配成功時,向用戶發送答案;否則,根據用戶操作對分詞信息進行調整,基于調整后的分詞信息進行請求信息與知識點的匹配處理,當匹配成功時,向用戶發送答案;否則,重復上述調整、以及匹配處理,直到匹配成功或者達到預定的重復次數。借助于本發明實施例的技術方案,能夠提高智能機器人語義識別和匹配的準確率,提升用戶體驗,滿足個性化使用需求,更好的完善智能機器人服務質量與水平。
【專利說明】
自動問答方法及裝置
技術領域
[0001]本發明涉及信息處理技術領域,特別是涉及一種自動問答方法及裝置。
【背景技術】
[0002]在現有技術中,智能問答知識庫中包括了多個知識點,每個所述知識點包括問題和答案。可以根據智能問答知識庫對用戶輸入的請求信息(即問題)進行匹配,在進行匹配時,現有技術中采用智能匹配和模糊匹配兩種匹配方式,具體地,用戶的請求信息輸入后,引擎會根據用戶的問句進行分詞,在進行了分詞后,需要根據詞類計算該請求信息與智能問答知識庫中問題的語義相似度,若語義相似度大于或者等于預先設置的閾值,則進行抽象語義匹配,即智能匹配;若沒有達到預先設置的閾值,則進行關鍵詞匹配,即模糊匹配。但是,在現有技術中,模糊匹配后的匹配結果可能不是十分準確,用戶無法對匹配結果進行編輯修改,只能選擇最接近的系統識別匹配內容作為自定義問句,因此,采用上述方式并不能很好的理解用戶提出的問題,識別準確率低,無法滿足用戶的要求。
【發明內容】
[0003]鑒于上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的自動問答方法及裝置。
[0004]本發明提供一種自動問答方法,包括:
[0005]提供問答知識庫,問答知識庫包括多個知識點,每個知識點包括問題和答案;
[0006]獲取用戶的請求信息;
[0007]對請求信息進行自動分詞,得到分詞信息;
[0008]基于分詞信息進行請求信息與知識點的匹配處理,當匹配成功時,向用戶發送答案;否則,根據用戶操作對分詞信息進行調整,基于調整后的分詞信息進行請求信息與知識點的匹配處理,當匹配成功時,向用戶發送答案;否則,重復上述調整、以及匹配處理,直到匹配成功或者達到預定的重復次數。
[0009 ]本發明還提供了一種自動問答方法,包括:
[0010]提供問答知識庫,問答知識庫包括多個知識點,每個知識點包括問題和答案;
[0011]獲取用戶的請求信息;
[0012]對請求信息進行自動分詞,得到并顯示分詞信息;
[0013]根據用戶操作對分詞信息進行調整;
[0014]基于調整后的分詞信息進行請求信息與知識點的匹配處理,當匹配成功時,向用戶發送答案;否則,重復上述顯示、調整、以及匹配處理,直到匹配成功或者達到預定的重復次數。
[0015]本發明還提供了一種自動問答裝置,包括:獲取模塊、輸入模塊、分詞模塊、匹配模塊、調整模塊、輸出模塊和控制模塊,其中:
[0016]獲取模塊,用于獲取多個知識點,每個知識點包括問題和答案;
[0017]輸入模塊,用于獲取用戶的請求信息;
[0018]分詞模塊,用于對請求信息進行自動分詞,得到分詞信息;
[0019]匹配模塊,用于基于分詞信息或調整后的分詞信息進行請求信息與知識點的匹配處理;
[0020]調整模塊,用于當基于分詞信息進行請求信息與知識點的匹配處理失敗時,根據用戶操作對分詞信息進行調整;
[0021]輸出模塊,用于當匹配成功時,向用戶發送答案;
[0022]控制模塊,用于在匹配模塊匹配成功的情況下,調用輸出模塊,在匹配模塊匹配失敗的情況下,調用調整模塊、以及匹配模塊,直到匹配成功或者達到預定的重復次數。
[0023]本發明還提供了一種自動問答裝置,包括:獲取模塊、輸入模塊、分詞模塊、顯示模塊、調整模塊、匹配模塊、輸出模塊和控制模塊,其中:
[0024]獲取模塊,用于獲取多個知識點,每個知識點包括問題和答案;
[0025]輸入模塊,用于獲取用戶的請求信息;
[0026]分詞模塊,用于對請求信息進行自動分詞,得到分詞信息;
[0027]顯示模塊,用于在分詞模塊得到分詞信息后,且調整模塊根據用戶操作對分詞信息進行調整前,顯示分詞信息;
[0028]調整模塊,用于根據用戶操作對分詞信息進行調整;
[0029]匹配模塊,用于基于調整后的分詞信息進行請求信息與知識點的匹配處理;
[0030]輸出模塊,用于當匹配成功時,向用戶發送答案;
[0031]控制模塊,用于在所述匹配模塊匹配成功的情況下,調用所述輸出模塊,在所述匹配模塊匹配失敗的情況下,調用所述顯示模塊、所述調整模塊、以及所述匹配模塊,直到匹配成功或者達到預定的重復次數。
[0032]本發明有益效果如下:
[0033]通過讓用戶對分詞進行編輯修改,再根據修改后的分詞重新進行知識點的匹配處理,從而得到滿足需求的答案,解決了現有技術中采用智能匹配和模糊匹配不能很好的理解用戶提出的問題,識別準確率低,無法滿足用戶的要求的問題,借助于本發明實施例的技術方案,能夠提高智能機器人語義識別和匹配的準確率,提升用戶體驗,滿足個性化使用需求,更好的完善智能機器人服務質量與水平。
[0034]上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發明的上述和其它目的、特征和優點能夠更明顯易懂,以下特舉本發明的【具體實施方式】。
【附圖說明】
[0035]通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對于本領域普通技術人員將變得清楚明了。附圖僅用于示出優選實施方式的目的,而并不認為是對本發明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0036]圖1是本發明方法實施例一的實例I的自動問答方法的流程圖;
[0037]圖2是本發明方法實施例一的自動問答方法的詳細處理的流程圖;
[0038]圖3是本發明方法實施例的獲取用戶輸入的問題的示意圖;
[0039]圖4是本發明方法實施例的根據用戶輸入的問句進行智能匹配的示意圖;
[0040]圖5是本發明方法實施例的顯示分詞信息的示意圖;
[0041]圖6是本發明方法實施例的用戶根據需求修改分詞的示意圖;
[0042]圖7是本發明方法實施例的修改分詞后進行智能匹配的示意圖;
[0043]圖8是本發明方法實施例的用戶最終得到滿足需求的問句及答案的示意圖;
[0044]圖9是本發明方法實施例二的實例I的自動問答方法的流程圖;
[0045]圖10是本發明方法實施例一的實例2的自動問答方法的流程圖;
[0046]圖11是本發明方法實施例二的實例2自動問答方法的流程圖;
[0047]圖12是本發明裝置實施例一的自動問答裝置的結構示意圖;
[0048]圖13是本發明裝置實施例二的自動問答裝置的的結構示意圖。
【具體實施方式】
[0049]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍完整的傳達給本領域的技術人員。
[0050]為了解決現有技術中采用智能匹配和模糊匹配不能很好的理解用戶提出的問題,識別準確率低,無法滿足用戶要求的問題,本發明提供了一種自動問答方法及裝置,當智能匹配和模糊匹配都不能滿足用戶需求時,用戶可根據實際情況對分詞進行編輯修改,并根據修改后的分詞重新進行知識點的匹配處理,得到更新后的語義推薦結果。
[0051]以下結合附圖以及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不限定本發明。
[0052]方法實施例一
[0053]實例I
[0054]根據本發明的實施例,提供了一種自動問答方法,圖1是本發明方法實施例一的實例I的自動問答方法的流程圖,如圖1所示,根據本發明實施例的自動問答方法包括如下處理:
[0055]步驟101,提供問答知識庫,問答知識庫包括多個知識點,每個知識點包括問題和答案。
[0056]在問答系統中,知識庫起著至關重要的作用,知識庫包括多個知識點,每個知識點包括問句和答案,所述問句可以包括一個標準問。具體地,知識庫中的知識點最原始和最簡單的形式就是平時常用的FAQ,一般的形式是“問-答”對,其中,該“問”就是標準問,該“答”就是答案。此外,知識庫中的每個知識點還可以有對應于一個標準問的一個或多個擴展問,該擴展問與標準問表達形式略有差異,但是表達的含義相同。
[0057]在知識庫中,標準問以及擴展問既可以采用普通問題形式,也可以采用語義表達式形式,其與現有技術相同,在此不再贅述。
[0058]步驟102,獲取用戶的請求信息。
[0059]在本發明實施例中,該請求信息可以通過語音識別、文字識別等多種方式獲取。在本發明實施例中,用戶的請求信息一般為用戶想要獲取某個答案所對應的問題信息。例如,用戶的請求信息可以是:如何設置彩鈴、如何申請寬帶等。
[0060]步驟103,對請求信息進行自動分詞,得到分詞信息。
[0061]在本發明實施例中,進行自動分詞時,一般是根據分詞詞典進行。在實際應用中,自動分詞處理可以采用字典雙向最大匹配法、viterbi方法、HMM方法和CRF方法中的一種或多種。
[0062 ]例如,請求信息為:如何設置彩鈴,則分詞信息為:如何、設置、彩鈴。
[0063]步驟104,基于所述分詞信息進行所述請求信息與所述知識點的匹配處理,當匹配成功時,向用戶發送答案;否則,顯示所述分詞信息,根據用戶操作對所述分詞信息進行調整,基于調整后的分詞信息進行所述請求信息與所述知識點的匹配處理,當匹配成功時,向用戶發送答案;否則,重復上述調整、以及匹配處理,直到匹配成功或者達到預定的重復次數。
[0064]在步驟104中,匹配處理可以采用以下任一種方式:
[0065]方式一:通過語義相似度計算進行智能匹配,當存在語義相似度大于閾值時,匹配成功;
[0066]其中,通過方式一進行智能匹配成功后,所述向用戶發送答案采用以下方式:將最大語義相似度對應問題的答案直接發送給用戶;
[0067]方式二:通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功;
[0068]方式三:先通過語義相似度計算進行智能匹配,當存在語義相似度小于所述閾值時,再通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功。
[0069]其中,通過方式二和方式三進行模糊匹配成功后,將關鍵詞匹配成功的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案。
[0070]需要說明的是,對于語義相似度等于閾值的情況,既可以認為匹配成功,也可以認為匹配不成功,當匹配結果不同時,后續進行不同的處理,其不限制本發明的保護范圍。
[0071]在智能匹配中,語義相似度計算是問答系統中關鍵的一步,其結果直接影響到整個系統的準確性。參與語義相似度計算的對象必須是對等的,為了計算知識點和用戶的請求信息(即用戶問句)的語義相似度,定義這個語義相似度為用戶問句與知識點中所有問句(包括所有標準問、擴展問及模板)的最大語義相似度。知識點中問句與用戶問句在計算語義相似度時可以通過傳統向量空間模型中的向量夾角余弦公式計算。
[0072]需要說明的是,在本發明實施例中,通過如下方式確認是采用智能匹配還是采用模糊匹配,具體地,用戶的請求信息輸入后,引擎會根據用戶的問句進行分詞,在進行了分詞后,需要根據詞類計算該請求信息與智能問答知識庫中問題的語義相似度,若語義相似度大于或者等于預先設置的閾值,則進行抽象語義匹配,即智能匹配;若沒有達到預先設置的閾值,則進行關鍵詞匹配,即模糊匹配。
[0073]在本發明的其它實施例中,還可以僅采用智能匹配或者模糊匹配進行請求信息與知識點的匹配處理,其不限制本發明的保護范圍。
[0074]下面對步驟104中基于分詞信息計算請求信息與問題之間的語義相似度進行舉例說明。
[0075]在本發明實施例中,假設用戶問句為“彩鈴如何開通”,目標知識點為“開通彩鈴”。目標知識點含有下列擴展問及語義模板:“[如何][開通][彩鈴]”、“[彩鈴]的[開通]方法有哪些”、“[介紹][彩鈴]的[開通][方式]”、“[彩鈴]是[如何][開通]的”、“你知道怎么樣開通彩鈴嗎”、“我想要彩鈴”。
[0076]首先量化用戶問句及目標文檔中所有的相似問句及語義模板為η維向量。在量化過程中,模板詞類與屬于該詞類的用戶問句中的詞歸為同一特征詞,同義的狹義詞類及其包含的詞具有相同的權值也可歸為同一特征詞。上述示例中特征詞有:{彩鈴、[彩鈴]},{開通、[開通]M [如何]、怎么樣M [方式]、方法},{有哪些M你},{知道},{我M想要}。因此可以將示例中的所有句子及模板轉化為9維向量。隨后依次對用戶問句向量與標準問、擴展問及語義模板對應的向量進行向量夾角余弦的語義相似度計算,得到具體的相似度值。然后對這些語義相似度值求最大值,本示例中的最大值為用戶問句與“[如何][開通][彩鈴]”的語義相似度值。在求最大值時可以采用邊運算邊記錄局部最大值的方式以降低運算量。最后將求得的這個最大值作為用戶問句與目標知識點的相似度值。
[0077]此外,在基于分詞信息進行請求信息與知識點的匹配失敗時,說明基于該分詞信息不能夠匹配到合適的答案,在上述情況下,本發明實施例可以顯示分詞信息,并提供操作接口供用戶修改該分詞信息,根據用戶操作對分詞信息進行調整。在本發明實施例中,用戶對分詞信息進行調整可以包括以下幾種形式至少之一:增加新的分詞信息、刪除原分詞信息、替換原分詞信息。例如,原分詞信息為:如何、設置、彩鈴,修改后的分詞信息為:如何用手機設置彩鈴,在這個例子中,增加了“用手機”這一新的分詞信息。又如,在另一例子中,因新詞無法識別,導致分詞錯誤,此時通過調整可以對相同的請求信息給出不同的分詞結果。
[0078]在分詞信息的修改過程中或者得到調整完成的分詞信息后,可以基于調整后的分詞信息進行所述請求信息與所述知識點的匹配處理,如果匹配成功,則向用戶推送答案,否貝IJ,重復上述顯示、調整、以及匹配處理,直到匹配成功,或者,達到預定的重復次數,或者,達到其他的終止條件。其中,上述顯示操作是指:顯示當前使用的分詞信息;上述調整操作是指:對當前使用的分詞信息進行修改;上述匹配處理是指:基于調整后的分詞信息進行所述請求信息與所述知識點的匹配處理。
[0079]在本發明實施例中,根據用戶操作對分詞信息進行調整之后,還可以根據調整后的分詞信息更新分詞詞典,其中,分詞詞典用于對后續請求信息進行分詞。通過上述處理,可以使后續分詞處理更加的準確,擴大用戶使用過程中對關鍵詞的選擇范圍。
[0080]從上述描述可以看出,在本發明實施例中,智能機器人系統針對用戶輸入的問題會進行相應的知識匹配,可以包括三種匹配方式:智能匹配、模糊匹配、以及分詞修改(重新語義推薦)。優選地,執行上述三種匹配方式的順序為:智能匹配、模糊匹配、分詞修改,具體如下:
[0081 ] 1、智能匹配:即語義推薦,首先通過匹配到的抽象語義進行識別,如果匹配成功,則向用戶推送相應的匹配結果,執行智能匹配且匹配成功表明匹配結果完全滿足用戶需求,如果匹配不成功或用戶不滿意匹配結果,則進行模糊匹配。
[0082]2、模糊匹配:即顯示分詞,根據分詞信息,進行關鍵詞匹配,如果匹配成功,則向用戶推送相應的匹配結果,執行模糊匹配且匹配成功表明匹配結果在一定程度上滿足用戶需求,但存在一部分的誤差,如果匹配不成功或用戶不滿意匹配結果,則修改分詞。
[0083]3、修改分詞(重新語義推薦):即用戶對分詞進行編輯修改,表明“智能匹配”和“模糊匹配”的結果都無法滿足用戶需求且與之存在很大差距,必須通過人工修改后系統重新語義推薦才能得到用戶需要的自定義問句。其中,分詞修改的過程包括:將問句拆分成若干個分詞,用戶調整分詞后,先與原始問句比照,將用戶調整過的詞錄入到分詞詞典,之后再重新進行語義推薦和/或模糊匹配,直至得到用戶滿意的匹配結果或者達到預定的重復次數。
[0084]以下結合附圖,對本發明實施例的上述技術方案進行詳細說明。
[0085]本發明實施例的上述技術方案可以用于iBotCloud智能云服務平臺,下面以用于iBot Cloud智能云服務平臺為例進行舉例說明。圖2是本發明方法實施例一的自動問答方法的詳細處理的流程圖,如圖2所示,具體包括如下處理:
[0086]步驟201,獲取用戶輸入的問題(對應于上述請求信息);如圖3所示,獲取用戶輸入的問題:“怎么樣可以到達迪士尼樂園”。
[0087]步驟202,對用戶輸入的問題進行自動分詞。
[0088]步驟203,基于分詞信息計算用戶輸入的問題與知識點中問題的語義相似度,如果該語義相似度大于閾值,則執行步驟204,否則,執行步驟205。
[0089]步驟204,至少將最大語義相似度對應問題的答案發送給用戶,或者,將大于閾值的語義相似度所對應的部分或全部問題顯示給用戶,并根據用戶的選擇,向用戶推送所選問題對應的答案,結束操作,如果用戶對于推送的答案或者問題不滿意,則執行步驟205。
[0090]在本發明實施例中,可以首先采用智能匹配方式,如圖4所示,根據用戶輸入的問句進行語義識別,得到智能匹配的結果為怎么樣到達迪士尼樂園?”、“迪士尼樂園到達的方法?”,可以將這兩個匹配結果顯示給用戶,供用戶選擇。如圖5所示,如果用戶對智能匹配的問句不滿意時,則進行模糊匹配,可以得到模糊匹配的結果。
[0091 ]步驟205,判斷是否達到預定調整次數,如果判斷為是,結束操作,否則,執行步驟206。
[0092]步驟206,向用戶顯示該分詞信息。
[0093]步驟207,根據用戶操作對分詞信息進行調整,獲取調整后的分詞信息,執行步驟203。
[0094]如圖6所示,用戶根據需求修改分詞,得到“坐地鐵是否可以到達迪士尼樂園”。如圖7所示,在本發明實施例中,會針對用戶修改以后的分詞重新進行語義相似度計算,智能匹配出問句坐地鐵能否到達迪士尼樂園? ”結果與用戶需求的問句高度吻合,識別的準確率明顯提升。如圖8所示,用戶最終得到滿足需求的問句及答案。
[0095]本發明實施例的技術方案允許用戶對系統匹配的結果進行參與介入。當系統進行的“智能匹配”和“模糊匹配”都不能滿足用戶的需求時,可以根據用戶對匹配中的分詞信息的修改,即通過編輯關鍵詞獲得更新后的語義推薦結果,從而得到滿足需求的自定義問句。借助于本發明實施例的技術方案,能夠提高智能機器人語義識別和匹配的準確率,提升用戶體驗,滿足個性化使用需求,更好的完善智能機器人服務質量與水平。
[0096]實例2
[0097]根據本發明的實施例,提供了一種自動問答方法,圖10是本發明方法實施例一的實例2的自動問答方法的流程圖,如圖10所示,根據本發明實施例的自動問答方法包括如下處理:
[0098]步驟1001,提供問答知識庫,問答知識庫包括多個知識點,每個知識點包括問題和答案。
[0099]在問答系統中,知識庫起著至關重要的作用,知識庫包括多個知識點,每個知識點包括問句和答案,所述問句可以包括一個標準問。具體地,知識庫中的知識點最原始和最簡單的形式就是平時常用的FAQ,一般的形式是“問-答”對,其中,該“問”就是標準問,該“答”就是答案。此外,知識庫中的每個知識點還可以有對應于一個標準問的一個或多個擴展問,該擴展問與標準問表達形式略有差異,但是表達的含義相同。
[0100]在知識庫中,標準問以及擴展問既可以采用普通問題形式,也可以采用語義表達式形式,其與現有技術相同,在此不再贅述。
[0101]步驟1002,獲取用戶的請求信息。
[0102]在本發明實施例中,該請求信息可以通過語音識別、文字識別等多種方式獲取。在本發明實施例中,用戶的請求信息一般為用戶想要獲取某個答案所對應的問題信息。例如,用戶的請求信息可以是:如何設置彩鈴、如何申請寬帶等。
[0103]步驟1003,對請求信息進行自動分詞,得到并顯示分詞信息。
[0104]在本發明實施例中,進行自動分詞時,一般是根據分詞詞典進行。在實際應用中,自動分詞處理可以采用字典雙向最大匹配法、viterbi方法、HMM方法和CRF方法中的一種或多種。
[0105]此外,與方法實施例一不同的是,在本發明實施例中,在進行分詞操作后,直接將分詞信息顯示給用戶。
[0106]步驟1004,基于所述分詞信息進行所述請求信息與所述知識點的匹配處理,當匹配成功時,向用戶發送答案;否則,根據用戶操作對所述分詞信息進行調整,基于調整后的分詞信息進行所述請求信息與所述知識點的匹配處理,當匹配成功時,向用戶發送答案;否貝1J,重復上述顯示、調整、以及匹配處理,直到匹配成功或者達到預定的重復次數。
[0107]在步驟1004中,匹配處理可以采用以下任一種方式:
[0108]方式一:通過語義相似度計算進行智能匹配,當存在語義相似度大于閾值時,匹配成功;
[0109]其中,通過方式一進行智能匹配成功后,所述向用戶發送答案采用以下方式:將語義相似度大于閾值的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案;
[0110]方式二:通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功;
[0111]方式三:先通過語義相似度計算進行智能匹配,當存在語義相似度小于所述閾值時,再通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功。
[0112]其中,通過方式二和方式三進行模糊匹配成功后,將關鍵詞匹配成功的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案。
[0113]在智能匹配中,語義相似度計算是問答系統中關鍵的一步,其結果直接影響到整個系統的準確性。參與語義相似度計算的對象必須是對等的,為了計算知識點和用戶的請求信息(即用戶問句)的語義相似度,定義這個語義相似度為用戶問句與知識點中所有問句(包括所有標準問、擴展問及模板)的最大語義相似度。知識點中問句與用戶問句在計算語義相似度時可以通過傳統向量空間模型中的向量夾角余弦公式計算。
[0114]需要說明的是,通過如下方式確認是采用智能匹配還是采用模糊匹配,具體地,用戶的請求信息輸入后,引擎會根據用戶的問句進行分詞,在進行了分詞后,需要根據詞類計算該請求信息與智能問答知識庫中問題的語義相似度,若語義相似度大于或者等于預先設置的值,則進行抽象語義匹配,即智能匹配;若沒有達到預先設置的值,則進行關鍵詞匹配,即模糊匹配。
[0115]在本發明的其它實施例中,還可以僅采用智能匹配或者模糊匹配進行請求信息與知識點的匹配處理,其不限制本發明的保護范圍。
[0116]下面對步驟104中基于分詞信息計算請求信息與問題之間的語義相似度進行舉例說明。
[0117]在本發明實施例中,假設用戶問句為“彩鈴如何開通”,目標知識點為“開通彩鈴”。目標知識點含有下列擴展問及語義模板[如何][開通][彩鈴]”、“[彩鈴]的[開通]方法有哪些”、“[介紹][彩鈴]的[開通][方式]”、“[彩鈴]是[如何][開通]的”、“你知道怎么樣開通彩鈴嗎”、“我想要彩鈴”。
[0118]首先量化用戶問句及目標文檔中所有的相似問句及語義模板為η維向量。在量化過程中,模板詞類與屬于該詞類的用戶問句中的詞歸為同一特征詞,同義的狹義詞類及其包含的詞具有相同的權值也可歸為同一特征詞。上述示例中特征詞有:{彩鈴、[彩鈴]},{開通、[開通]M [如何]、怎么樣M[方式]、方法},{有哪些M你},{知道},{我M想要}。因此可以將示例中的所有句子及模板轉化為9維向量。隨后依次對用戶問句向量與標準問、擴展問及語義模板對應的向量進行向量夾角余弦的語義相似度計算,得到具體的相似度值。然后對這些語義相似度值求最大值,本示例中的最大值為用戶問句與“[如何][開通][彩鈴]”的語義相似度值。在求最大值時可以采用邊運算邊記錄局部最大值的方式以降低運算量。最后將求得的這個最大值作為用戶問句與目標知識點的相似度值。
[0119]在分詞信息的修改過程中或者得到調整完成的分詞信息后,可以基于調整后的分詞信息進行所述請求信息與所述知識點的匹配處理,如果匹配成功,則向用戶推送答案,否貝IJ,重復上述顯示、調整、以及匹配處理,直到匹配成功,或者,達到預定的重復次數,或者,達到其他的終止條件。其中,上述顯示操作是指:顯示當前使用的分詞信息;上述調整操作是指:對當前使用的分詞信息進行修改;上述匹配處理是指:基于調整后的分詞信息進行所述請求信息與所述知識點的匹配處理。
[0120]本發明實施例的上述技術方案可以用于iBotCloud智能云服務平臺。
[0121]本發明實施例的技術方案允許用戶對系統識別的結果進行參與介入。當用戶沒有選擇系統推送的匹配后的問題時,可以根據用戶對分詞信息的修改,即通過編輯關鍵詞獲得更新后的語義推薦結果,從而得到滿足需求的自定義問句。借助于本發明實施例的技術方案,能夠提高智能機器人語義識別和匹配的準確率,提升用戶體驗,滿足個性化使用需求,更好的完善智能機器人服務質量與水平。
[0122]方法實施例二
[0123]實例I
[0124]根據本發明的實施例,提供了一種自動問答方法,圖9是本發明方法實施例二的實例I的自動問答方法的流程圖,如圖9所示,根據本發明實施例的自動問答方法包括如下處理:
[0125]步驟901,提供問答知識庫,問答知識庫包括多個知識點,每個知識點包括問題和答案。
[0126]在問答系統中,知識庫起著至關重要的作用,知識庫包括多個知識點,每個知識點包括問句和答案,所述問句可以包括一個標準問。具體地,知識庫中的知識點最原始和最簡單的形式就是平時常用的FAQ,一般的形式是“問-答”對,其中,該“問”就是標準問,該“答”就是答案。此外,知識庫中的每個知識點還可以有對應于一個標準問的一個或多個擴展問,該擴展問與標準問表達形式略有差異,但是表達的含義相同。
[0127]在知識庫中,標準問以及擴展問既可以采用普通問題形式,也可以采用語義表達式形式,其與現有技術相同,在此不再贅述。
[0128]步驟902,獲取用戶的請求信息。
[0129]在本發明實施例中,該請求信息可以通過語音識別、文字識別等多種方式獲取。在本發明實施例中,用戶的請求信息一般為用戶想要獲取某個答案所對應的問題信息。例如,用戶的請求信息可以是:如何設置彩鈴、如何申請寬帶等。
[0130]步驟903,對請求信息進行自動分詞,得到并顯示分詞信息。
[0131]在本發明實施例中,進行自動分詞時,一般是根據分詞詞典進行。在實際應用中,自動分詞處理可以采用字典雙向最大匹配法、viterbi方法、HMM方法和CRF方法中的一種或多種。
[0132]此外,與方法實施例一的實例I不同的是,在本發明實施例中,在進行分詞操作后,直接將分詞信息顯示給用戶。
[0133]步驟904,根據用戶操作對分詞信息進行調整。在本發明實施例中,用戶對分詞信息進行調整可以包括以下幾種形式至少之一:增加新的分詞信息、刪除原分詞信息、替換原分詞信息。
[0134]與方法實施例一不同的是,在進行匹配處理前,本發明實施例直接根據用戶操作對分詞信息進行調整。
[0135]也就是說,如果用戶需要修改分詞信息,則可以根據用戶的調整操作對該分詞信息進行調整。
[0136]在本發明實施例中,根據用戶操作對分詞信息進行調整后,還可以根據調整后的分詞信息更新分詞詞典,其中,分詞詞典用于對后續請求信息進行分詞。通過上述處理,可以使后續分詞處理更加的準確,擴大用戶使用過程中對關鍵詞的選擇范圍。
[0137]步驟905,基于調整后的分詞信息進行所述請求信息與所述知識點的匹配處理,當匹配成功時,直接向用戶發送答案;否則,重復上述顯示、調整、以及匹配處理,直到匹配成功或者達到預定的重復次數。
[0138]在步驟905中,匹配處理可以采用以下任一種方式:
[0139]方式一:通過語義相似度計算進行智能匹配,當存在語義相似度大于閾值時,匹配成功;
[0140]其中,通過方式一進行智能匹配成功后,所述向用戶發送答案采用以下方式:將最大語義相似度對應問題的答案直接發送給用戶;
[0141]方式二:通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功;
[0142]方式三:先通過語義相似度計算進行智能匹配,當存在語義相似度小于所述閾值時,再通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功。
[0143]其中,通過方式二和方式三進行模糊匹配成功后,將關鍵詞匹配成功的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案。
[0144]在智能匹配中,語義相似度計算是問答系統中關鍵的一步,其結果直接影響到整個系統的準確性。參與語義相似度計算的對象必須是對等的,為了計算知識點和用戶的請求信息(即用戶問句)的語義相似度,定義這個語義相似度為用戶問句與知識點中所有問句(包括所有標準問、擴展問及模板)的最大語義相似度。知識點中問句與用戶問句在計算語義相似度時可以通過傳統向量空間模型中的向量夾角余弦公式計算。
[0145]需要說明的是,通過如下方式確認是采用智能匹配還是采用模糊匹配,具體地,用戶的請求信息輸入后,引擎會根據用戶的問句進行分詞,在進行了分詞后,需要根據詞類計算該請求信息與智能問答知識庫中問題的語義相似度,若語義相似度大于或者等于預先設置的值,則進行抽象語義匹配,即智能匹配;若沒有達到預先設置的值,則進行關鍵詞匹配,即模糊匹配。
[0146]從上述描述可以看出,在本發明實施例中,智能機器人系統針對用戶輸入的問題會進行相應的知識匹配,可以包括三種匹配方式:分詞修改(重新語義推薦)、智能匹配、以及模糊匹配。優選地,執行上述三種匹配方式的順序為:分詞修改、智能匹配、模糊匹配,具體如下:
[0147]1、修改分詞(重新語義推薦):即用戶對分詞進行編輯修改,表明必須通過人工修改后系統重新語義推薦才能得到用戶需要的自定義問句。其中,分詞修改的過程包括:將問句拆分成若干個分詞,用戶調整分詞后,先與原始問句比照,將用戶調整過的詞錄入到分詞詞典,之后再進行語義推薦。
[0148]2、智能匹配:即語義推薦,首先通過匹配到的抽象語義進行識別,如果匹配成功,則向用戶推送相應的匹配結果,執行智能匹配且匹配成功表明匹配結果完全滿足用戶需求,如果匹配不成功或用戶不滿意匹配結果,則進行模糊匹配。
[0149]3、模糊匹配:即顯示分詞,根據分詞信息,進行關鍵詞匹配,如果匹配成功,則向用戶推送相應的匹配結果,執行模糊匹配且匹配成功表明匹配結果在一定程度上滿足用戶需求,但存在一部分的誤差,如果匹配不成功或用戶不滿意匹配結果,則重新修改分詞,直至得到用戶滿意的匹配結果或者達到預定的重復次數。
[0150]需要說明的是,本發明實施例的上述技術方案可以用于iBotCloud智能云服務平臺。
[0151]本發明實施例的技術方案允許用戶對系統識別的結果進行參與介入。當系統進行分詞后,直接將分詞信息顯示給用戶供用戶進行修改,即通過編輯關鍵詞獲得更新后的語義推薦結果。借助于本發明實施例的技術方案,能夠提高智能機器人語義識別和匹配的準確率,提升用戶體驗,滿足個性化使用需求,更好的完善智能機器人服務質量與水平。
[0152]實例2
[0153]根據本發明的實施例,提供了一種自動問答方法,圖11是本發明方法實施例二的實例2自動問答方法的流程圖,如圖11所示,根據本發明實施例的自動問答方法包括如下處理:
[0154]步驟1101,提供問答知識庫,問答知識庫包括多個知識點,每個知識點包括問題和答案;
[0155]在問答系統中,知識庫起著至關重要的作用,知識庫包括多個知識點,每個知識點包括問句和答案,所述問句可以包括一個標準問。具體地,知識庫中的知識點最原始和最簡單的形式就是平時常用的FAQ,一般的形式是“問-答”對,其中,該“問”就是標準問,該“答”就是答案。此外,知識庫中的每個知識點還可以有對應于一個標準問的一個或多個擴展問,該擴展問與標準問表達形式略有差異,但是表達的含義相同。
[0156]在知識庫中,標準問以及擴展問既可以采用普通問題形式,也可以采用語義表達式形式,其與現有技術相同,在此不再贅述。
[0157]步驟1102,獲取用戶的請求信息;
[0158]在本發明實施例中,該請求信息可以通過語音識別、文字識別等多種方式獲取。在本發明實施例中,用戶的請求信息一般為用戶想要獲取某個答案所對應的問題信息。例如,用戶的請求信息可以是:如何設置彩鈴、如何申請寬帶等。
[0159]步驟1103,對請求信息進行自動分詞,得到并顯示分詞信息;
[0160]在本發明實施例中,進行自動分詞時,一般是根據分詞詞典進行。在實際應用中,自動分詞處理可以采用字典雙向最大匹配法、viterbi方法、HMM方法和CRF方法中的一種或多種。
[0161 ]此外,與方法實施例一的實例I不同的是,在本發明實施例中,在進行分詞操作后,直接將分詞信息顯示給用戶。
[0162]步驟1104,根據用戶操作對分詞信息進行調整;
[0163]也就是說,如果用戶需要修改分詞信息,則可以根據用戶的調整操作對該分詞信息進行調整,如果用戶認為不需要修改分詞信息,則保持分詞信息不變。
[0164]在本發明實施例中,根據用戶操作對分詞信息進行調整后,還可以根據調整后的分詞信息更新分詞詞典,其中,分詞詞典用于對后續請求信息進行分詞。通過上述處理,可以使后續分詞處理更加的準確,擴大用戶使用過程中對關鍵詞的選擇范圍。
[0165]步驟1105,基于調整后的分詞信息進行所述請求信息與所述知識點的匹配處理,當匹配成功時,向用戶發送問題后,根據用戶的選擇發送對應的答案;否則,重復上述顯示、調整、以及匹配處理,直到匹配成功或者達到預定的重復次數。
[0166]具體地,在步驟1105中,匹配處理可以采用以下任一種方式:
[0167]方式一:通過語義相似度計算進行智能匹配,當存在語義相似度大于閾值時,匹配成功;其中,通過方式一進行智能匹配成功后,所述向用戶發送答案采用以下方式:將語義相似度大于閾值的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案;
[0168]方式二:通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功;
[0169]方式三:先通過語義相似度計算進行智能匹配,當存在語義相似度小于所述閾值時,再通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功。
[0170]其中,通過方式二和方式三進行模糊匹配成功后,將關鍵詞匹配成功的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案。
[0171]本發明實施例的技術方案允許用戶對系統識別的結果進行參與介入。當系統進行分詞后,直接將分詞信息顯示給用戶供用戶進行修改,即通過編輯關鍵詞獲得更新后的語義推薦結果,隨后,根據用戶的選擇的問題(即語義推薦結果),向用戶推送相應的答案。借助于本發明實施例的技術方案,能夠提高智能機器人語義識別和匹配的準確率,提升用戶體驗,滿足個性化使用需求,更好的完善智能機器人服務質量與水平。
[0172]裝置實施例一
[0173]根據本發明的實施例,提供了一種自動問答裝置,圖12是本發明裝置實施例一的自動問答裝置的結構示意圖,如圖12所示,根據本發明實施例的自動問答裝置包括:獲取模塊120、輸入模塊121、分詞模塊12 2、匹配模塊123、調整模塊124、輸出模塊125和控制模塊126,以下結合附圖,對本發明實施例的上述技術方案進行詳細說明。
[0174]獲取模塊120,用于獲取多個知識點,每個知識點包括問題和答案;
[0175]在問答系統中,獲取模塊120需要從知識庫獲取知識點,知識庫起著至關重要的作用,知識庫包括多個知識點,每個知識點包括問句和答案,所述問句可以包括一個標準問。具體地,知識庫中的知識點最原始和最簡單的形式就是平時常用的FAQ,一般的形式是“問_答”對,其中,該“問”就是標準問,該“答”就是答案。此外,知識庫中的每個知識點還可以有對應于一個標準問的一個或多個擴展問,該擴展問與標準問表達形式略有差異,但是表達的含義相同。
[0176]在知識庫中,標準問以及擴展問既可以采用普通問題形式,也可以采用語義表達式形式,其與現有技術相同,在此不再贅述。
[0177]輸入模塊121,用于獲取用戶的請求信息;
[0178]在本發明實施例中,該請求信息可以通過語音識別、文字識別等多種方式獲取。在本發明實施例中,用戶的請求信息一般為用戶想要獲取某個答案所對應的問題信息。例如,用戶的請求信息可以是:如何設置彩鈴、如何申請寬帶等。
[0179]分詞模塊122,用于對請求信息進行自動分詞,得到分詞信息;
[0180]在本發明實施例中,進行自動分詞時,一般是根據分詞詞典進行。在實際應用中,自動分詞處理可以采用字典雙向最大匹配法、viterbi方法、HMM方法和CRF方法中的一種或多種。
[0181]例如,請求信息為:如何設置彩鈴,則分詞信息為:如何、設置、彩鈴。
[0182]匹配模塊123,用于基于分詞信息或調整后的分詞信息進行請求信息與知識點的匹配處理;匹配模塊123具體用于:
[0183]采用以下任一種方式進行匹配處理:
[0184]方式一:通過語義相似度計算進行智能匹配,當存在語義相似度大于閾值時,匹配成功;
[0185]方式二:通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功;
[0186]方式三:先通過語義相似度計算進行智能匹配,當存在語義相似度小于閾值時,再通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功。
[0187]在智能匹配中,語義相似度計算是問答系統中關鍵的一步,其結果直接影響到整個系統的準確性。參與語義相似度計算的對象必須是對等的,為了計算知識點和用戶的請求信息(即用戶問句)的語義相似度,定義這個語義相似度為用戶問句與知識點中所有問句(包括所有標準問、擴展問及模板)的最大語義相似度。知識點中問句與用戶問句在計算語義相似度時可以通過傳統向量空間模型中的向量夾角余弦公式計算。
[0188]需要說明的是,在本發明實施例中,通過如下方式確認是采用智能匹配還是采用模糊匹配,具體地,用戶的請求信息輸入后,引擎會根據用戶的問句進行分詞,在進行了分詞后,需要根據詞類計算該請求信息與智能問答知識庫中問題的語義相似度,若語義相似度大于或者等于預先設置的值,則進行抽象語義匹配,即智能匹配;若沒有達到預先設置的值,則進行關鍵詞匹配,即模糊匹配。
[0189]在本發明的其它實施例中,還可以僅采用智能匹配或者模糊匹配進行請求信息與知識點的匹配處理,其不限制本發明的保護范圍。
[0190]調整模塊124,用于當基于分詞信息進行請求信息與知識點的匹配處理失敗時,根據用戶操作對分詞信息進行調整;
[0191]此外,在基于分詞信息進行請求信息與知識點的匹配失敗時,說明基于該分詞信息不能夠匹配到合適的答案,在上述情況下,本發明實施例可以顯示分詞信息,并提供操作接口供用戶修改該分詞信息,根據用戶操作對分詞信息進行調整。在本發明實施例中,用戶對分詞信息進行調整可以包括以下幾種形式至少之一:增加新的分詞信息、刪除原分詞信息、替換原分詞信息。例如,原分詞信息為:如何、設置、彩鈴,修改后的分詞信息為:如何用手機設置彩鈴,在這個例子中,增加了“用手機”這一新的分詞信息。又如,在另一例子中,因新詞無法識別,導致分詞錯誤,此時通過調整可以對相同的請求信息給出不同的分詞結果。
[0192]輸出模塊125,用于當匹配成功時,向用戶發送答案;輸出模塊125具體用于:
[0193]在匹配模塊123通過語義相似度計算進行智能匹配成功后,向用戶發送答案采用以下任一種方式:
[0194]將最大語義相似度對應問題的答案直接發送給用戶;
[0195]將語義相似度大于閾值的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案;
[0196]在匹配模塊123通過關鍵詞搜索進行模糊匹配成功后,向用戶發送答案的方式包括:
[0197]將關鍵詞匹配成功的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案。
[0198]控制模塊126,用于在匹配模塊123匹配成功的情況下,調用輸出模塊125,在匹配模塊123匹配失敗的情況下,調用調整模塊124、以及匹配模塊123,直到匹配成功或者達到預定的重復次數。
[0199 ]優選地,在本發明實施例中,裝置還包括:
[0200]顯示模塊,用于分詞模塊122對請求信息進行自動分詞之后且匹配模塊123基于分詞信息進行請求信息與知識點的匹配處理之前,顯示分詞信息;或者,匹配模塊123基于分詞信息進行請求信息與知識點的匹配處理失敗之后且調整模塊124根據用戶操作對分詞信息進行調整之前,顯示分詞信息。
[0201]更新模塊,用于根據調整后的分詞信息更新分詞詞典,其中,分詞詞典用于對后續請求信息進行分詞。
[0202]從上述描述可以看出,在本發明實施例中,智能機器人系統針對用戶輸入的問題會進行相應的知識匹配,可以包括三種匹配方式:智能匹配、模糊匹配、以及分詞修改(重新語義推薦)。優選地,執行上述三種匹配方式的順序為:智能匹配、模糊匹配、分詞修改,具體如下:
[0203]1、智能匹配:即語義推薦,首先通過匹配到的抽象語義進行識別,如果匹配成功,則向用戶推送相應的匹配結果,執行智能匹配且匹配成功表明匹配結果完全滿足用戶需求,如果匹配不成功或用戶不滿意匹配結果,則進行模糊匹配。
[0204]2、模糊匹配:即顯示分詞,根據分詞信息,進行關鍵詞匹配,如果匹配成功,則向用戶推送相應的匹配結果,執行模糊匹配且匹配成功表明匹配結果在一定程度上滿足用戶需求,但存在一部分的誤差,如果匹配不成功或用戶不滿意匹配結果,則修改分詞。
[0205]3、修改分詞(重新語義推薦):即用戶對分詞進行編輯修改,表明“智能匹配”和“模糊匹配”的結果都無法滿足用戶需求且與之存在很大差距,必須通過人工修改后系統重新語義推薦才能得到用戶需要的自定義問句。其中,分詞修改的過程包括:將問句拆分成若干個分詞,用戶調整分詞后,先與原始問句比照,將用戶調整過的詞錄入到分詞詞典,之后再重新進行語義推薦和/或模糊匹配,直至得到用戶滿意的匹配結果或者達到預定的重復次數。
[0206]本發明實施例的技術方案允許用戶對系統識別的結果進行參與介入。當系統進行的“智能匹配”和“模糊匹配”都不能滿足用戶的需求時,可以根據用戶對“模糊匹配”中的分詞信息的修改,即通過編輯關鍵詞獲得更新后的語義推薦結果,從而得到滿足需求的自定義問句。借助于本發明實施例的技術方案,能夠提高智能機器人語義識別和匹配的準確率,提升用戶體驗,滿足個性化使用需求,更好的完善智能機器人服務質量與水平。關鍵詞匹配
[0207]裝置實施例二
[0208]根據本發明的實施例,提供了一種自動問答裝置,圖13是本發明裝置實施例二的自動問答裝置的的結構示意圖,如圖13所示,根據本發明實施例的自動問答裝置包括:獲取模塊130、輸入模塊131、分詞模塊132、顯不模塊133、調整模塊134、匹配模塊135、輸出模塊136和控制模塊137,以下結合附圖,對本發明實施例的技術方案進行說明。
[0209]獲取模塊130,用于獲取多個知識點,每個知識點包括問題和答案;
[0210]在本發明實施例中,獲取模塊130從知識庫獲取知識點,在問答系統中,知識庫起著至關重要的作用,知識庫包括多個知識點,每個知識點包括問句和答案,所述問句可以包括一個標準問。具體地,知識庫中的知識點最原始和最簡單的形式就是平時常用的FAQ,一般的形式是“問-答”對,其中,該“問”就是標準問,該“答”就是答案。此外,知識庫中的每個知識點還可以有對應于一個標準問的一個或多個擴展問,該擴展問與標準問表達形式略有差異,但是表達的含義相同。
[0211]在知識庫中,標準問以及擴展問既可以采用普通問題形式,也可以采用語義表達式形式,其與現有技術相同,在此不再贅述。
[0212]輸入模塊131,用于獲取用戶的請求信息;在本發明實施例中,該請求信息可以通過語音識別、文字識別等多種方式獲取。在本發明實施例中,用戶的請求信息一般為用戶想要獲取某個答案所對應的問題信息。例如,用戶的請求信息可以是:如何設置彩鈴、如何申請寬帶等。
[0213]分詞模塊132,用于對請求信息進行自動分詞,得到分詞信息;
[0214]在本發明實施例中,進行自動分詞時,一般是根據分詞詞典進行。在實際應用中,自動分詞處理可以采用字典雙向最大匹配法、viterbi方法、HMM方法和CRF方法中的一種或多種。
[0215]顯示模塊133,用于在分詞模塊132得到分詞信息后,且調整模塊134根據用戶操作對分詞信息進行調整前,顯示分詞信息;
[0216]此外,與裝置實施例一不同的是,在本發明實施例中,在進行分詞操作后,直接將分詞信息顯示給用戶。
[0217]調整模塊134,用于根據用戶操作對分詞信息進行調整;調整模塊134采用以下方式至少之一對所述分詞信息進行調整:增加新的分詞信息、刪除原分詞信息、替換原分詞信息。
[0218]也就是說,如果用戶需要修改分詞信息,則可以根據用戶的調整操作對該分詞信息進行調整。
[0219]匹配模塊135,用于基于調整后的分詞信息進行請求信息與知識點的匹配處理;匹配模塊135具體用于:
[0220]采用以下任一種方式進行匹配處理:
[0221]通過語義相似度計算進行智能匹配,當存在語義相似度大于閾值時,匹配成功;
[0222]通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功;
[0223]先通過語義相似度計算進行智能匹配,當存在語義相似度小于閾值時,再通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功。
[0224]輸出模塊136,用于當匹配成功時,向用戶發送答案;輸出模塊136具體用于:
[0225]在匹配模塊135通過語義相似度計算進行智能匹配成功后,向用戶發送答案采用以下任一種方式:
[0226]將最大語義相似度對應問題的答案直接發送給用戶;
[0227]將語義相似度大于閾值的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案;
[0228]在匹配模塊135通過關鍵詞搜索進行模糊匹配成功后,向用戶發送答案的方式包括:
[0229]將關鍵詞匹配成功的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案。
[0230]匹配處理可以采用以下任一種方式:
[0231 ]方式一:通過語義相似度計算進行智能匹配,當存在語義相似度大于閾值時,匹配成功;
[0232]其中,通過方式一進行智能匹配成功后,向用戶發送答案采用以下方式:將最大語義相似度對應問題的答案直接發送給用戶;
[0233]方式二:通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功;
[0234]方式三:先通過語義相似度計算進行智能匹配,當存在語義相似度小于閾值時,再通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功。
[0235]其中,通過方式二和方式三進行模糊匹配成功后,將關鍵詞匹配成功的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案。
[0236]在智能匹配中,語義相似度計算是問答系統中關鍵的一步,其結果直接影響到整個系統的準確性。參與語義相似度計算的對象必須是對等的,為了計算知識點和用戶的請求信息(即用戶問句)的語義相似度,定義這個語義相似度為用戶問句與知識點中所有問句(包括所有標準問、擴展問及模板)的最大語義相似度。知識點中問句與用戶問句在計算語義相似度時可以通過傳統向量空間模型中的向量夾角余弦公式計算。
[0237]需要說明的是,通過如下方式確認是采用智能匹配還是采用模糊匹配,具體地,用戶的請求信息輸入后,引擎會根據用戶的問句進行分詞,在進行了分詞后,需要根據詞類計算該請求信息與智能問答知識庫中問題的語義相似度,若語義相似度大于或者等于預先設置的值,則進行抽象語義匹配,即智能匹配;若沒有達到預先設置的值,則進行關鍵詞匹配,即模糊匹配。
[0238]控制模塊137,用于在匹配模塊135匹配成功的情況下,調用輸出模塊136,在匹配模塊135匹配失敗的情況下,調用顯示模塊133、調整模塊134、以及匹配模塊135,直到匹配成功或者達到預定的重復次數。
[0239]優選地,上述裝置進一步包括:
[0240]更新模塊,用于根據調整后的分詞信息更新分詞詞典,其中,分詞詞典用于對后續請求信息進行分詞。
[0241]從上述描述可以看出,在本發明實施例中,智能機器人系統針對用戶輸入的問題會進行相應的知識匹配,可以包括三種匹配方式:分詞修改(重新語義推薦)、智能匹配、以及模糊匹配。優選地,執行上述三種匹配方式的順序為:分詞修改、智能匹配、模糊匹配,具體如下:
[0242]1、修改分詞(重新語義推薦):即用戶對分詞進行編輯修改,表明必須通過人工修改后系統重新語義推薦才能得到用戶需要的自定義問句。其中,分詞修改的過程包括:將問句拆分成若干個分詞,用戶調整分詞后,先與原始問句比照,將用戶調整過的詞錄入到分詞詞典,之后再進行語義推薦。
[0243]2、智能匹配:即語義推薦,首先通過匹配到的抽象語義進行識別,如果匹配成功,則向用戶推送相應的匹配結果,執行智能匹配且匹配成功表明匹配結果完全滿足用戶需求,如果匹配不成功或用戶不滿意匹配結果,則進行模糊匹配。
[0244]3、模糊匹配:即顯示分詞,根據分詞信息,進行關鍵詞匹配,如果匹配成功,則向用戶推送相應的匹配結果,執行模糊匹配且匹配成功表明匹配結果在一定程度上滿足用戶需求,但存在一部分的誤差,如果匹配不成功或用戶不滿意匹配結果,則重新修改分詞,直至得到用戶滿意的匹配結果或者達到預定的重復次數。
[0245]需要說明的是,本發明實施例的上述技術方案可以用于iBotCloud智能云服務平臺。
[0246]關鍵詞匹配關鍵詞匹配本發明實施例的技術方案允許用戶對系統識別的結果進行參與介入。當系統進行分詞后,直接將分詞信息顯示給用戶供用戶進行修改,即通過編輯關鍵詞獲得更新后的語義推薦結果,隨后,根據用戶的選擇的問題(即語義推薦結果),向用戶推送相應的答案。借助于本發明實施例的技術方案,能夠提高智能機器人語義識別和匹配的準確率,提升用戶體驗,滿足個性化使用需求,更好的完善智能機器人服務質量與水平。
[0247]顯然,本領域的技術人員可以對本發明進行各種改動和變型而不脫離本發明的精神和范圍。這樣,倘若本發明的這些修改和變型屬于本發明權利要求及其等同技術的范圍之內,則本發明也意圖包含這些改動和變型在內。
[0248]在此提供的算法和顯示不與任何特定計算機、虛擬系統或者其它設備固有相關。各種通用系統也可以與基于在此的示教一起使用。根據上面的描述,構造這類系統所要求的結構是顯而易見的。此外,本發明也不針對任何特定編程語言。應當明白,可以利用各種編程語言實現在此描述的本發明的內容,并且上面對特定語言所做的描述是為了披露本發明的最佳實施方式。
[0249]在此處所提供的說明書中,說明了大量具體細節。然而,能夠理解,本發明的實施例可以在沒有這些具體細節的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。
[0250]類似地,應當理解,為了精簡本公開并幫助理解各個發明方面中的一個或多個,在上面對本發明的示例性實施例的描述中,本發明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面的權利要求書所反映的那樣,發明方面在于少于前面公開的單個實施例的所有特征。因此,遵循【具體實施方式】的權利要求書由此明確地并入該【具體實施方式】,其中每個權利要求本身都作為本發明的單獨實施例。
[0251]本領域那些技術人員可以理解,可以對實施例中的客戶端中的模塊進行自適應性地改變并且把它們設置在與該實施例不同的一個或多個客戶端中。可以把實施例中的模塊組合成一個模塊,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者客戶端的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
[0252]此外,本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發明的范圍之內并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
[0253]本發明的各個部件實施例可以以硬件實現,或者以在一個或者多個處理器上運行的軟件模塊實現,或者以它們的組合實現。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數字信號處理器(DSP)來實現根據本發明實施例的加載有排序網址的客戶端中的一些或者全部部件的一些或者全部功能。本發明還可以實現為用于執行這里所描述的方法的一部分或者全部的設備或者裝置程序(例如,計算機程序和計算機程序產品)。這樣的實現本發明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
[0254]應該注意的是上述實施例對本發明進行說明而不是對本發明進行限制,并且本領域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中,不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。
【主權項】
1.一種自動問答方法,其特征在于,包括: 提供問答知識庫,所述問答知識庫包括多個知識點,每個所述知識點包括問題和答案; 獲取用戶的請求信息; 對所述請求信息進行自動分詞,得到分詞信息; 基于所述分詞信息進行所述請求信息與所述知識點的匹配處理,當匹配成功時,向用戶發送答案;否則,根據用戶操作對所述分詞信息進行調整,基于調整后的分詞信息進行所述請求信息與所述知識點的匹配處理,當匹配成功時,向用戶發送答案;否則,重復上述調整、以及匹配處理,直到匹配成功或者達到預定的重復次數。2.如權利要求1所述的方法,其特征在于,所述方法進一步包括: 對所述請求信息進行自動分詞之后且基于所述分詞信息進行所述請求信息與所述知識點的匹配處理之前,顯示所述分詞信息;或者, 基于所述分詞信息進行所述請求信息與所述知識點的匹配處理失敗之后且根據用戶操作對所述分詞信息進行調整之前,顯示所述分詞信息。3.如權利要求1所述的方法,其特征在于,所述匹配處理采用以下任一種方式: 通過語義相似度計算進行智能匹配,當存在語義相似度大于閾值時,匹配成功; 通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功; 先通過語義相似度計算進行智能匹配,當存在語義相似度小于所述閾值時,再通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功。4.如權利要求3所述的方法,其特征在于,通過語義相似度計算進行智能匹配成功后,所述向用戶發送答案采用以下任一種方式: 將最大語義相似度對應問題的答案直接發送給用戶; 將語義相似度大于閾值的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案; 通過關鍵詞搜索進行模糊匹配成功后,所述向用戶發送答案的方式包括: 將關鍵字匹配成功的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案。5.如權利要求1所述的方法,其特征在于,根據用戶操作對所述分詞信息進行調整的方式包括以下至少之一:增加新的分詞信息、刪除原分詞信息、替換原分詞信息。6.如權利要求1所述的方法,其特征在于,根據用戶操作對所述分詞信息進行調整之后,所述方法進一步包括: 根據調整后的分詞信息更新分詞詞典,其中,所述分詞詞典用于對后續請求信息進行分詞。7.—種自動問答方法,其特征在于,包括: 提供問答知識庫,所述問答知識庫包括多個知識點,每個所述知識點包括問題和答案; 獲取用戶的請求信息; 對所述請求信息進行自動分詞,得到并顯示分詞信息; 根據用戶操作對所述分詞信息進行調整;基于調整后的分詞信息進行所述請求信息與所述知識點的匹配處理,當匹配成功時,向用戶發送答案;否則,重復上述顯示、調整、以及匹配處理,直到匹配成功或者達到預定的重復次數。8.如權利要求7所述的方法,其特征在于,所述匹配處理采用以下任一種方式: 通過語義相似度計算進行智能匹配,當存在語義相似度大于閾值時,匹配成功; 通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功; 先通過語義相似度計算進行智能匹配,當存在語義相似度小于所述閾值時,再通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功。9.如權利要求7所述的方法,其特征在于,通過語義相似度計算進行智能匹配成功后,所述向用戶發送答案采用以下任一種方式: 將最大語義相似度對應問題的答案直接發送給用戶; 將語義相似度大于閾值的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案; 通過關鍵詞搜索進行模糊匹配成功后,所述向用戶發送答案的方式包括: 將關鍵字匹配成功的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案。10.如權利要求7所述的方法,其特征在于,根據用戶操作對所述分詞信息進行調整的方式包括以下至少之一:增加新的分詞信息、刪除原分詞信息、替換原分詞信息。11.如權利要求7所述的方法,其特征在于,根據用戶操作對所述分詞信息進行調整之后,所述方法進一步包括: 根據調整后的所述分詞信息更新分詞詞典,其中,所述分詞詞典用于對后續請求信息進行分詞。12.—種自動問答裝置,其特征在于,包括:獲取模塊、輸入模塊、分詞模塊、匹配模塊、調整模塊、輸出模塊和控制模塊,其中: 獲取模塊,用于獲取多個知識點,每個所述知識點包括問題和答案; 輸入模塊,用于獲取用戶的請求信息; 分詞模塊,用于對所述請求信息進行自動分詞,得到分詞信息; 匹配模塊,用于基于所述分詞信息或調整后的分詞信息進行所述請求信息與所述知識點的匹配處理; 調整模塊,用于當基于所述分詞信息進行所述請求信息與所述知識點的匹配處理失敗時,根據用戶操作對所述分詞信息進行調整; 輸出模塊,用于當匹配成功時,向用戶發送答案; 控制模塊,用于在所述匹配模塊匹配成功的情況下,調用所述輸出模塊,在所述匹配模塊匹配失敗的情況下,調用所述調整模塊、以及所述匹配模塊,直到匹配成功或者達到預定的重復次數。13.如權利要求12所述的裝置,其特征在于,所述裝置還包括: 顯示模塊,用于所述分詞模塊對所述請求信息進行自動分詞之后且所述匹配模塊基于所述分詞信息進行所述請求信息與所述知識點的匹配處理之前,顯示所述分詞信息;或者,所述匹配模塊基于所述分詞信息進行所述請求信息與所述知識點的匹配處理失敗之后且所述調整模塊根據用戶操作對所述分詞信息進行調整之前,顯示所述分詞信息。14.如權利要求12所述的裝置,其特征在于,所述匹配模塊具體用于: 采用以下任一種方式進行匹配處理: 通過語義相似度計算進行智能匹配,當存在語義相似度大于閾值時,匹配成功; 通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功; 先通過語義相似度計算進行智能匹配,當存在語義相似度小于所述閾值時,再通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功。15.如權利要求14所述的裝置,其特征在于,所述輸出模塊具體用于: 在所述匹配模塊通過語義相似度計算進行智能匹配成功后,所述向用戶發送答案采用以下任一種方式: 將最大語義相似度對應問題的答案直接發送給用戶; 將語義相似度大于閾值的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案; 在所述匹配模塊通過關鍵詞搜索進行模糊匹配成功后,所述向用戶發送答案的方式包括: 將關鍵字匹配成功的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案。16.如權利要求12所述的裝置,其特征在于,所述調整模塊具體用于: 采用以下方式至少之一對所述分詞信息進行調整:增加新的分詞信息、刪除原分詞信息、替換原分詞信息。17.如權利要求12所述的裝置,其特征在于,所述裝置進一步包括: 更新模塊,用于根據調整后的分詞信息更新分詞詞典,其中,所述分詞詞典用于對后續請求信息進行分詞。18.—種自動問答裝置,其特征在于,包括:獲取模塊、輸入模塊、分詞模塊、顯示模塊、調整模塊、匹配模塊、輸出模塊和控制模塊,其中: 獲取模塊,用于獲取多個知識點,每個所述知識點包括問題和答案; 輸入模塊,用于獲取用戶的請求信息; 分詞模塊,用于對所述請求信息進行自動分詞,得到分詞信息; 顯示模塊,用于在所述分詞模塊得到分詞信息后,且調整模塊根據用戶操作對所述分詞信息進行調整前,顯示所述分詞信息; 調整模塊,用于根據用戶操作對所述分詞信息進行調整; 匹配模塊,用于基于調整后的分詞信息進行所述請求信息與所述知識點的匹配處理; 輸出模塊,用于當匹配成功時,向用戶發送答案; 控制模塊,用于在所述匹配模塊匹配成功的情況下,調用所述輸出模塊,在所述匹配模塊匹配失敗的情況下,調用所述顯示模塊、所述調整模塊、以及所述匹配模塊,直到匹配成功或者達到預定的重復次數。19.如權利要求18所述的裝置,其特征在于,所述匹配模塊具體用于: 采用以下任一種方式進行匹配處理: 通過語義相似度計算進行智能匹配,當存在語義相似度大于閾值時,匹配成功; 通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功; 先通過語義相似度計算進行智能匹配,當存在語義相似度小于所述閾值時,再通過關鍵詞搜索進行模糊匹配,當匹配結果中有用戶選擇的問題時,匹配成功。20.如權利要求19所述的裝置,其特征在于,所述輸出模塊具體用于: 在所述匹配模塊通過語義相似度計算進行智能匹配成功后,所述向用戶發送答案采用以下任一種方式: 將最大語義相似度對應問題的答案直接發送給用戶; 將語義相似度大于閾值的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案; 在所述匹配模塊通過關鍵詞搜索進行模糊匹配成功后,所述向用戶發送答案的方式包括: 將關鍵字匹配成功的全部或部分問題發送給用戶,并根據用戶的選擇,向用戶發送所選問題對應的答案。21.如權利要求18所述的裝置,其特征在于,所述調整模塊具體用于: 采用以下方式至少之一對所述分詞信息進行調整:增加新的分詞信息、刪除原分詞信息、替換原分詞信息。22.如權利要求18所述的裝置,其特征在于,所述裝置進一步包括: 更新模塊,用于根據調整后的分詞信息更新分詞詞典,其中,所述分詞詞典用于對后續請求信息進行分詞。
【文檔編號】G06F17/30GK106095988SQ201610452735
【公開日】2016年11月9日
【申請日】2016年6月21日
【發明人】劉海瀚, 朱頻頻
【申請人】上海智臻智能網絡科技股份有限公司