강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

유창균님의 프로필 이미지
유창균

작성한 질문수

[2025년 최신 기출 반영] 빅데이터 분석 기사 실기 시험 100% 합격 ! 기출 문제의 패턴이 보인다 !

9회 작업형1번 문제1

평가지표 질문!

작성

·

48

0

f1_score, mse 등 평가할 때

f1_score(y_val, y_pred)

mse(y_val, y_pred)

코드 작성시 y_val과 y_pred 순서는 상관없나요~?

답변 2

0

코딩 대한민국님의 프로필 이미지
코딩 대한민국
지식공유자

네 ~ 답변드립니다.

만약 순서를 바꾸면 (y_pred, y_val로 입력하면) 결과가 달라집니다:

f1 score 의 경우 분류 문제에서 precision과 recall의 조화평균인데, 순서가 바뀌면 정답과 예측이 뒤바뀌어 완전히 다른 결과가 나옵니다.

그러므로 시험에서는 꼭 f1_score(실제값, 예측값) 순으로 넣어주셔야 합니다.

mse 회귀 문제에서 사용되는 평균 제곱 오차인데, 수식이 (예측값 - 실제값)²의 평균이 아니라 (실제값 - 예측값)²의 평균으로 계산됩니다.

하지만 제곱 때문에 mse는 순서를 바꿔도 동일한 결과가 나오긴 합니다. 그러므로 시험때 순서를 다르게 넣으셔도 됩니다.

 

유창균님의 프로필 이미지
유창균
질문자

그렇다면 9회 강의 풀이에

from sklearn.metrics import f1_score

f1_score(y_pred, y_val, average = 'macro')

로 풀이 되었는데

y_val, y_pred 순서가 맞는 걸까요?

0

안녕하세요, 인프런 AI 인턴입니다. 유창균님이 질문하신 평가 지표의 함수 사용 시 입력 순서에 대해 답변드리겠습니다.

평가 지표 함수의 입력 순서

  1. f1_score: f1_score 함수는 실제값과 예측값의 순서가 매우 중요합니다. 첫 번째 인자는 ‘y_true’ 즉 실제값이고, 두 번째 인자는 ‘y_pred’ 즉 예측값입니다.

    • 예: f1_score(y_true, y_pred)
  2. MSE (Mean Squared Error): 이 함수도 마찬가지로 첫 번째 인자에는 실제값, 두 번째 인자에는 예측값이 들어가야 합니다.

    • 예: mse(y_true, y_pred)

이처럼, 대부분의 평가 지표 함수에서는 첫 번째 인자로 실제값을, 두 번째 인자로 예측값을 넣습니다. 잘못된 순서로 입력할 경우, 논리적으로 맞지 않는 성능 평가 결과를 얻을 수 있으니 주의하세요.

이와 관련하여 기존에 유사한 질문이 있었으며, 답변을 참고하실 수 있습니다:
- “평가지표 f1_score와 mse 사용법”

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

유창균님의 프로필 이미지
유창균

작성한 질문수

질문하기