張乃洲 曹薇
北京大學(xué)學(xué)報(自然科學(xué)版) 第60卷 第1期 2024年1月
Acta Scientiarum Naturalium Universitatis Pekinensis, Vol. 60, No. 1 (Jan. 2024)
10.13209/j.0479-8023.2023.074
國家自然科學(xué)基金(62072156)資助
2023–05–15;
2023–07–31
基于交叉注意力多源數(shù)據(jù)增強的情境感知查詢建議方法
張乃洲?曹薇
河南財經(jīng)政法大學(xué)計算機與信息工程學(xué)院, 鄭州 450046; ? E-mail: zhangnz@126.com
當(dāng)前基于神經(jīng)網(wǎng)絡(luò)模型的查詢建議研究往往單獨采用查詢?nèi)罩緯捴械牟樵冃蛄凶鳛橛?xùn)練數(shù)據(jù), 但由于查詢本身缺乏句法關(guān)系, 甚至缺失語義, 導(dǎo)致神經(jīng)網(wǎng)絡(luò)模型不能充分挖掘和推理查詢序列中各種詞或概念之間語義關(guān)系。針對這一問題, 提出一種基于交叉注意力多源數(shù)據(jù)增強(MDACA)的 Transformer 模型框架, 用于生成情境感知的查詢建議。采用基于 Transformer 的編碼器-解碼器模型, 利用交叉注意力機制, 融合了查詢層、文檔語義層以及全局查詢建議信息。實驗結(jié)果表明, 與目前方法相比, 該方法能生成具有更高相關(guān)性的情境感知查詢建議。
查詢建議; 數(shù)據(jù)增強; 交叉注意力; 情境感知; Transformer模型
搜索引擎的查詢建議(query suggestion)[1–7]能夠自動幫助用戶準(zhǔn)確、便捷地構(gòu)造查詢詞, 可以顯著地提升用戶的搜索體驗。同時, 改善查詢建議功能也是增強搜索引擎在個性化和智能化等方面性能的重要途徑。近年來, 隨著深度神經(jīng)網(wǎng)絡(luò)技術(shù)的興起, 在自然語言處理(natural language processing, NLP)領(lǐng)域, 研究如何利用深度神經(jīng)網(wǎng)絡(luò)強大的表示學(xué)習(xí)(representation learning)能力來提升各類任務(wù)的性能, 已經(jīng)成為當(dāng)前的研究熱點[1,8–10]?;谏窠?jīng)網(wǎng)絡(luò)模型的查詢建議方法[1,11–17]能夠有效地解決傳統(tǒng)查詢建議存在的諸如模型特征表達能力差、數(shù)據(jù)稀疏性等問題, 生成具有更高相關(guān)性和覆蓋度的查詢建議, 已成為當(dāng)前查詢建議研究的主流方法。
這些方法目前存在的一個問題是: 在訓(xùn)練過程中大多單獨將查詢?nèi)罩緯捴械牟樵冃蛄凶鳛橛?xùn)練數(shù)據(jù), 由于查詢是用戶從一個句法和語義完整的句子中提取出若干關(guān)鍵詞構(gòu)造而成, 使得查詢本身缺乏句法關(guān)系, 甚至缺失語義。這種缺陷為擅長從大量具有豐富句法關(guān)系的完整句子中挖掘和推理各種詞(或概念)之間語義關(guān)系的序列編碼神經(jīng)網(wǎng)絡(luò)(如循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network, RNN)以及Transformer模型等)設(shè)置了極大的障礙。
受計算機視覺(computer vision, CV)和 NLP 領(lǐng)域中數(shù)據(jù)增強(data augmentation)方法[18–20]的啟發(fā), 本文提出一個基于交叉注意力多源數(shù)據(jù)增強(multi-source data augmentation through cross-attention,MDACA)的Transformer模型框架, 用于生成情境感知的查詢建議。該方法的主要思想是, 使用以下 3種數(shù)據(jù)源進行模型的訓(xùn)練。
1)使用原始查詢?nèi)罩緯捴械牟樵冃蛄凶鳛橛?xùn)練數(shù)據(jù)。該數(shù)據(jù)包含查詢情境(當(dāng)前查詢的歷史), 因此模型預(yù)測的下一個查詢具有個性化和局部 特性。
2)使用傳統(tǒng)查詢建議中的鄰接模型(adjacency, ADJ), 生成當(dāng)前查詢的 top-(前個)查詢建議作為訓(xùn)練數(shù)據(jù)。這種數(shù)據(jù)的生成基于整個查詢?nèi)罩緯挼慕y(tǒng)計信息, 生成的訓(xùn)練數(shù)據(jù)只與當(dāng)前查詢有關(guān), 而與查詢情境無關(guān), 因此模型預(yù)測的下一個查詢具有全局特性。
3)使用搜索引擎生成當(dāng)前查詢的相關(guān)文檔, 作為訓(xùn)練數(shù)據(jù)。這種數(shù)據(jù)對當(dāng)前查詢進行擴充, 將查詢替換為語義相對完整的句子。模型可以利用這種數(shù)據(jù)生成當(dāng)前查詢與其相關(guān)文檔之間的神經(jīng)注意力向量, 從而捕獲當(dāng)前查詢中的查詢詞與其相關(guān)文檔中的詞之間的語義關(guān)系。通過采用數(shù)據(jù)增強方法, 模型融合了查詢層、文檔語義層以及全局查詢建議層等多個層次的信息, 與先前的研究方法相比, 能生成具有更高相關(guān)性的情境感知查詢建議。
早期的查詢建議研究主要依賴查詢?nèi)罩痉治? 利用查詢?nèi)罩旧刹樵凕c擊圖, 然后使用各種基于圖挖掘的技術(shù)來生成查詢建議[2–4], 或者利用查詢?nèi)罩緯捴胁樵冎g的相鄰和共現(xiàn)關(guān)系來獲取與原查詢相關(guān)的候選查詢[7]。這類方法能夠生成高相關(guān)性的查詢建議, 但存在數(shù)據(jù)稀疏性問題, 即對一些未在查詢?nèi)罩局谐霈F(xiàn)的查詢或具有長尾效應(yīng)的稀少查詢[5], 往往不能給出有效的查詢建議, 導(dǎo)致生成的查詢建議覆蓋度較低。還有一些研究利用外部文本語料庫[5], 通過挖掘語料庫中詞與詞之間的語義關(guān)系, 由原查詢合成新的查詢, 然后將其作為候選查詢建議。這類方法不依賴查詢?nèi)罩? 具有較高的覆蓋度, 但查詢建議的相關(guān)性較低。造成傳統(tǒng)查詢建議研究存在諸多問題的一個原因是, 在生成訓(xùn)練數(shù)據(jù)時, 主要根據(jù)領(lǐng)域的先驗知識, 通過特征工程(feature engineering), 使用手工方式來定義數(shù)據(jù)的特征, 因此常常忽略數(shù)據(jù)中一些隱藏的重要特征, 從而無法有效地捕捉底層數(shù)據(jù)中潛在的關(guān)系。
隨著深度神經(jīng)網(wǎng)絡(luò)模型在 CV 和 NLP 等領(lǐng)域的不斷發(fā)展, 當(dāng)前查詢建議研究主要集中在基于神經(jīng)網(wǎng)絡(luò)模型的方法[1,11–17], 其目標(biāo)是利用各種神經(jīng)網(wǎng)絡(luò)模型和大規(guī)模數(shù)據(jù)集來提升搜索引擎查詢建議系統(tǒng)的性能。根據(jù)采用的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)不同, 可以分為如下兩種方式。1)基于 RNN 和注意力機制(at-tention mechanism)的方法[1,11–14]。如 Sordoni 等[1]提出一種層次循環(huán) encoder-decoder 神經(jīng)網(wǎng)絡(luò)模型, 其encoder 和 decoder 均采用 RNN 結(jié)構(gòu), 利用模型的層次結(jié)構(gòu)捕捉不同層面的查詢語義信息, 用于生成情境感知查詢建議。Dehghani 等[11]在單層 RNN 模型的基礎(chǔ)上, 采用注意力機制[9]為查詢中的查詢詞分配不同的權(quán)重。2)基于 Transformer 模型以及預(yù)訓(xùn)練語言模型(pre-trained language model, PLM)的方 法[15–17]。Transformer 模型是由 Vaswani 等[10]提出的一種最早用于神經(jīng)翻譯任務(wù)的神經(jīng)網(wǎng)絡(luò)模型, 目前已成為 NLP 應(yīng)用領(lǐng)域的頂級模型之一。與 RNN模型相比, Transformer 模型引入一些新概念, 如多頭自注意力機制和位置編碼等, 使得 Transformer 模型具有并行化處理文本的能力, 極大地提高了特征學(xué)習(xí)能力。Han 等[15]提出一個基于圖增強的序列到關(guān)注模型, 編碼器端在層次 RNN 模型的基礎(chǔ)上, 合并句子層圖卷積網(wǎng)絡(luò)和關(guān)鍵字層圖卷積網(wǎng)絡(luò), 用于編碼查詢序列; 解碼器端則采用 Transformer 模型, 用于解碼多個編碼器的輸出。PLM 模型是在 Trans-former 模型的基礎(chǔ)上進一步發(fā)展而來, 目前在 NLP領(lǐng)域已占據(jù)主導(dǎo)地位。Yu 等[17]提出一個小樣本生成方法, 用于對話檢索查詢重寫。該方法采用微調(diào)的 GPT-2 模型, 能有效地捕捉對話的上下文信息。
如何解決查詢建議的個性化和多樣化[6]等問題, 是當(dāng)前查詢建議研究的重要研究方向。情境感知(context-aware)的查詢建議[1,4,7]使用查詢情境(query context), 即在當(dāng)前會話中, 將用戶先前輸入的查詢序列作為后續(xù)查詢的線索和依據(jù), 其目標(biāo)是生成個性化的具有較高相關(guān)性的查詢建議。
數(shù)據(jù)增強[18–20]最早應(yīng)用于 CV 領(lǐng)域。其基本思想是, 對有標(biāo)記數(shù)據(jù)集中一定數(shù)量的圖片進行諸如平移、縮放和旋轉(zhuǎn)等幾何變換, 由于圖像本身的語義保持不變, 因此通過這種操作能夠有效地增加訓(xùn)練數(shù)據(jù)的數(shù)量。通過數(shù)據(jù)增強, 能降低數(shù)據(jù)集中正負樣本不平衡的比例, 增加訓(xùn)練數(shù)據(jù)的多樣性, 進而提高模型的魯棒性和泛化能力。Chen 等[18]提出一個結(jié)構(gòu)簡單的對比自監(jiān)督學(xué)習(xí)算法 SimCLR, 先對數(shù)據(jù)集進行數(shù)據(jù)增強, 然后采用卷積神經(jīng)網(wǎng)絡(luò)對數(shù)據(jù)進行編碼。同時, 采用對比目標(biāo)損失函數(shù), 使得正樣本數(shù)據(jù)對之間的距離盡可能小, 負樣本數(shù)據(jù)對之間的距離盡可能大。實驗結(jié)果表明, 該方法超過了之前在 ImageNet 上基于自監(jiān)督學(xué)習(xí)和半監(jiān)督學(xué)習(xí)的方法。數(shù)據(jù)增強方法在 CV 領(lǐng)域得到廣泛使用后, 又延伸到 NLP 領(lǐng)域。由于 NLP 領(lǐng)域數(shù)據(jù)具有離散性, 因此其應(yīng)用方法與 CV 領(lǐng)域有所不同, 大致可以分為: 基于復(fù)述(praphrasing)、基于噪聲(noising)以及基于采樣(sampling)三類[19]。Abas-kohi 等[20]提出一個基于復(fù)述指導(dǎo)的數(shù)據(jù)增強方法LM-CPPF, 用于對大語言模型進行基于對比提示的小樣本微調(diào), 實驗結(jié)果表明該方法在多個文本分類基準(zhǔn)上均超過現(xiàn)有的方法。
本研究提出的基于交叉注意力多源數(shù)據(jù)增強(MDACA)的情境感知查詢建議方法的問題描述 如下。
1)使用(1,2, …,q,q+1)表示查詢?nèi)罩局? 某個用戶u在給定的時間間隔(如 30 分鐘)內(nèi)向搜索引擎發(fā)出的查詢序列。q為當(dāng)前查詢, 即當(dāng)前用戶正在發(fā)出的查詢;q1為目標(biāo)查詢, 為模型預(yù)測用戶可能發(fā)出的下一個查詢的真實標(biāo)記; (1,2, …,q–1)為q的查詢情境, 即當(dāng)前查詢q的歷史查詢序列。
2)定義D為給定一個用戶查詢q, 在搜索引擎返回的查詢結(jié)果中, 與q最相關(guān)的文檔。訓(xùn)練數(shù)據(jù)集 DS={(1,2, …,q,q+1),D}, 模型輸入為(1,2, …,q)和D, 模型預(yù)測輸出的真實標(biāo)記為q1。
圖 1 描述 MDACA 查詢建議模型的總體架構(gòu), 主要包含 4 個部分。
1)查詢層編碼器。首先將訓(xùn)練集中的查詢序列(1,2, …,q)表示為詞嵌入向量, 然后使用Transformer編碼器對其進行編碼, 得到查詢層編碼向量。
2)ADJ 查詢建議編碼器。使用 ADJ 查詢建議算法生成當(dāng)前查詢q對應(yīng)的查詢建議序列(本文取top-5 候選查詢建議), 然后使用 Transformer 編碼器對其進行編碼, 得到 ADJ 全局查詢建議編碼向量。
3)文檔層編碼器。通過搜索引擎得到查詢序列(1,2, …,q)中當(dāng)前查詢q的相關(guān)文檔D, 然后使用 Transformer 編碼器對其進行編碼, 得到文檔層編碼向量。
4)查詢解碼器。將訓(xùn)練集中的目標(biāo)查詢q1表示為詞嵌入向量, 將其與在步驟 1~3 得到的不同層次的查詢編碼向量一起, 輸入 Transformer 解碼器中。使用交叉注意力機制, 得到解碼器輸出向量, 然后對其做進一步的線性變換和 Softmax 變換, 最后得到模型的預(yù)測表示輸出。
查詢層編碼器使用 Transformer 架構(gòu)。本文中Transformer 編碼器的輸入由多個查詢組成(1,2, …,q), 每個查詢使用符號 Transformer編碼器第層處理過程表示如下。 1)句子嵌入式表示。將原始的句子轉(zhuǎn)換為詞向量: ADJ查詢建議編碼器和查詢層編碼器共享同一個Transformer編碼器。紅色箭頭表示ADJ查詢建議編碼器流經(jīng)相關(guān)模塊的路徑, 黑色箭頭表示查詢層編碼器流經(jīng)相關(guān)模塊的路徑 圖1 基于交叉注意力多源數(shù)據(jù)增強的情境感知查詢建議模型架構(gòu) Fig. 1 Architecture for the proposed MDACA based context-aware query suggestion model 2)多頭自注意力機制: Transformer 編碼器第層的輸出 TEout表示為 Transformer 編碼器多層堆疊處理的方式是將第層的輸出作為第1層的輸入, 然后進行迭代處理。 ADJ 查詢建議編碼器首先使用ADJ查詢建議算法[1,4,7]生成基于全局統(tǒng)計的查詢建議。其算法的主要思想為, 任意給定一個查詢會話(1,2…,q), 統(tǒng)計在整個查詢?nèi)罩局兄苯痈S在查詢q之后出現(xiàn)的查詢及其頻度, 并按頻度從大到小排序, 最后返回top-查詢, 作為候選查詢建議序列??梢钥闯? ADJ是一種非情境感知的方法, 即算法給出的查詢建議只與q有關(guān), 而與q之前輸入的查詢無關(guān)。并且, 該統(tǒng)計基于整個查詢?nèi)罩? 因此具有全局統(tǒng)計的意義。本文使用 top-5 查詢作為候選查詢建議序列。 生成候選查詢建議序列后, ADJ 查詢建議編碼器與查詢層編碼器共享同一個 Transformer 編碼器, 對候選查詢建議序列進行編碼。因此其處理過程與查詢層編碼器相同。 文檔層編碼器的主要作用是獲取當(dāng)前查詢q與其相關(guān)文檔D之間的神經(jīng)注意力向量, 該向量最終被輸入解碼器中, 用于查詢建議的生成。 與查詢層編碼器和ADJ查詢建議編碼器的輸入不同, 文檔層編碼器的輸入D是由語義相對完整的句子組成, 本文中最大長度限制為 50 個詞。與查詢序列相比, Transformer 模型更適合處理像D這樣句法關(guān)系和語義相對完整的句子, 更容易挖掘出當(dāng)前查詢q與其相關(guān)文檔D中各種詞(或概念)之間語義關(guān)系。 除輸入的差異外, 文檔層編碼器的處理過程與查詢層編碼器和 ADJ 查詢建議編碼器完全相同。 查詢解碼器使用 Transformer 模型, 其結(jié)構(gòu)與查詢層編碼器基本上相同, 主要區(qū)別在于 Transformer解碼器多了 3 層 Multi-Head Cross-Attention, 其主要作用是將前面生成的查詢層編碼向量、ADJ 全局查詢建議編碼向量和文檔層編碼向量的輸出(圖 1 中查詢解碼器中的和)與 Transformer 解碼器的Masked Multi-Head Self-Attention 層輸出(圖 1 中查詢解碼器中的)逐級進行多頭交叉注意力(Multi-Head Cross-Attention)進行計算, 建立輸入查詢序列與預(yù)測查詢中詞與詞之間的關(guān)聯(lián)。 對 Transformer 查詢解碼器的輸出dec進行如下變換: 本文采用當(dāng)前可公開使用的 AOL 搜索引擎查詢?nèi)罩咀鳛橛?xùn)練和測試數(shù)據(jù)集, 該日志包含 2006 年3 月 1 日至 2006 年 5 月 31 日的用戶查詢數(shù)據(jù)。遵循Sordoni 等[1]的做法, 使用前對該查詢?nèi)罩具M行預(yù)處理, 然后將其劃分為如下 4 個數(shù)據(jù)集: 1)背景數(shù)據(jù)集 BackgroudSet, 包含 1872172 個會話, 主要用于生成 ADJ 查詢建議; 2)訓(xùn)練數(shù)據(jù)集 TrainSet, 共包含 566136 個會話, 主要用于查詢建議模型的訓(xùn)練, 包括本文提出的模型和用于對比的基線模型; 3)校驗數(shù)據(jù)集 ValidSet, 包含 184315 個會話, 用于校驗?zāi)P偷男阅? 4)測試數(shù)據(jù)集 TestSet, 包含 287671 個會話, 用于測試查詢建議模型的性能。 對于查詢q對應(yīng)的相關(guān)文檔D的生成, 本文采用如下離線方式: 1)如果查詢?nèi)罩局写嬖诓樵?i>q對應(yīng)的點擊 url, 且能下載, 則抽取該文檔作為D; 2)構(gòu)建兩個基于本地的搜索引擎系統(tǒng), 其中一個索引了 2005782 個英文頁面集, 另一個為基于 Wikipedia的檢索系統(tǒng)(下載最新的 Wikipedia 離線文檔①https://dumps.wikimedia.org/enwiki/latest/, 并索引了文檔中文章的標(biāo)題、文本和類別)。對于不存在于查詢?nèi)罩局械奈臋n, 則利用這兩個搜索引擎系統(tǒng), 生成查詢相關(guān)文檔D。 本文提出的 MDACA 查詢建議模型的基本結(jié)構(gòu)屬于 Transformer 模型。針對現(xiàn)有基于深度神經(jīng)網(wǎng)絡(luò)的查詢建議研究以及主要采用的兩種神經(jīng)網(wǎng)絡(luò)模型(RNN 和 Transformer), 設(shè)計如下 3 種基線模型, 用來與本文方法進行對比實驗。 HRED: Sordoni 等[1]提出的一種層次循環(huán) encoder- decoder 神經(jīng)網(wǎng)絡(luò)模型, 其 encoder 以及 decoder 均采用 RNN 結(jié)構(gòu), 為經(jīng)典的基于 RNN 結(jié)構(gòu)的查詢建 議模型。 HRED+Att: 在 HRED 模型的基礎(chǔ)上, 為探究注意力機制[9]在提升查詢建議模型性能方面的作用而實現(xiàn)的一個基于 encoder-decoder 架構(gòu)的模型。 Transformer: 本文在基本 Transformer 模型[10]的基礎(chǔ)上實現(xiàn)的一個基于 encoder-decoder架構(gòu)的查詢建議模型, 該模型單純使用Transformer編碼器和解碼器用于查詢建議的生成, 主要用于考察 Trans-former 模型在查詢建議生成方面的性能。 傳統(tǒng)的查詢建議研究主要采用基于自動評價方式的查詢建議覆蓋度(Coverage)和基于人工評價方式的查詢建議質(zhì)量(Quality)等評價方法[4,7]?;谏疃壬窠?jīng)網(wǎng)絡(luò)查詢建議模型對幾乎所有的查詢序列都能輸出預(yù)測查詢, 因此采用覆蓋度指標(biāo)沒有意義。本文對各種模型的實驗性能對比均采用自動評價方法, 主要從相關(guān)性(relevance)方面評價查詢建議模型的性能。本文采用 BLEU 指標(biāo)[21], 該指標(biāo)度量模型生成的句子與真實句子之間的 N-gram 詞覆蓋度, 是一種相關(guān)性指標(biāo)。常用的 BLEU 指標(biāo)有 BLEU-1~BLEU-4。指標(biāo)的數(shù)值越大, 表示模型生成的句子越接近真實句子。 3.3.1相關(guān)性實驗結(jié)果 3 種基線模型 HRED, HRED+Att 和 Transfor-mer 盡量采用原始文獻提供的參數(shù)。同時為了減少不同測試數(shù)據(jù)可能對模型生成查詢建議性能產(chǎn)生的影響, 我們在 TestSet 數(shù)據(jù)集上分別隨機抽取 5 組測試數(shù)據(jù), 每組包含 1000 個測試數(shù)據(jù), 進行查詢建議生成的相關(guān)性實驗, 最后取測試結(jié)果的平均值。實驗結(jié)果如表 1 所示。 BLEU-1 類似一個 1 元詞袋, 僅度量生成的句子與目標(biāo)句子中包含的 1 元詞在詞袋上的覆蓋度。BLEU-2~BLEU-4 體現(xiàn)不同程度詞的順序關(guān)系。與一般的句子相比, 查詢由若干關(guān)鍵詞組成, 本身缺乏句法關(guān)系。在語義上, 查詢中詞的順序關(guān)系在很多情況下也變得不再重要。如查詢“free cards online”和“online free cards”在查詢語義上區(qū)別不大。因此, 與度量一般句子的 BLEU 指標(biāo)有所不同, 對查詢建議生成任務(wù)來說, 與 BLEU-3 和 BLEU-4相比, 使用 BLEU-1 和 BLEU-2 具有更好的相關(guān)性評價意義。 從表 1 可以看到, 本文提出的 MDACA 模型在BLEU-1~BLEU-3 指標(biāo)上均超過其他 3 種模型。MDACA 的 BLEU-1 指標(biāo)達到 40.175%, HRED+Att模型達到 34.657%, 而 HRED 模型僅取得 34.193%, Transformer 模型分值最低, 僅為 32.540%。根據(jù) 4種模型采用的 encoder 和 decoder 結(jié)構(gòu)的不同, 可將它們分成兩類: 1)采用層次 RNN 模型的 HRED 和HRED+Att; 2)采用Transformer模型的 Transformer和 MDACA。從表 1 中的數(shù)據(jù)可以得到如下結(jié)論。 1)如果單純使用 Transformer 模型, 其性能低于層次 RNN 模型。其原因可能是, 層次 RNN 模型可以很好地提取查詢序列中底層查詢和高層會話的語義關(guān)系, 而 Transformer 模型是一種扁平結(jié)構(gòu), 其采用的多頭自注意力機制、位置編碼等技術(shù)本來能夠很好地捕獲句子中詞之間的語義關(guān)系, 在查詢建議的應(yīng)用場景下, 用戶查詢往往較短, 查詢本身缺乏句法關(guān)系, 查詢中詞的順序關(guān)系不明顯等, 這些特點抑制了 Transformer 模型優(yōu)勢的發(fā)揮。 表1 各種模型生成查詢建議的相關(guān)性對比實驗結(jié)果(%) 注: 粗體數(shù)字表示性能最優(yōu), 下同。 2)使用注意力機制可以在一定程度上提高層次 RNN 模型的性能。如在 BLEU-1 和 BLEU-2 指標(biāo)上, HRED+Att 模型比 HRED 模型提高約 1.36%和14.67%。 3)MDACA 模型可以較大幅度地提高模型的性能。如在 BLEU-1 和 BLEU-2 指標(biāo)上, MDACA 模型比 HRED+Att 模型分別提高約 15.92%和 41.11%, 比 Transformer 分別提高約 23.46%和 97.52%, 充分證明了 MDACA 模型在提高查詢建議相關(guān)性方面的有效性。 3.3.2消融研究 為了進一步評估本文提出的 MDACA 模型中各個組件對模型性能的影響, 本文進行相應(yīng)的消融實驗, 結(jié)果如表 2 所示。 表 2 中 MDACA 為原始方法, MDACA Without ADJ 為 MDACA 模型去除 ADJ 查詢建議編碼器后的方法; MDACA Without Transformer Shared 為 MDA-CA 模型中 ADJ 查詢建議編碼器與查詢層編碼器不共享 Transformer 編碼器的方法; MDACA Without Document 為 MDACA 模型去除文檔層編碼器后得到的方法。 從表 2 可以看到, 去除各相應(yīng)組件后, 與原始模型相比, 各個模型的 BLEU-1 和 BLEU-2 指標(biāo)均出現(xiàn)一定程度的下降。MDACA Without Document的性能下降較多, 分別為 9.49%和 18.78%。MD-ACA Without ADJ 分別下降約 5.80%和 12.05%, MDACA Without Transformer Shared 分別下降約3.83%和 7.82%。實驗結(jié)果表明, 文檔層編碼器對MDACA 模型性能的影響最大, 采用 ADJ 查詢建議編碼器和 Transformer 共享編碼器均能不同程度地提高模型的性能。同時, 也驗證了本文提出的采用多源數(shù)據(jù)融合方法對原始查詢?nèi)罩静樵冞M行數(shù)據(jù)增強的有效性。 表2 消融實驗結(jié)果(%) 3.3.3案例研究 表 3 列出使用 5 種模型生成的 8 個查詢建議實例。其中, 查詢序列的查詢情境長度分別為 0~2。這里定義context 為查詢情境長度為的 Session, 即當(dāng)前查詢q前有=–1 個查詢, 加上目標(biāo)查詢q1, 整個 Session 的長度為1。例如, 0-context Session 的長度為 2, 其余依此類推。因此, #1~#3 查詢序列為 0-context 類型的 Session。從表 3 可以看出, ADJ 模型對兩組測試查詢序列不能生成預(yù)測查詢。原因是傳統(tǒng)的基于統(tǒng)計方法的查詢建議模型存在數(shù)據(jù)稀疏性的問題, 很難做到高的覆蓋度?;谏窠?jīng)網(wǎng)絡(luò)的模型對所有的查詢序列都產(chǎn)生了有意義的輸出。 從表 3 可以發(fā)現(xiàn), 與其他幾種模型相比, 針對一些查詢, 本文提出的 MDACA 模型可以給出粒度更細、含義更豐富的查詢建議。例如對于#2 查詢序列“frontier airlines com”, 不僅建議了同類型的一些航空公司, 并且給出一個提供廉價航班機票的網(wǎng)站“www cheapseats”。對于#3 查詢序列“aol brow-ser”, 該模型建議了同類型的internet browser”, 同時推薦“aol update”和“aol antivirus”。對于#4 查詢序列, MDACA 模型除給出查詢建議“baseball bats”和“baseball shop”外, 還推薦著名的體育頻道“espn baseball”, 另外, 還給出與“baseball bats”密切相關(guān)的美國球類運動服飾零售店“dickssportinggoods”。該模型還能做一定程度的語義聯(lián)想和推理。例如對#5 查詢序列, 模型通過對當(dāng)前查詢“enterprise”之前的查詢“toyota”進行分析, 給出“toyota financial”的建議, 說明模型聯(lián)想到“toyota”作為一個企業(yè)應(yīng)該存在“財務(wù)”方面的業(yè)務(wù)。 本文提出一種基于交叉注意力多源數(shù)據(jù)增強(MDACA)的情境感知查詢建議模型。該模型除使用查詢?nèi)罩緯挃?shù)據(jù)外, 還采用數(shù)據(jù)增強方法, 使用搜索引擎獲取查詢相關(guān)文檔, 對當(dāng)前查詢進行擴展; 使用 ADJ 模型, 根據(jù)查詢?nèi)罩緯挼娜纸y(tǒng)計信息, 生成當(dāng)前查詢的若干相關(guān)查詢建議作為訓(xùn)練數(shù)據(jù), 并采用Transformer模型作為編碼器和解碼器。與目前多個代表性研究方法相比, 本文模型能夠生成相關(guān)性更高的情境感知查詢建議。 表3 各類模型生成的查詢建議示例 如何將本文提出的 MDACA 模型與預(yù)訓(xùn)練語言模型(如 BERT 和 GPT 等)相結(jié)合, 進一步提升情境感知查詢建議系統(tǒng)的性能, 是未來的工作重點。 [1] Sordoni A, Bengio Y, Vahabi H, et al. A hierarchi- cal recurrent encoder-decoder for generative context-aware query suggestion // Proceedings of CIKM. Mel-bourne, 2015: 553–562 [2] Song Y, Zhou D, He L. Query suggestion by constructing term-transition graphs // Proceedings of WSDM. New York, 2012: 353–362 [3] Mei Q, Zhou D, Church K. Query suggestion using hitting time // Proceedings of CIKM. Napa, 2008: 469–478 [4] Cao H, Jiang D, Pei J, et al. Context-aware query suggestion by mining click-through and session data // Proceedings of KDD. Las Vegas, 2008: 875–883 [5] Jain A, Ozertem U, Velipasaoglu E. Synthesizing high utility suggestions for rare web search queries // Pro-ceedings of SIGIR. Beijing, 2011: 805–814 [6] Hu H, Zhang M, He Z, et al. Diversifying query sug-gestions by using topics from Wikipedia // Proceedings of Web Intelligence. Atlanta, 2013: 139–146 [7] He Q, Jiang D, Liao Z, et al. Web query recommen-dation via sequential query prediction // Proceedings of ICDE. Shanghai, 2009: 1443–1454 [8] Cho K, Merrienboer B, Gül?ehre ?, et al. Learning phrase representations using RNN encoder-decoder for statistical machine translation // Proceedings of EMNLP. Doha, 2014: 1724–1734 [9] Bahdanau D, Cho K, Bengio Y. Neural machine trans-lation by jointly learning to align and translate // Proceedings of ICLR. San Diego, 2015: 1–15 [10] Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need // Proceedings of NIPS. Long Beach, 2017: 5998–6008 [11] Dehghani M, Rothe S, Alfonseca E, et al. Learning to attend, copy, and generate for session-based query suggestion // Proceedings of CIKM. Singapore, 2017: 1747–1756 [12] Wu B, Xiong C, Sun M, et al. Query suggestion with feedback memory network // Proceedings of WWW. Lyon, 2018: 1563–1571 [13] Ahmad W, Chang, K Wang H. Multi-task learning for document ranking and query suggestion // Proceedings of ICLR. Vancouver, 2018: 1–14 [14] Ahmad W, Chang K, Wang H. Context attentive do-cument ranking and query suggestion // Proceedings of SIGIR. Paris, 2019: 385–394 [15] Han F, Niu D, Lai K, et al. Inferring search queries from web documents via a graph-augmented sequence to attention network // Proceedings of WWW. San Francisco, 2019: 2792–2798 [16] Mustar A, Lamprier S, Piwowarski B. On the study of transformers for query suggestion. ACM Transactions on Information Systems. 2022,40(1): 18:1–18:27 [17] Yu S, Liu J, Yang J, et al. Few-shot generative con-versational query rewriting // Proceedings of SIGIR. Online Meeting, 2020: 1933–1936 [18] Chen T, Kornblith S, Norouzi M, et al. A Simple framework for contrastive learning of visual repre-sentations // Proceedings of ICML. Online Meeting, 2020: 1597–1607 [19] Li B, Hou Y, Che W. Data augmentation approaches in natural language processing: a survey. AI Open, 2022, 3(1): 71–90 [20] Abaskohi A, Rothe S, Yaghoobzadeh Y. LM-CPPF: paraphrasing-guided data augmentation for contrastive prompt-based few-shot fine-tuning // Proceedings of ACL. Toronto, 2023: 670–681 [21] Papineni K, Roukos S, Ward T, et al. BLEU: a method for automatic evaluation of machine translation // Pro-ceedings of ACL. Philadelphia, 2002: 311–318 A Context-Aware Query Suggestion Method Based on Multi-source Data Augmentation through Cross-Attention ZHANG Naizhou?, CAO Wei College of Computer and Information Engineering, Henan University of Economics and Law, Zhengzhou 450046; ? E-mail: zhangnz@126.com Most existing neural network-based approaches for query suggestion use solely query sequences in query logs as training data. However, these methods cannot fully mine and infer all kinds of semantic relationships among words or concepts from query sequences because queries in query sequences inherently suffer from a lack of syntactic relation, even a loss of semantics. To solve this problem, this paper proposes a new neural network model based on multi-source data augmentation through cross-attention (MDACA) for generating context-aware query suggestions. Proposed model adopts a Transformer-based encoder-decoder model that incorporates document-level semantics and global query suggestions into query-level information through cross-attention. The experimental results show that in contrast to the current suggestion models, the proposed model can generate context-aware query suggestions with higher relevance. query suggestion; data augmentation; cross-attention; context-aware; Transformer model2.2 ADJ查詢建議編碼器
2.3 文檔層編碼器
2.4 查詢解碼器
3 實驗評估
3.1 數(shù)據(jù)集及基線方法
3.2 評價指標(biāo)
3.3 實驗結(jié)果及分析
4 結(jié)束語