더북(TheBook)

나이브 베이즈는 매우 쓸모 있습니다. 특히 텍스트 분류에서 아주 유용하죠. 충격적일 정도예요. 어떤 문장에 있는 단어는 인접한 다른 단어들과 그 순서에 밀접하게 연결되어 있습니다. 문장을 구성할 때 특정한 의미를 표현하기 위해 아무 단어나 고르지 않고 의도를 담아 적절한 단어를 적절한 위치에 배치합니다. 텍스트 분류의 핵심인 단어 간의 관계를 무시하는 기법이 어떻게 유용할 수 있을까요? 나이브 베이즈의 성공은 두 가지로 설명할 수 있습니다. 첫째, 나이브 베이즈는 상대적으로 간단한 학습 기법으로 불필요한 혼란에 쉽게 영향을 받지 않습니다. 둘째, 특유의 간단함 덕분에 많은 데이터를 학습하여 효과를 볼 수 있습니다. 이것은 과적합(5.3절)에서 더 자세히 알아보세요.

간단한 나이브 베이즈 모델을 만들고 학습하고 평가해 봅시다.

 

In [10]:

nb = naive_bayes.GaussianNB()
fit = nb.fit(iris_train_ftrs, iris_train_tgt)
preds = fit.predict(iris_test_ftrs)

print("NB accuracy:", metrics.accuracy_score(iris_test_tgt, preds))
NB accuracy: 1.0

 

이번에도 완벽하게 해냈습니다. 그래도 이 결과를 너무 믿지 마세요. 머신 러닝 실력이 좋아서라기보다는 데이터셋 자체가 쉽기 때문에 좋은 결과가 나온 것입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.