8

私はエントロピーを計算するための公式を知っています:

H(Y) = - ∑ (p(yj) * log2(p(yj)))

つまり、属性を選択し、値ごとにターゲット属性値を確認します...したがって、p(yj)は、ノードNのパターンの割合がカテゴリyjにあることを示します。1つはターゲット値でtrue、もう1つはfalseです。

しかし、ターゲット属性が価格、つまり範囲であるデータセットがあります。この種のデータセットのエントロピーを計算する方法は?

(参照:http ://decisiontrees.net/decision-trees-tutorial/tutorial-5-exercise-2/ )

4

2 に答える 2

7

最初に、データセットを数値でいくつかのバケットに並べ替えるなど、何らかの方法でデータセットを離散化する必要があります。離散化には多くの方法があり、監視されている方法(つまり、ターゲット関数の値を考慮している方法)とそうでない方法があります。このホワイトペーパーでは、かなり一般的な用語で使用されるさまざまな手法の概要を説明します。より具体的には、Wekaのような機械学習ライブラリには多くの離散化アルゴリズムがあります。

連続分布のエントロピーは微分エントロピーと呼ばれ、データが何らかの方法で分布していると仮定し(たとえば、正規分布)、次に通常の方法で下層分布を推定し、これを使用してエントロピー値を計算することによって推定することもできます。

于 2013-01-16T17:03:51.067 に答える
1

Vic Smithに同意しますが、一般的に離散化は良い方法です。私の経験では、一見連続しているように見えるデータのほとんどは実際には「ゴツゴツ」であり、失われることはほとんどありません。

ただし、他の理由で離散化が望ましくない場合は、連続分布に対してもエントロピーが定義されます(http://en.wikipedia.org/wiki/Normal_distributionなどのお気に入りの分布に関するウィキペディアを参照してください)。

1つのアプローチは、正規分布、対数正規分布などの分布の形式を想定し、推定されたパラメーターからエントロピーを計算することです。ボルツマンエントロピー(連続)とシャノンエントロピー(離散)のスケールが同じスケールではないと思うので、それらを混合しないでください。

于 2013-01-16T17:12:25.343 に答える