[ML] 분류(Classification)와 회귀(Regression)의 차이

2025. 4. 18. 13:57·머신러닝 & 딥러닝 & AI 맛보며 친해지기
반응형

 

 

 

데이터 분석 또는 머신러닝을 공부하면서 가장 처음 접하게 되는 개념 중 하나가 바로 "분류"와 "회귀"이다.

 

둘 다 입력 데이터로부터 결과를 예측한다는 공통점이 있지만,

 

예측하려는 값이 ‘카테고리’냐, ‘숫자’냐에 따라 적용되는 방식과 모델이 완전히 달라진다.

 

이 글에서는 직접 학습하면서 두 개념의 차이와 예시를 이해한만큼 설명하려고 한다.


분류 (Classification)

개념 :

 

분류는 데이터를 사전에 정의된 그룹(클래스) 중 하나로 나누는 작업이다.

결국에 "이 데이터는 어떤 범주에 속하나요?"라는 질문에 답하는 문제이다.

 

 

예시는 다음과 같다

이메일 분류 스팸/일반 0 또는 1
동물 이미지 분류 고양이/개/토끼 고양이
고객 이탈 예측 이탈/유지 이탈
질병 진단 질병A / 질병B / 정상 질병B
  • 대부분의 의사결정, 위험탐지, 품질 분류 등의 문제에서 사용한다.
  • 맞다(1) 아니다(0) 와 같은 이진분류(binary classification)와
  • 여러 개의 레이블이 있는 다중분류(multi-class classification)가 있다.

 

사용가능 한 알고리즘은 다음과 같다. 최근에는 상위 3개 알고리즘을 사용해보기도 하였다

  • 로지스틱 회귀(Logistic Regression)
  • 의사결정나무(Decision Tree)
  • 랜덤 포레스트(Random Forest)
  • 서포트 벡터 머신(SVM)
  • 나이브 베이즈(Naive Bayes)
  • 신경망 기반 분류 모델 (MLP, CNN 등)

평가 지표

  • Accuracy (정확도)
  • Precision / Recall / F1-score
  • ROC-AUC Score
  • 부트 캠프에서는 혼동 행렬(confusion matrix) 기반 해석도 사용하였다.

회귀 (Regression)

개념 : 

 

회귀는 숫자(연속값)를 예측하는 문제이다.

즉, "이 데이터의 결과 값은 얼마인가요?" 질문에 예측하는 것이다.

 

예시 : 

아파트 가격 예측 가격 (만원) 32,400
온도 예측 내일 기온 (℃) 21.5
매출 예측 다음 달 매출 85,000,000
주식 가격 예측 종가 97,200
  • 가격, 수치, 확률, 비율 등을 예측하는 데 사용한다.
  • 수학적으로는 입력과 출력 사이의 함수 관계를 모델링하는 것이다.

사용 알고리즘은 다음과 같다. (위의 분류모델과는 확실히 다르다. 이제 구분을 할줄 알아야한다.)

  • 선형 회귀(Linear Regression)
  • 의사결정 회귀 트리(Decision Tree Regressor)
  • 랜덤 포레스트 회귀(Random Forest Regressor)
  • 딥러닝 회귀 모델 (Dense NN, LSTM, Transformer 등)
  • 서포트 벡터 회귀(SVR)
  • 릿지/라쏘 회귀 (Ridge/Lasso Regression)

평가 지표

  • MSE (Mean Squared Error)
  • RMSE (Root MSE)
  • MAE (Mean Absolute Error)
  • R² Score (결정계수)

분류와 회귀, 어떻게 구분해야 할까?

 

보다 쉬운 설명을 위해 분류와 회귀를 표로 비교해보았다.

예측 대상 범주형(카테고리) 연속형(수치)
출력 예 고양이/개/토끼, 합격/불합격 32.5도, 1억 2천만원
모델 결과 클래스 레이블 또는 확률 숫자 값
대표 지표 Accuracy, F1-score, AUC RMSE, MAE, R²
활용 분야 진단, 이탈 예측, 품질 검사 수요 예측, 가격 예측, 시간 예측

학습하면서 배운 인사이트

 

나는 하나의 문제를 여러 시각으로 바라보고자 한다.

 

동일한 데이터를 가지고도 문제를 분류/회귀 중 어떤 방식으로 정의하느냐에 따라 접근이 달라질 수 있다.

 

학생 성적 데이터를 예시로 설명을 해보고자 한다.

 

접근 방식 설명 모델 종류

접근 방식 설명 모델 종류
분류 점수로 합격/불합격 예측 분류
회귀 최종 점수(100점 만점) 예측 회귀

 

 

기존에 대학교에서 3학년 때 머신러닝을 들었을 때와 다르게 이제는 쉽게 이해되어가고 있다.

 

사실 대학교에서는 정기고사를 잘 보기위해 외웠다면, 지금은 에이블스쿨을 통해 실제 구현하며 하다보니 쉽게 체득되어가고 있다.

 

다음은 직접 pandas와 keras를 활용하여 분류 과정을 기술해보고자 한다

반응형

'머신러닝 & 딥러닝 & AI 맛보며 친해지기' 카테고리의 다른 글

실시간 객체탐지 YOLO란?  (2) 2025.04.24
RAG(Retrieval-Augmented Generation)와 Vector DB 란?  (3) 2025.04.21
Sequential vs Class: PyTorch 모델 정의 방법과 비교  (1) 2025.04.14
[OpenCV] Ubuntu 22.04 버전에서 OpenCV 4.10.0 GPU 적용하기  (2) 2024.10.20
NVIDIA Tensor RT 에 대해 알아보기  (3) 2023.08.28
'머신러닝 & 딥러닝 & AI 맛보며 친해지기' 카테고리의 다른 글
  • 실시간 객체탐지 YOLO란?
  • RAG(Retrieval-Augmented Generation)와 Vector DB 란?
  • Sequential vs Class: PyTorch 모델 정의 방법과 비교
  • [OpenCV] Ubuntu 22.04 버전에서 OpenCV 4.10.0 GPU 적용하기
BoChan
BoChan
    반응형
  • BoChan
    보람찬 코기의 개발자 블로그
    BoChan
  • 전체
    오늘
    어제
    • 분류 전체보기 (61) N
      • Kubernetes_쿠버네티스 (8)
      • Docker_도커 (6)
      • Public Cloud (3) N
      • 머신러닝 & 딥러닝 & AI 맛보며 친해지기 (10)
      • Develop & Project Review (6)
      • git&github (1)
      • Programming Language (2)
      • Computer Science (CS) (15)
      • 일상&인턴 (10)
      • 논문 리뷰 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • Github
    • Baekjoon Online Judge
  • 공지사항

  • 인기 글

  • 태그

    한국전자통신연구원
    Database
    연구연수생
    TensorRT
    onnx
    머신러닝
    ORACLEDB
    JetsonNano
    AWS
    Yolov7
    대전
    PyTorch
    컴퓨터공학
    ETRI
    FastAPI
    k3s
    python
    k8s
    DB project
    s3fs-fuse
    Docker
    인턴
    ip
    쿠버네티스
    인터넷공학
    jetson
    DB
    딥러닝
    도커
    Rag
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
BoChan
[ML] 분류(Classification)와 회귀(Regression)의 차이
상단으로

티스토리툴바