머신러닝 모델 성능 평가

Beginner

This tutorial is from open-source community. Access the source code

소개

머신 러닝에서 모델이 만든 예측의 품질을 평가하는 것은 중요합니다. 이는 모델의 성능이 얼마나 좋은지, 그리고 정확한 예측을 위해 신뢰할 수 있는지 이해하는 데 도움이 됩니다. scikit-learn 라이브러리는 예측의 품질을 정량화하기 위한 여러 메트릭과 평가 방법을 제공합니다.

이 실습에서는 scikit-learn 이 제공하는 모델 평가를 위한 세 가지 다른 API 를 살펴볼 것입니다: 추정기 점수 메서드, 평가 매개변수, 그리고 메트릭 함수입니다.

VM 팁

VM 시작이 완료되면 왼쪽 상단 모서리를 클릭하여 Notebook 탭으로 전환하여 연습을 위한 Jupyter Notebook에 접근할 수 있습니다.

때때로 Jupyter Notebook 이 완전히 로드되기까지 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한으로 인해 작업의 유효성 검사를 자동화할 수 없습니다.

학습 중 문제가 발생하면 Labby 에게 문의하십시오. 세션 후 피드백을 제공하면 문제를 신속하게 해결해 드리겠습니다.

추정기 점수 메서드

추정기 점수 메서드는 각 추정기에서 scikit-learn 이 제공하는 기본 평가 기준입니다. 모델 예측의 품질을 나타내는 점수를 계산합니다. 각 추정기의 설명서에서 자세한 내용을 확인할 수 있습니다.

추정기의 score 메서드 사용 예시는 다음과 같습니다.

from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_digits

X, y = load_digits(return_X_y=True)
clf = LogisticRegression()
clf.fit(X, y)

score = clf.score(X, y)
print("Score:", score)

평가 매개변수

Scikit-learn 은 교차 검증 및 그리드 검색과 같은 여러 모델 평가 도구에서 scoring 매개변수를 제공합니다. scoring 매개변수는 평가 중 추정기에 적용되는 메트릭을 제어합니다.

교차 검증에서 scoring 매개변수를 사용하는 예는 다음과 같습니다.

from sklearn.model_selection import cross_val_score
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_digits

X, y = load_digits(return_X_y=True)
clf = LogisticRegression()

scores = cross_val_score(clf, X, y, cv=5, scoring='accuracy')
print("Scores:", scores)

메트릭 함수

Scikit-learn metrics 모듈은 특정 목적에 맞는 예측 오류를 평가하기 위한 여러 함수를 구현합니다. 이 함수들을 사용하여 모델이 만든 예측의 품질을 계산할 수 있습니다.

metrics 모듈의 accuracy_score 함수 사용 예는 다음과 같습니다.

from sklearn.metrics import accuracy_score
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split

X, y = load_digits(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)

clf = LogisticRegression()
clf.fit(X_train, y_train)

y_pred = clf.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)

요약

이 실습에서는 scikit-learn 이 제공하는 모델 평가를 위한 세 가지 API, 즉 추정기 점수 메서드, scoring 매개변수, 및 메트릭 함수에 대해 배웠습니다. 이러한 API 를 통해 모델이 만든 예측의 품질을 평가하고 모델의 성능이 얼마나 좋은지 이해할 수 있습니다.