本發(fā)明涉及抽取式問答任務,尤其涉及一種基于少樣本提示學習的弱語義關聯抽取式問答方法。
背景技術:
1、近年來,隨著chatgpt引爆聊天機器人熱潮,學界和業(yè)界重拾對人工智能自動問答(question?answering,qa)系統的興趣,微軟、谷歌、百度等科技巨頭更是將qa與搜索引擎深度捆綁,不僅重新定義了人機交互的邊界,更深刻影響著qa技術的研究方向與深度。qa作為圖靈測試檢測機器智能的關鍵,一直都是自然語言處理(natural?languageprocessing,nlp)領域的重要研究方向。qa任務根據回答方式不同可以分為抽取式問答(extractive?qa,eqa)和生成式問答(generative?qa,gqa)。其中eqa通過自然語言提問,直接從語境文本(context)中抽取關鍵信息,在低價值密度的文本大數據中精準檢索高效獲取知識。eqa不僅要求算法具備強大的上下文語境理解力,還考驗其在復雜文本環(huán)境中定位關鍵信息的精準度。相較于gqa回答的“天馬行空”,eqa的回答則可“追根溯源”,借由“源頭”保證答案置信度,在信息檢索、知識庫構建、智能客服等方面有著廣泛的應用。
2、隨著預訓練語言模型(pre-trained?language?models,plms)的引入,極大地提升了eqa任務的性能,不斷刷新sota(state-of-the-art)使得各類應用成為可能,逐漸成為研究的焦點。當前eqa研究主要集中于模型構建、模型優(yōu)化和特定領域問答等方面,并為不同場景研究適配了諸多不同類型的數據集。弱語義關聯eqa任務不僅要求系統具有文本理解能力,還需要具備在弱語義文本語境中進行推理和判斷的能力。然而弱語義關聯問答場景仍是一個未被充分解決的挑戰(zhàn)。在實際應用中還存在大量語義關系較弱的問答對,即問題和答案之間的聯系并不明顯。即使將這些問答對映射到高維語義空間中,也很難有效拉近它們之間的距離,因此適用于經典數據集的模型和方法優(yōu)化后,也很難在弱語義關聯問答對上得到令人滿意的結果。
技術實現思路
1、有鑒于此,本發(fā)明提供了一種基于少樣本提示學習的弱語義關聯抽取式問答方法,用以在少樣本的情景下,在弱語義關聯場景中通過提示學習為eqa系統發(fā)現問答對間的關聯,提升模型在弱語義關聯場景中的答案抽取能力。
2、第一方面,本發(fā)明提供了一種基于少樣本提示學習的弱語義關聯抽取式問答方法,所述方法包括:
3、步驟1、對抽取式問答的問題進行定義,定義語境文本集合context、問題集合query和答案集合answer;
4、步驟2、構建基于少樣本提示學習的模型fspm4wsaeqa,并對模型進行訓練,獲取分類模型fnn;
5、步驟3、應用獲取的分類模型fnn,根據提問從給定的語境文本集合中抽取答案。
6、可選地,所述步驟1包括:
7、定義語境文本集合context、問題集合query和答案集合answer,其中context={clause1,clause2,…,clausen}表示由若干子句組成的語境文本集合,n的取值為正整數;query={query1,query2,…,queryk}表示針對語境文本集合context提出的k個問題集合,k的取值為正整數;answer={answer1,answer2,…,answerk}表示針對于k個問題從語境文本集合context中抽取的k個答案集合,每個答案子集answeri={clausei1,clausei2,…,clauseim}均為語境文本集合context的子集,i∈[1,k],即
8、可選地,所述步驟2包括:
9、將問題集合query中的每類問題queryi映射到類別標簽labeli;并為問題集合query中未包含的問題建立類別標簽labelk+1,所有類別組成標簽集合label={label1,label2,…,labelk,labelk+1};利用提示學習定義模板template=template([clause],[label]),并使用少樣本問答對數據,對模板進行實例化,進而微調預訓練語言模型plms,獲取分類模型fnn。
10、可選地,包括:
11、在模型訓練過程中,首先在數據準備階段,依據問題數量構建對應的標簽,使用語境文本集合context中的子句與其所對應問題的類別標簽實例化模板,構建k+1-way?few-shot?dataset訓練集;然后在模型微調階段,使用k+1-way?few-shot數據集微調plms。
12、可選地,所述步驟3包括:
13、在模型應用過程中,使用微調后的plms對測試語境文本集合t_context中的子句類別進行預測,計算測試問題t_query與類別標簽label中各類別的相似度,最終將類別標簽label中與測試問題t_query相似度最大類別對應的子句集作為答案t_answer。
14、可選地,包括:
15、給定測試語境文本集合t_context={clauset1,clauset2,…,clausetn}上的測試問題t_query,首先計算測試問題t_query與問題集合query中各類問題的相似度,并將其映射到類別標簽labelt;然后應用分類模型fnn預測測試語境文本集合t_conext中各子句的類別,即pre_labelt’=fnn(clauseti),clauseti∈t_context;最終將pre_labelt’≈labelt對應的子句集合組成t_query的答案集t_answer={clauseti},tn的取值范圍為正整數。
16、可選地,構建k+1-way?few-shot?dataset訓練集包括:問題映射,將問題集合query映射到類別標簽label;數據增強,使用數據增強方法將答案集合answer擴充為answer’;模板實例化,使用answer’和類別標簽label實例化template模板,獲取k+1-wayfew-shot?dataset訓練集。
17、可選地,所述問題映射包括:
18、(1)收集同類問題的多個樣本:
19、queryi={queryi-sample1,queryi-sample2,…,queryi-samplen}
20、(2)識別同義/近義詞:
21、對每個問題樣本queryi-samplej,使用word2vec詞嵌入識別同義詞和近義詞集合,對于queryi-samplej中的每個詞w生成同義/近義詞集合syn(w);
22、(3)構建共現矩陣c:
23、初始共現矩陣c=0,根據每個問題樣本queryi-samplej中的每個詞匯更新共現矩陣c,當w∈queryi-samplej和v∈syn(w)時,cwv=cwv+1;
24、其中,cwv表示詞語wp和wq在所有問題樣本中的共現次數;
25、(4)提取關鍵詞:
26、統計每個詞w在所有問題樣本中出現的頻率,即詞w的共現頻率f(w):
27、
28、(5)確定類別標簽:
29、選擇共現頻率最高的關鍵詞kw作為問題類別標簽labeli:
30、
31、增加其他問題的類別標簽labelk+1,將問題集合query中未包含的問題均映射到類別中。
32、可選地,所述數據增強包括:
33、為均衡不同類樣本量,采用文本數據增強data?augmentation增加前k類樣本量,將其擴充至與k+1類樣本量同數量級:
34、
35、其中,m’≈|context-answer|,a∈[1,k+1];
36、首先將answera的所有子句放入answera’,然后依次采用同義/近義詞替換、掩碼語言模型mlm、回譯back?translation、序列生成模型seq2seq、隨機交換方法增加樣本,擴充后的總樣本量達到要求時即停止;
37、在同義/近義詞替換方法中,隨機將答案子句中的非停用詞替換成同義/近義詞或上位詞,為防止語義產生較大偏差每次僅替換一個詞,將生成的新子句放入answera’;在mlm方法中,使用預訓練語言模型roberta預測答案子句中隨機遮蓋的詞,將生成的新子句放入answera’;在回譯方法中,采用中英互譯將答案子句翻譯成英文,然后再翻譯回中文將生成的新子句放入answera’;在seq2seq模型方法中為答案子句生成語義一致的新子句放入answera’;若語境文本集合context長度大于答案集合answer;若上述步驟仍無法均衡樣本時,最后采用隨機交換方法,每次隨機交換答案子句中的兩個詞將生成的新子句放入answera’。
38、可選地,所述模板實例化包括:
39、使用語境文本集合context中的子句與類別標簽label中的子標簽填充template模板;首先,使用answeri’中的答案子句clauseij’填充template模板中的占位符[clause],相應的使用answeri’所回答問題queryi在label中的對應標簽labeli填充template模板中的占位符[label];然后,使用context-answer文本中的子句clausek+1j填充template模板中的占位符[clause],相應的使用label中的標簽labelk+1填充template模板中的占位符[label];最終,生成k+1-way?few-shot訓練集trainset={template(clauseaj’,labela),a∈[1,k+1],j∈[1,im’]。
40、本發(fā)明提供的技術方案中,該方法包括對抽取式問答的問題進行定義,定義語境文本集合context、問題集合query和答案集合answer;構建基于少樣本提示學習的模型fspm4wsaeqa,并對模型進行訓練,獲取分類模型fnn;應用獲取的分類模型fnn,根據提問從給定的語境文本集合中抽取答案,該方法在少樣本的情景下,在弱語義關聯場景中通過提示學習為eqa系統發(fā)現了問答對間的關聯,提升了模型在弱語義關聯場景中的答案抽取能力。