Czym są wagi?
Kiedy mówimy, że model językowy „ma 70 miliardów parametrów", mówimy dokładnie o jego wagach. Waga (ang. weight) to pojedyncza liczba opisująca siłę połączenia między dwoma sztucznymi neuronami?Sztuczny neuron: Najmniejsza jednostka sieci. Bierze liczby z wejścia, mnoży je przez wagi, sumuje, a wynik przepuszcza przez funkcję aktywacji, dając jedną liczbę na wyjściu — to uproszczony, matematyczny model neuronu z mózgu.. Każde wejście do neuronu jest mnożone przez odpowiadającą mu wagę — im większa waga, tym większy wpływ danego sygnału na wynik.
Waga może być dodatnia lub ujemna. Dodatnia wzmacnia sygnał i pobudza neuron. Ujemna działa odwrotnie — wycisza albo wręcz odwraca sygnał, hamując neuron. Znak mówi więc „w którą stronę", a wielkość — czyli odległość od zera, bez znaku — „jak mocno".
Obok wag sieć ma jeszcze dwa elementy, które warto znać:
- Obciążenie (bias) — stała liczba, którą neuron dolicza do sumy sygnałów z wejścia. To jego punkt wyjścia: przesuwa cały wynik w górę lub w dół, zanim neuron zdecyduje, co przekazać dalej. Dzięki temu każdy neuron może mieć własne nastawienie — jednemu wystarczy słaby sygnał, by zareagował, a inny pozostaje powściągliwy.
- Funkcja aktywacji — reguła, która zamienia wyliczoną przez neuron liczbę na jego końcowy sygnał. Nie przepuszcza jej „jeden do jednego", lecz zagina: słabe lub ujemne wartości tłumi, a silne przepuszcza dalej. To zaginanie (nieliniowość) jest kluczowe — bez niego nawet najgłębsza sieć działałaby jak jedno proste mnożenie i nie uchwyciłaby złożonych zależności.
Razem wagi i obciążenia tworzą zbiór wszystkich parametrów modelu.
Najedź na neuron lub połączenie, by zobaczyć szczegóły.
Wagi, aktywacje i hiperparametry — co je różni?
Wokół wag narosło sporo nieporozumień, bo łatwo pomylić je z dwoma innymi pojęciami. Wagi nie są tym samym co aktywacje ani co hiperparametry. Oto czym te trzy rzeczy się różnią:
- Wagi — wyuczona wiedza modelu, czyli siła połączeń między neuronami. Zmieniają się tylko podczas treningu, potem pozostają stałe. To one są zapisane w pliku modelu — wagi to dosłownie „model".
- Aktywacje — chwilowe wartości, które neurony liczą dla konkretnego wejścia?Wejście neuronu: Liczby, które trafiają do neuronu — albo dane wejściowe modelu, np. zakodowany fragment tekstu, albo sygnały od neuronów z poprzedniej warstwy. To je neuron mnoży przez wagi.. Powstają od nowa przy każdym zapytaniu i nie są nigdzie zapisywane — istnieją tylko w trakcie obliczeń.
- Hiperparametry — ustawienia procesu uczenia (tempo uczenia?Tempo uczenia: Jak duży krok robi model przy każdej korekcie wag. Za duży — uczenie się rozchwiewa, za mały — trwa wieczność., rozmiar wsadu?Rozmiar wsadu: Ile przykładów model przetwarza naraz, zanim raz poprawi wagi. Większy wsad to kroki stabilniejsze, ale cięższe dla pamięci., liczba epok?Liczba epok: Ile razy model przechodzi przez cały zbiór danych treningowych. Za mało — nie zdąży się nauczyć, za dużo — zaczyna wkuwać dane na pamięć.), które człowiek dobiera ręcznie przed treningiem lub w jego trakcie. Model się ich nie uczy — sterują nauką, nie są jej wynikiem.
Najprościej ujmując: wagi to wynik nauki, hiperparametry to reguły gry, a aktywacje to chwilowe myśli modelu podczas pracy.
Skąd biorą się wagi?
Wagi nie są programowane ręcznie. Powstają w procesie treningu, który jest powtarzanym miliardy razy cyklem korekty błędu. Na początku wagi inicjalizuje się losowo — nie mogą być zerami, bo wtedy wszystkie neurony zachowywałyby się identycznie i sieć nie miałaby czego rozróżniać.
Następnie powtarza się czterostopniowa pętla:
- Propagacja w przód — dane przechodzą przez sieć, a obecne wagi liczą predykcję.
- Funkcja straty — porównuje predykcję z oczekiwanym wynikiem, na przykład z prawidłowym kolejnym słowem w zdaniu.
- Propagacja wsteczna (backpropagation) — algorytm liczy gradient, czyli wskazuje, jak bardzo każda waga przyczyniła się do błędu.
- Optymalizator — koryguje każdą wagę o niewielki krok w stronę mniejszego błędu. Najczęściej jest to algorytm o nazwie Adam (skrót od Adaptive Moment Estimation) lub stochastyczny spadek gradientu.
Sercem tej pętli jest strata — jedna liczba mówiąca, jak bardzo model się pomylił. Powstaje z porównania predykcji z prawidłową odpowiedzią, którą znamy z danych treningowych (na przykład z faktycznym kolejnym słowem). Im większa rozbieżność, tym większa strata. To ona jest kompasem: cały trening sprowadza się do tego, by ją zmniejszać, a gradient wskazuje, w którą stronę poprawić wagi.
Jest tu jednak pułapka. Strata mierzy błąd tylko na przykładach, których odpowiedź już znamy. Zbicie jej do zera może oznaczać nie tyle naukę, co wykucie danych na pamięć — model świetnie radzi sobie na treningu, ale gubi się na nowych przykładach. To zjawisko nazywa się przeuczeniem (overfitting). Dlatego sama niska strata na treningu nie gwarantuje jeszcze dobrego modelu.
Pojedyncza korekta jest mikroskopijna. Dopiero ich akumulacja przez miliardy iteracji na ogromnych klastrach GPU sprawia, że losowy szum stopniowo zamienia się w macierze kodujące gramatykę, fakty i zdolność rozumowania. Wagi gotowego modelu to skompresowany ślad wszystkiego, co sieć „przeczytała" w danych treningowych.
Dlaczego początkowe wagi nie mogą być zerami?
Wspomnieliśmy, że wagi startują od losowych liczb, a nie od zera. Brzmi to jak techniczny drobiazg, ale to warunek konieczny — bez niego sieć w ogóle się nie uczy. Zobaczmy, dlaczego, krok po kroku.
Każdy neuron liczyłby to samo
Przypomnijmy wzór pojedynczego neuronu: bierze on liczby z wejścia, mnoży każdą przez jej wagę, sumuje, dodaje bias?Bias: Stała liczba, którą neuron dodaje do ważonej sumy wejść. Przesuwa wynik w górę lub w dół jeszcze przed funkcją aktywacji, dając neuronowi własne nastawienie niezależne od wejść. i przepuszcza wynik przez funkcję aktywacji.
Znaczenie symboli
- …
- liczby wchodzące do neuronu
- …
- waga łącząca wejście i z neuronem j
- …
- bias, czyli stałe przesunięcie
- …
- funkcja aktywacji, np. ReLU (zeruje liczby ujemne, a dodatnie przepuszcza bez zmian)
- …
- gotowy sygnał neuronu
- …
- indeks numerujący neurony w warstwie
Jeśli wszystkie wagi są zerami, suma w nawiasie znika i każdy neuron — niezależnie od numeru … — daje dokładnie tę samą wartość …. Sto neuronów zachowuje się jak jeden. To właśnie problem symetrii: identyczny start oznacza identyczne neurony.
Losowość łamie symetrię
Lekarstwo jest proste: wagi inicjalizuje się losowymi, drobnymi liczbami. Wtedy neurony już od pierwszego kroku liczą różne wartości, gradienty są niezerowe i każdy neuron uczy się czegoś innego. Na przykład dla wag … oraz … sumy … i … są różne, więc … i symetria pęka.
Dlatego w praktyce stosuje się sprytne metody losowej inicjalizacji, jak Xavier (Glorot) czy He — dobierają skalę losowych wag tak, by sygnał w głębokiej sieci ani nie zanikał, ani nie eksplodował. Idea pozostaje jednak ta sama, co w naszym przykładzie: wagi muszą startować różne, żeby sieć miała od czego zacząć naukę.
Z czego fizycznie składa się waga?
Każda waga jest liczbą zmiennoprzecinkową, a sposób jej zapisu w pamięci ma ogromne konsekwencje praktyczne. To tutaj zaczyna się inżynieria, która decyduje o kosztach. Branża używa dziś trzech głównych formatów:
- FP32 — 32-bitowy standard (4 bajty): 1 bit na znak (czy liczba jest dodatnia, czy ujemna), 8 bitów na zakres, czyli jak duża lub mała może być liczba (tzw. wykładnik?Wykładnik: Część liczby zmiennoprzecinkowej ustalająca rząd wielkości — czyli zakres: jak bardzo dużą lub małą liczbę da się zapisać. Więcej bitów wykładnika to szerszy zakres bez przepełnienia.), i 23 bity na dokładność, czyli jak wiernie zapisuje liczbę — im więcej tych bitów, tym mniejszy błąd zaokrąglenia (tzw. mantysa?Mantysa: Część liczby zmiennoprzecinkowej odpowiadająca za precyzję — czyli jak wiernie zapisana jest liczba. Więcej bitów mantysy to mniejszy błąd zaokrąglenia, a więc dokładniejsza liczba.). Bardzo precyzyjny, ale kosztowny pamięciowo.
- FP16 — format 16-bitowy (2 bajty). Zachowuje dobrą dokładność, ale ma wąski zakres?Wąski zakres: Format obejmuje tylko stosunkowo niewielki przedział liczb (w FP16 do ok. ±65504). Wartości spoza niego się „nie mieszczą" i zamieniają w nieskończoność — to właśnie przepełnienie. — duże liczby się w nim nie mieszczą. Gdy w trakcie treningu wartość przekroczy ten zakres, zamienia się w „nieskończoność" (Inf), a od tego momentu kolejne obliczenia się psują i model przestaje się uczyć. To zjawisko nazywamy przepełnieniem.
- BF16 (Brain Float 16) — też 16-bitowy, ale dzieli bity inaczej: więcej daje na zakres (tyle samo co FP32), a mniej na dokładność, czyli na to, jak wiernie odwzorowuje liczbę. Obejmuje przez to ten sam ogromny zakres co FP32, ale liczby zaokrągla nieco mocniej.
Sieci neuronowe dobrze tolerują ten drobny szum zaokrągleń, dlatego BF16 stał się dziś domyślnym formatem treningu wielkich modeli.
Ile ważą wagi?
Skoro każda waga to liczba o konkretnej precyzji, rozmiar całego modelu da się oszacować prostym mnożeniem: liczba parametrów razy liczba bajtów na parametr. Stąd praktyczna reguła: w formacie 16-bitowym jeden miliard parametrów zajmuje około 2 GB, a w 8-bitowym około 1 GB.
| Precyzja | Bajty/parametr | Model 7B | Model 70B |
|---|---|---|---|
| FP32 | 4 B | ~28 GB | ~280 GB |
| FP16 / BF16 | 2 B | ~14 GB | ~140 GB |
| INT8 | 1 B | ~7 GB | ~70 GB |
| INT4 | ~0,5 B | ~3,5–4 GB | ~35–40 GB |
Te liczby dotyczą jednak wyłącznie samych wag w stanie spoczynku. W praktyce inferencja?Inferencja: Inferencja to używanie gotowego modelu do generowania odpowiedzi — normalna praca modelu po treningu (np. zadajesz pytanie i dostajesz wynik). W odróżnieniu od treningu model już się nie uczy, tylko liczy. potrzebuje dodatkowej pamięci na bufor kontekstu?Bufor kontekstu: Pamięć podręczna, w której model trzyma już przetworzony fragment rozmowy lub tekstu (kontekst), żeby przy kolejnym słowie nie liczyć wszystkiego od nowa. Rośnie wraz z długością kontekstu. (tzw. KV cache), a pełny trening pochłania jej wielokrotnie więcej. Obok samych wag trzyma w pamięci również gradienty — czyli wskazówki mówiące, o ile poprawić każdą wagę — oraz stany optymalizatora, czyli dodatkowe liczby pomocnicze, które wygładzają kolejne poprawki. Dlatego ten sam model podczas treningu potrafi wymagać kilkukrotnie więcej VRAM?VRAM: Pamięć karty graficznej (GPU). To w niej muszą zmieścić się wagi modelu i wszystkie dane potrzebne do obliczeń — jej ilość decyduje, czy model w ogóle się uruchomi. niż przy samym uruchomieniu.
Czy wszystkie wagi pracują naraz? Sparsity i MoE
Dotąd zakładaliśmy, że każda waga bierze udział w każdym obliczeniu. Tak działa model gęsty (ang. dense) — domyślna architektura, w której cały zestaw parametrów uruchamia się dla każdego tokenu.
Łamie tę zasadę Mixture of Experts (MoE), czyli mieszanka ekspertów. Sieć dzieli się na wielu „ekspertów" — rozłącznych podzbiorów wag — a niewielki router decyduje, których kilku użyć dla danego tokenu. Reszta pozostaje bezczynna. To forma rzadkości (ang. sparsity): dla konkretnego wejścia pracuje tylko ułamek wszystkich wag.
Parametry łączne kontra aktywne
W modelu rzadkim, takim jak MoE, rozjeżdżają się dwie liczby, które w zwykłym modelu gęstym oznaczały to samo:
- Parametry łączne — wszystkie wagi modelu. Tyle trzeba wczytać do pamięci.
- Parametry aktywne — te, które realnie liczą dla pojedynczego tokenu. Tyle wyznacza koszt i szybkość inferencji?Inferencja: Inferencja to używanie gotowego modelu do generowania odpowiedzi — normalna praca modelu po treningu (np. zadajesz pytanie i dostajesz wynik). W odróżnieniu od treningu model już się nie uczy, tylko liczy..
W praktyce różnica bywa ogromna:
- Mixtral 8×7B — około 47 miliardów wag łącznie, ale na token aktywuje tylko około 13 miliardów.
- DeepSeek-V3 — 671 miliardów łącznie, około 37 miliardów aktywnych.
Z punktu widzenia pamięci oznacza to rzecz istotną: pamięć trzyma zawsze wszystkie wagi, bo cały model trzeba załadować, więc model MoE „waży" tyle, ile jego liczba parametrów łącznych. Ale liczy tylko swoją częścią aktywną, więc działa tak szybko jak model jej wielkości — o szybkości decyduje liczba parametrów aktywnych, a nie łącznych. To daje tańszą i szybszą inferencję na token. Dlatego „70 miliardów parametrów" może oznaczać dwie zupełnie różne rzeczy w zależności od tego, czy model jest gęsty, czy rzadki.
Kto buduje ekosystem wokół wag?
Choć wagi to abstrakcyjne pojęcie matematyczne, cały ekosystem narzędzi do ich zapisu i adaptacji budują konkretne firmy i zespoły. Format Safetensors, dziś przemysłowy standard bezpiecznego przechowywania surowych wag, opracował zespół Hugging Face. Powstał jako odpowiedź na realne zagrożenie — starszy format PyTorcha oparty na bibliotece pickle pozwalał ukryć w pliku modelu dowolny kod, który uruchamiał się przy wczytaniu. Safetensors przechowuje wyłącznie liczby, bez możliwości wstrzyknięcia logiki.
Po stronie uruchamiania modeli lokalnie kluczową rolę odegrał projekt llama.cpp Georgiego Gerganova, wraz z formatem GGUF, który pakuje skwantyzowane wagi i konfigurację w jeden samodzielny plik. Z kolei technikę LoRA, o której za chwilę, opracowali badacze z Microsoftu. Wreszcie filozofię otwartych wag napędzają dziś firmy takie jak Meta (modele LLaMA), Mistral AI, DeepSeek czy Qwen, udostępniając swoje parametry publicznie.
Jak ściska się wagi, by zmieściły się na laptopie?
Najważniejszą techniką ostatnich lat jest kwantyzacja — odwzorowanie wag o wysokiej precyzji na formaty całkowitoliczbowe o niskiej liczbie bitów:
- INT8 — waga zapisana na 8 bitach. Praktyczna reguła: w INT8 jeden miliard parametrów to mniej więcej jeden gigabajt pamięci.
- INT4 — waga na zaledwie czterech bitach, czyli czterokrotnie mniej miejsca niż w FP16.
Skala oszczędności jest dramatyczna. Jak pokazuje powyższa tabela, ten sam model o 70 miliardach parametrów schodzi z około 280 GB w FP32 do zaledwie 35–40 GB w INT4. To właśnie dzięki kwantyzacji 4-bitowej można uruchomić model klasy LLaMA 3 70B na laptopie z 64 GB pamięci współdzielonej. Kwantyzacja do 4 bitów zwykle zachowuje około 95 procent oryginalnych możliwości modelu przy czterokrotnym zmniejszeniu rozmiaru.
Po co zmieniać wagi po treningu — LoRA i fine-tuning
Gotowy model bazowy ma ogólną wiedzę, ale często trzeba go dostroić do konkretnego zadania, tonu czy dziedziny. Klasyczny pełny fine-tuning aktualizuje każdą z miliardów wag, co jest tak kosztowne, że stać na to tylko duże ośrodki z klastrami akceleratorów.
LoRA — tańsza droga
Przełomem okazała się LoRA (Low-Rank Adaptation). Jej autorzy zauważyli, że poprawki wag potrzebne do dostrojenia modelu da się odtworzyć z dwóch znacznie mniejszych macierzy, zamiast zmieniać wszystkie wagi. LoRA dostraja już gotowy, wytrenowany model zawierający całą wyuczoną wiedzę. Nie rusza wag modelu, „zamraża" je, a zamiast przestrajać całość, douczają się jedynie niewielkie macierze doczepione obok wybranych warstw modelu. Podczas działania ich wynik dodaje się do wyniku zamrożonej warstwy — oryginalne wagi zostają nietknięte, a mimo to zachowanie modelu się zmienia. To nie osobny model, lecz mała „nakładka" na istniejący. Daje to trzy konkretne korzyści:
- Mniej trenowanych parametrów — ich liczba spada o dziesiątki tysięcy razy.
- Tańszy sprzęt — model można dostroić na pojedynczej konsumenckiej karcie graficznej w kilka godzin.
- Modularność — jeden zamrożony model bazowy współpracuje z wieloma niewielkimi adapterami przełączanymi zależnie od zadania.
Rozszerzeniem tej idei jest QLoRA, która łączy LoRA z kwantyzacją 4-bitową bazowego modelu, pozwalając dostrajać naprawdę duże modele na sprzęcie, który wcześniej w ogóle by ich nie pomieścił.
Open weights kontra modele zamknięte
Sposób dystrybucji wag dzieli dziś rynek na dwa obozy.
Modele zamknięte (proprietary)
Modele takie jak GPT od OpenAI, Claude od Anthropic czy Gemini od Google udostępniają tylko interfejs API — same wagi pozostają tajemnicą firmy. Użytkownik wysyła dane na cudze serwery i otrzymuje wynik, a zachowanie modelu zmienia głównie przez prompty.
Modele open weights
Modele open weights — LLaMA, Mistral, DeepSeek, Qwen — publikują gotowe parametry na wolnych licencjach. Warto jednak podkreślić, że „open weights" to nie to samo co „open source": pełny open source wymagałby też udostępnienia danych treningowych i kodu, a tego większość otwartych modeli nie robi.
| Kryterium | Modele zamknięte (API) | Open weights |
|---|---|---|
| Dostęp do wag | nie | tak |
| Lokalizacja danych | na cudzych serwerach | lokalnie, prywatnie |
| Dostrajanie | głównie prompty | pełne (LoRA, fine-tuning) |
| Uzależnienie od dostawcy | wysokie | niskie |
Dlaczego to jest istotne?
Wagi przestały być wewnętrznym detalem technicznym, a stały się centralnym przedmiotem strategii w całej branży AI. Kiedy rozumiesz, że cała „inteligencja" modelu mieści się w pliku z liczbami, inaczej patrzysz na każdą decyzję wokół niego. Sprowadza się to do trzech rzeczy:
- Pamięć i koszt — pytanie „ile to ma parametrów" przekłada się wprost na to, ile pamięci i prądu pochłonie wdrożenie.
- Gdzie uruchomisz model — wybór precyzji i kwantyzacji decyduje, czy model zmieści się na urządzeniu brzegowym, czy będzie wymagał serwerowni.
- Kontrola — to, czy masz dostęp do wag, czy tylko do API, wyznacza granicę między wynajmowaniem cudzej inteligencji a posiadaniem własnej.
Open weights, kwantyzacja i techniki takie jak LoRA wspólnie demokratyzują AI — przesuwają możliwość budowania i dostrajania modeli z kilku gigantów do rąk pojedynczych zespołów i deweloperów. Dane z lat 2024–2026 pokazują, że różnica jakości między najlepszymi modelami zamkniętymi a otwartymi szybko maleje, a w niektórych zadaniach modele otwarte już wygrywają.
Wagi to nie magia, tylko skompresowana pamięć nauki zapisana w liczbach. Im lepiej rozumiesz, jak powstają, jak się je przechowuje i jak modyfikuje, tym świadomiej możesz wybierać narzędzia AI — zamiast traktować je jak nieprzeniknioną czarną skrzynkę.
