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