BLEU: 다른 시대의 잘못 이해된 지표

하지만 오늘날에도 여전히 AI 연구에 사용되고 있습니다.

파란 벽 - Pixabay의 이미지

GPT-3, 속삭임, 손바닥, NLLB, 플랜, 그리고 다른 많은 모델은 모두 일부 작업에서 우월성을 주장하기 위해 BLEU 측정항목으로 평가되었습니다.

그런데 BLEU가 정확히 무엇인가요? 어떻게 작동하나요?

이 기사에서는 20년 전으로 돌아가 BLEU가 존재하게 된 주요 이유를 밝히고 이를 매우 성공적인 측정 기준으로 삼았습니다. 몇 가지 예를 통해 BLEU가 어떻게 작동하는지 살펴보겠습니다. 또한 측정항목의 주요 한계를 강조하고 사용 방법에 대한 권장사항을 제공하겠습니다.

이 기사는 BLEU에 대한 소개로 간주되지만 필요가 아닌 습관적으로 BLEU를 사용하는 노련한 NLP/AI 실무자에게도 큰 도움이 될 수 있습니다.

BLEU는 2001년 Kishore Papineni, Salim Roukos, Todd Ward 및 Wei-Jing Zhu가 공동으로 작성한 IBM 연구 보고서에서 처음 설명되었습니다. 그것을 설명하는 과학 논문 2002년 후 ACL XNUMX에서는 훨씬 더 많이 인용되고 찾기 쉽습니다.

BLEU는 원래 기계 번역(MT)을 평가하기 위한 자동 측정 기준으로 제안되었습니다.

2001년에도 기계 번역 시스템은 여전히 ​​주로 수동으로 평가되거나 WER(단어 오류율). WER은 Levenshtein 거리에서 영감을 얻은 측정법이며 오늘날에도 음성 인식 시스템 평가에 여전히 사용됩니다. 기계번역 평가의 경우 WER은 BLEU의 조상이라고 볼 수 있습니다. BLEU의 저자들은 이를 다음과 같이 표현합니다.

우리는 음성 인식 커뮤니티에서 사용하는 매우 성공적인 단어 오류율 측정법을 따라 친밀감 측정법을 만듭니다.

WER과 마찬가지로 BLEU는 다음을 측정하는 측정항목입니다. 텍스트가 인간이 생성한 참고 텍스트와 얼마나 가까운지, 예: 참조 번역.

번역은 여러 가지 올바른 솔루션이 필요한 작업이므로 BLEU 작성자는 여러 참조 번역을 처리할 수 있도록 측정 기준을 설계했습니다. WER이 이미 여러 참조를 처리하기 위해 "mWER"로 변환되고 있었기 때문에 이는 당시에는 새로운 것이 아니었습니다. 내가 아는 한, 이 제안은 다음과 같습니다. Alshawiet al. (1998) AT&T 연구소에서.

BLEU를 제시하는 전체 논문에서 저자는 항상 메트릭에 대해 여러 참조 번역을 사용한다고 가정한다는 점에 유의하는 것이 중요합니다. 그들은 일부 상황에서만 올바른 단일 참조 번역을 사용하는 방법에 대해 간략하게 논의합니다.

번역이 모두 동일한 번역자의 것이 아닌 경우 단일 참조 번역으로 큰 테스트 코퍼스를 사용할 수 있습니다.

대조적으로, 요즘 대부분의 연구 논문은 BLEU를 사용합니다. 단일 참조, 종종 출처를 알 수 없는등에 대한 다양한 업무, 즉 번역뿐만이 아닙니다.

2001년부터 BLEU는 말할 것도 없이 매우 성공적인 지표였습니다. 이는 부분적으로 그 때문이었습니다. 저렴한 계산 비용 그리고 BLEU 점수의 재현성, 평가자와 평가 프레임워크에 따라 결과가 많이 달라질 수 있는 인간 평가와는 대조적입니다.

BLEU는 지금 기계 번역 연구 논문의 거의 100%에 사용됨 다른 자연어 생성 작업으로 크게 확산되었습니다.

보다 정확하게는 BLEU는 번역의 n-gram이 얼마나 좋은지 평가합니다. n-그램과 일치 일련의 참조 번역에서 기계 번역이 더 짧거나 길면 불이익을 줍니다. 참고 번역보다

일부 정의:

An n 그램 일련의 토큰입니다. 또한 여기서 다음을 정의해 보겠습니다. 토큰 공백으로 임의로 구분된 일련의 문자입니다. 예를 들어, "토큰은 단어가 아닙니다."라는 문장이 있습니다. "토큰은 단어가 아닙니다."로 토큰화되는 경우가 많습니다. 우리는 이 글의 뒷부분에서 토큰화의 매우 중요한 역할에 대해 더 자세히 논의할 것입니다.

BLEU가 실제로 작동하는 모습을 보기 위해 BLEU 논문에서 영어로 번역된 중국어(저자가 제공하지 않음) 문장의 예를 빌렸습니다. 기계 번역을 통해 생성된 번역은 다음과 같습니다.

작성자 별 이미지

그리고 인간이 제공한 다음 3가지 참조 번역은 다음과 같습니다.

작성자 별 이미지

BLEU로 답하고 싶은 질문은 다음과 같습니다.

주어진 참조 번역에 가장 가까운 번역은 무엇입니까?

두 후보 번역 모두에서 참조 번역에 포함된 모든 n-그램을 강조했습니다.

작성자 별 이미지

후보 1은 참조 번역에서 더 많은 n-gram을 다루고, 길이(토큰 수)도 참조 번역의 길이와 합리적으로 일치하므로 후보 2보다 더 높은 BLEU 점수를 얻습니다. 여기서 BLEU는 후보 1이므로 정확합니다. 실제로 후보 2보다 낫습니다.

이 예를 통해 BLEU의 몇 가지 명백한 한계를 확인할 수 있습니다. 평가된 번역의 의미는 고려되지 않습니다. BLEU는 참조 번역의 토큰과 정확히 일치하는 항목만 검색했습니다.

예를 들어 "확인후보 2의 ”는 참고번역에는 없지만, “보장" 이다. 부터 "확인"는 "와 정확히 같지 않습니다.보장”, BLEU는 밀접한 의미가 있음에도 불구하고 보상을 하지 않습니다.

구두점을 자세히 살펴보면 상황은 더욱 악화될 수 있습니다. 예를 들어, 후보 2는 “.” 단, 이 기간은 “곧장.”를 사용하여 단일 토큰을 형성합니다. “곧장.”는 참조 번역의 토큰이 아닙니다. 후보자 2는 이 기간을 올바르게 포함하는 것에 대해 보상을 받지 못합니다.

이것이 바로 BLEU가 일반적으로 구두점을 포함하는 분할 토큰으로 토큰화된 번역에서 계산되는 이유입니다. 이에 대해서는 다음 섹션에서 더 자세히 논의하겠습니다.

단순화를 위해 BLEU의 공식에 대해서는 논의하지 않겠습니다. BLEU를 직접 계산하는 데 관심이 있다면 모든 방정식에 대한 동기가 잘 설명되어 있는 BLEU 문서를 읽어 보시기 바랍니다.

일치 항목으로 간주하려면 토큰이 참조 번역의 토큰과 동일해야 하므로 BLEU가 매우 엄격하다는 것을 확인했습니다. 여기서 토큰화가 매우 중요하지만 종종 오해 역할.

토큰화는 일부를 제공합니다. 유연성 BLEU에.

예를 들어 후보 2를 다시 살펴보겠습니다.

당이 지시하는 활동 지침서를 장병들이 영원히 들을 수 있도록 하기 위함이다.

하지만 이번에는 간단한 토큰화 규칙을 적용하여 문장 부호와 단어를 구분합니다. 우리는 다음을 얻습니다:

당이 지시하는 활동 지침서를 군대가 영원히 들을 수 있도록 하기 위한 것이다.

".”이(가) “에서 분리되었습니다.곧장" 공백으로. 이것이 유일한 차이점입니다. 이제 후보 2는 참조 번역에서 하나 이상의 토큰과 일치합니다. 이 토큰은 “.". 이것은 단지 하나의 토큰이기 때문에 중요해 보이지는 않지만 매우 자주 발생합니다. 이 토큰화는 거의 모든 문장에 영향을 미치므로 BLEU 점수가 크게 향상됩니다.

가능한 토큰화의 양은 무한합니다. 예를 들어, 다음 프랑스어 문장은 5개의 서로 다른 토크나이저를 적용한 영어 번역입니다. 참고: 나는 사용했다 모세 (오픈소스, LGPL 라이센스) 및 SacreBLEU (오픈소스, 아파치 라이센스 2.0).

작성자 별 이미지

이들은 동일한 문장이지만 다르게 토큰화되므로 참조 번역과 다른 토큰과 일치합니다. 이러한 모든 토큰화는 번역이 동일하게 유지되는 동안 서로 다른 BLEU 점수를 생성합니다.

이것이 토큰화가 다르거나 알 수 없는 번역에서 계산된 두 개의 BLEU 점수를 비교할 수 없는 이유입니다.

이것은 자주 간과하는 요즘 과학 논문에서요.

토큰화는 BLEU의 매개변수로 볼 수 있습니다. 매개변수를 변경하면 측정항목도 변경됩니다. 서로 다른 두 측정항목의 점수는 비교할 수 없습니다.

2001년 BLEU가 제안되었을 때 기계 번역의 품질은 매우 달랐습니다.

이러한 차이점에 대한 아이디어를 제공하기 위해 저는 2000년대의 프랑스어-영어 기계 번역 시스템을 재현하려고 했습니다. 이를 위해 단어 기반 통계 기계 번역 시스템을 교육했습니다. 나는 그것을했다 모세. 나는 이 시스템을 “통계 MT(2001)”로 표시하겠습니다.

그런 다음 바닐라 Transformer 모델을 사용하여 신경 기계 번역 시스템을 훈련했습니다. 나는 그것을했다 마리안 (오픈 소스, MIT 라이센스). 나는 이 시스템을 “신경 MT(2022)”라고 부르겠습니다.

그들이 생성하는 번역은 다음과 같습니다. 참고: 참조 번역과 일치하는 n-gram을 강조 표시했습니다.

작성자 별 이미지

예상한 대로, 통계적 MT에 의해 생성된 번역은 특히 문장 끝 부분에서는 의미가 없습니다. 신경 MT보다 참조 번역에서 더 적은 n-gram을 다룹니다. 반면에 신경 MT에 의해 생성된 번역은 완벽해 보이지만(컨텍스트 없이) 참조 번역과 정확히 동일하지 않으므로 BLEU에 의해 불이익을 받습니다.

2001년에 기계 번역 시스템은 종종 무의미하고 명백한 구문 오류가 있는 번역을 생성했습니다. 특정 참조 번역과 일치하지 않는다는 이유로 정당하게 처벌을 받았습니다. 요즘 신경 기계 번역은 특히 프랑스어-영어와 같은 "쉬운" 언어 쌍에 대해 매우 유창한 번역을 생성하는 경우가 많습니다. 올바른 번역을 찾는 경우가 많지만 올바른 번역이 많이 있기 때문에 참조로 사용되는 정확한 번역을 찾는 것은 우연에 의해서만 발생할 수 있습니다.

번역이 올바른 경우에도 정확히 일치하는 항목만 보상하는 BLEU의 한계에 도달하는 지점이 바로 여기입니다.

BLEU는 수년 동안 기계 번역 연구의 발전을 이끌어 왔습니다. NAACL 2018에서 BLEU 작성자는 시간 테스트 상.

BLEU는 여전히 AI의 많은 영역에서 사용되지만 습관적으로만 사용됩니다. 이제 기계 번역을 포함한 자연어 생성 작업에 대한 다른 많은 평가 지표보다 성능이 크게 뛰어납니다. 문자, 블루르트혜성.

그럼에도 불구하고 BLEU는 여전히 진단 목적을 위한 아주 좋은 도구.

BLEU에는 잘 알려진 동작이 있으므로, 즉 특정 번역 작업에 대해 예상되는 BLEU 수준을 알고 있으므로 이를 사용하여 기계 번역 시스템의 교육 파이프라인이나 데이터 처리에서 버그 및 기타 문제를 신속하게 발견할 수 있습니다.

어쨌든 BLEU 짧은 텍스트에는 사용하면 안 됩니다.. 실제로 기계 번역 실무자는 1,000개 이상의 문장이 포함된 텍스트에 대해 항상 BLEU를 실행합니다. BLEU는 문서 번역을 평가하기 위한 것입니다. 문장 번역을 평가하는 데 사용되어서는 안됩니다.

BLEU 구현의 경우 다수가 공개적으로 사용 가능합니다. Hugging Face에는 자체 구현이 있습니다. 라이브러리 평가. NLTK BLEU도 구현합니다. 또한 멀티 블루.perl 모세 프로젝트의 스크립트. 이러한 BLEU 구현은 모두 다르며 비슷한 결과를 얻을 수 없습니다. 내 개인적인 추천은 원래 구현을 사용하는 것입니다. SacreBLEU 이 도구는 BLEU 점수의 재현성과 비교성을 보장하기 위한 것이기 때문입니다.

그리고 다음 작업에서 BLEU를 사용할 계획이라면 결과의 통계적 유의성을 테스트해야 한다는 점을 간과하지 마십시오.

내 작업을 지원하는 가장 좋은 방법은 내 링크를 사용하여 Medium 회원이 되는 것입니다.

이미 회원이고 이 작업을 지원하고 싶다면, 중간에 날 따라와.

BLEU: 소스 https://towardsdatascience.com/bleu-a-misunderstood-metric-from-another-age-d434e18f1b37?source=rss—-7f60cf5620c9—4에서 https://towardsdatascience를 통해 다시 게시된 다른 시대의 오해된 측정항목. com/피드

<!–

–>

타임 스탬프 :

더보기 블록 체인 컨설턴트