樹模型和神經(jīng)網(wǎng)絡(luò),像一枚硬幣的兩面。在某些情況下,樹模型的性能甚至優(yōu)于神經(jīng)網(wǎng)絡(luò)。
由于神經(jīng)網(wǎng)絡(luò)的復(fù)雜性,它們常常被認(rèn)為是解決所有機(jī)器學(xué)習(xí)問題的「圣杯」。而另一方面,基于樹的方法并未得到同等重視,主要原因在于這類算法看起來很簡單。然而,這兩種算法看似不同,卻像一枚硬幣的正反面,都很重要。
樹模型 VS 神經(jīng)網(wǎng)絡(luò)
基于樹的方法通常優(yōu)于神經(jīng)網(wǎng)絡(luò)。本質(zhì)上,將基于樹的方法和基于神經(jīng)網(wǎng)絡(luò)的方法放在同一個類別中是因為,它們都通過逐步解構(gòu)來處理問題,而不是像支持向量機(jī)或 Logistic 回歸那樣通過復(fù)雜邊界來分割整個數(shù)據(jù)集。
很明顯,基于樹的方法沿著不同的特征逐步分割特征空間,以優(yōu)化信息增益。不那么明顯的是,神經(jīng)網(wǎng)絡(luò)也以類似的方式處理任務(wù)。每個神經(jīng)元監(jiān)視特征空間的一個特定部分(存在多種重疊)。當(dāng)輸入進(jìn)入該空間時,某些神經(jīng)元就會被激活。
神經(jīng)網(wǎng)絡(luò)以概率的視角看待這種逐段模型擬合 (piece-by-piece model fitting),而基于樹的方法則采用確定性的視角。不管怎樣,這兩者的性能都依賴于模型的深度,因為它們的組件與特征空間的各個部分存在關(guān)聯(lián)。
包含太多組件的模型(對于樹模型而言是節(jié)點(diǎn),對于神經(jīng)網(wǎng)絡(luò)則是神經(jīng)元)會過擬合,而組件太少的模型根本無法給出有意義的預(yù)測。(二者最開始都是記憶數(shù)據(jù)點(diǎn),而不是學(xué)習(xí)泛化。)
要想更直觀地了解神經(jīng)網(wǎng)絡(luò)是如何分割特征空間的,可閱讀這篇介紹通用近似定理的文章:https://medium.com/analytics-vidhya/you-dont-understand-neural-networks-until-you-understand-the-universal-approximation-theory-85b3e7677126。
雖然決策樹有許多強(qiáng)大的變體,如隨機(jī)森林、梯度提升、AdaBoost 和深度森林,但一般來說,基于樹的方法本質(zhì)上是神經(jīng)網(wǎng)絡(luò)的簡化版本。
基于樹的方法通過垂直線和水平線逐段解決問題,以最小化熵(優(yōu)化器和損失)。神經(jīng)網(wǎng)絡(luò)通過激活函數(shù)來逐段解決問題。
基于樹的方法是確定性的,而不是概率性的。這帶來了一些不錯的簡化,如自動特征選擇。
決策樹中被激活的條件節(jié)點(diǎn)類似于神經(jīng)網(wǎng)絡(luò)中被激活的神經(jīng)元(信息流)。
神經(jīng)網(wǎng)絡(luò)通過擬合參數(shù)對輸入進(jìn)行變換,間接指導(dǎo)后續(xù)神經(jīng)元的激活。決策樹則顯式地擬合參數(shù)來指導(dǎo)信息流。(這是確定性與概率性相對應(yīng)的結(jié)果。)
信息在兩個模型中的流動相似,只是在樹模型中的流動方式更簡單。
樹模型的 1 和 0 選擇 VS 神經(jīng)網(wǎng)絡(luò)的概率選擇
當(dāng)然,這是一個抽象的結(jié)論,甚至可能是有爭議的。誠然,建立這種聯(lián)系有許多障礙。不管怎樣,這是理解基于樹的方法何時以及為什么優(yōu)于神經(jīng)網(wǎng)絡(luò)的重要部分。
對于決策樹而言,處理表格或表格形式的結(jié)構(gòu)化數(shù)據(jù)是很自然的。大多數(shù)人都同意用神經(jīng)網(wǎng)絡(luò)執(zhí)行表格數(shù)據(jù)的回歸和預(yù)測屬于大材小用,所以這里做了一些簡化。選擇 1 和 0,而不是概率,是這兩種算法之間差異的主要根源。因此,基于樹的方法可成功應(yīng)用于不需要概率的情況,如結(jié)構(gòu)化數(shù)據(jù)。
例如,基于樹的方法在 MNIST 數(shù)據(jù)集上表現(xiàn)出很好的性能,因為每個數(shù)字都有幾個基本特征。不需要計算概率,這個問題也不是很復(fù)雜,這就是為什么設(shè)計良好的樹集成模型性能可以媲美現(xiàn)代卷積神經(jīng)網(wǎng)絡(luò),甚至更好。
通常,人們傾向于說「基于樹的方法只是記住了規(guī)則」,這種說法是對的。神經(jīng)網(wǎng)絡(luò)也是一樣,只不過它能記住更復(fù)雜的、基于概率的規(guī)則。神經(jīng)網(wǎng)絡(luò)并非顯式地對 x》3 這樣的條件給出真 / 假的預(yù)測,而是將輸入放大到一個很高的值,從而得到 sigmoid 值 1 或生成連續(xù)表達(dá)式。
另一方面,由于神經(jīng)網(wǎng)絡(luò)非常復(fù)雜,因此使用它們可以做很多事情。卷積層和循環(huán)層都是神經(jīng)網(wǎng)絡(luò)的杰出變體,因為它們處理的數(shù)據(jù)往往需要概率計算的細(xì)微差別。
很少有圖像可以用 1 和 0 建模。決策樹值不能處理具有許多中間值(例如 0.5)的數(shù)據(jù)集,這就是它在 MNIST 數(shù)據(jù)集上表現(xiàn)很好的原因,在 MNIST 中,像素值幾乎都是黑色或白色,但其他數(shù)據(jù)集的像素值不是(例如 ImageNet)。類似地,文本有太多的信息和太多的異常,無法用確定性的術(shù)語來表達(dá)。
這也是神經(jīng)網(wǎng)絡(luò)主要用于這些領(lǐng)域的原因,也是神經(jīng)網(wǎng)絡(luò)研究在早期(21 世紀(jì)初之前)停滯不前的原因,當(dāng)時無法獲得大量圖像和文本數(shù)據(jù)。神經(jīng)網(wǎng)絡(luò)的其他常見用途僅限于大規(guī)模預(yù)測,比如 YouTube 視頻推薦算法,其規(guī)模非常大,必須用到概率。
任何公司的數(shù)據(jù)科學(xué)團(tuán)隊可能都會使用基于樹的模型,而不是神經(jīng)網(wǎng)絡(luò),除非他們正在建造一個重型應(yīng)用,比如模糊 Zoom 視頻的背景。但在日常業(yè)務(wù)分類任務(wù)上,基于樹的方法因其確定性特質(zhì),使這些任務(wù)變得輕量級,其方法與神經(jīng)網(wǎng)絡(luò)相同。
在許多實際情況下,確定性建模比概率建模更自然。例如,預(yù)測用戶是否從某電商網(wǎng)站購買一樣商品,這時樹模型是很好的選擇,因為用戶天然地遵循基于規(guī)則的決策過程。用戶的決策過程可能看起來像這樣:
我以前在這個平臺上有過愉快的購物經(jīng)歷嗎?如果有,繼續(xù)。
我現(xiàn)在需要這件商品嗎?(例如,冬天我應(yīng)該買太陽鏡和泳褲嗎?)如果是,繼續(xù)。
根據(jù)我的用戶統(tǒng)計信息,這是我有興趣購買的產(chǎn)品嗎?如果是,繼續(xù)。
這個東西太貴嗎?如果沒有,繼續(xù)。
其他顧客對這個產(chǎn)品的評價是否足夠高,讓我可以放心地購買它?如果是,繼續(xù)。
一般來說,人類遵循基于規(guī)則和結(jié)構(gòu)化的決策過程。在這些情況下,概率建模是不必要的。
結(jié)論
最好將基于樹的方法視為神經(jīng)網(wǎng)絡(luò)的縮小版本,以更簡單的方式進(jìn)行特征分類、優(yōu)化、信息流傳遞等。
基于樹的方法和神經(jīng)網(wǎng)絡(luò)方法在用途的主要區(qū)別在于確定性(0/1)與概率性數(shù)據(jù)結(jié)構(gòu)。使用確定性模型可以更好地對結(jié)構(gòu)化(表格)數(shù)據(jù)進(jìn)行建模。
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4733瀏覽量
100420 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4277瀏覽量
62323 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8349瀏覽量
132315
原文標(biāo)題:機(jī)器學(xué)習(xí)算法終極對比:樹模型VS神經(jīng)網(wǎng)絡(luò)
文章出處:【微信號:vision263com,微信公眾號:新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論