Re2G: Retrieve, Rerank, Generate

論文簡(jiǎn)要 :
本文提出了一種名為Re2G的方法,結(jié)合了神經(jīng)檢索和重新排序,用于基于BART的序列到序列生成任務(wù)。通過(guò)引入知識(shí)蒸餾的新變體,該方法在零樣本槽填充、問(wèn)答、事實(shí)檢查和對(duì)話等四個(gè)不同任務(wù)上取得了顯著的性能提升,相對(duì)于之前的最先進(jìn)方法在KILT排行榜上的相對(duì)增益為9%至34%。
背景信息:
論文背景: 過(guò)去的研究表明,隨著參數(shù)空間的增大,transformers模型的能力也在增強(qiáng)。然而,對(duì)于需要大量知識(shí)的任務(wù)來(lái)說(shuō),非參數(shù)化記憶允許模型在計(jì)算成本和GPU內(nèi)存需求的亞線性增長(zhǎng)的情況下顯著擴(kuò)展。
過(guò)去方案: 近期的研究工作引入了檢索機(jī)制來(lái)支持條件生成任務(wù)。例如,RAG和REALM模型通過(guò)從語(yǔ)料庫(kù)中進(jìn)行神經(jīng)檢索來(lái)擴(kuò)展模型的信息來(lái)源。這些模型可以利用語(yǔ)料庫(kù)作為知識(shí)源,以亞線性的計(jì)算成本擴(kuò)展模型可用的信息量。
論文的Motivation: 在REALM和RAG的基礎(chǔ)上,本文提出了一種名為Re2G的新方法,將神經(jīng)檢索和重新排序結(jié)合到基于BART的序列到序列生成中。與之前的方法相比,Re2G的重新排序方法允許合并具有不可比較分?jǐn)?shù)的檢索結(jié)果,同時(shí)引入了一種新穎的知識(shí)蒸餾變體來(lái)實(shí)現(xiàn)端到端的訓(xùn)練。本文通過(guò)在KILT上進(jìn)行實(shí)驗(yàn)評(píng)估,取得了在零樣本槽填充、問(wèn)答、事實(shí)檢查和對(duì)話等四個(gè)任務(wù)上的顯著性能提升,相對(duì)于之前的最先進(jìn)方法在KILT排行榜上的相對(duì)增益為9%至34%。
方法:
a. 理論背景:
本文介紹了一種名為Re2G(Retrieve, Rerank, Generate)的新方法,將神經(jīng)初始檢索和重新排序結(jié)合到基于BART的序列到序列生成中。作者提出了一種新穎的知識(shí)蒸餾變體,使用目標(biāo)序列輸出上的真實(shí)數(shù)據(jù)來(lái)訓(xùn)練初始檢索、重新排序和生成。Re2G模型在零樣本槽填充、問(wèn)答、事實(shí)檢查和對(duì)話四個(gè)不同任務(wù)中取得了顯著的增益,在KILT排行榜上相對(duì)于先前最先進(jìn)的方法提高了9%到34%。論文還討論了領(lǐng)域內(nèi)的相關(guān)工作,并提供了KILT基準(zhǔn)和基線方法的概述。
b. 技術(shù)路線:
Re2G系統(tǒng)基于RAG(Retrieval-Augmented Generation)架構(gòu),并引入了一個(gè)重新排序器來(lái)改進(jìn)初始檢索階段返回的段落排序。重新排序器基于使用BERT transformer的序列對(duì)分類模型。用于初始檢索的表示模型是DPR(Dense Passage Retrieval)的雙編碼器模型。訓(xùn)練過(guò)程包括四個(gè)階段:DPR訓(xùn)練、生成訓(xùn)練、重新排序訓(xùn)練和完全端到端訓(xùn)練。重新排序訓(xùn)練使用DPR和BM25(一種檢索方法)的結(jié)果作為訓(xùn)練數(shù)據(jù)。完全端到端訓(xùn)練存在一個(gè)挑戰(zhàn),即由于使用重新排序器分?jǐn)?shù)而不是初始檢索分?jǐn)?shù),查詢編碼器的梯度變?yōu)榱?。?duì)此問(wèn)題考慮了三種可能的解決方案:結(jié)合DPR和重新排序器分?jǐn)?shù)、凍結(jié)查詢編碼器或使用在線知識(shí)蒸餾。
Re2G模型的訓(xùn)練流程包括以下四個(gè)階段:
DPR訓(xùn)練:這個(gè)階段是用來(lái)訓(xùn)練一個(gè)雙向編碼器模型,用于從一個(gè)索引的語(yǔ)料庫(kù)中檢索相關(guān)的段落。訓(xùn)練數(shù)據(jù)是由查詢、正例段落和負(fù)例段落組成的三元組,負(fù)例段落是從BM25檢索中選擇的。訓(xùn)練目標(biāo)是最大化正例段落和查詢向量之間的內(nèi)積,同時(shí)最小化負(fù)例段落和查詢向量之間的內(nèi)積。
生成訓(xùn)練:這個(gè)階段是用來(lái)訓(xùn)練一個(gè)基于BART的序列到序列模型,用于從每個(gè)檢索到的證據(jù)段落和查詢的拼接序列中生成目標(biāo)輸出。訓(xùn)練目標(biāo)是最大化目標(biāo)輸出序列的對(duì)數(shù)似然。
重新排序訓(xùn)練:這個(gè)階段是用來(lái)訓(xùn)練一個(gè)基于BERT的交互模型,用于對(duì)檢索到的段落進(jìn)行重新排序。訓(xùn)練數(shù)據(jù)是由查詢、候選段落集合和正確段落集合組成的元組,正確段落集合是從出處信息中獲取的。訓(xùn)練目標(biāo)是最大化正確段落在候選段落集合中的對(duì)數(shù)似然。
完全端到端訓(xùn)練:這個(gè)階段是用來(lái)同時(shí)訓(xùn)練DPR、重新排序和生成模型,使得整個(gè)系統(tǒng)能夠端到端地優(yōu)化目標(biāo)輸出。為了實(shí)現(xiàn)這一點(diǎn),我們引入了一種新穎的知識(shí)蒸餾方法,利用重新排序模型作為教師模型,為DPR學(xué)生模型提供標(biāo)簽。我們使用KL散度作為損失函數(shù),衡量DPR和重新排序模型在候選段落上的概率分布之間的差異。
完全端到端訓(xùn)練的過(guò)程:
首先,作者將檢索器(DPR)、重排器(BERT)和生成器(BART)分別單獨(dú)訓(xùn)練,使用不同的訓(xùn)練數(shù)據(jù)和目標(biāo)函數(shù)。
然后,作者將生成器和檢索器聯(lián)合起來(lái),生成器的任務(wù)是根據(jù)查詢和檢索到的段落生成目標(biāo)輸出,例如有趣的事實(shí)、圖像描述等。檢索器的任務(wù)是根據(jù)查詢從一個(gè)大型的語(yǔ)料庫(kù)中檢索出相關(guān)的段落。生成器的輸出可以反饋給檢索器,作為一種監(jiān)督信號(hào),告訴檢索器哪些段落是更好的候選。這樣,檢索器就可以更新自己的參數(shù),提高自己的檢索能力。
最后,作者將重排器作為教師模型,檢索器作為學(xué)生模型,使用知識(shí)蒸餾的方法,讓檢索器學(xué)習(xí)重排器的概率分布。這一步可以進(jìn)一步提升檢索器的性能,并且使得檢索器和重排器之間的分?jǐn)?shù)更加一致。
結(jié)果:
a. 詳細(xì)的實(shí)驗(yàn)設(shè)置:
Re2G模型在KILT基準(zhǔn)的多個(gè)數(shù)據(jù)集上取得了顯著的性能提升。在R-Precision、Recall@5、Accuracy、F1等指標(biāo)上,它在T-REx、Natural Questions、TriviaQA、FEVER和Wizard of Wikipedia數(shù)據(jù)集上相對(duì)于先前最先進(jìn)的方法分別取得了9%、31%、34%、22%和10%的增益。除Wizard of Wikipedia數(shù)據(jù)集外,它目前在所有數(shù)據(jù)集的KILT指標(biāo)中占據(jù)頭銜位置。
b. 詳細(xì)的實(shí)驗(yàn)結(jié)果:
表格顯示了Re2G系統(tǒng)在訓(xùn)練的每個(gè)步驟中檢索性能的改進(jìn)。僅使用初始檢索的DPR Stage 1在使用BM25的批量負(fù)例和困難負(fù)例的真實(shí)來(lái)源的訓(xùn)練下進(jìn)行訓(xùn)練。KGI0進(jìn)一步通過(guò)生成目標(biāo)輸出來(lái)訓(xùn)練DPR Stage 1的查詢編碼器。最后,Re2G通過(guò)重新排序器從DPR進(jìn)行在線知識(shí)蒸餾來(lái)擴(kuò)展訓(xùn)練。結(jié)果顯示,前幾個(gè)步驟在所有數(shù)據(jù)集上都提高了性能,而重新排序訓(xùn)練在所有數(shù)據(jù)集上都優(yōu)于DPR。