나이브 베이즈 예제

Beginner

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

소개

이 실습에서는 Python 의 scikit-learn 라이브러리에서 나이브 베이즈 분류기를 사용하는 예제를 살펴볼 것입니다. 나이브 베이즈 분류기는 분류 작업에 일반적으로 사용되는 지도 학습 알고리즘 집합입니다. 이 분류기는 클래스 변수의 값을 고려했을 때 모든 특징 쌍 사이의 조건부 독립성을 가정하고 베이즈 정리를 적용하는 데 기반합니다.

이 예제에서는 scikit-learn 의 가우시안 나이브 베이즈 분류기를 사용하여 아이리스 데이터셋을 분류할 것입니다. 아이리스 데이터셋은 머신 러닝 분야에서 널리 사용되는 데이터셋입니다. 이 목표는 꽃잎과 꽃받침의 크기 정보를 바탕으로 아이리스 꽃의 종을 예측하는 것입니다.

VM 팁

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

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

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

이것은 가이드 실험입니다. 학습과 실습을 돕기 위한 단계별 지침을 제공합니다.각 단계를 완료하고 실무 경험을 쌓기 위해 지침을 주의 깊게 따르세요. 과거 데이터에 따르면, 이것은 초급 레벨의 실험이며 완료율은 91%입니다.학습자들로부터 100%의 긍정적인 리뷰율을 받았습니다.

라이브러리 가져오기 및 데이터셋 로드

필요한 라이브러리를 가져오고 아이리스 데이터셋을 로드하는 것으로 시작하겠습니다. sklearn.datasets 모듈의 load_iris 함수를 사용하여 데이터셋을 로드합니다.

from sklearn.datasets import load_iris

## 아이리스 데이터셋 로드
iris = load_iris()
X = iris.data  ## 특징
y = iris.target  ## 목표 변수

print("샘플 수:", X.shape[0])
print("특징 수:", X.shape[1])
print("클래스 수:", len(set(y)))

데이터셋을 학습 및 테스트 세트로 분할

다음으로 sklearn.model_selection 모듈의 train_test_split 함수를 사용하여 데이터셋을 학습 및 테스트 세트로 분할합니다. 학습 세트는 나이브 베이즈 분류기를 학습하는 데 사용되고, 테스트 세트는 분류기의 성능을 평가하는 데 사용됩니다.

from sklearn.model_selection import train_test_split

## 데이터셋을 학습 및 테스트 세트로 분할
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

가우시안 나이브 베이즈 분류기 학습 및 평가

이제 학습 세트에서 가우시안 나이브 베이즈 분류기를 학습하고 테스트 세트에서 성능을 평가합니다. sklearn.naive_bayes 모듈의 GaussianNB 클래스를 사용합니다.

from sklearn.naive_bayes import GaussianNB

## 가우시안 나이브 베이즈 분류기 생성
gnb = GaussianNB()

## 분류기 학습
gnb.fit(X_train, y_train)

## 테스트 세트에 대한 목표 변수 예측
y_pred = gnb.predict(X_test)

## 분류기의 정확도 계산
accuracy = (y_pred == y_test).sum() / len(y_test)
print("정확도:", accuracy)

결과 해석

얻어진 정확도를 바탕으로 아이리스 데이터셋에 대한 가우시안 나이브 베이즈 분류기의 성능을 해석할 수 있습니다. 정확도는 테스트 세트에서 올바르게 예측된 목표 변수 값의 비율을 나타냅니다. 이 경우 정확도는 올바르게 분류된 아이리스 꽃 종의 비율을 나타냅니다.

요약

이 실습에서는 scikit-learn 의 가우시안 나이브 베이즈 분류기를 사용하는 예제를 살펴보았습니다. 아이리스 데이터셋을 불러와 학습 세트와 테스트 세트로 분할하고, 학습 세트에서 분류기를 학습한 후 테스트 세트에서 성능을 평가했습니다. 얻어진 정확도는 분류기가 아이리스 꽃 종을 예측하는 데 얼마나 잘 수행되었는지 보여줍니다. 나이브 베이즈 분류기는 간단하지만 효과적인 분류 알고리즘으로, 다양한 실제 응용 분야에서 일반적으로 사용됩니다.