機器學習模型的表現,往往不是輸在模型結構,而是輸在數據集。這篇文章整理我準備訓練資料時的方針:什麼樣的資料算高品質、訓練圖像要多少張才夠、要不要先用修圖軟體去背,以及如何篩選出具代表性的資料集。這些方針來自 2022 年累積的實務經驗。
什麼樣的數據集才算是高品質資料?
使用品質高的資料,應該滿足以下條件:
- 清晰的圖像:圖像清晰且無模糊或雜訊。
- 正確的標記:圖像被正確地標記為相應的類別。
- 代表性的數據:數據集中的數據能夠代表所有可能的輸入圖像,例如不同的角度、光線、尺寸等。
反之,要避免以下狀況:
- 模糊或不清晰的圖像:圖像中有大量的模糊或雜訊。
- 錯誤的標記:圖像被錯誤地標記為其他類別。
- 不具代表性的數據:數據集中的數據只代表一小部分可能的輸入圖像。
數據集要多少張圖片才足夠?
所需的圖片張數會視實際情況而有所不同。以撲克牌辨識為例,若數據集中只有每種牌的一種花色,或是每種牌有多種花色,隨著分類數量的增加,所需要的數據集規模也會隨之增加。因此,在建立模型之前,需要先了解所要建構的數據集的結構,以確保使用的模型能夠正確地處理數據。
決定數據集大小的因素很多,無法給出一個硬性準則。不過通常而言,越多的訓練數據可以訓練出表現越好的模型。然而,過多的訓練數據也可能導致過擬合(overfitting)——模型對訓練數據表現良好,但對新數據表現不佳。因此建立模型時,還需要考慮模型複雜度與訓練數據集大小之間的平衡。
資料集的品質同樣重要。如果數據集中有大量標記錯誤或不清晰的圖像,即使數據集很大,模型的表現也可能不佳。建議嘗試不同的數據集大小並觀察模型的表現,以找出最佳平衡。
實務建議:先小後大
若只是在測試模型階段,可以先使用少量的數據集來訓練模型,快速驗證準備數據集的想法並大致了解模型的表現。等確定了模型的結構和超參數後,再考慮增加數據集的大小以提高準確度。
所謂少量,在測試階段只需要幾百張圖像就足以確定模型結構和超參數。要注意的是,模型表現會受數據集品質影響——即使數據集很小,只要圖像品質很高,模型的表現也可能很好。
可以參考以下的圖像數量級距:
| 數據集規模 | 圖像數量 | 適用階段 |
|---|---|---|
| 少量數據集 | 100–200 張 | 測試模型結構與超參數 |
| 中等數據集 | 1,000–5,000 張 | 正式訓練 |
| 大型數據集 | 10,000 張以上 | 追求更高準確度 |
數據集數量的估算算法
如果要使用 52 張圖像,並且對每張圖像進行 5 種不同的變化,則數據集大小就是 `52 * 5 = 260` 張圖像。
準備圖像資料集時,要不要先去背留白?
在準備圖像資料時,常會思考一個問題:若先用修圖軟體去背,把要辨識的目標以外的東西都留白,是否有助於訓練模型?
在實際運用上,將資料集中非目標部分留白並不會對模型的訓練有明顯的幫助。訓練模型時,最好提供所有可能的資料,讓模型在訓練過程中學習到的特徵越豐富越好。同時我們也希望模型能學習到那些與目標無關的資訊,因為這些資訊可能會在模型於測試時遇到類似情況時派上用場。
有些人會擔心,資料集中包含與目標無關的資訊,會不會干擾訓練?實際上,當訓練資料足夠多且品質足夠高時,這種情況很少發生——模型會自動學習到與目標相關的特徵,並忽略與目標無關的資訊。
訓練資料的數量需求該怎麼判斷?
訓練資料數量的要求取決於許多因素,例如模型的複雜度、資料的品質、資料的分布等。一般情況下,越複雜的模型、資料品質越高、資料分布越不均勻,需要的訓練資料就越多。
要確切知道訓練資料的數量是否足夠,通常需要透過不斷地實驗和驗證來確定:對模型進行訓練並觀察效果,根據表現是否達到滿意程度,判斷是否需要增加訓練資料的數量。
另外,訓練資料的數量往往不是決定模型表現的唯一因素。訓練模型時還要考慮模型複雜度、訓練技巧(例如正則化、數據增強等)、訓練超參數的設定等因素。綜合考慮所有這些因素,才能得到最好的模型表現。
如何篩選出具代表性的資料集?
- 基於數據品質篩選:解析度很低、或圖中物體模糊不清的圖片,對訓練準確度幫助不大,可以考慮刪除。
- 基於訓練目標篩選:例如訓練目標是辨識不同種類的動物,就保留足夠多的各種動物圖片,刪除與訓練目標無關的圖片(例如建築物、景觀等)。
- 基於數據平衡篩選:若某些類別的圖片數量遠大於其他類別,可能影響訓練準確度,可以考慮刪除數量較多類別的部分圖片以平衡數據。
延伸閱讀
常見問題
機器學習數據集要準備多少張圖片才夠?
沒有硬性準則,但可參考:測試階段 100–200 張、正式訓練 1,000–5,000 張、大型數據集 10,000 張以上。建議先用小量數據集確定模型結構與超參數,再逐步增加資料量。
訓練圖像需要先去背再訓練嗎?
不需要。將非目標部分留白對模型訓練沒有明顯幫助,提供背景完整的原始資料反而能讓模型學到更豐富的特徵。當資料量與品質足夠時,模型會自動忽略與目標無關的資訊。
資料集越大模型表現一定越好嗎?
不一定。過多的訓練數據可能導致過擬合,且若資料品質差(標記錯誤、圖像模糊),再大的數據集也救不了模型表現。重點是品質、數量與模型複雜度之間的平衡。
什麼是「有代表性的數據」?
數據集中的資料能涵蓋所有可能的輸入情況,例如不同的拍攝角度、光線條件、物體尺寸等。若資料只代表一小部分可能的輸入,模型遇到沒見過的情況時表現就會變差。
類別數量不平衡的資料集該怎麼處理?
可以刪除數量較多類別的部分圖片,讓各類別的數據量趨於平衡。類別不平衡會讓模型偏向多數類別,影響訓練準確度。
參考資料
- 本文改寫自本站 2022-12-22 發布的《準備數據集資料的方針》筆記,內容為實務經驗整理,無外部引用來源。
最後更新
2026-08-28(原文發布於 2022-12-22,本文保留原始筆記內容並補上 GEO 結構。)
關於作者 {#author}
Claire Chang | 企業 AI 導入與流程轉型顧問。專注於 AI Agent 架構設計、ERP 系統整合與企業 AI 治理。
首次發布:2022-12-22
