BERTScore (metric) (PL)

From Systems analysis Wiki
Jump to navigation Jump to search

BERTScore — to automatyczna metryka oceny jakości wygenerowanego tekstu, oparta na pomiarze podobieństwa semantycznego za pomocą kontekstowych embedding z wstępnie wytrenowanych modeli językowych, takich jak BERT. Metryka została zaproponowana w 2019 roku przez grupę badaczy pod kierownictwem Tianyi Zhanga w pracy „BERTScore: Evaluating Text Generation with BERT"[1].

W odróżnieniu od tradycyjnych metryk, takich jak BLEU i ROUGE, które opierają się na dokładnym dopasowaniu n-gramów, BERTScore pozwala wykrywać równoważność znaczenia nawet przy różnicach w słowach i sformułowaniach, uwzględniając synonimy i parafrazy[2].

Metodyka obliczania

Metoda BERTScore składa się z kilku etapów:

  1. Uzyskanie kontekstowych embeddingów: Oba teksty (referencyjny i wygenerowany) są dzielone na tokeny i przepuszczane przez wstępnie wytrenowany model transformerowy (np. BERT lub RoBERTa). Dla każdego tokena wyodrębniana jest jego kontekstowa reprezentacja wektorowa (embedding).
  2. Obliczanie podobieństwa kosinusowego: Dla wszystkich par tokenów z obu tekstów obliczane jest podobieństwo kosinusowe i tworzona jest macierz podobieństwa tokenów[3].
  3. Obliczanie precyzji, pełności i miary F1: Na podstawie macierzy podobieństwa dla każdego tokena w wygenerowanym tekście wyszukiwany jest najbardziej podobny token w tekście referencyjnym, co pozwala obliczyć precyzję (precision). Analogicznie, dla każdego tokena referencji wyszukiwany jest najbliższy token w wygenerowanym tekście, co daje pełność (recall). Końcową wartością BERTScore jest wyważona miara F₁, łącząca precyzję i pełność:
   RextBERT=1|x|xixmaxyjyxiTyj(extRecall)
   PextBERT=1|y|yjymaxxixxiTyj(extPrecision)
   FextBERT=2PextBERTRextBERTPextBERT+RextBERT

Metryka jest elastyczna: można wybierać różne wstępnie wytrenowane modele, ważyć tokeny według ich ważności (za pomocą wag IDF) i liniowo przekształcać oceny w celu lepszej interpretowalności[3].

Zastosowanie i skuteczność

BERTScore jest stosowany do oceny jakości w różnych zadaniach generowania tekstu:

  • Tłumaczenie maszynowe: Wykrywa zachowanie znaczenia, nawet jeśli konstrukcje tłumaczenia różnią się od wzorcowych.
  • Automatyczne streszczanie: Potrafi określić, że różne sformułowania mogą przekazywać te same kluczowe fakty, co czyni go bardziej elastycznym niż ROUGE.
  • Systemy dialogowe: Pomaga mierzyć trafność odpowiedzi, porównując ją z wzorcową na poziomie znaczenia.

Zakrojona na szeroką skalę ocena przeprowadzona przez autorów wykazała, że współczynnik korelacji BERTScore z ocenami ludzkimi jest wyraźnie wyższy niż w przypadku metryk typu BLEU i ROUGE. Ponadto metryka wykazała zwiększoną odporność na trudne przypadki parafrazowania[1].

Zalety

  • Uwzględnienie semantyki: Porównuje teksty na poziomie znaczenia, biorąc pod uwagę synonimy i parafrazy.
  • Wysoka korelacja z oceną ludzką: Oceny BERTScore lepiej zgadzają się z ludzkimi sądami o jakości tekstu niż tradycyjne metryki.
  • Uniwersalność i przenośność: Metryka nie jest przywiązana do konkretnego języka ani zadania — wystarczy wybrać odpowiedni wstępnie wytrenowany model.
  • Brak konieczności trenowania: BERTScore jest metryką nieparametryczną, w odróżnieniu od bardziej złożonych metryk (np. BLEURT), które wymagają wstępnego trenowania na korpusach ocen.
  • Integracja nowoczesnych modeli: Wykorzystuje moc transformerów do wyodrębniania głębokich cech kontekstowych.

Ograniczenia i krytyka

  • Wysokie koszty obliczeniowe: Obliczenia oparte na embeddingach wymagają znacznie więcej zasobów niż liczenie n-gramów i często wymagają użycia GPU[2].
  • Zależność od modelu: Jakość oceny jest bezpośrednio związana z jakością wstępnie wytrenowanego modelu. Wybór modelu i warstwy do wyodrębniania embeddingów wpływa na wynik, co może powodować problemy z odtwarzalnością[4].
  • Brak uwzględnienia faktów i struktury: BERTScore koncentruje się na lokalnym podobieństwie semantycznym i nie gwarantuje rozumienia struktury tekstu ani dokładności faktycznej. Tekst z przestawionymi frazami lub błędami merytorycznymi może uzyskać wysoki wynik[3].
  • Niska interpretowalność: W odróżnieniu od BLEU/ROUGE wskaźnik BERTScore jest mniej przejrzysty, co utrudnia analizę błędów.
  • Odchylenia społeczne (bias): Metryka dziedziczy stereotypy i odchylenia wbudowane we wstępnie wytrenowane modele. Badanie z 2022 roku wykazało, że metryki oparte na LLM (w tym BERTScore) wykazują znacznie większy społeczny bias niż tradycyjne metryki[5].

Znaczenie i rola w ocenie

BERTScore stanowi ważny krok w rozwoju metod oceny wygenerowanego tekstu, ponieważ pozwala uwzględniać równoważność znaczenia, a nie tylko dopasowania leksykalne. Mimo że żadna automatyczna metryka nie jest w stanie idealnie zmierzyć jakości tekstu, BERTScore ugruntował swoją pozycję jako niezawodne narzędzie, które uzupełnia klasyczne podejścia (takie jak BLEU i ROUGE), a nie zastępuje ich całkowicie.

W praktyce BERTScore jest często stosowany w połączeniu z ręczną ekspertyzą i innymi metrykami, aby uzyskać pełniejszy i głębszy obraz tego, jak skutecznie modele generują spójne i znaczeniowo adekwatne teksty[2].

Odnośniki

  • Oficjalne repozytorium BERTScore na GitHub

Przypisy

  1. 1.0 1.1 Zhang, Tianyi, et al. «BERTScore: Evaluating Text Generation with BERT». arXiv:1904.09675 [cs.CL], 22 апр. 2019 г. [1]
  2. 2.0 2.1 2.2 «BERTScore: New Metrics for Language Models». Analytics Vidhya. [2]
  3. 3.0 3.1 3.2 Sojasingarayar, Abonia. «BERTScore Explained in 5 minutes». Medium. [3]
  4. Alakulju, D., et al. «Reproducibility of BERTScore». Theseus.fi. [4]
  5. Peyrard, M., et al. «BERTScore is Unfair: On Social Bias in Language Model-Based Metrics for Text Generation». arXiv:2210.07626 [cs.CL], 14 окт. 2022 г. [5]