2016-07-08 12 views
0

私はデシジョンツリーを使ってマキンドデータマイニングモデルです。私がMALEやFEMALEのようなバイナリ属性を持っていれば、分割時にGenderノードから2つのブランチがあることは分かっています。しかし、0から1までの浮動小数点数の連続属性があるとどうでしょうか?それをLOW(0 - 0.5)とHIGH(0.5 - 1)のような離散値にマップしますか?それとも、他のやり方がありますか?デシジョンツリー連続アトリビュート

答えて

1

なぜあなたはそれを自分で分割する必要がありますか?私は正しく理解しているか分からない。 しかし、意志決定木の目的は、あなたが手で行っているようです。特定の機能Fについては

値は(a、b)は(それができる]-∞、+∞[)、意思決定の範囲内にある、(のは、連続属性の場合を見てみましょう)ツリーはが最高 *値Vの2つの別々の葉に分割されています。したがって、データは(V、B)

最高 * 手段内ならば属性F内であれば(、V)、第二葉に最初の葉に属しています

彼らは値Vを見つけるために複数の方法がありますが、一般的に言えば、各葉の純度(文学用語は)データが内部何とか均一であることを意味し、最大となるようなものです。 Wikiは、2つの子葉内の各親葉を分割するために一般的に使用されるメトリックを提供します。

+0

分裂を行う属性を選択する際に、情報ゲイン(エントロピー低減)がメトリクスであることはわかっていますが、単一属性のカットポイントを選択するときはわかりませんでした。私はあなたが言っていることを理解していますが、区間が連続しているときにどのアルゴリズムがカットポイントに最適な候補であるかを知るには、いくつかの値を選択してから、例えば、0,0.2,0.4,0.6,0.8、右? – Aleksa

+0

アログ自体はどういうわけか、ユーザーが探したい候補カットポイントを "教え"なければならない... – Aleksa

+0

いいえ、その点。彼は最小化関数に従って_best_カット点をとる。たとえば、デシジョンツリーのスケルトン実装をチェックする必要があります。パラメータとして候補カットポイントを必要としません。 –

1

上記のように、最適な属性を見つけることについて心配する必要はありません。しかし、属性として浮動小数点の負荷がある場合、各値の計算時間は高価です。その場合、決定木の離散化アルゴリズムを見てください。

したがって、バイナリ離散化手法を適用する場合、連続属性は離散バイナリ属性に変換されます。クラス間の完全なしきい値を見つけるために異なるアプローチを使用する、離散化手法がたくさんあります(あなたのケースでは0.5)。