問題タブ [boosting]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - sklearn GBDT の決定プロセス全体を取得するには?
sklearn.ensemble.GradientBoostingClassifier を使用して GBDT を構築すると、ツリーのセットができます。1 本の木の構造を把握できます。しかし、一連のツリーの場合、どの方法でツリーにアクセスしたかを知るにはどうすればよいでしょうか?
たとえば、次のコードを見てください。
次に、4 本の木があります。つまり、
そして、私は木でこれを行うことができます。
しかし、どの順番で、clf.estimators_[0,0].tree_ .. clf.estimators_[3,0].tree_ にアクセスしますか? 結果はどのようにまとめられますか?
マニュアルでは、「各サンプルが各試行の下で終了するリーフ インデックスを取得するための apply メソッドを公開するようになりました」と記載されています。
次の配列を取得しました。
しかし、それを読む方法は?
アップデート: - - -
ここからいくつかのソースコードを読みました: https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/ensemble/gradient_boosting.py#L1247 インデックスは単なるインデックスですが、エンコードされているようです非葉ノードと。これは、葉が 8 枚しかない理由を説明していますが、インシドは 8 枚よりも大きくなる可能性があります。
別の更新: ------
コードhereおよびhereを読んだ後、GBDT の decision_function が返さinit_value+sum_{for each leaf}(learning_rate*leaf_value)
れ、予測確率が decision_function の単純な関数であることが最終的にわかりました。
r - Adabag ブースティング機能のエラー
こんにちは、adabag パッケージのブースティング機能を使用しようとしていますが、行列 (?) の行数が等しくなければならないというメッセージが表示されます。このデータはオリジナルではありませんが、同じエラーが発生するようです。
私たちを手伝ってくれますか?
ありがとうございました。