Podobieństwo cosinusowe (Cosine Similarity)
Metryka matematyczna mierząca kąt między dwoma wektorami w przestrzeni wielowymiarowej. Określa stopień podobieństwa semantycznego dwóch tekstów w skali od -1 (znaczenia przeciwne) do +1 (pełne synonimy), ignorując długość zdań.
1. Przegląd koncepcji i przeznaczenia
Wyobraź sobie dwa kompasy. Jeśli obie wskazówki skierowane są na północ – kąt między nimi wynosi zero, a kierunki idealnie się pokrywają. Jeśli jedna wskazuje północ, a druga wschód – kąt wynosi 90 stopni.
Podobieństwo kosinusowe (Cosine Similarity) to właśnie taki „kompas” dla sieci neuronowych:
- Pobiera dwa wektory (numeryczne reprezentacje znaczenia dwóch fraz).
- Mierzy kąt między nimi w przestrzeni pojęć.
- Zwraca wartość od
0.0do1.0(lub od -1 do 1), gdzie 1.0 oznacza absolutną spójność semantyczną.
To fundamentalna formuła matematyczna, dzięki której działają mechanizmy wyszukiwania w plikach w ChatGPT, Notion AI oraz bazy danych wektorowych.
2. Obrazowa geometria znaczenia
^ Pojęcie jedzenia
│
│ / Tekst A: „Kupić świeży chleb”
│ /
│ / ) kąt bliski 0° -> cosinus ≈ 0,96
│ /
│ /---- Tekst B: „Bułka z piekarni”
│
│
│─────────────────────────────> Pojęcie IT
│ Tekst C: „Napisać skrypt w Pythonie”
│ (kąt 90° -> cosinus ≈ 0,04)
3. Dlaczego kąt jest lepszy niż bezwzględna długość
W tradycyjnej geometrii im dłuższa linia, tym dalej znajduje się jej koniec. Gdybyśmy mierzyli zwykłą odległość:
- Słowo
«samochód»(krótki wektor). - Artykuł z Wikipedii o budowie samochodów liczący 10 stron (bardzo długi wektor zawierający wiele słów).
Odległość euklidesowa potraktowałaby je jako różne byty, ponieważ jeden tekst jest krótki, a drugi długi. Natomiast kosinus ocenia wyłącznie kierunek wektora myśli, rozumiejąc, że oba teksty dotyczą transportu.
4. Skala porównawcza ocen podobieństwa kosinusowego
| Ocena podobieństwa | Co to oznacza | Przykład pary zdań |
|---|---|---|
| 0.90 – 1.00 | Bezpośredni synonim lub duplikat | «Jak wymienić koło» ↔ «Instrukcja montażu opony» |
| 0.75 – 0.89 | Ścisły związek kontekstowy | «Karta kredytowa» ↔ «Oprocentowanie pożyczki» |
| 0.40 – 0.70 | Odległy, styczny związek | «Smartfon Apple» ↔ «Akumulator do samochodu elektrycznego» |
| 0.00 – 0.30 | Całkowity brak związku | «Uprawa truskawek» ↔ «Klucze kryptograficzne SSH» |
5. Praktyczny wniosek dla użytkownika
Konfigurując wyszukiwanie w bazie wiedzy lub korporacyjnym chatbocie, często spotykasz parametr similarity_threshold = 0.75. Teraz wiesz, że jest to filtr oparty na kosinusie, który odrzuca wszystkie dokumenty, których kąt odchylenia od zapytania użytkownika przekracza dopuszczalny margines błędu.
FAQ: Podobieństwo cosinusowe (Cosine Similarity)
Powiązane pojęcia
Embeddingi w pigułce (Jak tekst staje się liczbami)
Fundamentalna technologia przekształcania słów, zdań lub obrazów w wielowymiarowe listy liczb (wektory). Umożliwia komputerowi matematyczne mierzenie semantycznej bliskości między różnymi myślami i koncepcjami.
Bazy wektorowe (Vector DBs & ANN Search)
Specjalizowane systemy zarządzania bazami danych (SGBD) oraz rozszerzenia (Qdrant, pgvector, Milvus, Chroma, Turso), zoptymalizowane do przechowywania milionów wielowymiarowych wektorów i błyskawicznego przybliżonego wyszukiwania najbliższych sąsiadów (Approximate Nearest Neighbors).
Wyszukiwanie semantyczne (szukanie po znaczeniu, a nie po literach)
Technologia wyszukiwania informacji oparta na koncepcyjnej treści zapytania, a nie na dokładnym dopasowaniu znaków lub słów kluczowych. Rozumie synonimy, parafrazy, błędy w pisowni oraz abstrakcyjne pytania zadane językiem naturalnym.