Insight

F1 score와 머신러닝 - 정의, 원리, 계산법, 한계, 대응방안

머신러닝 모델의 성능을 예측하고 개선하는 방법

2023
.
08
.
02
F1 score와 머신러닝 - 정의, 원리, 계산법, 한계, 대응방안

F1 Score 란 무엇인가?

오랫동안 Model accuracy는 머신러닝 모델을 평가하고 비교하는 데 사용되는 유일한 지표였습니다. 그러나 Model accuracy는 모델이 전체 데이터 세트에서 몇 번이나 올바른 예측을 했는지를 계산하는 것으로, 평가한 횟수와 연관된 데이터가 전체 데이터 셋의 분포가 유사한 경우에만 정확하다고 말할 수 있다는 한계가 존재합니다.

Is F1-Score Really Better than Accuracy?
Is F1-Score Really Better than Accuracy?

F1 score는 정밀도(Precision)와 재현율(Recall)의 조화평균으로 계산되는 성능 측정 지표입니다. 주로 이진 분류(classification) 문제에서 사용되며, 모델의 성능을 예측하고 결과를 평가하는 데 사용됩니다.

F1 score는 Accuracy처럼 전체 성능이 아닌 class 별 성능을 자세히 분석하여 AI 모델의 예측 능력을 평가하는 또 다른 머신 러닝 평가 지표입니다. F1 score는 모델의 Precision과 Recall, 두 가지 경쟁 meric을 결합한 것으로, 최근에는 널리 사용되고 있습니다.

이 글에서는 F1 Score의 구조와 원리, 사용 사례와 개선 방법에 대해서 소개하겠습니다.

F1 Score 원리와 계산법

Accuracy

F1 Score에 대해 구체적으로 알아보기 전에, 먼저 Accuracy (정확도)에 대해 알아보겠습니다. classification 모델을 예를 들어 설명하면, Accuracy(정확도)는 모델이 전체 샘플 중에서 정확히 예측한 샘플의 비율을 나타내는 평가 지표입니다. 쉽게 말해, 모델이 얼마나 정확하게 예측하는지를 나타내는 값입니다.

이 계산법들을 이해하기 위해서는 먼저 혼동 행렬을 살펴보고 가야합니다. 혼동 행렬이란, 데이터 세트에 대한 모델의 예측 성능을 의미합니다. “양수” 클래스와 “음수” 클래스로 구성된 이진 클래스 데이터 집합의 경우, 혼동 행렬은 네 가지 필수 구성 요소를 가집니다.

  • True Positive (TP) : “양성”으로 정확하게 예측된 샘플의 수
  • False Positive (FP) : “양성”으로 잘못 예측된 샘플의 수
  • True Negatives (TN) : “음성”으로 올바르게 예측된 샘플의 수
  • False Negatives (FN) : “음성”으로 잘못 예측된 샘플의 수

Accuracy = (예측이 맞은 샘플의 수) / (전체 샘플의 수)

accuracy

이를 간단한 예제로 설명해보겠습니다. 예를 들어, 어떤 분류 모델이 100개의 샘플을 예측한 뒤, 85개의 샘플을 정확히 예측했다면, Accuracy는 85%가 됩니다. 하지만 Accuracy 계산 방식이 항상 적절한 것은 아닌데요. 그 이유는 ‘Imbalanced data’가 존재하기 때문입니다.

Imbalanced data

Imbalanced data(불균형 데이터)는 분류 문제에서 각 클래스의 샘플 수가 불균형한 상황을 의미합니다. 일반적으로는 하나의 클래스에 대한 샘플 수가 상대적으로 많고, 다른 클래스에 대한 샘플 수가 적어서 발생합니다.

예를 들어, Error detection을 위한 데이터셋은 일반적으로 정상 샘플은 많고, 비정상 샘플은 적습니다. 혹은 의료 진단에서 희귀 질병을 판단하는 경우에도 희귀 질병에 대한 샘플 수는 매우 적을 수 있습니다. 이러한 불균형 데이터는 모델의 성능을 평가하거나 학습할 때 문제를 야기할 수 있습니다. 이는 모델이 주로 많은 클래스에 집중하여 예측하고, 적은 클래스는 정확히 예측하지 못하는 결과를 초래할 수 있습니다. 적은 클래스에 대한 예측 정확도가 낮아지면 모델의 성능을 왜곡할 수 있기에 반드시 주의해야 하죠.

따라서 Accuracy, 정확도 계산 방식은 클래스가 불균형할 때는 좋은 metric이 아닙니다. 위에서 설명한 예시에 Accuracy를 평가 지표로 사용하면, 모델은 확률이 높은 클래스만 선택해서 정확도를 속이기도 합니다. 즉, 모델은 매우 나쁜 성능을 보이고 있지만 정확도는 높기 때문에 사용자 입장에서 좋은 결과처럼 보일 수 있기 때문에, Accuracy만으로 모델의 성능을 정확히 평가하기 어렵습니다. 따라서 데이터 불균형 문제를 해결하기 위해 F1 Score를 사용하게 됩니다.

F1 Score 원리

Precision (정밀도) 와 Recall (재현율) 은 불균형 데이터에서 사용하는 가장 대표적인 metric이자, 지금 알아보려는 F1 Score의 기초라고 할 수 있습니다. 이 두 가지의 조화평균을 구한 것이 F1 Score이지만, 각각 개별 metric으로 사용하기도 합니다.

Precision

precision

Precision(정밀도)는 분류 모델의 성능을 평가하기 위한 지표 중 하나로, 모델이 양성으로 예측한 샘플 중에서 실제로 양성인 샘플의 비율을 나타냅니다.

여기서 True Positive(참 양성,TP)는 모델이 양성으로 예측한 샘플 중에서 실제로 양성인 샘플의 수를 의미합니다. 반면 False Positive(거짓 양성, FP)로, 모델이 양성으로 잘못 예측한 샘플 중에서 실제로는 음성인 샘플의 수를 의미합니다.

간단한 예제로 설명해보겠습니다. 만약 어떤 분류 모델이 100개의 양성이라고 예측한 샘플 중에서 85개가 실제로 양성이었고, 나머지 15개는 음성이었다면, TP는 85이고 FP는 15가 됩니다. 이 경우, Precision은 85 / (85 + 15) = 0.85가 됩니다. 정밀도는 "양성"으로 예측한 것 중에서 실제로 양성인 비율로, 모델이 얼마나 정확하게 양성으로 예측하는지를 나타내죠.

높은 정밀도는 모델이 거짓 양성을 최소화하고, 양성으로 예측한 것이 실제로 양성인 경우를 많이 찾아낼 수 있다는 것을 의미합니다. 따라서, 정밀도가 높을수록 모델의 성능이 좋다고 평가할 수 있습니다.

Recall

recall

Recall(재현율)은 분류 모델의 성능을 평가하기 위한 지표 중 하나로, 실제로 양성인 샘플 중에서 모델이 양성으로 정확히 예측한 샘플의 비율을 나타냅니다.

여기서 TP는 모델이 양성으로 예측한 샘플 중에서 ‘실제로 양성인 샘플의 수’입니다. FN은 모델이 음성으로 잘못 예측한 샘플 중에서 실제로는 양성인 샘플의 수를 뜻합니다.

만약 어떤 분류 모델이 100개의 실제 양성 샘플 중에서 85개를 양성으로 정확히 예측했고, 나머지 15개를 음성으로 잘못 예측했다면, TP는 85이고 FN은 15가 됩니다. 이 경우, 재현율은 85 / (85 + 15) = 0.85가 됩니다.

재현율은 실제로 양성인 샘플 중에서 모델이 얼마나 많이 양성으로 예측하는지를 나타내므로, 모델이 양성인 샘플을 놓치는 정도를 나타냅니다. 높은 재현율은 모델이 실제로 양성인 샘플을 잘 찾아내는 것을 의미하므로, 모델의 민감도(Sensitivity)라고도 불립니다. 따라서, 재현율이 높을수록 모델의 성능이 좋다고 평가할 수 있습니다.

F1 score calculation

f1 score equation

Precision은 모델이 분류한 양성 예측 중에서 실제로 양성인 비율을 나타내며, Recall은 실제 양성 중에서 모델이 양성으로 예측한 비율입니다. F1 score는 이 두 평가 지표를 모두 고려하여 모델의 예측 성능을 평가하기 때문에, 정확한 예측과 재현율의 평균을 동시에 고려할 수 있는 장점이 있습니다.

F1 Score는 이 두 가지의 지표의 조화평균을 구한 것인데요. 조화평균을 사용하는 이유는 두 metric 중 더 작은 값에 영향을 많이 받기 위함입니다. F1 Score는 0.0~1.0 사이의 값을 가지는데, Precision과 Recall 값이 모두 갖춰져야만 높은 지표를 얻을 수 있습니다. 불균형 데이터에 취약한 모습을 보였던 Accuray 보다 훨씬 더 모델 성능을 구체적으로 가늠할 수 있죠.

결론적으로, 다른 평가 지표들은 계산 방법이 간단한 대신 이진 분류 모델의 예측 성능을 전부 판별하진 못할 수 있어, 경향성이 생길 수 있습니다. 하지만, F1 score는 두 지표의 평균치를 구하는 조화 평균을 사용하여 조금 더 정확하게 모델의 예측 성능을 평가할 수 있습니다.

Precision vs. Recall

Recall(재현율)과 Precision(정밀도)은 분류 모델의 성능을 평가하는 지표로, 각각 모델의 예측 결과에 대한 다른 측면을 측정합니다. 두 metrics의 차이점은 다음과 같습니다.

정의

  • Precision(정밀도): 모델이 양성으로 예측한 샘플 중에서 실제로 양성인 샘플의 비율
  • Recall(재현율): 실제로 양성인 샘플 중에서 모델이 양성으로 정확히 예측한 샘플의 비율

관점

  • 재현율은 실제 양성 중에 얼마나 많이 찾아내는지에 초점
  • 정밀도는 모델이 양성으로 예측한 샘플 중에 실제로 양성인 비율에 초점

활용

  • 재현율은 모델이 실제로 양성인 샘플을 얼마나 잘 찾아내는지를 나타내므로, 거짓 음성(실제 양성인데 음성으로 예측한 경우)를 최소화하는 데 중점
  • 정밀도는 모델이 올바르게 양성이라고 분류한 샘플 중에 실제로 양성인 샘플이 얼마나 많은지를 나타내므로, 거짓 양성(실제로는 음성인데 양성으로 예측한 경우)를 최소화하는 데 중점

Precision-Recall Trade off

F1 score explained
How to measure an AI models performance - F1 score explained

이상적으로 좋은 모델은 Positive한 것을 제대로 분류하고, Positive한 것만 제대로 분류하면 됩니다. 하지만 현실적으로 두 가지 모두 높이는 방법이 어렵기 때문에, 어떤 것에 초점을 맞출 지를 고민할 필요가 있습니다.

두 가지 metric이 각각 중요하게 생각하는 것이 다르기 때문에, 활용 분야에서도 서로 다른 양상을 띕니다. 예를 들어, 암 진단 시에 실제 암 환자를 놓치지 않는 것이 중요한 경우 Recall에 중점을 두지만, 스팸 메일 분류 시 정상 메일을 스팸으로 잘못 분류하는 비율을 낮추기 위해 Precision에 초점을 맞추기도 하죠.

요약하면, 재현율은 실제 양성을 놓치지 않도록 하는데 초점을 둡니다. 반면 정밀도는 모델이 올바르게 양성으로 분류하는 비율에 초점을 둡니다. 둘은 분류 모델의 평가에서 상충하는 관계를 가지므로, 평가하고자 하는 문제나 목표에 따라 적절한 방법을 선택해야 합니다.

R-squared 란 무엇인가?

R-squared(결정 계수, coefficient of determination)은 회귀 모델에서 사용되는 평가 지표입니다. 모델이 주어진 데이터를 얼마나 잘 설명하는지를 측정하기 위해 사용됩니다. R-squared는 종속 변수의 총 변동량 중 모델이 설명하는 변동량의 비율로, 0부터 1까지의 값을 가집니다. R-squared 값이 1에 가까울수록 모델이 데이터를 잘 설명한다는 것을 의미합니다.

R-squared = 1 - (잔차 제곱합 / 종속 변수의 총 제곱합)

R-squared

잔차 제곱합은 예측값과 실제 값 사이의 차이(잔차)를 제곱하여 모두 합한 값입니다. 종속 변수의 총 제곱합은 종속 변수 값들을 평균으로부터 얼마나 떨어진 정도로 제곱하여 모두 합한 값입니다. R-squared 값은 일반적으로 0부터 1 사이의 값을 가지지만, 음수 값이 나올 수도 있습니다.

R-Squared in One Picture
R-Squared in One Picture

이는 모델이 데이터를 잘 설명하지 못하는 경우를 의미합니다. R-squared는 모델의 적합도를 판단하는 데 사용되며, 높은 R-squared 값은 모델이 데이터를 잘 설명한다는 의미로 해석될 수 있죠. 하지만 R-squared는 독립 변수의 수와 관련이 없어서, 모델의 복잡성과 관련된 정보를 제공하지는 않습니다. 따라서, 모델 비교를 할 때에는 Accuracy와 마찬가지로 다른 평가 지표나 정보도 고려하는 것이 좋습니다.

F1 Score 사용 사례

harmonic mean
정규화된 고조파 평균 플롯(x는 정밀도, y는 리콜, 세로축은 F1 점수, 백분율 포인트)

F1 score는 F1 score는 정밀도(Precision)와 재현율(Recall)의 조화 평균값으로, 이진 분류 모델의 성능을 평가하는 지표 중 하나입니다. F1 score는 정밀도와 재현율의 균형을 조정하여 정확한 예측과 상승률의 평균을 동시에 고려할 수 있는 장점이 있습니다.

  • 클래스 불균형 데이터:
    클래스가 불균형하게 분포된 경우, 즉 한 클래스의 샘플 수가 다른 클래스에 비해 현저히 많은 경우, Accuracy(정확도)만으로 모델을 평가하는 것은 적절하지 않을 수 있습니다. 이런 경우 F1 score를 사용하여 모델의 성능을 정확하게 측정할 수 있습니다.
  • 암 진단 등 실제 양성의 중요성:
    실제로 양성인 샘플을 놓치면 큰 문제가 발생하는 경우, 예를 들어 암 진단 등에서 중요한 참 양성을 잘 판단하는 능력을 가진 모델이 필요한 경우가 있습니다. 이때 F1 score는 모델의 재현율과 정밀도 둘 모두를 고려하여 성능을 평가할 수 있는 지표입니다.
  • 텍스트 분류나 정보 검색:
    NTT 인식이나 단어 분할의 평가 등 NLP 프로세스에서도 사용됩니다. 텍스트 분류 문제나 정보 검색에서는 긍정과 부정, 또는 관련 있는 문서와 관련 없는 문서 등과 같이 두 개의 클래스로 분류하는 경우가 많습니다. 이런 문제에서도 F1 score를 사용하여 정밀도와 재현율을 고려한 성능 평가를 할 수 있습니다.

F1 Score 개선하는 방법

Analyzing machine learning model performance
Analyzing machine learning model performance

F1 Score는 0~1까지 점수를 매길 수 있습니다. F1 Score가 낮게 나온다면 정밀도와 회수율이 모두 낮다는 뜻으로 해석할 수 있습니다. F1 Score를 구성하는 정밀도와 재현율이 각각 낮은 경우가 있습니다. 정밀도 점수가 낮으면 머신러닝 모델이 잘못된 주석을 생성하고 있다는 뜻이며, 재현율이 낮다는 것은 머신러닝 모델이 생성했어야 하는 주석을 생성하지 못했음을 나타냅니다. 이는 유형 시스템의 복잡성이나 교육 문서의 적절성, 인간 라벨러의 기술 및 기타 요인 등 다양한 요인에 따라 발생할 수 있습니다. 아래는 F1 Score를 개선하는 일반적인 방법입니다.

  • 학습 데이터 조정:
    학습 데이터 자체를 더 추가하거나 데이터에 주석을 더 추가하는 것입니다. 그 외에도 데이터 가공 품질을 개선하는 방식으로, F1 Score를 개선할 수 있습니다.
  • 샘플링(Balancing Sampling):
    클래스 불균형 데이터에서는 일반적으로 예측하고자 하는 클래스보다 다른 클래스의 샘플 수가 많을 수 있습니다. 이러한 경우, 데이터를 균형있게 샘플링하여 모델을 학습시키는 것이 중요합니다. Undersampling(언더샘플링)은 다수 클래스의 샘플 수를 일부 감소시키는 방법이고, Oversampling(오버샘플링)은 소수 클래스의 샘플 수를 증가시키는 방법입니다.
  • 가중치 부여(Class Weights):
    소수 클래스의 중요성을 강조하기 위해, 소수 클래스에 더 큰 가중치를 부여하여 모델의 학습에 반영할 수 있습니다. 이렇게 하면 모델이 소수 클래스를 더 잘 학습할 수 있으며, 예측 성능을 향상시킬 수 있습니다.
  • 예측 임계값 조정(Threshold Adjustment):
    모델의 예측 임계값을 조정하여 정밀도와 재현율 사이의 균형을 조정할 수 있습니다. 예를 들어, 임계값을 낮추면 분류 결과가 더 많이 양성으로 분류되어 재현율이 증가하고, 정밀도가 감소할 수 있습니다. 임계값을 높이면 정밀도가 증가하고, 재현율이 감소할 수 있습니다.

일반적으로 혼동되는 유형이나 자주 발생하는 유형을 낮은 확률로 식별하게끔 만들면 소수 클래스에 대한 인식 능력이 올라갈 것입니다. 이외에도 특정 유형의 F1 Score가 낮은 경우, 해당 유형에 적용되는 주석 지침의 명확성을 검토해야 합니다. 교육 데이터에서 자주 발생하지 않는 유형에 대해 사전을 추가하는 등 학습 데이터를 자세히 검토하고 모니터링하는 방법으로 F1 Score를 높일 수 있습니다.

F1 Score 한계와 대안

한계

Predictive Coding Performance and the Silly F1 Score
Predictive Coding Performance and the Silly F1 Score

이렇듯 F1 Score는 이진 분류 모델을 평가하기 위해 범용적으로 사용하는 metric이지만, 완벽한 것은 아닙니다.

  1. F1 Score는 오차 분포에 대한 정보를 제공하지 않습니다.
    F1 Score는 Precision과 Recall을 가지고 모델의 성능을 요약하는 단일값을 제공합니다. 그러나 특정 응용프로그램에서 중요할 수 있는 오류 분포에 대한 정보는 제공하지 않습니다.
  2. F1 Score는 Precision과 Recall의 동등한 중요성을 가정합니다.
    Precision과 Recall 모두에 동등한 가중치를 부여하며, 동일한 중요성을 가지고 있다고 가정합니다. 그러나 두 지표는 일부 애플리케이션에서 중요성이 다를 수 있기 때문에, 조화평균을 구하는 F1 Score보다 다른 지표가 더 유용할 수 있습니다.
  3. F1 Score는 다중 클래스 분류에 최적화되어 있지 않습니다.
    이 지표는 이진 분류 모델을 위해 설계되었기 때문에, 다중 클래스 분류 문제에는 적용되지 않을 수 있습니다. 이 경우에는 Precision이나 Micro/Macro F1 Score와 같은 지표가 더 적절할 수 있죠.
  4. F1 Score는 데이터의 특정 패턴에 민감하지 않을 수 있습니다.
    F1 Score는 데이터의 특정 패턴이나 특성을 고려하지 않는 범용적인 metric입니다. 경우에 따라, 문제의 특정 속성을 캡쳐하고자 한다면 보다 전문화된 metric이 필요할 수 있습니다.

그렇다면 대안은?

결론적으로, F1 score는 클래스 불균형 문제에서 유용하고 재현율과 정밀도의 균형을 평가하는 좋은 평가 지표입니다. 하지만 위의 한계들을 고려하여 모델의 성능 평가를 보다 포괄적으로 진행하는 것이 좋습니다. 다른 평가 지표와 함께 사용하거나, 문제의 특성에 맞게 적절한 지표를 선택하는 것이 중요합니다. 아래는 F1 Score를 보완할 수 있는 대안을 소개합니다.

ROC Curves, AUC

Understanding AUC - ROC Curve
Understanding AUC - ROC Curve

ROC(Receiver Operating Characteristic) 곡선 및 AUC(Area Under the Curve)는 이진 분류 모델의 성능을 평가하는 데 사용되는 평가 지표입니다. 다양한 분류 임계값 범위에서 양의 인스턴스와 음의 인스턴스를 구별하는 모델의 능력을 측정할 수 있습니다. 특히 F1 Score와 마찬가지로 imbalanced data에 유용하다는 특징이 있습니다. 자세한 내용은 아래에서 확인하실 수 있습니다.

ROC curves

  • 이진 분류 모델에서 임계값을 변화시켰을 때, 모델의 Precision(True positive Rate)과 1에서 모델의 특이도(False Positive Rate)를 각각 x축과 y축으로 그린 곡선
  • 모델이 양성과 음성을 얼마나 잘 분류하는지 시각화할 수 있음
  • ROC Curves 상에서 왼쪽 위 모서리에 가까운 지점에 위치할 수록 좋은 성능을 나타냄

AUC

  • ROC 곡선 아래의 면적으로, ROC 곡선의 모든 지점에서의 재현율과 특이도의 조합에 대한 면적을 의미
  • AUC 값은 0부터 1까지의 범위를 가지며, 최적의 모델에서는 AUC가 1에 가까운 값이 됨
  • AUC는 임의로 선택된 양성 샘플과 음성 샘플을 비교했을 때, 양성 샘플이 더 높은 확률로 예측되는 경향을 제공
  • AUC 값으로 모델을 비교하면, AUC가 더 큰 모델일수록 더 좋은 성능을 가지는 경향

F-Beta Score

F-Beta Score — PyTorch-Metrics 1.0.1 documentation
F-Beta Score — PyTorch-Metrics 1.0.1 documentation

F-beta score도 F1 Score와 마찬가지로 이진 분류 모델의 성능을 평가하는 지표로, Precision과 Recall의 조화 평균을 계산해서 최종 점수를 매기는 방식입니다. 다만 계산 방식에서 F1 Score와는 조금 다른 것을 확인할 수 있습니다.

F-beta score = (1 + beta^2) * (Precision * Recall) / ((beta^2 * Precision) + Recall)
F-beta score

여기서 beta는 모델이 재현율에 대해 정밀도를 얼마나 중요하게 간주하는지를 제어하는 매개 변수입니다. beta 값이 클수록 재현율에 더 큰 가중치를 두게 되고, 작을수록 정밀도에 더 큰 가중치를 두게 됩니다. 일반적으로 beta 값은 1, 0.5, 2와 같이 정해지며, beta 값이 1인 경우에는 F1 score와 동일합니다.

F-beta score는 정밀도와 재현율 사이의 균형을 조정하여 모델의 예측 성능을 평가하는 데 사용됩니다. 예를 들어, 실제 양성을 제대로 찾아내는 재현율이 더 중요한 경우에는 beta 값을 2로 설정하여 재현율에 더 큰 가중치를 둘 수 있습니다. 반대로, 정밀도가 더 중요한 경우에는 beta 값을 0.5로 설정하여 정밀도에 더 큰 가중치를 둘 수 있습니다.

따라서 F-beta score를 사용하면 모델의 예측 성능을 정밀도와 재현율의 균형을 조정하여 관리할 수 있습니다. 모델의 특성과 평가하고자 하는 문제에 따라 적절한 beta 값을 선택하여 F-beta score를 계산할 수 있는 것이죠.

Geometric Mean

Geometric Mean
Geometric Mean

G-mean(Geometric Mean)은 이진 분류 모델의 성능을 평가하기 위한 평가 지표 중 하나입니다. 재현율(Recall)과 특이도(Specificity)의 기하 평균으로 계산되며, 클래스 불균형 문제에서 모델의 성능을 정확하게 평가할 수 있도록 도와줍니다.

G-mean = √(Recall * Specificity)

G-mean

Recall은 실제 양성 중에서 모델이 양성으로 정확히 예측한 비율이며, 특이도는 실제 음성 중에서 모델이 음성으로 정확히 예측한 비율입니다. G-mean은 이 두 지표를 기하 평균한 값으로, 모델의 양성 및 음성 클래스에 대한 평균 예측 성능을 나타냅니다.

G-mean은 클래스 불균형 데이터에서 모델의 성능을 평가하는 데 유용합니다. 이는 불균형 데이터에서 일반적인 평가 지표인 정확도(Accuracy)가 왜곡될 수 있는 경우를 보완하고, 모델이 양성 및 음성 클래스를 모두 골고루 잘 예측하는 성능을 측정할 수 있도록 도와줍니다.

따라서 G-mean은 모델의 예측 능력과 신뢰성을 동시에 평가할 수 있는 지표로서 활용됩니다. 값이 1에 가까울수록 모델의 성능이 높다고 해석할 수 있습니다. 그러나 G-mean도 특정 문제와 데이터에 따라 한계가 있을 수 있으므로, 다른 평가 지표와 함께 고려하고 문제의 특성에 맞는 지표를 선택하여 사용하는 것이 중요합니다.

결론: 학습 데이터 정확도를 통해 F1 Score를 개선하고, 모델 완성도를 확보할 수 있다.

F1 Score는 Precision과 Recall 모두에 동일한 가중치를 할당하기 때문에, 분류 모델 평가 지표에서 중요한 차이점이 가려질 수 있습니다. F1 Score를 사용할 때는 구체적인 문제와 맥락을 고려하면서, 과제의 목표와 요구사항을 탐색하고 적절한 측정 기준을 선택할 필요가 있습니다. 즉, 구체적인 상황과 맥락을 고려했을 때 다른 평가지표가 F1 Score보다 더 효과적일 수 있다는 것이죠. 모델의 성능을 종합적으로 평가하기 위해서는 다른 메트릭 및 요인을 함께 평가할 필요가 있습니다.

상황에 따라 다르지만 F1 Score가 0.7 이상일 때 좋은 모델이라고 간주하고 있습니다. 높은 점수를 가진다고 해서 만능인 모델은 아니지만, F1 Score가 높은 모델은 분명 종합적으로 모델 성능이 좋다고 볼 수 있죠. 높은 F1 Score를 확보하기 위해서는 사전에 학습한 데이터의 품질이 중요하며, 성능 개선을 위해 훈련 데이터를 구체적으로 검토하고 모니터링하는 과정이 중요합니다. 데이터헌트가 학습 데이터 정확도 99% 달성까지 많은 연구와 노력을 거듭한 이유도, 최종적인 모델의 완성도를 높이기 위함인 것이죠.

👉 Generative AI의 fine-tuning에 대해 알고 싶다면?

Reference.

  1. F1 score란?
  2. 머신러닝 분류 평가지표 이해하기(정확도, 정밀도, 재현율, F1 스코어) | by WANGGEON LEE | Medium
  3. 머신러닝 분류모델 평가(정밀도,재현율,f1-score등)
  4. Is F1-Score Really Better than Accuracy? | by Samuele Mazzanti | Towards Data Science
  5. A Look at Precision, Recall, and F1-Score | by Teemu Kanstrén | Toward Data Science

Talk to Expert