魔術合奏學習

嘿哈布爾! 我們邀請數據工程師和機器學習專家參加免費的演示課程 “使用在線推薦示例將機器學習模型引入工業環境”。 我們還發表了 CDP SpA 財務分析主管 Luca Monno 撰寫的文章。

最有用和最簡單的機器學習方法之一是集成學習。 集成學習是 XGBoost、Bagging、隨機森林和許多其他算法的基礎技術。

關於走向數據科學有很多很棒的文章,但我選擇了兩個故事(第一 и 第二)我最喜歡的。 那麼為什麼還要寫另一篇關於 EL 的文章呢? 因為我想向你展示 它如何在一個簡單的例子中工作, 這讓我明白這裡沒有魔法。

當我第一次看到 EL 的實際應用(使用一些非常簡單的回歸模型)時,我簡直不敢相信自己的眼睛,而且我仍然記得教我這種方法的教授。

我有兩個不同的指數模型(兩種弱學習算法) 樣本外 R² 分別等於 0,90 和 0,93。 在查看結果之前,我認為 R² 會介於兩個初始值之間。 換句話說,我認為 EL 可以用來使模型的表現不像最差模型那麼差,但也不像最好模型那麼好。

令我大吃一驚的是,對預測進行簡單平均後得出的 R² 為 0,95。 

起初我開始尋找錯誤,但後來我想這裡可能隱藏著一些魔法!

什麼是集成學習

通過 EL,您可以組合兩個或多個模型的預測,以獲得更可靠、性能更佳的模型。 有許多方法可用於處理模型集合。 在這裡,我將介紹兩個最有用的內容,為您提供一個想法。

回歸 您可以平均可用模型的性能。

分類 您可以讓模型選擇標籤。 最常選擇的標籤就是新模型將選擇的標籤。

為什麼 EL 效果更好

EL 效果更好的主要原因是因為每個預測都有誤差(我們從概率論中知道這一點),結合兩個預測可以幫助減少誤差,從而提高性能指標(RMSE、R² 等)。

下圖顯示了兩種弱算法如何在數據集上工作。 第一個算法的斜率大於所需的斜率,而第二個算法的斜率幾乎為零(可能是由於過度正則化)。 但 合奏 顯示出更好的結果。 

如果您查看 R²,那麼第一個和第二個訓練算法將使其分別等於 -0.01、0.22,而對於集成,它將等於 0.73。

魔術合奏學習

即使對於像這樣的基本示例,算法也可能是一個糟糕的模型,原因有很多:也許您決定使用正則化來避免過度擬合,或者您決定不消除某些異常,或者您可能使用多項式回歸併選擇了錯誤的程度(例如,使用二次多項式,測試數據顯示出明顯的不對稱性,則三次多項式更適合)。

EL 何時發揮最佳作用

讓我們看一下適用於相同數據的兩種學習算法。

魔術合奏學習

在這裡您可以看到,結合這兩個模型並沒有太大提高性能。 最初,對於兩種訓練算法,R² 值分別為 -0,37 和 0,22,對於集成,結果為 -0,04。 即EL模型得到指標的平均值。

然而,這兩個例子之間有很大的區別:在第一個例子中,模型的誤差是負相關的,而在第二個例子中是正相關的(三個模型的係數沒有被估計,而是由作者簡單選擇的)舉個例子。)

因此,集成學習可以用來改善所有情況下的偏差/色散平衡,但是當 模型誤差不呈正相關,使用 EL 可以帶來更好的性能.

同質和異質模型

EL 通常用於同質模型(如本例或隨機森林),但實際上您可以將不同的模型(線性回歸 + 神經網絡 + XGBoost)與不同的解釋變量集組合起來。 這可能會導致不相關的錯誤並提高性能。

與投資組合多元化的比較

EL 的工作原理與投資組合理論中的多元化相似,但對我們來說更好。 

當您進行多元化投資時,您會嘗試通過投資不相關的股票來減少業績差異。 充分多元化的股票投資組合的表現會比最差的單一股票更好,但永遠不會比最好的股票更好。

引用沃倫·巴菲特的話: 

“多元化是對無知的防禦,對於不知道自己在做什麼的人來說,[多元化]毫無意義。”

在機器學習中,EL 有助於減少模型的方差,但這可能會導致模型比最佳初始模型具有更好的整體性能。

綜合

將多個模型組合成一個是一種相對簡單的技術,可以解決方差偏差問題並提高性能。

如果您有兩個或多個運行良好的模型,請不要在它們之間進行選擇:全部使用它們(但要小心)!

您有興趣往這個方向發展嗎? 註冊免費演示課程 “使用在線推薦示例將機器學習模型引入工業環境” 並參與 與安德烈·庫茲涅佐夫的在線會面 — Mail.ru Group 的機器學習工程師。

來源: www.habr.com

添加評論