本申請涉及計算機技術(shù)領(lǐng)域,尤其涉及一種問答語料的收集方法及裝置。
背景技術(shù):
隨著互聯(lián)網(wǎng)的迅速發(fā)展,越來越多的用戶通過互聯(lián)網(wǎng)獲取信息或進行相互通訊,如,問答平臺作為一種網(wǎng)絡(luò)中獲取信息和進行信息交流的平臺普遍流行起來,然而隨著問答平臺的普遍流行,尤其是自動問答平臺的普遍流行,用戶對自動問答平臺回答問題的準確性要求也越來越高。而本領(lǐng)域技術(shù)人員公知,自動問答平臺主要是通過具有即時通訊功能的問答機器人來對用戶的問題進行解答,其中,問答機器人是在對大量預(yù)先收集的問答語料學(xué)習(xí)的基礎(chǔ)上來對實時接收的用戶問題進行解答的,此處的問答語料是指用戶的問題以及對應(yīng)的答案的一個問答對。因此,預(yù)先收集的問答語料的質(zhì)量和數(shù)量對提高自動問答平臺回答問題的準確性起著關(guān)鍵性的作用。
現(xiàn)有技術(shù)中,主要是通過人工來收集問答語料,之后再通過人工將收集的問答語料標記為準確語料和不準確語料來供問答機器人進行學(xué)習(xí),然而該方法會耗費大量的人力資源,這增加了問答機器人學(xué)習(xí)的成本;此外,通過人工收集問答語料會極大的影響問答語料收集的效率,且人工收集的問答語料比較有限,從而影響問答機器人學(xué)習(xí)的問答語料的全面性,進而會影響自動問答平臺解答用戶問題的準確性。
技術(shù)實現(xiàn)要素:
本申請實施例提供了一種問答語料的收集方法及裝置,可以提高問答語 料收集的效率和全面性。
第一方面,提供了一種問答語料的收集方法,該方法包括:
在問答平臺根據(jù)接收的用戶的文本問題,輸出與所述文本問題對應(yīng)的至少一個答案時,判斷是否接收到用于從所述至少一個答案中選取目標答案的選擇指令;
若接收到所述選擇指令,則將所述文本問題與所述目標答案收集為第一語料,并為所述第一語料添加第一標識信息,其中,所述第一標識信息用于標識所述文本問題與所述目標答案為正確問答對;
若未接收到所述選擇指令,則將所述文本問題與所述至少一個答案收集為第二語料,并為所述第二語料添加第二標識信息,其中,所述第二標識信息用于標識所述文本問題與所述至少一個答案中的每個答案為不正確問答對。
第二方面,提供了一種問答語料的收集裝置,該裝置包括:判斷單元和收集單元;
所述判斷單元,用于在問答平臺根據(jù)接收的用戶的文本問題,輸出與所述文本問題對應(yīng)的至少一個答案時,判斷是否接收到用于從所述至少一個答案中選取目標答案的選擇指令;
所述收集單元,用于若所述判斷單元判斷接收到所述選擇指令,則將所述文本問題與所述目標答案收集為第一語料,并為所述第一語料添加第一標識信息,其中,所述第一標識信息用于標識所述文本問題與所述目標答案為正確問答對;
所述收集單元,還用于若所述判斷單元判斷未接收到所述選擇指令,則將所述文本問題與所述至少一個答案收集為第二語料,并為所述第二語料添加第二標識信息,其中,所述第二標識信息用于標識所述文本問題與所述至少一個答案中的每個答案為不正確問答對。
本申請?zhí)峁┑膯柎鹫Z料的收集方法及裝置,是在機器人輔助問答平臺實時對用戶的文本問題進行解答的過程中來自動收集問答語料的,從而避免了 現(xiàn)有技術(shù)中通過人工收集問答語料而帶來的收集效率低以及成本高的問題;此外,由于用戶實時提問的問題多種多樣,因此,通過對用戶實時提問的文本問題以及對應(yīng)答案進行收集,可以提高問答語料收集的全面性;根據(jù)收集的問答語料對問答模型進行訓(xùn)練之后,從而可以進一步提高自動問答平臺解答問題的準確性。
附圖說明
圖1為本申請一種實施例提供的問答語料的收集方法流程圖;
圖2為本申請?zhí)峁┑膯柎鹛幚矸椒ㄊ疽鈭D;
圖3為本申請另一種實施例提供的問答語料的收集裝置示意圖。
具體實施方式
下面結(jié)合附圖,對本發(fā)明的實施例進行描述。
本申請實施例提供的問答語料的收集方法及裝置,適用于各種需要為用戶提供答案或解決方案的場景,例如,網(wǎng)絡(luò)中的問答平臺等,尤其適用于有客服人員參與的問答平臺,也即尤其適用于半自動化的問答平臺。
本申請的半自動化的問答平臺可以包括人機交互模塊和機器人核心模塊,其中,人機交互模塊也可以稱為人機交互界面,用于與用戶或者客服人員(也稱客服小二)進行互動,如,問答平臺通過人機交互模塊可以接收用戶所提問的原始問題,并可以接收客服人員在對用戶所提問的原始問題進行規(guī)范化描述后得到的文本問題;此外,還可以接收當用戶確定規(guī)范化描述的文本問題符合其原始問題的語義后輸入的確認指令;人機交互模塊在接收到用戶輸入的確認指令之后,就可以將規(guī)范化描述的文本問題發(fā)送給機器人核心模塊。機器人核心模塊用于對規(guī)范化描述的文本問題進行解答。具體地,可以預(yù)先收集問答語料,此處的問答語料是指用戶的問題以及對應(yīng)的答案的一個問答對;之后通過對上述預(yù)先收集的問答語料進行學(xué)習(xí)來構(gòu)建問答模型 (也稱問答機器人);在構(gòu)建好上述問答模型之后,當接收到用戶的新的文本問題時,就可以將該新的文本問題輸入到問答模型中,并將問答模型輸出的結(jié)果作為上述新的文本問題對應(yīng)的答案。
在實際應(yīng)用中,用戶在使用產(chǎn)品或服務(wù)而遇到問題時,一般會先通過自動問答平臺(如,支付寶自助服務(wù)渠道)尋求解答,當上述問題通過自動問答平臺得不到解答時,則通過在線人工服務(wù)進行咨詢。需要說明的是,雖然客服人員在交互中能快速識別用戶的問題,且在語義理解和定位用戶的問題上優(yōu)于機器,但是客服人員在已知用戶的問題后,在答案檢索能力以及快速輸出能力上遠遠不如機器,因此,本申請?zhí)岢隽巳藱C互相吸納對方優(yōu)點的思想,即將人與機器進行了結(jié)合(即人在確認問題后,可以通過問答平臺上機器人是助手實時推送答案,進行點選確認指令),從而實現(xiàn)了半自動化的問答平臺。也即當用戶的問題通過自動問答平臺等不到解決時,通過本申請?zhí)岢龅陌胱詣踊膯柎鹌脚_進行解決。
以下將通過實施例的方式來介紹本申請的半自動化的問答平臺解決用戶的問題的具體過程,以及在解決用戶的問題的過程中如何對問答語料進行自動化收集,以提高問答語料收集的效率和全面性。
圖1為本申請一種實施例提供的問答語料的收集方法流程圖。所述方法的執(zhí)行主體可以為具有處理能力的設(shè)備:服務(wù)器或者系統(tǒng)或者裝置,如圖1所示,所述方法具體可以包括:
步驟110,在問答平臺根據(jù)接收的用戶的文本問題,輸出與所述文本問題對應(yīng)的至少一個答案時,判斷是否接收到用于從所述至少一個答案中選取目標答案的選擇指令。
此處的文本問題是對所述用戶所提問的原始問題的規(guī)范化描述。
在本申請中,當用戶的問題在通過自動問答平臺得不到解答時,其通過本申請的半自動化的問答平臺尋求解答。參見圖2所示的本申請?zhí)峁┑膯柎鹛幚矸椒ㄊ疽鈭D,圖2中,在進入本申請的半自動化的問答平臺之后,客服 人員可以先與用戶進行交流,以確定用戶所提問的原始問題的語義,即先利用客服人員在交互中能快速識別問題、定位問題的優(yōu)點;之后在理解用戶所提問的原始問題的語義的基礎(chǔ)上對用戶的原始問題進行規(guī)范化描述,以形成用戶的文本問題;當用戶確認形成的文本問題符合其語義時,問答平臺中的人機交互模塊就可以接收到用戶輸入的確認指令。
舉例來說,用戶所提問的原始問題為“從支付寶賬戶導(dǎo)出來一筆錢到中國銀行銀行卡收費嗎?”,客服人員可以將用戶的語義定位為想了解支付包跨行轉(zhuǎn)賬的收費情況,因此,可以將上述原始問題規(guī)范化描述為“您是想了解支付寶跨行轉(zhuǎn)賬(到中國銀行)的收費情況嗎?”,在用戶輸入“是,是的,對,ok”等類似的答案時,則可以解釋為接收到了用戶輸入的確認指令。當然,在實際應(yīng)用中,用戶所提問的原始問題可能語義更模糊,客服人員需要與用戶進行多次會話才能最終確定用戶的語義。
在人機交互模塊接收到用戶輸入的確認指令之后,就可以將上述規(guī)范化描述的問題(即文本問題)推送給機器人核心模塊,機器人核心模塊包括了五個處理單元:基礎(chǔ)搜索、問答搜索、交互式機器人、閑聊以及精準推薦,其中,基礎(chǔ)搜索也可以稱為關(guān)鍵詞搜索,用于將從文本問題中提取的關(guān)鍵詞與問答庫中的文本進行匹配搜索,以確定文本問題的答案,此處,問答庫中的文本是由人工預(yù)先搜集的;問答搜索用于將接收的文本問題與預(yù)先收集的問答語料中的每個問答對進行匹配,將相匹配的問答對的答案作為文本問題對應(yīng)的答案,此處的問答語料是在客服人員對用戶的問題進行解答的過程中記錄的;交互式機器人用于在具有問答平臺的功能的系統(tǒng)(如,支付寶系統(tǒng))與其它應(yīng)用程序(如,滴滴打車)相結(jié)合時,根據(jù)上下文語義向用戶反向提問相應(yīng)的問題,比如,用戶打車到“××大廈”,交互式機器人可以提問:請問起點和時間是什么;閑聊用于與用戶進行業(yè)務(wù)無關(guān)的日常聊天;精準推薦用于結(jié)合用戶當前環(huán)境信息,向用戶推薦與用戶當前操作相關(guān)的信息,如,在用戶多次輸入密碼錯誤的情況下,可以向用戶推薦密碼忘記的情況的相關(guān) 處理步驟。
綜上,機器人核心模塊中的五個處理單元是并行的,在機器人核心模塊接收到用戶的文本問題之后,五個處理單元均可以對用戶的文本問題進行解答,只是在不同的場景下,五個處理單元的優(yōu)先級可能不相同。如,在本申請實施例的場景下,“問答搜索”具有較高的優(yōu)先級,從而該處理單元輸出的答案的分值權(quán)重也會較高,也即在五個處理單元均輸出答案的情況下,“問答搜索”輸出的答案可能排在最前面。
以“問答搜索”對用戶的文本問題進行解答為例來說,問答搜索”在接收到規(guī)范化描述的問題之后,也即在接收到用戶的文本問題之后,可以將用戶的文本問題輸入預(yù)設(shè)模型,并將預(yù)設(shè)模型輸出的至少一個結(jié)果作為與文本問題對應(yīng)的至少一個答案。此處,預(yù)設(shè)模型是預(yù)定的用于根據(jù)輸入的問題輸出該問題對應(yīng)的答案的機器學(xué)習(xí)模型,其可以是通過對預(yù)先收集的問答語料進行學(xué)習(xí)后構(gòu)建的。在一個例子中,該預(yù)設(shè)模型可以是任一用于計算輸入的文本問題與預(yù)先收集的問答語料中的樣本問題的相似度的算法;當預(yù)設(shè)模型是用于計算相似度的算法時,可以將排名靠前的n個相似度值對應(yīng)的樣本問題的答案輸出,從而得到n個答案。
將五個處理單元輸出的全部答案進行融合排序,其中,融合排序的過程即為:過濾全部的答案中相同的答案,將過濾后的答案按照分值進行排序;就可以得到文本問題對應(yīng)的至少一個答案。
當然,在實際應(yīng)用中,也可以通過其它方式獲得至少一個答案,本申請對此不作限定??傊?,機器人核心模塊的設(shè)計是為了利用機器超強的答案檢索能力以及快速的輸出能力的優(yōu)點。
機器人核心模塊在得到上述至少一個答案之后,可以將該至少一個答案返回給人機交互模塊,從而由人機交互模塊向客服人員展示該至少一個答案。因為客服人員在與用戶交流的過程中已經(jīng)理解了用戶所提問的原始問題的語義,因此,可以直接判斷至少一個答案中是否有對應(yīng)的正確答案(也稱目標 答案),若有,則由客服人員直接選取目標答案,否則客服人員輸入正確答案,也即輸入除至少一個答案中的其它答案。也即本申請是由客服人員來確定目標答案,從而提高了目標答案推送的準確性,也進一步提高了收集的問答語料的準確性。
需要說明的是,上述客服人員直接選取目標答案的操作相當于人機交互模塊接收到用于從至少一個答案中選取目標答案的選擇指令。因此,通過判斷人機交互模塊是否接收到選擇指令來判斷至少一個答案中是否有目標答案。
綜上,本申請的半自動化的問答平臺既客服了自動化問答平臺中的問答機器人不能準確理解用戶的問題的語義的缺點,也客服了在線人工服務(wù)中客服人員回答問題速度慢的缺點。
步驟120,若接收到所述選擇指令,則將所述文本問題與所述目標答案收集為第一語料,并為所述第一語料添加第一標識信息,其中,所述第一標識信息用于標識所述文本問題與所述目標答案為正確問答對。
若接收到選擇指令,則說明機器人核心模塊返回的至少一個答案中有目標答案,從而可以將用戶的文本問題以及目標答案收集為第一語料,此處的第一語料即為正確語料。
舉例來說,假設(shè)用戶的文本問題為:“了解支付寶跨行轉(zhuǎn)賬的收費情況”,而機器人核心模塊返回了兩個答案,且該兩個答案分別為:“中國銀行跨行轉(zhuǎn)賬按1%收費”和“支付寶內(nèi)部轉(zhuǎn)賬不收費”;且假設(shè)接收到了客服人員將“中國銀行跨行轉(zhuǎn)賬按1%收費”選取為目標答案的選擇指令,則收集的第一語料可以如表1所示。
表1
表1中,在記錄問題與答案的對應(yīng)關(guān)系之后,還可以為每一問答對添加標識信息,如,第一標識信息,該第一標識信息用于標識該問答對為正確問答對。在一個例子中,第一標識信息可以為“goodcase”。
當然,在實際應(yīng)用中,也可以將收集的第一語料以日志的形式進行存儲,本申請對此不作限定。此外,上述表1或者日志中還可以記錄用戶提問的原始問題,以增加問答語料的全面性。
本申請中,對于上述標記為第一標識信息的第一語料,可以有如下兩方面的作用:第一,可以將其添加到自動問答平臺的后臺數(shù)據(jù)庫中,以便當有其它用戶在提問問答對中的問題時,可以直接進行解答,而不需要再通過本申請的半自動化的問答平臺進行解答;第二,可以將其作為測試樣本來測試優(yōu)化后的預(yù)設(shè)模型,即將標記為第一標識信息的問題輸入優(yōu)化后的預(yù)設(shè)模型之后,判斷其輸出是否為該問題對應(yīng)的答案,若是,則預(yù)設(shè)模型優(yōu)化成功,否則預(yù)設(shè)模型優(yōu)化失敗。
步驟130,若未接收到所述選擇指令,則將所述文本問題與所述至少一個答案收集為第二語料,并為所述第二語料添加第二標識信息,其中,所述第二標識信息用于標識所述文本問題與所述至少一個答案中的每個答案為不正確問答對。
即若未接收到選擇指令,則說明機器人核心模塊返回的至少一個答案中沒有目標答案,從而可以將用戶的文本問題以及至少一個答案收集為第二語料。
如前述例子中的文本問題,假設(shè)機器人核心模塊返回了兩個答案,且該兩個答案分別為:“支付寶可以向四大銀行轉(zhuǎn)賬”和“支付寶內(nèi)部轉(zhuǎn)賬不收費”;則因為該兩個答案均未對用戶的文本問題作出準確回答,所以客服人員不從該兩個答案中選擇目標答案,也即未接收到客服人員輸入的選擇指令, 則收集的第二語料可以如表2所示。
表2
表2中,在記錄問題與答案的對應(yīng)關(guān)系之后,還可以為每一問答對添加標識信息,如,第二標識信息,該第二標識信息用于標識該問答對為不正確問答對。在一個例子中,第二標識信息可以為“badcase”。
當然,在實際應(yīng)用中,也可以將收集的第二語料以日志的形式進行存儲,本申請對此不作限定。
此外,還需要說明的是,在未接收到客服人員輸入的選擇指令時,則接收客服人員輸入的其它答案,如,可以接收“中國銀行跨行轉(zhuǎn)賬按1%收費”,并將上述其它答案記錄到表2所示的內(nèi)容中,也即可以記錄其它答案與文本問題、至少一個答案的對應(yīng)關(guān)系。可以理解的是,上述其它答案即為至少一個答案中每個答案的修正答案。如,記錄其它答案后的表2可以如表3所示。
表3
可以理解的是,也可以將上述表3中的問題與修正答案收集為第一語料,即其具有與上文中第一語料相同的作用。
需要說明的是,上述表1和表2的內(nèi)容也可以存儲在同一張表或者同一個日志文件中,本申請對此不作限定。
本申請中,對于上述標記為第二標識信息的第二語料,可以有如下兩方面的作用:第一,可以用于對優(yōu)化后的預(yù)設(shè)模型進行評價,如,當“問答搜索”通過優(yōu)化前的預(yù)設(shè)模型對用戶的文本問題進行解答時,標記為第二標識信息的第二語料的個數(shù)100個,而“問答搜索”通過優(yōu)化后的預(yù)設(shè)模型對用戶的文本問題進行解答時,標記為第二標識信息的第二語料的個數(shù)下降到50個,則可以評價預(yù)設(shè)模型優(yōu)化成功;第二,可以用于開發(fā)人員進行技術(shù)挖掘,如,假設(shè)問答平臺為支付寶系統(tǒng)中的平臺,則當支付寶系統(tǒng)中新增功能(如“花唄”)時,則收集的第二語料中可能就包含了有關(guān)該新增功能的詞匯,開發(fā)人員通過對第二語料的分析,就可以提煉到新詞匯,之后就可以向自動問答平臺的后臺數(shù)據(jù)庫中補充關(guān)于新詞匯的文本,從而提高自動問答平臺回答問題的準確性。
此外,本申請的第一語料與第二語料可以被更新到挖掘知識庫中,以用于對上述提到的預(yù)設(shè)模型進行優(yōu)化,以提高“問答搜索”對用戶的文本問題回答的準確性。
本申請?zhí)峁┑膯柎鹫Z料的收集方法及裝置,是在問答平臺實時對用戶的文本問題進行解答的過程中來自動收集問答語料的,從而避免了現(xiàn)有技術(shù)中通過人工收集問答語料而帶來的收集效率低以及成本高的問題;此外,由于用戶實時提問的問題多種多樣,因此,通過對用戶實時提問的文本問題以及對應(yīng)答案進行收集,可以提高問答語料收集的全面性,從而進一步可以提高自動問答平臺解答問題的準確性。
與上述問答語料的收集方法對應(yīng)地,本申請實施例還提供的一種問答語料的收集裝置,如圖3所示,該裝置包括:判斷單元301和收集單元302。
判斷單元301,用于在問答平臺根據(jù)接收的用戶的文本問題,輸出與所述文本問題對應(yīng)的至少一個答案時,判斷是否接收到用于從所述至少一個答案中選取目標答案的選擇指令。
其中,該文本問題是對所述用戶所提問的原始問題的規(guī)范化描述。
其中,所述問答平臺根據(jù)接收的用戶的文本問題,輸出與所述文本問題對應(yīng)的至少一個答案,具體為:
所述問答平臺將所述用戶的文本問題輸入預(yù)設(shè)模型,其中,所述預(yù)設(shè)模型是預(yù)定的用于根據(jù)輸入的問題輸出該問題對應(yīng)的答案的機器學(xué)習(xí)模型;
將所述預(yù)設(shè)模型輸出的至少一個結(jié)果作為與所述文本問題對應(yīng)的至少一個答案。
收集單元302,用于若判斷單元301判斷接收到所述選擇指令,則將所述文本問題與所述目標答案收集為第一語料,并為所述第一語料添加第一標識信息,其中,所述第一標識信息用于標識所述文本問題與所述目標答案為正確問答對;
收集單元302,還用于若判斷單元301判斷未接收到所述選擇指令,則將所述文本問題與所述至少一個答案收集為第二語料,并為所述第二語料添加第二標識信息,其中,所述第二標識信息用于標識所述文本問題與所述至少一個答案中的每個答案為不正確問答對。
可選地,所述裝置還包括:接收單元303和記錄單元304。
接收單元303,用于若未接收到所述選擇指令,則接收客服人員輸入的其它答案。
記錄單元304,用于記錄接收單元303接收的所述其它答案與所述文本問題、所述至少一個答案的對應(yīng)關(guān)系,其中,所述其它答案為所述至少一個答案中每個答案的修正答案。
可選地,所述裝置還包括:優(yōu)化單元305。
優(yōu)化單元305,用于當滿足模型優(yōu)化條件時,根據(jù)收集的所述第一語料以 及第二語料,對所述預(yù)設(shè)模型進行優(yōu)化,以獲得優(yōu)化后的預(yù)設(shè)模型。
本申請實施例裝置的各功能模塊的功能,可以通過上述方法實施例的各步驟來實現(xiàn),因此,本申請?zhí)峁┑难b置的具體工作過程,在此不復(fù)贅述。
本申請?zhí)峁┑膯柎鹫Z料的收集裝置,判斷單元301在問答平臺根據(jù)接收的用戶的文本問題,輸出與所述文本問題對應(yīng)的至少一個答案時,判斷是否接收到用于從所述至少一個答案中選取目標答案的選擇指令;若接收到所述選擇指令,則收集單元302將所述文本問題與所述目標答案收集為第一語料,并為所述第一語料添加第一標識信息;若未接收到所述選擇指令,則收集單元302將所述文本問題與所述至少一個答案收集為第二語料,并為所述第二語料添加第二標識信息。由此,可以提高問答語料收集的效率和全面性。
本申請實施例提供的問答語料的收集裝置可以與前述自動化問答平臺、在線人工服務(wù)或者半自動化的問答平臺相結(jié)合使用,以便能夠提高問答語料收集的效率和全面性。
專業(yè)人員應(yīng)該還可以進一步意識到,結(jié)合本文中所公開的實施例描述的各示例的對象及算法步驟,能夠以電子硬件、計算機軟件或者二者的結(jié)合來實現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應(yīng)認為超出本申請的范圍。
結(jié)合本文中所公開的實施例描述的方法或算法的步驟可以用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實施。軟件模塊可以置于隨機存儲器(ram)、內(nèi)存、只讀存儲器(rom)、電可編程rom、電可擦除可編程rom、寄存器、硬盤、可移動磁盤、cd-rom、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲介質(zhì)中。
以上所述的具體實施方式,對本申請的目的、技術(shù)方案和有益效果進行 了進一步詳細說明,所應(yīng)理解的是,以上所述僅為本申請的具體實施方式而已,并不用于限定本申請的保護范圍,凡在本申請的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應(yīng)包含在本申請的保護范圍之內(nèi)。