rmse, mape 오류
<rmse>
import numpy as np
def rmsle(y_test, y_pred):
return np.sqrt(np.mean(np.power(np.log1p(y_test) - np.log1p(y_pred)), 2))
print(np.sqrt(np.mean(np.power(np.log1p(y_test) - np.log1p(y_pred)), 2)))
이렇게 입력하면 예측값은 안뜨고 power() takes from 2 to 3 positional arguments but 1 were given 라고 뜹니다 ㅠ 뭐가 문제인 건가요?

<mape>
import numpy as np
def mape(y_val, pred):
return np.mean(np.abs((y_val - pred)/y_val))**100
print(np.mean(np.abs((y_val - pred)/y_val))**100)
이렇게 입력하면 예측값은 안뜨고 inf라고만 뜹니다. rmse와 mape 둘다 왜 예측값은 안뜨는건가요?
답변 1
0
1 rmsle
수식이 잘못되었어요
def rmsle(y_test, y_pred):
return np.sqrt(np.mean(np.power(np.log1p(y_test) - np.log1p(y_pred), 2)))또는 msle**0.5
from sklearn.metrics import mean_squared_log_error
# MSLE 계산
y_true = [3, 5, 2.5, 7]
y_pred = [2.5, 5, 4, 8]
msle = mean_squared_log_error(y_true, y_pred)
print('MSLE:', msle)
# RMSLE 계산 (squared=False 옵션 사용)
rmsle = mean_squared_log_error(y_true, y_pred, squared=False)
print('RMSLE:', rmsle)
mape는 분모에 0이 있으면 에러가 발생할 수 있어요!
일반적으로는 예측값(분모)를 매우 작은 값으로 처리하는데, 시험이라면 다른 평가지표 사용을 추천합니다.
질문 드립니다.
0
38
2
강의 내용 관련 질문드립니다~
0
35
2
수강 연장 문의
0
33
1
강의자료 일괄 다운로드
0
43
2
수강기간 연장 문의드립니다
0
29
1
list 문제 질문드립니다~
0
31
2
빅분기 실기 12회 재도전
0
40
1
강의 기간 연장 가능여부 검토 요청건
0
30
1
수강기간 연장 문의 드립니다
0
36
2
수강기간 연장 문의드립니다
0
47
2
질문이요
0
51
2
수강기간 연장 문의드립니다.
0
50
2
문제 3-2 질문드립니다
0
44
2
수강기간 연장 문의 드립니다.
0
58
2
변수, 칼럼 , df 구분
0
50
2
수강기간 연장 문의드립니다.
0
50
2
수강기간 연장 문의
0
48
2
수강기간 연장 문의드립니다.
0
42
2
수강기한 연장 문의
0
80
2
수강기간 연장 문의드립니다
0
57
2
결정트리에서 적절한 깊이 선택 후 시각화 과정에서 학습 데이터만 사용하는 이유
0
45
2
수강기간 연장 문의드립니다.
0
71
2
수강연장 문의
0
77
2
수강연장문의
0
53
2





