大數(shù)據(jù)文摘出品
編譯:欒紅葉、stats熊、蔣寶尚
最近深度學(xué)習(xí)技術(shù)實現(xiàn)方面取得的突破表明,頂級算法和復(fù)雜的結(jié)構(gòu)可以將類人的能力傳授給執(zhí)行特定任務(wù)的機器。但我們也會發(fā)現(xiàn),大量的訓(xùn)練數(shù)據(jù)對深度學(xué)習(xí)模型的成功起著至關(guān)重要的作用。就拿Resnet來說,這種圖像分類結(jié)構(gòu)在2015年的ILSVRC分類競賽中獲得了第一名,比先前的技術(shù)水平提高了約50%。
圖1:近年來ILSVRC的頂級模型表現(xiàn)
Resnet不僅具有非常復(fù)雜艱深的結(jié)構(gòu),而且還有足夠多的數(shù)據(jù)。不同的算法其性能可能是相同的,這個問題已經(jīng)在工業(yè)界和學(xué)術(shù)界得到了很好的證實。
但需要注意的是,大數(shù)據(jù)應(yīng)該是有意義的信息,而不是雜亂無章的,這樣,模型才能從中學(xué)習(xí)。這也是谷歌、Facebook、亞馬遜、Twitter、百度等公司在人工智能研究和產(chǎn)品開發(fā)領(lǐng)域占據(jù)主導(dǎo)地位的主要原因之一。
雖然與深度學(xué)習(xí)相比,傳統(tǒng)的機器學(xué)習(xí)會需要更少的數(shù)據(jù),但即使是大規(guī)模的數(shù)據(jù)量,也會以類似的方式影響模型性能。下圖清楚地描述了傳統(tǒng)機器學(xué)習(xí)和深度學(xué)習(xí)模型的性能如何隨著數(shù)據(jù)規(guī)模的提高而提高。
圖2:數(shù)據(jù)量與模型性能的函數(shù)關(guān)系
為什么我們需要機器學(xué)習(xí)?
圖3:彈丸運動公式
讓我們用一個例子來回答這個問題。假設(shè)我們有一個速度為v,按一定角度θ投擲出去的球,我們想要算出球能拋多遠。根據(jù)高中物理知識,我們知道球做一個拋物線運動,我們可以使用圖中所示的公式算出距離。
上述公式可被視為任務(wù)的模型或表示,公式中涉及的各種術(shù)語可被視為重要特征,即v、θ和g(重力加速度)。在上述模型下,我們的特征很少,我們可以很好地理解它們對我們?nèi)蝿?wù)的影響。因此,我們能夠提出一個好的數(shù)學(xué)模型。讓我們考慮一下另一種情況:我們希望在2018年12月30日預(yù)測蘋果公司的股價。在這個任務(wù)中,我們無法完全了解各種因素是如何影響股票價格的。
在缺乏真實模型的情況下,我們利用歷史股價和標普500指數(shù)、其他股票價格、市場情緒等多種特征,利用機器學(xué)習(xí)算法來找出它們潛在的關(guān)系。這就是一個例子,即在某些情況下,人類很難掌握大量特征之間的復(fù)雜關(guān)系,但是機器可以通過大規(guī)模的數(shù)據(jù)輕松地捕捉到它。
另一個同樣復(fù)雜的任務(wù)是:將電子郵件標記為垃圾郵件。作為一個人,我們可能要想許多規(guī)則和啟式的方法,但它們很難編寫、維護。而另一方面,機器學(xué)習(xí)算法可以很容易地獲得這些關(guān)系,還可以做得更好,并且更容易維護和擴展。既然我們不需要清晰地制定這些規(guī)則,而數(shù)據(jù)可以幫助我們獲得這些關(guān)系,可以說機器學(xué)習(xí)已經(jīng)徹底改變了不同的領(lǐng)域和行業(yè)。
大數(shù)據(jù)集是怎樣幫助構(gòu)建更好的機器學(xué)習(xí)模型的?
在我們開始討論大規(guī)模數(shù)據(jù)是如何提高模型性能之前,我們需要了解偏差(Bias)和方差(Variance)。
偏差:讓我們來看這樣一個數(shù)據(jù)集:它的因變量和自變量之間是二次方關(guān)系。然而,我們不知道他們真實的關(guān)系,只能稱它們近似為線性關(guān)系。在這種情況下,我們將會發(fā)現(xiàn)我們的預(yù)測與實際數(shù)據(jù)之間的明顯的差異。觀測值和預(yù)測值之間的這種差異稱為偏差。這種模型,我們會說它功能小,欠擬合。
方差:在同一個例子中,如果我們將關(guān)系近似為三次方或任何更高階,directadmin漢化,就會出現(xiàn)一個高方差的情況。方差能夠反映訓(xùn)練集與測試集的性能差異。高方差的主要問題是:模型能很好地擬合訓(xùn)練數(shù)據(jù),但在訓(xùn)練外數(shù)據(jù)集上表現(xiàn)得不好。這是驗證確認測試集在模型構(gòu)建過程中非常重要的一個主要原因。
圖4:偏差 vs方差