Back to blog
    data-qualityquality-scoringtraining-dataon-premisecleanlabconfidence-learning

    本地資料品質置信度評分

    在本地評分訓練資料品質:標籤準確率、標注者間一致率、異常值檢測與置信度學習,全程無需雲端 API。

    Edward Xi Yang

    當您能夠量化訓練資料集的品質,並且該品質足夠高,使得在其上訓練的模型在生產環境中表現良好時,這個資料集才算準備好。

    大多數團隊將資料品質視為二元的:資料是「乾淨的」或者不是。實際上,品質是跨多個維度的一個連續體,資料中不同的問題導致訓練模型中不同的失敗模式。錯誤標記的示例導致模型學習錯誤的模式。重複聚類導致過度擬合。分佈不平衡導致少數類別性能不佳。異常值引入雜訊。

    本指南談的是如何在這些維度上評分品質,全程不將資料發送到雲端 API。


    訓練資料的品質維度

    標籤準確率

    最有影響力的品質維度。如果您的 10% 標籤是錯的,您的模型性能上限大約是 90%。實際上還會更低,因為錯誤的標籤會主動教導模型錯誤的模式。

    如何在本地測量:

    交叉驗證置信度:在資料集上訓練一個小模型,並檢查哪些示例模型始終答錯。模型與標籤不一致的示例是標籤錯誤的候選者。這是 Cleanlab 置信度學習方法的基礎。

    本地 LLM 驗證:使用本地模型獨立預測每個示例的標籤。將模型預測與人工標籤進行比較。不一致之處需要人工重新審查。70 億指令遵循模型在領域特定任務上達不到人類專家的準確率。它仍然能捕獲明顯的錯誤,而明顯的錯誤正是最損害模型性能的那些。

    標注者自一致性:如果同一標注者在不同時間標注了相同的內容,他們是否與自己一致?低自一致性表明標記指南不明確或標注者疲勞。

    標注者間一致率

    當多名標注者標注相同示例時,他們的一致率表明任務定義的清晰程度和標籤的可靠性。

    Cohen's Kappa:測量兩名標注者之間的一致率,對偶然一致率進行了修正。0.8 以上的值表示強一致率;0.6 以下表明標記指南需要修訂。

    Fleiss' Kappa:擴展到多名標注者。當您有領域專家池,不同專家標注不同子集時很有用。

    Krippendorff's Alpha:處理缺失資料(並非每個標注者都標注每個示例),並適用於有序、區間和名義資料類型。最靈活的一致率指標。

    對於服務提供者,標注者間一致率也是品質可交付物。當您向客戶交付資料集,其 Krippendorff's Alpha 為 0.85 時,這是一個有證據支持的可測量品質聲明。

    一致率指標分數範圍解讀
    Cohen's Kappa0.81 到 1.00幾乎完美的一致率
    Cohen's Kappa0.61 到 0.80實質性一致率
    Cohen's Kappa0.41 到 0.60中等一致率:審查指南
    Cohen's Kappa0.21 到 0.40一般:標記問題嚴重
    Cohen's Kappa低於 0.20輕微:任務定義不清楚

    資料分佈平衡

    類別不平衡直接影響模型性能。在 90% 為 A 類、10% 為 B 類的資料集上訓練的模型,通過簡單預測 A 類就能達到高的整體準確率,並且會在可能最重要的類別上失敗。

    要追蹤的指標:

    • 類別頻率分佈(標籤計數的條形圖)
    • 不平衡比率(多數類別計數除以少數類別計數)
    • 每個類別的有效樣本數(考慮到近似重複)

    閾值:不平衡比率超過 10:1 通常需要通過資料增強、過度採樣、欠採樣或類別加權訓練來緩解。

    重複檢測

    近似重複在不增加資訊的情況下增加了資料集的有效大小。它們導致模型對重複的內容過度擬合,並降低泛化能力。

    檢測方法(全部在本地):

    MinHash/LSH:大規模高效的近似重複檢測。從 n-gram 計算 MinHash 簽名,使用 LSH 進行快速成對比較。即使格式不同,也能捕獲內容級別的重複。

    嵌入聚類:使用本地模型計算嵌入,然後識別內部相似度非常高的聚類。緊密聚類中的記錄是近似重複的。

    精確哈希:標準化內容的 SHA-256 哈希。捕獲字節相同的重複。

    重複的影響:研究始終表明,在去重複的資料上訓練生成了具有更好泛化能力的模型,即使去重複後的資料集更小。通過去重複刪除 20% 的資料集通常能提高模型品質。

    異常值識別

    異常值是不屬於該資料集的記錄:離題內容、損壞的文字、從不同領域洩漏到資料集中的記錄。它們向訓練添加雜訊,並可能導致意外的模型行為。

    統計異常值檢測:計算記錄級別的特徵(長度、詞彙多樣性、PII 密度),並標記超出 2 到 3 個標準差的記錄。

    基於嵌入的異常值檢測:嵌入空間中距離所有聚類中心很遠的記錄是潛在的異常值。計算到最近聚類中心的餘弦距離;超過閾值的記錄需要審查。

    基於困惑度的檢測:使用本地語言模型對每條記錄的困惑度進行評分。困惑度異常高的記錄可能損壞、離題或使用了不同語言。


    Cleanlab:它做得好的地方及其不足之處

    Cleanlab 是 ML 資料集中最成熟的資料品質評分庫。其置信度學習算法通過分析模型預測和提供的標籤之間的關係,識別潛在的標籤錯誤。

    Cleanlab 做得好的地方

    • 標籤錯誤檢測:以高精度找到錯誤標記的示例。在已發表的基準測試中,Cleanlab 通常識別 50% 到 80% 的標籤錯誤,同時將誤報率保持在 20% 以下。
    • 置信度評分:根據標籤與模型預測的一致程度,為每個示例分配品質分數。
    • 多類別支持:適用於任意數量的類別,包括多標籤場景。
    • 資料集級別品質指標:提供整體資料集健康分數和按類別的品質細分。

    Cleanlab 對服務提供者的不足之處

    僅支持 Python:Cleanlab 是一個 Python 庫。使用它需要編寫 Python 腳本、為置信度學習步驟配置模型訓練,並解釋程序輸出。ML 工程師可以輕鬆應對,而這讓 Cleanlab 對領域專家和合規官員來說難以使用。

    無 GUI:結果以陣列和 DataFrame 形式返回。沒有用於審查已標記示例的視覺介面,非技術用戶無法檢查品質分數,也沒有用於合規審查的內建報告。

    無審計追蹤:Cleanlab 不記錄哪些示例被標記、何時標記或採取了什麼行動。對於受監管行業,這是一個差距,因為您需要證明品質評分確實發生了,並且已標記的項目得到了處理。

    需要整合:Cleanlab 在預格式化的資料集上運行。將資料從攝取管道轉換為 Cleanlab 就緒格式,並將結果返回管道,需要自訂整合代碼。

    模型訓練依賴:置信度學習需要在資料集上訓練模型(通常通過交叉驗證)。這為品質評分步驟增加了計算時間和複雜性。


    啟發式品質評分(不需要模型)

    並非每個品質信號都需要模型推理。啟發式評分使用簡單規則提供快速、透明的品質估算:

    啟發式方法捕獲的內容實施方式
    文字長度(token)空、截斷或過長的記錄計算 token;標記在 [50, 5000] 範圍外的
    句子數片段和連接錯誤計算句子邊界;標記低於 2 的
    詞彙多樣性重複或樣板文字類型-token 比率;標記低於 0.25 的
    特殊字符比率OCR 偽影、編碼錯誤計算非字母數字字符;標記高於 8% 的
    語言置信度混合語言或損壞的文字語言檢測庫;標記低於 0.85 的
    重複 n-gram複製貼上偽影計算 4-gram 頻率;標記高重複率
    PII 密度去識別化不足計算每 100 token 的 PII 標記

    啟發式評分在大型資料集(100,000 條以上記錄)上運行數秒,不需要 GPU。它們是在應用更昂貴的基於模型評分之前的有用初步篩選。


    基於嵌入的品質分析

    本地嵌入模型(例如通過 sentence-transformers 的 all-MiniLM-L6-v2,或通過 Ollama 的 nomic-embed-text)可以在沒有雲端 API 的情況下進行強大的品質分析:

    連貫性評分

    計算所有記錄嵌入的質心。每條記錄與質心的距離表明它有多「典型」。距質心很遠的記錄是潛在的異常值。

    這是一個排名。按連貫性分數排名最低的 5% 應該被審查,而非自動刪除。

    聚類分析

    對嵌入空間應用 k-means 或 HDBSCAN 聚類。來自聚類的品質信號:

    • 單一聚類:不與任何東西聚類的記錄可能是離題的
    • 高度集中的聚類:在嵌入空間中幾乎相同的記錄是近似重複的
    • 類別-聚類不對齊:如果標記說這些記錄是 A 類,但聚類將它們與 B 類記錄放在一起,可能有標籤錯誤

    語義多樣性評估

    計算整個資料集(或樣本)的成對餘弦相似度。平均相似度高的資料集多樣性低,因此模型只會學到有限範圍的模式。平均相似度適中(0.3 到 0.6)的資料集通常表明健康的多樣性。


    實際品質評分工作流程

    為受監管企業客戶準備訓練資料的服務提供者的完整品質評分工作流程:

    第一步:啟發式掃描(15 分鐘) 對完整資料集運行啟發式品質檢查。標記並審查未通過基本檢查的記錄。刪除或修復明顯的問題(空記錄、編碼損壞、極端異常值)。

    第二步:去重複分析(30 分鐘到 2 小時) 運行 MinHash/LSH 近似重複檢測。審查重複聚類。從每個聚類中選擇代表性記錄。

    第三步:分佈分析(30 分鐘) 計算類別頻率、不平衡比率和有效樣本數。如果不平衡超過 10:1,為少數類別規劃增強。

    第四步:基於嵌入的分析(1 到 2 小時) 為所有記錄計算嵌入。運行異常值檢測、聚類分析和多樣性評估。審查已標記的記錄。

    第五步:標籤品質評分(2 到 4 小時) 如果資源允許,運行置信度學習(Cleanlab 風格)或使用本地 LLM 驗證。優先審查被標記為潛在標籤錯誤的記錄。

    第六步:標注者間一致率(如果適用) 計算由多名標注者標注的記錄子集的一致率指標。如果一致率低於 0.7,修訂標記指南並重新標記不一致案例。

    第七步:生成品質報告 將所有品質指標彙編成報告:整體品質分數、按維度分數、分佈圖、已標記記錄及其解決方案,以及一致率統計數據。此報告是客戶的可交付物,也是合規工件。


    品質分數作為可交付物

    對於服務提供者,品質評分是一個差異化因素。當您向客戶交付資料集,並附有記錄的品質報告顯示:

    • 估計標籤準確率 98.2%
    • Krippendorff's Alpha 為 0.87
    • 所有近似重複已解決
    • PII 去識別化覆蓋率 99.7%
    • 分佈平衡到 3:1 比率以內

    ……這是客戶可以在合規文件、模型卡片和審計回應中引用的可測量品質聲明。

    Ertas Data Suite 包含跨所有維度的內建品質評分:啟發式檢查、去重複、分佈分析、基於嵌入的異常值檢測和標籤品質估算。品質分數在項目儀表板中可見,完整的品質報告作為審計追蹤的一部分匯出。領域專家和合規官員可以直接查看品質指標,無需解釋 Python 輸出。


    連接到管道

    品質評分主要在清理標記之後進行,但它也是匯出前的最終驗證步驟。在所有維度上通過品質評分的資料集已準備好進行微調。沒有通過的資料集有具體的、可操作的差距,可以在繼續之前解決。

    有關完整管道概述,請參閱如何構建用於 LLM 微調的本地資料準備管道

    就本文向 AI 提問

    Ship AI that runs on your users' devices.

    Free plan with 30 credits/mo, no card required. Paid plans from $10/mo USD.

    Keep reading