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