線形回帰、ディシジョンツリー、またはランダムフォレスト回帰を選択するのはいつですか?[閉まっている]


10

私はプロジェクトに取り組んでおり、どのアルゴリズムを選択するかを決定するのが困難ですregression。私は1つを選ぶ必要がありますどのような条件の下で知りたいlinear regressionか、Decision Tree regressionまたはRandom Forest regression?上記のツリーの中で特定のアルゴリズムに移行することを決定するデータの特定の特性はありますか?決定を下すためにデータセットを調べる必要がある特性は何ですか?そして、もう一つが選択になるだろういくつかの理由があるdecision treerandom forest、アルゴリズム同じ正しさをすることによって達成することができたとしてもはlinear regression


これは広すぎます-データの説明から始めて、制約は何ですか?
Sean Owen

回答:


10

いくつかの例を使用して、直感的に説明します。

線形回帰とディシジョンツリーはいつ使用しますか?

線形回帰は線形モデルです。つまり、データが線形の形状をしている場合にうまく機能します。ただし、データの形状が非線形の場合、線形モデルは非線形の特徴をキャプチャできません。

したがって、この場合は、決定木を使用できます。これは、質問に応じてスペースを小さなサブスペースに分割することで、データの非線形性をキャプチャするのに適しています。

ランダムフォレストとディシジョンツリーをいつ使用しますか?

ここでのQuoraの答えは、それらとアプリケーションの違いを説明する上で、私よりも優れていると思います。それを引用させてください:

あなたが非常に優柔不断だとすると、映画を見たいときはいつでも、友人ウィローに、あなたがそれを気に入ってくれると思っているかどうか尋ねます。答えるために、ウィローは最初にあなたが好きな映画を見つける必要があるので、あなたは彼女にたくさんの映画を与えて、あなたがそれぞれが好きかどうかを彼女に伝えます(すなわち、あなたは彼女にラベル付けされたトレーニングセットを与えます)。次に、映画Xが好きかどうかを彼女に尋ねると、彼女はIMDBで20問のようなゲームをし、「Xはロマンチックな映画ですか?」、「Xにはジョニー・デップがスターですか?」などの質問をします。 、 等々。彼女はまず、より有益な質問をし(つまり、各質問の情報を最大限に活用します)、最後に「はい/いいえ」の答えを出します。

したがって、ウィローはあなたの映画の好みの決定木です。

しかし、ウィローは人間に過ぎないので、常にあなたの好みを非常にうまく一般化しているわけではありません(つまり、彼女はオーバーフィットしています)。より正確な推奨事項を取得するには、たくさんの友達に聞いて、彼らのほとんどがあなたが気に入ってくれると彼らが言った場合は映画Xを視聴したいと思います。つまり、Willowだけに質問するのではなく、Woody、Apple、およびCartmanにも質問して、彼らが映画が好きかどうか(つまり、アンサンブル分類子(この場合は森)を構築するかどうか)に投票したいとします。

これで、各友人に同じことをさせて同じ答えを与えたくないので、最初に少しずつ異なるデータをそれぞれに与えます。結局のところ、自分で自分の好みを完全に確信しているわけではありません。タイタニックが大好きだとウィローに言ったのですが、誕生日だったのでその日だけ幸せだったかもしれません。彼らの推薦をすることでタイタニックが好きだった。あるいは、シンデレラが大好きだと彼女に言ったかもしれませんが、実際にはは本当にそれを愛したので、あなたの友人の何人かはシンデレラにもっと重みを与えるべきです。そのため、Willowと同じデータを友達に提供する代わりに、少し混乱したバージョンを友達に提供します。好き/嫌いの決定は変更せず、映画を少し好き/嫌いだと言うだけです(友達のそれぞれに、元のトレーニングデータのブートストラップバージョンを与えます)。たとえば、ブラックスワンとハリーポッターが好きでアバターが嫌いだとウィローに言ったのに対し、ウッディはブラックスワンが2回見たのが好きだし、アバターが嫌いだと言って、ハリーポッターについてはまったく触れていません。

このアンサンブルを使用することにより、友達のそれぞれが多少特異な推奨事項を提供する一方で、Willowはあなたよりも吸血鬼映画が好きだと思っており、WoodyはPixar映画が好きだと思っており、Cartmanはすべてを嫌いだと思っています)、エラーはキャンセルされます大多数で。したがって、あなたの友達はあなたの映画の好みのバギングされた(ブートストラップ集約)フォレストを形成します。

ただし、データにはまだ1つの問題があります。あなたはタイタニックとインセプションの両方を愛していましたが、それはあなたがレオナルド・ディカプリオを主演する映画が好きだからではありませんでした。多分あなたは他の理由で両方の映画が好きだった。したがって、レオが映画に出演しているかどうかに基づいて友達にすべての推奨事項を提示してほしくない。したがって、各友達がIMDBに質問をするとき、可能な質問のランダムなサブセットのみが許可されます(つまり、意思決定ツリーを構築しているとき、各ノードで、ランダムに選択するなどして、分割する属性を選択する際にランダム性を使用します属性、またはランダムなサブセットから属性を選択する)。つまり、友達がいつでも映画に出演するかどうかを尋ねることはできません。したがって、以前はデータレベルでランダム性を注入したのに対し、

これで、友達がランダムフォレストを形成します。


7
when the data has a non-linear shape, then a linear model cannot capture the non-linear featuresこれはよくある誤解です。まず、単純な線形回帰は、高調波系列stats.stackexchange.com/questions/60500/…さえもモデル化できます。次に、機能の相互作用を導入できます。もちろん、線形項に非線形関数が導入された一般化線形モデルがあります(たとえば、ロジスティック回帰)。
Ricardo Cruz

2

私の知る限り、どのデータセットに対してどのアルゴリズムが機能するかを示すルールはありません。対象のデータセットと変数が、各アルゴリズムを実行する前提条件を満たしていることを確認して、試してみてください。たとえば、線形回帰には、残差の正規性、等分散性(応答変数の変動性は説明変数のすべてのレベルで同じです)などのいくつかの前提条件があります。これらの変数を確認して、アルゴリズムを試してみてください。

ポイントアンドクリックソフトウェアを使用して、コードやパラメーターの設定に関与することなく結果を確認できます。Rユーザーの場合、ガラガラパッケージはこの段階で非常に便利なツールになります。ポイントアンドクリックモードで作業を行うと、その背後にあるコードにアクセスできます。


私が読んだ唯一の経験則は、デシジョンツリーは離散モデルであるため、回帰はランダムフォレストよりもノイズをよりよく処理するということです。
Ricardo Cruz
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.