오케스트레이션 워크플로 모델에 대한 평가 메트릭

데이터 세트는 학습용 세트와 테스트용 세트의 두 부분으로 나뉩니다. 학습 집합은 모델을 학습시키는 데 사용되고 테스트 집합은 모델 성능 및 평가를 계산하기 위해 학습 후 모델을 테스트하는 데 사용됩니다. 테스트 집합은 학습 프로세스를 통해 모델에 도입되지 않으므로 모델이 새 데이터에 대해 테스트되었는지 확인해야 합니다.

학습이 성공적으로 완료되면 모델 평가가 자동으로 트리거됩니다. 평가 프로세스는 학습된 모델을 사용하여 테스트 세트의 발화에 대한 사용자 정의 의도를 예측하고 제공된 태그(진리 기준선 설정)와 비교하는 것으로 시작됩니다. 모델의 성능을 검토할 수 있도록 결과가 반환됩니다. 평가의 경우 오케스트레이션 워크플로는 다음 메트릭을 사용합니다.

  • 정밀도: 모델이 얼마나 정확하고 정확한지를 측정합니다. 올바르게 식별된 긍정(진양성)과 식별된 모든 긍정 간의 비율입니다. 정밀도 메트릭은 예측된 클래스 중 얼마나 많은 레이블이 올바르게 지정되었는지 보여 줍니다.

    Precision = #True_Positive / (#True_Positive + #False_Positive)

  • 재현율: 실제 양성 클래스를 예측하는 모델의 능력을 측정합니다. 예측된 진양성과 실제로 태그된 것 간의 비율입니다. 재현율 메트릭은 예측된 클래스 중 얼마나 많은 것이 올바른지 보여 줍니다.

    Recall = #True_Positive / (#True_Positive + #False_Negatives)

  • F1 점수: F1 점수는 정밀도와 재현율의 함수입니다. 정밀도와 재현율 사이의 균형을 추구할 때 필요합니다.

    F1 Score = 2 * Precision * Recall / (Precision + Recall)

정밀도, 재현율 및 F1 점수는 다음과 같이 계산됩니다.

  • 각 의도를 개별적으로(의도 수준 평가)
  • 전체 모델에 대해(모델 수준 평가)

정밀도, 재현율 및 평가의 정의는 의도 수준 및 모델 수준 평가 모두에서 동일합니다. 그러나 진양성, 가양성가음성의 개수는 다를 수 있습니다. 예를 들어 다음 텍스트를 고려합니다.

예시

  • thank you very much로 응답합니다.
  • 내 친구에게 전화합니다.
  • Hello
  • 안녕하세요.

사용된 의도는 CLUEmailGreeting입니다.

모델은 다음과 같은 예측을 수행할 수 있습니다.

발화 예측된 의도 실제 의도
thank you very much로 응답합니다. CLUEmail CLUEmail
내 친구에게 전화합니다. 인사말 CLUEmail
Hello CLUEmail 인사말
Goodmorning 인사말 인사말

CLUEmail 의도에 대한 의도 수준 평가

Count 설명
참 긍정 1 발화 1은 CLUEmail로 올바르게 예측되었습니다.
거짓 긍정 1 발화 3은 CLUEmail로 잘못 예측되었습니다.
거짓 부정 1 발화 2는 Greeting으로 잘못 예측되었습니다.

정밀도 = #True_Positive / (#True_Positive + #False_Positive) = 1 / (1 + 1) = 0.5

재현율 = #True_Positive / (#True_Positive + #False_Negatives) = 1 / (1 + 1) = 0.5

F1 점수 = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5

Greeting 의도에 대한 의도 수준 평가

Count 설명
참 긍정 1 발화 4는 Greeting으로 올바르게 예측되었습니다.
거짓 긍정 1 발화 2는 Greeting으로 잘못 예측되었습니다.
거짓 부정 1 발화 3은 CLUEmail로 잘못 예측되었습니다.

정밀도 = #True_Positive / (#True_Positive + #False_Positive) = 1 / (1 + 1) = 0.5

재현율 = #True_Positive / (#True_Positive + #False_Negatives) = 1 / (1 + 1) = 0.5

F1 점수 = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5

집합적 모델에 대한 모델 수준 평가

Count 설명
참 긍정 2 모든 의도에 대한 TP 합계
거짓 긍정 2 모든 의도에 대한 FP 합계
거짓 부정 2 모든 의도에 대한 FN 합계

정밀도 = #True_Positive / (#True_Positive + #False_Positive) = 2 / (2 + 2) = 0.5

재현율 = #True_Positive / (#True_Positive + #False_Negatives) = 2 / (2 + 2) = 0.5

F1 점수 = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5

혼동 행렬

혼동 행렬은 모델 성능 평가에 사용되는 N x N 행렬입니다. 여기서 N은 의도의 수입니다. 매트릭스는 실제 태그를 모델에서 예측한 태그와 비교합니다. 이를 통해 모델이 얼마나 잘 수행되고 있으며 어떤 종류의 오류가 발생하는지에 대한 전체적인 관점을 제공합니다.

혼동 행렬을 사용하여 서로 너무 가까이 있고 자주 혼동되는 의도(모호성)를 식별할 수 있습니다. 이 경우 이러한 의도를 함께 병합하는 것이 좋습니다. 이것이 가능하지 않은 경우 모델이 두 의도를 구분할 수 있도록 두 의도의 태그가 지정된 예를 더 추가하는 것이 좋습니다.

혼동 행렬에서 모델 수준 평가 메트릭을 계산할 수 있습니다.

  • 모델의 진양성은 모든 의도에 대한 진양성의 합계입니다.
  • 모델의 가양성은 모든 의도에 대한 가양성의 합계입니다.
  • 모델의 가음성은 모든 의도에 대한 가음성의 합계입니다.

다음 단계

Language Studio에서 모델 학습