本發(fā)明涉及計算機(jī)數(shù)據(jù)分析領(lǐng)域,尤其涉及基于深度學(xué)習(xí)的語義空間構(gòu)建和基于大語言模型的文本數(shù)據(jù)增強(qiáng)方法。
背景技術(shù):
1、檢索任務(wù)通常指的是獲得大規(guī)模文檔數(shù)據(jù)中與查詢最相近的文檔集合。目前,基于稠密語義向量的文章檢索技術(shù)已在多個關(guān)鍵領(lǐng)域中展現(xiàn)了其廣泛的實(shí)用性,這些領(lǐng)域包括但不限于開放域問題回答、會話系統(tǒng)以及網(wǎng)絡(luò)搜索等。
2、數(shù)據(jù)增強(qiáng)是提升信息檢索質(zhì)量的經(jīng)典技術(shù)之一,通過對訓(xùn)練樣本進(jìn)行輕微擾動,如旋轉(zhuǎn)、平移、縮放等,來創(chuàng)造額外的訓(xùn)練數(shù)據(jù)。數(shù)據(jù)增強(qiáng)包含一系列用于通過抖動和干擾從原始樣本生成新的訓(xùn)練樣本,但是類標(biāo)簽不改變的技術(shù)。進(jìn)行數(shù)據(jù)增強(qiáng)的目的是為了增加模型的泛化能力。假如我們所要訓(xùn)練的網(wǎng)絡(luò)不斷地看到新的、輕微變動的輸入樣本點(diǎn),那么它就能學(xué)到更加健壯的特征。但目前的向量檢索領(lǐng)域的數(shù)據(jù)增強(qiáng)方法局限于在源文本進(jìn)行簡單的詞句變換如重復(fù)、刪除、插入無意義字符等。這些方法生成的增強(qiáng)數(shù)據(jù)質(zhì)量不高,容易被模型輕易識別,數(shù)據(jù)增強(qiáng)效果差。
3、對比學(xué)習(xí)是一種無監(jiān)督或自監(jiān)督學(xué)習(xí)方法,其主要目標(biāo)是通過自動構(gòu)造相似實(shí)例和不相似實(shí)例,學(xué)習(xí)一個表示學(xué)習(xí)模型,使得相似的實(shí)例在投影空間中比較接近,而不相似的實(shí)例在投影空間中距離較遠(yuǎn)。這種方法在自然語言處理領(lǐng)域有著廣泛應(yīng)用。然而如何有效地構(gòu)造相似實(shí)例和不相似實(shí)例,以及如何設(shè)計模型結(jié)構(gòu)來遵循這一指導(dǎo)原則,是對比學(xué)習(xí)中的一個重要問題。不恰當(dāng)?shù)膶?shí)例構(gòu)造可能導(dǎo)致模型學(xué)習(xí)到錯誤的特征表示,從而影響其在下游任務(wù)中的性能。
4、基于此,本發(fā)明提出了一種使用大語言模型進(jìn)行數(shù)據(jù)增強(qiáng)以提高檢索性能的方法。通過使用零樣本提示對文本數(shù)據(jù)進(jìn)行更加靈活的數(shù)據(jù)增強(qiáng),并基于生成數(shù)據(jù)時的語義特征對數(shù)據(jù)進(jìn)行篩選,確保數(shù)據(jù)增強(qiáng)質(zhì)量。本發(fā)明獲得高質(zhì)量數(shù)據(jù)后利用高維向量正交性對增強(qiáng)數(shù)據(jù)的語義信息進(jìn)行整合,利用整合信息作為指引向量指引模型的微調(diào)過程。最終提高了模型向量檢索的性能。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明針對信息檢索中數(shù)據(jù)增強(qiáng)問題,提出了一種使用大語言模型進(jìn)行文本數(shù)據(jù)增強(qiáng)以提高檢索性能的方法。該方法使用大語言模型的提示模板對原始數(shù)據(jù)進(jìn)行語義的解耦,進(jìn)而將其分解為若干條短文本;并且通過語義特征對大語言模型生成的數(shù)據(jù)進(jìn)行篩選得到增強(qiáng)數(shù)據(jù)。在訓(xùn)練過程中,先使用對比學(xué)習(xí)進(jìn)行第一步訓(xùn)練,之后使用第一步訓(xùn)練得到的模型對增強(qiáng)數(shù)據(jù)進(jìn)行聚合得到指引向量,然后使用指引向量作為輔助信息在對比學(xué)習(xí)中指導(dǎo)文本的表示過程進(jìn)而提高模型向量檢索的性能。
2、本發(fā)明的技術(shù)方案為:
3、一種提高向量檢索性能的文本數(shù)據(jù)增強(qiáng)方法,包括以下步驟:
4、s1、獲取數(shù)據(jù)集并對所述數(shù)據(jù)集進(jìn)行預(yù)處理;
5、s2、利用預(yù)處理后的數(shù)據(jù)集對預(yù)訓(xùn)練模型進(jìn)行對比學(xué)習(xí)訓(xùn)練,得到訓(xùn)練好的初級檢索模型;
6、s3、基于大語言模型對預(yù)處理后的數(shù)據(jù)集中的正例文檔進(jìn)行語義解耦,將正例文檔分解為若干條短文本;并對所述短文本數(shù)據(jù)進(jìn)行篩選,得到增強(qiáng)數(shù)據(jù)集;
7、s4、基于所述初級檢索模型對所述增強(qiáng)數(shù)據(jù)集中的數(shù)據(jù)進(jìn)行聚合構(gòu)建出指引向量,利用所述指引向量指引所述初級檢索模型的訓(xùn)練,得到最終的檢索模型。
8、進(jìn)一步的,所述s1中,數(shù)據(jù)集包含:
9、查詢文件,該文件可以確定所有查詢內(nèi)容;
10、查詢與正例的對應(yīng)關(guān)系文件,該文件可以確定查詢與對應(yīng)的正確文檔關(guān)系;
11、文檔集合文件,該文件可以確定所有文檔內(nèi)容。
12、進(jìn)一步的,所述s1中,對所述數(shù)據(jù)集進(jìn)行預(yù)處理,具體為:
13、若數(shù)據(jù)集中包含查詢與負(fù)例的對應(yīng)關(guān)系文件,則基于查詢分別與正例及負(fù)例的對應(yīng)關(guān)系文件確定正例文檔和負(fù)例文檔,進(jìn)而將數(shù)據(jù)集格式處理為(查詢,正例,負(fù)例);若數(shù)據(jù)集中缺乏查詢與負(fù)例的對應(yīng)關(guān)系文件,則使用檢索模型在整個文檔集合中檢索相似文檔作為查詢負(fù)例,并基于查詢與正例的對應(yīng)關(guān)系文件確定正例文檔,進(jìn)而將數(shù)據(jù)集格式處理為(查詢,正例,負(fù)例)。
14、進(jìn)一步的,所述s2中,初級檢索模型的訓(xùn)練過程如下:
15、s2.1、使用預(yù)訓(xùn)練模型初始化其預(yù)訓(xùn)練檢查點(diǎn),所述預(yù)訓(xùn)練模型可以作為編碼器將s1得到的數(shù)據(jù)集中所有查詢與正例映射到同一向量空間;
16、s2.2、按照計算設(shè)備的存儲空間大小限制將s1得到的數(shù)據(jù)集劃分成若干個訓(xùn)練批次,訓(xùn)練任務(wù)也因此劃分為若干批次進(jìn)行;在任一批次的訓(xùn)練任務(wù)中首先將該批次內(nèi)的查詢、正例文檔和負(fù)例文檔同時編碼為向量;
17、s2.3、在同一訓(xùn)練批次的向量空間中,對于任一查詢向量,其對應(yīng)的負(fù)例包含除自身正例文檔外的所有文檔,計算該查詢向量分別與各正例文檔向量及各負(fù)例文檔向量之間的距離,并通過softmax函數(shù)對計算得到的距離進(jìn)行平滑化處理使其分布于(0,1)之間,最后使用交叉熵作為損失函數(shù)進(jìn)行訓(xùn)練,得到訓(xùn)練好的初級檢索模型,從而拉近查詢與正例之間的距離,拉遠(yuǎn)查詢與負(fù)例之間的距離;所述損失函數(shù)公式如下:
18、
19、其中,為查詢向量與正例文檔向量或負(fù)例文檔向量之間的距離經(jīng)過softmax函數(shù)處理后的結(jié)果;y是實(shí)際標(biāo)簽,當(dāng)查詢向量與正例文檔向量計算距離時y=1,當(dāng)查詢向量與負(fù)例文檔向量計算距離時,y=0。
20、進(jìn)一步的,所述s2.1中,預(yù)訓(xùn)練模型包括retromae、gte等。
21、進(jìn)一步的,所述s3的具體過程為:
22、s3.1、對于s1中數(shù)據(jù)集的一個訓(xùn)練集,對其中每一條正例文檔使用提示模板的方式構(gòu)建成指令輸入大語言模型中,獲得每一條正例文檔的語義解耦的短文本輸出,進(jìn)而將訓(xùn)練集格式變?yōu)?查詢,正例,負(fù)例,短文本集合);
23、s3.2、對于生成的(查詢,正例,負(fù)例,短文本集合)中的短文本,使用質(zhì)量控制指標(biāo)m量化評估短文本的質(zhì)量,質(zhì)量控制指標(biāo)m綜合考慮了兩個維度的相似度:一是短文本與其對應(yīng)長文本之間的相似度,反映了短文本在保留原始信息上的能力;二是同一長文本對應(yīng)不同短文本之間的相似度差值,衡量了短文本在多樣化表達(dá)同一長文本內(nèi)容時的差異程度;其計算公式如下:
24、mi=∑aj∈zsim(a,ai)-∑ai,aj∈zsim(ai,aj)
25、其中,z為正例a所對應(yīng)的短文本集合,ai、aj為短文本集合z中兩個不同的短文本;sim(a,ai)表示正例a與生成的短文本ai之間的相似度,該相似度是將a、ai兩條文本使用s2得到的初級檢索模型進(jìn)行編碼到向量空間后再計算兩個向量的余弦相似度;mi表示短文本ai的質(zhì)量控制指標(biāo);
26、s3.3、設(shè)定超參數(shù)k和r,對于所有短文本集合,每條短文本數(shù)據(jù)的質(zhì)量控制指標(biāo)需大于r,最多保留質(zhì)量控制指標(biāo)最大的k個短文本,組成增強(qiáng)數(shù)據(jù)集,格式為(查詢,正例,負(fù)例,增強(qiáng)短文本集合)。
27、進(jìn)一步的,所述s3.1中,大語言模型包括gpt-4、通義等。
28、進(jìn)一步的,所述s4的具體過程如下:
29、s4.1、首先加載s2得到的初級檢索模型,按照計算設(shè)備的存儲空間大小限制將s3得到的增強(qiáng)數(shù)據(jù)集劃分成若干個訓(xùn)練批次,訓(xùn)練任務(wù)也因此劃分為若干批次進(jìn)行;在一個批次的訓(xùn)練任務(wù)中,將該批次內(nèi)的查詢、正例、負(fù)例、增強(qiáng)短文本集合全部編碼為高維向量,其中增強(qiáng)短文本集合不經(jīng)過池化層;將來自同一查詢的所有短文本高維向量相加得到拼接向量;再將拼接向量通過一層全連接層,一層殘差連接,并使其投影到一個高層語義空間;對每個查詢的拼接向量依照向量位置拆分,基于每個位置的向量之間的歐式距離采用knn算法進(jìn)行聚類生成若干個詞組向量;對于每個查詢向量,計算該查詢向量與各詞組向量之間的kl散度,并將最小kl散度所對應(yīng)的詞組向量作為指引向量;所述指引向量的計算公式為:
30、p=minu∈u(dkl(q||u))
31、其中,p表示指引向量,q表示查詢編碼成的高維向量,u表示詞組向量集合,u為單條詞組向量,dkl表示求散度函數(shù);
32、s4.2、利用損失函數(shù)l進(jìn)行訓(xùn)練學(xué)習(xí),得到最終的檢索模型;所述損失函數(shù)l=l1+l2,分別如下:
33、對于查詢與短文本集合,將任一查詢對應(yīng)短文本標(biāo)記為正例、其余為負(fù)例計算交叉熵作為損失函數(shù)l1;
34、l1=∑-ylogsim(q,s)-(1-y)log(1-sim(q,s))
35、其中,sim表示向量之間的余弦距離;q表示查詢編碼成的高維向量;s表示短文本編碼成的高維向量;y是實(shí)際標(biāo)簽,當(dāng)短文本是正例時y=1,當(dāng)短文本為負(fù)例時,y=0;
36、對于指引向量與正例,計算任-查詢對應(yīng)的指引向量與該查詢對應(yīng)的正例以及該查詢對應(yīng)的負(fù)例的交叉熵作為損失函數(shù)l2;
37、l2=∑-ylogsim(p,d)-(1-y)log(1-sim(p,d))
38、其中,sim表示向量的余弦距離;p表示指引向量;d表示正例或負(fù)例編碼成的向量;y是實(shí)際標(biāo)簽,當(dāng)d是正例編碼成的向量時y=1,當(dāng)d為負(fù)例編碼成的向量時,y=0。
39、本發(fā)明相對于現(xiàn)有技術(shù)帶來的有益效果:
40、(1)針對利用大語言模型進(jìn)行數(shù)據(jù)壓縮時出現(xiàn)不遵循指令的問題,采用注重生成文本與原文本一致性、生成文本之間差異性的質(zhì)量評估方法,提高了訓(xùn)練數(shù)據(jù)質(zhì)量;
41、(2)針對文本壓縮而導(dǎo)致的信息損失問題,采用通過多個生成短文本之間交互構(gòu)建指引向量的方法,在模型內(nèi)還原文本信息,減少了壓縮信息損耗,提高了模型準(zhǔn)確率。