머신러닝 알고리즘 종류 정리
머신러닝 알고리즘 | 회귀·분류·군집화부터 강화학습까지, 문제 유형별 알고리즘 한눈에 정리
2026.04.10
0. 시리즈
| 편 | 제목 |
|---|---|
| 1편 | AI, 머신러닝, 딥러닝 차이점 개념 정리 |
| 2편⬅️ | 머신러닝 알고리즘 종류 정리 |
| 3편 | 딥러닝 신경망 구조 정리 (CNN, RNN, Transformer) |
| 4편 | 생성형 AI란? GPT, DALL·E, Stable Diffusion 비교 |
| 5편 | 전이 학습이란? 실전 파인튜닝 가이드 |
1. 들어가며
1.1 이 글은 누가 읽으면 좋을까?
[1편: AI / 머신러닝 / 딥러닝 개념 총정리]에서 머신러닝이 "데이터를 보여주면 컴퓨터가 스스로 패턴을 학습하는 방식" 이라는 것을 배웠습니다. 이번 2편에서는 한 발 더 나아가 "그래서 어떤 방법으로 학습하는데?" 에 답합니다. 머신러닝 알고리즘의 종류와 각각의 원리, 실생활 예시를 처음부터 끝까지 정리해드립니다.
1.2 알고리즘이란 무엇인가? — "문제를 푸는 방법의 레시피"
알고리즘 이란 어떤 문제를 풀기 위한 단계별 절차나 규칙의 집합 입니다. 요리 레시피처럼 "이 순서대로 하면 이 결과가 나온다"는 방법론입니다. 머신러닝 알고리즘은 데이터를 입력받아 패턴을 찾고 예측값을 출력하는 수학적 절차 입니다. 문제의 종류(숫자 예측인지, 분류인지, 그룹 나누기인지)에 따라 적합한 알고리즘이 다릅니다.
1.3 이 글을 읽으면 알 수 있는 것
- 머신러닝 학습 방식 3가지 (지도 / 비지도 / 강화학습)
- 각 방식에 속하는 주요 알고리즘의 원리와 특징
- 내 문제에 어떤 알고리즘을 써야 하는지 선택 기준
2. 머신러닝 학습 방식 — 3가지 유형 복습
알고리즘을 이해하기 전에 어떤 방식으로 학습하느냐 를 먼저 잡아야 합니다.
| 학습 방식 | 핵심 특징 | 비유 |
|---|---|---|
| 지도 학습 | 정답이 있는 데이터로 학습 | 정답지 있는 시험 공부 |
| 비지도 학습 | 정답 없이 패턴 스스로 발견 | 정답지 없이 스스로 분류 |
| 강화 학습 | 시행착오로 보상 최대화 | 게임에서 점수 올리며 학습 |
아래에서 각 학습 방식에 속하는 알고리즘을 하나씩 자세히 살펴봅니다.
3. 지도 학습 알고리즘
정답(레이블)이 있는 데이터를 학습해 새로운 데이터의 결과를 예측합니다. 크게 회귀 와 분류 두 가지로 나뉩니다.
3-1. 회귀 (Regression) — 숫자를 예측한다
회귀란?
결과값이 연속적인 숫자 일 때 사용합니다. "이 집의 가격이 얼마일까?", "내일 기온이 몇 도일까?"처럼 특정 값을 예측하는 문제가 여기에 해당합니다.
선형 회귀 (Linear Regression)
가장 기본적인 회귀 알고리즘입니다. 데이터의 관계를 직선(y = wx + b) 으로 표현해 예측합니다.
예시: 집 크기(x)와 집값(y)의 관계를 직선으로 표현
→ 새 집의 크기를 넣으면 가격을 예측
- ✅ 장점: 구조가 단순하고 해석이 쉬움
- ❌ 단점: 직선으로 표현할 수 없는 복잡한 관계는 표현 어려움
다항 회귀 (Polynomial Regression)
선형 회귀의 한계를 극복한 버전입니다. 관계를 직선이 아닌 곡선 으로 표현해 더 복잡한 패턴도 학습합니다.
🎯 실생활 예시
- 집값 예측 (크기, 층수, 위치 기반)
- 기온·강수량 예측
- 주가 흐름 예측
3-2. 분류 (Classification) — 카테고리를 나눈다
분류란?
결과값이 특정 카테고리 중 하나일 때 사용합니다. "이 이메일은 스팸인가 아닌가?", "이 사진은 고양이인가 개인가?"처럼 범주를 나누는 문제입니다.
로지스틱 회귀 (Logistic Regression)
이름은 회귀지만 실제로는 분류 알고리즘 입니다. 결과값을 0~1 사이의 확률로 변환해 어느 카테고리에 속하는지 판별합니다.
예시: 이메일이 스팸일 확률이 0.87 → 스팸으로 분류
이메일이 스팸일 확률이 0.13 → 정상 메일로 분류
- ✅ 장점: 확률값으로 출력되어 해석이 직관적
- ❌ 단점: 선형적이지 않은 복잡한 관계 처리에 한계
결정 트리 (Decision Tree)
데이터를 스무고개 방식 으로 분류합니다. "나이가 30 이상인가? → Yes: 다음 질문, No: 다음 질문" 방식으로 트리(나무) 구조를 형성합니다.
예시:
[나이 >= 30?]
├── Yes → [소득 >= 500만?]
│ ├── Yes → 대출 승인
│ └── No → 대출 거절
└── No → 대출 거절
- ✅ 장점: 학습 과정이 눈에 보여 해석이 쉬움, 전처리 거의 불필요
- ❌ 단점: 훈련 데이터에 과도하게 맞춰지는 과적합(Overfitting) 문제 발생 가능
랜덤 포레스트 (Random Forest)
결정 트리 하나의 단점(과적합)을 보완하기 위해 수십~수백 개의 결정 트리를 동시에 만들어 다수결로 최종 예측 하는 앙상블 방법입니다.
비유: 한 명의 전문가보다 100명의 전문가 의견을 모으는 것
- ✅ 장점: 과적합에 강하고 성능이 안정적
- ❌ 단점: 트리가 많아 모델 해석이 어려움, 연산이 무거움
SVM (Support Vector Machine)
데이터를 두 그룹으로 나누는 최적의 경계선(결정 경계) 을 찾는 알고리즘입니다. 두 그룹 사이의 여백(margin)을 최대화하는 선을 구합니다.
비유: 두 팀 사이에 가장 공평한 중간선 긋기
- ✅ 장점: 복잡한 분류 문제에서도 강한 성능
- ❌ 단점: 데이터가 많아지면 학습 속도가 느려짐
KNN (K-Nearest Neighbor, K-최근접 이웃)
새로운 데이터가 들어왔을 때 가장 가까운 K개의 이웃 데이터를 보고 다수결로 분류 하는 가장 직관적인 알고리즘입니다.
예시: K=3일 때, 새 데이터 주변 이웃 3개 중
고양이 2개, 개 1개 → 고양이로 분류
- ✅ 장점: 원리가 매우 직관적이고 구현이 단순
- ❌ 단점: 데이터가 많을수록 예측 속도가 급격히 느려짐
🎯 실생활 예시
- 스팸 메일 분류 (로지스틱 회귀, 랜덤 포레스트)
- 암 진단 — 악성/양성 판별 (SVM)
- 대출 승인/거절 (결정 트리)
- 상품 추천 — 비슷한 취향의 사용자 찾기 (KNN)
4. 비지도 학습 알고리즘
정답 레이블 없이 데이터 안에서 스스로 구조와 패턴을 발견 합니다.
4-1. 군집화 (Clustering) — 비슷한 것끼리 묶는다
군집화란?
정답 없이 데이터를 비슷한 것끼리 자동으로 그룹화 하는 기법입니다. 어떤 그룹이 있는지 사람이 미리 정의하지 않아도 됩니다.
K-Means 클러스터링
가장 많이 쓰이는 군집화 알고리즘입니다. K개의 중심점(centroid)을 기준으로 가장 가까운 데이터끼리 묶는 방식입니다.
예시: K=3으로 설정
→ 고객 데이터를 3그룹으로 자동 분류
→ VIP 고객 / 일반 고객 / 이탈 위험 고객
- ✅ 장점: 구현이 단순하고 빠름
- ❌ 단점: K값(그룹 수)을 사람이 미리 지정해야 함
DBSCAN
밀도(density) 기반 군집화 알고리즘입니다. 데이터가 밀집된 영역을 하나의 군집으로 보고, 밀도가 낮은 곳에 있는 데이터는 이상치(outlier) 로 처리합니다.
- ✅ 장점: 그룹 수를 미리 지정할 필요 없음, 이상치 자동 감지
- ❌ 단점: 밀도 기준 파라미터 설정이 까다로움
🎯 실생활 예시
- 고객 세분화 (VIP / 일반 / 이탈 예상 고객)
- 뉴스 토픽 자동 분류
- 이상 거래 탐지 (DBSCAN)
4-2. 차원 축소 (Dimensionality Reduction) — 복잡한 데이터를 압축한다
차원 축소란?
수십~수백 개의 특징(변수)으로 이루어진 고차원 데이터를 핵심 정보만 남기고 압축 하는 기법입니다. 데이터 시각화나 모델 성능 개선에 사용됩니다.
PCA (주성분 분석, Principal Component Analysis)
가장 대표적인 차원 축소 알고리즘입니다. 데이터의 분산(정보량)이 가장 큰 방향을 주성분 으로 잡아 데이터를 압축합니다.
예시: 100개 변수로 이루어진 고객 데이터
→ PCA 적용
→ 2~3개 주성분으로 압축해 2D/3D로 시각화
- ✅ 장점: 노이즈 제거, 시각화 용이, 연산량 감소
- ❌ 단점: 압축 후 각 성분의 의미 해석이 어려움
t-SNE
고차원 데이터를 2차원 또는 3차원으로 시각화 하는 데 특화된 알고리즘입니다. PCA보다 비선형 패턴을 더 잘 보존합니다.
🎯 실생활 예시
- 고객 데이터 시각화
- 이미지 데이터 압축
- 텍스트 데이터 분석 전처리
4-3. 연관 규칙 학습 (Association Rule) — 함께 발생하는 패턴을 찾는다
연관 규칙이란?
대량의 데이터에서 "A가 있으면 B도 있다" 는 패턴을 찾는 기법입니다. 쇼핑몰에서 "기저귀를 산 사람은 맥주도 산다"는 유명한 예시가 대표적입니다.
Apriori 알고리즘
연관 규칙 학습의 대표 알고리즘입니다. 지지도(Support), 신뢰도(Confidence), 향상도(Lift) 세 가지 척도로 규칙의 강도를 측정합니다.
예시: 편의점 구매 데이터 분석
→ "삼각김밥을 산 고객의 73%가 음료수도 구매"
→ 삼각김밥 옆에 음료수 진열 → 매출 상승
- ✅ 장점: 숨겨진 패턴 발굴에 탁월
- ❌ 단점: 데이터가 많을수록 연산량이 폭발적으로 증가
🎯 실생활 예시
- 온라인 쇼핑 장바구니 분석
- 넷플릭스·유튜브 추천 시스템
- 병원 진단 패턴 분석
5. 강화 학습 알고리즘 — 보상과 처벌로 학습한다
5.1 강화 학습이란?
강화 학습은 에이전트(Agent)가 환경(Environment)과 상호작용하며 보상(Reward)을 최대화하는 방향으로 행동(Action) 정책(Policy)을 스스로 학습 하는 방식입니다.
비유: 강아지 훈련
→ 앉아! 명령 후 앉으면 간식(보상) 🎉
→ 앉지 않으면 간식 없음(처벌) 😐
→ 강아지는 간식을 얻기 위한 행동을 점점 학습
5.2 핵심 용어 정리
| 용어 | 설명 | 예시 (게임 AI) |
|---|---|---|
| 에이전트 | 학습하고 행동하는 주체 | 게임 캐릭터 |
| 환경 | 에이전트가 상호작용하는 세계 | 게임 맵 |
| 행동 | 에이전트가 선택하는 행동 | 이동, 공격 |
| 보상 | 행동 결과로 받는 피드백 | 점수 획득, 목숨 잃음 |
| 정책 | 어떤 상황에서 어떤 행동을 할지 기준 | 전략 |
5.3 Q-Learning
강화 학습의 대표 알고리즘입니다. 각 상태(state)에서 각 행동(action)의 기대 보상값(Q값) 을 계산하고, Q값이 가장 높은 행동을 선택하도록 학습합니다.
비유: 미로 탈출 로봇이 시행착오를 반복하며
"이 갈림길에서 왼쪽이 더 빨리 출구에 도달한다"는
경험치 테이블을 쌓아가는 과정
- ✅ 장점: 환경 모델 없이도 학습 가능
- ❌ 단점: 상태와 행동의 경우의 수가 많으면 학습이 느림
🎯 실생활 예시
- 구글 알파고 (바둑)
- 게임 AI (스타크래프트, 체스)
- 자율주행 차량의 주행 정책 학습
- 로봇 팔 제어
6. 준지도 학습 (Semi-supervised Learning)
6.1 준지도 학습이란?
지도 학습과 비지도 학습의 중간 방식입니다. 전체 데이터 중 일부만 레이블(정답)이 있고, 나머지는 레이블이 없는 데이터 를 함께 사용해 학습합니다.
6.2 왜 필요한가? — 현실에서 레이블은 비싸다
현실에서 데이터에 정답을 붙이는 작업(레이블링)은 시간과 비용이 매우 많이 듭니다. 예를 들어, X-ray 사진 수만 장에 "정상/암" 레이블을 붙이려면 전문 의료진이 직접 판독해야 합니다. 준지도 학습은 레이블이 있는 소수의 데이터와 레이블이 없는 대량의 데이터를 함께 활용해 비용을 줄이면서도 높은 성능을 유지 합니다.
🎯 실생활 예시
- 의료 영상 분석 (소수의 전문가 판독 데이터 + 대량의 미판독 데이터)
- 음성 인식 모델 학습
- 반자동 이미지 분류 시스템
7. 알고리즘 선택 가이드
7.1 내 문제에 맞는 알고리즘 어떻게 고를까?
알고리즘 선택은 "내 데이터에 정답이 있는가?" 와 "결과가 숫자인가, 카테고리인가?" 두 가지 질문으로 시작합니다.
📌 알고리즘 선택 플로우
정답(레이블)이 있다?
├── Yes (지도 학습)
│ ├── 결과가 숫자? → 회귀 (선형 회귀, 다항 회귀)
│ └── 결과가 카테고리? → 분류 (결정 트리, 랜덤 포레스트, SVM, KNN)
│
└── No (비지도 학습)
├── 그룹으로 묶고 싶다? → 군집화 (K-Means, DBSCAN)
├── 데이터를 압축·시각화? → 차원 축소 (PCA, t-SNE)
└── 함께 나타나는 패턴 찾기? → 연관 규칙 (Apriori)
시행착오로 최적 행동 학습?
└── 강화 학습 (Q-Learning)
7.2 데이터 상황별 추천 알고리즘 정리표
| 문제 유형 | 데이터 특징 | 추천 알고리즘 |
|---|---|---|
| 숫자 예측 | 연속형 수치, 레이블 있음 | 선형 회귀, 랜덤 포레스트 |
| 이진 분류 | 두 가지 결과, 레이블 있음 | 로지스틱 회귀, SVM |
| 다중 분류 | 여러 카테고리, 레이블 있음 | 결정 트리, 랜덤 포레스트, KNN |
| 그룹 나누기 | 레이블 없음 | K-Means, DBSCAN |
| 패턴 탐색 | 거래·구매 데이터 | Apriori |
| 데이터 시각화 | 고차원 데이터 | PCA, t-SNE |
| 순서 결정 | 시뮬레이션 환경 | Q-Learning |
8. 최종 정리
8.1 전체 알고리즘 한눈에 보기
머신러닝 알고리즘
│
├── 지도 학습
│ ├── 회귀: 선형 회귀, 다항 회귀
│ └── 분류: 로지스틱 회귀, 결정 트리, 랜덤 포레스트, SVM, KNN
│
├── 비지도 학습
│ ├── 군집화: K-Means, DBSCAN
│ ├── 차원 축소: PCA, t-SNE
│ └── 연관 규칙: Apriori
│
├── 강화 학습: Q-Learning
│
└── 준지도 학습 (지도 + 비지도 혼합)
8.2 머신러닝 vs 딥러닝 — 언제 머신러닝을 써야 할까?
딥러닝이 강력하다고 해서 항상 딥러닝이 정답은 아닙니다. 아래 상황에서는 머신러닝 알고리즘이 더 적합 합니다.
- 데이터 양이 많지 않을 때 (수천~수만 건)
- 모델의 의사결정 과정을 설명해야 할 때 (금융, 의료)
- GPU 없이 빠른 학습이 필요할 때
- 정형 데이터(표, 엑셀 형태)를 다룰 때
반면 이미지, 음성, 텍스트처럼 비정형 데이터 나 초대규모 데이터를 다룰 때는 딥러닝이 압도적으로 유리합니다.