타이타닉 생존자 예측
타이타닉 생존자 예측

타이타닉 생존자 예측

기간
2023년 5월 17일 ~ 2023년 6월 7일
역할
데이터 전처리와 모델 비교 · 팀 프로젝트
기술 스텍
Python
Numpy
Pandas
RandomForest
XGBOOST
ML
팀원
3명
2023.05.17 ~ 2023.06.07 · 3명 팀 프로젝트

데이터 전처리와 모델 비교를 거쳐 생존자를 예측했습니다.

Kaggle Titanic 데이터로 승객의 생존 여부를 예측했습니다. 학습 데이터의 분포와 결측치를 확인하고, 새로운 특성을 만든 뒤 여러 분류 모델을 비교했습니다.
page icon
당시 Kaggle 제출 정확도 83.7%
프로젝트 당시 제출 기록과 저장소에 남아 있는 결과입니다.

데이터에서 만든 특성

  • 이름에서 호칭을 추출하고, 같은 티켓 번호를 가진 승객 수와 가족 수를 특성으로 만들었습니다.
  • 나이·요금 등 결측치를 그룹별 통계로 채우고, 범주형 값을 숫자로 변환했습니다.
  • 승객 등급, 성별, 나이와 생존 여부의 분포를 차트로 확인했습니다.

모델 선택

K-Fold 교차 검증으로 KNN, Decision Tree, Random Forest, XGBoost를 비교했습니다. 당시 전처리한 데이터에서는 Random Forest의 검증 점수가 더 높아 최종 모델로 선택하고, 베이지안 탐색으로 하이퍼파라미터를 조정했습니다.
교차 검증 점수와 Kaggle 제출 정확도는 서로 다른 평가 결과로 구분했습니다.

사용 기술

Python · Pandas · NumPy · scikit-learn · Random Forest · XGBoost

당시 분석·구현 기록 보기
아래는 당시 분석과 제출 화면입니다. 화면에 남아 있는 대회 순위는 캡처 시점의 기록입니다.
notion image
notion image

데이터 구조

notion image
notion image
notion image
notion image

데이터 분석 코드

notion image
notion image
notion image

특성별 생존 분포

notion image
notion image

호칭 전처리

notion image

성별 인코딩

notion image

동일 티켓 그룹 크기

notion image
notion image

나이 결측치 처리

notion image

탑승 항구 인코딩

notion image

요금 결측치 처리

notion image

객실 정보 전처리

notion image

가족 수 특성

notion image

가족 생존 정보 특성

notion image

정규화

notion image

모델 비교와 튜닝

notion image
notion image
notion image
notion image
notion image
☄️
Titanic 데이터 분석
PagenowMade with Pagenow