ランダムフォレストはブースティングアルゴリズムですか?


51

ブースティングの簡単な定義:

一連の弱い学習者が単一の強い学習者を作成できますか?弱学習器は、真の分類とわずかにしか相関しない分類子であると定義されます(ランダムな推測よりも例をラベル付けできます)。

ランダムフォレストの短い定義:

ランダムフォレストは、多くの分類ツリーを成長させます。入力ベクトルから新しいオブジェクトを分類するには、入力ベクトルをフォレスト内の各ツリーに配置します。各ツリーは分類を提供し、ツリーはそのクラスに「投票」します。フォレストは、(フォレスト内のすべてのツリーに対して)最も投票数の多い分類を選択します。

ランダムフォレストの別の短い定義:

ランダムフォレストは、データセットのさまざまなサブサンプルに多数の決定木分類器を適合させ、予測精度を向上させて過剰適合を制御するために平均化を使用するメタ推定器です。

私が理解しているように、ランダムフォレストは弱い分類子としてツリーを使用するブースティングアルゴリズムです。また、他の手法を使用し、それらを改善することも知っています。誰かがランダムフォレストがブースティングアルゴリズムではないことを修正しましたか?

誰かがこれについて詳しく説明できますか、なぜランダムフォレストがブースティングアルゴリズムではないのですか?


13
ランダムフォレストは、袋詰めのアルゴリズムです:en.wikipedia.org/wiki/Bootstrap_aggregating。違いを確認するには、ブースティングの可能な限り短い説明を読むことをお勧めします。ブースティングでは、リサンプリング戦略はランダムではありません
マーククレセン

12
おもしろい事実:オリジナルのランダムフォレストの論文で、ブライマンは、AdaBoost(ブースティングアルゴリズム)がほとんどランダムフォレストを実行することを示唆しています。

回答:


81

ランダムフォレストは、ブースティングアルゴリズムではなく、バギングアルゴリズムです。低エラーを達成するための2つの反対の方法です。

エラーはバイアスと分散から合成できることを知っています。複雑すぎるモデルはバイアスが低く、分散が大きく、単純すぎるモデルは分散が低く、バイアスが大きく、両方とも高いエラーを引き起こしますが、2つの異なる理由があります。その結果、問題を解決するための2つの異なる方法(ブライマンなど)、複雑なモデルの分散削減、またはランダムフォレストとブースティングを指す単純なモデルのバイアス削減が頭に浮かびます。

ランダムフォレストは、低バイアスで多数の「複雑な」モデルの分散を低減します。構成要素は「弱い」モデルではなく、複雑すぎるモデルであることがわかります。アルゴリズムについて読んだ場合、基礎となるツリーは「可能な限り」「ある程度」大きく植えられます。基礎となるツリーは独立した並列モデルです。そして、さらに独立したランダム変数選択がそれらに導入され、それらをさらに独立させます。これにより、通常のバギングよりもパフォーマンスが向上し、「ランダム」という名前が付与されます。

ブーストすると、分散の少ない多数の「小さな」モデルのバイアスが減少します。あなたが引用したように、それらは「弱い」モデルです。基礎となる要素は、各レベルのバイアスに関する「チェーン」または「ネスト」反復モデルのようです。したがって、それらは独立した並列モデルではありませんが、各モデルは、重み付けによって以前のすべての小さなモデルに基づいて構築されます。それは、いわゆる「ブースティング」です。

ブライマンの論文と本は、木、ランダムな森林、そして非常に多くのブースティングについて議論しています。アルゴリズムの背後にある原理を理解するのに役立ちます。


26

ランダムフォレストは、ブースティングタイプのアルゴリズムとは見なされません。

ブースティングリンクで説明したように:

...ほとんどのブースティングアルゴリズムは、分布に関して弱い分類器を繰り返し学習し、最終的な強い分類器に追加することで構成されます。それらが追加されると、通常、弱学習器の精度に通常関連する何らかの方法で重み付けされます。弱学習器が追加された後、データは再重み付けされます...

この反復プロセスの例にはadaboostがあります。これにより、より弱い結果が多くの反復でブーストまたは再重み付けされ、学習者は間違った領域に集中し、正しい観測に集中できなくなります。

対照的に、ランダムフォレストは、データセットから多数のツリーをランダムに選択し(したがって、相関を解除して)、平均化することにより、個々のツリーの分散を減らすことを目的としたアンサンブルバギングまたは平均化方法です。


7

これはバギングの拡張です。手順は次のとおりです。データのブートストラップサンプルを取得し、これを使用して分類または回帰ツリー(CART)を成長させます。これは事前に定義された回数行われ、予測は個々のツリー予測の集計であり、多数決(分類)または平均(回帰)になります。このアプローチはバギングと呼ばれます(Breiman 1994)。ため、さらに候補変数それぞれの分割それぞれツリーは、利用可能なすべての独立変数のランダムサンプルから取得されます。これにより、さらにばらつきが生じ、ツリーがより多様になります。これはランダム部分空間法と呼ばれます(Ho、1998)。前述のように、これにより非常に多様なツリーが生成され、相互に高度に独立したツリーに変換されます。ジェンセンの不等式のため、これらのツリー予測のエラーの平均は、そのデータセットから成長した平均ツリーのエラー以下になることがわかります。別の見方は、平均二乗誤差を見て、バイアス部分と分散部分でどのように分解できるかに注意することです(これは、バイアス分散トレードオフと呼ばれる教師あり学習の問題に関連しています))。ランダムフォレストは、直交ツリーの予測の平均化により分散を削減することにより、精度を向上させます。ツリーのバイアスを継承していることに注意してください。これは非常に議論されている問題です。たとえば、この質問を確認してください。


5

特に、アンサンブルメソッドとブーストを混同していると思いますが、アンサンブルメソッドには多くの方法があります。ブースティングの「定義」は完全な定義ではなく、パットの答えで詳しく説明されています。アンサンブルメソッドの詳細を知りたい場合は、次の本をお勧めします。

ジョン・エルダー&ジョヴァンニ・セニ。データマイニングにおけるアンサンブルメソッド:予測の組み合わせによる精度の向上。(2010)


3

ランダムフォレストはバギング手法であり、ブースティング手法ではありません。名前が示すようにブーストでは、一方が他方から学習し、それが学習を後押しします。

ランダムフォレストのツリーは並行して実行されます。木を構築している間、これらの木の間には相互作用はありません。すべてのツリーが構築されると、問題が分類問題か回帰問題かによって、すべてのツリーの予測全体で投票または平均が取られます。

GBM-Gradient Boostingマシンのようなブースティングアルゴリズムのツリーは、順番にトレーニングされます。

最初のツリーが訓練され、訓練データでいくつかの予測を行ったとしましょう。これらの予測のすべてが正しいとは限りません。合計100の予測のうち、最初のツリーが10回の観測に対してミスをしたとしましょう。これで、2番目のツリーを構築するときに、これらの10個の観測値の重みが大きくなります。2番目のツリーの学習が最初のツリーの学習から後押しされたことに注意してください。したがって、ブースティングという用語。このようにして、各ツリーは、過去のツリーからの学習に基づいて順次構築されます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.