2017-12-13 8 views
1

バギングは各ツリーのトレーニングセットをランダムに再サンプリングし、ランダムフォレストは各ツリーの機能のサブセットをランダムに選択します。ランダムフォレストは、ツリーごとにランダムにデータをサンプリングしますか?

ランダムなフォレストでもトレーニングセットをリサンプリングしたり、ランダムなサブセットのフィーチャを取得したりしていますか?それは事実上二重ランダムですか?

答えて

1

あなたがしたい場合、答えははい、ほとんどの時間です。

ランダムフォレストはデータをブートストラップし、ランダムに機能を選択します。 ブートストラップとは、元のデータセットと同じサイズのデータ​​セットをサンプリングして置き換えることを意味します。したがって、N個のデータポイントがある場合、各ツリーはN個のデータポイントを使用しますが、一部は複製されます(置き換えて1つずつサンプリングするので)。

しかし、実際にはあなたがしていることはあなた次第です。 sklearnの実装では、デフォルトはブートストラップですが、bootstarp = Falseにフラグを立てることができます。その後、ランダムな機能の選択のみが可能です。 こちらのドキュメントをご覧ください: http://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html

関連する問題