기본 용어 및 표기법
기본적으로 머신러닝을 특정 값을 예측하기 위해 사용한다고 생각하면 기본 용어 및 표기법에 익숙해지기 쉬울 것이다.
특정 값을 예측하기 위해 사용되는 나머지 변수들을 특징(features)이라 하고, 예측하고자 하는 변수를 레이블(labels)이라 한다. 이를 위해 사용하는 데이터가 샘플(samples) 혹은 훈련 데이터셋(training dataset)이다. 기본적으로 자료는 지도학습이라는 가정 하에 특징과 레이블이 같이 존재한다.
데이터셋에서 나타나는 특징들을 $ x $ 로 표기하고, 타겟 레이블을 $ y $ 라 표기한다. 예측된 레이블(predicted labels)은 $ \hat{y} $ 를 사용한다. 특징이나 레이블 값이 많아 행렬이나 벡터를 이용하여 $ \mathbf{X} $, $ \mathbf{y} $, $ \mathbf{\hat{y}} $ 로 표기하기도 한다.
머신러닝 시스템 구축 과정
기본적으로 과정은 다음과 같다.
- 전처리(preprocessing)
- 학습(learning)
- 평가(evaluation)
- 예측(prediction)
• 데이터 전처리 (Data Preprocessing)
머신러닝은 데이터로부터 학습하기 때문에 데이터가 중요하다. 따라서 모델이 학습하는 데이터에 이상이 있는 경우 이를 처리해주어야 한다. 가장 흔한 이상은 결측치(missing value)와 이상치(outlier)이다. 이러한 노이즈 데이터(noisy data)를 핸들링하고, 이상치를 제거하는 것, 즉 데이터 정제(data cleaning)이 가장 기본적인 전처리이다.
만약 필요한 경우 데이터 변환(data transformation)도 해주어야 한다. 각 데이터의 단위가 다를 경우 학습에서 단위 때문에 값이 큰 특징에 대해 과잉 평가될 여지가 있다. 따라서 이를 방지하기 위해 정규화(nomalization), 표준화(standardization) 등 방법으로 데이터를 다듬어주어야 한다.
중요 특징만 선택(feature selection)하는 것도 중요할 수 있다. 레이블에 영향을 거의 안 주는 특징이 있다면 이를 제거하여 과적합을 방지하고 학습 속도를 향상시킬 수 있다.
차원 축소(dimensionality reduction)도 검토해볼 수 있다. 이때 주성분 분석(PCA, principal componetnt analysis)를 활용할 수 있다.
• 모델 선택 및 과적합 문제 (Model Selection and Overfitting)
데이터 전처리가 끝났다면 이제 데이터를 학습할 최적의 모델을 선택해야 한다. 이때 머신러닝 모델들과 더불어 딥러닝 모델들도 고려될 수 있다.
과적합(overfitting)은 훈련 데이터에 과도하게 잘 맞춰져 테스트 데이터에서 성능이 저하되는 문제이다. 이를 극복하기 위해서는 데이터 증가, 정규화(regularization), 교차 검증(cross validation) 등이 활용될 수 있다.
• 성능 평가 (Performance Evaluation)
모델을 선택하였다면 학습 기준을 설정하고 성능을 평가하기 위해 측도를 마련해야 한다. 가장 흔하게 생각할 수 있는 것은 정확도(accuracy)이다. 정확도는 전체 입력 데이터 중 올바르게 예측된 데이터의 비율을 말한다.
학습 곡선(learning curve)를 활용하여 훈련 데이터와 검증 데이터의 오류율 변화를 관찰하고 이를 통해 학습을 평가할 수도 있다.
정밀도(precision), 재현율(recall), ROC 곡선, AUC 등을 활용하여 평가도 가능하다.
K겹 교차 검증(K-fold cross validation)이라는 것도 있다. 먼저 데이터셋을 섞고, K개의 그룹으로 나눈다. 각 그룹을 한 번씩 테스트 데이터로 사용하고 나머지 그룹을 훈련 데이터로 사용하여 모델을 학습하는 방식이다. 최종 성능은 각 테스트 구룹에서 평가된 결과를 평균 내어 측정한다.
• 하이퍼파라미터 튜닝 (Hyperparameter Tuning)
하이퍼파라미터는 모델이 최적의 성능을 발휘하도록 학습 과정에서 직접 조정하는 파라미터이다. 흔한 것이 학습률(learning rate), 신경망 필터 크기(filter size) 등이 있다.
직접 하이퍼파라미터를 조정해도 되지만, 최적의 하이퍼파라미터를 찾는 다양한 조정 방법도 있다. 흔히 그리드 서치(grid search), 랜덤 서치(random search), 베이지안 최적화(Bayesian optimization) 등이 사용된다.
'Artificial Intelligence > Machine Learning' 카테고리의 다른 글
[ML] 정칙화(regularization)와 릿지회귀(ridge regression), 라쏘회귀(LASSO regression), 엘라스틱넷회귀(elastic net regression) (0) | 2025.03.31 |
---|---|
[ML] 선형회귀모델(linear regression model) (0) | 2025.03.29 |
[ML] 분류 모델 평가(evaluation) (0) | 2025.03.29 |
[ML] 경사 하강법(gradient descent) (0) | 2025.03.27 |
[ML] 머신러닝(machine learning) 개념 및 소개 (0) | 2025.02.12 |