1

決定切り株弱分類器をブーストする必要があります。したがって、反復ごとに、特定の重みに基づいて弱分類器をトレーニングする必要があります。次に、反復ごとに重みを更新します。これまでのところ、私は理解しています。しかし、私にとって不明確な部分は、「重みに基づいて決定切り株弱分類子を訓練する」です。彼らはどのようにそれを正確に行うのですか?誰でも簡単に説明できますか?

トレーニング データセット {(x1,y1),(x2,y2).....,(xm,ym)} があるとします。X は特徴 (たとえば 10)、y はバイナリ クラスです。

最初の重みは w(x) = 1/m

したがって、決定切り株の弱学習器は、重みに基づいてバイナリである必要がある h(x) を与える必要があります。

アルゴリズムはどのように機能しますか? 意思決定の切り株にはどのような特徴がありますか?

4

1 に答える 1

4

ブースティング タスクでは、アルゴリズムの反復ごとに最適な分類子を選択する必要があります。そのためには、重みに関してデータセットの切り株の平均誤差を最小限に抑える必要があるため、分類子の誤差測定をカウントする際にオブジェクトの重みを考慮する必要があります。したがって、大きな重みを持つオブジェクトの誤ったラベル付けに対する分類子のペナルティは、小さな重みを持つオブジェクトの誤ったラベル付けに対するペナルティよりも大きくなります。

R 言語での決定木でのブースティングの私の実装を見ることができます。決定切り株の場合は、132 行目のツリーの深さを 1 に変更するだけでうまく機能し、パラメーター T を変更するさまざまな数の分類器で精度をテストできます。

より深い理解が必要な場合: 深さ 1 のツリーと同じ方法で切り株を学習できます。重み付きデータセットでツリーを学習するには、重み付きメトリックに従って、選択した特徴によってデータセットを 2 つの部分に最適な方法で分離する特徴と値を選択する必要があります。エントロピーと情報利得の例。使用可能なすべての機能を for ループで反復処理し、ネストされたループで選択した機能を並べ替え、選択した機能とセパレーターの値に従って、データセットを 2 つのセット S にすべての可能な分離を試してから、ウィキペディアに書かれているようにすべてのセットのエントロピーを計算します。 、ただし、p(x) を次のように計算する代わりに

セット S の要素数に対するクラス x の要素数の比率

セット内のクラス x を持つオブジェクトのすべての重みを合計し、この数をこのセット内のオブジェクトのすべての重みの合計で割る必要があります。

p(x)

ここで、W- セット S 内のオブジェクトのすべての重み、およびW_x- セット S 内のクラス xのオブジェクトのすべての重み。

次に、情報利得を計算できますが、やはり、ウィキペディアのバリアント (数値の比率) の代わりに加重比率 p(t) を使用する必要があります。

p(t)

ここでW_S- 初期の (区切りで分割されていない) セットからのオブジェクトの重みのセット。およびW_t- セット t からのオブジェクトの重みのセット (S を区切り値で区切ることにより、2 セットの t を取得します)

最大の利益をもたらす機能と区切り値を選択します。これですべてです。重み付けされたデータに対する新しい切り株分類子を学習したばかりで、作業の準備が整いました。

計算の例を提供するためにいくつかの写真を作成しました。ここではセパレータを 1 つだけ選択しました。考えられるすべてのセパレータのゲインを確認する必要があります。 例

于 2015-07-30T20:11:29.983 に答える