ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • AI 모델 만들기 시리즈 4화 – 특징과 레이블, 그리고 데이터셋을 어떻게 나눠야 하는가?
    AI/모델 2025. 5. 4. 11:46
    728x90
    SMALL

    AI 모델을 만든다고 할 때, 사람들은 종종 알고리즘이나 성능 지표에 먼저 관심을 가집니다.

    하지만 그보다 먼저 데이터 구조의 본질을 꿰뚫어보는 시야가 필요합니다.

    모델의 성능은 입력값(특징)과 정답(레이블)을 얼마나 잘 정의하고 나누었는지에 따라 근본적으로 달라지기 때문입니다.

     


     

    특징과 레이블이란 무엇인가?

     

     

    특징 (Feature)

     

    모델에 입력되는 변수들, 즉 예측을 위한 단서입니다.

    실세계 데이터를 수치화하거나 벡터화한 정보라고 볼 수 있습니다.

     

    • 예시:
      • 의료 데이터: 나이, 혈압, 체온
      • 쇼핑몰 데이터: 상품 카테고리, 사용자 구매횟수
      • 텍스트 데이터: 단어의 TF-IDF 값, 단어 임베딩 벡터
    •  

     

    좋은 특징은 모델이 예측에 필요한 핵심 정보를 담고 있어야 하며, 불필요한 노이즈를 줄이는 방향으로 정제되어야 합니다.

     

     

    레이블 (Label)

     

    모델이 예측하고자 하는 정답값입니다.

    지도학습에서는 필수이며, 회귀/분류 문제에 따라 형태가 달라집니다.

     

    • 예시:
      • 이진 분류: 구매 여부 (0, 1)
      • 다중 분류: 품종 구분 (0=Setosa, 1=Versicolor, 2=Virginica)
      • 회귀: 주택 가격 (3400만 원, 5200만 원 등)
    •  

     

    정답이 있는 문제 = 지도학습
    정답이 없는 문제 = 비지도학습

     


     

    실제 데이터셋 구조 예시

    나이소득지역구매여부

    28 3,200 서울 1
    45 5,500 부산 0
    31 4,000 대전 1

     

    • 특징(Features): 나이, 소득, 지역
    • 레이블(Label): 구매여부

     


     

    데이터셋 분할의 필요성

     

    데이터셋 전체를 한꺼번에 모델 학습에 사용하면, 모델은 그 데이터를 기억할 수는 있어도 일반화된 예측 능력은 갖추지 못합니다.

    따라서 데이터를 훈련용, 검증용, 테스트용으로 나누는 것은 AI 모델 개발의 기본이자 전제 조건입니다.

     


     

    분할 방식

     

     

    1. 훈련 데이터 (Training Set)

     

    • 모델이 실제 학습에 사용하는 데이터
    • 입력(X)과 출력(y) 모두 포함
    • 전체 데이터의 60~80% 정도를 사용

     

     

    2. 검증 데이터 (Validation Set)

     

    • 학습 중 하이퍼파라미터 튜닝, 조기 종료 기준 설정에 사용
    • 학습에는 관여하지 않음
    • 반복 실험에서 오버피팅을 방지하는 데 중요
    • 전체 데이터의 10~20% 정도 사용

     

     

    3. 테스트 데이터 (Test Set)

     

    • 최종적으로 모델이 실제 상황에서도 잘 작동하는지 평가
    • 절대 학습에 사용하면 안 됨
    • 실제 배포 전 검증 단계
    • 전체 데이터의 10~20% 정도 사용

     


     

    어떻게 나눌 것인가?

     

     

    Hold-Out 방식 (고정 분할)

     

    • 가장 많이 쓰는 단순한 방식
    • 예: 70% 훈련, 15% 검증, 15% 테스트

     

     

    교차 검증 (Cross Validation)

     

    • 데이터를 여러 개의 Fold로 나누어 순차적으로 학습/검증을 반복
    • 예: 5-Fold Cross Validation → 80% 학습 + 20% 검증을 5번 순환
    • 데이터가 적은 경우 유리하며, 보다 안정적인 성능 추정 가능

     

     

    시간 순서 기반 분할 (Time Series Split)

     

    • 시계열 데이터에서는 과거 → 미래 흐름을 보존해야 하므로 시간 순서 기준으로 분할
    • 학습: 2020년 1월~2021년 12월
    • 테스트: 2022년 1월~3월

     


     

    실무 고려사항

     

    • 클래스 불균형이 있는 경우, 분할 전 반드시 Stratified Sampling 사용 필요
    • 데이터 중복 또는 샘플 누수가 발생하지 않도록 주의
    • 검증/테스트 데이터는 절대 학습 중에 노출되지 않도록 격리

     


     

    좋은 데이터 구조가 좋은 모델을 만든다

    요소설명

    특징 (Feature) 입력값, 예측의 기반이 되는 변수들
    레이블 (Label) 예측 목표값, 정답
    훈련 데이터 모델을 학습시키는 데이터
    검증 데이터 성능 튜닝과 과적합 방지에 사용
    테스트 데이터 최종 성능을 객관적으로 평가

    데이터셋을 단순한 엑셀 시트가 아니라, 정보 흐름의 구조로 인식해야 AI 모델은 제대로 작동합니다.

     

     

    728x90
    LIST
Designed by Tistory.