最近有很多關(guān)于數(shù)據(jù)是否是新模型驅(qū)動 [1] [2] 的討論,無論結(jié)論如何,都無法改變我們在實際工作中獲取數(shù)據(jù)成本很高這一事實(人工費用、許可證費用、設(shè)備運行時間等方面)。
因此,在機器學(xué)習(xí)項目中,一個關(guān)鍵的問題是,為了達(dá)到比如分類器準(zhǔn)確度等特定性能指標(biāo),我們需要多少訓(xùn)練數(shù)據(jù)才夠。訓(xùn)練數(shù)據(jù)多少的問題在相關(guān)文獻(xiàn)中也稱為樣本復(fù)雜度。
在這篇文章中,我們將從回歸分析開始到深度學(xué)習(xí)等領(lǐng)域,快速而廣泛地回顧目前關(guān)于訓(xùn)練數(shù)據(jù)多少的經(jīng)驗和相關(guān)的研究結(jié)果。具體來說,我們將:
說明回歸任務(wù)和計算機視覺任務(wù)訓(xùn)練數(shù)據(jù)的經(jīng)驗范圍;
給定統(tǒng)計檢驗的檢驗效能,討論如何確定樣本數(shù)量。這是一個統(tǒng)計學(xué)的話題,然而,由于它與確定機器學(xué)習(xí)訓(xùn)練數(shù)據(jù)量密切相關(guān),因此也將包含在本討論中;
展示統(tǒng)計理論學(xué)習(xí)的結(jié)果,說明是什么決定了訓(xùn)練數(shù)據(jù)的多少;
給出下面問題的答案:隨著訓(xùn)練數(shù)據(jù)的增加,模型性能是否會繼續(xù)改善?在深度學(xué)習(xí)的情況下又會如何?
提出一種在分類任務(wù)中確定訓(xùn)練數(shù)據(jù)量的方法;
最后,我們將回答這個問題:增加訓(xùn)練數(shù)據(jù)是處理數(shù)據(jù)不平衡的最佳方式嗎?
01
訓(xùn)練數(shù)據(jù)量的經(jīng)驗范圍
首先讓我們看一些廣泛使用的,用來確定訓(xùn)練數(shù)據(jù)量的經(jīng)驗方法,根據(jù)我們使用的模型類型:
回歸分析:根據(jù) 1/10 的經(jīng)驗規(guī)則,每個預(yù)測因子 [3] 需要 10 個樣例。在 [4] 中討論了這種方法的其他版本,比如用 1/20 來處理回歸系數(shù)減小的問題,在 [5] 中提出了一個令人興奮的二元邏輯回歸變量。
具體地說,作者通過考慮預(yù)測變量的數(shù)量、總體樣本量以及正樣本量/總體樣本量的比例來估計訓(xùn)練數(shù)據(jù)的多少。
計算機視覺:對于使用深度學(xué)習(xí)的圖像分類,經(jīng)驗法則是每一個分類需要 1000 幅圖像,如果使用預(yù)訓(xùn)練的模型 [6],這個需求可以顯著下降。
02
假設(shè)檢驗中樣本大小的確定
假設(shè)檢驗是數(shù)據(jù)科學(xué)家用來檢驗群體差異、確定新藥物療效等的工具之一。考慮到進行測試的能力,這里通常需要確定樣本大小。
讓我們來看看這個例子:一家科技巨頭搬到了 A 市,那里的房價大幅上漲。一位記者想知道,現(xiàn)在公寓的平均價格是多少。
如果給定公寓價格標(biāo)準(zhǔn)差為 60K,可接受的誤差范圍為 10K,他應(yīng)該統(tǒng)計多少套公寓的價格然后進行平均,才能使結(jié)果有 95% 的置信度?
計算的公式如下:N 是他需要的樣本量,1.96 是 95% 置信度所對應(yīng)的標(biāo)準(zhǔn)正態(tài)分布的個數(shù):
樣本容量估計
根據(jù)上面的等式,記者需要考慮約 138 套公寓的價格即可。
上面的公式會根據(jù)具體的測試任務(wù)而變化,但它總是包括置信區(qū)間、可接受的誤差范圍和標(biāo)準(zhǔn)差度量。在[7]中可以找到關(guān)于這個主題的更好的討論。
03
訓(xùn)練數(shù)據(jù)規(guī)模的統(tǒng)計學(xué)習(xí)理論
讓我們首先介紹一下著名的 Vapnik-Chevronenkis 維度 ( VC 維) [8]。VC 維是模型復(fù)雜度的度量,模型越復(fù)雜,VC 維越大。在下一段中,我們將介紹一個用 VC 表示訓(xùn)練數(shù)據(jù)大小的公式。
首先,讓我們看一個經(jīng)常用于展示 VC 維如何計算的例子:假設(shè)我們的分類器是二維平面上的一條直線,有 3 個點需要分類。
無論這 3 個點的正/負(fù)組合是什么(都是正的、2個正的、1個正的,等等),一條直線都可以正確地分類/區(qū)分這些正樣本和負(fù)樣本。
我們說線性分類器可以區(qū)分所有的點,因此,它的 VC 維至少是 3,又因為我們可以找到4個不能被直線準(zhǔn)確區(qū)分的點的例子,所以我們說線性分類器的 VC 維正好是3。結(jié)果表明,訓(xùn)練數(shù)據(jù)大小 N 是 VC 的函數(shù) [8]:
從 VC 維估計訓(xùn)練數(shù)據(jù)的大小
其中 d 為失效概率,epsilon 為學(xué)習(xí)誤差。因此,正如 [9] 所指出的,學(xué)習(xí)所需的數(shù)據(jù)量取決于模型的復(fù)雜度。一個明顯的例子是眾所周知的神經(jīng)網(wǎng)絡(luò)對訓(xùn)練數(shù)據(jù)的貪婪,因為它們非常復(fù)雜。
04
隨著訓(xùn)練數(shù)據(jù)的增加,模型性能會繼續(xù)提高嗎?在深度學(xué)習(xí)的情況下又會怎樣?
學(xué)習(xí)曲線
上圖展示了在傳統(tǒng)機器學(xué)習(xí) [10] 算法(回歸等)和深度學(xué)習(xí) [11] 的情況下,機器學(xué)習(xí)算法的性能隨著數(shù)據(jù)量的增加而如何變化。
具體來說,對于傳統(tǒng)的機器學(xué)習(xí)算法,性能是按照冪律增長的,一段時間后趨于平穩(wěn)。 文獻(xiàn) [12]-[16],[18] 的研究展示了對于深度學(xué)習(xí),隨著數(shù)據(jù)量的增加性能如何變化。
圖1顯示了當(dāng)前大多數(shù)研究的共識:對于深度學(xué)習(xí),根據(jù)冪次定律,性能會隨著數(shù)據(jù)量的增加而增加。
例如,在文獻(xiàn) [13] 中,作者使用深度學(xué)習(xí)技術(shù)對3億幅圖像進行分類,他們發(fā)現(xiàn)隨著訓(xùn)練數(shù)據(jù)的增加模型性能呈對數(shù)增長。
讓我們看看另一些在深度學(xué)習(xí)領(lǐng)域值得注意的,與上述矛盾的結(jié)果。具體來說,在文獻(xiàn) [15] 中,作者使用卷積網(wǎng)絡(luò)來處理 1 億張 Flickr 圖片和標(biāo)題的數(shù)據(jù)集。
對于訓(xùn)練集的數(shù)據(jù)量,他們報告說,模型性能會隨著數(shù)據(jù)量的增加而增加,然而,在 5000 萬張圖片之后,它就停滯不前了。
在文獻(xiàn)[16]中,作者發(fā)現(xiàn)圖像分類準(zhǔn)確度隨著訓(xùn)練集的增大而增加,然而,模型的魯棒性在超過與模型特定相關(guān)的某一點后便開始下降。
05
在分類任務(wù)中確定訓(xùn)練數(shù)據(jù)量的方法
眾所周知的學(xué)習(xí)曲線,通常是誤差與訓(xùn)練數(shù)據(jù)量的關(guān)系圖。[17] 和 [18] 是了解機器學(xué)習(xí)中學(xué)習(xí)曲線以及它們?nèi)绾坞S著偏差或方差的增加而變化的參考資料。Python 在 scikit-learn [17] 也中提供了一個學(xué)習(xí)曲線的函數(shù)。
在分類任務(wù)中,我們通常使用一個稍微變化的學(xué)習(xí)曲線形式:分類準(zhǔn)確度與訓(xùn)練數(shù)據(jù)量的關(guān)系圖。
確定訓(xùn)練數(shù)據(jù)量的方法很簡單:首先根據(jù)任務(wù)確定一個學(xué)習(xí)曲線形式,然后簡單地在圖上找到所需分類準(zhǔn)確度對應(yīng)的點。例如,在文獻(xiàn) [19]、[20] 中,作者在醫(yī)學(xué)領(lǐng)域中使用了學(xué)習(xí)曲線法,并用冪律函數(shù)表示:
學(xué)習(xí)曲線方程
上式中 y 為分類準(zhǔn)確度,x 為訓(xùn)練數(shù)據(jù),b1、b2 分別對應(yīng)學(xué)習(xí)率和衰減率。參數(shù)的設(shè)置隨問題的不同而變化,可以用非線性回歸或加權(quán)非線性回歸對它們進行估計。
06
增加訓(xùn)練數(shù)據(jù)是處理數(shù)據(jù)不平衡的最好方法嗎?
這個問題在文獻(xiàn) [9] 中得到了解決。作者提出了一個有趣的觀點:在數(shù)據(jù)不平衡的情況下,準(zhǔn)確性并不是衡量分類器性能的最佳指標(biāo)。
原因很直觀:讓我們假設(shè)負(fù)樣本是占絕大多數(shù),然后如果我們在大部分時間里都預(yù)測為負(fù)樣本,就可以達(dá)到很高的準(zhǔn)確度。
相反,他們建議準(zhǔn)確度和召回率(也稱為靈敏度)是衡量數(shù)據(jù)不平衡性能的最合適指標(biāo)。除了上述明顯的準(zhǔn)確度問題外,作者還認(rèn)為,測量精度對不平衡區(qū)域的內(nèi)在影響更大。
例如,在醫(yī)院的警報系統(tǒng) [9] 中,高精確度意味著當(dāng)警報響起時,病人很可能確實有問題。
選擇適當(dāng)?shù)男阅軠y量方法,作者比較了在 imbalanced-learn [21] (Python scikit-learn 庫)中的不平衡校正方法和簡單的使用一個更大的訓(xùn)練數(shù)據(jù)集。
具體地說,他們在一個 50,000 個樣本的藥物相關(guān)的數(shù)據(jù)集上,使用 imbalance-correction 中的K近鄰方法進行數(shù)據(jù)不平衡校正,這些不平衡校正技術(shù)包括欠采樣、過采樣和集成學(xué)習(xí)等,然后在與原數(shù)據(jù)集相近的 100 萬數(shù)據(jù)集上訓(xùn)練了一個神經(jīng)網(wǎng)絡(luò)。
作者重復(fù)實驗了 200 次,最終的結(jié)論簡單而深刻:在測量準(zhǔn)確度和召回率方面,沒有任何一種不平衡校正技術(shù)可以與增加更多的訓(xùn)練數(shù)據(jù)相媲美。
-
計算機視覺
+關(guān)注
關(guān)注
8文章
1698瀏覽量
46033 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5507瀏覽量
121298
原文標(biāo)題:深度學(xué)習(xí),怎么知道你的訓(xùn)練數(shù)據(jù)真的夠了?
文章出處:【微信號:cas-ciomp,微信公眾號:中科院長春光機所】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論