SKlearn のパイプライン モデルを使用して、ランダム フォレスト分類器に送信される結合された機能を抽出および構築していますが、一部の機能エクストラクタは後で削除または追加できます。次の構造を検討してください。
model = Pipeline([
('feature_extract',
FeatureUnion([
('feature A', extracorA()),
('feature B', ExtractorB()),
('feature C', FeatureUnion([
('c1', C1Extractor())
('c2', C2Extractor())]))
)]),
('random_forest', RandomForestRegressor(...)))])
を調べて、ランダム フォレストの予測を改善したいと思います。
feature_importances_
RandomForstRegressor のプロパティ
次を使用してリストを取得できました。
model._final_estimator.feature_importances_
そして今、feature_importances_ インデックスの列番号をパイプラインの機能名/ステップに動的にリンクしたいと思います。
フィーチャー ユニオン内でフィーチャー名を保存/取得するための推奨される方法はありますか? この問題にどのように対処しますか?