Back to blog
    資料品質大於資料數量:為什麼 250 個好示例勝過 10,000 個壞示例
    data-qualityfine-tuningbest-practicesinsightssegment:agency

    資料品質大於資料數量:為什麼 250 個好示例勝過 10,000 個壞示例

    為什麼品質對微調比數量更重要——附來自近期研究的證據,顯示精心整理的小型資料集始終優於大型嘈雜的資料集。

    EErtas Team·

    在微調中存在一個持久的假設:更多的資料總是更好的。這聽起來很合理——機器學習應該是資料飢渴的,而最大的模型是在數兆個 token 上訓練的。因此,當您的微調模型表現不佳時,本能反應是收集更多訓練資料。

    這個本能通常是錯的。對於微調而言,資料品質在很大程度上主導資料數量。這方面的證據很強,機制也很清楚,而實際意義可以為團隊節省數週的浪費資料收集時間。

    反直覺的發現

    2025 年初,Kiln 運行了一個清楚說明這一點的蒸餾實驗。他們取了 Gemma 3 27B,並在僅 250 個精心整理的合成示例上微調它——這些示例由 GPT-4o 生成,經過嚴格的品質過濾。所得模型在目標任務上匹配了 GPT-4o 的少樣本性能。

    250 個示例。不是 25,000。不是 2,500。兩百五十個。

    這不是孤立的結果。Microsoft 的 LIMA 論文證明,1,000 個精心選擇的示例可以生成與在 52,000 個以上示例上訓練的模型相競爭的模型。Alpaca 團隊用 52,000 個合成示例展示了類似的結果——但後續工作證明,將那 52,000 個示例篩選到最好的 9,000 個可以提高性能。

    這種模式是一致的:小型、高品質的資料集每次都優於大型、嘈雜的資料集。

    什麼使資料「高品質」

    對於訓練資料,品質不是主觀的。它分解為五個可測量的屬性:

    1. 正確的標籤

    這是最明顯也是最重要的。資料集中的每個輸入-輸出對必須有正確的輸出。對於分類,這意味著正確的類別。對於生成,這意味著您願意在生產環境中看到的輸出。

    錯誤標籤的損害不是成比例的——它是被放大的。單個錯誤標記的示例不只是將準確率降低 1/N。它積極地教導模型一個與正確示例衝突的錯誤模式,在學習的表示中造成混亂。

    如何測量: 讓領域專家(或第二名標注者)審查 50 到 100 個隨機示例。如果不一致率超過 5%,您有標記品質問題。

    基準: 根據我們的經驗,標籤準確率高於 95% 的資料集始終優於準確率為 85% 的 3 到 5 倍大的資料集。交叉點大約是:準確率為 97% 的 500 個示例的資料集,匹配準確率為 88% 的 2,000 個示例的資料集。

    2. 多樣化的輸入

    您的訓練示例應涵蓋您的模型在生產中將看到的輸入範圍。所有示例看起來都類似的 1,000 個示例的資料集,功能上等同於 200 個多樣化示例的資料集——無論哪種方式,模型都學習相同有限的模式集。

    多樣性意味著:

    • 主題覆蓋。 所有相關類別或輸入類型都有表示。
    • 難度分布。 包含容易、中等和困難的示例。
    • 風格多樣性。 不同的措辭、長度、正式程度。
    • 邊緣案例包含。 模糊、不尋常或邊界案例成比例地出現。

    如何測量: 使用句子嵌入模型(例如 BGE 或 E5)嵌入所有輸入,並繪製 2D UMAP 投影。如果您看到緊密的聚類之間有空白,您的多樣性很低。您想要廣泛、相對均勻的覆蓋。

    3. 代表性分佈

    訓練資料中示例的分佈應匹配生產中輸入的分佈。如果 45% 的生產輸入是 A 類別,大約 45% 的訓練示例應該是 A 類別。

    這聽起來很明顯,但大多數合成資料集都搞錯了。當您要求前沿模型「在 5 個類別中生成多樣化示例」時,它傾向於生成每個類別大致相等的數量——無論真實分佈是什麼樣的。

    在生產資料不平衡的情況下,在平衡資料上訓練的模型,對稀有類別會過度自信,對常見類別會不夠自信。

    如何測量: 將訓練資料的類別分佈與生產輸入樣本進行比較。使用卡方或 KL 散度量化不匹配。

    4. 乾淨的格式

    一致的格式教導模型輸出結構。不一致的格式教導模型結構無關緊要。

    如果一些訓練示例使用 markdown 標題,而其他示例使用純文字;一些使用有序列表,另一些使用無序列表;一些包含尾隨空白,另一些不包含——模型學習這些都是可以接受的。在生產環境中,它會隨機混合格式。

    如何測量: 編寫格式驗證規則(正則表達式或架構檢查),並在整個資料集中運行它們。標記任何偏離目標格式的示例。格式良好的資料集格式違規不超過 2%。

    5. 推理追蹤(適用時)

    對於涉及推理的任務——帶解釋的分類、多步驟分析、決策制定——在輸出中包含推理過程可以大幅提高品質。

    {"category": "billing_error"} 的訓練示例教導模型產生正確的答案。而說 {"reasoning": "The customer mentions being charged twice for the same item, which indicates a billing error rather than a refund request", "category": "billing_error"} 的訓練示例教導模型正確地推理,這種泛化效果要好得多。

    如何測量: 檢查輸出是否包含推理追蹤。如果您的任務受益於推理(大多數任務都受益),每個示例都應包含一個。帶有推理追蹤訓練的模型,在保留的評估集上通常得分高 5% 到 15%。

    雜訊問題

    錯誤標記的示例不只是向訓練添加雜訊——它們積極地降低模型品質。原因如下:

    在微調過程中,模型調整其權重以產生每個訓練示例中顯示的輸出。當示例第 47 條說輸入 X 應產生輸出 A,而示例第 312 條說類似的輸入 X' 應產生輸出 B(其中 B 是錯誤的),模型接收到矛盾的梯度信號。它無法同時學習兩者。結果是一個比任何一個單獨的結果都更差的妥協。

    實際上,在 1,000 個示例上微調的 70 億模型,其中 10% 被錯誤標記(100 個壞示例),其表現與在 600 到 700 個乾淨示例上微調的相同模型相當。那 100 個壞示例不只是浪費空間——它們積極地抹去了 200 到 300 個好示例的好處。

    這就是為什麼清理 1,000 個示例幾乎總是比收集 2,000 個更多示例更好的投資。

    需要注意的雜訊來源

    標注者不一致。 不同標注者對相同輸入的標記不同。當任務指南模糊時很常見。

    標籤漂移。 標注標準隨時間演變,沒有追溯修復早期示例。前 500 個示例使用一種解釋;後 500 個使用略微不同的解釋。

    複製貼上錯誤。 在資料處理過程中被洗牌、截斷或損壞的輸入-輸出對。

    合成資料幻覺。 如果您使用前沿模型生成了訓練資料,某些百分比將包含幻覺事實、不一致的推理或與您的任務要求略有矛盾的輸出。

    過時的示例。 反映舊業務規則、已棄用類別或已停止產品的訓練資料。

    品質改進過程

    以下是改善資料集品質的實際逐步過程。無論您的資料集有 200 個還是 20,000 個示例,都適用。

    第一步:隨機審計(30 到 60 分鐘)

    從您的資料集中抽取 50 個隨機示例。仔細閱讀每一個。對於每個示例,問:

    1. 輸出是否正確?
    2. 我是否滿意在生產環境中看到這個輸出?
    3. 格式是否與其他示例一致?
    4. 推理(如果存在)是否實際上支持結論?

    追蹤錯誤率。如果 50 個中有超過 3 個(6%)有問題,您有一個系統性的品質問題,它將影響模型性能。

    第二步:修復標記不一致(1 到 3 小時)

    審計通常揭示模式——特定的混淆類別、標注者不同意的邊緣案例、特定輸出類型中的格式不一致。

    為您發現的每個模式編寫明確規則。然後將這些規則應用於整個資料集。對於 1,000 個示例的資料集,這通常需要 1 到 3 小時,並修復 5% 到 15% 的示例。

    第三步:刪除近似重複(15 分鐘)

    計算所有輸入對之間的嵌入相似度。刪除餘弦相似度超過 0.92 到 0.95 的示例。近似重複浪費訓練容量,而不增加資訊。

    典型結果:3% 到 8% 的示例是近似重複的。在合成資料集中,這可能高達 15% 到 20%。

    第四步:平衡分佈(30 到 60 分鐘)

    將資料集的類別分佈與您的生產分佈進行比較。如果任何類別被過度表示超過 2 倍,對其進行欠採樣。如果任何類別被欠表示超過 2 倍,為其生成或收集更多示例。

    第五步:驗證格式(15 分鐘)

    編寫自動格式檢查,並在整個資料集中運行它們。修復或刪除任何失敗的示例。常見問題:不一致的 JSON 鍵、標籤中大小寫混合、尾隨空白、不一致的列表格式。

    第六步:對標記示例進行最終人工審查(1 到 2 小時)

    在第 1 到 5 步中有爭議的任何示例都需要最終的人工審查。目標是一個您相信每個示例都是正確的、格式良好的和代表性的資料集。

    1,000 個示例的總時間: 4 到 8 小時。這個投資通常在保留的評估上將模型性能提高 5% 到 15%——相當於收集 2,000 到 5,000 個未整理的示例所獲得的改進。

    要追蹤的品質指標

    在每個資料集版本中追蹤這些:

    • 標籤準確率(由第二位審查者驗證):目標高於 96%
    • 格式合規率(自動檢查):目標高於 98%
    • 去重複比率(近似重複百分比):目標低於 5%
    • 分佈匹配(與生產的 KL 散度):越低越好
    • 標注者間一致率(如果有多名標注者):目標高於 90%(Cohen's kappa 高於 0.8)

    將這些指標與模型評估指標一起記錄。當模型性能下降時,首先檢查資料品質指標,比任何超參數調整都能更快地識別原因。

    數量確實重要的情況

    資料品質的主導地位有其限制。有些情況下您確實需要更多資料,而不只是更好的資料:

    輸出空間很大的非常複雜的任務。 如果正確的輸出很長、多樣化且結構複雜(法律摘要生成、醫療報告摘要),模型需要更多示例來涵蓋輸出空間。250 個示例無法捕獲可能正確輸出的多樣性。

    多語言任務。 每種語言有效地需要自己的小型資料集。10 語言分類任務每種語言大約需要 500 到 1,000 個示例——總計 5,000 到 10,000 個。

    有很多類別的任務。 50 類別分類器需要足夠的每類示例來學習決策邊界。每類最少 30 到 50 個示例,即使品質完美,也是 1,500 到 2,500 個示例。

    高風險應用。 醫療、法律和金融任務需要最小化錯誤率,受益於涵蓋更多邊緣案例的更大資料集。遞減回報曲線仍然適用,但可接受的錯誤率更低,所以您沿著它推得更遠。

    即使在這些情況下,品質仍然比每個示例的數量更重要。有 10,000 個乾淨示例的多語言任務將優於有 30,000 個嘈雜示例的任務。對數量的需求並不能免除您對品質標準的要求。

    實際結論

    在收集更多資料之前,問這些問題:

    1. 我目前的標籤準確率是多少? 如果低於 95%,清理會比收集更有幫助。
    2. 我的學習曲線是什麼樣的? 如果是平的,更多資料無論品質如何都不會有幫助。
    3. 我的去重複比率是多少? 如果高於 10%,您的有效資料集比您想象的要小。
    4. 我的分佈是否匹配生產? 如果不是,重新平衡比增加數量更有幫助。

    擁有最佳微調模型的團隊,不是擁有最多資料的團隊。而是將資料品質視為工程學科的團隊——系統地測量它、追蹤它和改進它,然後再尋求規模化。


    Ship AI that runs on your users' devices.

    Ertas early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.

    相關閱讀

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.

    Keep reading