5

デシジョン ツリー アルゴリズムを使用していて、データ セットが数値で構成されている場合。

プログラムによって提供された結果が、データセットに存在しない値でノードを分割することがわかりました

例:
分類結果

  1. attrib2 <= 3.761791861252009 : グループ A
  2. attrib2 > 3.761791861252009 : グループ B

私のデータセットには、3.76179 のような attrib2 の値はありません。なぜそうなのか?

4

3 に答える 3

16

ほとんどの決定木構築アルゴリズム (J48、C4.5、CART、ID3) は次のように機能します。

  • 分割できる属性を並べ替えます。
  • 関連するクラス ラベルが変化するすべての「ブレークポイント」を見つけます。
  • ラベルが変わる分割点を考えてみましょう。純度測定を最小化するものを選択します。ただし、情報の取得は順序のみに依存し、値には依存しません。

最適な分割点を見つけたら、アルゴリズムはそれをどのように表現するかについて意見が一致しません。例: -4 (はい)、-3 (はい)、-3 (はい)、-2 (いいえ)、-1 (いいえ) があるとします。-3 から -2 の間の値はすべて同じ純度になります。一部のアルゴリズム (C4.5) では、val <= -3 となります。Weka のような他のものは、平均を選択して val <= -2.5 を与えます。

于 2011-06-14T12:11:09.093 に答える
8

属性を選択するにはいくつかの方法があります。また、すべてがデータセットの値を選択するわけではありません。

一般的なのは (少し単純化されていますが) 平均を取ることです。3.76179... がデータセットのすべての attrib2 の平均である可能性があります。

たとえば、データ セットが 1 次元で、値で構成されている場合、データ セットに含まれていなくても-10, -9, .. -2, -1, 1, 2, ..9, 10、適切な分割値は になり0ます。

別の可能性として、特にランダム フォレスト (複数の決定木) を扱っている場合は、中央値を中心とした確率分布で、分割値がランダムに選択されることがあります。一部のアルゴリズムは、平均/中央値を中心とし、データセットの標準偏差に等しい偏差を持つガウスに従って分割することを決定します。

于 2011-06-09T08:56:02.820 に答える
1

まず、数値を離散化する方法を確認できます。これらのアルゴリズムは、数値範囲をいくつかの区間に分割し、それぞれが大きなインフォゲインを持っています。たとえば、各スプリットの後にステップ 0.1 を使用してインフォゲインを確認し、最適な位置を選択してから、それでもインターバルを続けます。

于 2011-06-10T07:21:49.623 に答える