プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

木の剪定へのアプローチは何ですか?


剪定は、決定木のサイズを小さくする手順です。ツリーのサイズを定義するか、ほとんど電力をサポートしないツリーの領域を削除することにより、過剰適合のリスクを減らすことができます。剪定は、ノイズまたは外れ値のためにトレーニング情報の異常に続くブランチをトリミングすることによってサポートし、ツリーの一般化効率を高める方法で元のツリーをサポートします。

さまざまな方法で、一般に統計的尺度を使用して信頼性の低い部門を削除します。その結果、分類が迅速になり、独立したテストデータを適切に分類するツリーの機能が向上することがよくあります。

木の剪定には次の2つのアプローチがあります-

剪定前のアプローチ

剪定前のアプローチでは、ツリーは、その構築を早期に行うことによって「剪定」されます(たとえば、提供されたノードでトレーニングサンプルのサブセットをさらに分割または分割しないことを決定することによって)。停止すると、ノードはリーフに変わります。葉は、サブセットサンプル間の最も一般的なクラス、またはそれらのサンプルの確率分布に影響を与える可能性があります。

ツリーを作成する場合、統計的有意性、x2、情報ゲインなどの測定値を使用して、分割の寛大さを作成できます。ノードでサンプルを分割すると、事前に指定されたしきい値を下回る分割が発生する可能性がある場合、指定されたサブセットの分割は停止されます。適切なしきい値の選択には問題があります。しきい値を高くするとツリーが過度に単純化される可能性があり、しきい値を低くすると単純化がほとんど行われない可能性があります。

剪定後のアプローチ

剪定後のアプローチは、「完全に成長した」木から枝を取り除きます。ツリーノードは、そのブランチを削除することによって剪定されます。価格の複雑さのプルーニングアルゴリズムは、プルーニング後のアプローチの例です。剪定されたノードは葉に変わり、前のブランチ間の最も一般的なクラスによってラベル付けされます。

ツリー内の非リーフノードごとに、アルゴリズムは、そのノードのサブツリーが短縮された場合に表示される可能性のある予想エラー率を計算します。次に、ノードが剪定されなかった場合に表示される予想エラー率は、各ブランチに沿った観測の次元に従って重み付けによって接続された、各ブランチのエラー率を使用して計算されます。ノードをプルーニングすると予想されるエラー率が高くなる場合、サブツリーは保持されます。したがって、剪定されます。

剪定が進む木のセットを作成した後、独立したテストセットで各木の効率を推定できます。予想されるエラーコストを削減する決定木が推奨されます。


  1. Cトークンとは何ですか?

    Cプログラムは命令のコレクションであり、各命令は個々のユニットのコレクションです。 Cプログラムのすべての小さな個々のユニットは一般にトークンと呼ばれ、Cプログラムのすべての命令はトークンのコレクションです。 トークンはCプログラムを構築するために使用され、Cプログラムの基本的な構成要素とも言われています。 Cプログラムでは、トークンには次のものが含まれます- キーワード 識別子 オペレーター 特別な記号 定数 文字列 データ値 Cプログラムでは、これらすべてのキーワード、識別子、演算子、特殊記号、定数、文字列、およびデータ値の集合をトークンと呼びます。 例 以下は、大文字のアル

  2. C#のコメントは何ですか?

    コメントはコードの説明に使用されます。コンパイラはコメントエントリを無視します。 C#プログラムの複数行コメントは、以下に示すように/ *で始まり、文字*/で終わります。 複数行のコメント /* The following is a mult-line comment In C# /* /*...*/はコンパイラによって無視され、プログラムにコメントを追加するために配置されます。 1行のコメント // variable int a = 10; 以下は、単一行コメントと複数行コメントを追加する方法を示すサンプルC#プログラムです- 例 using System; namespace Dem