連続変数を予測するとき、決定木分割はどのように実装する必要がありますか?


15

私は実際にランダムフォレストの実装を書いていますが、質問は(RFに依存しない)決定木に固有のものだと思います。

したがって、コンテキストは、意思決定ツリーにノードを作成しており、予測変数とターゲット変数の両方が連続しているということです。ノードには、データを2つのセットに分割するための分割しきい値があり、各セットの平均ターゲット値に基づいて各サブセットの新しい予測を作成します。これは正しいアプローチですか?

私が尋ねる理由は、バイナリ変数を予測するとき、典型的な(正しい?)アプローチは、各サブセットのデータ行の平均を取らずにデータを0と1のサブセットに分割することだと思うからです。後続の分割はよりきめの細かいサブセットに分割され、各分割結果で平均を取得します(決定ツリーの下で)後続の分割はバイナリ変数ではなく連続変数に作用します(元の値ではなく残留誤差値に作用しているため)ターゲット)。

副次的な質問:2つのアプローチ(バイナリと連続)の違いは重要ですか?または、完全な決定木に対して実際に同じ結果が得られますか?


1
連続変数で分割すると、結果の「モデル」がデータに適切に適合しないようになります。1つの連続Xと1つの連続Yがある場合、レスノンパラメトリックスムーザーの使用を検討してください。
フランクハレル

私が現在取り組んでいる問題には、多くの予測変数(連続変数とバイナリ変数の混合)と単一のターゲット変数があります。したがって、RFは適切なアプローチであると考えています。
redcalx

2
そうそう。しかし、ランダムフォレストはツリーの混合である(決定ツリーではない)ため、複数の分割を行い、実際には収縮を使用して、連続的な関係を近似します。ですから、私が理解していれば、元の質問が当てはまるとは思いません。
フランクハレル

連続的なケースの説明は正しい(つまり、標準的な方法)と言いたくなりますが、バイナリ変数のケースの説明はランダムフォレスト(または決定)の私の理解とまったく一致しません木)が動作するので、私たちの一人が混乱しているのではないかと心配しています。
ジョラン

@joran。予測を0または1に強制すると、予測を微調整して(0から1の間)、エラー(平均予測誤差の二乗など)を下げることができなくなります。そのため、このアプローチは劣っていると思います。私はそれを試してみましたが、意思決定ツリーを構築しようとするほとんどの試みは、エラーを改善する単一のスプリットを見つけることさえできません。
-redcalx

回答:


10

木の潜在的な問題の1つは、尾にうまく収まらない傾向があることです。トレーニングセットの低範囲をキャプチャするターミナルノードを考えます。これらのトレーニングセットポイントの平均を使用して予測します。これは常に結果を過小予測します(平均であるため)。

モデルツリーを試すこともできます[1]。これらは、末端ノードの線形モデルに適合し、(私は思う)回帰木よりも良い仕事をします。さらに良いことに、異なるアプローチを組み合わせたCubistと呼ばれるより進化したバージョンを使用してください(以下の[1]と[2])。

これらのモデルは、連続予測子と離散予測子を別々に処理します。カテゴリ変数に対して多方向の分割を行うことができます。分割基準は、CARTツリーに非常に似ています。

モデルツリーはRのRWekaパッケージ(「M5P」と呼ばれる)にあり、CubistはCubistパッケージにあります。もちろん、Wekaも使用できます。CubistにはRuleQuest WebサイトでCバージョンがあります。

[1] Quinlan、J.(1992)。継続的なクラスで学習します。人工知能に関する第5回オーストラリア合同会議の議事録、343–348。

[2] Quinlan、J.(1993)。インスタンスベースの学習とモデルベースの学習を組み合わせます。機械学習に関する第10回国際会議の議事録、236–243。


1
テールへの不適合を最小限に抑えるために、より深いツリーを用意することはできませんか?
ジェイス14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.