• 카테고리

    질문 & 답변
  • 세부 분야

    딥러닝 · 머신러닝

  • 해결 여부

    미해결

성능 평가에 대한 질문

23.01.28 17:55 작성 조회수 166

0

안녕하세요 권철민 선생님.

분류까지 강의를 정말 재밌게 잘 들었습니다. 다만 질문이 하나 있는데요,

정확도, 정밀도, 재현율, F1 스코어, AUC 등의 결과가 나왔을 때 이 모델이 우수한지 아닌지를 어떻게 평가하는지가 제 머릿속에서 조금 모호합니다.

AUC가 어떻게 보면 정확도, 정밀도, 재현율의 단점을 보완한 끝판왕인줄 알았는데 강의를 듣다 보니 정밀도, 재현율이 낮아도 정확도, AUC만 높은 경우가 있더라고요..

만약 제가 회사 실무에서 분석을 수행한 뒤 평가 지표를 설명할 때 어떤 지표를 중심으로 강조해야 좋을지 조언 부탁드립니다.

그리고 예를 들어 90%라는 평가가 나왔을 떄 이게 진짜 좋음을 의미하는 것인지? 60%라는 평가가 나왔을 떄 이게 나쁜 모델을 사용했기 때문인지 아니면 주어진 데이터 대비 최선의 결과를 낸 것인지.. 등도 알고 싶네요

답변 1

답변을 작성해보세요.

1

안녕하십니까,

잘 듣고 계시다니 저도 기분이 좋군요. 좋은 수강평도 감사합니다.

  1. 만약 제가 회사 실무에서 분석을 수행한 뒤 평가 지표를 설명할 때 어떤 지표를 중심으로 강조해야 좋을지 조언 부탁드립니다.

    => 모델의 성능 지표를 특정 한가지로 정하실 필요가 전혀 없습니다. 질문에서 적어 주신대로 다양한 업무적인 특성을 반영한 만능 지표는 없습니다.

     

    때문에 모델의 성능지표는 가능한 많은 지표를 함께 보는게 좋습니다(그러니까, precision, recall, f1 score , roc-auc 등...). 모든 지표를 함께 보면 어떤 지표는 좋고, 어떤 지표는 그렇지 않다면 모델이 어떤 약점을 가지고 있는지 알 수 있습니다.

    보통 회사 내부에서 모델을 만들때는 이렇게 다양한 지표들을 함께 봅니다. 그런 다음 모델이 특정 성능지표에는 강하고, 다른 성능 지표에는 약하다면 모델/업무/데이터의 어떤 특성이 이런 결과를 가져오게 되었는지 분석하면서 단점을 보완하는 측면으로 모델 성능 개선을 해나갑니다.

    그리고 일반적으로 여러개의 성능 지표들을 보더라도 이 중에 중점적으로 고려한 성능 지표를 선택하게 됩니다. 이 부분은 업무적인 특성이 큰 역할을 차지 합니다. 가령 재현율이 중요한 업무다라고 판단되면 roc-auc보다 재현율을 가장 중요한 성능 지표로 간주하고 다른 지표들은 보조적인 지표로 삼을 수 있습니다.

그럼에도 불구하고(경험적으로) 업무 도메인이 정해진 영역에서는 선호되는 성능 지표들이 고정되는 경향이 있습니다. 의료영역의 특정 도메인에서는 ROC-AUC가 사용하는걸 선호하지만, 또 다른 도메인에서는 Precision/Recall 또는 강의에서 설명드리지 않지만 PR AUC등을 선호하기도 합니다. 또한 특정 금융영역 에서는 F1 Score를 선호하기도 합니다. 해당 성능 지표들이 업무적인 특성을 상대적으로 잘 반영하고 있기 때문입니다.

요약 드리지만 모든 업무적인 특성을 반영한 만능 지표는 없습니다. 또한 모델 성능을 판단할 때 특정 한가지 지표를 선택할 이유는 없습니다. 하지만 특정 업무적인 특성을 반영한 성능 지표를 핵심 성능 지표로 설정해줘야 할 필요는 있습니다. 그리고 나머지 지표는 보조적으로 모델 성능을 판단할 때 사용하는게 좋습니다.

감사합니다.

답변 정말 감사합니다!