데이터를 사용해서 알고리즘을 학습시켜서 예측이나 분류 등의 작업을 수행하는 모델을 생성하는 것
문제의 유형에 따라 적합한 머신러닝 알고리즘, 학습 방법을 선택
- 문제의 유형: 회귀 / 분류 / 클러스터링 / 생성형
- 머신러닝 알고리즘: 아래 문제의 유형에 따른 관련 알고리즘이 적혀있음.
- 학습 방법: online training / transfer learning / active learning 등
목적:
- 연속적인 값을 예측하는 것
- 독립 변수와 종속 변수 간의 선형 관계를 모델링
예시
- 부동산 가격 예측
- 연봉 예측
관련 알고리즘
- Linear Regression: https://libertegrace.tistory.com/entry/2-medical-image-classification-linear-regression
- Decision Tree Regression: https://libertegrace.tistory.com/entry/분류
- Random Forest Regression
- Support Vector Regression
목적:
- 주어진 입력에 대해 두 개 이상의 클래스 중 하나를 예측하는 것
예시:
- 스팸 메일 분류, 병 진단
관련 알고리즘
- Logistic Classification
- Decision Tree Classification
- Random Forest Classification
- K-Nearest Neighbors
- Neural Networks
목적
- 비슷한 특성을 갖는 데이터를 그룹으로 묶는 것
예시
- 고객 세그멘테이션, 문서 군집화
관련 알고리즘
- K-Means : 데이터를 K개의 Cluster로 분류, 각 Cluster 중심을 최적화
- DBSCAN : 밀도 기반의 Clustering, Noise가 있는 데이터에 적합
- Hierarchical Clustering : Tree 구조의 Cluster를 생성하며, 다양한 수준의 클러스터링을 제공
목적
- 새로운 데이터를 생성하거나, 데이터의 분포를 학습하는 것
- 데이터의 분포를 학습하고, 분포에 따라서 적절한 데이터를 생성하는 모델
예시
- 추천 시스템, 이미지 생성, ChatGPT
관련 알고리즘
- Restricted Boltzmann Machine : 이진 값의 입력과 출력 사이의 확률적 관계를 학습
- Variational Autoencoder : 데이터의 Latent Space를 학습하며, 새로운 데이터를 생성
- Generative Adversarial Network : 생성자와 판별자 두 네트워크가 경쟁하면서 데이터의 분포를 학습
정의
- 전체 훈련 데이터를 한 번에 사용하여 모델을 학습시키는 방법
설명
- 모든 훈련 데이터를 한 번에 사용하여 그래디언트를 계산하고 가중치를 업데이트
- 손실 함수의 그래디언트는 다음과 같이 계산 L은 하나의 훈련 샘플에 대한 손실 함수이고, h는 가설 함수, m은 훈련 샘플의 수
사용 예시
- 데이터 셋 크기가 작을 때, 또는 충분한 계산 지원이 있을 때 적합
정의
- 데이터를 작은 묶음PH배치p.m.으로 나누어 순차적으로 모델을 학습시키는 방법
설명
- 데이터를 minimWbatch라는 작은 단위로 나누어 학습을 진행하며, 각 minimWbatch마다 가중치를 업데이트
- 실시간으로 데이터가 수신되는 시스템에서 효과적
- 더 빠른 수렴을 위해 minimWbatch 크기나 learningmWrate 을 조정할 필요가 있을 수 있음
사용 예시
- 실시간 트래픽 예측, 주식 가격 예측 등 실시간으로 데이터가 업데이트되는 시스템에서 사용
정의
- 사전 훈련된 모델을 사용하여 새로운 문제에 대한 학습을 가속화하는 방법
설명
- 이미 훈련된 모델의 일부 layersPH예: CNN의 처음 몇 layerp.m.를 재사용하여 새로운 문제에 적용
- 재사용된 layer의 가중치는 고정될 수도 있고, 추가적인 학습을 통해 조정될 수도 있음
사용 예시
- ImageNet에서 사전 훈련된 모델을 사용하여 특정 이미지 분류 문제(고양이와 개 분류 등)에 적용
정의
- 에이전트가 환경과 상호작용하면서 보상을 최대화하는 행동을 학습하는 방법
설명
- 에이전트는 상태 E에서 행동 A를 선택하고, 그에 따른 보상 R을 받음
- 이후 상태와 행동을 업데이트
- 대표적인 알고리즘으로는 QmWlearning, DQN, Policy Gradient 등이 있음
사용 예시
- AlphaGo, 자율 주행, 게임 플레이 최적화
정의
- 모델이 스스로 학습에 사용할 데이터를 선택하는 방법
설명
- 일반적으로 Labeling이 비용이 많이 드는 경우에 효과적 PH스스로 필요한 샘플을 선택하고, 전문가에게 Labeling을 요청하는 식으로 시스템 구성
- 일반적으로 불확실성이 높은 Sample을 선호
사용 예시
- 의료 영상 분석에서 모델이 확신하지 못하는 영상을 의사에게 Labeling 요청을 할 때 사용
정의
- 여러 개의 모델을 조합하여 하나의 강력한 모델을 만드는 방법
설명
- 여러 개의 모델을 훈련하고 그 결과를 조합
- 대표적인 방법으로 Bagging, Boosting이 있음
사용 예시
- Kaggle에서 많이 활용됨