n-gramy i ich ograniczenia

🎯 Po co Ci to?

Zanim RNN „pamiętały" historię, najprostszą ideą było: patrz tylko na ostatnie n−1 słów. To duch n-gramu. Sieć z oknem rozmiaru 2 z Jednostki 15.1 to neuronowa wersja tej idei. Zrozumienie ograniczeń okna wyjaśnia, po co w ogóle wynaleziono rekurencję.

✅ Czego się nauczysz

Po tej lekcji potrafisz:

  • wyjaśnić ideę n-gramu / stałego okna kontekstu;
  • wskazać dwa główne ograniczenia modelu ze sztywnym oknem: brak szerszego kontekstu i słabe uchwycenie porządku;
  • powiedzieć, dlaczego samo word2vec (worek sąsiedztw) nie wystarcza do sekwencji.

🔁 Przypomnij sobie

Model z 15.1 widzi tylko tyle tokenów, ile ma okno. Osadzenia word2vec (14.3) opisują słowo z towarzystwa, ale nie kodują kolejności w konkretnym zdaniu („Ala ma kota" ≠ worek {Ala, ma, kota} z porządkiem).

📘 Od zliczania do sieci

Klasyczny n-gram szacuje prawdopodobieństwo następnego słowa z częstości w danych: jak często po ciągu n−1 słów padało dane słowo. Bigram (n=2) patrzy na jedno poprzednie; trigram — na dwa. Model z oknem 2 w 15.1 robi to siecią: zamiast tablicy zliczeń uczy się wag, które mapują wektory wejścia na rozkład wyjścia.

W obu przypadkach kontrakt jest ten sam: stała, krótka historia.

📐 DEFINICJA — n-gram (idea): model, który przewiduje następny token wyłącznie na podstawie ustalonej liczby poprzednich tokenów (historia długości n−1).

Po ludzku: „patrzę tylko na ostatnie dwa–trzy słowa i zgaduję kolejne" — bez pamięci całego akapitu.

📘 Dwa problemy sztywnego okna

Tak zbudowany model językowy może generować teksty „w stylu" danych treningowych — ale jakościowo daleko od dzisiejszych LLM. Powody:

  1. Brak szerszego kontekstu — ograniczenie szerokości okna. Sieć nie uchwyci zależności długodystansowych ani niuansów gramatycznych rozciągniętych na wiele słów. Jeśli podmiot jest na początku długiego zdania, a orzeczenie na końcu, okno 2 ich nie połączy.
  2. Słabe uwzględnienie porządku — zwłaszcza gdy wejście to proste one-hot / gęsta sieć bez architektury sekwencyjnej. Samo osadzenie word2vec traktuje kontekst jak sąsiedztwo, nie jak uporządkowaną ścieżkę w czasie. Zdanie to nie „worek słów" (bag of words).

Stąd poszukiwania architektury, która czyta tekst jako sekwencję i niesie stan przez kolejne kroki — sieci rekurencyjne (2013–2017).

💭 Pomyśl

W zdaniu „Kot, którego Ala adoptowała wczoraj w schronisku, śpi na kanapie" które słowo jest kluczowe dla liczby i osoby formy „śpi"? Ile tokenów wstecz leży od „śpi"? Co zrobi model z oknem 2?

Podpowiedź

Podmiot to „Kot" — daleko od „śpi". Okno 2 widzi najwyżej „…, śpi" / „kanapie śpi" — nie „Kot". Stąd błędy zgody i „zapominanie" początku zdania w modelach ze sztywnym oknem.

⚠️ Częsty błąd

Częsty błąd: „Skoro mamy dobre osadzenia, kolejność słów jest już niepotrzebna."

Elenchus: Czy „pies gryzie człowieka" i „człowiek gryzie psa" powinny dostać tę samą reprezentację zdania, skoro zbiór słów jest prawie ten sam?

🌍 Powiązania

  • 14.4 — stałe osadzenie gubi kontekst; tu gubimy długość kontekstu.
  • 15.3 — RNN: pamięć przez stan ukryty zamiast sztywnego okna.
  • 16 — transformer: cały ciąg naraz + kodowanie pozycji.

📐 Definicje tej lekcji

  • n-gram — predykcja ze stałej, krótkiej historii.
  • Bag of words — reprezentacja ignorująca kolejność; wroga sekwencji.
  • Zależność długodystansowa — związek między tokenami daleko od siebie w tekście.

📌 Najważniejsze w pigułce

  • Okno LM ≈ duch n-gramu: krótka, sztywna historia.
  • Bolączki: brak długiego kontekstu + słaby porządek.
  • word2vec nie rozwiązuje sekwencji — tylko punkty słów.
  • Potrzeba architektury z pamięcią w czasie → RNN.

🎒 Zadania

Zadanie 15.2.1. Wyjaśnij różnicę między bigramem a modelem z oknem 3 (wejście: trzy poprzednie tokeny).

Pokaż rozwiązanie

Bigram (n=2) przewiduje z jednego poprzedniego tokenu. Okno 3 to historia długości 3 (jak trigram / 4-gram zależnie od konwencji liczenia n) — szerszy kontekst, wciąż stały sufit: czwarte słowo wstecz znika.

Zadanie 15.2.2. Podaj własne zdanie, w którym model z oknem 2 musi zawieść przy zgadywaniu końcówki — i wskaż, które wcześniejsze słowo jest kluczowe.

Pokaż rozwiązanie

Np. „Książki leżące na półce od maja są zakurzone" — zgoda z „Książki", nie z „maja". Okno 2 przy „… maja są" nie widzi podmiotu.

🔍 Sprawdź, czy umiesz

  • [ ] Opisać ideę n-gramu / stałego okna.
  • [ ] Wymienić dwa ograniczenia z tej jednostki.
  • [ ] Odróżnić worek słów od sekwencji.
  • [ ] Powiedzieć, po co idziemy do RNN.

Ucz się tej jednostki z asystentem