분류 모델 성능 시각화하기
이 실습 문제에서는 music_df 데이터세트의 "popularity" 열이 이진 값으로 변환된 분류 문제를 해결해 볼 것입니다. 여기서 1은 "popularity" 열의 중앙값 이상인 인기를 나타내고, 0는 중앙값 미만인 인기를 나타냅니다.
여러분의 임무는 노래가 인기 있는지 여부를 분류하는 세 가지 다른 모델을 구축하고 결과를 시각화하는 것입니다.
데이터는 분할되고 스케일링되어 X_train_scaled, X_test_scaled, y_train, y_test로 미리 로드되었습니다. 추가로, KNeighborsClassifier, DecisionTreeClassifier, LogisticRegression이 import 되어 있습니다.
이 연습은 강의의 일부입니다
scikit-learn으로 배우는 지도 학습
연습 안내
"Logistic Regression","KNN","Decision Tree Classifier"의 딕셔너리를 만들고, 딕셔너리의 값을 각 모델의 호출로 설정하세요.models의 값들을 반복하세요.- 6 분할을 수행하도록
KFold객체를 인스턴스화하고,shuffle을True로,random_state를12로 설정하세요. - 모델, 스케일링된 학습 특성, 타깃 학습 세트를 사용하고,
cv를kf와 같게 설정하여 교차 검증을 수행하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Create models dictionary
models = {"____": ____(), "____": ____(), "____": ____()}
results = []
# Loop through the models' values
for model in ____.____():
# Instantiate a KFold object
kf = ____(n_splits=____, random_state=____, shuffle=____)
# Perform cross-validation
cv_results = ____(____, ____, ____, cv=____)
results.append(cv_results)
plt.boxplot(results, labels=models.keys())
plt.show()