ロジスティック回帰のパラメータを抽出する
ここでは、ロジスティック回帰モデルの重要なパラメータを抽出する練習を行います。ロジスティック回帰には他にもいくつかのパラメータがありますが、ここでは扱いません。詳細は scikit-learn.org の LogisticRegression() モジュールの「Attributes」を参照してください。
このパラメータは、各変数が目的変数に与える影響の向きと大きさを理解するうえで重要です。
この演習では、係数パラメータ(coef_ 属性)を取り出し、元の列名と組み合わせて、どの変数が目的変数に最も強い正の影響を与えているかを確認します。
次のオブジェクトが用意されています。
log_reg_clfという名前のロジスティック回帰モデルオブジェクトX_trainDataFrame
sklearn と pandas はすでにインポート済みです。
この演習はコースの一部です
Pythonでのハイパーパラメータチューニング
演習の手順
- 学習用DataFrameで使われた元の列名のリストを作成します。
- ロジスティック回帰推定器の係数を抽出します。
- 係数と変数名のDataFrameを作成し、表示します。
- 係数の大きさに基づいて、正の影響が大きい上位3つの変数名を出力します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Create a list of original variable names from the training DataFrame
original_variables = ____
# Extract the coefficients of the logistic regression estimator
model_coefficients = ____.____[____]
# Create a dataframe of the variables and coefficients & print it out
coefficient_df = pd.DataFrame({"Variable" : ____, "Coefficient": ____})
print(coefficient_df)
# Print out the top 3 positive variables
top_three_df = coefficient_df.sort_values(by=____, axis=0, ascending=____)[0:____]
print(top_three_df)