Menu
CoddyTech

복습: 트리 조정하기

Coddy Machine Learning 여정의 지도 학습 섹션에 포함된 레슨. 58개 중 36번째.

challenge icon

챌린지

중급

로스터의 센서는 커피 배치마다 6개의 값을 읽으며, 1은 포장할 준비가 되었음을 의미합니다. 트리 깊이를 정직하게 선택하세요.

  1. 테스트용으로 20%를 분리한 다음, 나머지의 25%를 검증용으로 분리하세요(random_state=0).
  2. 깊이 1부터 10까지 각 트리를 학습 데이터 행으로 학습하고(random_state=0), 학습 정확도와 검증 정확도를 그래프로 그리세요. marker="o"를 사용하고, 범례 이름은 training과 validation으로 지정하세요.
  3. 최적의 깊이를 출력한 다음, 테스트 정확도를 출력하세요.
  4. 점선으로 해당 깊이를 표시하고 빨간색 별표로 테스트 점수를 표시한 다음, 범례를 추가하세요.

다른 로스터는 다음을 출력합니다.

Best depth: 5 (validation accuracy 0.887)
Test accuracy: 0.750

그리고 다음 그래프를 그립니다. 그러면 Coddy가 여러분의 차트를 설명합니다.

커피 배치: 깊이 선택하기. 학습 선은 0.69에서 거의 1.0까지 상승합니다. 검증 선은 깊이 5에서 0.89로 정점을 찍은 다음 0.78까지 하락합니다. 깊이 5에 점선이 있고, 그 지점의 0.75에는 테스트 점수를 나타내는 빨간 별표가 있습니다.

직접 해보기

import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier

# make_classification은 연습용으로 실제와 비슷한 데이터를 만듭니다. 여기서는 커피 배치 400개를 만들고,
# 각 배치에는 로스터 센서 측정값 6개가 있으며, 포장할 준비가 된 배치의 레이블은 1입니다
X, y = make_classification(n_samples=400, n_features=6, n_informative=3, n_redundant=1,
                           flip_y=0.1, random_state=79)

fig, ax = plt.subplots()
ax.set_title("Coffee Batches: Choosing a Depth")
ax.set_xlabel("Tree depth")
ax.set_ylabel("Accuracy")

# 아래에 코드를 작성하세요

지도 학습의 모든 레슨

직접 연습해 보세요: 온라인 Python 컴파일러