Menu
CoddyTech

머신 러닝, 반가워요

Coddy Machine Learning 여정의 데이터와 시각화 섹션에 포함된 레슨. 60개 중 1번째.

대부분의 프로그램은 사람이 작성한 규칙을 따릅니다. 머신 러닝 모델은 예시를 통해 스스로 규칙을 찾아냅니다.

여기 꽃잎 크기에 따라 점으로 표시한 아이리스 꽃 150개가 있습니다:

점으로 나타낸 아이리스 꽃 150개, 가로축은 꽃잎 길이, 세로축은 꽃잎 너비이며, 세 종이 각각 뚜렷한 군집을 이루고 종마다 색과 모양이 다릅니다

세 그룹이 보이나요? 모델도 이 그룹들을 학습한 다음, 본 적 없는 꽃의 이름을 알아낼 수 있습니다.

challenge icon

챌린지

쉬움

이 프로그램은 준비되었습니다. 실행을 누르면 모델이 꽃 112개를 학습한 다음 새로운 꽃 38개의 이름을 맞힙니다.

모델의 추측을 보려면 그래프 탭을 여세요. 모델의 실수 한 가지를 찾을 수 있나요? 그런 다음 제출하세요.

직접 해보기

# Run을 눌러 모델이 학습하는 모습을 확인하세요
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
import matplotlib.pyplot as plt

# 붓꽃 150송이: 각 꽃의 측정값과 품종
iris = load_iris()
X_learn, X_new, y_learn, y_new = train_test_split(iris.data, iris.target, random_state=0)

# 모델은 정답과 함께 꽃 112송이를 학습합니다...
model = KNeighborsClassifier()
model.fit(X_learn, y_learn)

# ...그런 다음 한 번도 본 적 없는 꽃 38송이의 품종을 맞힙니다
guesses = model.predict(X_new)
right = (guesses == y_new).sum()
print(f"Studied {len(X_learn)} flowers")
print(f"Named {right} of {len(X_new)} new flowers correctly")

# 새 꽃은 각각 모델의 예측에 따라 색이 지정된 점으로 표시되며, 빨간색 X는 틀린 예측을 나타냅니다
fig, ax = plt.subplots()
for i, name in enumerate(iris.target_names):
    picked = guesses == i
    ax.scatter(X_new[picked, 2], X_new[picked, 3], label=f"guessed {name}")
wrong = guesses != y_new
ax.scatter(X_new[wrong, 2], X_new[wrong, 3], marker="x", color="red", s=120, label="mistake")
ax.set_title("The model's guesses for 38 new flowers")
ax.set_xlabel("petal length (cm)")
ax.set_ylabel("petal width (cm)")
ax.legend()
plt.show()
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

데이터와 시각화의 모든 레슨

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