Simple Entity-Centric Questions Challenge Dense Retrievers

語言: CN / TW / HK

Source: EMNLP 2021: Simple Entity-Centric Questions Challenge Dense Retrievers

Code: princeton-nlp/EntityQuestions

TL;DR: 最近,以DPR為代表的稠密檢索模型在開放域問答上取得了巨大的進展,然而,目前的稠密檢索模型還無法完全替代BM25這類稀疏檢索模型。本文作者構建了一個以實體為中心的問答資料集:EntityQuestions,並發現DPR模型在該資料集上的表現大幅落後於BM25。經過分析,作者發現DPR只能泛化到那些具有常見實體和特定模板的問題上,並發現簡單的資料增強策略無法提升模型的泛化效能,而訓練一個更穩健的段落編碼器和多個特定的問題編碼器可以更好地緩解這個問題。

Introduction

雖然基於稠密向量檢索的DPR(dense passage retriever)模型在許多QA資料集上的整體表現大幅度超越了基於稀疏向量檢索的BM25,但是深度學習模型 長尾泛化能力 的不足一直是個業界難題。人們常常能夠觀察到模型在某些具有特定規律的case上表現不佳,並且這些bad case很難修復,常常只能靠一些非深度學習的演算法來兜底。

本文正是構建了一個DPR表現很差但BM25表現很好的資料集: EntityQuestions ,作者通過充分的實驗表明DPR在 以實體為中心的問題(entity-centric questions) 上的泛化能力非常差。如下圖所示,DPR模型在EntityQuestions上的平均表現大幅低於BM25(49.7% vs 71.2%),在某些問題型別上,DPR和BM25的絕對差距可高達60%(比如 Who is [E]'s child? )。

EntityQuestions

為了構建以實體為中心的問題資料集EntityQuestions,作者從Wikidata(基於Wikipedia的大型知識圖譜)中篩選了多個常見的關係,並通過人工設計的模板將事實三元組(subject, relation, object)轉換為自然問題。為了保證轉換後的問題能夠在Wikipedia中找到對應的段落,作者在T-REx資料集(Wikipedia摘要和Wikidata三元組的對齊資料集)中取樣三元組,並按照以下準則篩選關係型別:

  • 該關係型別在T-REx資料集中有足夠多的三元組(>2K);
  • 該關係型別容易轉化成表述清晰的問題;
  • 該關係型別的候選答案足夠豐富(比如對性別提問的問題只有兩種答案);

最終,作者篩選出了24個常見的關係型別,然後對每個關係型別取樣了1000個事實三元組構成了EntityQuestions的測試集。

作者在EntityQuestions上測試了DPR和BM25,結果如下表所示,雖然在多個QA資料集上訓練DPR可以提高表現(DPR-multi),但整體表現依舊大幅落後於BM25。仔細分析模型在每個關係型別上的表現,我們可以發現 DPR和BM25在包含人物實體的問題上差距尤其明顯。

Dissecting the Problem: Entities vs. Question Patterns

為什麼DPR在這些以實體為中心的問題上表現不佳呢?作者思考了兩個可能的因素: 未知的實體(novel entities)以及未知的問題模式(unseen question patterns) ,並在三類關係型別上細緻地研究了模型表現:出生地點(place-of-birth)、總部位置(headquarter)和創始人(creator)。

Dense retrievers exhibit popularity bias

為了確定實體是如何影響模型效能的,針對特定的關係型別,作者抽取了該關係在Wikidata中對應的所有三元組,並按照關係主體(subject)在Wikipedia中的出現頻數排序,最後按照累計頻數將其平均分裝為8個數據桶。

針對每類關係,作者考慮兩種篩選策略來建立測試集:(1) rand ent: 從每個資料桶中隨機取樣1000個三元組;(2) train ent: 篩選出關係主體在NQ資料集中出現過的三元組。然後分別在每個資料桶上測試模型效能,結果如下圖所示:

我們可以發現DPR在常見實體上的表現很好,但在稀有實體上的表現很差,說明模型存在 流行度偏差(popularity bias) ,而BM25的表現則對實體的流行度不太敏感。另外我們可以發現,DPR在train ent策略下的表現比rand ent策略要好,這表明當測試集中的實體在訓練集中出現過的時候,DPR會表現得更好一些,但依舊會存在嚴重的流行度偏差。

Observing questions helps generalization

作者還探索了在給定關係型別對應的資料集上微調之後的DPR模型是否能夠泛化到稀有實體上。針對所考慮的關係型別,作者抽取了至多包含8000個三元組的訓練集,並保證訓練集中的實體和之前構建的測試集沒有重疊。除此之外,作者還構建了另一個具有語法不同但語義相同的問題模板的訓練集。最後在構建的訓練集上微調DPR並在之前的測試集上評估,結果如下所示:

很明顯,在給定關係型別的訓練集上微調有助於DPR泛化到帶有稀有實體的問題上,在作者考慮的三個關係型別上,DPR取得了和BM25幾乎一致的表現,在語義相同的問題上訓練對模型效能的影響不大,這表明DPR並不依賴於問題的特定描述,模型學習的重點在於對關係型別的表示。

另外,作者還嘗試分開微調問題編碼器(question encoder)和段落編碼器(passage encoder),有趣的是,只微調段落編碼器比只微調問題編碼器要好很多,這表明 糟糕的段落表示可能是模型泛化能力不足的源頭

那麼段落表示(passage representations)在微調的過程中發生了什麼變化呢?作者利用t-SNE對段落表示空間進行了視覺化,如下圖所示,在微調前,關係型別 place-of-birth 對應的段落有聚類的現象,使用最大內積搜尋從這個聚類空間中檢索問題對應的段落是很困難的,這也就解釋了為什麼只微調問題編碼器帶來的提升不夠明顯,經過微調之後,段落表示的分佈變得更加分散,更容易區分。

Towards Robust Dense Retrieval

經過上面的觀察,我們可以嘗試一些簡單的技巧來增強模型在EntityQuestions上的泛化能力。

Data augmentation

作者首先探索了在單個關係型別上微調模型是否能夠幫助模型泛化到別的關係型別,作者考慮兩種訓練方法:一種是隻在一類關係上微調,一種是聯合NQ一起微調,實驗結果如下表所示:

我們可以發現,在單個關係上微調的模型在EntityQuestions測試集上取得了更好的表現,但在NQ上的表現會變差,並且依舊大幅落後於BM25的表現。當聯合NQ一起微調時,模型雖然在NQ上的表現會好一些,但在EntityQuestions上的表現提升卻降低了很多。很明顯,單純在一類關係上微調並不能讓模型泛化到別的關係上。

Specialized question encoders

既然讓單個檢索模型泛化到所有未知的問題分佈上去是不太現實的,那麼我們可不可以設定單個段落編碼器,但針對不同的問題型別設定多個不同的問題編碼器呢?這樣的話,段落編碼器的穩健性就顯得尤為重要。

在下面的實驗中,作者對比了兩個段落編碼器,一個是在NQ資料集上訓練的DPR,另一個是在PAQ資料集上訓練的DPR,作者認為在PAQ上訓練的模型是更穩健的,因為PAQ包含1000萬個段落,比起NQ要更為多樣。然後,保持段落的向量表示不變,針對每個關係型別,作者分別微調了一個特定的問題編碼器,結果如下表所示:

在PAQ上微調的編碼器(DPR-PAQ)比在NQ上微調的編碼器(DPR-NQ)要好很多,這說明DPR-PAQ生成的段落表示是更穩健的,同時多編碼器的設定也起到了很大的作用,大幅縮小了DPR與BM25的差距。因此這啟發我們 想要構建一個更通用的檢索模型,我們首先需要構建一個足夠穩健的段落編碼器。

Discussion

針對稠密檢索模型的泛化性問題,目前已經有很多論文展開了討論, Question and answer test-train overlap in open-domain question answering datasets 指出當前的QA資料集的訓練集和測試集存在很大的重疊,而目前的QA模型實際上主要是在記憶訓練集中的問題,模型在測試集上的優異表現大部分都是由重疊問題貢獻的,模型在沒有見過的問題上的表現實際上是很差的。FAIR最新發布的一篇論文 Challenges in Generalization in Open Domain Question Answering 也發現稠密檢索模型在稀有實體上的泛化效能很差,這篇論文和研究思路和本篇論文有著異曲同工之妙。另外,之前UKP-TUDA提出的BEIR基準測試也說明,在零樣本的設定上,稠密檢索模型在大多數資料集上的表現要比BM25差,因此稠密檢索模型的泛化能力還遠不足以讓其成為像BM25那樣的通用檢索模型。

這篇論文從實體泛化的角度再次揭示了稠密檢索模型的長尾泛化問題,同時也再次告訴我們,深度學習模型的泛化能力在很大程度上是以記憶為基礎的,模型很難正確外推到那些沒有見過的實體和沒有見過的問題型別上。而BM25這種完全依靠字面匹配的演算法,就不會受到實體頻率的影響,在長尾分佈上的表現相當穩健。

這種現象也說明了外部知識和深度模型結合的意義,將外部實體記憶與稠密檢索模型相結合應該能夠提升模型在稀有實體上的表現。在實體連結任務上已經有一些研究者提出了能夠學習優質的實體稠密表示的模型,也許可以與檢索模型結合起來。另外融合實體資訊的模型(比如LUKE)應該也可以幫助模型更好地處理長尾實體。

總之,如何訓練一個能泛化到不同分佈上的通用稠密檢索模型依舊是一個難題,由於BM25演算法的通用性,目前的稠密檢索模型還無法完全替代稀疏檢索模型,未來的發展趨勢也一定是探索稠密檢索和稀疏檢索相結合的有效方法。