scikit-learnは、Pythonで機械学習モデルを構築するための強力なライブラリです。ロジスティック回帰モデルを使用してクラス分類を行う場合、予測値だけでなく、クラスの確率を取得することも重要です。以下に、scikit-learnを使用してロジスティック回帰の確率を取得する方法を示します。
まず、scikit-learnのLogisticRegression
クラスをインポートします。
from sklearn.linear_model import LogisticRegression
次に、データを準備し、モデルを訓練します。ここでは、簡単な例としてIrisデータセットを使用します。
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
# データをロードする
iris = load_iris()
X = iris.data
y = iris.target
# データを訓練用とテスト用に分割する
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# モデルを訓練する
model = LogisticRegression()
model.fit(X_train, y_train)
モデルを訓練した後、predict_proba
メソッドを使用して、各クラスに属する確率を取得できます。
# テストデータのクラス確率を予測する
probabilities = model.predict_proba(X_test)
# 最初の10個のサンプルのクラス確率を出力する
print(probabilities[:10])
上記のコードでは、predict_proba
メソッドにテストデータを与えることで、各サンプルに対するクラス1およびクラス2の確率を取得しています。出力は2次元配列であり、各行がサンプルに対応し、各列がクラスに対応します。
以上が、scikit-learnを使用してロジスティック回帰の確率を取得する方法です。この方法を使用することで、クラス分類だけでなく、クラスの確率情報も利用することができます。