-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
85754ec
commit 5f1c5fd
Showing
5 changed files
with
110 additions
and
17 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
# Model Evaluation | ||
|
||
## Model Evaluation이란 | ||
|
||
- 머신러닝 또는 딥러닝 모델의 성능을 평가하고 검증하는 과정 | ||
- 모델이 학습 데이터에 대해서만 잘 작동하는지, 아니면 새로운 이전에 본 적 없는 데이터에 대해서도 잘 동작하는지 일반화가 잘 되었는지를 평가 | ||
- 이를 위해 다양한 Evaluation Metrics을 사용하여 모델의 예측 성능을 평가 | ||
|
||
## Model Evaluation 방법 | ||
|
||
- Holdout: 데이터를 Training set와 Test set로 한 번만 분할 | ||
- Cross Validation: 데이터를 여러 부분으로 나누어, 한 부분을 Test Set로 사용하고 나머지 부분으로 모델을 학습시킨다. 이 과정을 각 부분마다 반복한다. | ||
- K-Fold Cross validation | ||
- Stratified K-Fold Cross validation | ||
- Leave-One-Out | ||
- Leave-P-Out | ||
|
||
### 1. Holdout | ||
|
||
정의 | ||
|
||
- 데이터를 Training set와 Test set로 한 번만 분할 | ||
- 일반적으로 데이터의 70~80%는 훈련에 사용하고, 나머지 20~30%는 테스트에 사용 | ||
|
||
특징 | ||
|
||
- 장점 : 간단하고 빠르게 실행 | ||
- 단점: 데이터 셋의 크기가 작은 경우, Test set의 결과가 불안정 할 수 있음, 데이터 분할의 random한 특성으로 결과가 크게 달라질 수 있음 | ||
|
||
### 2. K-Fold | ||
|
||
![img](../assets/img/k-fold.png) | ||
|
||
정의 | ||
|
||
- 데이터를 K개의 부분(Fold)로 나눈 후, 각 Fold를 한 번 씩 Test Set로 사용하고 | ||
나머지 K-1개 Fold를 훈련 세트로 사용. | ||
- 이 과정을 K번 반복 | ||
|
||
특징 | ||
|
||
- 장점 : 모든 데이터 포인트가 훈련과 테스트에 모두 사용되므로 결과가 더 안정적 | ||
- 단점 : 모델을 K번 학습해야 하므로 계산 비용이 높음 | ||
|
||
### 3. Stratified K-Fold | ||
|
||
정의 | ||
|
||
- K-Fold CV의 변형으로, 각 Fold에서 클래스 비율이 전체 데이터셋의 클래스 비율과 동일하게 유지하도록 유지 | ||
|
||
특징 | ||
|
||
- 장점 : Class Imbalance가 있는 데이터 셋에 효과적 | ||
- 단점 : K-Fold CV와 마찬가지로 계산 비용 높음 | ||
|
||
### 4. Leave-One-Out | ||
|
||
정의 | ||
|
||
- K-Fold의 매우 특수한 경우 | ||
- N개의 **데이터 포인트**가 있을 때, 하나의 데이터 포인트를 Test로 사용하고 나머지 N-1개를 훈련에 사용 | ||
- 이 과정을 N번 반복 | ||
|
||
특징 | ||
|
||
- 장점 : 작은 데이터셋에 효과적 | ||
- 단점 : 매우 높은 계산 비용이 발생. 각 데이터 포인트에 대해 모델을 재학습 | ||
|
||
### 5. Leave-P-Out | ||
|
||
정의 | ||
|
||
- N개의 데이터 포인트 중 P개를 테스트로 사용하고 나머지를 훈련에 사용 P=1이면 LOO와 동일 | ||
- 가능한 모든 조합에 대해 반복 | ||
|
||
특징 | ||
|
||
- 장점 : LOO의 변형으로, P개의 데이터 포인트에 대한 영향을 조사 가능 | ||
- 단점 : 계산 비용이 아주 높음 | ||
|
||
## Model Evaluation에 사용하는 Metrics | ||
|
||
### 1. Confusion Matrix | ||
|
||
![img](../assets/img/confusion-matrix.png) | ||
|
||
- 실제 클래스와 모델이 예측한 클래스 간의 관계를 2x2 테이블로 나타낸 것 | ||
- 분류 문제에서 주로 사용된다 | ||
|
||
### 나머지 | ||
|
||
- [Evaluation1 - 분류 모델 성능 지표 (Accuracy, Confusion Matrix, Precision, Recall, F1 score, ROC AUC )](https://libertegrace.tistory.com/entry/Evaluation1) | ||
- [Evaluation2. 회귀의 성능 평가 지표(MAE, MSE, RMSE, R제곱)](https://libertegrace.tistory.com/entry/Evaluation2) | ||
|
||
- Accuracy | ||
- Precision | ||
- Recall | ||
- F1-Score | ||
- MSE | ||
- MAE | ||
- R-squared |
5f1c5fd
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
MODEL METRICS
Training variance explained: 33.0%
Test variance explained: 32.0%
Data viz