詳細解釋
去重處理(Deduplication)是識別並移除數據集中重複或近似重複樣本的過程,對提升數據質量和模型訓練效率至關重要。
重複類型:
- 完全重複:完全相同的樣本(包括標籤)
- 近似重複:內容幾乎相同(如縮放/裁剪的圖像)
- 語義重複:表達相同含義的不同文本
- 訓練-測試重複:測試集樣本出現在訓練集(最危險)
檢測方法:
- 完全匹配:哈希表快速檢測
- 感知哈希(pHash):圖像的模糊哈希,近似重複檢測
- MinHash:文本的局部敏感哈希
- SimHash:高維數據的相似性哈希
- 向量相似度:嵌入向量 (嵌入 / 詞嵌入 / 向量嵌入) (Embedding Lookup)後的餘弦相似度
- 布隆過濾器:快速檢測可能重複
在ML中的重要性:
- 防止數據洩露:訓練樣本出現在測試集導致性能估計過度樂觀
- 減少記憶:重複樣本導致模型過度記憶
- 訓練效率:移除重複減少無效訓練
- 數據質量:重複可能指示收集問題
大規模去重:
- 網頁數據:大型語言模型 (大語言模型 / 大模型)訓練需要處理TB級數據
- 分佈式處理:Spark、MapReduce
- 近似算法:允許少量誤差換取效率
- 流式去重:處理實時數據流
應用場景:
- 語言模型訓練:去重處理 (Dedup) (Near Dedup)、去重處理 (Dedup) (Near Dedup)已成為標準
- 圖像數據集:移除重複或高度相似圖片
- 客戶數據庫:識別重複客戶記錄
- 文檔管理:企業文檔去重
挑戰:
- 大規模:數十億樣本的高效去重
- 近似檢測:平衡準確率和召回率
- 多語言:跨語言重複檢測
- 動態數據:持續新增數據的去重
工具:
- datasketch:MinHash、LSH實現
- dedupe.io:記錄連結和去重
- 自定義:基於業務規則的去重邏輯
去重處理是數據質量保證的標準步驟。
亦稱「Dedup」。
亦稱「Near Dedup」。