[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을 활용하면 데이터 준비부터 모델 학습까지 간편하게 수행할 수 있습니다.