작년 이맘때쯤 수업을 들으면서 머신러닝을 처음 배우면서 관련 개념과 용어가 무슨 소리인지 아예 몰랐다.
당시 GPT를 이용해 뭔가 어떻게든 이해하기 위하여 정리도 해봤지만 솔직히 뭐가 뭔지 하나도 몰랐다.
정리한 것을 읽어도 한 문장마다 한 단어에는 꼭 걸려 넘어졌다.
예를 들어 Lasso Regression 에 대한 아래와 같은 설명을 읽을 때,
" L1 정규화를 사용하여 가중치 희소성을 유도하는 회귀다. "
L1은 무엇인지 정규화는 수학에서의 그 정규화가 맞는지 가중치 희소성은 무슨 말인지 회귀의 구체적 정의는 무엇인지 그려지지 않았다.
그러다 1년이 흘렀고 오늘 우연히 예전에 써둔 글을 다시 봤다.
이제는 왜 그렇게 묶이고 어떤 차이가 있는지 보인다. 문장을 읽을 때 머릿속에 무언가가 그려지고
개념을 아는 게 아니라 '구조'를 이해한 것 같다.
그게 너무 신기하고 좀 기뻐서 예전에 복붙해놓고도 몰랐던 알고리즘들을
지금의 나 기준에서 다시 GPT(초안) + Gemini Deep Research를 이용하여 정리해보기로 했다.
다음 1년 아니 이번엔 더 짧게
6개월 후에는 이것들 모두가 빠짐없이 머릿속에 그려지기를 바란다.
I. 머신러닝 기초 및 학습 패러다임 (Fundamentals & Learning Paradigms)
A. 기본 개념 (Basic Concepts)
- 머신러닝 (Machine Learning): 명시적인 프로그래밍 없이 데이터로부터 학습하여 패턴을 인식하고 예측 또는 결정을 내리는 시스템을 구축하는 인공지능의 한 분야이다.
- 데이터 (Data), 특징 (Features), 레이블 (Labels): 학습의 기반이 되는 정보(데이터), 모델의 입력으로 사용되는 개별 속성(특징), 지도 학습에서 예측 대상이 되는 정답(레이블)이다.
- 모델 (Model): 데이터로부터 학습된 패턴의 수학적 표현으로, 입력을 받아 출력을 생성한다.
- 학습/훈련 (Learning/Training): 데이터를 사용하여 모델 파라미터를 조정하는 과정이다.
- 추론/예측 (Inference/Prediction): 학습된 모델을 사용하여 새로운 데이터에 대한 결과를 생성하는 과정이다.
- 과적합 (Overfitting) / 과소적합 (Underfitting): 모델이 훈련 데이터에만 너무 잘 맞거나(과적합), 훈련 데이터의 패턴조차 제대로 학습하지 못하는(과소적합) 현상이다.
- 편향-분산 트레이드오프 (Bias-Variance Tradeoff): 모델의 예측 오차는 편향(모델의 단순성으로 인한 오류)과 분산(데이터 변화에 대한 민감성) 요소로 나뉘며, 이 둘 사이의 균형을 맞추는 것이 중요하다. 일반적으로 복잡도를 높이면 편향은 줄고 분산은 늘어난다.
B. 학습 패러다임 (Learning Paradigms)
- 지도 학습 (Supervised Learning)
- 정의: 정답(레이블)이 주어진 데이터를 바탕으로 예측 모델을 학습하는 방법이다.
- 주요 과제:
- 분류 (Classification): 데이터를 미리 정의된 범주로 할당한다.
- 회귀 (Regression): 연속적인 수치 값을 예측한다.
- 관련 알고리즘 예시 (세부 내용은 II장에서 다룸): Logistic Regression, Softmax Regression, LDA, SVM, Optimal Bayes Classifier, Minimum Distance Classifier, KNN, Decision Tree, Neural Network (분류/회귀 적용 시), Linear Regression, Polynomial Regression, Ridge/Lasso/Elastic Net Regression, SVR, Gaussian Process Regression.
- 비지도 학습 (Unsupervised Learning)
- 정의: 정답 없이 데이터의 구조나 패턴을 스스로 학습하는 방법이다.
- 주요 과제 및 관련 알고리즘:
- 군집화 (Clustering): 유사한 데이터 포인트를 그룹으로 묶는다.
- K-Means: 데이터를 k개의 중심점 기준으로 클러스터링한다.
- Hierarchical Clustering: 데이터를 유사도 기반 트리 구조로 병합 또는 분할한다.
- DBSCAN: 밀도 기반 클러스터링으로, 잡음 데이터에도 강건하다.
- Gaussian Mixture Model (GMM): 데이터가 여러 정규분포의 혼합으로 구성되었다고 가정하고 클러스터링한다.
- Spectral Clustering: 그래프 라플라시안의 고유벡터를 사용한 클러스터링이다.
- 차원 축소 (Dimensionality Reduction): 특징의 수를 줄인다. (세부 내용은 II.H장에서 다룸)
- PCA: 최대 분산 방향을 기준으로 축을 회전시켜 데이터를 투영한다.
- ICA: 통계적으로 독립인 성분을 추출하는 기법이다.
- t-SNE: 조건부 확률 기반으로 이웃 정보를 보존하며 시각화한다.
- UMAP: 저차원 위상 구조를 보존하도록 임베딩한다.
- Autoencoder 계열 (표현 학습과도 연관): 입력을 재구성하면서 중간 표현(잠재 공간)을 학습한다. (세부 내용은 II.H장에서 다룸)
- 밀도 추정 (Density Estimation): 데이터의 확률 분포를 추정한다.
- Kernel Density Estimation (KDE): 커널 함수로 확률 밀도함수를 추정한다.
- Parzen Window: 고전 KDE 방식으로, 슬라이딩 윈도우 기반 밀도 추정이다.
- 군집화 (Clustering): 유사한 데이터 포인트를 그룹으로 묶는다.
- 강화 학습 (Reinforcement Learning)
- 정의: 에이전트가 환경과 상호작용하며 보상을 극대화하는 정책(행동 전략)을 학습하는 방식이다.
- 주요 접근법 및 관련 알고리즘:
- 값 기반 (Value-Based): 상태 또는 상태-행동 쌍의 가치를 학습한다.
- Q-Learning: Q값을 반복적으로 갱신해 최적 정책을 찾는다.
- Deep Q Network (DQN): Q-Learning에 신경망을 적용하여 고차원 상태를 처리한다.
- Double Q-Learning: Q-Learning의 과추정을 줄인다.
- SARSA: on-policy 방식의 Q-learning이다.
- Rainbow DQN: 여러 개선 기법을 통합한 DQN 구조이다.
- 정책 기반 (Policy-Based): 정책을 직접 학습하고 최적화한다.
- REINFORCE: 기대 보상을 최대화하도록 정책 확률을 직접 업데이트한다.
- Policy Gradient: 정책에 직접 기울기를 계산하여 학습한다.
- Proximal Policy Optimization (PPO): KL 발산을 제한해 안정적으로 정책을 업데이트한다.
- Trust Region Policy Optimization (TRPO): Trust Region 안에서만 정책을 업데이트한다.
- 액터-크리틱 (Actor-Critic): 값 함수(크리틱)와 정책(액터)을 함께 학습한다.
- A2C, A3C: 액터와 크리틱을 분리해 서로를 보완하며 학습한다.
- Deep Deterministic Policy Gradient (DDPG): 연속 액션을 다루는 deterministic 정책 기반 알고리즘이다.
- Twin Delayed DDPG (TD3): DDPG의 overestimation 문제를 개선한 구조이다.
- Soft Actor-Critic (SAC): stochastic 정책을 사용하며 entropy 보상을 포함한다.
- 모델 기반 (Model-Based): 환경의 동작 방식(모델)을 학습하거나 사용하여 계획한다.
- MuZero: 환경 모델 없이도 상태 전이와 보상을 예측하며 학습한다.
- Dreamer: 상태-행동 예측을 위한 모델을 학습해 시뮬레이션으로 탐색을 효율화한다.
- 심화 기술 (Advanced Techniques): (세부 내용은 V.E장에서 다룸)
- 값 기반 (Value-Based): 상태 또는 상태-행동 쌍의 가치를 학습한다.
- 준지도 학습 (Semi-Supervised Learning)
- 정의: 라벨이 있는 데이터와 없는 데이터를 함께 활용하여 학습한다.
- 관련 기법:
- Label Propagation: 그래프 기반으로 라벨을 전파한다.
- Pseudo-Labeling: 예측 결과를 임시 라벨로 사용해 비라벨 데이터를 학습에 포함시킨다.
- FixMatch: 강한 증강에 대해 confident prediction만 반영하는 기법이다.
- 자기지도 학습 (Self-Supervised Learning)
- 정의: 데이터 내부의 특성에서 스스로 레이블을 생성해 학습하는 방법 (비지도 학습의 한 형태). 주로 표현 학습(Representation Learning)에 사용된다.
- 관련 기법:
- SimCLR, BYOL: 대조 학습(Contrastive Learning) 기반으로 표현을 학습한다.
- MAE, SimMIM: 입력의 일부를 마스크하고 복원하는 과제를 통해 표현을 학습한다.
- DINO, DINOv2: 예측 대상의 다양한 증강본을 통해 표현을 정렬한다.
II. 주요 머신러닝 모델 및 알고리즘 (Key ML Models & Algorithms)
A. 모델 분류 기준 (Model Classification Criteria)
- 파라메트릭 모델 (Parametric Models)
- 정의: 모델 구조가 고정되어 있으며, 학습을 통해 정해진 수의 파라미터만 학습한다.
- 예시: Linear Regression, Logistic Regression, LDA, Naive Bayes, Neural Network (구조 고정 시), Transformer, Diffusion Model (구조 고정 시).
- 비파라메트릭 모델 (Non-Parametric Models)
- 정의: 모델 복잡도가 데이터 크기에 따라 유동적으로 증가하며, 전체 데이터가 모델의 일부가 될 수 있다.
- 예시: KNN, Decision Tree, Random Forest, KDE, Parzen Window.
- 준파라메트릭 모델 (Semi-Parametric Models)
- 정의: 모델 일부는 파라메트릭, 일부는 비파라메트릭 특성을 가진다.
- 예시: Gaussian Process, Generalized Additive Model (GAM), Cox Model (생존 분석).
B. 선형 모델 (Linear Models)
- Linear Regression: 입력과 출력 사이의 선형 관계를 추정하는 회귀 모델이다.
- Polynomial Regression: 입력 변수의 다항식을 사용해 비선형 관계를 모델링한다 (선형 모델의 확장).
- Logistic Regression: 입력 변수의 선형 조합을 통해 이진 분류 클래스 확률을 예측한다.
- Softmax Regression: 다중 클래스 분류를 위한 확장형 선형 모델이다. 출력층에 Softmax 함수를 적용해 확률 분포를 만든다.
- Linear Discriminant Analysis (LDA): 클래스 간 분산을 최대화하고 클래스 내 분산을 최소화하는 선형 판별 분류 모델이다. (차원 축소 기법으로도 사용됨 - II.H 참고)
- Ridge Regression: L2 정규화를 사용하여 과적합을 줄이는 선형 회귀다.
- Lasso Regression: L1 정규화를 사용하여 가중치 희소성을 유도하는 회귀다.
- Elastic Net: L1과 L2 정규화를 혼합하여 사용하는 회귀 방법이다.
C. 결정 트리 및 앙상블 (Decision Trees & Ensembles)
- Decision Tree: 데이터 특성을 기반으로 조건 분기를 반복하여 예측하는 나무 구조 모델이다.
- 앙상블 학습 (Ensemble Learning): 여러 개의 약한 모델을 조합해 더 강한 모델을 만든다.
- 배깅 (Bagging): 독립적인 모델들을 병렬로 학습시켜 결합한다 (분산 감소 효과).
- Random Forest: 다수의 결정 트리를 훈련 데이터의 bootstrap 샘플 및 특징 서브셋으로 학습하여 평균/다수결로 예측한다.
- Extra Trees (Extremely Randomized Trees): 트리 구조 생성 시 분기점과 특징을 더욱 무작위화하여 편차를 줄인다.
- 부스팅 (Boosting): 모델들을 순차적으로 학습하며 이전 모델의 오류를 보정한다 (편향 감소 효과).
- AdaBoost (Adaptive Boosting): 이전 모델이 틀린 샘플에 가중치를 부여해 다음 모델을 학습시킨다.
- Gradient Boosting Machines (GBM): 이전 모델의 잔여 오차(gradient)를 학습하여 점진적으로 성능을 개선한다.
- XGBoost: 정규화와 가지치기, 병렬 처리 등을 추가하여 성능과 속도를 높인 GBM 기법이다.
- LightGBM: 히스토그램 기반 분할과 리프 중심 트리 성장으로 학습 속도가 매우 빠르다.
- CatBoost: 범주형 변수 처리에 특화되어 있으며, 과적합 방지 기술이 내장되어 있다.
- 스태킹 / 보팅 / 블렌딩 (Stacking / Voting / Blending): 여러 다른 모델들의 예측을 결합하는 방식이다.
- Voting: 각 모델의 예측을 다수결(분류) 또는 평균(회귀)으로 결합한다.
- Stacking: 여러 기본 모델들의 예측 결과를 입력으로 사용하여 최종 예측을 하는 메타 모델을 학습시킨다.
- Blending: 홀드아웃(검증) 데이터셋에 대한 기본 모델들의 예측을 입력으로 메타 모델을 학습시킨다.
- 배깅 (Bagging): 독립적인 모델들을 병렬로 학습시켜 결합한다 (분산 감소 효과).
D. 서포트 벡터 머신 (Support Vector Machines - SVM)
- Support Vector Machine (Classifier): 마진(margin) 최대화를 통해 최적의 분류 경계(결정 초평면)를 학습하는 모델이다. 커널 기법(Kernel Trick)을 통해 비선형 문제도 효과적으로 해결할 수 있다.
- Support Vector Regression (SVR): SVM의 원리를 회귀 문제에 적용한 모델이다. 마진 내 오류는 허용하면서 마진 밖 오류를 최소화한다.
E. 베이즈 모델 (Bayesian Models)
- Optimal Bayes Classifier: 베이즈 정리를 기반으로 사전 확률과 우도(likelihood)를 이용하여 분류 오류를 최소화하는 이론적인 최적 분류기이다. 실제 구현은 확률 분포 추정이 필요하다.
- Naive Bayes: 모든 특징들이 클래스에 대해 조건부 독립(conditionally independent)이라고 가정하고 베이즈 정리를 적용하는 간단하면서도 효과적인 분류기이다.
F. 거리 기반 모델 (Distance-Based Models)
- K-Nearest Neighbors (KNN): 새로운 데이터 포인트 주변의 가장 가까운 k개의 훈련 데이터 이웃을 참조하여 다수결(분류) 또는 평균(회귀)으로 예측하는 비파라메트릭 모델이다.
- Minimum Distance Classifier: 각 클래스의 평균(또는 프로토타입)까지의 유클리드 거리(또는 다른 거리 척도)를 계산하여 가장 가까운 클래스로 분류하는 간단한 분류기이다.
G. 군집화 알고리즘 (Clustering Algorithms)
- K-Means: 데이터를 k개의 중심점(centroid) 기준으로 반복적으로 할당하고 중심점을 업데이트하여 클러스터링한다.
- Hierarchical Clustering: 데이터를 유사도(또는 거리) 기반으로 계층적인 트리 구조(덴드로그램)로 병합(agglomerative)하거나 분할(divisive)한다.
- DBSCAN (Density-Based Spatial Clustering of Applications with Noise): 데이터 포인트의 밀도를 기반으로 클러스터를 형성하며, 임의 형태의 클러스터를 찾고 잡음(noise) 데이터 식별에 강건하다.
- Gaussian Mixture Model (GMM): 데이터가 여러 개의 가우시안(정규) 분포의 혼합으로 구성되었다고 가정하고, 각 데이터 포인트가 각 분포에 속할 확률을 추정하여 클러스터링한다 (Soft Clustering).
- Spectral Clustering: 데이터 포인트 간의 유사도를 그래프로 표현하고, 그래프 라플라시안 행렬의 고유벡터(eigenvectors)를 사용하여 저차원 공간으로 임베딩한 후 클러스터링을 수행한다. 복잡한 형태의 클러스터 분리에 효과적이다.
H. 차원 축소 및 표현 학습 (Dimensionality Reduction & Representation Learning)
- 선형 차원 축소 (Linear Dimensionality Reduction)
- Principal Component Analysis (PCA): 데이터의 분산을 최대한 보존하는 주성분(principal components) 축으로 데이터를 투영하여 차원을 축소한다 (비지도).
- Linear Discriminant Analysis (LDA): 클래스 간 분리를 최대화하는 축으로 데이터를 투영하여 차원을 축소한다 (지도). (II.B 참고)
- Independent Component Analysis (ICA): 원본 데이터를 통계적으로 독립적인 비가우시안(non-Gaussian) 신호들의 선형 조합으로 분리하여 독립적인 성분을 추출한다.
- Non-negative Matrix Factorization (NMF): 원본 행렬을 두 개의 음수 값을 갖지 않는 행렬의 곱으로 분해하여, 부분 기반(parts-based) 표현을 추출하는 데 유용하다 (예: 토픽 모델링).
- 비선형 차원 축소 (Non-linear Dimensionality Reduction)
- t-Distributed Stochastic Neighbor Embedding (t-SNE): 고차원 공간에서의 데이터 포인트 간 유사도(조건부 확률)를 저차원 공간(주로 2D/3D)에서도 최대한 보존하도록 임베딩하여 시각화에 주로 사용된다.
- Uniform Manifold Approximation and Projection (UMAP): 데이터의 국소적 위상 구조(local manifold structure)와 전역적 구조(global structure)를 모두 보존하도록 저차원 공간으로 임베딩하며, t-SNE보다 계산 효율성이 높고 시각화 및 일반 차원 축소에 사용된다.
- Isomap (Isometric Mapping): 데이터 포인트 간의 측지선 거리(geodesic distance, 매니폴드 상의 최단 거리)를 기반으로 다차원 척도법(MDS)을 적용하여 비선형 구조를 보존하며 차원을 축소한다.
- Locally Linear Embedding (LLE): 각 데이터 포인트가 이웃들의 선형 조합으로 잘 근사될 수 있다고 가정하고, 이러한 지역적 선형 관계를 저차원 공간에서도 유지하도록 임베딩한다.
- 표현 학습 (Representation Learning) - 주로 Autoencoder 기반
- Autoencoder (AE): 인코더(encoder)와 디코더(decoder)로 구성된 신경망 구조로, 입력을 저차원의 잠재 공간(latent space)으로 압축했다가 다시 원본 입력으로 재구성하도록 학습하여 데이터의 유용한 표현(representation)을 학습한다 (비지도).
- Denoising Autoencoder (DAE): 입력에 의도적으로 노이즈를 추가한 후 원본 노이즈 없는 입력을 복원하도록 학습하여, 더 강건하고 일반화된 표현을 학습한다.
- Variational Autoencoder (VAE): 잠재 공간을 확률 분포(주로 가우시안)로 모델링하는 생성형 오토인코더이다. 잠재 공간에서 샘플링하여 새로운 데이터를 생성할 수 있다.
- β-VAE: VAE의 손실 함수에 가중치(β)를 추가하여 잠재 공간의 각 차원이 더 독립적이고 해석 가능한 의미 단위(disentangled representation)를 학습하도록 유도한다.
- Diffusion Autoencoder: (Diffusion Model과 관련) 점진적인 노이즈 추가 및 제거 과정을 통해 데이터를 재구성하며 표현을 학습한다.
I. 신경망 기초 (Neural Network Basics)
- Neural Network (Artificial Neural Network, ANN): 상호 연결된 노드(뉴런)들의 층(layer)으로 구성된 모델이다. 비선형 활성화 함수를 통해 복잡한 패턴을 학습할 수 있으며, 지도, 비지도, 강화 학습 등 다양한 패러다임에 적용될 수 있다.
J. 기타 모델 (Other Models)
- Gaussian Process Regression (GPR): 함수 자체에 대한 사전 분포(prior distribution, 주로 가우시안 프로세스)를 정의하고, 관측 데이터를 통해 사후 분포(posterior distribution)를 업데이트하여 예측을 수행하는 베이즈 비파라메트릭 회귀 방법이다. 예측의 불확실성 추정이 가능하다.
- Generalized Additive Model (GAM): 선형 회귀를 확장하여 각 특징 변수에 대해 비선형 함수(주로 스플라인)를 적용한 후 이들의 합으로 예측하는 준파라메트릭 모델이다. 선형 모델의 해석 가능성을 유지하면서 비선형 관계를 모델링할 수 있다.
- Cox Proportional Hazards Model: 생존 분석(survival analysis)에 주로 사용되는 준파라메트릭 모델로, 특정 시점에서의 사건 발생 위험률(hazard rate)을 공변량(covariates)의 함수로 모델링한다. 기저 위험 함수(baseline hazard function)는 비모수적으로, 공변량의 효과(계수)는 모수적으로 추정한다.
III. 딥러닝 아키텍처 (Deep Learning Architectures)
딥러닝은 여러 개의 은닉층을 가진 심층 신경망(Deep Neural Network, DNN)을 사용하여 복잡한 문제를 해결하는 머신러닝의 하위 분야이다. 특정 과업에 특화된 다양한 아키텍처가 개발되었다.
A. CNN (Convolutional Neural Network) 계열
- LeNet: 최초의 실용적인 CNN 중 하나로, 주로 손글씨 숫자 인식(MNIST)에 사용되었다.
- AlexNet: GPU를 활용하여 대규모 이미지 분류(ImageNet)에서 획기적인 성능을 보여 딥러닝 부흥을 이끈 모델이다.
- VGGNet: 3x3 크기의 작은 합성곱 필터를 깊게 쌓아 네트워크 깊이의 중요성을 보여준 모델이다.
- ResNet (Residual Network): 잔차 연결(residual connection) 또는 스킵 연결(skip connection)을 도입하여 매우 깊은 네트워크(수백~수천 개 층)의 학습을 가능하게 하고 기울기 소실 문제를 완화했다.
- DenseNet (Densely Connected Convolutional Network): 각 층이 이후의 모든 층과 직접 연결되는 구조(dense connection)를 통해 특징 재사용(feature reuse)을 극대화하고 정보 흐름을 개선했다.
- EfficientNet: 네트워크의 깊이(depth), 너비(width), 입력 해상도(resolution)를 복합적인 스케일링 방법(compound scaling)으로 균형 있게 확장하여 효율성과 성능을 동시에 높인 모델이다.
B. 순환 신경망 (RNN) 및 관련 구조 (Recurrent Neural Networks & Related Architectures)
- RNN (Vanilla RNN): 순환 연결을 통해 이전 스텝의 정보를 현재 스텝의 계산에 활용하여 순차 데이터(sequence data)를 처리하는 기본적인 순환 구조이다. 장기 의존성 문제(long-term dependency problem)에 취약하다.
- LSTM (Long Short-Term Memory): 입력, 망각, 출력 게이트(gate) 메커니즘을 도입하여 장기 의존성 문제를 효과적으로 해결한 RNN의 변형 구조이다.
- GRU (Gated Recurrent Unit): LSTM의 구조를 간소화(업데이트 게이트, 리셋 게이트 사용)하여 계산 효율성을 높이면서 유사한 성능을 보이는 구조이다.
- Bi-LSTM (Bidirectional LSTM): 순방향과 역방향의 LSTM을 모두 사용하여 과거와 미래의 문맥 정보를 동시에 활용하는 구조이다.
- Seq2Seq (Sequence-to-Sequence): 인코더 RNN이 입력 시퀀스를 고정된 크기의 문맥 벡터로 압축하고, 디코더 RNN이 이 문맥 벡터를 받아 출력 시퀀스를 생성하는 구조이다. 기계 번역 등에 사용된다. 초기 Seq2Seq 모델은 고정된 크기의 문맥 벡터가 정보 병목 현상을 일으킬 수 있다는 한계가 있었다.
C. 어텐션 메커니즘 (Attention Mechanism)
- 정의: 어텐션은 모델이 출력 시퀀스의 특정 부분을 생성할 때, 입력 시퀀스 전체에서 관련성이 높은 부분에 '집중'하여 가중치를 부여하는 메커니즘이다. 이는 인간이 정보를 처리할 때 중요한 부분에 집중하는 방식과 유사하다.
- 역할: 초기에는 RNN 기반 Seq2Seq 모델의 한계(고정된 문맥 벡터로 인한 정보 손실)를 극복하기 위해 도입되었다. 디코더가 각 타임 스텝에서 입력 시퀀스의 모든 은닉 상태(hidden states)를 참고하되, 현재 예측과 관련성이 높은 상태에 더 높은 가중치(어텐션 스코어)를 부여하여 동적인 문맥 벡터를 생성한다.
- 핵심 요소 (Query, Key, Value): 일반적인 어텐션 메커니즘은 쿼리(Query, Q), 키(Key, K), 값(Value, V)이라는 세 가지 요소로 설명될 수 있다.
- 쿼리(Q): 현재 타겟(예: 디코더의 현재 상태)을 나타낸다. "무엇을 찾고 있는가?"에 해당한다.
- 키(K): 입력 시퀀스의 각 요소(예: 인코더의 각 은닉 상태)를 나타내는 식별자이다. 쿼리와 비교되어 관련성을 계산하는 데 사용된다. "내가 무엇을 가지고 있는가?"에 해당한다.
- 값(V): 입력 시퀀스의 각 요소에 대한 실제 내용 또는 표현이다. 키와 쿼리의 관련성(어텐션 가중치)에 따라 가중 합산되어 최종 출력을 만드는 데 사용된다. "내가 실제로 제공하는 것은 무엇인가?"에 해당한다.
- 계산 과정: 쿼리와 모든 키의 유사도(예: 내적)를 계산하여 점수(score)를 얻고, 이를 소프트맥스(softmax) 함수를 통해 정규화하여 어텐션 가중치를 구한다. 이 가중치를 해당 키에 대응하는 값들에 곱하여 가중 합(weighted sum)을 계산하면 최종 어텐션 출력(문맥 벡터)이 된다.
- 진화: 어텐션 메커니즘은 Seq2Seq 모델의 성능을 크게 향상시켰으며, 이후 트랜스포머 아키텍처에서는 순환 구조를 완전히 대체하는 핵심 구성 요소(셀프 어텐션)로 발전했다.
D. Transformer 계열 (Transformer Family)
- Transformer: RNN의 순환 구조를 완전히 제거하고, 셀프 어텐션(Self-Attention) 메커니즘만을 사용하여 입력 시퀀스 내의 요소 간 관계(의존성)를 직접 모델링하는 혁신적인 아키텍처이다. 순환 구조가 없어 병렬 처리가 매우 용이하며, 이는 대규모 모델 학습 시간을 크게 단축시켰다.
- 셀프 어텐션 (Self-Attention): 입력 시퀀스 내의 각 요소(예: 단어)가 다른 모든 요소들과의 관련성을 계산하여 자신의 표현(representation)을 업데이트하는 방식이다. 이를 통해 모델은 문맥 내에서 단어의 의미를 더 잘 파악할 수 있다. Q, K, V 벡터가 모두 동일한 입력 시퀀스로부터 생성된다.
- 멀티 헤드 어텐션 (Multi-Head Attention): 어텐션 계산을 여러 개의 '헤드'로 나누어 병렬로 수행하고 결과를 결합하는 방식이다. 각 헤드는 서로 다른 표현 부분 공간(representation subspace)에서 Q, K, V를 학습하여, 모델이 다양한 관점에서 정보의 관계를 파악하고 집중할 수 있도록 한다.
- BERT (Bidirectional Encoder Representations from Transformers): Transformer의 인코더 구조만을 사용하여, 문장 내 양방향 문맥을 동시에 고려하여 단어 및 문장 표현을 사전 학습(pre-training)하는 모델이다. 주로 자연어 이해(NLU) 작업에 강점을 보이며, 마스크된 언어 모델(Masked Language Model, MLM)과 다음 문장 예측(Next Sentence Prediction, NSP)이라는 두 가지 목표로 사전 학습된다.
- GPT (Generative Pre-trained Transformer): Transformer의 디코더 구조를 기반으로, 대규모 텍스트 데이터로 사전 학습되어 주로 텍스트 생성(text generation) 작업에 강력한 성능을 보이는 모델이다. 이전 단어들을 바탕으로 다음 단어를 예측하는 방식으로 학습하며, 단방향(왼쪽에서 오른쪽) 문맥만을 고려한다.
- T5 (Text-to-Text Transfer Transformer): 모든 NLP 문제를 텍스트 입력에서 텍스트 출력으로 변환하는 통일된 프레임워크(text-to-text)를 제안한 모델이다. 인코더-디코더 구조를 사용한다.
- 최신 대형 언어 모델 (Large Language Models - LLMs):
- 오픈소스 기반: LLaMA, Falcon, Qwen, Mistral 등
- 상용/주요 모델: GPT-4o, Claude 3, Gemini 등 (멀티모달 기능 포함)
E. Vision Transformer (ViT) 계열
- ViT (Vision Transformer): 이미지를 여러 개의 작은 패치(patch)로 나누고, 각 패치를 시퀀스 데이터처럼 처리하여 Transformer 구조를 이미지 인식에 적용한 모델이다.
- DeiT (Data-efficient Image Transformers): ViT를 더 적은 데이터로도 효율적으로 학습시키기 위해 지식 증류(knowledge distillation) 등의 기법을 사용한 모델이다.
- Swin Transformer: 이미지를 계층적(hierarchical)으로 처리하고, 이동된 윈도우(shifted window) 기반의 로컬 어텐션을 사용하여 계산 효율성과 성능을 높인 ViT 변형 모델이다.
- ConvNeXt: CNN의 고전적인 구조(예: ResNet)에 Transformer의 설계 원칙(예: 레이어 정규화, 활성화 함수 변경 등)을 점진적으로 적용하여 CNN의 성능을 크게 향상시킨 모델이다.
F. 그래프 신경망 (Graph Neural Networks - GNN)
- GCN (Graph Convolutional Network): 그래프 구조 데이터에서 노드의 특징을 업데이트할 때, 인접 노드들의 특징 정보를 평균(또는 다른 집계 함수)하여 사용하는 기본적인 그래프 합성곱 방식이다.
- GAT (Graph Attention Network): 노드 특징을 집계할 때, 인접 노드들과의 관계 중요도(어텐션 가중치)를 학습하여 가중 평균을 사용하는 방식이다.
- GraphSAGE (Graph Sample and Aggregate): 대규모 그래프에서 모든 이웃 대신 일부 이웃을 샘플링하여 특징을 집계함으로써 확장성과 효율성을 높인 방식이다.
- Graph Transformer: Transformer의 셀프 어텐션 메커니즘을 그래프 데이터에 적용하여 노드 간의 장거리 의존성 및 복잡한 관계를 모델링하는 구조이다.
G. 생성 모델 (Generative Models)
- GAN (Generative Adversarial Network): 실제 데이터와 유사한 데이터를 생성하는 생성자(Generator)와 생성된 데이터가 실제인지 가짜인지 판별하는 판별자(Discriminator)가 서로 경쟁하며 학습하는 구조이다. 고품질 이미지 생성 등에 뛰어나다.
- VAE (Variational Autoencoder): 확률적인 잠재 공간을 학습하여 데이터를 생성하는 오토인코더 기반 생성 모델이다. (II.H.3 참고)
- Diffusion Models: 데이터에 점진적으로 노이즈를 추가하는 과정(forward process)과 노이즈로부터 원본 데이터를 점진적으로 복원하는 과정(reverse process)을 학습하여 고품질의 다양한 데이터를 생성하는 모델이다. GAN보다 학습이 안정적이고 생성된 샘플의 다양성이 높다는 장점이 있다.
- Latent Diffusion Models (LDM): 고차원 데이터(예: 이미지)를 직접 다루는 대신, 저차원의 압축된 잠재 공간(latent space)에서 확산(diffusion) 및 복원 과정을 수행하여 계산 효율성을 높인 모델이다 (예: Stable Diffusion).
- ControlNet: 사전 학습된 대규모 확산 모델(예: Stable Diffusion)에 추가적인 조건(예: 스케치, 자세)을 입력하여 생성 과정을 제어할 수 있도록 확장한 구조이다.
H. 멀티모달 / 분할 / 3D (Multimodal / Segmentation / 3D)
- SAM (Segment Anything Model): 입력 이미지와 프롬프트(예: 클릭, 박스)를 받아 이미지 내의 어떤 객체든 분할(segmentation)할 수 있는 범용적인 제로샷(zero-shot) 분할 모델이다.
- NeRF (Neural Radiance Fields): 여러 각도에서 촬영된 2D 이미지들로부터 3D 장면을 연속적인 신경망 표현(신경 광채 필드)으로 학습하여, 새로운 시점에서의 이미지를 사실적으로 렌더링하는 기술이다.
IV. 모델 학습 및 평가 (Model Training & Evaluation)
A. 손실 함수 (Loss Functions)
모델의 예측값과 실제 값 사이의 오차를 측정하는 함수이다. 훈련 목표는 이 손실을 최소화하는 것이다.
- 회귀 문제용 (Regression Loss)
- MSE (Mean Squared Error): 제곱 오차의 평균으로, 큰 오차에 민감하다.
- MAE (Mean Absolute Error): 절대 오차의 평균으로, 이상치(outlier)에 덜 민감하다.
- Huber Loss: 오차가 작을 때는 MSE처럼, 클 때는 MAE처럼 동작하여 두 함수의 장점을 결합한다.
- Log-Cosh Loss: 로그 코사인 하이퍼볼릭 함수 기반으로, MSE와 유사하지만 더 부드러운(smooth) 손실 함수이다.
- Quantile Loss: 예측 값이 특정 분위수(quantile)를 따르도록 유도하여, 예측 구간 추정 등에 사용된다.
- 분류 문제용 (Classification Loss)
- Binary Cross-Entropy (Log Loss): 이진 분류 문제에서 모델의 확률 출력과 실제 레이블 간의 차이를 측정한다.
- Categorical Cross-Entropy: 다중 클래스 분류 문제에서 사용되는 교차 엔트로피 손실이다.
- Focal Loss: 정답을 맞추기 쉬운(easy) 샘플보다 어려운(hard) 샘플의 손실에 더 큰 가중치를 부여하여, 클래스 불균형 문제 등에 효과적이다 (주로 객체 탐지).
- Hinge Loss: SVM에서 주로 사용되며, 올바른 클래스의 점수가 다른 클래스의 점수보다 특정 마진(margin) 이상 높도록 유도한다.
- Squared Hinge Loss: Hinge Loss를 제곱한 형태로, 미분 가능하며 부드러운 경계를 만든다.
- 정보 이론 기반 손실 (Information Theory Based Loss)
- KL Divergence (Kullback-Leibler Divergence): 두 확률 분포 간의 비대칭적인 거리(차이)를 측정한다. 예측 분포가 실제 분포에 얼마나 가까운지를 나타낸다.
- Jensen-Shannon Divergence (JSD): KL Divergence를 대칭적으로 만들고 값 범위를 또는 [0, log2]로 제한하여 안정화시킨 거리 척도이다.
- Cross-Entropy: (분류 손실과 연관) 실제 분포 P와 예측 분포 Q가 있을 때, P의 관점에서 Q를 사용하여 정보를 인코딩하는 데 필요한 평균 비트 수를 나타낸다. KL Divergence와 밀접한 관련이 있다 (CrossEntropy(P, Q) = Entropy(P) + KL(P | | Q)).
- Energy Distance: 두 확률 분포 간의 통계적 거리를 측정하는 지표 중 하나로, 특성 함수(characteristic function)를 기반으로 한다.
B. 최적화 알고리즘 (Optimization Algorithms)
손실 함수를 최소화하기 위해 모델 파라미터(가중치)를 업데이트하는 방법이다.
- 1차 미분 기반 최적화 (First-Order Optimization): 기울기(gradient) 정보만 사용한다.
- Gradient Descent (GD): 전체 훈련 데이터를 사용하여 한 번에 파라미터를 업데이트한다. 데이터가 크면 느리다.
- Stochastic Gradient Descent (SGD): 무작위로 선택한 하나의 데이터 샘플 또는 작은 미니배치를 사용하여 파라미터를 업데이트한다. 빠르지만 불안정할 수 있다.
- Mini-Batch Gradient Descent: 전체 데이터와 SGD의 절충안으로, 일정 크기의 미니 배치 단위로 파라미터를 업데이트한다. 가장 널리 사용된다.
- Momentum: 이전 업데이트 방향을 일정 비율 유지하여 관성처럼 이동함으로써 지역 최적점(local minimum) 탈출 및 수렴 속도 개선을 돕는다.
- Nesterov Accelerated Gradient (NAG): Momentum을 개선하여, 현재 위치가 아닌 관성 방향으로 미리 이동한 지점에서 기울기를 계산하여 업데이트한다.
- Adagrad (Adaptive Gradient Algorithm): 각 파라미터마다 학습률을 다르게 조정한다. 자주 업데이트되지 않은 파라미터는 더 큰 학습률을 갖는다.
- Adadelta: Adagrad의 학습률이 계속 감소하는 문제를 해결하기 위해, 과거 기울기 정보의 양을 제한한다.
- RMSProp (Root Mean Square Propagation): Adagrad와 유사하게 파라미터별 학습률을 조정하지만, 지수 이동 평균을 사용하여 최근 기울기 정보에 더 큰 가중치를 둔다.
- Adam (Adaptive Moment Estimation): Momentum과 RMSProp의 장점을 결합한 방식으로, 1차 모멘텀(평균)과 2차 모멘텀(분산의 제곱근)을 함께 사용하여 파라미터별 학습률을 적응적으로 조정한다. 널리 사용되는 최적화 기법이다.
- 2차 미분 기반 최적화 (Second-Order Optimization): 헤시안 행렬(Hessian matrix) 등 2차 미분(곡률) 정보를 사용한다. 수렴 속도가 빠를 수 있지만 계산 비용이 매우 높다.
- Newton's Method: 헤시안 행렬의 역행렬을 사용하여 2차 근사를 통해 파라미터를 업데이트한다.
- Quasi-Newton Methods (준-뉴턴 방법): 헤시안 행렬의 역행렬을 직접 계산하는 대신 근사하여 사용한다.
- BFGS (Broyden–Fletcher–Goldfarb–Shanno): 가장 널리 사용되는 준-뉴턴 방법 중 하나이다.
- L-BFGS (Limited-memory BFGS): 메모리 사용량을 제한하여 대규모 문제에 적용 가능하도록 BFGS를 개선한 방법이다.
- Conjugate Gradient Method: 헤시안 정보를 직접 사용하지 않으면서도, 매 스텝마다 이전 방향과 켤레(conjugate)인 방향으로 이동하여 효율적으로 최적점을 탐색한다.
- Gauss-Newton Algorithm: 비선형 최소 제곱(non-linear least squares) 문제에 특화된 방법으로, 헤시안 대신 자코비안(Jacobian) 행렬을 사용한다.
- Levenberg-Marquardt Algorithm (LMA): Gauss-Newton 방법과 Gradient Descent 방법을 절충하여, 안정성과 수렴 속도를 개선한 방법이다.
- 제약 최적화 (Constrained Optimization): 특정 제약 조건 하에서 목표 함수를 최적화한다.
- Lagrange Multipliers: 등식 제약 조건(equality constraints)을 목표 함수에 통합하여 제약 없는 문제로 변환한다.
- Augmented Lagrangian Methods: 라그랑주 승수법에 벌점 항(penalty term)을 추가하여 수렴성과 안정성을 개선한다.
- Sequential Quadratic Programming (SQP): 각 반복 단계에서 원본 비선형 제약 문제를 이차 계획법(Quadratic Programming) 부문제로 근사하여 해를 구한다.
- Interior-Point Methods / Barrier Methods: 부등식 제약 조건(inequality constraints)을 만족하는 영역 내부에서 시작하여, 제약 경계에 가까워질수록 큰 값을 갖는 장벽 함수(barrier function)를 목표 함수에 추가하여 최적점을 탐색한다.
- Penalty Methods: 제약 조건을 위반할 경우 벌점(penalty)을 부과하는 항을 목표 함수에 추가하여 최적화한다.
- Trust-Region Methods: 현재 해 주변의 신뢰 영역(trust region) 내에서 모델 함수(주로 2차 함수)를 최소화하는 방식으로 다음 해를 결정하여 안정성을 확보한다.
- 메타휴리스틱 알고리즘 (Metaheuristic Algorithms): 문제에 대한 가정이 적고, 전역 최적해(global optimum)를 찾기 위한 경험적(heuristic) 탐색 기법이다. 주로 복잡하거나 미분 불가능한 문제에 사용된다.
- Genetic Algorithm (GA): 생물의 진화 과정을 모방하여, 해집단(population)을 유지하면서 선택(selection), 교차(crossover), 돌연변이(mutation) 연산을 통해 세대를 반복하며 더 좋은 해를 탐색한다.
- Differential Evolution (DE): GA와 유사하지만, 해 벡터들 간의 차이를 이용하여 새로운 후보 해를 생성하는 방식이다.
- Particle Swarm Optimization (PSO): 새 떼나 물고기 떼의 사회적 행동을 모방하여, 여러 입자(particle)들이 각자의 경험(개인 최적해)과 집단의 경험(전역 최적해)을 바탕으로 해 공간을 탐색한다.
- Simulated Annealing (SA): 금속의 담금질(annealing) 과정에서 영감을 얻은 방법으로, 온도를 점차 낮추면서 현재 해보다 나쁜 해도 일정 확률로 수용하여 지역 최적점에서 벗어나 전역 최적점을 찾으려 시도한다.
- Ant Colony Optimization (ACO): 개미들이 먹이를 찾아 집으로 돌아갈 때 페로몬(pheromone)을 남기는 행동을 모방하여, 인공 개미들이 해 공간을 탐색하며 페로몬 농도를 조절하여 최적 경로(해)를 찾는 방식이다. 주로 조합 최적화 문제에 사용된다.
- Tabu Search (TS): 지역 탐색(local search)을 기반으로 하되, 최근에 방문했던 해나 이동(move)을 금지 목록(tabu list)에 저장하여 탐색 과정이 순환(cycling)에 빠지는 것을 방지하고 다양한 영역을 탐색하도록 유도한다.
- Iterated Local Search (ILS): 좋은 지역 최적해를 찾은 후, 현재 해를 약간 변경(perturbation)하고 다시 지역 탐색을 수행하는 과정을 반복하여 더 나은 해를 찾으려는 기법이다.
- Hill Climbing: 현재 해에서 이웃한 해들 중 가장 좋은 해로만 이동하는 단순한 지역 탐색 기법이다. 지역 최적점에 빠지기 쉽다.
- Sparse Evolutionary Search: (비교적 덜 일반적) 희소한 연결 구조나 특징 부분집합 등을 진화적으로 탐색하는 데 특화된 기법일 수 있다.
- 이산 최적화 (Discrete Optimization): 결정 변수가 정수 또는 이산적인 값을 갖는 최적화 문제이다.
- Branch-and-Bound: 해 공간을 트리 형태로 분할(branch)하고, 각 노드에서 해의 상한 또는 하한(bound)을 계산하여 가능성 없는 가지를 제거(prune)하며 최적해를 탐색한다.
- Branch-and-Cut: Branch-and-Bound 방법에 절단 평면(cutting plane)을 추가하여 해 공간을 더욱 효과적으로 줄여나가는 기법이다.
- Branch-and-Price: 대규모 정수 계획 문제에서 열 생성(column generation) 기법과 분지 한정법(Branch-and-Bound)을 결합한 방법이다.
- Hungarian Algorithm: 이분 그래프(bipartite graph)에서 최대 가중치 매칭(maximum weight matching) 또는 최소 비용 할당(minimum cost assignment) 문제를 효율적으로 푸는 알고리즘이다.
- 다목적 최적화 (Multi-Objective Optimization): 두 개 이상의 상충하는 목적 함수를 동시에 최적화하는 문제이다. 단일 최적해가 아닌 파레토 최적해(Pareto optimal solutions) 집합을 찾는 것을 목표로 한다.
- NSGA-II (Non-dominated Sorting Genetic Algorithm II): 파레토 지배 관계(Pareto dominance)와 혼잡도 거리(crowding distance)를 사용하여 다양한 파레토 최적해를 효율적으로 찾는 대표적인 유전 알고리즘 기반 다목적 최적화 기법이다.
- Weighted Sum Method: 각 목적 함수에 가중치를 부여하여 단일 목적 함수로 변환한 후 최적화한다. 가중치에 따라 다른 파레토 해를 찾을 수 있다.
- ε-Constraint Method: 하나의 목적 함수를 최적화하면서 나머지 목적 함수들은 특정 값(ε) 이하 또는 이상이 되도록 제약 조건으로 설정하는 방법이다.
C. 정규화 기법 (Regularization Techniques)
모델의 복잡도를 제어하여 과적합(Overfitting)을 방지하고 일반화 성능을 높이는 기법이다.
- 매개변수 규제 (Parameter Norm Penalties): 모델의 가중치(파라미터) 크기에 직접 제약을 가한다.
- L1 Regularization (Lasso): 가중치의 절댓값 합()을 손실 함수에 추가하여, 일부 가중치를 정확히 0으로 만들어 특징 선택(feature selection) 효과를 유도한다 (희소성, sparsity).
- L2 Regularization (Ridge / Weight Decay): 가중치의 제곱 합()을 손실 함수에 추가하여, 가중치 값을 전반적으로 작게 만들어 모델을 부드럽게 한다.
- Elastic Net: L1과 L2 정규화를 선형 결합하여 사용하는 방식으로, L1의 특징 선택 효과와 L2의 안정성(특히 상관관계 높은 특징들이 있을 때)을 동시에 얻으려 한다.
- Group Lasso: 미리 정의된 특징 그룹 단위로 L1 또는 L2 정규화를 적용하여, 그룹 전체가 선택되거나 제외되도록 유도한다.
- 구조적/암시적 규제 (Structural/Implicit Regularization): 학습 과정이나 모델 구조 자체에 제약을 가하여 과적합을 막는다.
- Dropout: 신경망 훈련 시 각 뉴런(노드)을 일정 확률로 무작위 비활성화(출력을 0으로 만듦)하여, 모델이 특정 뉴런에 과도하게 의존하는 것을 방지하고 여러 개의 작은 모델을 앙상블하는 효과를 낸다.
- DropConnect: Dropout이 뉴런을 비활성화하는 것과 달리, 뉴런 간의 연결(가중치)을 확률적으로 제거(0으로 만듦)한다.
- Early Stopping: 훈련 중 검증 세트(validation set)에 대한 성능(예: 손실, 정확도)을 모니터링하다가, 성능이 더 이상 개선되지 않거나 나빠지기 시작하면 훈련을 조기에 중단한다.
- Data Augmentation: 기존 훈련 데이터를 변형(예: 이미지 회전, 자르기, 밝기 조절)하여 데이터의 양과 다양성을 인위적으로 늘려 모델의 일반화 성능을 높인다.
- Batch Normalization (BatchNorm): 신경망의 각 층 입력에 대해 미니 배치 단위로 평균과 분산을 계산하여 정규화(평균 0, 분산 1로 조정 후 스케일 및 시프트)함으로써, 학습 과정을 안정화하고 수렴 속도를 높이며 약간의 규제 효과도 제공한다.
- Layer Normalization (LayerNorm): BatchNorm과 달리 미니 배치가 아닌 개별 데이터 샘플 내의 모든 뉴런(또는 특징)에 대해 정규화를 수행한다. 주로 RNN이나 Transformer와 같이 시퀀스 길이가 가변적인 모델에 사용된다.
- Weight Decay: 최적화 단계에서 가중치 업데이트 시 현재 가중치 값에 비례하는 항을 빼주는 방식으로, L2 정규화와 동일한 효과를 낸다.
- 특수 규제 (Specialized Regularization)
- Total Variation Regularization: 주로 영상 처리나 역 문제(inverse problem)에서 사용되며, 예측 결과(예: 복원된 이미지)의 총 변동(픽셀 값의 차이 합)을 최소화하여 결과가 부드럽고 노이즈가 적도록 유도하면서도 중요한 경계(edge)는 보존하려 한다.
D. 평가 및 검증 (Evaluation & Validation)
모델의 성능을 측정하고 일반화 능력을 평가하는 방법 및 지표이다.
- 분류 문제용 지표 (Classification Metrics)
- Accuracy (정확도): 전체 샘플 중 올바르게 분류된 샘플의 비율이다. 클래스 불균형이 심할 경우 부적절할 수 있다.
- Precision (정밀도): 양성(Positive)으로 예측된 샘플 중 실제로 양성인 샘플의 비율이다 (TP / (TP + FP)). 모델이 Positive라고 예측한 것이 얼마나 정확한지를 나타낸다.
- Recall (재현율 / 민감도): 실제 양성인 샘플 중 모델이 양성으로 올바르게 예측한 샘플의 비율이다 (TP / (TP + FN)). 실제 Positive를 얼마나 잘 찾아내는지를 나타낸다.
- F1 Score: 정밀도와 재현율의 조화 평균()이다. 두 지표가 모두 중요할 때 사용된다.
- AUC-ROC (Area Under the Receiver Operating Characteristic Curve): ROC 곡선(다양한 분류 임계값에서 FPR(False Positive Rate) 대비 TPR(True Positive Rate, Recall)을 그린 그래프) 아래의 면적이다. 1에 가까울수록 모델 성능이 좋음을 의미하며, 임계값에 관계없이 모델의 전반적인 판별 능력을 평가한다.
- PR-AUC (Area Under the Precision-Recall Curve): Precision-Recall 곡선 아래 면적이다. 클래스 불균형이 심한 데이터셋에서는 ROC-AUC보다 더 유용한 평가 지표가 될 수 있다.
- Cohen’s Kappa: 우연에 의한 예측 일치 수준을 고려하여 평가자 간 또는 모델 예측과 실제 값 간의 일치도를 측정하는 지표이다.
- Matthews Correlation Coefficient (MCC): 이진 분류 성능을 종합적으로 측정하는 지표로, 클래스 불균형에 강건하며 -1(완전 불일치)부터 +1(완전 일치) 사이의 값을 가진다.
- 회귀 문제용 지표 (Regression Metrics)
- R² (결정 계수, Coefficient of Determination): 모델이 종속 변수의 분산을 얼마나 잘 설명하는지를 나타내는 비율이다 (0~1 사이 값). 1에 가까울수록 설명력이 높다.
- Adjusted R² (조정된 결정 계수): 독립 변수(특징)의 수가 증가하면 R²가 높아지는 경향을 보정하기 위해 변수 수를 고려한 R² 값이다.
- RMSE (Root Mean Squared Error): MSE(평균 제곱 오차)에 제곱근을 취한 값으로, 오차의 크기를 원래 데이터와 동일한 단위로 해석할 수 있게 한다.
- MAPE (Mean Absolute Percentage Error): 실제 값 대비 절대 오차의 백분율 평균이다. 오차의 상대적인 크기를 평가할 때 유용하지만, 실제 값이 0에 가까우면 불안정해질 수 있다.
- SMAPE (Symmetric Mean Absolute Percentage Error): MAPE의 비대칭성(과대 예측과 과소 예측의 페널티가 다름) 문제를 개선한 지표이다.
- 검증 방법 (Validation Methods)
- Hold-out Method: 데이터를 훈련 세트와 테스트 세트로 한 번 나누어 평가한다. 간단하지만 데이터 분할에 따라 결과가 달라질 수 있다.
- k-Fold Cross-Validation: 데이터를 k개의 폴드(fold)로 나누고, 각 폴드를 한 번씩 테스트 세트로 사용하고 나머지 k-1개 폴드를 훈련 세트로 사용하는 과정을 k번 반복하여 성능을 평균낸다. 더 안정적인 성능 추정치를 제공한다.
- Stratified k-Fold Cross-Validation: k-Fold 교차 검증 시 각 폴드의 클래스 비율이 원본 데이터의 클래스 비율과 동일하게 유지되도록 데이터를 분할한다. 클래스 불균형 데이터에 유용하다.
- LOOCV (Leave-One-Out Cross-Validation): k-Fold에서 k가 데이터 샘플 수(N)와 같은 극단적인 경우이다. 각 샘플을 한 번씩 테스트 세트로 사용한다. 계산 비용이 매우 높다.
- Time Series Split (시계열 교차 검증): 시계열 데이터에서는 미래의 데이터를 사용하여 과거를 예측하는 것을 방지해야 하므로, 훈련 세트는 항상 테스트 세트보다 시간적으로 앞서도록 데이터를 분할한다 (예: Expanding Window, Sliding Window).
- 불확실성 평가 (Uncertainty Evaluation)
- Calibration Curve (신뢰도 곡선): 모델이 예측한 확률(신뢰도)이 실제 정확도와 얼마나 일치하는지를 시각적으로 보여주는 그래프이다. 완벽하게 보정된 모델은 대각선 형태를 띤다.
- Expected Calibration Error (ECE): 예측 확률과 실제 빈도 간의 평균적인 차이를 정량화하여 모델의 보정(calibration) 정도를 측정하는 지표이다.
E. 하이퍼파라미터 탐색 (Hyperparameter Tuning/Search)
모델 성능에 영향을 미치는, 학습 전에 사용자가 설정해야 하는 하이퍼파라미터(예: 학습률, 정규화 강도, 트리 깊이)의 최적 조합을 찾는 과정이다.
- Grid Search: 탐색할 하이퍼파라미터 값들의 조합을 격자(grid) 형태로 모두 시도하여 최적 조합을 찾는다. 계산 비용이 높다.
- Random Search: 지정된 범위 내에서 하이퍼파라미터 값들을 무작위로 샘플링하여 탐색한다. Grid Search보다 효율적으로 좋은 조합을 찾을 수 있는 경우가 많다.
- Bayesian Optimization: 이전 탐색 결과를 바탕으로 아직 탐색하지 않은 영역 중 성능 개선 가능성이 높은 지점(획득 함수(acquisition function) 최대화)을 확률적으로 선택하여 탐색하는 방식이다. 적은 시도 횟수로 최적 조합을 찾는 데 효과적이다.
- Hyperband: 제한된 자원(예: 시간, 반복 횟수) 하에서 여러 하이퍼파라미터 조합을 병렬로 시도하고, 성능이 낮은 조합은 조기에 중단(early-stopping)하여 유망한 조합에 더 많은 자원을 할당하는 효율적인 탐색 기법이다.
- BOHB (Bayesian Optimization and HyperBand): Hyperband의 효율적인 자원 할당 방식과 Bayesian Optimization의 지능적인 탐색 방식을 결합한 기법이다.
- Optuna: 베이즈 최적화, TPE(Tree-structured Parzen Estimator), CMA-ES 등 다양한 최신 탐색 알고리즘을 지원하고, 분산 환경에서의 병렬 탐색, 탐색 과정 시각화 등을 제공하는 자동화된 하이퍼파라미터 최적화 프레임워크이다.
- Population-Based Training (PBT): 여러 모델(개체군)을 병렬로 훈련시키면서, 주기적으로 성능이 좋은 모델의 가중치와 하이퍼파라미터를 성능이 낮은 모델로 복사하고 약간의 변형(mutation)을 가하는 방식으로, 하이퍼파라미터와 모델 가중치를 동시에 최적화한다.
V. 관련 이론 및 고급 주제 (Related Theory & Advanced Topics)
A. 정보 이론 (Information Theory)
데이터의 불확실성을 정량화하고, 확률 분포 간의 관계를 측정하는 수학적 이론이다. 머신러닝에서 손실 함수 정의, 모델 평가, 특징 선택 등에 활용된다.
- Shannon Entropy: 확률 변수의 불확실성(정보량)을 측정하는 기댓값이다. 분포가 균일할수록 엔트로피가 높다.
- Conditional Entropy: 다른 확률 변수 Y의 값이 주어졌을 때, 확률 변수 X의 남은 불확실성을 측정한다 (H(X|Y)).
- Joint Entropy: 두 확률 변수 X와 Y가 함께 가질 수 있는 상태에 대한 총 불확실성을 측정한다 (H(X, Y)).
- Mutual Information (상호 정보량): 두 확률 변수 X와 Y가 공유하는 정보량이다. 즉, Y를 앎으로써 X에 대한 불확실성이 얼마나 감소하는지를 나타낸다 (I(X; Y) = H(X) - H(X|Y)).
- Cross-Entropy: 실제 분포 P에 대해 예측 분포 Q를 사용하여 정보를 인코딩할 때 필요한 평균 비트 수이다. 분류 문제의 손실 함수로 널리 사용된다.
- KL Divergence (Kullback-Leibler Divergence): 두 확률 분포 P와 Q 사이의 비대칭적인 거리(차이)를 측정한다. P를 Q로 근사할 때의 정보 손실량을 나타낸다 (D_KL(P | | Q)).
- Jensen-Shannon Divergence (JSD): KL Divergence를 대칭적으로 만들고 값 범위를 또는 [0, log2]로 제한한 거리 척도이다.
B. 설명 가능한 AI (Explainable AI - XAI)
복잡한 인공지능 모델(특히 딥러닝)의 예측 결과를 사람이 이해하고 신뢰할 수 있도록 설명하는 기술 및 방법론이다.
- SHAP (SHapley Additive exPlanations): 게임 이론의 샤플리 값(Shapley value) 개념을 적용하여, 각 특징(feature)이 특정 예측 결과에 얼마나 기여했는지를 공정하게 측정하고 설명하는 통합 프레임워크이다.
- LIME (Local Interpretable Model-agnostic Explanations): 특정 예측 결과 주변의 데이터를 샘플링하고, 이 로컬 영역에서 해석 가능한 간단한 모델(예: 선형 모델)을 학습시켜 해당 예측을 설명하는 모델 불특정(model-agnostic) 기법이다.
- Integrated Gradients (IG): 예측 결과의 변화에 대한 입력 특징의 기여도를 계산할 때, 기준선(baseline) 입력부터 실제 입력까지의 경로를 따라 기울기를 적분하여 특징 중요도를 측정하는 방법이다.
- Grad-CAM (Gradient-weighted Class Activation Mapping): CNN 모델에서 특정 클래스 예측에 중요한 영향을 미친 입력 이미지 영역(특징 맵)을 시각화하여 모델이 어디를 보고 판단했는지 보여주는 기법이다.
C. 분산 학습 및 MLOps (Distributed Learning & MLOps)
대규모 데이터나 모델을 처리하기 위한 기술과 머신러닝 모델의 개발, 배포, 운영을 자동화하고 효율화하는 방법론이다.
- 분산 학습 구조 (Distributed Learning Architectures): 여러 컴퓨팅 자원(장비, 프로세스)을 사용하여 모델 학습을 병렬로 수행한다.
- Data Parallelism: 동일한 모델을 여러 장치(예: GPU)에 복제하고, 전체 훈련 데이터를 나누어 각 장치에서 병렬로 처리한 후 결과를 동기화(예: 기울기 평균)한다.
- Model Parallelism: 모델 자체의 크기가 너무 커서 단일 장치에 올릴 수 없을 때, 모델의 다른 부분을 여러 장치에 나누어 배치하고 병렬로 연산한다.
- Pipeline Parallelism: 모델의 계층(layer)들을 여러 장치에 순차적으로 배치하고, 미니 배치를 여러 마이크로 배치로 나누어 파이프라인처럼 처리하여 장치 활용률을 높인다.
- Parameter Server Architecture: 파라미터 서버(중앙 서버)가 모델의 파라미터를 저장 및 관리하고, 여러 워커(worker) 노드가 데이터를 받아 학습을 수행하며 파라미터 업데이트를 요청/수신하는 구조이다.
- 분산 학습 프레임워크/라이브러리:
- Horovod: TensorFlow, PyTorch, Keras 등에서 MPI(Message Passing Interface) 기반의 효율적인 데이터 병렬 분산 훈련을 지원하는 프레임워크이다.
- DeepSpeed: Microsoft에서 개발한 대규모 모델(수십억~수조 파라미터) 학습을 위한 최적화 라이브러리로, ZeRO(Zero Redundancy Optimizer) 등의 기술을 통해 메모리 효율성을 극대화한다.
- TensorFlow Distributed: TensorFlow에서 제공하는 분산 훈련 전략(예: MirroredStrategy, MultiWorkerMirroredStrategy, ParameterServerStrategy)을 포함하는 프레임워크이다.
- MLOps (Machine Learning Operations): 머신러닝 모델의 전체 생명주기(데이터 준비, 실험, 훈련, 배포, 모니터링, 재훈련)를 안정적이고 효율적으로 관리하기 위한 원칙과 실천 방법이다. DevOps의 원칙을 머신러닝 시스템에 적용한 것이다.
- 모델 관리 및 서빙 도구 (Model Management & Serving Tools):
- MLflow: 실험 추적(tracking), 모델 패키징, 모델 레지스트리(저장 및 버전 관리), 모델 배포(serving) 등 머신러닝 생명주기 관리를 위한 오픈소스 플랫폼이다.
- DVC (Data Version Control): Git과 유사하게 대규모 데이터셋과 머신러닝 모델 파일의 버전을 관리하고 실험 재현성을 높이는 도구이다.
- Airflow: 워크플로우(작업 흐름)를 DAG(Directed Acyclic Graph) 형태로 정의하고 스케줄링, 모니터링, 실행하는 오픈소스 플랫폼이다. ML 파이프라인 자동화에 사용된다.
- Kubeflow / Kubeflow Pipelines: Kubernetes 위에서 머신러닝 워크플로우를 구축, 배포, 관리하기 위한 플랫폼이다. 특히 컨테이너 기반의 확장 가능하고 이식성 있는 ML 시스템 구축에 유용하다.
- BentoML: 학습된 머신러닝 모델을 고성능의 예측 서비스(REST API 등)로 쉽게 패키징하고 배포할 수 있도록 지원하는 프레임워크이다.
- Seldon Core: Kubernetes 기반으로 머신러닝 모델을 배포, 확장, 모니터링하고 A/B 테스트, 카나리 배포 등을 지원하는 오픈소스 플랫폼이다.
- 데이터 라벨링 도구 (Data Labeling Tools):
- Label Studio: 이미지, 텍스트, 오디오, 비디오 등 다양한 유형의 데이터에 대한 라벨링(주석 작업) 인터페이스를 제공하는 오픈소스 도구이다.
- 모델 관리 및 서빙 도구 (Model Management & Serving Tools):
D. 프라이버시 및 연합 학습 (Privacy & Federated Learning)
데이터 프라이버시를 보호하면서 머신러닝 모델을 학습하고 활용하는 기술이다.
- Federated Learning (연합 학습): 원본 데이터를 중앙 서버로 보내지 않고, 각 사용자(클라이언트)의 로컬 장치에서 데이터를 사용하여 모델을 개별적으로 학습시킨 후, 모델 업데이트(예: 가중치 변화량)만을 중앙 서버로 보내 통합(aggregation)하는 분산 학습 방식이다. 데이터 프라이버시 보호에 유리하다.
- Split Learning (분할 학습): 모델의 일부는 사용자 장치에서, 나머지 부분은 서버에서 나누어 학습하는 방식으로, 연합 학습과 달리 모델 구조를 분할하여 프라이버시를 보호하고 계산 부담을 분산시킨다.
- Differential Privacy (차분 프라이버시): 데이터셋에 대한 질의(query) 결과나 학습된 모델 파라미터에 통계적인 노이즈를 추가하여, 특정 개인의 정보가 결과에 미치는 영향을 제한함으로써 개인 식별 위험을 수학적으로 보장하는 프라이버시 보호 기법이다.
E. 강화학습 심화 기술 (Advanced Reinforcement Learning Techniques)
- MuZero: 게임 규칙이나 환경 모델을 명시적으로 알지 못해도, 스스로 상태 표현, 전이(dynamics), 보상 함수를 학습하는 모델 기반 강화학습 알고리즘이다. (I.B.3 참고)
- Dreamer (DreamerV3): 환경 모델을 학습하여 잠재 공간(latent space)에서 미래 상태와 보상을 예측하고, 이를 바탕으로 상상(imagination) 속에서 정책을 효율적으로 학습하는 모델 기반 강화학습 구조이다. (I.B.3 참고)
- MADDPG (Multi-Agent Deep Deterministic Policy Gradient): 여러 에이전트가 존재하는 환경에서, 각 에이전트가 다른 에이전트들의 정책 정보를 활용하여 협력 또는 경쟁하며 학습하는 다중 에이전트 강화학습 알고리즘이다.
- QMIX: 개별 에이전트의 Q 함수를 비선형적으로 결합하여 팀 전체의 공동 Q 함수를 추정하고, 이를 통해 협력적인 다중 에이전트 환경에서 분산된 정책을 학습하는 기법이다.
- Offline Reinforcement Learning (오프라인 강화학습): 환경과의 실시간 상호작용 없이, 미리 수집된 고정된 데이터셋(로그 데이터 등)만을 사용하여 정책을 학습하는 강화학습 방식이다. 관련 기법 예시: Conservative Q-Learning (CQL), Implicit Q-Learning (IQL), Advantage-Weighted Actor-Critic (AWAC).
- Constrained Reinforcement Learning (제약 강화학습): 보상 최대화뿐만 아니라, 특정 제약 조건(예: 안전 제약, 비용 제약)을 만족하도록 정책을 학습하는 강화학습 방식이다. 관련 기법 예시: Constrained Policy Optimization (CPO), Shielded Reinforcement Learning.
F. 수학적 최적화 (Mathematical Optimization) - ML과의 관계
머신러닝 모델 학습(손실 함수 최소화) 자체가 최적화 문제이며, 다양한 수학적 최적화 기법들이 직간접적으로 활용된다. (IV.B 최적화 알고리즘과 중복되는 내용이 많으나, 보다 이론적인 관점에서 분류)
- 선형 계획법 (Linear Programming - LP): 선형 목적 함수를 선형 등식/부등식 제약 조건 하에서 최적화한다.
- Simplex Method: 해 공간의 꼭짓점(vertex)을 따라 이동하며 최적해를 탐색하는 고전적인 해법이다.
- Interior-Point Methods: 해 공간의 내부(interior)에서 시작하여 중심 경로(central path)를 따라 최적점에 점근적으로 접근하는 해법이다.
- 이차 계획법 (Quadratic Programming - QP): 이차 목적 함수를 선형 제약 조건 하에서 최적화한다. SVM 등에서 활용된다.
- Active Set Methods (e.g., Wolfe's Method): 활성 제약 조건(active constraints) 집합을 관리하며 최적해를 찾는 방식이다.
- Primal-Dual Interior Point Methods: LP와 유사하게 내부점 방법을 적용하여 QP 문제를 해결한다.
- 비선형 계획법 (Nonlinear Programming - NLP): 비선형 목적 함수 또는 비선형 제약 조건을 갖는 최적화 문제이다. 대부분의 딥러닝 학습이 여기에 해당한다.
- Gradient Descent 계열: (IV.B.1 참고)
- Newton's Method, SQP, Trust-Region Methods: (IV.B.2, IV.B.3 참고)
- 혼합 정수 계획법 (Mixed-Integer Programming - MIP): 일부 변수는 연속적이고 일부 변수는 정수인 최적화 문제이다.
- Branch-and-Bound, Branch-and-Cut, Branch-and-Price: (IV.B.5 참고)
- 동적 계획법 (Dynamic Programming - DP): 최적 부분 구조(optimal substructure)와 중복되는 부분 문제(overlapping subproblems) 특성을 갖는 문제를 작은 부분 문제로 나누어 해결하고, 그 결과를 저장하여 재활용하는 방식이다. 강화학습의 벨만 방정식(Bellman Equation) 등에서 활용된다.
- Bellman Equation: 현재 상태의 가치 함수를 다음 상태의 가치 함수와 즉각적인 보상으로 표현하는 재귀적인 관계식이다. DP 및 강화학습의 핵심 원리이다.
- Viterbi Algorithm: 은닉 마르코프 모델(Hidden Markov Model, HMM)과 같은 시퀀스 모델에서 가장 가능성 높은 은닉 상태(hidden state) 시퀀스를 찾는 동적 계획법 기반 알고리즘이다.
- 제약 충족 문제 (Constraint Satisfaction Problems - CSP): 변수 집합, 각 변수의 도메인, 변수 간 제약 조건이 주어졌을 때, 모든 제약 조건을 만족하는 변수 값 할당을 찾는 문제이다.
- Backtracking Search: 변수에 값을 할당해 보면서 제약 조건을 만족하는지 확인하고, 만족하지 않으면 이전 단계로 돌아가 다른 값을 시도하는 완전 탐색 기반 알고리즘이다.
- Forward Checking: 변수에 값을 할당할 때마다, 해당 할당으로 인해 제약 조건에 영향을 받는 다른 변수들의 도메인에서 불가능한 값들을 미리 제거하는 기법이다.
- Arc Consistency (AC-3 Algorithm): 변수 쌍 간의 제약 조건을 반복적으로 검사하여, 각 변수의 도메인에서 제약을 만족하는 값이 없는 값들을 제거하여 도메인을 축소하는 기법이다.
- 이진 결정 다이어그램 (Binary Decision Diagrams - BDD): 부울 함수(Boolean function)를 효율적으로 표현하고 조작하기 위한 데이터 구조이다.
- ROBDD (Reduced Ordered Binary Decision Diagram): 변수 순서가 고정되고, 중복 노드와 불필요한 노드가 제거된 표준적인 형태의 BDD이다.
- ZDD (Zero-suppressed Binary Decision Diagram): 희소한 조합 구조(예: 특징 부분집합) 표현에 특화된 BDD 변형이다.
- 유한차분법 (Finite Difference Method): 미분 방정식을 이산적인 격자점(grid points)에서의 함수 값 차이를 이용하여 근사적인 대수 방정식으로 변환하여 수치적으로 해를 구하는 방법이다. (머신러닝 자체보다는 물리 시뮬레이션 등 관련 분야에서 사용)
- Forward/Backward Euler Method: 시간 또는 공간에 대해 전진(forward) 또는 후진(backward) 차분을 사용하여 1차 미분을 근사하는 가장 간단한 방법이다.
- Crank-Nicolson Method: 시간 축에서 현재와 다음 시간 스텝의 평균을 사용하여 미분을 근사하는 암시적(implicit) 방법으로, 안정성이 높다.
G. 최신 연구 키워드 (Recent Research Keywords - 2023~2025 기준)
머신러닝 및 딥러닝 분야의 최신 연구 동향을 나타내는 주요 키워드이다.
- Diffusion Models: 고해상도 이미지, 비디오, 오디오 등 다양한 데이터를 생성하는 데 탁월한 성능을 보이는 생성 모델 계열이다. (III.G 참고)
- RAG (Retrieval-Augmented Generation): 대형 언어 모델(LLM)이 답변을 생성할 때, 외부 지식 베이스(예: 문서 데이터베이스)에서 관련 정보를 검색(retrieve)하여 이를 참고함으로써 답변의 정확성과 최신성을 향상시키는 기법이다.
- PEFT (Parameter-Efficient Fine-Tuning): 사전 학습된 대규모 모델(Foundation Model)을 특정 작업에 맞게 미세 조정(fine-tuning)할 때, 모델의 모든 파라미터를 업데이트하는 대신 일부 파라미터(또는 추가된 작은 파라미터)만 학습하여 계산 비용과 메모리 사용량을 크게 줄이는 기법이다. 예시:
- LoRA (Low-Rank Adaptation): 기존 가중치 행렬의 업데이트를 저차원(low-rank) 행렬의 곱으로 근사하여 학습 파라미터 수를 줄인다.
- QLoRA: LoRA를 더욱 개선하여, 사전 학습된 모델의 가중치를 낮은 비트(예: 4비트)로 양자화(quantization)하고 저차원 어댑터만 학습하여 메모리 효율성을 극대화한다.
- 기타: Adapter Tuning, Prompt Tuning, P-tuning 등.
- RLHF (Reinforcement Learning from Human Feedback) / DPO (Direct Preference Optimization): 인간의 피드백(선호도 데이터 등)을 사용하여 언어 모델의 출력을 인간의 의도나 가치에 맞게 정렬(alignment)하고, 유해하거나 편향된 출력을 줄여 안전성을 높이는 기법이다.
- RLHF: 인간 선호도를 학습한 보상 모델(reward model)을 구축하고, 이 보상 모델을 최대화하도록 강화학습을 통해 언어 모델을 미세 조정한다.
- DPO: RLHF의 복잡한 파이프라인(보상 모델 학습 + 강화학습) 대신, 선호도 데이터를 직접 사용하여 선호되는 응답의 확률은 높이고 선호되지 않는 응답의 확률은 낮추는 방향으로 언어 모델을 직접 최적화(분류 문제로 변환)하는 더 간단하고 안정적인 방법이다.
- Long-Context Transformers: 표준 Transformer 모델이 처리하기 어려운 매우 긴 입력 시퀀스(예: 수십만~수백만 토큰)를 효율적으로 처리할 수 있도록 확장된 아키텍처 및 기법이다 (예: FlashAttention, Ring Attention).
- NeRF (Neural Radiance Fields): 3D 장면을 연속적인 신경망 표현으로 학습하여 새로운 시점 렌더링(novel view synthesis)을 가능하게 하는 기술이다. (III.H 참고)
- SAM (Segment Anything Model): 제로샷(zero-shot)으로 이미지 내의 어떤 객체든 분할할 수 있는 대규모 비전 모델이다. (III.H 참고)
- Foundation Model Compression: 대규모 파운데이션 모델을 경량화하여 모바일 기기나 제한된 환경에서도 사용할 수 있도록 만드는 기술이다. 예시:
- Pruning (가지치기): 모델의 중요도가 낮은 가중치나 연결, 또는 구조(채널, 레이어 등)를 제거하여 모델 크기를 줄인다.
- Quantization (양자화): 모델의 가중치나 활성화 값을 높은 정밀도(예: 32비트 부동소수점)에서 낮은 정밀도(예: 8비트 정수)로 변환하여 모델 크기와 계산량을 줄인다.
- Knowledge Distillation (지식 증류): 크고 성능 좋은 교사 모델(teacher model)의 지식을 작고 빠른 학생 모델(student model)에게 전달하여 학습시키는 방식이다.
- Low-Rank Factorization/Decomposition (저차원 분해): 모델 내의 큰 가중치 행렬을 더 작은 행렬들의 곱으로 분해하여 파라미터 수를 줄인다. (LoRA도 이 원리를 활용한다)
- Multimodal Integration: 텍스트, 이미지, 오디오, 비디오 등 여러 종류의 데이터(양식, modality)를 하나의 모델이 동시에 이해하고 처리하며 생성할 수 있는 기술이다. 최신 LLM(예: GPT-4o, Gemini)들이 이러한 방향으로 발전하고 있다.
- 대표 모델 (Representative Models): (III.D 참고) GPT-4o, Gemini, Claude 3, Mistral, LLaMA, Qwen, StableLM 등.
'인공지능' 카테고리의 다른 글
최적화, 분류 알고리즘과 추정 방법의 분류 (2) (0) | 2025.04.24 |
---|---|
LLM은 월드모델인가 (0) | 2025.04.08 |
SNN(Spike Neural Network)와 STDP(Spike-timing-dependent plasticity)의 이해 (0) | 2024.08.20 |
최적화, 분류 알고리즘과 추정방법 목록 나열 (2) | 2024.05.22 |