深度學習在圖像、語言甚至音訊等領域取得了巨大的進步。然而,在處理表格資料上,深度學習卻表現得一般。由於表格資料具有特徵不均勻、樣本量小、極端值較大等特點,因此很難找到對應的不變量。
基於樹的模型不可微,不能與深度學習模組聯合訓練,因此創建特定於表格的深度學習架構是一個非常活躍的研究領域。許多研究聲稱可以擊敗或媲美基於樹的模型,但他們的研究遭到許多質疑。
事實上,對表格資料的學習缺乏既定基準,這樣一來研究者在評估他們的方法時就有很多自由度。此外,與其他機器學習子網域中的基準相比,大多數線上可用的表格資料集都很小,這使得評估更加困難。
為了緩解這些擔憂,來自法國國家資訊與自動化研究所、索邦大學等機構的研究者提出了一個表格資料基準,其能夠評估最新的深度學習模型,並表明基於樹的模型在中型表格資料集上仍然是SOTA。
對於這個結論,文中給出了確鑿的證據,在表格資料上,使用基於樹的方法比深度學習(甚至是現代架構)更容易實現良好的預測,研究者並探明了其中的原因。
論文網址:https://hal.archives-ouvertes.fr/hal-03723551/document 值得一提的是,論文作者之一是Gaël Varoquaux ,他是Scikit-learn 計畫的領導者之一。目前該專案在 GitHub 上已成為最受歡迎的機器學習庫之一。而由 Gaël Varoquaux 參與的文章《Scikit-learn: Machine learning in Python》,引用量達 58949。
本文貢獻可總結為:
此研究為表格資料建立了一個新的基準(選取了45 個開放資料集),並透過OpenML 共享這些資料集,這使得它們易於使用。
研究在表格資料的多種設定下比較了深度學習模型和基於樹的模型,並考慮了選擇超參數的成本。該研究還分享了隨機搜尋的原始結果,這將使研究人員能夠廉價地測試新演算法以獲得固定的超參數優化預算。
#新基準參考45 個表格資料集,選擇基準如下:
在以樹為基礎的模型中,研究者選擇了 3 種 SOTA 模型:Scikit Learn 的 RandomForest,GradientBoostingTrees (GBTs) , XGBoost 。研究對深度模型進行了以下基準測試:MLP、Resnet 、FT Transformer、SAINT 。圖 1 和圖 2 給出了不同類型資料集的基準測試結果
#
##歸納偏差。基於樹的模型在各種超參數選擇中擊敗了神經網路。事實上,處理表格資料的最佳方法有兩個共有屬性:它們是整合方法、bagging(隨機森林)或 boosting(XGBoost、GBT),而這些方法中使用的弱學習器是決策樹。
發現1:神經網路(NN)傾向於過度平滑的解決方案
如圖3 所示,對於較小的尺度,平滑訓練集上的目標函數會顯著降低基於樹的模型的準確率,但幾乎不會影響NN。這些結果表明,資料集中的目標函數並不平滑,與基於樹的模型相比,NN 難以適應這些不規則函數。這與 Rahaman 等人的發現一致,他們發現 NN 偏向低頻函數。基於決策樹的模型學習分段(piece-wise)常數函數,沒有這樣的偏移。
發現2:非資訊特徵更能影響類似MLP 的NN
表格資料集包含許多非資訊( uninformative)特徵,對於每個資料集,研究根據特徵的重要性會選擇丟棄一定比例的特徵(通常按隨機森林排序)。從圖 4 可以看出,去除一半以上的特徵對 GBT 的分類準確率影響不大。
圖5 可以看到移除非資訊特徵(5a) 減少了MLP (Resnet) 與其他模型( FT Transformers 和基於樹的模型)之間的效能差距,而添加非資訊特徵會擴大差距,這表明MLP 對非資訊特徵的穩健性較差。在圖 5a 中,當研究者移除更大比例的特徵時,相應的也會刪除有用資訊特徵。圖5b 表明,去除這些特徵所帶來的準確率下降可以通過去除非資訊特徵來補償,與其他模型相比,這對MLP 更有幫助(同時,該研究還刪除了冗餘特性,也不會影響模型性能)。
#發現3:透過旋轉,資料是非不變的
與其他模型相比,為什麼MLP 更容易受到無訊息特徵的影響?其中一個答案是,MLP 是旋轉不變的:當對訓練集和測試集特徵應用旋轉時,在訓練集上學習 MLP 並在測試集上進行評估,這一過程是不變的。事實上,任何旋轉不變的學習過程都具有最壞情況下的樣本複雜度,該複雜度至少在不相關特徵的數量上呈線性增長。直觀地說,為了去除無用特徵,旋轉不變演算法必須先找到特徵的原始方向,然後選擇資訊最少的特徵。
圖 6a 顯示了對資料集進行隨機旋轉時的測試準確率變化,證實只有 Resnets 是旋轉不變的。值得注意的是,隨機旋轉顛倒了效能順序:結果是 NN 在基於樹的模型之上,Resnets 在 FT Transformer 之上,這表明旋轉不變性是不可取的。事實上,表格數據通常具有單獨含義,例如年齡、體重等。圖6b 中顯示:刪除每個資料集中最不重要的一半特徵(在旋轉之前),會降低除Resnets 之外的所有模型的效能,但與沒有刪除特徵使用所有特徵時相比,相比較而言,下降的幅度較小。
##
以上是在表格資料上,為什麼基於樹的模型仍然優於深度學習?的詳細內容。更多資訊請關注PHP中文網其他相關文章!