魔法アンサンブル学習

おい、ハブル! データ エンジニアと機械学習のスペシャリストを無料のデモ レッスンにご招待します 「オンラインレコメンデーションの例を使用した産業環境への ML モデルの導入」。 CDP SpA の財務分析責任者である Luca Monno による記事も掲載しています。

最も便利でシンプルな機械学習手法の XNUMX つはアンサンブル学習です。 アンサンブル学習は、XGBoost、Bagging、Random Forest、およびその他の多くのアルゴリズムの基礎となる技術です。

Towards Data Science には素晴らしい記事がたくさんありますが、私は XNUMX つの記事を選びました (最初の и 2番目の)私が一番気に入ったもの。 では、なぜ EL について別の記事を書くのでしょうか? 見せたいから 簡単な例でどのように機能するか、 それは私にここに魔法はないことを理解させました。

EL が実際に動作している (いくつかの非常に単純な回帰モデルを使用している) のを初めて見たとき、私は目を疑いました。この方法を教えてくれた教授のことを今でも覚えています。

指数を備えた XNUMX つの異なるモデル (XNUMX つの弱い学習アルゴリズム) がありました サンプル外 R² はそれぞれ 0,90 と 0,93 に等しい。 結果を見る前は、R² が XNUMX つの初期値の間のどこかにあるだろうと考えていました。 言い換えれば、EL を使用すると、モデルのパフォーマンスは最悪のモデルほど悪くはならないが、最高のモデルほどにはならないようにできるのではないかと考えました。

驚いたことに、予測を単純に平均した結果、R² は 0,95 でした。 

最初はエラーを探し始めましたが、ここに何か魔法が隠されているかもしれないと思いました。

アンサンブル学習とは

EL を使用すると、XNUMX つ以上のモデルの予測を組み合わせて、より信頼性が高くパフォーマンスの高いモデルを取得できます。 モデルのアンサンブルを操作する方法は数多くあります。 ここでは、アイデアを提供するために最も役立つ XNUMX つについて触れます。

ととも​​に 回帰 利用可能なモデルのパフォーマンスを平均化できます。

ととも​​に 分類 モデルにラベルを選択させることができます。 最も多く選択されたラベルが、新しいモデルで選択されるラベルです。

EL の方が優れている理由

EL がより適切に機能する主な理由は、各予測には誤差があるため (これは確率論からわかっています)、XNUMX つの予測を組み合わせることで誤差が軽減され、パフォーマンス指標 (RMSE、R² など) が改善されるためです。d.)。

次の図は、XNUMX つの弱いアルゴリズムがデータセットでどのように機能するかを示しています。 最初のアルゴリズムの傾きは必要以上に大きく、XNUMX 番目のアルゴリズムの傾きはほぼゼロです (おそらく過剰な正則化が原因です)。 しかし アンサンブル より良い結果が示されています。 

R² を見ると、最初と 0.01 番目のトレーニング アルゴリズムではそれぞれ -0.22¹、0.73 に等しくなりますが、アンサンブルでは XNUMX に等しくなります。

魔法アンサンブル学習

このような基本的な例であっても、アルゴリズムが不適切なモデルになる理由は数多くあります。おそらく、過学習を避けるために正則化を使用することにしたのか、一部の異常を除去しないことにしたのか、多項式回帰を使用して間違った次数を選択したのかが考えられます。 (たとえば、XNUMX 次の多項式が使用され、テスト データは明らかな非対称を示しています。これには XNUMX 次の方が適しています)。

EL が最適に機能する場合

同じデータに対して動作する XNUMX つの学習アルゴリズムを見てみましょう。

魔法アンサンブル学習

ここでは、0,37 つのモデルを組み合わせてもパフォーマンスがあまり向上していないことがわかります。 当初、0,22 つのトレーニング アルゴリズムの R² 値はそれぞれ -0,04 と XNUMX でしたが、アンサンブルでは -XNUMX であることが判明しました。 つまり、EL モデルは指標の平均値を受け取りました。

ただし、これら XNUMX つの例には大きな違いがあります。最初の例では、モデルの誤差は負の相関関係にあり、XNUMX 番目の例では正の相関関係がありました (XNUMX つのモデルの係数は推定されず、作成者が単に選択しただけです)。例として。)

したがって、アンサンブル学習を使用すると、あらゆる場合において偏り/分散バランスを改善できますが、 モデルエラーは正の相関関係にないため、EL を使用するとパフォーマンスが向上する可能性があります.

同種モデルと異種モデル

EL は同種モデル (この例やランダム フォレストなど) で使用されることがよくありますが、実際には、異なるモデル (線形回帰 + ニューラル ネットワーク + XGBoost) を異なる説明変数セットと組み合わせることができます。 これにより、相関関係のないエラーが発生し、パフォーマンスが向上する可能性があります。

ポートフォリオ分散との比較

EL はポートフォリオ理論における分散と同様の方法で機能しますが、私たちにとってははるかに優れています。 

分散投資を行う場合は、相関性のない株式に投資することで業績の変動を減らそうとします。 十分に分散された株式ポートフォリオは、最悪の単一銘柄よりも優れたパフォーマンスを発揮しますが、最高の株式よりも優れることはありません。

ウォーレン・バフェットの言葉を引用: 

「多様化は無知に対する防衛手段であり、自分が何をしているのかを知らない人にとって、それ(多様化)はほとんど意味がありません。」

機械学習では、EL はモデルの分散を減らすのに役立ちますが、その結果、最良の初期モデルよりも全体的なパフォーマンスが向上したモデルが得られる可能性があります。

要約します

複数のモデルを XNUMX つに結合することは、分散バイアスの問題の解決とパフォーマンスの向上につながる比較的単純な手法です。

正常に動作するモデルが XNUMX つ以上ある場合は、その中から選択するのではなく、すべてを使用してください (ただし注意が必要です)。

この方向の開発に興味がありますか? 無料のデモレッスンに申し込む 「オンラインレコメンデーションの例を使用した産業環境への ML モデルの導入」 そして参加する アンドレイ・クズネツォフとのオンライン会議 — Mail.ru グループの機械学習エンジニア。

出所: habr.com

コメントを追加します