728x90
논문 링크
https://aclanthology.org/W05-0909.pdf

 

Introduction


 

논문이 써질 시점을 기준으로 Machin Translation(MT) 평가에 대해 Automatic Metric이  상당한 주목을 받게 되었다. 그 이유는 MT System에 대해 Metric을 사용하여 Evalution 하는 것이 두 개 국어를 할 줄 아는 사람이 Evaluation을 하는 것보다  훨씬 바르고 쉽고 저렴하기에 MT Metric에 대해 관심이 높아졌다. 하지만 여러 수식이 MT Evalution Metric이 되는 것은 아니다.  다음은 Metric에 대한 조건이다.

Metric의 조건

  • 인간의 평가와 매우 높은 상관관계를 가져야 함
  • MT 품질에 대해 민감해야 함
  • Consistent (비슷한 Text에 대해 비슷한 Score)
  • Reliable (비슷한 점수에 대해 비슷한 성능)
  • General (다양한 도메인과 시나리오에서 적용 가능 해야 함)

IBM의 BLEU가 다음의 조건을 만족하는  MT Evaluation Metric의 대표적인 예이다. 하지만 BLEU는 여러 가지 단점을 가지고 있다.

Weakness in BLEU

  • The Lack of Recall : BLEU는  정밀도(precision)에 기반을 둔 평가 지표라는 점을 강조하는 것으로, Recall을 직접적으로 다루지 않는다.
  • Use of Higher Order N-gram : BLEU는 문법의 적절성 수준을 간접적으로 측정하기 위해 Higher Order N-gram을 사용
  • Lack of Explicit Word-matching Between Translation and Reference : N-gram 은 명시적인 단어(의미 있는 단어)에 대해 matching을 요구하지 않지만 공통 기능 단어에 대해 잘못된 매칭을 계산하게 됩니다.
  • Use of Geometric Averaging of N-gram : BLEU는 N-gram에 대해 기하평균(1, 2, 3, 4-gram)을 사용하게 된다. 하나가 0이 된다면 BLEU는 전체가 0이 되어서 측정이 될 수 없다. 그래서 n-gram에 대해 동등한 가중치 산술 평균을 사용한 BLEU가 더 나은 상관관계가 있다.

3번째에 대해 간단한 예시이다.

  • 참조 문장: "The cat sat on the mat."
  • 번역된 문장: "A cat was sitting on a mat."

이러한 매칭 방식은 특히 기능 단어들이 포함된 경우, 실제 의미 전달과 문장 구조의 정확성을 완벽하게 반영하지 못할 수 있다. 예를 들어, "on the"와 같은 기능 단어 시퀀스는 많은 문장에서 반복적으로 나타날 수 있으며, 이러한 반복이 의미 전달이나 문법적 정확성과 직접적으로 관련되지 않음에도 불구하고, BLEU 점수에서는 이를 긍정적인 매칭으로 간주할 수 있다.

 

The METEOR Metric


Metric for Evaluation of Translation with Explicit ORdering(METEOR)은 위에서 지적한 BLEU의 약점을 명시적으로 해결하기 위해 설계되었다. Machine Translation과 Reference Translation 사이의 명시적인 단어와 단어의 일치에 기반한 점수를 계산하여 번역을 평가한다. 만약 여러 개의 Reference Translation 주어진 경우는 각 점수를 매기고 최고 점수를 사용한다.

METEOR Metric의 Uni-gram 매핑 과정은 두 가지로 나뉘며, 이 것은 참조 문장과 생성 문장에 대해 최적 정렬을 찾아내는 과정이다.

유니그램 매핑과정

첫 번째 단계는 세 가지 모듈을 사용하여 모든 유니그램이 매핑될 수 있도록 한다.

  • 정확한 모듈: 두 유니그램이 정확하게 일치할 때 이들을 매핑한다. 예를 들어, "computers"는 "computers"에 매핑되지만, "computer"에는 매핑되지 않는다.
  • 포터 어간 모듈: 포터 어간제거기(Porter Stemmer)를 사용해 유니그램을 어간으로 변환한 뒤 같은 어간을 가지는 유니그램끼리 매핑합니다. 예를 들어, "computers"는 어간이 "comput"인 "computers"와 "computer" 모두에 매핑된다.
  • WN 동의어 모듈: 두 유니그램이 서로 동의어일 경우 매핑한다. 이는 단어넷 같은 외부 자원을 활용하여 의미적 유사성을 기반으로 한 매핑이 가능하다.

두 번째 단계는 최적의 유니그램 매핑 부분 집합 선택한다.

$$ (pos(t_i)-pos(t_k))* (pos(r_j)-pos(r_l)) $$

pos($t_x$)는 시스템 번역 문자열에서 유니그램 $t_x$의 숫자 위치를 의미하며, pos($r_y$)는 참조 문자열에서 유니그램 $r_y$의 숫자 위치를 의미한다. 주어진 정렬에 대해, 모든 유니그램 매핑 쌍이 교차하는지 여부를 평가하고, 이 두 번째 단계에서 교차가 가장 적은 정렬이 선택한다.

결론적으로 다시 정리하자면, 매핑쌍이 가장 많은지를 선택한 후 교차가 작은 정렬을 선택하면 그에 대해서 Precision과 Recall을 계산한다.

수식 계산 과정

$$ Fmean = \frac{10PR}{R+9P} $$

다음 수식에 대해 몇 가지를 설명한다.

  1. Recall에 높은 가중치를 준 이유 : BLEU의 Recall에 대해 부족한 Reward를 보완하기 위해 비율을 높게 주었다.
  2. 조화평균을 사용한 이유 : 데이터셋에서 비율의 평균을 다룰 때 조화평균을 사용하기 때문이다.

$$ Penalty=0.5*(\frac{\#chunk}{\#unigrams\_matched})^3 $$

이전 Precision, Recall 그리고 Fmean은 Unigram의 일치에 대해서 계산하며, 더 긴 일치를 고려하기 위해 Penalty를 계산하기 위해서 $chunk$를 사용한다.(여기서 순서에 대해 고려함)

n-gram이 길수록 청크의 수는 줄어들며, 극단적인 경우에서 전체 시스템 번역 문자열이 참조 번역과 일치할 때는 청크가 하나만 있다. 다른 극단적인 경우, 일치가 없다면 유니그램 일치의 수만큼 많은 청크가 있습니다.

예시

  • 시스템 번역 : " the president spoke to the audience"
  • 참조 번역 : " the president then spoke to the audience"

두 개의 번역에 대해 두 개의 청크가 있다. “the president”와 “spoke to the audience”. 

청크의 수가 증가하면 페널티가 증가하여 최대 0.5가 되며, 청크의 수가 1로 감소함에 따라 페널티는 감소한다. 하한은 유니그램의 수에 따라 결정된다. 

산출 과정

단일 시스템 번역에 대해 METEOR는 각 참조 번역에 대해 위의 점수를 계산한 다음, 번역에 대한 점수로 가장 좋은 점수를 계산한다. 시스템에 대한 전체 METEOR 점수는 BLEU에서 수행되는 방식과 유사하게, 전체 테스트 세트에 걸쳐 누적된 집계 통계에 기반하여 계산된다. 

 

728x90

'Paper > Metric' 카테고리의 다른 글

[Metric Review] CIDEr Metric 분석  (0) 2024.04.01
[Metric Review] BLEU Metric 분석  (0) 2024.03.31