Przejdź do treści
coden

Krótka historia sztucznej inteligencji: od Turinga do modeli językowych

Test Turinga, seminarium w Dartmouth, złote lata, dwie zimy AI i systemy ekspertowe, uczenie statystyczne, uczenie głębokie i modele językowe — oś czasu z odnośnikami do części serii i gorzka lekcja siedemdziesięciu lat badań.

10 minut Matěj Žalmánek 2026-10-16

Seria Podstawy AI Część 2 z 52
  1. Mapa sztucznej inteligencji: co jest czym i jak to do siebie pasuje
  2. Krótka historia sztucznej inteligencji: od Turinga do modeli językowych
  3. Dane, model, trening, inferencja: podstawowe pojęcia na jednym przykładzie
  4. Jak czytać zapis matematyczny: symbole, indeksy, sumy i kwantyfikatory
  5. Zbiory i relacje: klocki, z których składają się definicje w AI
  6. Funkcje i odwzorowania: dlaczego każdy model AI jest funkcją
  7. Logika i dowody: reguły, według których rozumuje AI
  8. Grafy i drzewa: struktura, na której opierają się przeszukiwanie i sieci neuronowe
  9. Algebra liniowa dla uczenia maszynowego: wektory, macierze i dlaczego AI głównie mnoży
  10. Pochodne, gradient i reguła łańcuchowa: jak model ustala, w którą stronę się uczyć
  11. Spadek gradientu: jak uczy się model
  12. Czym jest prawdopodobieństwo: od rzutu kostką do aksjomatów Kołmogorowa
  13. Prawdopodobieństwo warunkowe i twierdzenie Bayesa: jak zmienić ocenę, gdy dowiesz się czegoś nowego
  14. Zmienna losowa i dystrybuanta: jedna funkcja, która mówi o rozkładzie wszystko
  15. Funkcja gęstości i funkcja prawdopodobieństwa: dlaczego zmienna ciągła ma w punkcie prawdopodobieństwo zero
  16. Wartość oczekiwana, wariancja i kowariancja: gdzie leży rozkład, jak jest szeroki i co z czym się wiąże
  17. Przegląd rozkładów prawdopodobieństwa: Bernoulliego, dwumianowy, Poissona, jednostajny, normalny i wykładniczy
  18. Prawo wielkich liczb i centralne twierdzenie graniczne: dlaczego średnie zachowują się tak przewidywalnie
  19. Statystyka i estymacja parametrów: największa wiarygodność, MAP i przedziały ufności
  20. Teoria informacji: entropia, entropia krzyżowa i dywergencja KL — skąd się biorą funkcje straty
  21. Przeszukiwanie przestrzeni stanów: BFS, DFS, UCS i A* z animacjami
  22. Gry i przeciwnik: minimax, przycinanie alfa-beta i Monte Carlo tree search
  23. Spełnianie ograniczeń: backtracking, propagacja ograniczeń i AC-3 na sudoku i mapie czeskich krajów
  24. Logika i systemy z bazą wiedzy: wnioskowanie w przód i wstecz, rezolucja i systemy ekspertowe
  25. Planowanie: STRIPS, świat klocków, heurystyki z relaksacji i planowanie w agentach AI
  26. Przeszukiwanie lokalne i symulowane wyżarzanie: komiwojażer przez czeskie miasta wojewódzkie
  27. Algorytmy genetyczne: populacja, krzyżowanie, mutacja i selekcja na plecaku na wycieczkę
  28. Strategie ewolucyjne i programowanie genetyczne: od reguły jednej piątej do prawa Keplera
  29. Optymalizacja kolonią mrówek: jak ślad feromonowy znajduje krótką drogę
  30. Optymalizacja rojem cząstek: bezwładność, własne doświadczenie i doświadczenie roju
  31. Neuroewolucja: ewolucja wag i kształtu sieci neuronowych oraz algorytm NEAT
  32. Zbiory rozmyte i funkcje przynależności: jak zapisać „trochę ciepło”
  33. Logika rozmyta a prawdopodobieństwo: dlaczego „trochę ciepło” nie znaczy „prawdopodobnie ciepło”
  34. Logika rozmyta: t-normy, implikacje i reguły JEŻELI–TO
  35. Sterowanie rozmyte: Mamdani i Sugeno od wentylatora po wahadło na wózku
  36. Klasteryzacja rozmyta: algorytm fuzzy c-means i punkty między skupieniami
  37. Systemy neuro-rozmyte (ANFIS): reguły rozmyte, które uczą się z danych
  38. Łańcuchy Markowa: macierz przejścia, rozkład stacjonarny i PageRank
  39. Ukryte modele Markowa: algorytm Viterbiego i nieuczciwe kasyno
  40. Sieci bayesowskie: dlaczego trawa jest mokra i co z tego wynika dla zraszacza
  41. Filtr Kalmana: jak z niedokładnych pomiarów oszacować, gdzie jest samochód i jak szybko jedzie
  42. Rodzaje uczenia maszynowego: nadzorowane, nienadzorowane, półnadzorowane i inne
  43. Prompty, kontekst i RAG: jak dać modelowi właściwe informacje
  44. Wariacyjne autoenkodery (VAE): nowe obrazki z ciągłej przestrzeni latentnej
  45. Generatywne sieci przeciwstawne (GAN): fałszerz kontra detektyw
  46. Modele dyfuzyjne: jak z czystego szumu powstaje obraz
  47. Procesy decyzyjne Markowa: stany, akcje, nagrody i równania Bellmana
  48. Q-learning i DQN: uczenie się wartości akcji od tabeli po sieć neuronową
  49. Policy gradient i PPO: uczenie się bezpośrednio polityki
  50. Jak działa agent AI: model językowy w pętli z narzędziami
  51. Programowanie z agentami AI: zadanie, testy i kontrola
  52. Ocena i bezpieczeństwo systemów AI: jak mierzyć i jak pilnować

Pełny program serii Gotowe: 52 z 83 tematów

Czego się dowiesz
  • Jak rozwijała się AI i dlaczego entuzjazm przeplatał się z zimami.
  • Skąd pochodzą idee, na których opierają się dzisiejsze modele.
  • Czym jest gorzka lekcja i dlaczego wygrywają ogólne metody z dużymi obliczeniami.

Warto wiedzieć wcześniej: Mapa sztucznej inteligencji: co jest czym i jak to do siebie pasuje

Sztuczna inteligencja nie jest nowa. Jej dzieje są starsze niż komputery osobiste i przypominają kolejkę górską: okresy entuzjazmu i wielkich obietnic, po nich otrzeźwienie i odpływ pieniędzy — „zimy” — a potem znowu wzlot, gdy okazało się, że stara idea nagle działa. Większość pomysłów, na których opierają się dzisiejsze modele językowe, wymyślono dziesiątki lat temu. W tej części przejdziemy przez nie w kolejności, w jakiej się pojawiały, a przy każdym, który objaśniamy w serii, znajdziesz odnośnik do odpowiedniej części.

Nawiązuje do części Mapa sztucznej inteligencji.

początki złote lata pierwsza zima systemy ekspertowe druga zima uczenie statystyczne uczenie głębokie modele językowe 194019501960197019801990200020102020 Test Turinga 1950 Seminarium w Dartmouth 1956 Perceptron 1958 Raport Lighthilla 1973 Systemy ekspertowe 1980 Propagacja wsteczna 1986 Deep Blue 1997 AlexNet 2012 AlphaGo 2016 Transformer 2017 ChatGPT 2022 Agenci 2024 rok
Oś czasu sztucznej inteligencji (na zielono okresy rozkwitu, na fioletowo zimy)

1. Początki: czy maszyna może myśleć?

Definicja — test Turinga

Alan Turing w 1950 roku zastąpił niejasne pytanie „czy maszyny mogą myśleć?” sprawdzianem: sędzia koresponduje z dwoma ukrytymi rozmówcami, człowiekiem i maszyną, i ma rozpoznać, kto jest kim. Jeśli maszyna potrafi się zamaskować równie dobrze jak człowiek, to według Turinga nie mamy powodu odmawiać jej inteligencji. Sam Turing mówił o „grze w naśladowanie”.

Mówiąc prościej

Zamiast filozoficznej debaty praktyczny sprawdzian: jeśli z kimś piszesz i nie rozpoznasz, czy to człowiek, czy program, to jest to dla ciebie inteligencja. Dzisiejsze modele językowe w krótkiej rozmowie często taki sprawdzian przechodzą — i okazuje się, że mówi to o inteligencji mniej, niż się spodziewano.

Definicja — test Turinga jako test statystyczny

Sędzia prowadzi n niezależnych rozmów i w każdej wskazuje, który rozmówca jest maszyną. Niech S będzie liczbą trafnych wskazań. Jeśli maszyny nie da się odróżnić od człowieka, sędzia tylko zgaduje i S ~ Bin(n, ½), zatem ES = n/2, a odchylenie standardowe σ = √n / 2. Maszyna zdaje test, jeśli wynik nie różni się statystycznie od zgadywania: |z| < 1,96 (test dwustronny na poziomie 5 %, przybliżenie normalne rozkładu dwumianowego).

Uwaga. To dzisiejsza formalizacja, nie Turinga. Turing opisał test w 1950 roku słownie i zamiast progu podał przewidywanie: około roku 2000 przeciętny sędzia po pięciu minutach rozmowy miałby rozpoznawać maszynę trafnie z prawdopodobieństwem nie większym niż 70 %.

Mówiąc prościej

Jedna rozmowa niczego nie dowodzi — sędzia może trafić przypadkiem. Dlatego prowadzi się wiele rozmów i pytamy, czy sędzia rozpoznaje maszynę częściej, niż gdyby rzucał monetą. Jeśli nie, maszyna zdała.

z = (S − n/2) / √n / 2

S
ile razy sędzia rozpoznał maszynę — jedyne, co się w teście mierzy
n/2
ile razy trafiłby czystym zgadywaniem; odejmujemy to, bo interesujące jest tylko to, co jest ponad przypadkiem
√n / 2
typowy rozrzut zgadywania; dzieląc przez niego, porównujemy nadwyżkę ze zwykłym szumem — 6 więcej na 100 rozmów to coś innego niż 6 więcej na 10 000
O ile „zwykłych odchyleń” sędzia jest lepszy od monety.
Przykład — 100 rozmów

Sędzia rozpoznał maszynę w 56 rozmowach na 100. Zgadując, spodziewałby się 100/2 = 50, odchylenie wynosi √100 / 2 = 5, więc z = (56 − 50) / 5 = 1,2. To mniej niż 1,96 — nie różni się to od zgadywania i maszyna zdała. Nie zdałaby, gdyby sędzia trafił co najmniej 50 + 1,96 · 5 = 59,8, czyli 60 razy.

  • 1943 Sztuczny neuron. Warren McCulloch i Walter Pitts opisali neuron jako element logiczny z progiem. → część serii
  • 1950 Test Turinga. Alan Turing w artykule Computing Machinery and Intelligence zaproponował zamiast pytania „czy maszyny myślą?” grę w naśladowanie.
  • 1950 Szachy przez przeszukiwanie. Claude Shannon opisał, jak komputer grałby w szachy: przeszukiwać ruchy do określonej głębokości i oceniać pozycje funkcją. → część serii

2. Złote lata (1956–1974)

Na seminarium w Dartmouth latem 1956 roku spotkali się ludzie, którzy wierzyli, że „każdy aspekt uczenia się lub jakąkolwiek inną cechę inteligencji można w zasadzie opisać tak dokładnie, że maszyna zdoła ją naśladować”. Nastąpiły dwie dekady optymizmu. Programy dowodziły twierdzeń, rozwiązywały zadania tekstowe, grały w warcaby i rozmawiały o klockach na stole. Herbert Simon w 1965 roku przewidział, że w ciągu dwudziestu lat maszyny poradzą sobie z każdą pracą, którą wykonuje człowiek.

  • 1956 Seminarium w Dartmouth. John McCarthy, Marvin Minsky, Nathaniel Rochester i Claude Shannon zwołali letnie seminarium; nazwa „artificial intelligence” się przyjęła.
  • 1956 Logic Theorist. Allen Newell i Herbert Simon: program, który dowodził twierdzeń matematycznych przez przeszukiwanie. → część serii
  • 1958 Perceptron. Frank Rosenblatt zbudował uczący się neuron; gazety pisały o maszynie, która będzie chodzić i mówić. → część serii
  • 1959 Uczenie maszynowe. Arthur Samuel: program do warcabów, który poprawiał się, grając sam ze sobą. Od niego pochodzi wyrażenie machine learning. → część serii
  • 1960 Filtr Kalmana. Rudolf Kálmán: szacowanie stanu z zaszumionych pomiarów; latał z nim Apollo. → część serii
  • 1965 Zbiory rozmyte. Lotfi Zadeh wprowadził przynależność do zbioru jako liczbę między 0 a 1. → część serii
  • 1966 ELIZA. Joseph Weizenbaum napisał program, który kilkoma regułami naśladował psychoterapeutę — a ludzie zwierzali mu się z tajemnic.
  • 1969 Książka Perceptrons. Marvin Minsky i Seymour Papert pokazali, czego jeden neuron nie potrafi (XOR); zainteresowanie sieciami neuronowymi osłabło. → część serii
  • 1971 Shakey i STRIPS. Robot Shakey ze Stanfordu planował kroki w języku STRIPS. → część serii
  • 1973 Raport Lighthilla. Rząd brytyjski zlecił ocenę wyników AI; raport był krytyczny i finansowanie ograniczono.

Perceptron: pierwszy neuron, który się uczy

Definicja — perceptron

Perceptron z wagami w ∈ ℝd i przesunięciem b ∈ ℝ przypisuje wejście x ∈ ℝd do klasy +1, gdy w · x + b > 0, w przeciwnym razie do klasy −1 (w · x = w1x1 + … + wdxd to iloczyn skalarny). Na przykładzie (x, y) z poprawną klasą y ∈ {−1, +1} myli się, gdy y · (w · x + b) ≤ 0. Granica w · x + b = 0 jest prostą (ogólnie hiperpłaszczyzną).

Mówiąc prościej

Każde wejście dostaje wagę według tego, jak mocno przemawia za „tak”. Neuron sumuje wejścia z wagami i jeśli suma wyjdzie dodatnia, mówi „tak”. Uczenie się to dostrajanie wag tak, żeby „tak” mówił poprawnie.

Reguła Rosenblatta poprawia wagi tylko wtedy, gdy perceptron się pomyli:

w ← w + η · y · x

w
wagi — jedyne, czego się uczy; nowa wartość to stara plus poprawka, więc uczy się stopniowo, przykład po przykładzie
η
współczynnik uczenia — jak duży krok; u perceptronu startującego od zer tylko powiększa wszystkie wagi jednakowo, więc granicy nie zmienia
y
poprawna klasa ±1 — wyznacza kierunek: przykład dodatni przyciąga wagi do siebie, ujemny je odpycha
x
wejście, na którym się pomylił — poprawka celuje właśnie tam; wejście o wartości 0 nie przyczyniło się do błędu, więc jego waga się nie zmienia
Przesunięcie poprawia się tak samo, b ← b + η · y. Po poprawce y · (w · x + b) rośnie dokładnie o η · (‖x‖² + 1) > 0: odpowiedź na tym przykładzie przesuwa się we właściwą stronę.
perceptron(data, η):
    w ← (0, …, 0);  b ← 0
    powtarzaj:
        chyb ← 0
        dla każdego przykładu (x, y) w data:
            jeśli y · (w · x + b) ≤ 0:           # pomylił się (albo stoi na granicy)
                w ← w + η · y · x
                b ← b + η · y
                chyb ← chyb + 1
    dopóki chyb > 0                              # cała epoka bez błędu: gotowe
    zwróć w, b
Przykład — perceptron uczy się AND

Dane: (0, 0) → −1, (0, 1) → −1, (1, 0) → −1, (1, 1) → +1; η = 1, start w = (0, 0), b = 0.

  1. (0, 0), y = −1: −1 · (0 + 0) = 0 ≤ 0, błąd. w = (0, 0) + (−1) · (0, 0) = (0, 0), b = 0 − 1 = −1.
  2. (0, 1) i (1, 0): −1 · (0 − 1) = 1 > 0, poprawnie, nic się nie zmienia.
  3. (1, 1), y = +1: 1 · (0 + 0 − 1) = −1 ≤ 0, błąd. w = (0, 0) + (1, 1) = (1, 1), b = −1 + 1 = 0.

I tak dalej: łącznie 18 poprawek, ostatnia w 8. epoce, a wynik to w = (3, 2), b = −4. Sprawdzenie: 3 · 1 + 2 · 1 − 4 = 1 > 0, a dla pozostałych wejść −4, −2, −1 < 0.

Twierdzenie — perceptron nie poradzi sobie z XOR (Minsky i Papert, 1969)

Nie istnieją w1, w2, b takie, żeby perceptron poprawnie przypisał (0, 0) → −1, (1, 1) → −1, (0, 1) → +1, (1, 0) → +1.

Dowód. Poprawne przypisanie oznaczałoby b ≤ 0, w1 + w2 + b ≤ 0, w2 + b > 0 i w1 + b > 0. Dodając dwie ostatnie nierówności, dostajemy w1 + w2 + 2b > 0, czyli w1 + w2 + b > −b ≥ 0 — sprzeczność z drugą nierównością. ∎

Mówiąc prościej

Punkty XOR leżą jak na szachownicy: dodatnie na jednej przekątnej, ujemne na drugiej. Jedna prosta nie zdoła ich rozdzielić. Dwie warstwy neuronów sobie z tym poradzą — tyle że w 1969 roku nie wiedziano, jak je uczyć. Więcej w części Perceptron.

3. Dwie zimy i systemy ekspertowe (1974–1993)

Definicja — zima sztucznej inteligencji

Zima AI to okres, w którym po niespełnionych obietnicach gwałtownie spada finansowanie i zainteresowanie dziedziną. Zwykle mówi się o dwóch: mniej więcej 1974–1980 (po raporcie Lighthilla w Wielkiej Brytanii i cięciach amerykańskiej agencji grantowej DARPA) oraz 1987–1993 (po załamaniu rynku specjalizowanych komputerów dla języka Lisp i rozczarowaniu systemami ekspertowymi).

Mówiąc prościej

Programy, które opanowały zabawkowe światy klocków, zderzyły się z prawdziwym światem: zbyt wiele możliwości, zbyt wiele wyjątków, zbyt wolne komputery. Kto obiecywał maszynę, która „za dziesięć lat będzie myśleć”, musiał tłumaczyć, dlaczego nie myśli. Pieniądze poszły gdzie indziej.

Między zimami przyszła fala systemów ekspertowych: zamiast ogólnej inteligencji wąska dziedzina i setki reguł spisanych z ekspertami („jeśli temperatura > 38 i … to …”). Działały i zarabiały. Tyle że reguły trudno było utrzymywać, systemy nie umiały niczego poza swoją dziedziną i nie potrafiły się uczyć. W cieniu tamtych czasów po cichu wróciły jednak sieci neuronowe: propagacja wsteczna (1986) pokazała, jak uczyć sieci o wielu warstwach.

  • 1975 Algorytmy genetyczne. John Holland podsumował ewolucję populacji rozwiązań z krzyżowaniem i mutacją. → część serii
  • 1980 Systemy ekspertowe. XCON (R1) konfigurował komputery firmy DEC regułami od ekspertów i oszczędzał miliony dolarów rocznie. → część serii
  • 1986 Propagacja wsteczna. David Rumelhart, Geoffrey Hinton i Ronald Williams pokazali, jak uczyć sieci wielowarstwowe. → część serii
  • 1988 Sieci bayesowskie. Judea Pearl: probabilistyczne wnioskowanie na grafie zależności. → część serii
  • 1989 Sieci konwolucyjne. Yann LeCun nauczył sieć konwolucyjną czytać ręcznie pisane kody pocztowe. → część serii
  • 1989 Q-learning. Christopher Watkins: uczenie się wartości akcji bez znajomości reguł świata. → część serii

Propagacja wsteczna: jak uczyć wiele warstw

Definicja — propagacja wsteczna (backpropagation)

Propagacja wsteczna to algorytm, który dla sieci złożonej z warstw hl = φ(Wlhl−1 + bl) oblicza gradient straty L względem wszystkich wag. Pochodne liczy od wyjścia do wejścia według reguły różniczkowania funkcji złożonej (reguły łańcuchowej) i każdy wynik pośredni wykorzystuje ponownie, więc cały gradient kosztuje rzędu tyle samo co jedno przejście przez sieć do przodu.

Mówiąc prościej

Sieć się pomyliła. Ile z tego błędu idzie na konto której wagi? Propagacja wsteczna to rozlicza: zaczyna przy wyjściu i przesyła winę do tyłu, warstwa po warstwie, według tego, jak mocno która waga wpłynęła na wynik.

Dla jednego neuronu ŷ = σ(z), z = wx + b ze stratą L = ½(ŷ − y)² łańcuch wygląda tak:

∂L/∂w = ∂L/∂ŷ · ∂ŷ/∂z · ∂z/∂w

∂L/∂w
czego chcemy: jak zmieni się błąd, gdy poruszymy wagą — znak mówi, w którą stronę wagę przesunąć
∂L/∂ŷ
= ŷ − y: jak mocno błąd zależy od wyjścia; tu zaczyna się przejście wsteczne
∂ŷ/∂z
= ŷ(1 − ŷ) dla sigmoidy: jak czuła jest aktywacja; dla nasyconego neuronu prawie 0 i uczenie staje
∂z/∂w
= x: ile waga wniosła do sumy; w sieci wielowarstwowej stoi tu wyjście poprzedniej warstwy, a łańcuch biegnie dalej do tyłu
Gradient to iloczyn lokalnych pochodnych wzdłuż drogi od błędu do wagi.
Przykład — jeden krok uczenia

x = 1, w = 0,5, b = 0, poprawnie y = 1. Do przodu: z = 0,5, ŷ = σ(0,5) = 1 / (1 + e−0,5) = 0,6225, L = ½ · (0,6225 − 1)² = 0,0713.

Do tyłu: ∂L/∂ŷ = −0,3775, ∂ŷ/∂z = 0,6225 · 0,3775 = 0,2350, ∂z/∂w = 1. Iloczyn: ∂L/∂w = −0,0887.

Krok z η = 1: w ← 0,5 − 1 · (−0,0887) = 0,5887. Gradient jest ujemny, więc waga rośnie, a wyjście zbliża się do 1.

zpětné_šíření(x, y):
    h₀ ← x                                   # do przodu: zapamiętaj wyniki pośrednie
    dla l = 1 … L:
        zₗ ← Wₗ · hₗ₋₁ + bₗ
        hₗ ← φ(zₗ)
    δ ← ∂Ztráta/∂h_L                         # do tyłu: zacznij od błędu wyjścia
    dla l = L … 1:
        δ ← δ ⊙ φ′(zₗ)                       # przez aktywację (po składowych)
        ∂Ztráta/∂Wₗ ← δ · hₗ₋₁ᵀ               # gradient wag tej warstwy
        ∂Ztráta/∂bₗ ← δ
        δ ← Wₗᵀ · δ                          # przekaż winę o warstwę niżej
    zwróć wszystkie ∂Ztráta/∂Wₗ, ∂Ztráta/∂bₗ

W głąb: Sieć neuronowa od zera.

4. Uczenie statystyczne (1993–2012)

Dziedzina się zmieniła. Zamiast „zaprogramujmy inteligencję” przyszło „nauczmy się tego z danych” — a wraz z tym prawdopodobieństwo, statystyka i staranne pomiary. Rozpoznawanie mowy, filtry spamu, rekomendacje i wyszukiwanie działały dzięki ukrytym modelom Markowa, metodom bayesowskim, SVM i zespołom drzew. Określenia „sztuczna inteligencja” używano wtedy rzadko — mówiło się o uczeniu maszynowym. Deep Blue pokonał Kasparowa w 1997 roku, ale nie uczeniem: brutalną siłą przeszukiwania i ręcznie dostrojoną funkcją oceny.

  • 1995 SVM. Corinna Cortes i Vladimir Vapnik: klasyfikacja z największym marginesem i sztuczka z jądrem. → część serii
  • 1997 Deep Blue. Komputer IBM pokonał mistrza świata w szachach Garriego Kasparowa — przeszukiwaniem, nie uczeniem. → część serii
  • 1997 LSTM. Sepp Hochreiter i Jürgen Schmidhuber: sieć rekurencyjna z bramkami, która długo pamięta. → część serii
  • 2001 Las losowy. Leo Breiman: zespół drzew decyzyjnych głosuje. → część serii

5. Uczenie głębokie (2012–2018)

W 2012 roku konkurs rozpoznawania obrazów ImageNet wygrała głęboka sieć konwolucyjna AlexNet (Alex Krizhevsky, Ilya Sutskever i Geoffrey Hinton) z taką przewagą, że w ciągu kilku lat dziedzina przeniosła się do sieci neuronowych. Nie był to nowy pomysł — sieci konwolucyjne istniały od końca lat 80. Nowe były trzy rzeczy: duże oznaczone dane (ImageNet miał ponad milion obrazów), karty graficzne, które mnożą macierze tysiąc razy szybciej, i kilka drobnych sztuczek (ReLU, dropout). Potem przyszła lawina: mowa, tłumaczenie, gry, generowanie.

  • 2012 AlexNet. Głęboka sieć konwolucyjna uczona na kartach graficznych wygrała konkurs ImageNet z dużą przewagą. → część serii
  • 2013 word2vec. Tomáš Mikolov i in.: słowa jako wektory, na których można liczyć analogie. → część serii
  • 2014 GAN. Ian Goodfellow: dwie sieci przeciwko sobie generują obrazy. → część serii
  • 2014 Uwaga. Dzmitry Bahdanau i in.: sieć tłumacząca patrzy na ważne słowa zdania. → część serii
  • 2015 DQN. DeepMind nauczył jedną sieć grać w dziesiątki gier na Atari z ekranu. → część serii
  • 2016 AlphaGo. Program DeepMind pokonał Lee Se-dola w go 4 : 1; grę uważano za domenę ludzkiej intuicji.
  • 2017 Transformer. Artykuł „Attention Is All You Need” (Vaswani i in., Google) — architektura dzisiejszych modeli językowych. → część serii
  • 2017 PPO. John Schulman i in. (OpenAI): stabilne uczenie strategii. → część serii
Przykład — dlaczego pomogła ReLU

Pochodna sigmoidy to σ′(z) = σ(z)(1 − σ(z)) ≤ ¼ (maksimum w z = 0). W propagacji wstecznej te pochodne mnożą się przez wszystkie warstwy, więc po dziesięciu warstwach sigmoidalnych gradient wynosi co najwyżej (¼)10 = 9,5 · 10-7 pierwotnej wielkości (wagi mogą go zwiększyć lub zmniejszyć, ale ten czynnik pozostaje). ReLU(z) = max(0, z) ma pochodną 1 dla z > 0 — gradient przechodzi przez aktywne neurony niepomniejszony, dzięki czemu głębokie sieci da się uczyć.

6. Modele językowe (od 2018)

Transformer z 2017 roku dało się skalować lepiej niż cokolwiek wcześniej. Modele GPT wstępnie wytrenowane na dużej części internetu pokazały, że większy model i więcej danych przynoszą przewidywalną poprawę. GPT-3 w 2020 roku radził sobie z zadaniami, do których nikt go nie uczył, tylko na podstawie kilku przykładów w prompcie. Dostrojenie go według ludzkich preferencji dało ChatGPT (listopad 2022) — pierwszy model językowy, który wypróbowały setki milionów ludzi. Dziś modele stają się agentami, którzy samodzielnie pracują na komputerze.

  • 2020 GPT-3. Model językowy ze 175 miliardami parametrów radzi sobie z nowymi zadaniami tylko na podstawie przykładów w prompcie. → część serii
  • 2020 Modele dyfuzyjne. Jonathan Ho i in.: obraz wyłania się z szumu krok po kroku. → część serii
  • 2020 AlphaFold 2. DeepMind przewiduje trójwymiarowy kształt białek z dokładnością bliską eksperymentowi.
  • 2022 ChatGPT. Model językowy dostrojony według ludzkich preferencji; w ciągu dwóch miesięcy według szacunków używało go 100 milionów ludzi. → część serii
  • 2024 Nagrody Nobla. Z fizyki John Hopfield i Geoffrey Hinton (sieci neuronowe), z chemii Demis Hassabis i John Jumper (AlphaFold) wraz z Davidem Bakerem.
  • 2024 Agenci. Modele językowe z narzędziami samodzielnie programują, wyszukują i pracują na komputerze. → część serii

Uwaga: wzór, na którym stoi transformer

Uwaga(Q, K, V) = softmax(QKT / √dk) V

QKT
iloczyny skalarne każdego zapytania z każdym kluczem — duże, gdy wektory wskazują ten sam kierunek; tak słowo „szuka” słów, które go dotyczą
√dk
iloczyn skalarny dk losowych składowych ma wariancję proporcjonalną do dk; bez dzielenia softmax wraz ze wzrostem wymiaru uczepiłby się jednego słowa, a gradienty by zanikły
softmax
z dowolnych wyników robi dodatnie wagi o sumie 1 — i w odróżnieniu od „wybierz maksimum” da się go różniczkować, więc można go uczyć
V
wartości — informacja, która jest faktycznie przekazywana; wyjście to ich średnia ważona
Każde słowo składa sobie nowy wektor jako średnią ważoną pozostałych, z wagami według podobieństwa.
Przykład — jedno zapytanie, dwa klucze

q = (1, 0), k1 = (1, 0), k2 = (0, 1), v1 = (10, 0), v2 = (0, 10), dk = 2.

Wyniki: q · k1 / √2 = 0,707 i q · k2 / √2 = 0. Softmax: e0,707 / (e0,707 + e0) = 0,670 i 0,330. Wyjście: 0,670 · (10, 0) + 0,330 · (0, 10) = (6,70; 3,30). Zapytanie bardziej „spojrzało” na pierwsze słowo, bo jego klucz jest mu podobny — ale drugiego też nie zignorowało.

W głąb: Uwaga i Transformery.

Prawo skalowania: dlaczego „więcej” działa przewidywalnie

L(N, D) = E + A / Nα + B / Dβ

E
nieprzekraczalna strata: sam tekst jest niepewny i nawet nieskończony model nie zna następnego słowa na pewno
A / Nα
podatek za mały model (N parametrów); maleje potęgowo — dwa razy więcej parametrów obniża go tylko o 21 %, i dlatego modele rosną o rzędy wielkości
B / Dβ
podatek za mało danych (D tokenów); stoi osobno, bo ogromny model na małych danych natrafi na ten składnik
L to średnia strata (entropia krzyżowa) na token. Obliczenia treningu to w przybliżeniu C ≈ 6 · N · D operacji; prawo mówi, jak je podzielić między wielkość modelu a dane.
Przykład — Gopher kontra Chinchilla

Stałe dopasowane na setkach modeli (Hoffmann i in., 2022): E = 1,69, A = 406,4, B = 410,7, α = 0,34, β = 0,28.

  • Gopher: N = 280 mld, D = 300 mld: L = 1,69 + 0,052 + 0,251 = 1,993; obliczenia 5,0 · 1023.
  • Chinchilla: N = 70 mld, D = 1 400 mld: L = 1,69 + 0,083 + 0,163 = 1,937; obliczenia 5,9 · 1023.

Przy porównywalnych obliczeniach czterokrotnie mniejsza Chinchilla jest lepsza: u Gophera składnik danych wyraźnie przeważał nad składnikiem parametrów (0,251 wobec 0,052), więc opłaciło się ująć parametrów i dodać danych.

7. Czego uczy historia

Definicja — gorzka lekcja (the bitter lesson)

Richard Sutton w eseju z 2019 roku podsumował siedemdziesiąt lat badań: na dłuższą metę wygrywają ogólne metody, które potrafią wykorzystać rosnącą moc obliczeniową — przeszukiwanie i uczenie — z metodami, w które ludzie ręcznie wkładają swoją wiedzę o zadaniu. Ręczna wiedza pomaga krótkoterminowo, ale w końcu wyprzedza ją metoda, która nauczy się jej sama z danych i obliczeń.

Mówiąc prościej

Szachy wygrało przeszukiwanie, nie reguły od arcymistrzów. Obrazy wygrała sieć, która sama nauczyła się, czym jest krawędź, a nie ręcznie zaprojektowane detektory krawędzi. Język wygrał model, który przeczytał internet, a nie gramatyka spisana przez językoznawców. „Gorzka” jest dlatego, że ludzie za każdym razem znów próbują włożyć w maszyny swoje sprytne pomysły — i za każdym razem wyprzedza je brutalna siła z dobrą ogólną metodą.

I jeszcze jedno widać, gdy przyjrzymy się, skąd pochodzą idee, które objaśniamy w serii. Spośród 37 kamieni milowych na osi 30 ma własną część:

1 1940 4 1950 3 1960 2 1970 5 1980 3 1990 1 2000 7 2010 4 2020 dekada (rok początkowy) kamienie milowe (liczba)
Z której dekady pochodzą kamienie milowe z własną częścią serii

Najwięcej (7) pochodzi z dekady 2010 — ale niemal równie ważne są lata 50. i 80. Perceptron, propagacja wsteczna, sieci konwolucyjne, LSTM i Q-learning mają po kilkadziesiąt lat; czekały na dane i moc obliczeniową. Większość tego, co dziś wygląda jak cud, to sprytne połączenie starych pomysłów w dużej skali. A każda fala entuzjazmu kończyła się dotąd otrzeźwieniem — pytanie tylko, jak głębokim.

8. Podsumowanie

  • 1950 test Turinga, 1956 Dartmouth (nazwa „sztuczna inteligencja” pochodzi z wniosku o seminarium z 1955 roku), 1958 perceptron.
  • Po złotych latach przyszły dwie zimy (mniej więcej 1974–1980 i 1987–1993), a między nimi systemy ekspertowe.
  • Od lat 90. uczenie statystyczne: z danych zamiast reguł, z pomiarem i prawdopodobieństwem.
  • 2012 AlexNet i uczenie głębokie; 2017 transformer; 2022 ChatGPT; dziś agenci.
  • Gorzka lekcja: na dłuższą metę wygrywają ogólne metody, które wykorzystują obliczenia — przeszukiwanie i uczenie.
  • Większość dzisiejszych idei jest stara; nowe są dane, obliczenia i skala.

Chcesz spróbować sam? Poproś agenta AI, żeby napisał ci program ELIZA z dwudziestoma regułami, i porozmawiaj z nim. Potem porównaj tę samą rozmowę z dzisiejszym modelem językowym — i zastanów się, co z tej różnicy jest „inteligencją”.

Masz inne zdanie? Napisz na support@coden-app.com.

Agent na twoim komputerze, sterowany z telefonu