의사결정나무
앞선 세 개의 장에서 Machine Learning 면접의 다양한 측면을 다루는 여러 기법을 배웠습니다. 이번 장에서는 면접에서 만들거나 설명해야 하는 어떤 모델이든 일반화 가능하고, 올바르게 평가되며, 가능한 다른 모델 중에서 적절히 선택되었는지 확인하는 다양한 방법을 살펴봅니다.
이 연습 문제에서는 loan_data 데이터셋에 대해 의사결정나무의 하이퍼파라미터 튜닝을 수행해 보겠습니다.
여기서는 추가적인 이진 분할을 만들기 위해 필요한 최소 샘플 수인 min_samples_split과 나무를 얼마나 깊게 성장시킬지 결정하는 max_depth를 튜닝합니다. 나무가 깊어질수록 분할이 늘어나며, 그만큼 데이터에 대한 정보를 더 많이 포착합니다.
특성 행렬 X와 타깃 레이블 y는 미리 불러와 두었습니다.
다시 한 번 Machine Learning 파이프라인의 모든 단계를 수행한다는 점을 기억하세요!

이 연습은 강의의 일부입니다
Python으로 연습하는 Machine Learning 면접 질문
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Import modules
from sklearn.tree import ____
from sklearn.metrics import accuracy_score
# Train/test split
X_train, X_test, y_train, y_test = train_test_split(____, ____, test_size=0.30, random_state=123)
# Instantiate, Fit, Predict
loans_clf = ____()
loans_clf.____(____, ____)
y_pred = loans_clf.____(____)
# Evaluation metric
print("Decision Tree Accuracy: {}".format(____(____,____)))