Day 22 - 머신러닝 3 > KNN(K - Nearest Neighbors) (2)

2022. 11. 9. 17:19Python

이번 글에서는 Titanic 데이터를 활용해 KNN 모델링 연습문제를 푼 과정을 정리할 것이다. 이 연습문제 과정은 강사님의 도움을 받지 않고 수행했다.

연습문제 과제이다.
데이터를 불러오고 기본적인 데이터 정보를 확인했다.

 

이후 데이터 전처리를 진행했다.

Titanic 데이터 전처리에 필요한 부분을 정리했다.
데이터 전처리를 수행했다.

 

그 후 세가지 스케일링 작업을 각각 수행했다.

스케일링 작업들이다.

 

마지막으로 KNN 모델 학습 후, 모델 평가를 진행했다.

우선 K=5로 고정했을 때의 정확도 기반 모델평가 결과이다.
K값을 다르게 주어서 각 스케일링 별로 KNN 모델학습과 평가를 진행했다.
모델평가 결과를 정리했다.

 

Titanic 데이터를 4번째 다루어보는데, 데이터 전처리는 항상 중요하다는 걸 다시 한 번 생각하게 되었다. PassengerId컬럼을 없애지 않고 진행한 것과 없애고 진행한 것의 결과가 달랐기 때문이다. 한 편, 서로 다른 머신러닝 방법임에도 로지스틱 회귀와 KNN 모델의 정확도가 거의 비슷하게 나왔다는 것이(KNN이 살짝 높긴 하다) 흥미로웠다.