[python] scikit-learn을 사용한 앙상블 예측 시각화

앙상블은 여러 개의 예측 모델을 조합하여 더 강력한 예측을 할 수 있게 해줍니다. scikit-learn은 앙상블 학습을 지원하는 다양한 모델을 제공하고 있으며, 이러한 모델들을 사용하여 예측 시각화를 할 수 있습니다.

여기서는 scikit-learn의 앙상블 모델 중 하나인 RandomForestClassifier를 사용하여 예측 시각화를 해보도록 하겠습니다.

from sklearn.datasets import load_iris
from sklearn.ensemble import RandomForestClassifier
import numpy as np
import matplotlib.pyplot as plt

# iris 데이터셋 로드
iris = load_iris()
X = iris.data
y = iris.target

# RandomForestClassifier 모델 생성 및 학습
rf = RandomForestClassifier(n_estimators=10)
rf.fit(X, y)

# 특징의 중요도를 추출
importances = rf.feature_importances_

# 각 특징의 중요도를 내림차순으로 정렬
indices = np.argsort(importances)[::-1]

# 특징의 이름을 가져옴
names = [iris.feature_names[i] for i in indices]

# 막대 그래프로 중요도를 시각화
plt.bar(range(X.shape[1]), importances[indices])
plt.xticks(range(X.shape[1]), names, rotation=90)
plt.title("Feature Importance")
plt.show()

위의 코드는 RandomForestClassifier 모델을 사용하여 iris 데이터셋의 특징 중요도를 시각화하는 예제입니다. 각 특징의 중요도는 막대 그래프로 나타나며, 특징 이름은 x축에 나열됩니다.

이 예제를 실행하면, 각 특징의 중요도를 확인할 수 있습니다. 따라서 데이터셋의 어떤 특징이 예측에 가장 큰 영향을 미치는지 파악할 수 있습니다.

더 많은 앙상블 학습 관련 정보는 scikit-learn 공식 문서를 참고하시면 도움이 될 것입니다.

참고 문서: scikit-learn 앙상블 모델 documentaion