Перейти до вмісту
coden

Коротка історія штучного інтелекту: від Тюрінга до мовних моделей

Тест Тюрінга, Дартмутський семінар, золоті роки, дві зими ШІ та експертні системи, статистичне навчання, глибоке навчання й мовні моделі — часова шкала з посиланнями на частини серії та гіркий урок сімдесяти років досліджень.

10 хвилин Matěj Žalmánek 2026-10-16

Серія Основи ШІ Частина 2 з 52
  1. Мапа штучного інтелекту: що є що і як усе це пов’язано
  2. Коротка історія штучного інтелекту: від Тюрінга до мовних моделей
  3. Дані, модель, тренування, інференс: основні поняття на одному прикладі
  4. Як читати математичний запис: символи, індекси, суми та квантори
  5. Множини й відношення: конструктор, з якого складаються означення в ШІ
  6. Функції й відображення: чому кожна модель у ШІ — це функція
  7. Логіка й доведення: правила, за якими міркують у ШІ
  8. Графи й дерева: структура, на якій тримаються пошук і нейронні мережі
  9. Лінійна алгебра для машинного навчання: вектори, матриці й чому ШІ передусім множить
  10. Похідні, градієнт і правило ланцюжка: як модель дізнається, у якому напрямку вчитися
  11. Градієнтний спуск: як навчається модель
  12. Що таке ймовірність: від кидка кубика до аксіом Колмогорова
  13. Умовна ймовірність і теорема Баєса: як змінити оцінку, коли дізнаєтеся щось нове
  14. Випадкова величина і функція розподілу: одна функція, яка каже про розподіл усе
  15. Функція щільності та функція маси ймовірності: чому неперервна величина має в точці ймовірність нуль
  16. Математичне сподівання, дисперсія і коваріація: де лежить розподіл, наскільки він широкий і що з чим пов’язано
  17. Огляд розподілів ймовірностей: Бернуллі, біноміальний, Пуассона, рівномірний, нормальний і експоненційний
  18. Закон великих чисел і центральна гранична теорема: чому середні поводяться так передбачувано
  19. Статистика й оцінювання параметрів: максимальна правдоподібність, MAP і довірчі інтервали
  20. Теорія інформації: ентропія, перехресна ентропія і KL-дивергенція — звідки беруться функції втрат
  21. Пошук у просторі станів: BFS, DFS, UCS і A* з анімаціями
  22. Ігри та суперник: мінімакс, альфа-бета відсікання і Monte Carlo tree search
  23. Задоволення обмежень: бектрекінг, поширення обмежень і AC-3 на судоку та мапі чеських країв
  24. Логіка й системи, засновані на знаннях: пряме і зворотне виведення, резолюція та експертні системи
  25. Планування: STRIPS, світ кубиків, евристики з релаксації та планування в AI-агентах
  26. Локальний пошук та імітація відпалу: комівояжер через обласні центри Чехії
  27. Генетичні алгоритми: популяція, схрещування, мутація і добір на рюкзаку для походу
  28. Еволюційні стратегії і генетичне програмування: від правила однієї п’ятої до закону Кеплера
  29. Оптимізація мурашиною колонією: як феромоновий слід знаходить короткий шлях
  30. Оптимізація роєм частинок: інерція, власний досвід і досвід рою
  31. Нейроеволюція: еволюція ваг і форми нейронних мереж та алгоритм NEAT
  32. Нечіткі множини й функції належності: як записати «трохи тепло»
  33. Нечітка логіка та ймовірність: чому «трохи тепло» не означає «імовірно тепло»
  34. Нечітка логіка: t-норми, імплікації та правила ЯКЩО–ТО
  35. Нечітке керування: Мамдані та Суґено від вентилятора до маятника на візку
  36. Нечітка кластеризація: алгоритм fuzzy c-means і точки між кластерами
  37. Нейро-нечіткі системи (ANFIS): нечіткі правила, які навчаються з даних
  38. Марковські ланцюги: матриця переходів, стаціонарний розподіл і PageRank
  39. Приховані марковські моделі: алгоритм Вітербі й нечесне казино
  40. Байєсівські мережі: чому трава мокра і що з цього випливає для дощувача
  41. Фільтр Калмана: як за неточними вимірюваннями оцінити, де авто і як швидко воно їде
  42. Види машинного навчання: з учителем, без учителя, з частковим залученням учителя та інші
  43. Промпти, контекст і RAG: як дати моделі правильну інформацію
  44. Варіаційні автокодувальники (VAE): нові зображення з неперервного латентного простору
  45. Генеративні змагальні мережі (GAN): фальшувальник проти детектива
  46. Дифузійні моделі: як із чистого шуму постає зображення
  47. Марковські процеси ухвалення рішень: стани, дії, винагороди й рівняння Беллмана
  48. Q-навчання і DQN: як навчитися цінності дій — від таблиці до нейронної мережі
  49. Policy gradient і PPO: навчання безпосередньо політики
  50. Як працює ШІ-агент: мовна модель у циклі з інструментами
  51. Програмування з AI-агентами: завдання, тести й перевірка
  52. Оцінювання і безпека систем ШІ: як вимірювати і як стежити

Повна програма серії Готово: 52 з 83 тем

Що ви винесете
  • Як розвивався ШІ і чому захоплення чергувалися із зимами.
  • Звідки походять ідеї, на яких стоять сучасні моделі.
  • Що таке гіркий урок і чому перемагають загальні методи з великими обчисленнями.

Що варто знати заздалегідь: Мапа штучного інтелекту: що є що і як усе це пов’язано

Штучний інтелект — не новинка. Його історія старша за персональні комп’ютери й нагадує американські гірки: періоди захоплення й великих обіцянок, після них протверезіння й відплив грошей — «зими», — а потім знову піднесення, коли виявлялося, що стара ідея раптом працює. Більшість ідей, на яких стоять сучасні мовні моделі, люди вигадали десятки років тому. У цій частині пройдемо їх у тому порядку, в якому вони з’являлися, і біля кожної, яку пояснюємо в серії, ви знайдете посилання на відповідну частину.

Продовжує частину Мапа штучного інтелекту.

початки золоті роки перша зима експертні системи друга зима статистичне навчання глибоке навчання мовні моделі 194019501960197019801990200020102020 Тест Тюрінга 1950 Дартмутський семінар 1956 Перцептрон 1958 Звіт Лайтгілла 1973 Експертні системи 1980 Зворотне поширення 1986 Deep Blue 1997 AlexNet 2012 AlphaGo 2016 Трансформер 2017 ChatGPT 2022 Агенти 2024 рік
Часова шкала штучного інтелекту (зеленим — періоди розквіту, фіолетовим — зими)

1. Початки: чи може машина думати?

Означення — тест Тюрінга

Алан Тюрінг 1950 року замінив нечітке питання «чи можуть машини думати?» перевіркою: суддя листується з двома прихованими співрозмовниками, людиною й машиною, і має розпізнати, хто є хто. Якщо машина вміє маскуватися так само добре, як людина, то, за Тюрінгом, у нас немає підстав відмовляти їй в інтелекті. Сам Тюрінг говорив про «гру в імітацію».

Простими словами

Замість філософської дискусії — практична перевірка: якщо ви з кимось листуєтеся й не можете розпізнати, людина це чи програма, то для вас це інтелект. Сучасні мовні моделі в короткій розмові таку перевірку часто проходять — і виявляється, що про інтелект це каже менше, ніж очікували.

Означення — тест Тюрінга як статистична перевірка

Суддя проводить n незалежних розмов і в кожній визначає, котрий співрозмовник — машина. Нехай S — кількість правильних визначень. Якщо машину неможливо відрізнити від людини, суддя лише вгадує і S ~ Bin(n, ½), тобто ES = n/2, а стандартне відхилення σ = √n / 2. Машина проходить тест, якщо результат статистично не відрізняється від вгадування: |z| < 1,96 (двобічний тест на рівні 5 %, нормальне наближення біноміального розподілу).

Примітка. Це сучасна формалізація, а не Тюрінгова. Тюрінг 1950 року описав тест словами й замість порогу дав прогноз: близько 2000 року пересічний суддя після п’яти хвилин розмови правильно розпізнаватиме машину з імовірністю не вищою за 70 %.

Простими словами

Одна розмова нічого не доводить — суддя може вгадати й випадково. Тому розмов проводять багато й питаємо, чи суддя розпізнає машину частіше, ніж якби підкидав монетку. Якщо ні, машина пройшла.

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

S
скільки разів суддя розпізнав машину — єдине, що в тесті вимірюється
n/2
скільки разів він влучив би чистим вгадуванням; віднімаємо це, бо цікаве лише те, що понад випадковість
√n / 2
типовий розкид вгадування; ділячи на нього, порівнюємо надлишок зі звичайним шумом — 6 зайвих зі 100 розмов — це не те саме, що 6 зайвих із 10 000
На скільки «звичайних відхилень» суддя кращий за монетку.
Приклад — 100 розмов

Суддя розпізнав машину в 56 розмовах зі 100. Вгадуванням очікував би 100/2 = 50, відхилення дорівнює √100 / 2 = 5, отже z = (56 − 50) / 5 = 1,2. Це менше за 1,96 — від вгадування не відрізняється, і машина пройшла. Не пройшла б, якби суддя влучив щонайменше 50 + 1,96 · 5 = 59,8, тобто в 60 розмовах.

  • 1943 Штучний нейрон. Воррен Маккаллок і Волтер Піттс описали нейрон як логічний елемент із порогом. → частина серії
  • 1950 Тест Тюрінга. Алан Тюрінг у статті Computing Machinery and Intelligence запропонував замість питання «чи думають машини?» гру в імітацію.
  • 1950 Шахи перебором. Клод Шеннон описав, як комп’ютер грав би в шахи: перебирати ходи до певної глибини й оцінювати позиції функцією. → частина серії

2. Золоті роки (1956–1974)

На семінарі в Дартмуті влітку 1956 року зібралися люди, які вірили, що «кожен аспект навчання чи будь-яку іншу ознаку інтелекту в принципі можна описати настільки точно, що машина зуміє їх імітувати». Далі були два десятиліття оптимізму. Програми доводили теореми, розв’язували текстові задачі, грали в шашки й розмовляли про кубики на столі. Герберт Саймон 1965 року передбачив, що за двадцять років машини впораються з будь-якою роботою, яку виконує людина.

  • 1956 Дартмутський семінар. Джон Маккарті, Марвін Мінський, Натаніел Рочестер і Клод Шеннон скликали літній семінар; назва «artificial intelligence» прижилася.
  • 1956 Logic Theorist. Аллен Ньюелл і Герберт Саймон: програма, яка доводила математичні теореми пошуком. → частина серії
  • 1958 Перцептрон. Френк Розенблатт збудував нейрон, що навчається; газети писали про машину, яка ходитиме й розмовлятиме. → частина серії
  • 1959 Машинне навчання. Артур Семюел: програма для шашок, яка покращувалася, граючи сама з собою. Від нього походить вислів machine learning. → частина серії
  • 1960 Фільтр Калмана. Рудольф Калман: оцінка стану із зашумлених вимірювань; з ним літав Apollo. → частина серії
  • 1965 Нечіткі множини. Лотфі Заде запровадив належність до множини як число між 0 і 1. → частина серії
  • 1966 ELIZA. Джозеф Вейценбаум написав програму, яка кількома правилами імітувала психотерапевта, — і люди довіряли їй таємниці.
  • 1969 Книга Perceptrons. Марвін Мінський і Сеймур Пейперт показали, чого один нейрон не здатен (XOR); інтерес до нейронних мереж згас. → частина серії
  • 1971 Shakey і STRIPS. Робот Shakey зі Стенфорда планував кроки мовою STRIPS. → частина серії
  • 1973 Звіт Лайтгілла. Британський уряд замовив оцінку результатів ШІ; звіт був критичним, і фінансування скоротили.

Перцептрон: перший нейрон, що навчається

Означення — перцептрон

Перцептрон із вагами w ∈ ℝd і зсувом b ∈ ℝ відносить вхід x ∈ ℝd до класу +1, якщо w · x + b > 0, інакше до класу −1 (w · x = w1x1 + … + wdxd — скалярний добуток). На прикладі (x, y) з правильним класом y ∈ {−1, +1} він помиляється, якщо y · (w · x + b) ≤ 0. Межа w · x + b = 0 — пряма (у загальному випадку гіперплощина).

Простими словами

Кожен вхід отримує вагу залежно від того, наскільки він говорить за «так». Нейрон підсумовує входи з вагами, і якщо сума виходить додатною, каже «так». Навчання — це налаштування ваг так, щоб «так» він казав правильно.

Правило Розенблатта виправляє ваги лише тоді, коли перцептрон помиляється:

w ← w + η · y · x

w
ваги — єдине, що навчається; нове значення — це старе плюс поправка, тож навчання йде поступово, приклад за прикладом
η
швидкість навчання — наскільки великий крок; у перцептрона, що стартує з нулів, вона лише однаково збільшує всі ваги, тож межі не змінює
y
правильний клас ±1 — задає напрямок: додатний приклад притягує ваги до себе, від’ємний відштовхує
x
вхід, на якому він помилився, — поправка спрямована саме туди; вхід зі значенням 0 до помилки не причетний, тому його вага не змінюється
Зсув виправляється так само, b ← b + η · y. Після поправки y · (w · x + b) зростає рівно на η · (‖x‖² + 1) > 0: відповідь на цьому прикладі зсувається в правильний бік.
perceptron(data, η):
    w ← (0, …, 0);  b ← 0
    повторюй:
        chyb ← 0
        для кожного прикладу (x, y) у data:
            якщо y · (w · x + b) ≤ 0:            # помилився (або стоїть на межі)
                w ← w + η · y · x
                b ← b + η · y
                chyb ← chyb + 1
    поки chyb > 0                                # уся епоха без помилки: готово
    поверни w, b
Приклад — перцептрон навчається AND

Дані: (0, 0) → −1, (0, 1) → −1, (1, 0) → −1, (1, 1) → +1; η = 1, старт w = (0, 0), b = 0.

  1. (0, 0), y = −1: −1 · (0 + 0) = 0 ≤ 0, помилка. w = (0, 0) + (−1) · (0, 0) = (0, 0), b = 0 − 1 = −1.
  2. (0, 1) і (1, 0): −1 · (0 − 1) = 1 > 0, правильно, нічого не змінюється.
  3. (1, 1), y = +1: 1 · (0 + 0 − 1) = −1 ≤ 0, помилка. w = (0, 0) + (1, 1) = (1, 1), b = −1 + 1 = 0.

І так далі: усього 18 поправок, остання в 8-й епосі, а результат — w = (3, 2), b = −4. Перевірка: 3 · 1 + 2 · 1 − 4 = 1 > 0, а для решти входів −4, −2, −1 < 0.

Теорема — перцептрон не впорається з XOR (Мінський і Пейперт, 1969)

Не існує таких w1, w2, b, щоб перцептрон правильно відніс (0, 0) → −1, (1, 1) → −1, (0, 1) → +1, (1, 0) → +1.

Доведення. Правильне віднесення означало б b ≤ 0, w1 + w2 + b ≤ 0, w2 + b > 0 і w1 + b > 0. Додавши дві останні нерівності, маємо w1 + w2 + 2b > 0, тобто w1 + w2 + b > −b ≥ 0 — суперечність із другою нерівністю. ∎

Простими словами

Точки XOR лежать як на шахівниці: додатні на одній діагоналі, від’ємні на іншій. Одна пряма не може їх розділити. Два шари нейронів із цим упораються — тільки як їх навчати, 1969 року ще не знали. Детальніше в частині Перцептрон.

3. Дві зими й експертні системи (1974–1993)

Означення — зима штучного інтелекту

Зима ШІ — це період, коли після невиконаних обіцянок різко падають фінансування та інтерес до галузі. Зазвичай говорять про дві: приблизно 1974–1980 (після звіту Лайтгілла у Великій Британії та скорочень американського грантового агентства DARPA) і 1987–1993 (після краху ринку спеціалізованих комп’ютерів для мови Lisp і розчарування в експертних системах).

Простими словами

Програми, що впоралися з іграшковими світами кубиків, наштовхнулися на справжній світ: забагато можливостей, забагато винятків, надто повільні комп’ютери. Хто обіцяв машину, яка «за десять років думатиме», мусив пояснювати, чому вона не думає. Гроші пішли деінде.

Між зимами прийшла хвиля експертних систем: замість загального інтелекту — вузька галузь і сотні правил, записаних разом з експертами («якщо температура > 38 і … то …»). Вони працювали й заробляли. Але правила важко було підтримувати, системи нічого не вміли поза своєю галуззю й не могли навчатися. Проте в тіні тієї доби тихо повернулися нейронні мережі: зворотне поширення (1986) показало, як навчати мережі з кількома шарами.

  • 1975 Генетичні алгоритми. Джон Голланд узагальнив еволюцію популяції розв’язків зі схрещуванням і мутацією. → частина серії
  • 1980 Експертні системи. XCON (R1) конфігурував комп’ютери фірми DEC правилами від експертів і заощаджував мільйони доларів на рік. → частина серії
  • 1986 Зворотне поширення. Девід Румельгарт, Джеффрі Гінтон і Рональд Вільямс показали, як навчати багатошарові мережі. → частина серії
  • 1988 Баєсові мережі. Джуда Перл: імовірнісні міркування на графі залежностей. → частина серії
  • 1989 Згорткові мережі. Ян Лекун навчив згорткову мережу читати рукописні поштові індекси. → частина серії
  • 1989 Q-learning. Крістофер Воткінс: навчання цінності дій без знання правил світу. → частина серії

Зворотне поширення: як навчати кілька шарів

Означення — зворотне поширення помилки (backpropagation)

Зворотне поширення — це алгоритм, який для мережі, складеної з шарів hl = φ(Wlhl−1 + bl), обчислює градієнт втрат L за всіма вагами. Похідні він рахує від виходу до входу за правилом диференціювання складеної функції (правилом ланцюжка) і кожен проміжний результат використовує повторно, тож увесь градієнт коштує приблизно стільки ж, скільки один прохід мережею вперед.

Простими словами

Мережа помилилася. Яка частка цієї помилки на совісті якої ваги? Зворотне поширення це розраховує: починає з виходу й надсилає провину назад, шар за шаром, залежно від того, наскільки кожна вага вплинула на результат.

Для одного нейрона ŷ = σ(z), z = wx + b із втратами L = ½(ŷ − y)² ланцюжок виглядає так:

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

∂L/∂w
те, чого хочемо: як зміниться помилка, коли посунемо вагу, — знак каже, в який бік вагу зсунути
∂L/∂ŷ
= ŷ − y: наскільки помилка залежить від виходу; тут починається зворотний прохід
∂ŷ/∂z
= ŷ(1 − ŷ) для сигмоїди: наскільки чутлива активація; у насиченого нейрона майже 0, і навчання зупиняється
∂z/∂w
= x: скільки вага внесла в суму; у багатошаровій мережі тут стоїть вихід попереднього шару, і ланцюжок тягнеться далі назад
Градієнт — це добуток локальних похідних уздовж шляху від помилки до ваги.
Приклад — один крок навчання

x = 1, w = 0,5, b = 0, правильно y = 1. Уперед: z = 0,5, ŷ = σ(0,5) = 1 / (1 + e−0,5) = 0,6225, L = ½ · (0,6225 − 1)² = 0,0713.

Назад: ∂L/∂ŷ = −0,3775, ∂ŷ/∂z = 0,6225 · 0,3775 = 0,2350, ∂z/∂w = 1. Добуток: ∂L/∂w = −0,0887.

Крок з η = 1: w ← 0,5 − 1 · (−0,0887) = 0,5887. Градієнт від’ємний, тож вага зростає, і вихід наближається до 1.

zpětné_šíření(x, y):
    h₀ ← x                                   # уперед: запам’ятай проміжні результати
    для l = 1 … L:
        zₗ ← Wₗ · hₗ₋₁ + bₗ
        hₗ ← φ(zₗ)
    δ ← ∂Ztráta/∂h_L                         # назад: почни з помилки виходу
    для l = L … 1:
        δ ← δ ⊙ φ′(zₗ)                       # через активацію (покомпонентно)
        ∂Ztráta/∂Wₗ ← δ · hₗ₋₁ᵀ               # градієнт ваг цього шару
        ∂Ztráta/∂bₗ ← δ
        δ ← Wₗᵀ · δ                          # передай провину на шар нижче
    поверни всі ∂Ztráta/∂Wₗ, ∂Ztráta/∂bₗ

Детальніше: Нейронна мережа з нуля.

4. Статистичне навчання (1993–2012)

Галузь змінилася. Замість «запрограмуймо інтелект» прийшло «навчімося цього з даних» — а з цим імовірність, статистика й ретельні вимірювання. Розпізнавання мовлення, спам-фільтри, рекомендації та пошук працювали завдяки прихованим марковським моделям, баєсовим методам, SVM та ансамблям дерев. Словосполучення «штучний інтелект» тоді майже не вживали — казали «машинне навчання». Deep Blue переміг Каспарова 1997 року, але не навчанням: грубою силою перебору й вручну налаштованою оцінювальною функцією.

  • 1995 SVM. Корінна Кортес і Володимир Вапник: класифікація з найбільшим відступом і ядровий трюк. → частина серії
  • 1997 Deep Blue. Комп’ютер IBM переміг чемпіона світу з шахів Гаррі Каспарова — пошуком, а не навчанням. → частина серії
  • 1997 LSTM. Зепп Гохрайтер і Юрген Шмідгубер: рекурентна мережа з вентилями, яка довго пам’ятає. → частина серії
  • 2001 Випадковий ліс. Лео Брейман: ансамбль дерев рішень голосує. → частина серії

5. Глибоке навчання (2012–2018)

2012 року змагання з розпізнавання зображень ImageNet виграла глибока згорткова мережа AlexNet (Алекс Крижевський, Ілля Суцкевер і Джеффрі Гінтон) з таким відривом, що галузь за кілька років переїхала до нейронних мереж. Ідея не була новою — згорткові мережі існували з кінця 1980-х. Новими були три речі: великі розмічені дані (ImageNet мав понад мільйон зображень), відеокарти, що множать матриці в тисячу разів швидше, і кілька дрібних трюків (ReLU, dropout). Далі пішла лавина: мовлення, переклад, ігри, генерування.

  • 2012 AlexNet. Глибока згорткова мережа, навчена на відеокартах, виграла змагання ImageNet із великим відривом. → частина серії
  • 2013 word2vec. Томаш Міколов та ін.: слова як вектори, з якими можна обчислювати аналогії. → частина серії
  • 2014 GAN. Ян Гудфеллоу: дві мережі, що змагаються одна з одною, генерують зображення. → частина серії
  • 2014 Увага. Dzmitry Bahdanau та ін.: мережа для перекладу дивиться на важливі слова речення. → частина серії
  • 2015 DQN. DeepMind навчив одну мережу грати в десятки ігор Atari з екрана. → частина серії
  • 2016 AlphaGo. Програма DeepMind перемогла Лі Седоля в ґо 4 : 1; гру вважали цариною людської інтуїції.
  • 2017 Трансформер. Стаття «Attention Is All You Need» (Васвані та ін., Google) — архітектура сучасних мовних моделей. → частина серії
  • 2017 PPO. Джон Шульман та ін. (OpenAI): стабільне навчання стратегії. → частина серії
Приклад — чому допомогла ReLU

Похідна сигмоїди σ′(z) = σ(z)(1 − σ(z)) ≤ ¼ (максимум у z = 0). У зворотному поширенні ці похідні перемножуються через усі шари, тож після десяти сигмоїдних шарів градієнт становить щонайбільше (¼)10 = 9,5 · 10-7 початкової величини (ваги можуть його збільшити чи зменшити, але цей множник лишається). ReLU(z) = max(0, z) має похідну 1 для z > 0 — градієнт проходить активними нейронами без зменшення, і тому глибокі мережі можна навчати.

6. Мовні моделі (з 2018)

Трансформер 2017 року масштабувався краще за все, що було до нього. Моделі GPT, попередньо навчені на великій частині інтернету, показали, що більша модель і більше даних дають передбачуване покращення. GPT-3 2020 року розв’язував задачі, яких його ніхто не вчив, лише з кількох прикладів у промпті. Донавчанням за людськими вподобаннями з нього постав ChatGPT (листопад 2022) — перша мовна модель, яку спробували сотні мільйонів людей. Сьогодні моделі стають агентами, які самостійно працюють на комп’ютері.

  • 2020 GPT-3. Мовна модель зі 175 мільярдами параметрів розв’язує нові задачі лише з прикладів у промпті. → частина серії
  • 2020 Дифузійні моделі. Джонатан Го та ін.: зображення крок за кроком проступає із шуму. → частина серії
  • 2020 AlphaFold 2. DeepMind передбачає тривимірну форму білків із точністю, близькою до експерименту.
  • 2022 ChatGPT. Мовна модель, донавчена за людськими вподобаннями; за два місяці нею, за оцінками, користувалися 100 мільйонів людей. → частина серії
  • 2024 Нобелівські премії. З фізики — Джон Гопфілд і Джеффрі Гінтон (нейронні мережі), з хімії — Деміс Гассабіс і Джон Джампер (AlphaFold) разом із Девідом Бейкером.
  • 2024 Агенти. Мовні моделі з інструментами самостійно програмують, шукають і працюють на комп’ютері. → частина серії

Увага: формула, на якій стоїть трансформер

Увага(Q, K, V) = softmax(QKT / √dk) V

QKT
скалярні добутки кожного запиту з кожним ключем — великі, коли вектори дивляться в одному напрямку; так слово «шукає» слова, які його стосуються
√dk
скалярний добуток dk випадкових компонент має дисперсію, пропорційну dk; без ділення softmax зі зростанням розмірності вчепився б за одне слово, а градієнти зникли б
softmax
з довільних оцінок робить додатні ваги із сумою 1 — і на відміну від «вибери максимум» його можна диференціювати, отже, й навчати
V
значення — інформація, яка справді передається; вихід — їхнє зважене середнє
Кожне слово складає собі новий вектор як зважене середнє інших, з вагами за подібністю.
Приклад — один запит, два ключі

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

Оцінки: q · k1 / √2 = 0,707 і q · k2 / √2 = 0. Softmax: e0,707 / (e0,707 + e0) = 0,670 і 0,330. Вихід: 0,670 · (10, 0) + 0,330 · (0, 10) = (6,70; 3,30). Запит більше «подивився» на перше слово, бо його ключ на запит схожий, — але й другого не проігнорував.

Детальніше: Увага і Трансформери.

Закон масштабування: чому «більше» працює передбачувано

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

E
непереборні втрати: сам текст невизначений, і навіть нескінченна модель не знає наступного слова напевно
A / Nα
податок за малу модель (N параметрів); спадає степенево — удвічі більше параметрів знижує його лише на 21 %, і тому моделі ростуть на порядки
B / Dβ
податок за замало даних (D токенів); стоїть окремо, бо величезна модель на малих даних упреться саме в цей член
L — середні втрати (перехресна ентропія) на токен. Обчислення для навчання становлять приблизно C ≈ 6 · N · D операцій; закон каже, як розподілити їх між розміром моделі й даними.
Приклад — Gopher проти Chinchilla

Сталі, підібрані на сотнях моделей (Hoffmann та ін., 2022): E = 1,69, A = 406,4, B = 410,7, α = 0,34, β = 0,28.

  • Gopher: N = 280 млрд, D = 300 млрд: L = 1,69 + 0,052 + 0,251 = 1,993; обчислення 5,0 · 1023.
  • Chinchilla: N = 70 млрд, D = 1 400 млрд: L = 1,69 + 0,083 + 0,163 = 1,937; обчислення 5,9 · 1023.

За порівнянних обчислень учетверо менша Chinchilla краща: у Gopher член даних помітно переважав член параметрів (0,251 проти 0,052), тож вигідно було прибрати параметри й додати даних.

7. Що можна прочитати з історії

Означення — гіркий урок (the bitter lesson)

Річард Саттон в есеї 2019 року підсумував сімдесят років досліджень: у довгостроковій перспективі загальні методи, які вміють використати зростальну обчислювальну потужність, — пошук і навчання — перемагають методи, в які люди вручну вкладають свої знання про задачу. Ручні знання допомагають у короткій перспективі, але врешті їх обганяє метод, що сам навчається з даних і обчислень.

Простими словами

Шахи виграв пошук, а не правила від гросмейстерів. Зображення виграла мережа, яка сама навчилася, що таке край, а не вручну сконструйовані детектори країв. Мову виграла модель, що прочитала інтернет, а не граматика, записана лінгвістами. «Гіркий» він тому, що люди щоразу знову намагаються вкласти в машини свої розумні ідеї — і щоразу їх обганяє груба сила з добрим загальним методом.

І ще одне видно, коли подивитися, звідки походять ідеї, які ми пояснюємо в серії. Із 37 віх на шкалі 30 мають власну частину:

1 1940 4 1950 3 1960 2 1970 5 1980 3 1990 1 2000 7 2010 4 2020 десятиліття (рік початку) віхи (кількість)
Скільки віх із власною частиною серії походить з якого десятиліття

Найбільше (7) їх із 2010-х років — але майже так само важливі 1950-ті та 1980-ті. Перцептрон, зворотне поширення, згорткові мережі, LSTM і Q-learning мають по кілька десятиліть; вони чекали на дані й обчислювальну потужність. Більшість того, що сьогодні виглядає як диво, — це розумне поєднання старих ідей у великому масштабі. І кожна хвиля захоплення досі закінчувалася протверезінням — питання лише, наскільки глибоким.

8. Підсумок

  • 1950 — тест Тюрінга, 1956 — Дартмут (назва «штучний інтелект» походить із заявки на семінар 1955 року), 1958 — перцептрон.
  • Після золотих років прийшли дві зими (приблизно 1974–1980 і 1987–1993), а між ними — експертні системи.
  • З 1990-х — статистичне навчання: з даних замість правил, із вимірюванням та ймовірністю.
  • 2012 — AlexNet і глибоке навчання; 2017 — трансформер; 2022 — ChatGPT; сьогодні — агенти.
  • Гіркий урок: у довгостроковій перспективі перемагають загальні методи, що використовують обчислення, — пошук і навчання.
  • Більшість сучасних ідей — старі; нові — дані, обчислення й масштаб.

Хочете спробувати самі? Попросіть ШІ-агента написати вам програму ELIZA з двадцятьма правилами й поговоріть із нею. Потім порівняйте ту саму розмову із сучасною мовною моделлю — і поміркуйте, що з цієї різниці є «інтелектом».

Маєте іншу думку? Напишіть на support@coden-app.com.

Агент на вашому комп’ютері, керований з телефона