METEOR (Metric for Evaluation of Translation with Explicit ORdering) – metryka używana do ewaluacji tłumaczenia maszynowego. Metryka ta bazuje na średniej harmonicznejn-gramów precyzji i pokrycia, przy czym pokrycie ma większą wagę niż precyzja. METEOR zawiera także inne cechy, których nie znajdziemy w innych metrykach. Są to na przykład: dopasowanie synonimów (metryka dopasowuje nie tylko słowa będące dosłownym tłumaczeniem, ale również wyrazy bliskoznaczne). Przykładowo, jeśli słowo „dobry” występuje w tłumaczeniu referencyjnym a słowo „niezły” występuje w ocenianym tłumaczeniu, system ewaluujący policzy to jako dobre dopasowanie. Metryka zawiera również narzędzie, które odwołuje się do formy bazowej danego słowa i dopasowuje formy podstawowe. Metryka METEOR została zaprojektowana aby naprawić błędy pojawiające się w bardziej znanej i częściej używanej metryce BLEU oraz aby stworzyć korelację z ewaluacją dokonywaną przez człowieka na poziomie zdań i segmentów. Różnica pomiędzy metryką METEOR a BLEU polega na tym, że BLEU szuka korelacji na poziomie korpusu.
Zostały opublikowane wyniki badań, które określają korelację z oceną dokonywaną przez człowieka do 0.964 na poziomie korpusu, dla porównania wynik BLEU na tym samym zestawie danych to 0.817. Najwyższa korelacja z oceną przez człowieka uzyskana na poziomie zdań to 0.403[1]
Algorytm
Podobnie jak w metryce BLEU, podstawową jednostką ewaluacji jest zdanie. Na początku algorytm tworzy dopasowanie pomiędzy dwoma zdaniami: potencjalnym kandydatem – zdaniem przetłumaczonym oraz zdaniem wzorcowym. Dopasowanie jest zbiorem odwzorowań pomiędzy n-gramami. Odwzorowanie można sobie wyobrazić jako linię łączącą n-gramy z obu dopasowywanych zdań. Odwzorowanie takie musi spełniać następujące warunki: każdy n-gram z ocenianego tłumaczenia musi być odwzorowany przez zero lub jeden n-gram z tłumaczenia wzorcowego i na odwrót. W żadnym dopasowaniu n-gram z jednego zdania nie może być odwzorowany przez więcej niż jeden n-gram innego zdania.
Dopasowanie jest tworzone poprzez serię etapów kontrolowanych przez moduły. Moduł jest odpowiednim algorytmem dopasowującym, np. moduł „wn_synonymy” odwzorowuje synonimy używając WordNet, moduł „exact” dopasowuje te same słowa.
Każdy etap składa się z dwóch faz. W pierwszej fazie, wszystkie możliwe odwzorowania są zebrane przez moduł używany w danym etapie. W drugiej fazie wybierana jest część tych odwzorowań, która tworzy dopasowanie zdefiniowane wyżej. Jeśli istnieją dwa dopasowania z taką samą ilością odwzorowań, wybierane jest dopasowanie z najmniejszą liczbą przecięć (czyli z mniejszą ilością przekrojów dwóch odwzorowań). Przykładowo z dwóch zaprezentowanych dopasowań wybrane zostałoby dopasowanie (a). Etapy są uruchamiane jeden po drugim i każdy etap dodaje tylko do dopasowania n-gramy, które nie zostały wcześniej dopasowane.
Kiedy ustalone jest ostateczne dopasowanie, obliczany jest wynik – ocena tłumaczenia.
P – precyzja n-gramów:
Gdzie m jest liczbą n-gramów w ocenianym tłumaczeniu, które znalazły się również w tłumaczeniu wzorcowym a wt jest liczbą n-gramów w ocenianym tłumaczeniu.
R – odwołanie n-gramów obliczane jest w następujący sposób:
Gdzie m jest zdefiniowane jak wyżej a wr jest liczbą n-gramów w tłumaczeniu wzorcowym. Precyzja i odwołania są łączone za pomocą średniej harmonicznej w następujący sposób (odwołania mają przyznaną wagę 9 razy większą niż precyzja):
Wprowadzone do tej pory miary biorą pod uwagę tylko zgodność w odniesieniu tylko do pojedynczych wyrazów, a nie do większych segmentów występujących w tłumaczeniu wzorcowym i ocenianym. Aby wziąć je pod uwagę, używa się dłuższych dopasowań n-ramów aby obliczyć karę p dla danego dopasowania. Im więcej nie sąsiadujących ze sobą odwzorowań pomiędzy tłumaczeniem wzorcowym a ocenianym, tym wyższa będzie kara dla danego dopasowania.
Aby wyznaczyć tę karę n-gramy grupuje się w jak najmniej zbitek, gdzie zbitkę definiuje się jako zbiór n-gramów sąsiadujących ze sobą w tłumaczeniu ocenianym i wzorcowym. Im dłuższe są sąsiadujące odwzorowania, tym mniej jest zbitek. W tłumaczeniu identycznym z wzorcowym tłumaczeniem wyodrębniona zostanie tylko jedna zbitka.
Karę p oblicza się w następujący sposób:
Gdzie c jest liczbą zbitek a um jest liczbą odwzorowanych n-gramów.
M (ostateczny wynik dla segmentu) wyznaczany jest w następujący sposób:
Kara p może zmniejszyć Fmean nawet do 50% jeśli nie zostały wyznaczone odwzorowania składające się z dwóch lub więcej słów.
Aby wyznaczyć ocenę tłumaczenia dla całego korpusu czy zbioru segmentów, sumuje się poszczególne wartości dla P, R i p, a następnie łączy używając podanego wzoru. Algorytm ten może być również użyty do porównywania danego tłumaczenia z więcej niż jednym tłumaczeniem wzorcowym. W takim przypadku algorytm porównuje oceniane tłumaczenie z każdym tłumaczeniem wzorcowym osobno, a następnie wybiera najwyższą ocenę.
Banerjee, S. and Lavie, A. (2005) „METEOR: An Automatic Metric for MT Evaluation with Improved Correlation with Human Judgments” in Proceedings of Workshop on Intrinsic and Extrinsic Evaluation Measures for MT and/or Summarization at the 43rd Annual Meeting of the Association of Computational Linguistics (ACL-2005), Ann Arbor, Michigan, June 2005
Lavie, A., Sagae, K. and Jayaraman, S. (2004) „The Significance of Recall in Automatic Metrics for MT Evaluation” in Proceedings of AMTA 2004, Washington DC. September 2004