XGBoost
とそのsklearn
ラッパーを使用しています。
印刷しようとfeature_importances_
すると、次のエラーが表示されます。
ValueError: 基数 10 の int() の無効なリテラル
コードを掘り下げると、feature_importances_
プロパティが元のブースターから(空の params で)get_fscore
メソッドを呼び出していることがわかりました。このメソッドは、次のような形の辞書を明示的に返します。
{'feat_name1':5,'feat_name2':8,...,'feat_nameN':1}
そのため、キーに変換をfeature_importances_
適用することを考慮すると、エラー メッセージの根拠が明らかになります。int
keys = [int(k.replace('f', '')) for k in fs.keys()] #this is the conflictive line of code
したがって、ここでの私の質問は 2 つあります。
1-これはバグなので、報告する必要がありますか (または、修正してプルをリクエストする必要がありますか)?
2-get_fscore
関数とそのfmap
パラメーターに欠けているものはありますか?