정확도만 넘어서기
이 연습 문제에서는 정확도만 확인하는 것을 넘어서, 기본 결정 트리 모델의 ROC 곡선에 대한 AUC를 평가해 보겠습니다. 무작위 분류기의 기준선은 AUC 0.5이므로, 0.5보다 높은 점수를 달성하는 것이 목표예요.
X는 특성을 담은 DataFrame이고, y는 타깃 값을 담은 DataFrame으로 제공됩니다. 또한 sklearn과 pandas는 pd로 워크스페이스에 준비되어 있어요.
이 설정을 바탕으로 ROC 곡선의 AUC를 살펴보겠습니다.
이 연습은 강의의 일부입니다
Python으로 Machine Learning을 활용한 CTR 예측
연습 안내
- 데이터를 학습용과 테스트용 세트로 분할하세요.
- 학습 데이터를 사용해 분류기를 학습(fit)하고, 테스트 데이터에 대해
predict_proba()와predict()로 예측을 수행하세요. roc_curve(y_test, y_score[:, 1])와 같이roc_curve()함수를y_test에 적용해 ROC 곡선 아래의 AUC를 평가하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Training and testing
X_train, X_test, y_train, y_test = \
____(X, y, test_size = .2, random_state = 0)
# Create decision tree classifier
clf = DecisionTreeClassifier()
# Train classifier - predict probability score and label
y_score = clf.fit(____, ____).predict_proba(____)
y_pred = clf.fit(____, ____).predict(____)
# Get ROC curve metrics
fpr, tpr, thresholds = ____(____, y_score[:, 1])
roc_auc = auc(fpr, tpr)
print(roc_auc)