Titanic(3)
-
Day 22 - 머신러닝 3 > KNN(K - Nearest Neighbors) (2)
이번 글에서는 Titanic 데이터를 활용해 KNN 모델링 연습문제를 푼 과정을 정리할 것이다. 이 연습문제 과정은 강사님의 도움을 받지 않고 수행했다. 이후 데이터 전처리를 진행했다. 그 후 세가지 스케일링 작업을 각각 수행했다. 마지막으로 KNN 모델 학습 후, 모델 평가를 진행했다. Titanic 데이터를 4번째 다루어보는데, 데이터 전처리는 항상 중요하다는 걸 다시 한 번 생각하게 되었다. PassengerId컬럼을 없애지 않고 진행한 것과 없애고 진행한 것의 결과가 달랐기 때문이다. 한 편, 서로 다른 머신러닝 방법임에도 로지스틱 회귀와 KNN 모델의 정확도가 거의 비슷하게 나왔다는 것이(KNN이 살짝 높긴 하다) 흥미로웠다.
2022.11.09 -
Day 21 - 머신러닝 2 > 로지스틱 회귀
이번 글에서는 머신러닝 방법 중 로지스틱 회귀에 대해서 다룰 것이다. 로지스틱 회귀는 이진 분류를 다루며, 두가지 범주로 나뉘어진 값을 예측하는데 사용한다. 이는 기존의 선형 회귀가 이러한 값을 잘 예측하지 못하기 때문이다. 분류문제에 있어 타 모델과 비교하는데 있어 기준선으로 사용되며, 구현과 설명이 쉽다. 다만 선형관계가 아닌 데이터에 대한 예측력은 떨어진다는 단점이 있다. 자세한 이유는 모르겠지만, 아마 결국 선형회귀와 비슷한 방식의 회귀분석 방법이라서 그런게 아닐까 싶다. Titanic dataset을 활용하여 로지스틱 회귀 실습을 진행했다. 실습을 통해 알게 된것은, 어떤 머신러닝 기법을 사용하더라도 해당 기법에 맞게 데이터 전처리를 해주어야 한다는 것과 따라서 데이터 전처리가 정말 중요하다는 ..
2022.11.08 -
Day 19 - Titanic 데이터 실습
이번 글에서는 그동안 배운 데이터 전처리와 분석, 시각화를 Titanic 데이터를 통해 실습해 볼 것이다. Hello World!에 비할바는 못되지만 역시 데이터 분석 실습의 첫 걸음은 Titanic 데이터라고 생각한다. 우선, Titanic 데이터를 불러와 Titanic 데이터프레임에 저장하고, 분석하기 이전 더 용이한 분석을 위해 몇 가지 컬럼을 추가했다. 추가한 컬럼은 남녀 성별을 0/1로 구분하는 컬럼, 이름의 길이값을 저장하는 컬럼, 요금을 반올림한 컬럼이다. 우선은 커스텀 함수를 정의하지 않고 기존 함수나 dictionary를 이용하여 컬럼을 추가해보았다. 추가한 컬럼과 생존여부 간 상관분석을 진행했다. 그 뒤 본격적인 분석을 위해 필요한 전처리 과정의 일환인 유도변수 생성에 대해 배웠다. 사..
2022.11.02