본문 바로가기

공부 일지 #28 | 머신러닝 첫걸음: 개념, 유형, 흐름

@studying:)2025. 9. 3. 17:13

학습 날짜: 2025.09.02 ~ 2025.09.03


AI, ML, DL 기초 개념 정리

1. Legacy System

  • 과거에 개발되어 현재까지 사용 중인 오래된 시스템을 의미.
  • 유지보수는 가능하지만, 새로운 기술(예: AI, 클라우드)과의 통합에는 한계가 있음.

2. AI ⊃ ML ⊃ DL

  • AI(Artificial Intelligence): 인간의 지능적 행동을 모방하려는 모든 시도
  • ML(Machine Learning): 데이터를 기반으로 컴퓨터가 스스로 학습하도록 하는 방법
  • DL(Deep Learning): 인공신경망을 기반으로 한 머신러닝의 한 분야

3. Rule-Based System

출처: https://www.oreilly.com/library/view/hands-on-machine-learning/9781491962282/ch01.html

  • 특징
    • 프로그래머가 명시적으로 작성한 규칙만으로 문제 해결
    • 잘 정의된, 논리적인 문제 해결에 적합
  • 한계
    • 현실의 문제는 복잡하고 모호하며 다양한 경우의 수 존재
    • 모든 규칙을 만들 수 없고, 규칙이 많다고 해서 모든 문제 해결이 가능하지 않음
      ⇒ 이러한 한계로 인해 1980년대에 머신러닝이 등장

4. Machine Learning (ML)

출처: https://www.oreilly.com/library/view/hands-on-machine-learning/9781491962282/ch01.html

  • 정의
    • 방대한 데이터를 바탕으로 기계가 스스로 학습하도록 하는 연구 분야
  • Tom Mitchell의 정의(1997)
    " 어떤 작업 T(Task)에 대한 프로그램의 성능을 P(Performance measure)로 측정했을 때,
      경험 E(Experience)을 통해 성능이 향상되었다면,
      그 프로그램은 T와 P에 대해 E로부터 학습한 것이다."
  • 데이터 마이닝
    • 대량의 데이터를 기반으로 머신러닝 알고리즘을 통해 학습시키면 보이지 않던 새로운 패턴 발견 가능
    • 새로운 지식 창출 및 의사결정 지원
  • 한계
    • 만능은 아님: 세상의 모든 문제를 머신러닝으로 해결할 수는 없음
    • 데이터 의존성: 데이터의 양과 질이 모델 성능을 좌우
    • 리소스 부담: 데이터 수집·준비에 많은 시간과 비용 필요
  • 기업의 다크 데이터
    • 활용되지 못한 상태로 저장되어 있어, 내용 또는 가치가 확인되지 않는 데이터
    • 어떤 데이터가 저장되어 있는지 정보 부족
    • 데이터 관리에 대한 전략 부재

5. Deep Learning (DL)

  • 역사
    • 인공신경망(1943): 뇌를 모델링하려는 아이디어
    • 퍼셉트론(1957): 뇌의 뉴런을 모방한 모델 (입력 신호 → 0 또는 1 출력)
      • 생물의 뇌: 뉴런들이 다층 연결
      • 인공신경망: 퍼셉트론의 다층 연결
  • 개념
    • DNN(Deep Neural Network): 인공신경망을 깊게 쌓은 구조
    • Deep Learning: DNN을 가리키는 용어 (마케팅적으로 확산된 이름)
  • 특징
    • 층을 깊게 쌓을수록 복잡한 문제 해결 가능
    • 하위 층에서 학습한 특징을 조합 → 더 높은 차원의 문제 해결

머신러닝의 유형

1. 지도학습

  • 정답 라벨이 주어진 상태에서 학습하는 방식
  • 라벨이 붙여진 데이터셋을 학습시켜, 신규 데이터의 라벨을 찾아내는 방법
  • 세부 유형
    • 분류 (Classification): 결과가 범주형(categorical) → ex) 스팸/정상, 고양이/개
    • 회귀 (Regression): 결과가 연속형(continuous) → ex) 주택 가격 예측, 온도 예측

2. 비지도학습

  • 정답 라벨이 없는 데이터 기반으로 학습하는 방식
  • 데이터 사이의 관계나 유사성을 기반으로 군집별 패턴을 찾아내는 방식
  • 세부 유형
    • 군집화 (Clustering): 유사한 데이터끼리 그룹화 aka 땅따먹기 → ex) 고객 유형 분류
    • 차원 축소 (Dimensionality Reduction): 데이터 특성을 줄여 학습·시각화 효율 개선 → ex) PCA, t-SNE

3. 준지도 학습

  • 라벨이 있는 데이터와 라벨이 없는 데이터를 모두 사용하여 학습하는 방식

4. 강화학습

  • 보상을 기반으로 시행착오를 거쳐 최적의 행동 전략 학습
  • ex) 알파고, 로봇 제어 등

머신러닝의 주요 프로세스

1. 문제 정의 

  • 해결하려는 문제를 명확히 정의
  • 문제 성격과 데이터 특성에 따라 적절한 알고리즘 선정이 핵심

2. 데이터 수집 단계

  • 학습과 검증에 사용할 데이터를 수집하는 단계
  • 학습·검증에 사용할 데이터를 충분히 수집해야 함
  • 대표성 있고 고품질의 데이터 확보가 중요
  • 데이터셋 분할 방식
    • Train (훈련 데이터): 모델 학습에 사용
    • Validation (검증 데이터): 학습 중 모델 성능을 평가하고 개선 지표로 활용
    • Test (테스트 데이터): 최종 성능 평가에 사용

    • 일반적으로 Train/Test 또는 Train/Validation/Test로 분할 ⇒ 홀드아웃 교차검증(Hold-out Cross Validation)
  • 왜 데이터를 분할해야 할까?
    • 학습 데이터와 검증 데이터가 같으면, 마치 기출문제만 공부해서 그대로 시험에 나오는 상황과 같음.
    • 이 경우 모델은 훈련 문제는 잘 맞추지만, 새로운 문제(신규 데이터)에서는 성능이 보장되지 않음.
    • 따라서 검증·테스트용 데이터를 따로 분리하여, 모델의 실제 일반화 능력을 확인하는 것이 필수!

3. 데이터 전처리

  • 데이터 품질을 결정하는 중요한 단계, 데이터를 정제하는 과정 
  • 주요 작업
    • 결측값 처리
    • 이상값 처리
    • 데이터 정제 (Data Cleaning)
      • 동일한 정보를 일관되게 표현하도록 수정
      • 예: "십오평" → 15,  "1.5(단위: 10평)" → 15
    • 데이터 스케일링 (Scaling/Normalization)
      • 수치형 변수들의 크기·범위를 조정
      • Z-score 표준화, Min-Max 정규화
    • 데이터 인코딩 (Encoding)
      • 범주형 변수를 수치형으로 변환
      • One-hot encoding, Label encoding
    • 데이터 라벨링 (Labeling): 지도학습에는 반드시 정답 라벨(y값)이 필요하기 때문
    • 비정형데이터: 다양한 전처리 작업이 선행됨
  • 특징
    • 전처리 단계가 가장 오래 걸리고 까다로운 과정
    • 도메인 지식과 데이터에 대한 이해가 필수
    • 좋은 전처리가 곧 좋은 모델 성능으로 이어짐

4. 특징 추출(Feature Engineering)

  • 개념
    • Feature: 독립변수 = attribute, 특성, 속성 → 모델에 학습시킬 데이터의 특성
    • Class: 종속변수 = label, target, 정답, 결정 →  모델을 통해 판단 또는 예측하고자 하는 정답 값
      👉 Feature가 많다고 좋은 모델은 아님. 문제를 가장 잘 설명하는 핵심 변수를 골라내는 과정이 필요.
      👉 도메인 지식을 활용해 새로운 변수를 생성할 수도 있음 (변수 생성/파생변수).
  • 종류
    1. 특징 선택 (Feature Selection)
      • 불필요하거나 영향력이 낮은 변수를 제거
      • 기법
        • 상관분석, SFS(Sequential Feature Selection)
        • Lasso, Ridge: 불필요 변수 가중치를 줄여 영향력을 제거 (주로 금융데이터에서 활용)
                                  예) 가중치 = 0.2 → 0.00000001
    2. 특징 추출 (Feature Extraction)
      • 원래 변수들을 조합·변환해 새로운 변수 생성
      • 예: PCA(주성분분석)로 차원 축소
    3. 특징 학습 (Feature Learning): 모델이 자동으로 특징을 학습 (딥러닝 등)
    4. 특징 변환 (Feature Transformation)
      • 단위 변환: Z-score 표준화, Min-Max 정규화, log 변환(when 정규성 x)
      • 범주형에서 수치형으로 변환: One-hot encoding(ML)  = Dummy coding(variable)(통계)
  • 특징
    • 실제 현업에서는 전처리와 특징 추출이 혼용되지만, 이론적으로는 전처리 후에 진행
    • 잘 설계된 Feature는 모델 성능을 크게 향상시킴

5. 학습과 검증

  • Epoch (에포크)
    • 정의: 전체 학습 데이터를 1회 학습하는 단위
    • 예: 데이터가 10,000개일 때 → 1 Epoch = 10,000개 모두 학습
    • Epoch마다 검증(validation)을 수행하여, 학습과 동시에 현재 성능을 평가 ⇒ 학습 - 평가를 반복
  • 검증 (Validation)
    • 학습에 노출된 적 없는 검증 데이터 셋을 사용하여 검증
    • 모델의 일반화 능력을 확인하는 과정
    • 문제 특성에 따라 다양한 검증 지표가 존재
      • 분류: 정확도, 정밀도, 재현률,
                 AUC Score(분류 모델의 종합적 성능 지표, 실무에서 가장 많이 활용)
      • 회귀: MSE, MAE
  • 데이터셋 분할 이유
    • Train / Validation / Test로 나누는 이유 = 모델 성능을 일반화하기 위해서
    • 학습 데이터와 검증 데이터가 같다면, 기출문제만 보고 시험 보는 것과 같음 → 실제 실력을 검증 불가
    • 새로운 데이터(Test)로 시험을 쳐야 진짜 성능을 확인할 수 있음
  • 성능 관련 개념
    • 과적합(Overfitting): 학습 데이터에는 잘 맞지만 새로운 데이터에는 성능이 떨어짐
    • 과소적합(Underfitting): 학습 데이터조차 잘 학습하지 못한 상태
    • 일반화: 두 극단의 중간, 즉 새로운 데이터에도 안정적으로 동작하는 상태

 

 

 

 

studying:)
@studying:) :: what i studied

studying:) 님의 학습 여정을 기록하는 블로그입니다.

목차