1. 기계학습 모델 (Model)
ㅇ 데이터 학습을 통해 도출된 규칙 또는 패턴의 체계 모형
- 데이터로부터 학습하여, 규칙 또는 패턴을 발견하고,
- 이를통해, 예측,분류 등의 작업을 수행하는,
- 알고리즘 또는 수학적 구조
ㅇ 수학적으로는, 입력을 받아 특정 처리를 수행해 출력(주로, 확률)을 생성하는 함수로 볼 수 있음
2. 기계학습의 모델화 과정
※ ① 모델 선택 → ② 모델 학습 목표의 수식화 → ③ 모델 학습 (최적화) → ④ 모델 평가
ㅇ ① 모델 선택 (Model Selection)
- 수학적,통계적 관점에서 문제를 구조화하는 단계
. 데이터의 특성과 목표에 따라, 적합한 문제 설정 수행
.. 데이터 특성 : (연속,범주형, 차원 수, 구조적 패턴, 노이즈 등)
.. 목표 : (예측,분류,군집화,추정 등)
. 이 문제 설정에 따라, 사용할 모델 계열을 선택하고,
.. 모델 계열 : (선형/비선형, 확률론적/결정론적, 지도/비지도 학습 등)
. 모델의 구조와 학습 알고리즘을 정하며,
.. 모델 구조 : (모델 형태 및 가정)
.. 학습 알고리즘 : (최적화 방식 등)
. 동시에 중요한 하이퍼파라미터의 후보 범위를 설정하는 과정
.. 하이퍼파라미터 : (모델 복잡도, 규제 항 등)
ㅇ ② 모델 수식화 (Model Specification)
- 모델이 데이터를 얼마나 잘 설명하는지를 수학적으로 정의
. 손실 함수, 목적 함수 등을 통해 모델의 학습 목표를 명확히 표현
ㅇ ③ 모델 훈련, 모델 학습 (Training a Model)
- 모델이 표현할 수 있는 함수 공간 중, 데이터에 가장 적합한 함수를 찾는 과정
. 오차(손실)을 줄이기 위해, 모델 파라미터를 반복적으로 조정하며, 모델을 정교화
ㅇ ④ 모델 평가 (Model Evaluation)
- 학습된 모델의 성능을 다양한 지표로 측정
. 이를통해 모델이 얼마나 좋은 성능을 보이는지를 평가
- 주로, 과적합 여부 확인 : 즉, 일반화 성능 검증 (새로운 데이터에 대한 성능 평가 포함)
. 학습 데이터가 아닌 새로운 데이터에도 잘 동작하는지 평가 (일반화)
* [참고] ☞ 이진분류 (TP,TN,FP,FN 및 모델성능평가기준) 참조
3. 기계학습의 주요 학습 모델
ㅇ 선형 모델 (Linear Model)
- 특징들의 선형조합을 통해 예측하는 함수를 학습함
. {#f(\mathbf{x}) = \mathbf{w}^T\mathbf{x} + b #}
.. 가중치 w와 편향 b를 학습하여 모델을 구성
- 특징
. 각 속성(특징)에 대한 중요도(w)를 잘 보여주며 해석이 용이함 (comprehensibility)
. 많은 비선형 모델들이, 선형 모델을 기반으로 층을 쌓거나 고 차원 공간으로 확장하여 구성됨
ㅇ SVM (Support Vector Machine, 서포트 벡터 머신)
- 결정 경계를 최대 마진으로 설정하여 데이터를 분류하는 모델
. 커널 기법을 통해 비선형 분리도 가능
ㅇ HMM (Hidden Markov Model, 은닉 마르코프 모델)
- 관측되지 않는 숨겨진 상태들 간의 전이 확률을 모델링하여 시계열 데이터를 분석
. 음성 인식, 자연어 처리 등 순차적 데이터에 강점
ㅇ 신경망 (Artificial Neural Network, ANN)
- 인간의 신경 구조를 모방한 구조로, 다층 퍼셉트론 등의 형태로 구성
. 비선형 문제를 처리할 수 있으며, 딥러닝의 기반이 되는 모델
ㅇ 혼합 모델 (Mixture Model)
- 여러 개의 확률 분포를 조합하여 복잡한 데이터 구조를 표현
. 例) 가우시안 혼합 모델 (GMM, Gaussian Mixture Model)
4. 기계학습의 주요 모델 평가 방법
ㅇ 데이터 분할 기반 평가 방법
* 통상, 데이터 세트를 학습 데이터와 평가 데이터로 구분하여, 학습 및 평가 수행
- Hold-out (Train/Test Split) 방법
. 데이터를 훈련용 / 테스트용 2가지로 분리
. 가장 단순하고 빠름
. 데이터가 충분히 클 때 적합
- Train / Validation / Test Split 빙법
. 훈련 / 검증 / 테스트 3분할
. 검증 데이터는 하이퍼파라미터 튜닝용
. 테스트 데이터는 최종 성능 평가용
. 실무에서 가장 기본적인 구조
- 교차검증 (Cross Validation) 방법
. K-Fold Cross Validation (K-분할 교차 검증법)
.. 데이터를 K개로 나눠 번갈아가며 학습/평가
.. 평균 성능을 사용
.. 데이터가 적을 때 매우 중요
. Stratified K-Fold
.. 클래스 비율을 유지
.. 불균형 데이터에서 필수
. Leave-One-Out (LOOCV)
.. 데이터 1개만 남기고 모두 학습
.. 계산 비용 매우 큼
. 부트스트랩 (Bootstrap)
.. 복원추출 방식으로 여러 번 학습
.. 통계적 신뢰구간 추정에 유리
ㅇ 성능 평가 지표에 의한 방법
- 회귀 (Regression)
. MSE, RMSE, MAE, R2(결정계수)
- 이진 분류 (Binary Classification)
. Accuracy = (TP + TN) / 전체
. Precision = TP / (TP + FP)
. Recall (Sensitivity) = TP / (TP + FN)
. Specificity = TN / (TN + FP)
. F1-score
. ROC Curve
. AUC
- 다중 분류
. Macro / Micro / Weighted F1
. Confusion Matrix
. Top-k Accuracy
- 군집 (Clustering)
. Silhouette Score
. Davies–Bouldin Index
. ARI (정답 라벨 있는 경우)