Precision & Recall
Evaluation Metric 이해를 위한 기본 개념
- 전체 문서 집합 중 모델이 추출한 문서에 대해 다음과 같은 분류를 할 수 있음

Precision 계산 방식

Precision = TP / Retrieved Documents = TP / (TP + FP)
Recall = TP / Relevant Documents = TP / (TP + FN)
Accuracy = (TP + TN) / Total Documents = (TP + TN) / (TP + TN + FP + FN)
Precision-Recall Curve
- Precision과 recall 하나만으로 지표를 삼을 수 없음

현실적인 이슈
- 대규모 문서를 다루는 IR에서는 recall은 큰 의미가 없음
- IR 모델의 문서 추출 결과에 대하여 최대 k개까지가 관심사인 경우가 많음 (특히, UX 관점에서의 이슈)
- Precision@k - 추출된 결과 중 k개 까지만의 precision
- Precision과 recall 하나만으로는 모델의 성능을 제대로 표현하기 힘듦
- F1-score = 2 * (precision * recall) / (precision + recall) => precision 과 recall의 조화평균
- Average Precision (AP) => Precision-recall curve의 아래쪽 면적
- 추출된 결과의 순서 및 Relevance가 이분법으로 떨어지지 않는 경우에 대한 고려
- 실제 평가는 하나의 질의 결과만을 가지고 하지 않고 충분히 많은 샘플을 사용함
- 신뢰도 확보를 위해 N개 결과의 평균을 취함
주요 IR Evaluation Metric
IR 모델의 Evaluation은 precision과 recall을 그대로 사용하지 않고 추가적인 고려사항을 반영한 metric을 사용하는 경우가 많음.
Mean Reciprocal Rank (MRR)
- 관련있는 문서가 몇 번째에 있는지에 중점을 두고 평가
- 가장 상위 관련 문서의 위치만을 고려하여 계산

MRR 계산 예시

MRR 사용시 고려 사항
- 정답이 하나 또는 소수인 경우 적합
- 적합한 정답이 여러개가 될 수 있는 경우는 다른 metric을 사용하는 것이 나음
- 정답이 잘 알려져 있거나 명확한 경우 적합
- 적합성 유무가 이분법적으로 명확히 구분되는 경우 (얼마나 적합한가에 대한 정도는 고려할 필요 없는 경우)
- 새로운 문서 보다는 이미 사용자가 알고 있는 문서 중 가장 선호할만한 문서를 보여주고자 할 때 용이
Mean Average Precision (MAP)
- 질의 N개에 대한 Average Precision의 평균 값
- Average Precision은 Precision-recall curve에서 아래쪽 면적인데 다음 수식으로 표현할 수 있음

MAP 계산 예시

MAP 사용시 고려 사항
- 적합한 문서가 다수일 때를 고려하여 평가할 수 있음
- 상위 N개의 관련된 문서에 대해 전부 점수를 반영할 수 있되, 관련된 문서의 위치에 따라 점수에
차등을 줄 수 있는 평가 모델
- 상위에 있는 오류에 대해서는 가중치를 더 주고, 하위에 있는 오류에 대해서는 가중치를 적게 주어
평가의 정밀도를 높일 수 있음
- 정답이 잘 알려져 있거나 명확한 경우 적합
- 적합성 유무가 이분법적으로 명확히 구분되는 경우 (얼마나 적합한가에 대한 정도는 고려할 필요
없는 경우)
Normalized Discounted Cumulative Gain (NDCG)
- 문서의 관련 여부에 대해 이분법적으로 구분하지 않고 더 관련있는 문서가 어떤 것인지에 중점을 두어 덜 관련있는
문서보다 상대적으로 더 관련있는 문서를 상위에 노출시키는지를 평가함
- 순위 별로 가중치 값을 다르게 적용하여 계산
- 최종적으로 점수가 1에 가까울수록 좋은 결과임을 나타냄
CG (Cumulative Gain)
- 순위에 있는 문서들의 연관도 합
DCG (Discounted Cumulative Gain)
- 순위에 따라 가중치를 부여하여 관련있는 문서들이 낮은 순위에 있을수록 점수가 낮아짐
NDCG
- DCG에 정규화를 적용하여 관련있는 문서의 수가 많아질수록 DCG 값이 증가하는 것을 보완
- IDCG(Ideal DCG)에 대한 비율
- IDCG - 최선의 문서 순위 결과일 경우 DCG 값을 나타냄
- 최종적으로 NDCG는 가장 이상적인 문서 순위 대비 현재 모델의 순위 결과가 얼마나 좋은지를 평가함

NDCG 사용시 고려 사항
- NDCG는 검색된 문서의 관련성과 그 순위를 모두 고려하여 평가하는 방법으로, 특히 사용자가 최상위에
위치한 검색 결과에 더 많은 가치를 두는 경우에 적합
- 검색 결과의 다양성이 필요한 경우 유리
- 문서의 적합도가 이분법이 아니라 다양한 값으로 정량화 가능한 경우 효과적
- 정답셋 구축 비용이 상대적으로 큼
- 적합도에 대한 명확한 기준을 잡기 힘든 경우가 많기 때문에 객관적인 정답셋을 구축하기 힘듦
'AI > NLP' 카테고리의 다른 글
| Query-Document Relevance (0) | 2024.04.16 |
|---|---|
| 역색인과 형태소 분석기 (0) | 2024.04.16 |
| kakaobrain/pororo install in conda (0) | 2024.03.20 |