Machine reading comprehension metric 종류

모든 모델은 만들고나서 성능을 정확하게 평가하는 것이 중요함

 

1. exact match

 

question에 대한 model이 prediction하여 내놓은 answer과 실제 dataset의 answer로 주어진 ground truth를 character level에서 비교하여

 

모든 character이 정확하게 일치할경우 1점을 주고 단 하나라도 일치하지 않으면 0점을 줌

 

모든 sample에 대해서 exact match score를 계산하여 정확히 일치한, 1점인 비율을 계산한 값이 exact match

 

예를 들어 prediction이 'for 5 days'와 ground truth '5 days'를 비교해보면 for이라는 글자가 일치하지 않으니 EM score=0

 

 

2. precision

 

prediction에서 전체 단어 수에 대해 ground truth와 일치하는 단어 수의 비율

 

바로 위 예시에서는 'for 5 days'는 3 단어이고 ground truth와 정확히 일치하는 단어 수는 2 단어이므로 2 / 3

 

prediction이 얼마나 ground truth와 정확한지 비교한 수치

 

 

3. recall

 

ground truth의 전체 단어 수에 대해 prediction 단어 수와 정확히 일치하는 단어 수의 비율

 

위의 예시에서는 '5 days'가 2단어이고 prediction 'for 5 days' 3단어 중 2단어가 모두 일치하므로 recall=1이다.

 

prediction이 ground truth를 얼마나 소환했는지 나타낸 수치

 

 

4. F1 score

 

exact match가 정확히 모든 character가 일치해야 1점을 주는 너무 엄격한 metric이라

 

사실 언어라는 것이 약간은 달라도 이해를 할 수 있기 때문에 이러한 점을 반영하고자했음

 

ground truth와 prediction 사이 overlap을 soft하게 계산했음

 

조금이라도 ground truth와 겹친다면 부분점수를 부여

 

 

 

 

위 예시에서는 precision이 2/3이고 recall이 1이므로 4/ 5 = 0.8로 계산됨

 

Exact match와 F1 score는 그 특성때문에 extractive answer와 multiple choice에 자주 쓰이고

 

장황하게 서술하는 descriptive answer에는 사용하기 어렵다

 

왜냐하면 descriptive한 경우는 완벽하게 일치하는 경우를 찾기 어렵기 때문이다.

 

F1같은 경우는 단어의 단순한 overlap만 봐서 답변 자체가 가지는 언어적 의미를 보지 못한다고 함

 

 

5. ROUGE-L

 

descriptive answer에 쓰이는 metric

 

ROUGE-L에서 L은 longest common subsequence를 나타내는 단어로

 

model의 prediction과 ground truth사이 최장으로 매칭되는 subsequence를 찾아 그 비율을 계산함

 

무조건 연속적으로 매칭되는 것을 찾는 것이 아니라 부분 연속으로 매칭되면 된다.

 

예를 들어 정답이 ‘police killed the gunman’이라고 하자.

 

모델 1은 police kill the gunman이라고 예측했고 모델 2는 the gunman kill police라고 예측했다면

 

모델 1은 정답과 police the gunman이 일치했으므로 3 / 4

 

모델 2는 정답과 the gunman이 일치했으므로 2 / 4

 

the gunman police랑 police the gunman은 다른거니까

 

정답에 대한 비율을 계산했으므로 overlap recall이라고도 부름

 

 

6. BLEU

 

prediction에서 모든 n-gram 쌍에 대해 ground truth와 일치하는 n-gram 쌍의 비율로 n-gram precision이라고 부름(individual n-gram score)

 

당연하지만 n이 커질수록 일치하는 경우는 드물어서 0에 가까우므로 보통은 1~4까지만 계산함

 

4-gram precision까지 계산한다면 최종 BLEU score를 아래 그림과 같이 계산함

 

 

 

내 생각인데 4-gram precision을 이용해 계산한 위 score를 BLEU-4라고 부르고 1-gram precision까지만 이용해서 계산한다면 BLEU-1이라 하지 않을까(cumulative n-gram score)

 

TAGS.

Comments