BLEU: A Misunderstood Metric from Another Age

Men används fortfarande idag inom AI-forskning

En blå vägg - Bild från Pixabay

GPT-3, Viska, Handflatan, NLLB, TJOCK VANILJSÅS, och många andra modeller har alla utvärderats med den metriska BLEU för att hävda sin överlägsenhet i vissa uppgifter.

Men vad är BLEU exakt? Hur fungerar det?

I den här artikeln kommer vi att gå tillbaka 20 år sedan för att avslöja de huvudsakliga orsakerna som förde BLEU till existens och gjorde det till ett mycket framgångsrikt mått. Vi kommer att titta på hur BLEU fungerar med några exempel. Jag kommer också att lyfta fram de viktigaste gränserna för måttet och ge rekommendationer om hur man använder det.

Den här artikeln är tänkt som en introduktion till BLEU, men kan också vara en bra påminnelse för erfarna NLP/AI-utövare som använder BLEU av vanor snarare än behov.

BLEU beskrevs första gången i en IBM-forskningsrapport som var medförfattare av Kishore Papineni, Salim Roukos, Todd Ward och Wei-Jing Zhu, 2001. De publicerade en vetenskaplig artikel som beskriver det ett år senare på ACL 2002 som är mycket mer citerad och lätt att hitta.

BLEU föreslogs ursprungligen som ett automatiskt mått för att utvärdera maskinöversättning (MT).

Under 2001 utvärderades maskinöversättningssystem fortfarande huvudsakligen manuellt eller med hjälp av äldre automatiska mätvärden som WER (ordfel). WER är ett mått inspirerat från Levenshtein-avståndet och används fortfarande idag för utvärdering av taligenkänningssystem. För maskinöversättningsutvärdering kan WER ses som en förfader till BLEU. Författarna till BLEU uttrycker det på följande sätt:

Vi utformar vårt närhetsmått efter det mycket framgångsrika mätvärdet för ordfelsfrekvens som används av taligenkänningsgemenskapen

Liksom WER är BLEU ett mått som mäter hur nära en text är referenstexter producerade av människort.ex. referensöversättningar.

Eftersom översättning är en uppgift med flera korrekta lösningar, utformade författarna till BLEU sin metrik så att den kan hantera flera referensöversättningar. Detta var inte nytt på den tiden eftersom WER redan höll på att omvandlas till en "mWER" för att även hantera flera referenser. Så vitt jag vet har det först föreslagits av Alshawi et al. (1998) från AT&T Labs.

Det är viktigt att notera att i hela artikeln som presenterar BLEU, förutsätter författarna alltid användningen av flera referensöversättningar för deras mått. De diskuterar kortfattat användningen av en enda referensöversättning för att vara korrekt endast under vissa omständigheter:

vi kan använda en stor testkorpus med en enda referensöversättning, förutsatt att översättningarna inte alla kommer från samma översättare.

I motsats härtill använder de flesta forskningsartiklar BLEU med en enda referens, ofta från en okänt ursprungOch för olika uppgifter, dvs inte bara översättning.

Sedan 2001 har BLEU varit ett minst sagt framgångsrikt mått. Detta berodde delvis på dess billig beräkningskostnad och reproducerbarhet av BLEU-poäng, till skillnad från mänsklig utvärdering där resultaten kan variera mycket beroende på utvärderare och utvärderingsram.

BLEU är nu används i nästan 100 % av forskningsrapporterna för maskinöversättning och har till stor del spridit sig till andra naturliga språkgenereringsuppgifter.

Mer exakt utvärderar BLEU hur bra n-grammen för en översättning är matchar n-grammen från en uppsättning referensöversättningar, medan bestraffa maskinöversättningen om den är kortare eller längre än referensöversättningarna.

Några definitioner:

An n-gram är en sekvens av tokens. Låt oss här också definiera att a token är en sekvens av tecken som är godtyckligt avgränsade av mellanslag. Till exempel meningen "en token är inte ett ord." kommer ofta att betecknas som "en token är inte ett ord." Vi kommer att diskutera mer om tokeniseringens extremt viktiga roll senare i den här artikeln.

För att se BLEU i aktion lånade jag ett exempel från BLEU-uppsatsen på en mening på kinesiska (som inte tillhandahålls av författarna) översatt till engelska. Vi har följande två översättningar genererade av maskinöversättning:

Bild av författare

Och följande 3 referensöversättningar tillhandahållna av människor:

Bild av författare

Frågan vi vill besvara med BLEU är:

Vilken översättning ligger närmast de givna referensöversättningarna?

Jag lyfte fram alla n-gram som omfattas av referensöversättningarna i båda kandidatöversättningarna.

Bild av författare

Kandidat 1 täcker många fler n-gram från referensöversättningarna, och eftersom dess längd (antal tokens) också rimligt överensstämmer med längden på referensöversättningarna kommer den att få ett högre BLEU-poäng än kandidat 2. Här är BLEU korrekt eftersom kandidat 1 är verkligen bättre än kandidat 2.

Med detta exempel kan vi se några uppenbara gränser för BLEU. Innebörden av den utvärderade översättningen beaktas inte. BLEU sökte endast efter exakta matchningar med symbolerna för referensöversättningarna.

Till exempel, "säkerställa” i kandidat 2 finns inte i referensöversättningarna, men ”säkerställer" är. Eftersom "säkerställa" är inte exakt detsamma som "säkerställer”, BLEU belönar det inte trots att det har en nära betydelse.

Det kan bli ännu värre när vi tittar noga på skiljetecken. Till exempel slutar kandidat 2 med ett "." men denna period är kopplad till "direkt.” för att bilda en enda token. "direkt.” är inte ett tecken på referensöversättningarna. Kandidat 2 belönas inte för att korrekt innehålla denna period.

Det är därför BLEU vanligtvis beräknas på översättningar som är tokeniserade till delade tokens som innehåller skiljetecken. Vi kommer att diskutera det ytterligare i nästa avsnitt.

För att hålla det enkelt kommer jag inte att diskutera ekvationerna bakom BLEU. Om du är intresserad av att beräkna BLEU själv, inbjuder jag dig att läsa BLEU-papperet där alla ekvationer är välmotiverade och förklarade.

Vi såg att BLEU är väldigt strikt eftersom en token ska vara identisk med en token i referensöversättningarna för att räknas som en matchning. Det är här tokenisering spelar ett mycket viktigt men ofta missförstås roll.

Tokeniseringen ger en del flexibilitet till BLEU.

Låt oss till exempel titta på kandidat 2 igen:

Det är för att säkerställa att trupperna för alltid hör aktivitetsguiden som partiet leder.

Men den här gången tillämpar vi enkla tokeniseringsregler för att skilja skiljetecken från ord. Vi får:

Det är för att säkerställa att trupperna för alltid hör aktivitetsguiden som partiet leder.

Anteckna det "." har separerats från "rikta” av ett mellanslag. Detta är den enda skillnaden. Kandidat 2 matchar nu ytterligare en token från referensöversättningarna. Denna token är ".”. Det verkar inte vara viktigt eftersom det här bara är en token till, men det här är mycket frekvent. Denna tokenisering kommer att påverka nästan alla meningar och leder därmed till betydligt bättre BLEU-poäng.

Det finns en oändlig mängd möjliga tokeniseringar. Till exempel är följande franska meningar översättningar från engelska som jag använder 5 olika tokenizers på. Obs: jag använde Moses (öppen källkod, LGPL-licens) och SacreBLEU (öppen källkod, Apache License 2.0).

Bild av författare

Det här är samma meningar, men eftersom de är tokeniserade på olika sätt kommer de att matcha olika tokens från referensöversättningarna. Alla dessa tokeniseringar kommer att ge olika BLEU-poäng medan översättningarna förblir desamma.

Det är därför två BLEU-poäng beräknade på översättningar för vilka tokeniseringen är annorlunda eller okänd, inte kan jämföras.

Detta är ofta förbises i vetenskapliga artiklar nuförtiden.

Du kan se tokeniseringen som en parameter för BLEU. Om du ändrar parametrarna ändrar du måtten. Poäng från två olika mätvärden kan inte jämföras.

När BLEU föreslogs 2001 var kvaliteten på maskinöversättning mycket annorlunda.

För att ge dig en uppfattning om denna skillnad försökte jag återskapa ett fransk-till-engelsk maskinöversättningssystem från 2000-talet. För detta ändamål utbildade jag ett ordbaserat statistiskt maskinöversättningssystem. Jag gjorde det med Moses. Jag kommer att beteckna detta system "statistisk MT (2001)."

Sedan tränade jag ett neuralt maskinöversättningssystem med en vaniljtransformatormodell. Jag gjorde det med Marian (öppen källkod, MIT-licens). Jag kommer att beteckna detta system "neural MT (2022)."

Översättningarna de genererar är följande. Notera: Jag markerade n-grammen som matchade referensöversättningen.

Bild av författare

Som väntat är översättningen som genereras av statistisk MT inte särskilt meningsfull, särskilt mot slutet av meningen. Den täcker mindre n-gram från referensöversättningen än neural MT. Å andra sidan ser översättningen som genereras av neural MT perfekt ut (utan sammanhang), men den är inte exakt samma som referensöversättningen så den kommer att bestraffas av BLEU.

2001 genererade maskinöversättningssystem översättningar som ofta var meningslösa och med uppenbara syntaktiska fel. De straffades med rätta för att de inte matchade vissa referensöversättningar. Nuförtiden genererar neural maskinöversättning ofta mycket flytande översättningar, särskilt för "enkla" språkpar som franska-engelska. De kommer ofta att hitta rätt översättning, men eftersom det finns många möjliga korrekta översättningar kan det bara hända av en slump att hitta den exakta översättningen som används som referens.

Det är här vi når gränserna för BLEU som bara kommer att belöna exakta matchningar även när översättningen är korrekt.

BLEU har väglett framstegen inom forskning om maskinöversättning i många år. Vid NAACL 2018 fick författarna till BLEU ett tidstestpris.

BLEU används fortfarande inom många områden av AI, men bara av vanor. Det överträffas nu till stor del av många andra utvärderingsmått för att skapa naturliga språk, inklusive maskinöversättning, som t.ex. chrF, BLEURT, eller KOMET.

Ändå förblir BLEU en mycket bra verktyg för diagnostiska ändamål.

Eftersom BLEU har ett välkänt beteende, dvs. vi vet vilken nivå av BLEU vi kan förvänta oss för särskilda översättningsuppgifter, kan den användas för att snabbt upptäcka buggar och andra problem i utbildningspipelinen för ett maskinöversättningssystem eller i dess databehandling.

I alla fall BLEU bör inte användas på korta texter. I praktiken kör maskinöversättningar alltid BLEU på texter som innehåller mer än 1,000 XNUMX meningar. BLEU är tänkt att utvärdera dokumentöversättning. Det bör inte användas för att utvärdera meningsöversättning.

När det gäller implementeringar av BLEU är många offentligt tillgängliga. Hugging Face har sin egen implementering i Utvärdera biblioteket. Nltk implementerar också BLEU. Det finns också multi-bleu.perl manus i Moses-projektet. Observera att alla dessa implementeringar av BLEU är olika och kommer inte att ge jämförbara resultat. Min personliga rekommendation är att använda den ursprungliga implementeringen av SacreBLEU eftersom detta verktyg var tänkt att garantera reproducerbarhet och jämförbarhet för BLEU-poäng.

Och om du planerar att använda BLEU i ditt nästa arbete, glöm inte bort behovet av att testa den statistiska signifikansen av dina resultat.

Det bästa sättet att stödja mitt arbete är att bli en Medium-medlem med hjälp av min länk:

Om du redan är medlem och vill stödja detta arbete, bara följ mig på Medium.

BLEU: A Misunderstood Metric from Another Age Republished from Source https://towardsdatascience.com/bleu-a-misunderstood-metric-from-another-age-d434e18f1b37?source=rss—-7f60cf5620c9—4 via https://towardsdatascience. se/flöde

<!–

->

Tidsstämpel:

Mer från Blockchain-konsulter