糖尿病分類器を構築する
Pima Indians の糖尿病データセットを使って、ある人が糖尿病かどうかをロジスティック回帰で予測します。このデータセットには 8 つの特徴量と 1 つの目的変数があります。データは学習用とテスト用に分割済みで、X_train、y_train、X_test、y_test として読み込まれています。
StandardScaler() のインスタンスは scaler、LogisticRegression() のインスタンスは lr としてあらかじめ用意されています。
この演習はコースの一部です
Pythonで学ぶ次元削減
演習の手順
- トレーニング特徴量に対してスケーラーを fit し、同時に transform まで実行します。
- スケーリングしたトレーニングデータでロジスティック回帰モデルを学習します。
- テスト特徴量をスケーリングします。
- スケーリングしたテストセットで糖尿病の有無を予測します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Fit the scaler on the training features and transform these in one go
X_train_std = scaler.____(____)
# Fit the logistic regression model on the scaled training data
lr.____(____, ____)
# Scale the test features
X_test_std = scaler.____(____)
# Predict diabetes presence on the scaled test set
y_pred = lr.____(____)
# Prints accuracy metrics and feature coefficients
print(f"{accuracy_score(y_test, y_pred):.1%} accuracy on test set.")
print(dict(zip(X.columns, abs(lr.coef_[0]).round(2))))