머신러닝 & 딥러닝

[머신러닝 & 딥러닝] 전체적인 작업 흐름

beginner-in-coding 2025. 2. 19. 18:38

00. 전체적인 흐름도

머신러닝의 전체적인 흐름


01. 전처리 - 데이터의 형태 갖추기

  • 가장 중요한 단계 중 하나
  • 원본 데이터의 모든 특성과 형태가 알고리즘에 완벽히 적합한 경우는 잘 없음
  • 원본 데이터의 특성 중에서 의미 있는 정보를 이용해 알고리즘에 이용해야 함
  • 데이터 전처리
    1. 데이터 필터링
      1. 선택한 특성이 같은 스케일(범위)를 가져야 함 따라서 특성의 범위를 변환시키는 과정이 존재
        • 표준 정규 분포(standard normal distribution) 이용: 평균이 0이고 단위 분산을 가짐
      2. 상관 관계가 높아 중복된 정보를 가질 경우 차원 축소 기법 이용
        • 차원 축소의 장점
          • 저장 공간이 줄어듦
          • 학습 알고리즘을 빨리 수행 가능
          • 모델의 예측 성능을 높일 가능성이 존재 신호 대 잡음비(SNR, Signal-to-Noise Ratio)가 낮은 경우
    2. 데이터셋 랜덤하게 나누기
      • 필터링된 데이터셋을 랜덤하게 훈련 데이터셋과 테스트 데이터셋으로 나눠야함
      • 나누는 이유: 훈련 데이터셋을 통해 알고리즘을 학습시키고, 테스트 데이터셋을 통해 새로운 데이터셋에 대해 레이블 값이 올바르게 나오는 지(일반화 되는지) 확인하기 위해
      • 대부분 훈련 데이터셋 테스트 데이터셋의 비율을 7:3으로 나눔

02. 학습, 평가 - 예측 모델 훈련과 선택

  • 여러 머신러닝 알고리즘이 존재하는 이유: 각기 상황마다 적합한 알고리즘이 있기 때문
  • 따라서 가장 적합하고 성능이 좋은 모델을 훈련하고 선택하기 위해서는 여러 알고리즘을 비교해보아야함
  • 비교 기준: 정확도(accuracy)를 지표로 알고리즘이 적합한지 비교
    • 정확도: 정확히 분류된 샘플과 그렇지 않은 샘플의 비율 (%)
  • 교차 검증 기법: 테스트 데이터셋과 실제 데이터에서 어떤 모델이 잘 작동할지 평가하기 위해 사용
    • 훈련 데이터 → 훈련 데이터셋 + 검증 데이터셋
  • 하이퍼파라미터 (hyperparameter): 모델 성능을 향상시키기 위해 사용하는 옵션들

03. 예측 - 모델을 평가하고 본 적 없는 샘플로 예측

  • 이전에 본 적 없는 데이터를 이용해서 얼마나 성능을 내는지 예측하여 일반화 오차 예상
  • 모델을 통해 새로운 데이터를 예측
  • 새로운 데이터셋 또한 똑같은 전처리 과정을 통해 값을 정리해줘야함 → 낙관적인 성능을 방지