Машинне навчання — Від лінійної регресії до глибокого навчання
Машинне навчання перетворило кожну галузь, якої торкнулося — комп'ютерний зір, природну мову, згортання білків, пошук ліків, ігри. За вражаючими результатами стоїть напрочуд цілісний математичний фреймворк: оптимізуйте функцію втрат за параметрами за допомогою градієнтного спуску, контролюйте узагальнення за допомогою регуляризації та масштабуйте за допомогою глибоких архітектур. Ця стаття простежує концептуальний шлях від лінійної регресії до трансформера — архітектури, що живить сучасні великі мовні моделі.
1. Парадигми навчання: з учителем, без учителя, з підкріпленням
Машинне навчання охоплює три широкі родини алгоритмів, що розрізняються характером сигналу зворотного зв'язку, доступного під час навчання:
Навчання з учителем
Маючи набір даних D = {(x₁, y₁), …, (x_N, y_N)} пар вхід-вихід, вивчіть функцію f_θ: X → Y, яка узагальнюється на невідомі входи. Мета — мінімізувати очікувану втрату на істинному розподілі даних — апроксимовану емпіричною мінімізацією ризику (ERM) на навчальній вибірці. Приклади: класифікація зображень, регресія, переклад, розпізнавання мовлення.
Навчання без учителя
Маючи немарковані дані {x₁, …, x_N}, виявіть структуру: кластери, многовиди, генеративні моделі або стиснені представлення. Модель не отримує явної цілі — вона має знайти власний сигнал у шаблонах даних. Приклади: кластеризація k-середніх, метод головних компонент (PCA), автокодувальники, генеративно-змагальні мережі (GAN), варіаційні автокодувальники (VAE), дифузійні моделі.
Навчання з підкріпленням
Агент взаємодіє із середовищем, обираючи дії a_t у стані s_t і отримуючи скалярну винагороду r_t. Мета — навчити політику π(a|s), яка максимізує сумарну дисконтовану винагороду:
Алгоритми RL включають Q-навчання, градієнти політики (REINFORCE), методи actor-critic (PPO, SAC) та модельне RL. AlphaGo/AlphaZero (2016–2017) та мінімізація енергії в AlphaFold використовували RL; ChatGPT використовує навчання з підкріпленням на основі зворотного зв'язку від людей (RLHF), щоб узгодити виходи мовної моделі з людськими перевагами.
2. Компроміс зсув-дисперсія
Очікувану тестову похибку моделі можна розкласти на три компоненти:
Модель із високим зсувом (наприклад, лінійна регресія на нелінійних даних) послідовно робить один і той самий тип помилки незалежно від навчальних даних — їй бракує здатності вловити справжній шаблон (недонавчання). Модель із високою дисперсією (наприклад, поліном 50-го степеня, підігнаний до 20 зашумлених точок) підганяється під навчальні дані майже ідеально, але сильно коливається з різними навчальними вибірками (перенавчання).
Компроміс проявляється як U-подібна крива тестової похибки зі зростанням складності моделі: похибка спочатку зменшується, коли падає зсув, потім зростає, коли зростає дисперсія. Оптимальна складність перебуває в мінімумі тестової похибки. Сучасні великі нейронні мережі, здається, порушують цю картину через явище подвійного спуску: після початкової U-подібної кривої похибка знову зменшується зі зростанням розміру моделі далеко за поріг інтерполяції — явище, ще не повністю пояснене класичною статистичною теорією навчання.
3. Функції втрат і градієнтний спуск
Навчання моделі означає мінімізацію функції втрат L(θ) за параметрами θ. Поширені функції втрат:
Градієнтний спуск ітеративно рухає параметри в напрямку найкрутішого спуску:
Сучасні оптимізатори використовують адаптивні швидкості навчання. Adam (Кінгма і Ба, 2014) підтримує експоненційні ковзні середні градієнтів (m_t) і квадратів градієнтів (v_t) для кожного параметра:
Adam адаптує розмір кроку для кожного параметра, збігаючись швидше за звичайний SGD у більшості задач. Варіанти включають AdamW (роз'єднаний спад ваг), AdaGrad, RMSProp та Lion.
4. Регуляризація: L1, L2 та дропаут
Регуляризація додає обмеження або шум, щоб запобігти перенавчанню, зміщуючи модель до простіших розв'язків.
L2-регуляризація (Ridge / спад ваг)
Додає штраф, пропорційний квадрату величини ваг:
L1-регуляризація (Lasso)
Додає штраф, пропорційний абсолютному значенню ваг:
Дропаут
Під час навчання випадково зануляє кожен нейрон з імовірністю p (зазвичай p = 0,1 до 0,5). Під час тестування всі нейрони активні, а виходи масштабуються на (1 − p):
Дропаут можна тлумачити як навчання ансамблю 2^N різних «прорідженних» мереж (для N нейронів) з подальшим усередненням при тестуванні. Він запобігає ко-адаптації: нейрони не можуть покладатися на те, що конкретні інші нейрони завжди присутні. Сучасні великі мовні моделі використовують частоти дропауту 0,1–0,3 у шарах уваги; візуальні трансформери часто взагалі не використовують дропаут, натомість застосовуючи стохастичну глибину (відкидання цілих залишкових блоків).
5. Згорткові нейронні мережі
Згорткові нейронні мережі (CNN) використовують трансляційну інваріантність природних зображень, щоб різко зменшити кількість параметрів порівняно з повнозв'язними мережами. Три ключові операції визначають CNN:
Шар згортки
Ядро згортки 3×3 з 64 вхідними та 128 вихідними каналами має лише 3×3×64×128 = 73 728 параметрів — проти 64×128×H×W параметрів для повнозв'язного шару. Просторовий поділ — ключ: той самий фільтр застосовується всюди на зображенні.
Шар пулінгу
Максимальний пулінг (поширений) або усереднювальний пулінг зменшує просторові виміри, беручи максимум або середнє за локальним вікном (зазвичай 2×2 з кроком 2), удвічі зменшуючи просторову роздільну здатність. Пулінг забезпечує певну ступінь трансляційної інваріантності й зменшує обчислення.
Розгортання та повнозв'язна «голова»
Після кількох блоків «згортка-пулінг» просторова карта ознак розгортається у вектор і проходить через повнозв'язні шари для класифікації. Сучасні архітектури замінюють повнозв'язну «голову» глобальним усереднювальним пулінгом (GAP), додатково зменшуючи кількість параметрів і перенавчання.
Знакові архітектури CNN: AlexNet (2012, переміг у ImageNet зі значним відривом), VGG-16 (2014, глибока й однорідна), ResNet (2015, залишкові з'єднання, що уможливлюють 152+ шарів), EfficientNet (2019, пошук нейронної архітектури). Із 2020 року візуальні трансформери (ViT) зрівнялися або перевершили CNN на великих наборах даних.
6. Рекурентні мережі та LSTM
Стандартні прямопоширювальні мережі обробляють входи фіксованого розміру. Рекурентні нейронні мережі (RNN) підтримують прихований стан h_t, що накопичує інформацію вздовж послідовності x₁, x₂, …:
Прості RNN страждають від згасання та вибуху градієнтів: при зворотному поширенні через багато часових кроків градієнти множаться на W_h на кожному кроці. Якщо ||W_h|| < 1, градієнти згасають; якщо ||W_h|| > 1, вони вибухають. Це унеможливлює навчання довгострокових залежностей.
Довга короткочасна пам'ять (LSTM)
Хохрайтер і Шмідхубер (1997) представили комірку LSTM з явними механізмами вентилів для керування потоком інформації на довгих послідовностях:
Стан комірки c_t діє як «магістраль пам'яті», здатна нести інформацію без змін через сотні часових кроків. Вентиль забування може навчитися очищати пам'ять; вхідний вентиль може навчитися вибірково записувати. LSTM домінували в моделюванні послідовностей (мова, мовлення, часові ряди) приблизно з 2015 року, доки трансформери не витіснили їх у 2017–2019 роках.
7. Механізм уваги
Увага дозволяє моделі фокусуватися на релевантних частинах свого входу під час формування кожного виходу, замість стискання всього входу в один вектор фіксованого розміру. Масштабована увага на основі скалярного добутку (Бахданау 2015, Луонг 2015, Васвані 2017) обчислює:
Кожен запитовий токен i звертає увагу на кожен ключовий токен j з вагою A_{ij}, яку можна тлумачити як м'яке отримання: вихід для запиту i — це зважена сума значень, де ваги вимірюють сумісність запит-ключ. Масштабування на 1/√d_k запобігає надмірному зростанню скалярних добутків у високих розмірностях, що спричинило б концентрацію виходів softmax поблизу нуля або одиниці (згасання градієнтів).
Багатоголова увага
Кілька голів дозволяють моделі одночасно звертати увагу на різні аспекти — одна голова може вловлювати синтаксичні зв'язки, інша — семантичну подібність, ще інша — позиційну близькість. Виходи конкатенуються й проєктуються назад у d_model.
8. Архітектура трансформера
Васвані та ін. (2017) у праці «Увага — це все, що потрібно» представили трансформер — повністю відмовившись від рекурентності на користь чистої уваги. Трансформер «енкодер-декодер» складається зі стосу однакових шарів:
Шар енкодера
Самоувага дозволяє кожній позиції звертати увагу на всі позиції в тому самому шарі — вловлюючи довгострокові залежності за довжину шляху O(1) замість довжини шляху O(n) у RNN. Залишкові з'єднання (x + …) та нормалізація шару критично важливі для стабільного навчання глибоких стосів (6–96 шарів на практиці).
Позиційне кодування
На відміну від RNN, увага не має вбудованого поняття порядку. Позиційна інформація вводиться додаванням позиційного кодування PE до вхідних вкладень:
Закони масштабування
Каплан та ін. (2020) показали, що продуктивність трансформера масштабується за степеневим законом залежно від розміру моделі N, розміру набору даних D та обчислювального бюджету C:
9. Поза межами навчання з учителем
Архітектура трансформера живить системи далеко за межами класифікації тексту. Кілька помітних розширень ілюструють широту сучасного МН:
- Дифузійні моделі (DDPM, 2020): навчаються обертати поступовий гаусів шумовий процес. Під час висновування починають із чистого шуму й ітеративно видаляють шум, щоб згенерувати зображення чи аудіо. Тепер домінантний підхід для високоякісної генерації зображень (Stable Diffusion, DALL-E 3, Sora).
- Графові нейронні мережі (GNN): поширюють згортку на нерегулярні графові структури. Необхідні для передбачення молекулярних властивостей, аналізу соціальних мереж і проєктування чипів (Google використав GNN для проєктування плану мікросхеми TPUv4).
- Самонавчання перед тренуванням: маскування токенів і передбачення їх (BERT), або передбачення наступного токена (GPT). Немарковані дані дають майже необмежений навчальний сигнал. Попередньо натреновані моделі донавчаються на цільові задачі з невеликою кількістю маркованих прикладів.
- Нейронне масштабування та емерджентні здібності: здібності, такі як багатокрокове міркування, навчання в контексті та ланцюжок міркувань, з'являються раптово при певних порогах масштабу — поведінка, не передбачувана екстраполяцією з менших моделей.