Lesson
수업용 메인 페이지
다양한 데이터 분석 및 머신러닝 강의 콘텐츠를 제공합니다.
Titanic
타이타닉 침몰 데이터를 활용한 기초 데이터 분석 및 분류 모델 구현 강의입니다.
- 데이터 수집 및 전처리
- 탐색적 데이터 분석 (EDA)
- 분류 모델 개발 및 평가

캐릭터로 읽는 헥사고날 아키텍처
백엔드는 영화 속 등장인물 이름으로 각 기능을 부른다. 요청 하나는 인바운드 어댑터(Router)에서 시작해 입력 포트(Use Case)를 지나 비즈니스 로직(Interactor)을 실행하고, 출력 포트(Repository)를 거쳐 실제 DB로 나간다.
ERD — 캐글 타이타닉 데이터를 3NF로 정규화하기
캐글의 원본 train.csv는 승객 한 명당 한 행(row)에 승선 항구, 티켓, 요금까지 전부 욱여넣은 평평한(flat) 구조다. 이걸 그대로 테이블 하나에 저장하면, 같은 항구에서 탄 승객이 100명이면 항구 이름도 100번 중복 저장된다. 3정규형(3NF)은 이런 중복을 없애기 위해 컬럼을 “누구에게 직접 속하는 값인가” 기준으로 세 테이블로 쪼갠다.

- Port — 승선 항구(Embarked) 코드별 항구 이름·국가. 승객 개인이 아니라 항구 자체에 속하는 값이라 별도 테이블로 뺀다.
- Person — 이름·성별·나이·동승 가족 수·생존 여부 등 승객 개인의 정보. Port와 Booking을 외래키(FK)로 참조한다.
- Booking — 등급(Pclass)·티켓 번호·요금·객실 번호 같은 승선권 정보. 가족이 티켓 한 장을 같이 쓰는 경우가 있어 Booking 1건에 Person 여러 명이 연결되는 1:N 관계다.
특성 변수(Feature)와 목적 변수(Target)
모델은 특성 변수를 입력받아 목적 변수를 예측하도록 학습한다. 타이타닉에서는 승객의 정보가 특성 변수, 생존 여부가 목적 변수다.
Feature — 설명 변수
Target — 목적 변수
Survived (0 / 1)표준화(Standardization)와 정규화(Normalization)
같은 “스케일링”이라도 데이터 특성에 따라 방식이 갈린다. Age·Fare처럼 이상치가 있고 정규분포에 가까운 데이터는 표준화, 값의 범위가 뚜렷한 데이터는 정규화가 잘 맞는다.
표준화 (Z-score)
평균 0, 표준편차 1로 변환
예: Age, Fare
정규화 (Min-Max)
최소~최대를 0~1 범위로 변환
예: Pclass
생존 예측 알고리즘 TOP 10
분류 모델은 트리 기반 부스팅 계열부터 거리·확률 기반 모델까지 다양하다. 정답이 있는 지도학습이 대부분이지만, K-Means·PCA처럼 탐색적 분석을 돕는 비지도 기법도 함께 쓰인다.
- 1XGBoost강력한 성능의 그래디언트 부스팅 앙상블
- 2Random Forest여러 결정 트리를 배깅한 안정적인 앙상블
- 3LightGBM속도가 빠른 그래디언트 부스팅
- 4CatBoost범주형 변수 처리에 강함
- 5Logistic Regression해석이 쉬운 기본 baseline
- 6Decision Tree규칙 기반의 직관적인 분류
- 7SVM마진을 최대화하는 결정 경계
- 8KNN거리 기반 최근접 이웃 분류
- 9Naive Bayes조건부 확률 기반의 빠른 분류
- 10K-Means / PCA군집·차원축소로 EDA를 보조하는 비지도 기법
피처 엔지니어링과 도메인 규칙
원본 컬럼을 그대로 쓰기보다, 의미 있는 파생 변수를 만들면 모델 성능이 올라간다. 아래는 자주 쓰이는 파생 변수와, 백엔드가 실제로 정의해 둔 위험도 판정 규칙이다.
Title 추출
Name에서 Mr / Mrs / Miss / Master 같은 호칭을 뽑아 신분·연령대 정보로 활용
FamilySize
SibSp + Parch — 동승 가족 수를 하나의 변수로 합산
IsAlone
FamilySize가 0이면 혼자 탑승한 승객으로 표시
Age Binning
연속값인 나이를 구간(어린이/청년/장년 등)으로 나눠 범주화
Cabin Deck
Cabin 앞글자만 추출해 선실 구역(Deck) 정보로 사용
도메인 규칙 — is_high_risk()
남성이면서 · 18세 이상이면서 · 혼자 탑승(가족 동반 없음)한 경우 “고위험군”으로 판정한다. 세 조건 모두를 만족해야 하는 AND 규칙이다.