在這篇文章中,我將詳細解釋這篇論文《Why do tree-based models still outperform deep learning on tabular data》這篇論文解釋了一個被世界各地的機器學習從業者在各種領域觀察到的現象-基於樹的模型在分析表格資料方面比深度學習/神經網路好得多。
這篇論文進行了大量的預處理。例如像刪除遺失的資料會阻礙樹的效能,但是隨機森林非常適合缺少資料的情況,如果你的資料非常雜亂:包含大量的特徵和維度。 RF的穩健性和優點使其優於更「先進」的解決方案,因為後者很容易出現問題。
其餘大部分的工作都很標準。我個人不太喜歡應用太多的預處理技術,因為這可能會導致失去資料集的許多細微差別,但論文中所採取的步驟基本上會產生相同的資料集。但是需要說明的是,在評估最終結果時要使用相同的處理方法。
論文也使用隨機搜尋來進行超參數調優。這也是行業標準,但根據我的經驗,貝葉斯搜尋更適合在更廣泛的搜尋空間中進行搜尋。
了解了這些就可以深入我們的主要問題了——為什麼基於樹的方法勝過深度學習?
#這是作者分享深度學習神經網路無法與隨機森林競爭的第一個原因。簡而言之,當涉及非平滑函數/決策邊界時,神經網路很難創建最適合的函數。隨機森林在怪異/鋸齒/不規則模式下做得更好。
如果我來猜測原因的話,可能是在神經網路中使用了梯度,而梯度依賴可微的搜尋空間,根據定義這些空間是平滑的,所以無法區分尖銳點和一些隨機函數。所以我推薦學習諸如進化演算法、傳統搜尋等更基本的概念等 AI 概念,因為這些概念可以在 NN 失敗時的各種情況下取得很好的結果。
有關基於樹的方法(RandomForests)和深度學習者之間決策邊界差異的更具體示例,請查看下圖-
在附錄中,作者對上述視覺化進行了下面說明:
在這一部分中,我們可以看到RandomForest 能夠學習MLP 無法學習的x 軸(對應日期特徵)上的不規則模式。我們展示了預設超參數的這種差異,這是神經網路的典型行為,但是實際上很難(儘管並非不可能)找到成功學習這些模式的超參數。
另一個重要因素,特別是對於那些同時編碼多個關係的大型資料集的情況。如果向神經網路輸入不相關的特徵結果會很糟糕(而且你會浪費更多的資源訓練你的模型)。這就是為什麼花大量時間在EDA/領域探索上是如此重要。這將有助於理解特性,並確保一切順利運作。
論文的作者測試了模型在添加隨機和刪除無用特性時的表現。基於他們的結果,發現了2個很有趣的結果
刪除大量特性減少了模型之間的效能差距。這清楚地表明,樹型模型的一大優點是它們能夠判斷特徵是否有用並且能夠避免無用特徵的影響。
與基於樹的方法相比,向資料集添加隨機特徵表明神經網路的衰退要嚴重得多。 ResNet尤其受到這些無用特性的影響。 transformer的提升可能是因為其中的注意力機制在某種程度上會有一些幫助。
對這種現象的一種可能解釋是決策樹的設計方式。任何學習 AI 課程的人都會知道決策樹中資訊的增益和熵的概念。這使得決策樹能夠透過比較剩餘的特性來選擇最佳的路徑。
回到正題,在表格資料方面,最後一件事讓 RF 比 NN 表現更好。那就是旋轉不變性。
神經網路是旋轉不變的。這意味著如果對資料集進行旋轉操作,它不會改變它們的效能。旋轉資料集後,不同模型的性能和排名發生了很大的變化,雖然ResNets一直是最差的, 但是旋轉後他保持原來的表現,而所有其他模型的變化卻很大。
這很現象非常有趣:旋轉資料集到底意味著什麼?整個論文中也沒有詳細的細節說明(我已經聯繫了作者,並將繼續跟進這個現象)。如果有任何想法,也請在評論中分享。
但是這個操作讓我們看到為什麼旋轉方差很重要。根據作者的說法,採用特徵的線性組合(這就是使ResNets不變的原因)實際上可能會錯誤地表示特徵及其關係。
透過對原始資料的編碼獲得最佳的資料偏差,這些最佳的偏差可能會混合具有非常不同的統計特性的特徵並且不能透過旋轉不變的模型來恢復,會為模型提供更好的性能。
這是一篇非常有趣的論文,雖然深度學習在文字和圖像資料集上取得了巨大進步,但它在表格資料上的基本沒有優勢可言。論文使用了 45 個來自不同領域的資料集進行測試,結果表明即使不考慮其卓越的速度,基於樹的模型在中等資料(~10K 樣本)上仍然是最先進的。
以上是為什麼基於樹的模型在表格資料上仍然優於深度學習的詳細內容。更多資訊請關注PHP中文網其他相關文章!