1. MAE (Mean Absolute Error, 평균 절대 오차)
mae = mean_absolute_error(actual, predicted)
# = Σ|실제값 - 예측값| / n
- 실제값과 예측값의 차이의 절대값의 평균
- 직관적으로 이해하기 쉬움 (예: MAE가 2라면 평균적으로 2명 정도 차이난다는 의미)
- 원래 단위(이 경우 플레이어 수)로 표현됨
2. MSE (Mean Squared Error, 평균 제곱 오차)
mse = mean_squared_error(actual, predicted)
# = Σ(실제값 - 예측값)² / n
- 실제값과 예측값의 차이의 제곱의 평균
- 큰 오차에 더 큰 가중치를 둠 (제곱 때문에)
- 원래 단위의 제곱으로 표현됨 (직관적 해석이 어려움)
3. RMSE (Root Mean Squared Error, 평균 제곱근 오차)
rmse = np.sqrt(mse)
# = √(Σ(실제값 - 예측값)² / n)
- MSE의 제곱근
- MSE를 원래 단위로 변환한 것
- MAE와 마찬가지로 원래 단위로 표현됨
- 큰 오차에 더 민감
예시
actual = [10, 20, 30, 40, 50]
predicted = [12, 18, 31, 37, 49]
차이 = [2, -2, 1, -3, -1]
MAE = (|2| + |-2| + |1| + |-3| + |-1|) / 5 = 1.8
MSE = (4 + 4 + 1 + 9 + 1) / 5 = 3.8
RMSE = √3.8 ≈ 1.95
각각의 특징:
- MAE: 모든 오차를 동일하게 취급
- MSE: 큰 오차에 더 큰 페널티 (제곱 때문에)
- RMSE: MSE를 원래 단위로 변환, 큰 오차에 민감
선택 기준:
- MAE: 오차의 절대적 크기가 중요할 때
- MSE: 큰 오차를 특히 피하고 싶을 때
- RMSE: MSE의 의미를 원래 단위로 해석하고 싶을 때
플레이어 수 예측의 경우, MAE가 가장 직관적일 수 있습니다 (평균적으로 몇 명 정도 차이나는지 바로 알 수 있기 때문)
'Data Analysis > Python' 카테고리의 다른 글
Python과 SPSS, R의 차이 (0) | 2024.03.07 |
---|---|
3 Shift Work Schedule Automatic Program_Python (0) | 2023.11.08 |
[파이썬] 독학하기 좋은 사이트 추천 (0) | 2023.07.06 |
[Pandas] 인덱스 설정, 수정, 해제 _Day2 (0) | 2023.06.13 |
[Pandas] 칼럼명, 인덱스명, 값 기입 후 출력 & 컬럼명 설정 및 수정 _Day1 (0) | 2023.06.13 |