-1

私は機械学習を学び、udacityを通ってMLコースに入ります。当然のことながら、私は意思決定ツリーとランダムなフォレスト分類子に関するいくつかの疑問を持っています。意思決定ツリー一意性sklearn

私の最初の疑問は、それがデシジョンツリーのユニークなのでしょうか?それは、各スプリットで情報ゲインを最大化するのでユニークでなければならないと考えています。 Decision treeがユニークなので、random_stateは必要ありません。毎回再現可能です。

ランダムフォレストアルゴリズムを使っている間に、私はそれが個々のツリーから各クラスの確率を平均していることを読んだ。しかし、決定木はクラスごとに確率を予測していない。

私が間違っている場合は、私の疑問を明確にしてください。良い答えを得ることを願っています。

答えて

0

でもコードをチェックアウトせずに、あなたは、ドキュメントでthis noteが表示されます。

機能は常にランダムに各分割で置換されています。したがって、同じトレーニングデータおよびmax_features = n_featuresであっても、ベストスプリットの検索中に列挙された複数のスプリットで基準の改善が同一である場合、最良のスプリットが異なる場合があります。フィッティング中に確定的挙動を得るためには、random_stateを固定しなければならない。 splitter='best'については

、これはhereが起こっている:

# Draw a feature at random 
f_j = rand_int(n_drawn_constants, f_i - n_found_constants, 
       random_state) 

そして、あなたの他の質問には、thisをお読みください。

...

ちょうどそのように、ツリーを構築葉には単一のクラス推定だけでなく確率推定も含まれています。これは、任意の標準的な意思決定アルゴリズムを実行し、それを介して一連のデータを実行し、予測されたラベルが各リーフで正しい​​時間の部分をカウントすることによって簡単に行うことができます。これはsklearnのことです。これらは「確率推定木」と呼ばれることがありますが、完全な確率の見積もりは得られませんが、有用となります。時々見事なアプローチで時々彼らを調査する仕事がたくさんありましたが、Sklearnのシンプルなものは森林での使用に適しています。

...

関連する問題