From imaging algorithms to quantum methods Seminar

Europe/Warsaw
https://cern.zoom.us/j/66151941204?pwd=n7upvvZYibexBhbtyn5kvTpy36L0Wo.1 (Zoom)

https://cern.zoom.us/j/66151941204?pwd=n7upvvZYibexBhbtyn5kvTpy36L0Wo.1

Zoom

Konrad Klimaszewski (NCBJ), Wojciech Krzemien (NCBJ)

## Title: Omówienie modelu językowego BERT (Bidirectional Encoder
Representations from Transformers) i jego podstawowych zastosowań


## Presenter: Krzysztof Nawrocki
## Date: 30.06 2025

## Participants:

Michal Mazurek (MM)
Wojciech Krzemień (WK)
Konrad Klimaszewski (KK)
Roman Shopa (RS)
Lech Raczyński (LR)
Michał Obara (MO)
Wojciech Wiślicki (WW)
Rafał Możdżonek (RM)
Krzysztof Nawrocki (KN)

## Questions/Remarks:

RS: Jak BERT radziłby sobie z językami, gdzie podział na słowa nie jest
oczywisty np. w japońskim
KN: Nie wiem, ale podejrzewam, że BERT może poradzić sobie ucząc się
statystycznie w jakim kontekście występuje jaki dany podział na słowa.
WW: Podejrzewam, że w złożonym znaku japońskim można rozpoznać części
składowe.

KK: I tokenizer i embedding layer są uczone?
KN:  Embedding jest uczony z corpusu, z sąsiedztwa danego wyrazu.
Natomiast tokenizer nie jest siecią neuronową.

MM: Czy to nie jest tak, że ten samo tokenizer może być używany przez
różne modele
RM: Tak, ale bardziej zaawansowane modele mają dwie części tokenizerów.

KN: Tokenizer są różne dla różnych języków.

RS: Pytanie jak model rozpoznaje jaki to jest język w czasie
rzeczywistym. Np. jeżeli chodzi o zapożyczenia z innych języków.
KN: W przypadku Berta w fazie "douczania" używa się
Na pewno miałby problem jakby miał mieszankę językową w treningowym zbiorze.

MM:Jednym z zastosowań BERTa jest wyszukiwarka google'owska. Teraz jest
boom na Gemini. Jak to obecnie wygląda?
KN: Google nadal używa BERTA (tak się wydaje).  Ale, tego nie wiemy na 100%.
RM: Podsumowania robi oczywiście Gemini.

## Odpowiedzi Gemini

Jak BERT radziłby sobie z językami, gdzie podział na słowa nie jest oczywisty np. w japońskim?

Gemini:

Doskonałe pytanie! BERT, choć opiera się na idei "tokenów" (często odpowiadających słowom lub ich częściom), radzi sobie z językami bez wyraźnych granic słów (takimi jak japoński, chiński czy tajski) dzięki zastosowaniu specjalistycznych strategii tokenizacji. Nie jest to po prostu "dzielenie po spacjach", jak w przypadku języków zachodnich.

Oto jak BERT (a właściwie jego tokenizer) radzi sobie z japońskim:

  1. Tokenizacja Subwordowa (Subword Tokenization): To klucz do sukcesu. Zamiast dzielić tekst wyłącznie na całe słowa, tokenizery BERT dzielą go na "subwordy" (podjednostki słów). Dzięki temu model może:

    • Radzić sobie z nieznanymi słowami (Out-Of-Vocabulary, OOV):Jeśli natrafi na słowo, którego nie widział podczas treningu, może je rozłożyć na znane subwordy.
    • Zmniejszyć rozmiar słownika: Zamiast uczyć się każdego możliwego słowa, uczy się częstych przedrostków, sufiksów i rdzeni, co znacznie redukuje rozmiar słownika.
  2. Specjalistyczne Tokenizery dla Japońskiego: Dla języków azjatyckich, w tym japońskiego, stosuje się specyficzne algorytmy tokenizacji, które są trenowane na dużych korpusach tekstu japońskiego. Najpopularniejsze to:

    • WordPiece: Ten algorytm był używany w oryginalnym BERT. Dla japońskiego, często najpierw przeprowadza się analizę morfologiczną, a dopiero potem stosuje WordPiece.

      • Analiza morfologiczna: Jest to proces podziału zdania na najmniejsze, znaczące jednostki zwane morfemami (odpowiedniki słów). Dla japońskiego używa się do tego celu specjalnych narzędzi, takich jak:
        • MeCab: Bardzo popularny i efektywny analizator morfologiczny dla japońskiego. Wiele japońskich modeli BERT (np. od Tohoku University) jest trenowanych z tokenizacją opartą na MeCab.
        • SudachiPy: Nowszy i często bardziej precyzyjny analizator morfologiczny, radzący sobie lepiej z neologizmami i różnymi słownikami.
      • Przykład (MeCab + WordPiece):
        • Tekst: "私は学生です。" (Jestem studentem.)
        • MeCab: "私/は/学生/です/。"
        • WordPiece (po konwersji do ID): [CLS]  ##は 学生 ##です  [SEP]
          Zauważ, że ## oznacza kontynuację tokenu. W tym przypadku ##は jest traktowane jako przyrostek po "私" (ja).
    • SentencePiece: To alternatywny algorytm, który ma przewagę, ponieważ nie wymaga wstępnej segmentacji na słowa. Uczy się on podjednostek bezpośrednio z surowego tekstu, co jest bardzo korzystne dla języków bez spacji.

      • SentencePiece potrafi sam określić, gdzie powinny znajdować się granice "słów" (a raczej podjednostek), ucząc się ich na podstawie częstości występowania. Często używa znaku _ na początku tokenu, aby wskazać, że jest to początek "słowa" lub jednostki.
      • Przykład (SentencePiece):
        • Tekst: "私は学生です。"
        • Tokenizacja SentencePiece: [CLS]   学生 です [SEP]
          (Zauważ spację przed "私" - to jest sposób SentencePiece na oznaczenie początku jednostki).
    • Tokenizacja na poziomie znaków (Character-level Tokenization):Niektóre warianty BERT dla japońskiego mogą również działać na poziomie pojedynczych znaków.

      • Zalety: Bardzo odporne na nieznane słowa, nie wymagają analizy morfologicznej.
      • Wady: Zwykle wymagają znacznie głębszych modeli, aby nauczyć się relacji między znakami tworzącymi słowa, i mogą być mniej efektywne obliczeniowo, ponieważ sekwencje tokenów są dłuższe.
      • Przykład (Character-level):
        • Tekst: "私は学生です。"
        • Tokeny: [CLS]        [SEP]

Jak BERT na to reaguje?

Sama architektura BERT (Transformer Encoder) jest niezależna od tego, jak tekst jest tokenizowany. Dla BERT ważne jest, że na wejściu dostaje sekwencję numerycznych identyfikatorów tokenów (token IDs) oraz maskę uwagi. To, jak te identyfikatory zostały wygenerowane z surowego tekstu, jest zadaniem tokenizera.

Podsumowując:

BERT radzi sobie z językami bez oczywistego podziału na słowa, takimi jak japoński, dzięki zastosowaniu wyspecjalizowanych tokenizatorów. Te tokenizery albo wykorzystują zaawansowaną analizę morfologiczną w połączeniu z algorytmami subwordowymi (jak MeCab + WordPiece), albo uczą się podjednostek bezpośrednio z surowego tekstu (jak SentencePiece), albo w rzadkich przypadkach działają na poziomie znaków. Kluczem jest precyzyjne przygotowanie danych wejściowych, a potem standardowa architektura BERT może przetwarzać te podjednostki, aby nauczyć się kontekstowych reprezentacji.


 

I tokenizer i embedding layer są uczone? 

Gemini:

Tak, zarówno tokenizer, jak i embedding layer są uczone (trenowane), ale w różnych fazach i w różny sposób:

1. Tokenizer (a dokładniej algorytmy tokenizacji subwordowej)

Tokenizer, w kontekście modeli takich jak BERT (gdzie używa się np. WordPiece, SentencePiece, BPE), jest uczonym narzędziem.

  • Jak jest uczony: Algorytmy takie jak WordPiece czy SentencePiece są trenowane na dużym korpusie surowego tekstu (tym samym, na którym później będzie trenowany sam model językowy). Celem tego treningu jest:
    • Zbudowanie słownika tokenów: Tokenizer analizuje korpus, aby zidentyfikować najczęstsze słowa i podjednostki słów.
    • Odkrycie reguł segmentacji: Uczy się, jak rozkładać słowa na te podjednostki w sposób, który minimalizuje liczbę nieznanych słów (OOV) i optymalizuje rozmiar słownika.
  • Kiedy jest uczony: Trening tokenizera odbywa się przed treningiem samego modelu językowego (BERT). Jest to osobna faza przygotowania danych. Raz wytrenowany tokenizer jest "zamrożony" i używany do przetwarzania wszystkich danych treningowych i ewaluacyjnych dla modelu językowego.
  • Charakter nauki: Jest to nauka statystyczna/algorytmiczna, a nie neuronowa. Tokenizer nie ma "wag" w sensie sieci neuronowej, które są optymalizowane gradientowo. Zamiast tego, uczy się heurystyk i częstotliwości występowania, aby efektywnie segmentować tekst.

2. Embedding Layer (Warstwa Osadzania)

Warstwa osadzania jest kluczową częścią samej sieci neuronowej (np. BERT) i jest uczona (trenowana) w trakcie treningu modelu językowego.

  • Co robi: Przekształca numeryczne identyfikatory tokenów (które są wynikiem działania tokenizera) w gęste wektory liczbowe (embeddingi). Te wektory są początkowymi reprezentacjami tokenów w przestrzeni wektorowej.
  • Jak jest uczona:
    • Każdemu tokenowi w słowniku przypisany jest początkowo losowy wektor.
    • W trakcie fazy pre-treningu modelu językowego (np. przewidywanie maskowanych tokenów dla BERT), te wektory (wagi warstwy osadzania) są aktualizowane za pomocą optymalizacji gradientowej (backpropagation).
    • Model uczy się, jakie reprezentacje wektorowe dla tokenów są najbardziej użyteczne dla zadań pre-treningowych, tak aby podobne słowa miały podobne embeddingi i aby kontekst był dobrze uchwycony.
  • Kiedy jest uczona:
    • Pre-trening: Wagi warstwy osadzania są intensywnie trenowane od podstaw podczas fazy pre-treningu modelu językowego na dużym korpusie.
    • Fine-tuning: W fazie fine-tuningu dla konkretnego zadania, wagi warstwy osadzania są zazwyczaj nadal trenowane, choć często z mniejszym współczynnikiem uczenia (learning rate), aby dostosować je do specyfiki nowego zadania i danych. Czasami w niektórych scenariuszach (np. bardzo mały dataset do fine-tuningu) można je zamrozić, ale to rzadsze podejście dla warstwy osadzania w BERT.
  • Charakter nauki: Jest to nauka neuronowa, oparta na optymalizacji wag sieci.

Podsumowując:

Cecha Tokenizer (algorytm) Embedding Layer (w modelu)
Kiedy uczony Przed treningiem modelu językowego W trakcie treningu modelu językowego
Na czym uczony Duży korpus surowego tekstu Dane wejściowe dla modelu (token IDs)
Czego się uczy Słownik tokenów, zasady segmentacji tekstu Reprezentacji wektorowych dla każdego tokena
Wynik Zbiór reguł segmentacji, słownik tokenów (Vocab) Macierz wag (wektorów) dla każdego tokena w Vocab
Mechanizm nauki Statystyczny/algorytmiczny, heurystyczny Optymalizacja gradientowa (backpropagation)

Dlatego też, gdy pobierasz pre-trenowany model BERT z Hugging Face, zazwyczaj pobierasz dwie rzeczy:

  1. Model: Który zawiera już wytrenowane wagi warstwy osadzania oraz wszystkich warstw Transformerowych.
  2. Tokenizer: Który jest już wytrenowany na tym samym korpusie co model i zawiera słownik oraz logikę segmentacji potrzebną do przygotowania tekstu dla tego konkretnego modelu.

 

Czy to nie jest tak, że ten samo tokenizer może być używany przez różne modele?

Gemini:

Tak, masz absolutną rację! Ten sam tokenizer może być, i często jest, używany przez różne modele, zwłaszcza jeśli te modele są oparte na tej samej architekturze (np. Transformer) i/lub zostały wytrenowane na podobnych danych.

Dlaczego to działa i jest powszechne?

  1. Standaryzacja Wejścia: Celem tokenizera jest przekształcenie surowego tekstu w ustandaryzowaną sekwencję numerycznych identyfikatorów (token IDs), którą model neuronowy może zrozumieć. Jeśli wiele modeli oczekuje danych w tym samym formacie, jeden tokenizer może to obsłużyć.

  2. Efektywność i Reużywalność:

    • Trening tokenizera jest kosztowny: Uczenie algorytmów takich jak WordPiece czy SentencePiece na ogromnych korpusach tekstowych zajmuje czas i zasoby. Wytrenowanie go raz i używanie go wielokrotnie jest bardzo efektywne.
    • Upraszcza ekosystem: Zamiast tworzyć i utrzymywać unikalny tokenizer dla każdego drobnego wariantu modelu, można polegać na sprawdzonych i szeroko przyjętych.
  3. Wspólne Słowniki i Reprezentacje:

    • Wiele modeli (np. różne warianty BERT, RoBERTa, Electra) jest pre-trenowanych na bardzo podobnych (często tych samych) ogromnych korpusach tekstu (np. BookCorpus, Wikipedia). W związku z tym, optymalny słownik subwordów i strategie segmentacji będą dla nich bardzo podobne.
    • Użycie tego samego tokenizera (z tym samym słownikiem) zapewnia, że identyfikatory tokenów są spójne, co ułatwia m.in. udostępnianie osadzeń (embeddings) czy transfer wiedzy między modelami.
  4. "Shared Embeddings": Czasami, gdy modele są bardzo podobne (np. różne warstwy tego samego typu Transformerów), mogą nawet dzielić tę samą warstwę osadzania (embedding layer) na wejściu, co jest możliwe tylko wtedy, gdy używają tego samego tokenizera i słownika.

Przykład z Hugging Face Transformers:

W bibliotece Hugging Face, bardzo często zobaczysz, że dla rodziny modeli (np. bert-base-uncased, bert-large-uncased, bert-base-cased itp.), używany jest ten sam tokenizer (np. BertTokenizer).

from transformers import AutoTokenizer

# Ten sam tokenizer jest używany dla różnych wariantów BERT:
tokenizer_bert_uncased = AutoTokenizer.from_pretrained("bert-base-uncased")
tokenizer_bert_cased = AutoTokenizer.from_pretrained("bert-base-cased") # Różni się tylko tym, że jest case-sensitive, ale mechanizm tokenizacji jest ten sam WordPiece

# Dla RoBERTa również używa się często tokenizera opartego na BPE, ale z własnym słownikiem
# i regułami, dlatego pobierasz go jako "RobertaTokenizer"
tokenizer_roberta = AutoTokenizer.from_pretrained("roberta-base")

# Ale jeśli jest to inny język, jak japoński, tokenizer będzie specyficzny:
tokenizer_japanese_bert = AutoTokenizer.from_pretrained("cl-tohoku/bert-base-japanese-v2")

Ważna uwaga: Chociaż ten sam tokenizer może być używany przez różne modele, zawsze należy używać tokenizera, który został wytrenowany (lub jest zgodny) z konkretnym modelem, który zamierzasz użyć. Dzieje się tak, ponieważ słownik tokenów i sposób ich generowania są fundamentalnie powiązane z tym, jak model był pre-trenowany. Niezgodność tokenizera ze słownikiem, na którym model był uczony, prowadzi do bardzo słabych wyników.

Dlatego w praktyce zawsze zaleca się ładowanie tokenizera za pomocą AutoTokenizer.from_pretrained(nazwa_modelu), co automatycznie zapewnia prawidłowe dopasowanie tokenizera do wybranego modelu.


Pytanie jak model rozpoznaje jaki to jest język w czasie rzeczywistym. Np. jeżeli chodzi o zapożyczenia z innych języków.

Gemini:

To jest fascynujące pytanie, które dotyka granic możliwości modeli językowych i ich wewnętrznego działania! Modele takie jak BERT nie rozpoznają języka w sensie, w jakim my, ludzie, go rozpoznajemy, czyli świadomie identyfikując strukturę gramatyczną, słownictwo czy pochodzenie. Zamiast tego, "rozpoznawanie" języka przez model jest pośrednim efektem jego treningu na ogromnych ilościach danych.

Wyjaśnijmy to na przykładach:

Jak model "rozpoznaje" język (a raczej dostosowuje się do niego)?

  1. Tokenizacja:

    • Specyficzny tokenizer dla każdego języka: To jest pierwszy i najważniejszy etap. Jeśli model jest przeznaczony dla języka polskiego, używa tokenizera wytrenowanego na polskim korpusie. Ten tokenizer wie, jak dzielić polskie słowa na subwordy, rozpoznaje typowe polskie prefiksy/sufiksy i ma słownik polskojęzycznych tokenów. Jeśli zobaczy angielskie słowo "computer", tokenizer polski nadal spróbuje je przetworzyć (np. jako cały token, jeśli jest w słowniku, lub rozłożyć na subwordy, np. "co" "##mpu" "##ter").
    • Wielojęzyczne tokenizery: Istnieją też tokenizery i modele wielojęzyczne (multilingual), np. mBERT czy XLM-R. Te tokenizery są trenowane na danych z wielu języków jednocześnie i mają wspólny, gigantyczny słownik zawierający subwordy z różnych języków. W takim przypadku, tokenizer po prostu dzieli tekst na swoje subwordy, niezależnie od języka.
  2. Embeddings (Osadzenia):

    • Unikalne Embeddingi: Nawet jeśli słowo jest zapożyczeniem, jego embedding (początkowa reprezentacja wektorowa) w modelu jednolinguisticznym będzie się kształtował w kontekście języka, na którym model był trenowany. Angielskie "sushi" w polskim tekście będzie miało embedding nauczony z kontekstów, w jakich "sushi" pojawia się w polskim korpusie.
    • Wspólna przestrzeń dla modeli wielojęzycznych: W modelach wielojęzycznych embeddings dla słów o podobnym znaczeniu w różnych językach często grupują się blisko siebie w przestrzeni wektorowej. Oznacza to, że [EMBEDDING("cat" w angielskim)]może być blisko [EMBEDDING("kot" w polskim)]. To pozwala modelowi na pewien poziom "rozumienia" niezależny od języka.
  3. Wagi Warstw Transformerowych:

    • Nauka wzorców językowych: Główne "rozpoznawanie" dzieje się w głębokich warstwach Transformerów. Model uczy się skomplikowanych wzorców gramatycznych, składniowych i semantycznych charakterystycznych dla języka, na którym był trenowany.
    • Kontekst: Kiedy model widzi zapożyczenie (np. "meeting" w polskim zdaniu: "Miałem meeting z klientem."), nie "rozpoznaje" go jako angielskiego słowa. Zamiast tego, dzięki kontekstowi ("Miałem... z klientem"), uczy się, że w tym konkretnym polskim zdaniu "meeting" pełni rolę rzeczownika i ma określone relacje z innymi słowami. Jego wagi są dostosowane tak, aby najlepiej przewidzieć następne słowo lub zrozumieć kontekst w języku polskim, nawet jeśli używa "nietypowego" dla polskiego słownictwa.
    • Modele Wielojęzyczne: W modelach wielojęzycznych warstwy Transformerów uczą się wspólnych reprezentacji dla wielu języków. Oznacza to, że mogą wyodrębniać cechy, które są uniwersalne dla różnych języków (np. relacje podmiot-orzeczenie, typy rzeczowników), niezależnie od konkretnego słownictwa czy fleksji.

Jak model radzi sobie z zapożyczeniami?

Model nie ma "świadomości", że "manager" w polskim zdaniu to zapożyczenie z angielskiego. Traktuje je po prostu jako kolejny token.

  • Dla modeli jednolingwistycznych (np. polski BERT):

    • Jeśli zapożyczenie jest częste w języku treningowym (np. "komputer", "internet", "manager" w polskim), model uczy się go jak każdego innego słowa. Jego embeddingi i kontekstowe reprezentacje będą odzwierciedlać jego użycie w danym języku.
    • Jeśli zapożyczenie jest rzadkie lub nowe, model może:
      • Rozłożyć je na znane subwordy (np. "reception" -> "re" + "##cept" + "##ion"). Wtedy jego zrozumienie zależy od tego, jak dobrze te subwordy są reprezentowane i jak spójnie tworzą całość w danym języku.
      • Potraktować je jako "nieznany" token (rzadko w BERT dzięki subwordom), co obniży jego zdolność do zrozumienia.
  • Dla modeli wielojęzycznych (np. mBERT, XLM-R):

    • Zapożyczenia są często "łatwiejsze" do przetworzenia, ponieważ model miał już kontakt z tym słowem w jego oryginalnym języku (np. angielskie "manager" w angielskim korpusie).
    • Model uczy się, że ten sam token (lub bardzo podobne subwordy) może występować w różnych językach i pełnić podobną funkcję semantyczną. Pomaga to w "mostkowaniu" znaczenia.

Czy model "rozpoznaje", że zdanie jest w dwóch językach (code-switching)?

Nie w sensie świadomej identyfikacji. Jeśli model jest modelem jednolingwistycznym i natrafi na zdanie z silnym "code-switching" (przełączaniem kodów językowych), np. "I had a great spotkanie yesterday", może sobie z tym poradzić gorzej. Będzie próbował dopasować to do wzorców swojego języka treningowego, co może być trudne.

Modele wielojęzyczne radzą sobie z tym znacznie lepiej, ponieważ są trenowane na danych zawierających przełączanie języków (choć często w ramach pojedynczych dokumentów, a nie miksu w zdaniu). Ich wspólna przestrzeń embeddingów i wagi Transformerów pozwalają im na płynniejsze przechodzenie między językami, traktując je jako kontynuację tego samego kontekstu.

Podsumowując:

Model językowy nie ma wbudowanego "czujnika języka". Jego zdolność do radzenia sobie z różnymi językami (lub zapożyczeniami) wynika z:

  1. Tokenizera: Który jest dostosowany do danego języka lub jest wielojęzyczny.
  2. Danych treningowych: Na jakich językach i jakich danych (w tym zapożyczeń) model był pre-trenowany.
  3. Wag modelu: Które w trakcie treningu uczą się złożonych wzorców i relacji między tokenami, niezależnie od ich "pochodzenia językowego", a jedynie na podstawie ich roli w kontekście.

 

Jednym z zastosowań BERTa jest wyszukiwarka google'owska. Teraz jest boom na Gemini. Jak to obecnie wygląda? 
 

Gemini:

Tak, BERT jest używany przez wyszukiwarkę Google, i to od dłuższego czasu!

Google wdrożyło BERT w swojej wyszukiwarce w 2019 roku. Było to jedno z największych ulepszeń algorytmu wyszukiwania Google w ostatnich latach i zostało ogłoszone jako jedno z najważniejszych.

Co BERT robi dla wyszukiwarki Google?

Głównym celem wdrożenia BERT było lepsze zrozumienie zapytań użytkowników (query understanding), zwłaszcza tych bardziej złożonych, konwersacyjnych i z dłuższym ogonem (long-tail queries).

Przed BERT Google często miał problem ze zrozumieniem niuansów językowych, kontekstu słów funkcyjnych (takich jak "do", "dla", "bez") oraz zależności między słowami w zapytaniu. BERT, dzięki swojej zdolności do rozumienia kontekstu słów w obu kierunkach (bidirectional), znacznie poprawił tę zdolność.

Przykłady wpływu BERT (podawane przez Google):

  • Zrozumienie kontekstu: Jeśli zapytasz "Czy możesz wziąć leki dla kogoś w aptece?", przed BERT Google mógłby zignorować "dla kogoś" i pokazać wyniki o tym, jak brać leki. Z BERT rozumie, że chodzi o przepisywanie leków dla innej osoby.
  • Rozróżnianie słów o wielu znaczeniach: BERT pomaga rozróżnić znaczenia słów w zależności od kontekstu.
  • Wpływ na zapytania long-tail: BERT miał szczególnie duży wpływ na te rzadziej zadawane, bardziej specyficzne zapytania, gdzie kontekst jest kluczowy.

Czy to jedyny model używany przez Google?

Absolutnie nie. BERT to tylko jeden z wielu zaawansowanych modeli i algorytmów, które Google wykorzystuje w swojej wyszukiwarce. Google stale rozwija i integruje nowe technologie AI i uczenia maszynowego. Po BERT wprowadzono m.in. MUM (Multitask Unified Model), który jest jeszcze bardziej zaawansowany i wielozadaniowy, zdolny do rozumienia informacji w różnych formatach (tekst, obraz) i językach, a także do odpowiadania na bardziej złożone pytania wymagające głębszego zrozumienia świata.

BERT pozostaje jednak ważnym elementem i jest używany do pewnych typów zapytań i analizy. Nowsze modele często uzupełniają lub rozszerzają możliwości BERT, a nie całkowicie go zastępują.

Podsumowując, tak, BERT jest i był kluczowym komponentem wyszukiwarki Google, znacząco poprawiającym zdolność wyszukiwarki do rozumienia złożonych zapytań użytkowników.

There are minutes attached to this event. Show them.
    • 10:00 11:00
      Omówienie modelu językowego BERT (Bidirectional Encoder Representations from Transformers) i jego podstawowych zastosowań - Część 1 1h

      Podczas spotkania zostanie omówiony model językowy BERT, który w odróżnieniu modeli typu 'decoder-only' takich jak ChatGPT, Llama czy DeepSeek, opiera się na architekturze typu 'encoder-only'. To oznacza, że nie jest on co prawda tak skuteczny w generowaniu treści jak powyższe, ale za to znakomicie nadaje się do zadań wymagających głębokiego
      zrozumienia analizowanego tekstu w oparciu o kontekst, takich jak klasyfikacja tekstu, wyszukiwanie semantyczne lub systemy
      rekomendacyjne. Przedstawione zostanie praktyczne zastosowanie modelu BERT do klasyfikacji tekstu.

      Speaker: Krzysztof Nawrocki (NCBJ)
    • 11:00 11:30
      Discussion 30m
Your browser is out of date!

Update your browser to view this website correctly. Update my browser now

×