机器学习竞赛中,为什么GBDT往往比深度学习更有效?
在過去的幾年里,大多數的推薦算法都是基于深度學習(DL)方法。遵循我們領域的一般研究實踐,這些工作證明了新的DL方法在離線實驗中優于其他不基于深度學習的模型。然而,在與推薦相關的機器學習競賽中(如與年度ACM ? RecSys大會一起舉行的挑戰賽)沒有觀察到基于DL的模型的這種幾乎一致的成功。取而代之的是,成功的解決方案主要包括大量的特征工程和使用梯度提升的技術。
在本文中,我們探討了這種令人驚訝的現象的可能原因。我們考慮多個可能的因素,如問題設置、數據集和DL方法的特點和復雜性;競賽參與者的背景;或評估方法的特殊性。
然而,當我們觀察推薦任務的機器學習競賽的結果時,我們無法觀察到近年來DL方法對非DL技術的勝利。例如,當我們看一下每年在ACM推薦系統大會(ACM ? RecSys)上舉行的挑戰賽時,我們發現其他技術在排行榜上占據主導地位。具體地說,在這些依賴于相對古老的梯度提升樹的方法似乎總是能拿名次。而成功的一個關鍵在于特征工程過程的有效性,這通常需要對該領域有很好的理解。為了證明這一差異,我們看了2017年至2019年與ACM ?RecSys舉行的挑戰相關的研討會的會議記錄。
最新ACM RecSys挑戰賽的DL方案分析
在2017年至2019年ACM RecSys挑戰賽的前五大解決方案中,只有一個方案完全依賴于DL方法的組合:在2018年挑戰賽中排名第二的方案。
他們解決自動播放列表問題的方法:將Autoencoder處理曲目和藝術家列表與字符級 CNN處理音樂曲目標題相結合。所有其他解決方案通常基于特征工程、梯度提升或各種技術的組合,包括矩陣分解、支持向量機、邏輯回歸、基于內容的技術或最近鄰技術等。
在一些融合方案中,也經常包含DL模型。選手也經常會給出單個模型的結果,我們經常觀察到,即使使用相同的特征集,DL模型也沒有達到梯度提升的性能。
在2018年獲勝的兩階段模型中,第一階段使用了CNN組件,但據作者的說法,它在第一階段模型中表現最差。在GBDT類模型與DL技術結合時。為了避免過度擬合,DL方案只訓練了一個epoch,最后它對整體提升也很小。
在2019年競爭第二名的解決方案中,作者說,效果最好的單模型是使用的XGBoost。他們試驗了基于LSTM和基于Transformer的神經體系結構,使用相同的一組特征,對查詢后顯示給用戶的商品序列進行建模。此外,他們用預先訓練的XGBoost模型的預測輸出葉(一種稱為葉編碼的技術)豐富了特征集。然而,根據作者的說法,“即使是這樣,我們發現深度學習模型很難與GBM效果相匹配。”
ACM RecSys 2020挑戰賽的勝出團隊將三個梯度提升決策樹(即XGBoost)融合在一起,對100多個工程特性進行了訓練,最終得出了最終的預測結果。
他們探索了一些利用文本內容(BERT標記)的神經方法,但最終的解決方案中沒有包含這些方法。
從其它推薦系統和數據科學競賽中觀察表格數據
類似的情況也可以在Kaggle等流行平臺上舉辦的推薦系統競賽中找到。例如,
在Outbrain Click Prediction競賽(2017)中,FFM是前三名獲獎解決方案中的核心技術。
在Criteo(2014)和Avazu5(2014)主辦的CTR(點擊率)預測競賽中,同樣的技術也取得了成功。
與后兩項比賽不同的是,Outbrain比賽的任務是排名(而不是CTR預測)。然而,FFM技術在三年后繼續表現最好,同樣是為了這個替代的預測目標。在這些競爭中,神經網絡扮演了次要的角色,繼FFM、帶有FTRL優化和XGBoost的logistic回歸模型。
當我們用一般的表格數據來看待其他數據科學競賽時,我們的觀察結果是相似的。近三年來Kaggle競爭的表格數據來看,大多數以GBM為核心模型。偶爾有例外,例如Porto Seguro’s Safe Driver Prediction和Predicting Molecular Properties 競賽,其中獲勝的解決方案依賴于DL模型。
在前者中,所提供的特征名稱是匿名的,不可能將領域知識用于特征工程。我們可以推測這是一個有利于使用DL模型的因素。
在后一場比賽中,獲勝的解決方案是一個精心設計的具有自我關注能力的圖神經網絡(GNN)。在這里,數據的底層圖結構可能對基于圖的體系結構有利。
對于此類現象的潛在原因,我們確定了三大潛在差異和解釋:
數據集和問題特征;
研究者的目標和動;
評估方法
問題是否不同
我們觀察到的差異的一個潛在原因可能在于學術研究和競賽中所討論問題的特點。
數據集相關方面
數據集相關方面:數據量大, ?ACM RecSys ?Challenge等比賽提供的數據集通常包含數百萬個交互,旨在代表行業數據。例如,2017年挑戰賽的XING數據集包含超過3.2億次記錄交互。自2006年Netflix以1億的ratings,這樣大的數據集在推薦系統研究中并不少見。然而,在學術界,最近的DL方法通常是基于更小的數據集,只包含100000個交互,甚至更少。
DL方法的一個流行假設是,當有大量的數據可用于訓練時,DL會尤其有效。如果這是真的,這些方法將從比賽中使用的大數據集中獲益。然而,另一方面,訓練深層神經網絡的計算成本很高,這也是為什么即使是最近的學術論文在評估時也使用相對較小的數據集的原因之一。在競爭對手沒有處理大計算能力的情況下(例如,具有大內存的gpu可以容納用于高基數分類特征的巨型嵌入表),因此他們可能會求助于其他方法,如梯度提升樹模型等。
競賽和實際部署之間的一個決定性區別可能是真實世界系統中可用的數據量。比賽中的數據是從短時間內用戶子集中采樣的,而部署的系統利用現有模型的迭代再訓練來維護用戶和商品豐富的交互歷史。因此,DL方法在已部署系統中的優勢可能只會在更多的數據出現時才顯現出來可用。與數據集特性相關的另一個方面是,學術界使用的一些數據集(如傳統的MovieLens100k電影收視率集合)比競賽數據集和一般真實世界的數據集稀疏。眾所周知,高數據稀疏性可能導致過度擬合,這可能特別適用于某些DL架構。這里需要考慮的一個重要方面是,實際上競爭數據集通常在記錄的交互數量方面很大。然而,有時這些互動是在一個狹窄的時間窗口內收集的,例如,幾個星期。因此,由許多DL模型學習的用戶和項目嵌入通常只基于每個用戶和項目的非常小的交互集。
在額外的數據方面,過去的三個ACM ? RecSys挑戰中,提供了各種類型的元數據,即不僅提供了用戶和商品之間的交互,而且數據集還分別包含了有關工作、藝術家和酒店的信息。通常認為DL方法的優點是它們非常適合于異構或多模式數據,并且能夠檢測和利用此類數據中的復雜交互,例如通過使用共享表示。同樣,元數據的可用性原則上應該對DL方法有利,但是我們只觀察到一些例子,比如,CNN被用來利用元數據信息。
在某些情況下,更多元數據特性的可用性甚至會在某些方面誤導DL方法。在推薦系統競賽中,最常見的任務是對用戶交互進行bianry分類或根據其預測的相關性對商品進行排名。這些任務需要負樣本(不存在的user ? item交互)進行評估,大多數算法也使用這些負樣本進行訓練。完美的場景應該是有真正的負樣本,這些樣本實際上被用戶看到而忽略了。然而,競賽數據集中的負樣本通常是由商品的某些概率分布(例如,基于項目的最近性、流行性、,“共現”(co-occurrence)或“內容相似性”(content ?similarity),試圖模擬用戶在瀏覽會話中可能看到(或忽略)的商品。
如果負項的分布與正項的分布不太接近,復雜模型可以學習模式,將正樣本和負樣本從可用的泄漏特征中分離出來,并利用這種方式進行準確預測。當一組更豐富的功能可用時,這種風險會增加。
當存在這種泄漏特征時,神經網絡很容易過度擬合,即使使用諸如L2正則化或dropout之類的正則化技術。相比之下,樹的集合(例如GBDT、隨機森林)則使用諸如bagging(實例抽樣和替換)、feature ? bagging(列抽樣)和boosting(優化以正確預測前一個訓練步驟中的錯誤)來對抗過度擬合。最后,這些技術可能會產生更一般化的模型(即低方差誤差)。
預測相關方面
在學術界,最常見的問題是rating預測、bianry分類和給定歷史用戶項交互矩陣的top-n推薦。
在許多研究工作中,一個相應的假設是,對于每個用戶來說,在訓練階段有一些過去的交互是已知的。然而,在過去三次ACM-RecSys挑戰中的預測問題是不同的。
2017年,挑戰的離線部分的目標是預測哪些用戶會對新發布的工作邀請感興趣,這與商品冷啟動問題相對應。與典型的學術研究不同,使用了一種非常具體的評價指標,考慮了用戶對推薦的各種反應。
2018年,我們的任務是給定最初的幾首歌曲創建音樂播放列表continuation。
2019年的目標是預測用戶在給定的會話中點擊了哪一個酒店搜索結果。特別是在后兩種情況下,問題不是傳統的矩陣補全設定,而是基于會話和上下文感知的推薦問題;
在商品冷啟動和用戶冷啟動推薦場景中使用神經網絡時,通常商品和用戶嵌入會像初始化一樣隨機,沒有預測能力。因此,利用用戶和商品元數據(例如,人口統計、內容特性)和上下文信息(例如最近的交互、時間、位置)是判斷給定用戶是否對給定上下文中的特定項感興趣的關鍵。
近年來,針對基于會話和順序推薦任務,提出了一些基于DL的方法。然而,特別是對于基于會話的方法,基于rnn或注意力的DL方法并不一定比基于概念上更簡單的技術,例如基于最近鄰的方法。請注意,許多基于會話的深度學習算法僅依賴于協同信息(即,用戶-商品交互),但沒有考慮副信息,這可能是限制其有效性的一個因素。
例如,在之前新聞領域的實驗表明,簡單的基于會話的算法(例如,基于kNN和關聯規則)能夠提供比基于RNN和基于GNN(圖神經網絡)的模型更高的精度,當只考慮用戶-商品交互時。只有當附加信息被添加到一個基于RNN的體系結構(CHAMELEON)中時,該體系結構設計用于處理冷啟動問題,其精度比任何其他基于會話的算法高20%。
研究人員和他們的目標不同嗎?
另一個我們看不到DL方法持續獲勝的潛在原因可能與參加比賽的人有關。例如,可以假設一些參與者無法訪問GPU驅動的硬件,這就是為什么他們求助于其他計算要求較低的技術。另一種假設是,挑戰參與者會定期參加數據科學競賽。考慮到梯度提升在這類比賽中的流行和過去的成功,人們可以推測,這些參與者要么偏愛更傳統的模式,要么不精通最新的深度學習技術。
然而,當研究人員關注這些假設時,很難維持這些假設。表現最好的貢獻來自具有不同背景的團隊。有來自專注于人工智能的公司的團隊,有從事推薦系統的學術研究小組的成員,還有一些個人,假設是獨立的研究人員或機器學習愛好者,但他們的背景并不多。至少對于來自公司的參與者,我們可以假設他們配置了足夠的計算資源。此外,當查看來自工業界和學術界的單個研究人員簡介時,也會發現這些參與者非常了解DL方法,并且在某些情況下,如上所述,報告他們在解決方案中添加DL方案的經驗。
盡管如此,研究人員和挑戰選手可能有不同的目標、偏好和工作流程。在競賽中,參賽者通常依靠常規的科學數據和競賽數據來獲得勝利。這些模型在數據預處理方面非常輕量級(例如,不需要特征縮放),進行自動特征選擇,對過度擬合具有魯棒性,并且可以解釋,從而提供對最重要特征的見解。另一方面,神經網絡通常需要在特征規范化、體系結構設計、正則化或損失函數方面有深入的專業知識,而且它們還需要專門的硬件(GPU)來實現高性能。此外,由于對預處理、體系結構設計和超參數選擇的敏感性,神經模型通常需要努力和時間才能獲得更好的結果。僅僅找到一個網絡體系結構(包括結構、層和節點的數量)的問題就可以打開一個巨大的設計空間,在這個空間中可以找到一個性能良好的解決方案。由于比賽的時間跨度通常相對較短,因此當給出表格數據時,DL模型可能不是參賽者的首選。
根據我們的經驗,挑戰賽參賽者在處理表格數據時通常會在特征探索和工程設計上投入大量時間。另一方面,學術研究者通常更關注科學方面,例如針對給定的問題或領域探索和提出復雜的訓練算法和神經體系結構設計。他們在實驗中一般不注重特征工程和泄漏的開發。例如,有論文報道了將混合推薦的新神經體系結構與XGBoost模型進行比較的實驗,XGBoost模型使用相同的豐富特性集。
是評估過程不一致嗎?
在學術研究和競賽中,如何設置性能比較實驗以及如何實際進行評價是完全不同的。我們在表1中說明了主要差異。
這兩種基準測試算法之間的差異是顯著的。在競賽中這樣做的方式似乎更客觀,也不容易受到研究人員的潛在偏見的影響,他們是唯一在發表前對自己的提案進行評估的人。實際上,在學術環境中,研究人員在決定實驗裝置的具體細節時有很大的自由。擁有這種自由是絕對重要的,因為它允許研究人員探索新的結構和研究以前沒有研究過的問題。這種自由的一個潛在的缺點可能是,研究人員可能會有意識或無意識地以實驗配置結束,這些配置支持他們的假設,即他們新提出的方法比以前的方法更好。上下文中的一個典型問題可能在于基線的選擇和優化。也就是說,可能是因為新的Baseline太弱了。
最近的研究提供了幾個例子,其中DL方法與論文中報道的方法相比,并不總是優于現有的并且通常相當簡單的方法。當然,在學術文獻中,我們無法知道DL方法在多大程度上戰勝了以往的方法論問題。這一點尤其不清楚,因為在數字圖書館時代之前,也曾觀察到類似的問題,例如在信息檢索領域。
我們可以在不同的學術評價方法和方法中觀察誰來設計和研究。然而,最終,這些差異是否與學術論文和競賽中獲獎模式之間觀察到的差異密切相關,目前仍不清楚。在行業中也可以看到類似的差異,推薦的成功是以組織為導向的,通常是縱向的關鍵績效指標。例如,谷歌在他們的在線實驗中報告說,與具有相同特征集的線性模型相比,他們的廣度和深度模型在在線獲取方面的收益增加了3.9%。從更積極的方面來說,我們可以越來越多地觀察到學術研究人員通過公開代碼、超參數選擇和數據集來更加關注可重復性。這將導致其他研究人員有機會客觀獨立地驗證實驗和結果。
討論和總結
我們的工作突出了許多潛在的原因,為什么DL方法不能一直贏得推薦系統的競爭。也可能存在其他原因,例如,這只是發生在特定比賽系列中的巧合。
事實上,一年之內有一個完全基于DL的第二個解決方案。可能是DL方法對于這些類型的問題“只是不能很好地工作”。然而,考慮到DL在機器學習的其他應用領域和工業中的成功,這樣一個概括的解釋似乎不太可能。
總的來說,我們認為DL方法在推薦問題上的潛力還沒有得到充分的開發。也許我們還需要更好的方法來并行地組合不同的信息源。結合前10期作品的成功經驗,提出了相關建議。尤其是在需要考慮某些細節的情況下,比如在新聞領域,我們有一個永久性的項目冷啟動問題。另一種在競賽中使用DL獲得更好結果的潛在方法可能是開發和使用能夠實現高性能“開箱即用”的工具,即不需要進行廣泛的特征工程和神經結構設計。在DL的上下文中,例如,這樣的AutoML技術NAS。
然而,我們的討論也強調了在學術研究中不要忘記非DL方法的重要性。近年來,我們有時觀察到新提出的方法只與其他DL方法進行比較,而不再考慮以前的方法。當后來發現這些基線DL方法并不一定比我們以前的方法更好時,例如。,由于以上提到的方法問題,我們再次以“提升不會add ?up”結束,這種以DL為中心的基線模式也出現在行業數據集的在線評估中,而且這一建議也可能適用于此。
最后,人們可能會質疑機器學習競賽對于一般科學過程的重要性。這樣的比賽在某些方面強化了一種“追逐排行榜”的文化,在這種文化中,主要的、通常唯一的目標是在一組準確度指標上比以前的方法高出幾個百分點。這可能會導致這樣的結果:這些改進在實踐中是否重要的問題從未被問過。此外,為什么某個解決方案導致了改進,這也變得無關緊要,因為這樣的研究方法不是基于基礎理論或研究假設的。另一方面,競賽可以對科學研究產生一些積極的影響。例如,通過這樣的競賽,組織可以與學術界分享他們感興趣的問題。此外,競爭是學術研究人員獲取數據集的重要來源之一,也是吸引研究人員在未來不斷建立更好的推薦系統的有效手段。
后臺回復關鍵詞【入群】
加入賣萌屋NLP/IR/Rec與求職討論群
后臺回復關鍵詞【頂會】
獲取ACL、CIKM等各大頂會論文集!
總結
以上是生活随笔為你收集整理的机器学习竞赛中,为什么GBDT往往比深度学习更有效?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 对话系统答非所问?快试试这篇ACL'21
- 下一篇: 「小公式」平均数与级数