BLEU score란?

yoonene·2022년 11월 8일
0

면접대비

목록 보기
12/17

Q: BLEU score란 무엇인가요?"


BLEU는 기계 번역 결과와 사람이 직접 번역한 결과가 얼마나 유사한지 비교하여 번역에 대한 성능을 측정하는 방법이다. 언어에 구애받지 않고 사용할 수 있으며, 계산 속도가 빠르다는 장점이 있다. 값이 클수록 성능이 좋다.

Unigram Precision

Ref들 중에서 존재하는 Ca의 단어의 수Ca의 총 단어 수=the number of Ca words(unigrams) which occur in any Refthe total number of words in the Ca\frac{\text{Ref들 중에서 존재하는 Ca의 단어의 수}}{\text{Ca의 총 단어 수}} = \frac{\text{the number of Ca words(unigrams) which occur in any Ref}}{\text{the total number of words in the Ca}}

Ref : 정답 문장
Ca: 번역된 문장

BLEU는 Unigram Precision의 문제점을 보완한다.

1. 단어의 순서를 고려하지 않는 문제점 보완

BLEU는 n-gram을 이용한 정밀도이다.

예시)

  • Candidate : the cat the cat on the mat
  • Reference1 : the cat is on the mat
  • Reference2 : there is a cat on the mat

pn=n-gramCandidate Countclip(n-gram)n-gramCandidate Count(n-gram)p_{n}=\frac{\sum_{n\text{-}gram∈Candidate}\ Count_{clip}(n\text{-}gram)}{\sum_{n\text{-}gram∈Candidate}\ Count(n\text{-}gram)} : n-gram 정밀도

p2=4/6p_2 = 4/6

BLEU는 p1, p2, …, pn을 모두 활용한다.

BLEU=exp(n=1Nwn log pn)BLEU = exp(\sum_{n=1}^{N}w_{n}\ \text{log}\ p_{n})

pn : 각 gram의 정밀도

N : n-gram에서 n의 최대 숫자 (보통 4)

N이 4라는 것은 p1,p2,p3,p4를 사용한다는 것을 의미.

wn : 각 gram의 보정된 정밀도에 서로 다른 가중치를 줄 수 있다. 이 가중치의 합은 1이다. 예를 들어 N이 4라고 하였을 때, p1,p2,p3,p4에 대해서 동일한 가중치를 주고자한다면 모두 0.25를 적용할 수 있다.

2. 짧은 문장일수록 score가 높아지는 문제점 보완

Ca가 Ref보다 문장의 길이가 짧은 경우에는 점수에 패널티를 줘야 하는데, 이를 브레버티 패널티(Brevity Penalty)라고 한다.
최종적인 BLEU는 다음과 같다.

BLEU=BP×exp(n=1Nwn log pn)BLEU = BP × exp(\sum_{n=1}^{N}w_{n}\ \text{log}\ p_{n})

BP={1if c>re(1r/c)if crBP = \begin{cases}1&\text{if}\space c>r\\ e^{(1-r/c)}&\text{if}\space c \leq r \end{cases}

cc : Candidate의 길이

rr : Candidate와 가장 길이 차이가 작은 Reference의 길이

Reference : https://wikidocs.net/31695

profile
NLP Researcher / Information Retrieval / Search

0개의 댓글