Robocikowo>ROBOCIKOWO
Opracowania
TechnologiaMetody AI

Embeddingi w AI: jak maszyny rozumieją znaczenie słów

Embeddingi w AI: jak maszyny rozumieją znaczenie słów

Embeddingi to matematyczne reprezentacje słów, zdań i dokumentów w wielowymiarowej przestrzeni wektorowej — fundament nowoczesnego NLP, wyszukiwania semantycznego i architektury RAG. Poznaj, jak działają Word2Vec, GloVe, BERT i dlaczego podobieństwo kosinusowe stało się językiem maszyn.

Dlaczego maszyny potrzebują wektorów?

Sieci neuronowe operują wyłącznie na liczbach. Nie rozumieją słów takich jak „kot", „bank" czy „miłość" w sposób symboliczny — przetwarzają ciągłe zmienne zmiennoprzecinkowe, na których można wykonywać operacje macierzowe niezbędne w uczeniu głębokim. Tradycyjne podejście, zwane one-hot encoding, reprezentowało każde słowo jako wektor zer z jedynką na pozycji odpowiadającej indeksowi słowa w słowniku. Przy słowniku 100 000 wyrazów oznaczało to wektory o 100 000 wymiarach, z których niemal wszystkie były zerowe. Taki zapis był nie tylko obliczeniowo marnotrawny, ale przede wszystkim semantycznie ślepy — iloczyn skalarny wektora „pies" i „kot" wynosił zero, jakby oba słowa nie miały ze sobą nic wspólnego.

Inną metodą było TF-IDF (Term Frequency-Inverse Document Frequency) — statystyczna waga słowa proporcjonalna do jego częstości w dokumencie i odwrotnie proporcjonalna do jego popularności w całym korpusie. TF-IDF przydaje się w klasycznym wyszukiwaniu, ale nadal ignoruje kolejność słów i relacje semantyczne.

Embedding rozwiązuje oba te problemy naraz. Każde słowo, zdanie lub dokument jest odwzorowywane na gęsty wektor liczb rzeczywistych o ustalonej długości — typowo 50 do kilku tysięcy wymiarów. W tej przestrzeni geometryczna bliskość wektorów odpowiada podobieństwu znaczeniowemu: słowa „kot" i „pies" leżą blisko siebie, a „bank" (instytucja) daleko od „bank" (brzeg rzeki).

Przestrzeń wektorowa embeddingów

Diagram: przestrzeń wektorowa embeddingów — klastry słów, algebra wektorów i miary podobieństwa
Słowa o podobnym znaczeniu tworzą skupiska w przestrzeni wielowymiarowej. Cosinus kąta między wektorami mierzy semantyczne podobieństwo.

Word2Vec: uczenie się znaczenia przez przewidywanie sąsiadów

Przełom nastąpił w 2013 roku wraz z publikacją Word2Vec przez Tomasa Mikolova i zespół Google. Ich kluczowy pomysł: zamiast ręcznie definiować relacje semantyczne, niech sieć nauczy się ich samodzielnie, przewidując słowa z kontekstu (lub kontekst ze słowa).

Word2Vec ma dwa warianty architektoniczne:

CBOW (Continuous Bag-of-Words): model przewiduje słowo centralne na podstawie otaczającego kontekstu. Dla zdania „The peon is ringing the bell" i okna o szerokości 2, model stara się przewidzieć „ringing" znając słowa [peon, is, the, bell].

Skip-Gram: odwrotnie — mając słowo centralne, model przewiduje słowa kontekstu. Formalnie minimalizuje funkcję straty będącą ujemnym logarytmem wiarygodności:

Po zakończeniu treningu nie interesuje nas sama zdolność przewidywania — liczy się „efekt uboczny": wagi warstwy wejściowo-ukrytej stanowią macierz embeddingów. To właśnie te wagi zawierają zakodowaną wiedzę semantyczną.

Słynnym dowodem na to, że embeddingi naprawdę „rozumieją" relacje, jest algebra wektorowa: wektor(„king") − wektor(„man") + wektor(„woman") ≈ wektor(„queen"). Odejmując wymiary odpowiadające za „męskość" i dodając „kobiecość", lądujemy niemal dokładnie przy słowie „królowa".

GloVe i FastText: globalne statystyki i morfologia

W tym samym roku na Uniwersytecie Stanforda powstało GloVe (Global Vectors for Word Representation). Autorzy Pennington, Socher i Manning postawili tezę: Word2Vec uchwytuje lokalny kontekst (okno kilku słów), ale pomija globalne statystyki współwystąpień w całym korpusie.

GloVe buduje gigantyczną macierz współwystąpień — ile razy każde dwa słowa pojawiają się w swoim sąsiedztwie w całym zbiorze danych — a następnie trenuje wektory tak, aby ich iloczyn skalarny aproksymował logarytm tych współwystąpień. Kluczowa innowacja: nie same częstości niosą semantykę, lecz stosunek prawdopodobieństw współwystąpień. Słowo „stały" współwystępuje z „lodem" często, ale rzadko z „parą" — ten stosunek ujawnia relację lód-para.

GloVe i Word2Vec mają wspólną słabość: nie radzą sobie ze słowami spoza słownika treningowego (OOV — Out-Of-Vocabulary) i ignorują morfologię języka. FastText (Facebook AI Research) rozwiązuje to, rozkładając słowa na n-gramy znakowe. Słowo „niezrozumiały" jest reprezentowane jako suma wektorów swoich fragmentów: <ni, nie, iez, ezr… Napotkawszy neologizm lub słowo z literówką, FastText potrafi zbudować sensowny wektor z już znanych n-gramów. To szczególnie ważne dla języków bogatych morfologicznie, takich jak polski.

BERT i embeddingi kontekstowe: rewolucja dwukierunkowości

Statyczne modele mają fundamentalną wadę: każde słowo ma dokładnie jeden wektor, niezależnie od kontekstu. Angielskie „bank" w zdaniach „I went to the bank to deposit money" i „I'll bank on your support" otrzymuje ten sam, uśredniony wektor — mimo że w pierwszym przypadku chodzi o instytucję finansową, a w drugim o poleganie na kimś.

Architektura Transformer (2017, „Attention Is All You Need") i oparty na niej BERT (Bidirectional Encoder Representations from Transformers) rozwiązały ten problem. BERT generuje wektory dynamicznie, przez mechanizm self-attention uwzględniający wszystkie inne słowa w zdaniu — jednocześnie te po lewej i po prawej stronie (stąd „dwukierunkowy"). Reprezentacja „apple" w zdaniu o owocach zupełnie nie przypomina reprezentacji w zdaniu o marce komputerowej.

Rozwinięciem jest Sentence-BERT (SBERT) — model zakodowujący całe zdania w jeden gęsty wektor. Umożliwia błyskawiczne wyszukiwanie semantyczne: zamiast porównywać zdanie ze zdaniem słowo po słowie, wystarczy obliczyć odległość między ich wektorami. Współczesne API, jak OpenAI text-embedding-3, osadzają dokumenty korporacyjne w chmurze w milisekundach.

Matematyka podobieństwa: kosinus jako miara sensu

W wielowymiarowej przestrzeni wektorowej potrzebujemy metryki „bliskości". Dwie dominują:

Odległość euklidesowa: fizyczna odległość między punktami. Prosta, lecz wrażliwa na długość wektorów — faworyzuje krótkie dokumenty.

Podobieństwo kosinusowe (Cosine Similarity): mierzy kąt między wektorami, ignorując ich długość:

Wartość 1.0 oznacza identyczny kierunek (pełne podobieństwo), 0 — prostopadłość (brak relacji), −1 — przeciwność. Podobieństwo kosinusowe jest lekkie obliczeniowo i dominuje w bazach wektorowych — to podstawowa operacja każdego silnika RAG.

Badania wykazały, że struktury wektorów GloVe, Word2Vec i BERT, mimo różnych metod treningu, można na siebie odwzorować za pomocą macierzy Procrustesa — co sugeruje, że wszystkie odkryły zbliżone regularności lingwistyczne.

Ciemna strona embeddingów: bias wbudowany w wektory

Embeddingi uczą się na danych wytworzonych przez ludzi — a ludzie mają uprzedzenia. Klasyczne modele ujawniają niepokojące wzorce: wektor(„man") − wektor(„computer programmer") + wektor(„woman") ≈ wektor(„homemaker"). Podobnie: ojciec : lekarz :: matka : pielęgniarka.

Te matematycznie zakodowane stereotypy mogą wpływać na algorytmy rekrutacyjne, wyszukiwarki pracy czy systemy rekomendacji. Trwają intensywne prace nad debiasowaniem przestrzeni wektorowych — geometrycznym neutralizowaniem wymiarów związanych z płcią dla zawodów, które powinny być neutralne. Problem pozostaje otwarty i ważny z punktu widzenia etyki AI.

RAG: jak embeddingi leczą halucynacje LLM

Duże modele językowe (GPT, Claude, Llama) mają dwie strukturalne słabości: są „zamrożone" w czasie (nie znają zdarzeń po dacie cut-off) i halucynują — generują przekonująco brzmiące, lecz fałszywe fakty. Retrieval-Augmented Generation (RAG) to architektura eliminująca oba problemy przez połączenie LLM z wektorowym silnikiem wyszukiwania.

Pipeline RAG działa w sześciu krokach:

Chunking: dokumenty wiedzy (manuały, polityki, ustawy) są dzielone na małe, samodzielne fragmenty — „chunki".

Embedding: każdy chunk jest przekształcany przez model embeddingów (np. E5, BGE, SBERT) w wektor liczbowy.

  1. Baza wektorowa: wektory są przechowywane w specjalistycznej bazie (Pinecone, ChromaDB, FAISS), zoptymalizowanej pod kątem szybkich operacji matematycznych.

Query embedding: pytanie użytkownika jest embeddowane tym samym modelem, co dokumenty.

Semantic search: system szuka top-k chunków o najwyższym podobieństwie kosinusowym do wektora pytania.

Generacja: LLM otrzymuje pytanie razem z wyciągniętymi chunkami i formułuje odpowiedź — bez halucynowania, z możliwością cytowania źródeł.

Bazy wektorowe nie porównują każdego wektora z każdym (brute-force). Stosują algorytmy przybliżonych najbliższych sąsiadów (ANN) — np. HNSW (Hierarchical Navigable Small World) — które przeszukują miliardy wektorów w dziesiątkach milisekund.

RAG Pipeline — schemat działania

Diagram: RAG pipeline — indeksowanie dokumentów, embeddingi, baza wektorowa, wyszukiwanie semantyczne, LLM
Pipeline RAG: dokumenty są dzielone na fragmenty, osadzane w przestrzeni wektorowej i przechowywane w bazie. Przy zapytaniu system wyszukuje najbliższe wektory i przekazuje kontekst do LLM.

Jak wybrać model embeddingów? Benchmark MTEB

Nie istnieje jeden model embeddingów dobry do wszystkiego. Na platformie Hugging Face działa MTEB (Massive Text Embedding Benchmark) — ranking dziesiątek modeli ocenianych pod kątem klasteryzacji, klasyfikacji, wyszukiwania i podobieństwa semantycznego.

Czołówka rankingu (2024–2025) to m.in.:

intfloat/multilingual-e5-large-instruct — wielojęzyczny, świetny do RAG po polsku

Alibaba-NLP/gte-Qwen2-7B-instruct — 7 mld parametrów, najwyższa jakość

  • jinaai/jina-embeddings-v2-base-code — 137 mln parametrów, okno kontekstowe 8192 tokenów, dedykowany kodowi

BAAI/bge-base-en-v1.5 — mały, szybki, dobry punkt startowy

Praktyczna zasada: zacznij od modeli poniżej 500 mln parametrów. Większe modele dają lepszą jakość, ale wolniejszą inferencję i wyższe koszty serwera. Ważna jest też domena: model medyczny zakoduje frazę „scrubbed" inaczej niż model ogólny.

Embeddingi multimodalne i przyszłość reprezentacji

Embeddingi nie ograniczają się do tekstu. Vision Transformers (ViT) dzielą obrazy na patche traktowane jak tokeny — i osadzają je w tej samej przestrzeni wektorowej co tekst. Modele jak CLIP (OpenAI) uczą się wspólnej przestrzeni tekst-obraz, co umożliwia wyszukiwanie obrazów za pomocą opisów słownych.

W genomice i farmakologii struktury molekularne reprezentowane są jako grafy embeddowane przez sieci GNN. W biometrii wektory odcisków palców i twarzy służą do identyfikacji. Technika textual inversion w Stable Diffusion pozwala tworzyć embedding dla nowej koncepcji wizualnej — i przypisać jej nowe słowo kluczowe do generowania obrazów.

Rozwijają się też podejścia Embedding-Free RAG — systemy, w których LLM sam wnioskuje o ścieżkach wyszukiwania bez baz wektorowych. Na razie sprawdzają się w wąskich domenach specjalistycznych, ale wskazują kierunek: granica między wyszukiwaniem a rozumowaniem zaciera się.

Podsumowanie

Embeddingi to most między symbolicznym językiem ludzkim a numerycznym światem maszyn. Droga od one-hot encoding przez Word2Vec i GloVe do kontekstowych BERT-ów i wielomodalnych modeli CLIP to jedna z najważniejszych trajektorii w historii AI. Dziś wektory osadzeń napędzają wyszukiwarki semantyczne, systemy rekomendacji, tłumaczenia maszynowe i architektury RAG, które pozwalają LLM odpowiadać na pytania na podstawie aktualnych, weryfikowalnych źródeł. Ich matematyczna elegancja — prosty kąt między wektorami jako miara sensu — sprawia, że embedding stał się fundamentem całego współczesnego NLP i AI konwersacyjnej.

Źródła

  • Mikolov et al. (2013). Efficient Estimation of Word Representations in Vector Space. arXiv:1301.3781
  • Mikolov et al. (2013). Distributed Representations of Words and Phrases and their Compositionality. arXiv:1310.4546
  • Pennington et al. (2014). GloVe: Global Vectors for Word Representation. EMNLP 2014. nlp.stanford.edu/projects/glove/
  • Devlin et al. (2018). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. arXiv:1810.04805
  • Vaswani et al. (2017). Attention Is All You Need. arXiv:1706.03762
  • Lewis et al. (2020). Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks. arXiv:2005.11401

Literatura naukowa

Udostępnij to opracowanie