[python] scikit-learn을 활용한 로지스틱 회귀

로지스틱 회귀는 분류 문제를 해결하기 위한 통계적인 방법 중 하나로, 주로 이진 분류에 사용됩니다. scikit-learn은 Python에서 기계 학습을 위한 라이브러리로, 로지스틱 회귀를 쉽게 구현할 수 있도록 도와줍니다. 이번 포스트에서는 scikit-learn을 사용하여 로지스틱 회귀를 구현하는 방법에 대해 알아보겠습니다.

필요한 패키지 설치

먼저, scikit-learn을 설치해야 합니다. 아래의 명령을 사용하여 설치할 수 있습니다.

pip install scikit-learn

데이터 준비

로지스틱 회귀 모델을 학습시키기 위해 적절한 데이터셋을 준비해야 합니다. scikit-learn에서는 load_iris 또는 load_breast_cancer 함수를 사용하여 테스트에 활용할 수 있는 분류 문제를 가진 데이터셋을 불러올 수 있습니다.

from sklearn.datasets import load_iris

# 데이터셋 로드
iris = load_iris()

# 데이터 확인
X = iris.data
y = iris.target

print(X.shape)  # 데이터의 특성 개수와 샘플 개수 출력
print(y.shape)  # 클래스 라벨의 개수 출력

모델 학습

데이터셋을 준비했다면, 이제 로지스틱 회귀 모델을 학습시킬 차례입니다. scikit-learn의 LogisticRegression 클래스를 사용하여 모델을 초기화하고 데이터를 학습시킬 수 있습니다.

from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

# 학습 및 테스트 데이터 분할
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)

# 테스트 데이터로 예측
y_pred = model.predict(X_test)

# 정확도 평가
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)

결과 분석

로지스틱 회귀를 통해 학습한 모델은 예측 결과를 출력하여 정확도를 확인할 수 있습니다. 이를 통해 모델의 성능을 평가하고, 필요에 따라 모델을 수정하거나 다른 알고리즘을 시도할 수 있습니다.

결론

scikit-learn을 사용하여 로지스틱 회귀 모델을 구현하는 방법에 대해 알아보았습니다. 로지스틱 회귀는 분류 문제를 해결하는 간단하면서도 효과적인 방법 중 하나입니다. scikit-learn을 활용하면 데이터 준비부터 모델 학습까지 간편하게 수행할 수 있습니다.