?

增強提示學習的少樣本文本分類方法

2024-01-30 03:07李睿凡魏志宇范元濤葉書勤張光衛
關鍵詞:度量實例類別

李睿凡 魏志宇 范元濤 葉書勤 張光衛

北京大學學報(自然科學版) 第60卷 第1期 2024年1月

Acta Scientiarum Naturalium Universitatis Pekinensis, Vol. 60, No. 1 (Jan. 2024)

10.13209/j.0479-8023.2023.071

國家自然科學基金(62076032)資助

2023–05–18;

2023–08–30

增強提示學習的少樣本文本分類方法

李睿凡1,2,3,?魏志宇1范元濤1葉書勤1張光衛2,4

1.北京郵電大學人工智能學院, 北京 100876; 2.教育部信息網絡工程研究中心, 北京 100876; 3.交互技術與體驗系統文化和旅游部重點實驗室, 北京 100876; 4.北京郵電大學計算機學院, 北京 100876; ?E-mail: rfli@bupt.edu.cn

針對少樣本文本分類任務, 提出提示學習增強的分類算法(EPL4FTC)。該算法將文本分類任務轉換成基于自然語言推理的提示學習形式, 在利用預訓練語言模型先驗知識的基礎上實現隱式數據增強, 并通過兩種粒度的損失進行優化。為捕獲下游任務中含有的類別信息, 采用三元組損失聯合優化方法, 并引入掩碼語言模型任務作為正則項, 提升模型的泛化能力。在公開的 4 個中文文本和 3 個英文文本分類數據集上進行實驗評估, 結果表明 EPL4FTC 方法的準確度明顯優于所對比的基線方法。

預訓練語言模型; 少樣本學習; 文本分類; 提示學習; 三元組損失

文本分類[1]是自然語言處理領域的熱點研究內容之一, 已經在多個場景得到充分的發展。例如, 在情感分析、新聞推薦和用戶畫像等場景中, 通??梢垣@取海量的未標注數據, 因而需要大量的人工標注工作。但是, 在諸如醫療和安全等一些特殊的工業應用場景中, 通常較難獲取大量數據來滿足模型的訓練, 使得基于數據驅動的深度學習方法在少量數據情況下較難取得令人滿意的效果。為了使機器具有僅通過幾個簡單樣本就能實現快速學習新事物的能力, Wang 等[2]提出少樣本學習的概念。少樣本學習的核心目標是面對新的領域任務, 利用先驗知識, 僅通過有限的訓練樣本, 快速且準確地完成對新領域任務的學習。

近年來, 隨著預訓練語言模型的發展, 尤其是以 BERT[3]為代表的通用預訓練模型的提出, 使得基于預訓練和微調的兩階段訓練范式逐漸成為新的趨勢, 并在大多數自然語言處理任務中取得優異的成績。但是, 在微調階段, 模型的性能通常取決于任務的類型和有標注訓練數據的規模。這就使得當模型面對僅含有少量訓練樣本的下游任務時, 往往性能表現不佳。針對預訓練模型下的少樣本學習問題, 基于提示學習的方法提供了一種新穎有效的解決思路?;谔崾緦W習的方法通過將下游任務的形式調整為與預訓練任務形式一致, 充分發揮預訓練模型中語言模型任務的優勢, 同時通過減小上下游任務訓練方式不一致帶來的差異, 達到少樣本學習的目的。雖然基于提示學習的方法已取得不錯的效果, 但仍然面臨以下兩方面的挑戰: 1)在少樣本學習的場景中, 容易出現類別的數量遠多于單一類別樣本量的現象, 使得模型在此類任務中的表現通常較差; 2)基于提示學習的方法大多依賴預訓練語言模型中已經學習到的先驗知識, 較少關注下游任務的類別表征信息。

針對上述問題, 本文提出一種增強提示學習的少樣本文本分類算法 EPL4FTC(enhanced prompt learning for few-shot text classification)。該算法首先將下游任務轉換成基于自然語言推理的提示學習形式, 通過任務形式的轉換, 在有效地利用預訓練語言模型中已學習到的先驗知識的基礎上, 實現數據的隱式增強, 并通過兩種粒度的損失進行優化。此外, 為捕獲下游任務中豐富的類別表征信息, 該算法通過三元組損失[4]進行聯合優化, 同時引入掩碼語言模型任務(MLM)作為正則項, 預防過擬合或數據災難性遺忘帶來的風險, 進一步提升模型的泛化能力。

1 相關工作

本文提出的方法主要與基于度量學習的方法和基于提示學習的方法密切相關。

1.1 基于度量學習的方法

Koch 等[5]提出由兩個結構相同且部分共享權重的網絡構成的孿生網絡模型, 通過歐式方法計算輸入樣本對的匹配程度來判斷它們是否屬于同一類別。Vinyals 等[6]提出一種匹配網絡模型, 通過記憶網絡和注意力機制, 實現對以往知識的記憶存儲, 并快速學習新樣本的特征。Snell 等[7]提出原型網絡模型, 將不同類別的平均向量作為類別原型的向量表示, 最后在推理階段, 通過計算樣本到類別原型向量的距離, 實現對類別的預測。Sung 等[8]提出關系網絡模型, 該方法通過一個神經網絡關系模塊, 實現自動學習特征間的距離度量關系表示。Geng等[9]提出歸納網絡模型, 在關系網絡的基礎上, 引入動態路由機制, 實現獲取支撐實例的類別向量表示, 并通過關系模塊計算查詢實例與支撐實例的關系得分來進行分類。隨后, Geng 等[10]又提出動態記憶歸納網絡, 通過引入二階段訓練范式, 在第一階段進行有監督的訓練, 為第二階段的訓練提供一個良好初始化的編碼器和記憶模塊, 同時利用動態路由機制, 為少樣本學習提供更強大的靈活性, 讓模型更好地適應訓練數據。

基于度量學習的方法采用傳統度量或深度度量等方法, 可以實現對類別的表征進行表示。但是, 在不同的任務中, 不同的度量方法差異性較大, 這類方法無法適應多樣化的實際問題。此外, 基于度量學習的方法過于依賴訓練數據, 當數據較少時, 不能很好地學習到類別的映射關系。

1.2 基于提示學習的方法

Schick 等[11–13]提出模式探索訓練(pattern exp-loiting training, PET)方法, 用于少樣本學習。該方法通過定義并添加人工構建的模板, 將文本分類任務轉換為完形填空任務。在訓練過程中, PET 方法將分類標簽轉換成標簽描述形式, 并使用[MASK]進行替換, 填入人工定義的模板當中。通過語言模型還原[MASK]位置的詞, 最后使用標簽映射策略完成文本分類任務。隨后, Liu 等[14]在 PET 的基礎上提出自適應 PET 模型, 將模板中需要模型預測的詞從有限候選詞變成整個詞表, 通過擴大其搜索空間來增加模型的泛化性能, 并且通過正確標簽反向預測原文中的字符, 進一步提升模型的性能。Gao等[15]提出表現更好的少樣本微調語言模型(LM-BFF)。該模型首先通過 T5 模型[16]實現自動化的生成最優模板, 避免人工搜索模板這一繁雜的過程。接下來, 將提示示例通過上下文的形式添加到原始輸入中, 利用更豐富的文本信息完成語言模型的建模工作。Liu 等[17]提出提示微調(P-tuning)模型。該模型丟棄提示模板必須是自然語言的假說, 讓語言模型自動學習適合當前任務形式的最佳提示模板形式。在訓練過程中, 使用預訓練模型詞表中未使用的字符去學習模板的連續表示形式, 并且只學習更新模板對應的參數, 從而極大地減小模型需要學習的參數量。

最近, Wang 等[18]提出少樣本學習的蘊含 EFL模型。與將文本分類任務轉換為完形填空任務形式不同的是, EFL 是將文本分類任務轉換為文本蘊含任務形式。在訓練過程中, 對于每一個原始輸入, EFL 根據正確的標簽描述生成新的正例, 并根據其余候選標簽隨機生成若干新的負例。通過上述數據構造方式, 實現原始輸入與正確的標簽描述模板構成蘊含關系, 與其余候選標簽則構成非蘊含關系。Jiang 等[19]提出兩種不同的模板集成方法: 一種是概率平均的集成方法, 通過訓練集選擇若干性能最好的提示模板, 然后在推理階段, 將候選的若干提示模板的概率平均值作為最終預測結果; 另一種是優化提示權重的集成方法, 對于每一種關系引入可學習權重, 最終輸出概率為前若干提示輸出概率的加權和。Hu 等[20]提出一種知識型的提示學習調優方法, 使用外部知識庫擴展標簽詞空間, 提高標簽詞的覆蓋率, 在零樣本和少樣本文本分類任務中證明了有知識調優的有效性。Min 等[21]提出一種用于語言模型提示的噪聲通道方法, 證明使用計算給定標簽輸入通道的噪聲通道的方法顯著優于直接計算標簽概率的方法。Zhang 等[22]提出同時使用基學習器和元學習器的提示學習方法, 證明度量學習可以幫助提示學習的方法更快地收斂?;谔崾緦W習的方法是在大規模無監督語料訓練的預訓練語言模型基礎上發展起來的, 旨在減小預訓練任務和下游任務形式之間的巨大差異, 使下游任務形式盡可能與預訓練任務形式保持一致。

2 EPL4FTC算法

本文提出的 EPL4FTC 模型由基于自然語言推理的提示學習模塊和度量優化模塊兩部分組成, 兩個模塊共享編碼層的參數。其中, 基于自然語言推理的提示學習模塊通過掩碼語言模型頭層計算輸入句子中[MASK]位置處推理詞的概率, 并通過單句級和句群級兩種粒度損失方法進行模型優化。度量優化模塊對訓練樣本進行隨機抽樣, 通過共享編碼層編碼后, 使用三元組損失計算錨點與正負例之間的損失, 最后對兩個模塊聯合學習。

2.1 基于自然語言推理的提示學習模塊

如圖 1 所示, 基于自然語言推理的提示學習模塊負責將文本分類任務轉換為基于自然語言推理形式的完型填空任務。具體做法是, 對于原始輸入文本, 我們通過模板映射, 將真實標簽轉化為自然語言推理形式。其中, 推理詞使用預訓練語言模型中[MASK]字符替代, 通過建模上下文間的關系, 推理出[MASK]位置上真實的推理詞。下面給出基于自然語言推理的提示學習方法的形式化表達。

對于給定的輸入文本, 對應的真實標簽為, 需要推理判斷的標簽描述為。通過函數prompt, 將輸入轉換為基于提示學習的新的輸入形式′:

′ =prompt(,,), (1)

其中,表示通過 verbalize 映射, 將真實標簽與需要推理判斷的標簽描述的關系轉為邏輯推理詞, 可表示為

= verbalize(,)。 (2)

定義模板的一般形式為[′]=“[], [][]”。對于原始輸入, 將其填充到[]中, 將需要推理判斷的標簽描述填充到[]中。接下來, 通過映射函數verbalize(,), 將輸入的真實標簽描述與當前填充需要推理判斷的標簽描述轉換為當前輸入的邏輯推理詞。其中, []將被預訓練語言模型中的[MASK]字符替代, 邏輯推理關系詞將作為[]的真實標簽參與模型的優化。在推理階段, 通過映射函數prompt, 將輸入和所有的標簽描述轉化為基于提示學習的′的形式。最后, 通過計算[]處的自然語言推理詞概率, 選取預測為蘊含關系最大概率的標簽描述對應的真實標簽作為最終預測結果。

當采用自然語言形式的邏輯推理詞時, 使用自然語言中的“是”表示蘊含推理關系, “不是”表示非蘊含推理關系。進一步地, 為了讓語言模型學到更通用的自然語言推理表示, 對推理詞采用連續式的提示模板形式。也即, 使用詞表中未使用過的字符“[U1]”代表蘊含推理關系, “[U2]”代表非蘊含推理關系。

針對單樣本輸入形式以及通過數據增強形式擴增負樣本形成的樣例集合形式, 設計兩種粒度的損失函數來優化建模效果。

1)單句級損失函數。如圖 2 所示, 對于每一個通過prompt映射函數構成的新的輸入實例, 需要模型完成建模上下文信息, 預測推理出[MASK]位置處的真實推理詞, 并通過交叉熵進行優化。在給定輸入的情況下, 定義[MASK]處推理詞的概率分布如下:

式(3)中, Z 表示候選推理詞集合, s(z|x)=MLM (z|fprompt(x))表示在[MASK]處對候選推理詞集合的語言模型得分。最后, 通過交叉熵損失計算單句級損失:

圖2 單句級的優化流程

Ls= CE((|),)。 (4)

2)句群級損失函數。單句級損失函數僅考慮對實例進行優化, 沒有考慮同一組正負樣本間的關系, 因此定義句群級損失函數, 實現對一組正負樣本間的關系進行優化, 如圖 3 所示。具體地, 在對輸入的實例進行數據構造時, 通過輸入實例與所對應的類別生成一個正例, 將輸入實例與其他類別進行數據構造, 生成?1 個負例, 最終為每一條輸入樣本獲得個實例樣本。最后, 采用交叉熵損失對句群級進行優化:

Lq= CE(((|)),entail), (5)

其中,entail表示當前樣例組中真實標簽為蘊含關系的位置索引,((|))表示語言模型對[MASK]處推理詞在蘊含關系上的預測得分。最后, 基于自然語言推理的提示學習模塊的損失函數定義如下:

圖3 句群級的優化流程

Lp= (1 ?)LsLq, (6)

其中,為可調節的超參數。

2.2 度量優化模塊

提示學習利用預訓練語言模型在預訓練任務中學習到的先驗知識, 在下游任務中可以取得一個良好的性能。但是, 對文本分類任務而言, 類別特征的表示也至關重要。通過度量學習, 將原始語義空間的實例映射到目標任務中語義空間的表示, 使實例在目標任務中的語義空間表示具有更強的區分 能力。

度量優化模塊的目標是使在語義空間中屬于同一類別的實例之間的距離更接近, 使不同類別實例之間的距離更遠。通過三元組損失函數進行有監督的度量學習, 使模型可以更好地學習不同類別間的距離關系信息[23]。此外, 使用帶間隔的損失函數, 可以提升模型的泛化性能, 如式(7)所示。具體地, 在構造三元組數據時, 在某個類別中選定一個實例作為錨點, 同類別的實例作為正例, 其他類別的實例作為負例。

其中,(m,m)表示錨點與正例間的距離,(m,m)表示錨點與負例間的距離,表示設定的間隔值。

此外, 在少樣本學習場景中, 用于訓練的數據量通常十分有限。為了緩解災難性遺忘的問題, 使用掩碼語言模型優化目標作為正則項進行建模。因此, 度量優化模型的損失函數表示為

Laux= (1 ?) LtmlLmlm, (8)

式(8)中, Lmlm表示語言模型損失,表示相應的權重參數。

最后, 整體的損失函數由提示學習損失 Lp和度量優化損失 Laux的加權構成:

Ltotal= (1 ?)LpLaux, (9)

其中,表示權重參數。

2.3 模型訓練與推理

EPL4FTC 算法將文本分類任務轉化成自然語言推理任務, 轉化后的任務是一個二分類任務。因此, 當一個原始分類任務包括個類別時, 該算法需要進行次推理, 最后選擇預測概率最大的推理詞對應的標簽類別作為最終預測結果。為提升模型的泛化性能, 同時降低模型訓練的成本, EPL4FTC算法通過負采樣的方式對下游任務進行訓練。對于一個包含多個類別的分類任務, 將每一個實例與之對應的類別作為正例, 同時隨機選擇個其他類別與當前實例構成負例。上述數據構造方式不但能夠提升模型的性能, 而且與使用全部類別作為負例相比, 進一步縮短了訓練模型所需的時間。在模型推理階段, EPL4FTC 算法僅使用基于自然語言推理的提示學習模塊。具體地, 對于包含個標簽的文本分類任務, 對每一個實例生成包含自然語言推理提示模板的條新的輸入實例。通過模型預測每一個實例中[MASK]處所蘊含推理詞的概率, 在個預測結果中選擇預測概率最大的推理詞對應的標簽作為當前原始輸入實例的預測結果。

3 實驗與結果

3.1 實驗數據集

1)中文數據集。本文使用少樣本評測數據集FewCLUE[24]中文本分類任務對應的數據集, 在 4 個領域的評測數據集上進行實驗。其中, EPRSTMT 為電商評論領域的情感分析任務, 是典型的包含正向和負向情感的二分類任務; CSLDCP 是科學文獻領域的長文本多分類任務, 包含 67 個類別; TNEWS是新聞標題的短文本分類任務, 包含教育、娛樂和文化等 15 個類別; IFLYTEK 是根據 APP 應用的長文本主題描述信息, 對超過 100 多個應用類別進行分類的任務。

2)英文數據集。本文采用 3 個英文文本分類數據集 AG News, TREC 和 Yelp Review 進行評測。其中, AG News[25]是學術新聞搜索引擎從多個新聞來源中搜集的超過 100 萬篇文章構成的數據集, 包含世界、體育、商業和科技 4 類新聞主題; TREC[26]數據集包含 6 個一級標簽和 47 個二級標簽; Yelp Review 數據集來自 Yelp 的用戶評論, 其標簽是用戶對商品的星級打分, 共分為 5 級。用于評測的英文數據集從以上數據集中抽樣獲得。在 3 個原始英文數據集中分別隨機抽取 8 個、16 個和 32 個實例, 形成多個不同規模的數據集用于訓練, 測試集為原始數據集中的測試集。

3.2 基線方法

1)基于微調的方法(Fine-tuning)[3]: 在預訓練語言模型的基礎上, 為模型添加任務相關的分類器, 使模型可以處理下游任務。

2)Zero-shot 方法[27]: 基于 Roberta 等自編碼預訓練語言模型, 通過 MLM 進行推理評測。

3)Zero-shot (GPT)方法[17]: 基于 GPT 自回歸預訓練語言模型[28], 通過從左至右的語言模型進行推理評測。

4)PET 方法[12]: 通過添加人工自定義模板, 將下游任務轉化成完成填空形式的任務, 然后在候選標簽列表中選擇合適的標簽。

5)ADAPET 方法[29]: 為模板搜索正確答案時, 從有限候選詞變成整個詞表, 擴大了模型的搜索空間。此外, 對正確標簽反向預測原文中的詞, 實現模型性能的提升。

6)LM-BFF 方法[15]: 將自動化生成的離散化自然語言作為提示模板, 同時通過采樣的形式, 將實例以上下文的方式添加到每一個輸入中。

7)P-tuningR 方法[17]: 有別于自然語言形式的提示模板, P-tuningR 采用 Roberta 作為預訓練語言模型, 使模型自動學習到最佳的連續式的非自然語言提示模板。

8)EFL 方法[25]: 通過添加人工自定義模板, 將下游任務轉化成蘊含任務形式, 并添加額外的二分類器, 實現對下游任務的微調。

3.3 實現細節與評測指標

實驗在配有 CUDA 環境的 Linux 操作系統中進行, 并配置兩塊 GTX 1080Ti 顯卡。代碼使用基于PyTorch[30]框架的 HuggingFace 工具包來實現。對于中文數據集的評測, 采用 12 層網絡結構的中文RoBERTa-wwm-ext[31]預訓練模型; 對于英文數據集的評測, 采用 12 層結構的 BERT-BASE 預訓練模型。模型參數設置如下: 學習率為 10?5, 超參數設置為=0.7,=0.01,=0.02, 三元損失間隔=0.15, 并使用 AdamW[32]優化器進行模型參數的優化。在少樣本學習問題中, 通常使用準確率(Accu-racy)作為評測指標, 表示模型預測正確的樣本數量占所有樣本數量的比例。

3.4 實驗結果

1)中文數據集的實驗結果。如表 1 所示, 基于微調的方法在小樣本學習場景中模型性能表現不佳。對于基于提示學習的方法, PET, LM-BFF, EFL, P-tuningR 以及 EPL4FTC 算法在小樣本學習場景中模型的準確率都大幅度提高, 表明基于提示學習的方法具有強大的潛能。對比 EPL4FTC 算法與其他基于提示學習的方法(PET, ADAPET, LM-BFF, EFL和 P-tuning 等)可以看出, EPL4FTC 算法在 EPRS-TMT, CSLDCP 和 TNEWS 等數據集上取得優異的成績, 在 IFLYTEK 數據集上也取得與其他現有方法同等的性能。并且, EPL4FTC 算法在中文文本分類任務中的平均準確率取得最高的成績。與轉換為完形填空任務形式的 PET 和 ADAPET 等方法相比, EPL4FTC 算法在利用預訓練模型中學習到的通用知識的基礎上, 引入下游任務的類別信息, 實現更好的建模效果, 并且平均準確率高出 3.9%。與轉化為文本蘊含任務的 EFL 方法相比, EPL4FTC 算法沒有引入額外需要學習的大規模參數, 并且與預訓練語言模型的任務保持一致, 有效地減小了上下游任務間的差異, 最終平均準確率高出 4.2%。與使用自動構建模板或非自然語言形式模板的 LM-BFF和 P-tuning 方法相比, EPL4FTC 算法無需繁瑣的模板構建形式, 并且平均準確率高出 1.6%。

表1 中文少樣本數據集實驗結果

說明: 粗體數字表示性能最佳, 下同。

2)英文數據集的實驗結果。如表 2 所示, 對于不同的實例數量, Fine-tuning, PET, ADAPET, EFL, P-tuning 以及 EPL4FTC 算法都表現出隨著實例數量增多, 模型準確率都明顯提升的趨勢, 表明在基于深度模型的少樣本學習場景中, 訓練數據的規模對模型性能有較大的影響。在實例數=8 時, 雖然PET, ADAPET, EFL 和 P-tuning 等基于提示學習的方法比基于微調的方法在準確率方面有很大幅度的提升, 但 EPL4FTC 算法表現出更加出眾的性能, 其準確率遠高于其他方法。這表明在實例較少的情況下, EPL4FTC 算法能夠有效地對下游任務進行建模, 也進一步證明了該算法的有效性。隨著實例數增加(=16 或 32), 雖然其他基于提示學習方法的性能也有所提升, 但相比于其他方法, EPL4FTC 算法的準確率仍然保持較高的水平。即使在=32 的情況下, EPL4FTC 算法的性能也與現有模型保持在同一水平, 并且平均準確率最佳。

3.5 組件有效性分析

3.5.1度量優化模塊有效性

在基于度量學習的損失優化方法對比實驗中, 對比以下 3 種優化方法: 1)將歐式距離和余弦相似度作為度量方法的二元交叉熵損失優化方法; 2)對比損失優化方法; 3)三元組損失優化方法。

在使用二元交叉熵損失作為損失優化的實驗中, 采用歐式距離作為度量方法。由于其度量值域范圍是[0, +∞), 為便于計算二元交叉熵損失, 將其映射到值域空間[0, 1)的范圍:

其中,表示歐氏距離, 引入超參數是為了避免分母為 0。

在使用基于余弦相似度的度量方法中, 其值域范圍是[?1, +1]。同理, 將其映射到值域空間[0, 1]的范圍:

其中,表示余弦相似度。

表2 英文少樣本數據集實驗結果

實驗結果如表 3 所示??梢钥闯? 將歐式距離或余弦相似度作為度量方法的二元交叉熵損失優化方法性能較差, 而對比損失優化方法和三元組損失優化方法的性能有較大的提升, 得益于后兩個方法中引入間隔的策略, 使模型有了一定的容錯空間, 進而提升了模型的泛化性能。對比 3 組不同的實例可以看出, 三元組損失優化方法可以同時獲取更多的信息來幫助模型優化, 從而提升模型性能。與對比損失優化方法相比, 三元組損失優化方法在不同任務中的平均準確率有 1.4%的提升。

對采用三元組損失的度量優化模塊進行消融實驗, 結果如表 4 所示??梢钥闯? 將度量優化模塊完整地移除后, 模型的準確率明顯下降, 在中文數據集中平均下降 1.6%, 在英文數據集中平均下降3.2%, 驗證了度量優化模塊的有效性。度量優化模塊通過學習下游任務中的類別信息, 實現對模型性能的提升。進一步, 在度量優化模塊中將 MLM 損失作為三元組損失的正則項引入。為了驗證 MLM正則項的有效性, 實驗中僅保留三元組損失, 并移除 MLM 損失正則項。從實驗結果可以看出, 移除MLM 正則項后, 模型的準確率在大部分任務中都明顯下降, 在中文 CSLDCP 任務中下降 2.1%, 在英文 TREC 任務中下降 5.8%, 證明了引入 MLM 損失作為正則項對模型性能提升的有效性。

表3 中文數據集和英文數據集上不同損失優化實驗結果

說明: BCE Loss (CS)代表將余弦相似度作為度量的二元交叉熵損失優化方法, BCE Loss (ED)代表將歐式距離作為度量的二元交叉熵損失優化方法, Contrastive Loss代表對比損失優化方法, Triplet Loss代表三元組損失優化方法。

表4 中文數據集和英文數據集上度量優化模塊消融實驗結果

3.5.2句群級損失有效性

基于自然語言推理的提示學習模塊中, 通過句群級損失實現對一組正負實例間的優化。為了確定該損失優化方法的有效性, 對其進行消融實驗, 結果如表 5 所示。中文數據集的實驗結果顯示, 對于不同的任務, 該方法對模型的性能都有明顯的提升, 特別是對于 IFLYTEK 任務, 模型的性能有 3%的提升。相比于中文數據集, 在英文數據集實例數=8時的實驗結果顯示, 該損失優化方法對模型的準確率具有更大的提升作用, 在 AG News 數據集上顯著提升 38.6%; 在 Yelp Review 數據集上也有 5.9%的提升。上述實驗結果證明了句群級損失方法對組內優化的有效性, 它通過對比組內正負間的實例, 可以學習到更好的知識表示。

3.6 提示模板分析

3.6.1推理詞形式的性能

EPL4FTC 算法將文本分類任務轉換為基于自然語言推理形式的完型填空任務, 同時受 P-tuning方法啟發, 推理詞不僅可以是自然語言形式, 也可以是非自然語言形式。因此, 本文對這兩種形式的推理詞進行性能評估。中、英文數據集的實驗結果(表 6)表明, 非自然語言形式的推理詞較為穩定, 模型的性能較好。具體地, 對于形式簡單、數據區分度高的任務(如 EPRSTMT 和 TREC 等), 自然語言形式的推理詞表現較為出眾; 對于類別數較多、復雜的任務(如 TNEWS, IFLYTEK 和 CSLDCP 等), 非自然語言形式的推理詞具備更好的性能。這是由于它可以從具體任務中自主地學習到更適合當前模板的推理詞形式, 而不受自然語言形式的限制。也就是說, 對于非自然語言形式的推理詞, 可以從眾多的上下文信息中學習到推理詞的連續化表達形式, 有效地避免單一推理詞的影響。

表5 中文數據集和英文數據集上句群級損失有效性分析

表6 中文數據集和英文數據集上推理詞形式性能比較

3.6.2提示模板的性能

手工設計的提示模板會使模型的效果產生一定的波動, 因此本文評估手工設計模板對模型性能的影響, 實驗結果如表 7 所示??梢钥闯? 模型性能受提示模板的影響較大。具體地, 在中文 TNEWS和英文 TREC 任務中對模板采用前綴式與后綴式的形式進行評測, 相比之下, 在中文數據集上模型的性能差異相對較小, 準確率的最大值與最小值相差1.1%, 而在英文數據上模型的性能表現出較大的差異, 準確率最大值與最小值相差 6.4%。上述實驗結果表明, 提示模板對模型準確率的影響與下游任務的具體形式有較大的關系, 可以通過優化模板的形式來大幅度提升模型的性能。

3.7 可視化分析

為了評估引入度量優化模塊后提出的模型獲得任務類別信息的有效性, 本文采用 t-SNE 方法[33], 對中文 TNEWS 數據集通過隨機采樣進行可視化分析。為了驗證模型的編碼層是否有效地學習到任務中的類別信息, 將預訓練模型中編碼層 CLS 位的輸出作為當前整個實例的向量化表示。圖 4(a)展示編碼后的分布情況, 可以看出實例類別依然保持與pooler 層相似的分布情況。對于簡單的新聞類別(如股票、娛樂、電競和汽車等), 實例類別依舊保持著較為緊湊的聚集現象; 對于較為抽象或涵蓋范圍較廣的新聞類別(如文化和故事等), 雖然實例類別的分布較為分散, 但也存在一定程度的區域性。這表明CLS作為整個句子的編碼表示已經學習到一定的實例類別信息。對實例類別分布的可視化分析結果表明, 度量優化模塊可以為模型提供更多額外的類別知識等信息。

表7 準確率受提示模板的影響

圖4 實例向量的t-SNE分布可視化

在度量優化模塊中, 采用三元組損失優化類別間的距離。具體地, 將預訓練模型中 pooler 層的輸出通過度量優化模塊進行度量學習。圖 4(b)展示實例經該模塊編碼輸出后的向量分布情況, 可以看出同一類別的實例間都較為緊湊, 同時不同類別的實例間也存在較為明顯的間隔距離, 說明模型至少在pooler 層中已經學習到非常好的類別表示。

4 結論

本文提出一種基于提示學習和三元組損失優化方法的少樣本文本分類的 EPL4FTC 算法, 面對僅含有少量實例的文本分類任務, 該算法能夠有效地完成文本分類。

本文利用提示學習, 將文本分類任務轉換成自然語言推理形式, 通過提示學習激活預訓練語言模型中已學習到的通用知識, 并通過句子和句群兩種粒度的三元組損失優化方法, 實現捕獲下游文本分類任務的類別表征, 提升文本分類的準確性。同時, 引入掩碼語言模型任務的訓練目標為正則項, 提升模型的泛化性能。

本研究完成在中、英文多個數據集上的實 驗, 結果表明文本分類的準確率有所提升, 驗證了EPL4FTC 算法的有效性。

未來的工作中, 我們將嘗試將 EPL4FTC 算法應用于其他主題的少樣本任務場景。此外, 對中英文之外其他語種的少樣本文本分類研究也是一個有趣的問題。

[1] Minaee S, Kalchbrenner N, Cambria E, et al. Deep learning-based text classification: a comprehensive re-view. ACM Computing Surveys, 2021, 54(3): 1–40

[2] Wang Y, Yao Q, Kwok J T, et al. Generalizing from a few examples: a survey on few-shot learning. ACM Computing Surveys, 2020, 53(3): 1–34

[3] Devlin J, Chang M W, Lee K, et al. BERT: pre-training of deep bidirectional transformers for language under-standing // NAACL. Minneapolis, 2019: 4171–4186

[4] Schroff F, Kalenichenko D, Philbin J. Facenet: a uni-fied embedding for face recognition and clustering // CVPR. Boston, 2015: 815–823

[5] Koch G, Zemel R, Salakhutdinov R. Siamese neural networks for one-shot image recognition [D]. Toronto: University of Toronto, 2015

[6] Vinyals O, Blundell C, Lillicrap T, et al. Matching networks for one shot learning // NIPS. Barcelona, 2016: 3637–3645

[7] Snell J, Swersky K, Zemel R. Prototypical networks for few-shot learning // NIPS. Long Beach, 2017: 4080–4090

[8] Sung F, Yang Y, Zhang L, et al. Learning to compare: relation network for few-shot learning // CVPR. Mon-treal, 2018: 1199–1208

[9] Geng R, Li B, Li Y, et al. Induction networks for few-shot text classification // EMNLP-IJCNLP. Punta Cana, 2020: 3904–3913

[10] Geng R, Li B, Li Y, et al. Dynamic memory induc- tion networks for few-shot text classification // ACL. Seattle, 2020: 1087–1094

[11] Schick T, Schütze H. Few-shot text generation with pattern-exploiting training // EMNLP. Abu Dhabi, 2022: 390–402

[12] Schick T, Schütze H. Exploiting cloze-questions for few-shot text classification and natural language infe-rence // EACL. Kyiv, 2021: 255–269

[13] Schick T, Schütze H. It’s not just size that matters: small language models are also few-shot learners // NAACL. Mexico City, 2021: 2339–2352

[14] Liu H, Tam D, Muqeeth M, et al. Few-shot parameter-efficient fine-tuning is better and cheaper than in-context learning // NeuIPS. New Orleans, 2022: 1950–1965

[15] Gao T, Fisch A, Chen D. Making pre-trained langu- age models better few-shot learners // ACL. Bangkok, 2021: 3816–3830

[16] Raffel C, Shazeer N, Roberts A, et al. Exploring the limits of transfer learning with a unified text-to-text transformer. Journal of Machine Learning Research, 2020, 21: 1–67

[17] Liu X, Zheng Y, Du Z, et al. GPT understands, too [EB/OL]. (2023–03–18) [2023–06–24]. https://doi.org/ 10.48550/arXiv.2103.10385

[18] Wang S, Fang H, Khabsa M, et al. Entailment as few-shot learner [EB/OL]. (2021–04–29) [2023–06–18]. https://doi.org/10.48550/arXiv.2103.10385

[19] Jiang Z, Xu F F, Araki J, et al. How can we know what language models know?. Transactions of the Asso-ciation for Computational Linguistics, 2020, 8: 423–438

[20] Hu Shengding, Ding Ning, Wang Huadong, et al. knowledgeable prompt-tuning: incorporating knowle-dge into prompt verbalizer for text classification // ACL. Dublin, 2022: 2225–2240

[21] Min S, Lewis M, Hajishirzi H, et al. Noisy channel language model prompting for few-shot text classi-fication // ACL. Dublin, 2022: 5316–5330

[22] Zhang H, Zhang X, Huang H, et al. Prompt-based meta-learning for few-shot text classification // EMNLP. Abu Dhabi, 2022: 1342–1357

[23] Weinberger K Q, Saul L K. Distance metric learning for large margin nearest neighbor classification. Jour-nal of Machine Learning Research, 2009, 10(1): 207–244

[24] Xu L, Lu X, Yuan C, et al. Fewclue: a Chinese few-shot learning evaluation benchmark [EB/OL]. (2021–09–29) [2023–05–16]. https://doi.org/10.48550/arXiv. 2107.07498

[25] Zhang X, Zhao J, LeCun Y. Character-level convolu-tional networks for text classification // NIPS. Mon-treal, 2015: 649–657

[26] Li X, Roth D. Learning question classifiers // CO-LING. Taipei, 2002: 556–562

[27] Liu Y, Ott M, Goyal N, et al. Roberta: a robustly optimized Bert pretraining approach [EB/OL]. (2019–07–26) [2023–04–19]. https://doi.org/10.48550/arXiv. 1907.11692

[28] Radford A, Narasimhan K, Salimans T, et al. Impro-ving language understanding by generative pretrai-ning [EB/OL]. (2018–06–11) [2023–03–21]. https:// openai.com/research/language-unsupervised

[29] Tam D, Menon R R, Bansal M, et al. Improving and simplifying pattern exploiting training // EMNLP. Punta Cana, 2021: 4980–4991

[30] Paszke A, Gross S, Massa F, et al. Pytorch: an im-perative style, high-performance deep learning library // NeuIPS. Seattle, 2019: 8026–8037

[31] Cui Y, Che W, Liu T, et al. Pre-training with whole word masking for Chinese Bert. IEEE/ACM Transac-tions on Audio, Speech, and Language Processing, 2021, 29: 3504–3514

[32] Loshchilov I, Hutter F. Decoupled weight decay re-gularization [C/OL] // ICLR. (2019–05–06) [2023–03–26]. https://openreview.net/forum?id=Bkg6RiCqY7

[33] Van der Maaten L, Hinton G. Visualizing data using t-SNE. Journal of Machine Learning Research, 2008, 9(11): 2579–2605

Enhanced Prompt Learning for Few-shot Text Classification Method

LI Ruifan1,2,3,?, WEI Zhiyu1, FAN Yuantao1, YE Shuqin1, ZHANG Guangwei2,4

1. School of Artificial Intelligence, Beijing University of Posts and Telecommunications, Beijing 100876; 2. Engineering Research Center of Information Networks, Ministry of Education, Beijing 100876; 3. Key Laboratory of Interactive Technology and Experience System, Ministry of Culture and Tourism, Beijing 100876; 4. School of Computer Science, Beijing University of Posts and Telecommunications, Beijing 100876; ? E-mail: rfli@bupt.edu.cn

An enhanced prompt learning method (EPL4FTC) for few-shot text classification task is proposed. This algorithm first converts the text classification task into the form of prompt learning based on natural language inference. Thus, the implicit data enhancement is achieved based on the prior knowledge of pre-training language models and the algorithm is optimized by two losses with different granularities. Moreover, to capture the category information of specific downstream tasks, the triple loss is used for joint optimization. The masked-language model is incorporated as a regularizer to improve the generalization ability. Through the evaluation on four Chinese and three English text classification datasets, the experimental results show that the classification accuracy of the proposed EPL4FTC is significantly better than the other compared baselines.

pre-trained language model; few-shot learning; text classification; prompt learning; triplet loss

猜你喜歡
度量實例類別
鮑文慧《度量空間之一》
模糊度量空間的強嵌入
迷向表示分為6個不可約直和的旗流形上不變愛因斯坦度量
地質異常的奇異性度量與隱伏源致礦異常識別
服務類別
論類別股東會
完形填空Ⅱ
完形填空Ⅰ
中醫類別全科醫師培養模式的探討
聚合酶鏈式反應快速鑒別5種常見肉類別
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合