빅분기 실기 4회차 단답형으로 F1 스코어 계산 문제가 나왔습니다.
F1 스코어 계산식이 기억이 안나는 경우에도 help 기능을 활용하면 도움이 될 수 있습니다.
기출과 유사한 문제를 생성하여 R help 기능을 참고하여 해결하는 과정을 만들어 보았습니다.
문제
분류 문제의 민감도가 0.652 정밀도는 0.345가 나왔다. F1 스코어를 소숫점3자리에서 반올림하여 구하라
정답
0.451
풀이
caret 패키지의 confusionMatrix 함수에 F1을 포함한 다양한 측정지표 계산식이 있다는 점은 알고 있어야 합니다.
작업형 쪽(https://dataq.goorm.io/exam/116674/체험하기/quiz/2)으로 이동하여 R 기능을 수행합니다.
체험하기 환경과 실제 시험환경은 완전 동일하다고 보시면 됩니다.
1. caret 패키지의 사용함수를 확인하기 (confusionMatrix 함수명을 기억하는 경우 skip)
library(caret)
help(package="caret")
결과창 텍스트는 Ctrl+C 로는 복사가 안됩니다.
마우스 오른쪽 버튼을 클릭해서 confusionMatrix 를 복사합니다.
2. confusionMatrix 설명서 확인하기
library(caret)
help(package="caret")
?confusionMatrix
3. 수식 확인 및 계산
수식을 그대로 복사합니다.
수식의 의미는 정밀도와 재현율(=민감도와 동일)을 이용하여 지지고 볶고 하는 내용입니다.
beta 가 1이므로 F1 Score 입니다.
F2 score 를 구하라는 것이 문제라면 beta 에 2를 할당하면 됩니다.
# F1 수식의 변수에 해당하는 부분에 문제에서 주어진 값 할당
beta <- 1
recall <- 0.652
precision <- 0.345
F1 =(1+beta^2)*precision*recall/((beta^2 * precision)+recall) # help 에서 복붙
cat(round(F1,3)) #소숫점 3자리 반올림
'빅분기' 카테고리의 다른 글
4회 빅분기 필기 합격 후기 (1) | 2023.03.07 |
---|---|
[R] 빅분기 작업형 1형 연습 문제 (칼럼명 구하기) (0) | 2022.11.15 |
빅분기 작업형 1유형 연습 문제[R] (0) | 2022.07.15 |
ADsP 빅분기 ADP필기 원트 연속 합격 (1) | 2022.07.10 |
제4회 빅데이터분석기사 실기 만점 후기 3/3 (작업형 2형) (0) | 2022.07.09 |