Class-RAG:通過RAG 提高內(nèi)容審核性能
圖片
1.Class-RAG 推出的背景
隨著技術(shù)的發(fā)展,互聯(lián)網(wǎng)上出現(xiàn)了越來越多的不良內(nèi)容。過去,使用機器學(xué)習(xí)的方法來對內(nèi)容進行情感分類、騷擾識別、仇恨言論檢測等。深度學(xué)習(xí)技術(shù)的發(fā)展推動了內(nèi)容審核技術(shù)的發(fā)展。
但是,傳統(tǒng)的模型微調(diào)方法在完成內(nèi)容審核任務(wù)時,存在很多問題:
? 首先,內(nèi)容審核是一項高度主觀的任務(wù),意味著標(biāo)注數(shù)據(jù)中標(biāo)注人員之間的一致性較低,可能是由于對政策指南存在不同的解讀,尤其是在各種 Corner Case 上。
? 其次,不可能強制推行通用的危害分類法,不僅是因為任務(wù)的主觀性,還因為系統(tǒng)拓展到新的地區(qū)、新的受眾和新的用例時會產(chǎn)生影響,這些地區(qū)、受眾和用例使用不同的審核要求。使得分類器必須持續(xù)微調(diào),以適應(yīng)不斷變化地安全風(fēng)險。
針對以上問題,結(jié)合當(dāng)前大語言模型的發(fā)展,作者提出了一種新的內(nèi)容審核的分類方法:Class-RAG,利用檢索增強生成來進行內(nèi)容分類。
2. Class-RAG 系統(tǒng)架構(gòu)
圖片
上圖是 Class-RAG 的流程示意圖,由嵌入模型、檢索庫、檢索模塊以及微調(diào)的 LLM 分類器構(gòu)成。
當(dāng)用戶輸入查詢時,通過嵌入模型向量化后,與檢索庫中的正負(fù)案例進行檢索,檢索出 K 個最近的參考案例,然后將參考案例和輸入提示給到微調(diào)的 LLM 進行分類。
2.1 嵌入模型
采用 DRAGON RoBERTa 作為嵌入模型。
專門使用了 DRAGON 模型的上下文編碼器組件。為探究替代嵌入模型的影響,還評估了 WPIE(Whole Post Integrity Embedding)Meta(2021 年)的變體。測試的 WPIE 模型是一個在內(nèi)容審核數(shù)據(jù)上預(yù)先訓(xùn)練的 4 層 XLM-R 模型,產(chǎn)生了兩個不同的輸出:不安全概率估計和提示嵌入表示。
2.2 檢索庫
檢索庫由兩個不同的子庫組成:安全用例庫和不安全用例庫。
檢索庫中的每個條目都由四個屬性來呈現(xiàn),包括:
-(1)提示
-(2)標(biāo)簽
-(3)嵌入
-(4)解釋
運用 K-Means 聚類算法,將安全案例按每個概念分為 7 個聚類,并從每個聚類中挑選出中心案例,納入安全子庫。同樣的聚類方法也被用于收集不安全案例。
共產(chǎn)生了 3,484 個安全案例和 3,566 個不安全案例,共同構(gòu)成了分布內(nèi)檢索庫。為了提升庫對模型推理能力的幫助,使用了 Llama3-70b 模型為每個案例生成解釋性文本(見下圖)。檢索庫中的每一條目都由四個屬性組成:提示、標(biāo)簽、解釋和嵌入,這些屬性在從庫中選取一個參考案例時會一并被檢索。
圖片
2.3 檢索模塊
給定所選的嵌入,借助 Faiss 庫進行相似性搜索,從檢索庫中高效檢索出兩個最近的安全示例和兩個最近的不安全示例。使用 L2 距離度量來計算輸入嵌入與存儲在檢索庫中的嵌入之間的相似度,從而能夠識別出最相關(guān)的示例。
3 效果評估
3.1 分類性能及對對抗性攻擊的穩(wěn)健性
對 Class-RAG 進行了全面測評,將其性能與兩個基線模型 WPIE 和 LLAMA3 在 CoPro 同分布(ID)測試集和分布外(OOD)測試集上進行對比。
圖片
上表結(jié)果表明:Class-RAG 優(yōu)于兩個基線模型。值得注意的是,LLAMA3 和 Class-RAG 在同分布和分布外測試集上均取得了 AUPRC 分?jǐn)?shù) 1,表明分類性能出色。然而,Class-RAG(DRAGON RoBERTa)在對抗性攻擊方面相較于 LLAMA3 展現(xiàn)出更強的穩(wěn)健性,凸顯了其在存在混淆輸入時保持性能的能力。
3.2 對外部數(shù)據(jù)源的適應(yīng)能力
在內(nèi)容審核(Class RAG)中使用 RAG 的主要原因是 RAG 能夠使得系統(tǒng)快速適應(yīng)外部數(shù)據(jù),而不需要重新訓(xùn)練模。為了驗證這種適應(yīng)能力,作者在兩個外部數(shù)據(jù)集上進行了適應(yīng)能力的評估。
圖片
上表結(jié)果表明,當(dāng)僅依賴 ID 庫時,Class-RAG 在 I2P++數(shù)據(jù)集上表現(xiàn)欠佳,AUPRC 分?jǐn)?shù)(Area under the precision-recall curve)僅為 0.229。
ID 庫:In-Distribution Library,指在特定數(shù)據(jù)分布內(nèi)構(gòu)建的檢索庫,它包含了與訓(xùn)練數(shù)據(jù)相似分布的樣本。
但加入完整外部庫的新參考示例, AUPRC 有顯著的 245%的提升,達到 0.791 分。此外,模型對抗對抗性攻擊的性能也顯著提高,從 0.235 相對提升至 0.677,增加了 188%。在 UD 數(shù)據(jù)集上觀察到類似的改進,AUPRC 分?jǐn)?shù)從 0.917 提升至 0.985,對抗對抗性攻擊的性能從 0.914 提高到 0.976。
3.3 遵循指令的能力
探究 Class-RAG 遵循參考示例的指引并生成與這些示例相符的響應(yīng)的能力。使用了帶有翻轉(zhuǎn) ID 庫的 測試集,該庫包含與原始 ID 庫相同的示例,但標(biāo)簽翻轉(zhuǎn)(“不安全”→“安全”,“安全”→“不安全”)且刪除了解釋。
圖片
上圖表明 Class-RAG 具有很強的遵循指令的能力。99.49%的真實安全示例的預(yù)測標(biāo)簽成功地從“安全”翻轉(zhuǎn)至“不安全”,而 12.29%的真實不安全示例的預(yù)測標(biāo)簽從“不安全”翻轉(zhuǎn)至“安全”。真實安全和不安全示例之間翻轉(zhuǎn)比率的這種差異可歸因于 Llama3 模型的安全微調(diào),該模型旨在防止生成有害響應(yīng)并且已記住了不安全的內(nèi)容。
3.4 相對于檢索庫大小的性能可擴展性
檢索庫的規(guī)模對Class-RAG的性能有著顯著影響。
為了探究庫容量對性能的具體作用,制作了按比例縮減的外部庫版本,分別標(biāo)記為EX (1/8)、EX (1/4)和EX (1/2),這些庫是通過重新聚類完整外部庫并縮減至原大小的1/8、1/4和1/2來形成的。
圖片
實驗結(jié)果表明,隨著檢索庫規(guī)模的擴大,模型的表現(xiàn)穩(wěn)步提升。
在I2P++數(shù)據(jù)集上,隨著外部庫從無到完整規(guī)模的逐步添加,AUPRC得分從0.235逐步提高至0.677。
在UD數(shù)據(jù)集上,得分也呈現(xiàn)出相似的增長趨勢,從0.914增至0.974。
性能的提升與檢索庫的規(guī)模成正比,說明擴大庫的規(guī)模是提升Class-RAG性能的有效途徑。
由于檢索庫僅涉及存儲和索引的成本,相較于模型訓(xùn)練來說成本較低,因此,擴展檢索庫規(guī)模成為了一種既經(jīng)濟又高效提升模型性能的策略。
3.5 參考樣本數(shù)量對性能的影響
分別引入了0個、2個、4個、6個和8個參考樣本,并確保每組中安全與不安全的樣本數(shù)量相等。
圖片
如上表所示,Class-RAG的性能隨著參考樣本的增加而穩(wěn)步提升。
在I2P++數(shù)據(jù)集上,使用0個、2個、4個、6個和8個參考樣本時,平均AUPRC得分分別為0.303、0.632、0.677、0.715和0.721。
在UD數(shù)據(jù)集上,隨著參考樣本的增加,平均AUPRC得分也從0.932提升至0.965、0.974、0.978和0.980。
當(dāng)參考樣本數(shù)量達到大約8個時,性能的提升開始趨于平穩(wěn)。
此外,與擴大檢索庫規(guī)模相比,增加更多的參考樣本會帶來更高的計算成本。
因此,雖然增加參考樣本數(shù)量能夠提升性能,但必須考慮到相應(yīng)的計算開銷,尋求平衡點。
3.6 嵌入模型對性能的影響
評估了兩種不同的嵌入模型——DRAGON RoBERTa 與WPIE——對Class-RAG性能的影響。
圖片
如上表所示,DRAGON RoBERTa的嵌入效果優(yōu)于WPIE。具體而言,DRAGON RoBERTa在ID測試集上實現(xiàn)了平均0.938的AUPRC,在OOD測試集上達到了0.920,均超過了WPIE的表現(xiàn),后者在ID測試集上的平均AUPRC為0.912,在OOD測試集上則是0.901。
本文轉(zhuǎn)載自 ??大語言模型論文跟蹤??,作者:HuggingAGI
