Дані живуть у геометричному просторі
Все це вектор
У машинному навчанні дані живуть у геометричному просторі. Кожна точка даних з N ознаками — це точка в N-вимірному просторі. Це не метафора — це буквальна математична основа кожного алгоритму.
Зображення рукописної цифри (28×28 пікселів) — це точка в 784-вимірному просторі. Кожен піксель — одна координата. Дві цифри, які виглядають подібно, — це близькі точки в цьому просторі. Дві різні цифри — далеко одна від одної.
Вкладення слова відображає слово на точку в 300-вимірному просторі. Слова зі схожим значенням опиняються в одному сусідстві. «Собака» та «щеня» — близько. «Собака» та «парламент» — далеко.
Профіль користувача з 50 ознаками (вік, історія покупок, закладки) — це точка в 50-вимірному просторі. Системи рекомендацій знаходять користувачів, які «поруч» у цьому просторі, й пропонують те, що подобалось їхнім геометричним сусідам.
Геометрія — це те, як ми міркуємо про ці простори. Відстань, напрямок, кут, проекція — це фундаментальні операції машинного навчання.
Векторні операції — будівельні блоки
Скалярний добуток живить все
Три векторні операції мають найбільше значення в машинному навчанні:
Додавання векторів — поєднання ознак або сигналів. Якщо додати два вектори слів, вийде вектор, що представляє обидва поняття в суміші.
Множення на скаляр — масштабування вектора змінює його величину без змінення напрямку. Швидкості навчання при градієнтному спуску — це множення на скаляр.
Скалярний добуток — це робоча машина. Скалярний добуток двох векторів a і b дорівнює |a||b|cos(θ), де θ — кут між ними. Коли вектори нормалізовані (одиничної довжини), скалярний добуток — це косинус кута.
Схожість косинусів = cos(θ) = (a·b) / (|a||b|)
Ця одна формула живить:
- Пошукові системи — знаходження документів, подібних до запиту
- Механізми уваги — визначення того, які токени мають значення один для одного
- Системи рекомендацій — зіставлення профілів користувачів із профілями елементів
- Генерація з отриманням релевантної інформації — знаходження відповідного контексту для мовних моделей
cos(θ) = 1 означає, що вектори вказують у точно тому ж напрямку (однакове значення). cos(θ) = 0 означає, що вони перпендикулярні (не пов'язані). cos(θ) = -1 означає, що вони вказують у протилежних напрямках (протилежне значення).
Схожість косинусів
Схожість косинусів — один із найбільш використовуваних показників у сучасних системах машинного навчання.
Три способи вимірювання відстані
Вибір метрики відстані змінює те, що означає «подібний»
Враховуючи дві точки в просторі, існує багато способів вимірювання «відстані» між ними. Кожна метрика визначає іншу геометрію, і ця геометрія визначає те, що ваша модель вважає «подібним».
Евклідова відстань (L2) — прямолінійна відстань. d = √(Σ(aᵢ - bᵢ)²). Це «прямо й просто» відстань, яку очікує ваша інтуїція. Вона ставиться до всіх розмірів однаково й чутлива до величини.
Манхеттенська відстань (L1) — відстань ходіння квадратів. d = Σ|aᵢ - bᵢ|. Як навігація вулицями міста — ви можете рухатися тільки вздовж осей, ніколи по діагоналі. Більш стійка до викидів у окремих розмірах, оскільки не підносить різниці в квадрат.
Косинусна відстань — вимірює кут між векторами, повністю ігноруючи величину. d = 1 - cos(θ). Два документи про одну й ту саму тему мають малу косинусну відстань незалежно від довжини. Два однаково довгих документи про різні теми мають велику косинусну відстань.
Вибір не довільний. Якщо величина має значення (доза препарату, температура реактора), використовуйте евклідову. Якщо вас цікавлять пропорції, а не абсолюти (розподіли частот слів, профілі переваг користувачів), використовуйте косинусну. Якщо окремі різниці ознак мають більше значення, ніж сукупна величина (діагностика дефектів, де скачок одного датчика є значущим), використовуйте манхеттенську.
K-найближчих сусідів — чиста геометрія
KNN: найпростіший геометричний алгоритм
K-найближчі сусіди — це найпрозоріший геометричний алгоритм у машинному навчанні. Немає фази навчання — це самі дані навчання.
Щоб класифікувати нову точку: знайдіть K найближчих точок у даних навчання. Вони голосують. Виграє клас більшості. Це весь алгоритм.
Межа рішення, яку створює KNN, — це діаграма Вороного — розділення простору, де кожна точка належить до регіону її найближчого прикладу навчання. Межі — це перпендикулярні бісектори між суміжними точками навчання.
Геометричне розуміння, яке має значення: вибір метрики відстані повністю змінює діаграму Вороного. Евклідова відстань виробляє вигнуті, круглі межи. Манхеттенська відстань виробляє межи у формі ромба. Косинусна відстань виробляє кутові, конусоподібні межи.
Однакові дані навчання. Однаковий K. Різна метрика відстані. Абсолютно інша модель. Геометрія — це сама модель.
Вибір метрики відстані
Метрики відстані не є взаємозамінюваними — правильний вибір залежить від того, що означає «подібний» для ваших даних.
Гіперплощини — плоскі межи в високих розмірностях
Кожен лінійний класифікатор знаходить гіперплощину
Лінійний класифікатор знаходить плоску поверхню, яка розділяє два класи. Розмірність цієї поверхні залежить від простору:
- У 2D просторі межа — це лінія (1-вимірна)
- У 3D просторі межа — це площина (2-вимірна)
- У 784D просторі (зображення цифр MNIST) межа — це 783-вимірна гіперплощина
Загальна закономірність: у N-вимірному просторі межа рішення — це (N-1)-вимірна плоска поверхня, звана гіперплощиною.
Логістична регресія, машини опорних векторів та перцептрони з одним шаром — це всі шукачі гіперплощин. Вони відрізняються тим, ЯК вони знаходять найкращу гіперплощину:
- Логістична регресія максимізує ймовірність правильної класифікації
- SVM максимізує геометричний запас — відстань від гіперплощини до найближчих точок даних
- Перцептрони просто знаходять будь-яку гіперплощину, яка розділяє дані, без гарантії оптимальності
Вектор ваги лінійного класифікатора — це вектор нормалі до гіперплощини. Термін зміщення зсуває гіперплощину від початку координат. Це геометричні об'єкти з геометричними інтерпретаціями.
Поза плоскими межами
Коли дані не розділені лінійно
Багато проблем реального світу не можна вирішити плоскою межею. Розглянемо класифікацію зображень котів проти собак — жодна єдина гіперплощина в просторі пікселів їх не розділяє чисто.
Існують дві геометричні стратегії:
Стратегія 1: трюк із ядром — трансформуйте дані в більш вимірний простір, де вони МОЖНА розділити лінійно. Класичний приклад: точки всередині кола (клас A) та точки зовні (клас B) у 2D. Жодна лінія їх не розділяє. Але додайте третій вимір z = x² + y², і внутрішні точки (малі x² + y²) сидять низько, тоді як зовнішні точки (великі x² + y²) сидять високо. Тепер плоска площина розділяє їх ідеально.
SVM з функціями ядра роблять це неявно — вони обчислюють скалярні добутки у просторі вищої розмірності, не будуючи ніколи дійсних векторів вищої розмірності. Це називається «трюком із ядром» і це суто геометричне розуміння.
Стратегія 2: нейронні мережі — складіть лінійні трансформації з нелінійними функціями активації. Кожен шар застосовує лінійне перетворення (множення матриці = обертання + масштабування + зсув) та нелінійне «згинання» (ReLU, сигмоїд, tanh). Композиція багатьох операцій лінійного-а-потім-вигину може наблизити будь-яку форму межі.
Глибока нейронна мережа — це послідовність геометричних трансформацій, що деформує вхідний простір доти, доки класи не стануть лінійно розділеними у фінальному шарі.
Розділення кільцевих даних
Це одна з найважливіших геометричних проблем у машинному навчанні.
Поверхня втрат
Навчання = ходіння вниз по поверхні
Кожна модель машинного навчання має параметри — ваги та зміщення. Функція втрат вимірює, наскільки неправильні прогнози моделі. Разом вони визначають поверхню втрат: ландшафт, де кожна точка відповідає певному набору значень параметрів, а висота — це втрата.
Для моделі з 2 параметрами поверхня втрат — це 3D ландшафт, який ви можете візуалізувати — пагорби, долини та рівнини. Для моделі з 175 мільярдами параметрів (на кшталт GPT-3) поверхня втрат існує в просторі 175 мільярдів розмірів. Математика однакова.
Градієнтний спуск — це алгоритм, що навігує цей ландшафт. Градієнт — це геометричний об'єкт — вектор, що вказує в напрямку крутого підйому. Щоб зменшити втрату, рухайтесь у протилежному напрямку: від'ємний градієнт. Це буквально ходіння вниз.
Швидкість навчання контролює розмір кроку. Занадто велика й ви перескочите долини. Занадто мала й ви будете повільно повзти. Градієнт говорить вам про напрямок; швидкість навчання говорить вам, як далеко робити крок.
Сідлові точки, мінімуми та геометрія високих розмірних просторів
Ландшафт втрат не простая чаша
Наївна картина навчання уявляє гладку чашу з однією найглибшою точкою. Дійсність набагато складніша:
Локальні мінімуми — долини, які не найглибші. Градієнтний спуск може застрягти тут, задоволений тим, що кожен напрямок йде вгору, хоча де-небудь існує глибша долина.
Сідлові точки — мають форму сідла для коня. Втрата коливається вниз у деяких розмірностях та вгору в інших. У 2D це рідко. У високих розмірностях сідлові точки експоненціально частіше ніж локальні мінімуми. Критична точка в 1000-вимірному просторі мусить коливатися вгору у ВСІХ 1000 розмірностях, щоб бути локальним мінімумом. Якщо навіть один вимір коливається вниз, це сідлова точка.
Плоскі плато — регіони, де градієнт близький до нуля. Навчання стає застійним тому що ннемає схилу, якого слід дотримуватися.
Гострі проти плоских мінімумів — гострий мінімум — це вузька долина. Плоский мінімум — це широка долина. Дослідження припускають, що плоскі мінімуми узагальнюються краще на невидимі дані, тому що невеликі збурення до параметрів (від шуму в нових даних) не різко змінюють втрату.
SGD з моментом допомагає втекти із сідлових точок та гострих мінімумів. Випадковість стохастичного градієнтного спуску працює як коливання кулі на поверхні — вона вибухує з вузьких пасток та знаходить ширші, плоскі долини.
SGD проти градієнтного спуску повного пакету
Це один з найважливіших практичних висновків у навчанні машинного навчання.
Слова як вектори — семантична арифметика
Значення має напрямок
Word2Vec, GloVe та сучасні вкладення на основі трансформерів відображають дискретні токени (слова, підслова) на безперервні векторні простори. Результат — геометричний світ, де значення має координати.
Знаменитий приклад: король - чоловік + жінка ≈ королева
Це векторна арифметика. Вектор від «чоловіка» до «короля» представляє поняття «королевство застосовується до самця». Вектор від «жінки» до «королеви» представляє «королевство застосовується до самиці». Ці вектори приблизно паралельні — однаковий напрямок, однаковий взаємозв'язок, різні вихідні точки.
Інші геометричні взаємозв'язки, які виникають під час навчання на тексті:
- Париж - Франція + Італія ≈ Рим (взаємозв'язок столиці)
- гуляв - гулять + плистати ≈ пливав (трансформація минулого часу)
- більший - великий + малий ≈ менший (форма порівняння)
Ніхто не програмував ці взаємозв'язки. Модель відкрила, що значення має геометричну структуру, читаючи мільярди слів. Напрямки в просторі вкладень відповідають семантичним взаємозв'язкам. Це один із найглибших геометричних відкриттів у машинному навчанні.
Гіпотеза про різноманіття
Високовимірні дані живуть на низьковимірних поверхнях
Зображення обличчя 64×64 в відтінках сірого має 4 096 значень пікселів — це точка в 4 096-вимірному просторі. Але не кожна точка в цьому просторі є дійсним обличчям. Більшість випадкових 4 096-вимірних векторів виглядають як статичний шум, а не обличчя.
Гіпотеза про різноманіття стверджує, що реальні, високовимірні дані насправді лежать на або поблизу низьковимірних вигнутих поверхнях (різноманітностей), вбудованих у високовимірний простір. Різноманітність облич може бути тільки 50-вимірною — параметризована такими факторами як кут освітлення, поза голови, вираз, тон шкіри, вік.
Це геометричне твердження з практичними наслідками:
- Зменшення розмірності (PCA, t-SNE, UMAP) працює, тому що дані приблизно низькомірні. Ці алгоритми знаходять різноманітність і проектують на неї.
- Автокодувачі вчаться стискати дані в низьковимірний прихований простір (різноманітність) та реконструювати з нього.
- Генеративні моделі (VAE, моделі дифузії) вчаться різноманітністю й вибирають нові точки на ній — генеруючи нові обличчя, нову музику, новий текст, який виглядає справжнім, тому що він лежить на набутій різноманітності.
Коли ваша модель не узагальнює, одне геометричне пояснення: вона опанувала неправильну різноманітність. Дані навчання простежили поверхню, яка не відповідає справжньому розподілу даних.
Векторні аналогії
Геометрична структура просторів вкладень — один із найбільш дивовижних результатів у сучасному машинному навчанні.
ROC-криві — якість класифікації як площа
Метрики оцінювання живуть у геометричних просторах
ROC (Receiver Operating Characteristic) крива будує True Positive Rate (вісь Y) проти False Positive Rate (вісь X) при змітанні порога класифікації від 0 до 1.
Це геометричний простір з значущими орієнтирами:
- (0, 1) — верхній лівий кут — ідеальна класифікація. Кожна позитив визначена, нуль хибних тривог.
- (0, 0) — нижній лівий — модель класифікує все як негативне.
- (1, 1) — верхній правий — модель класифікує все як позитивне.
- Діагональ від (0,0) до (1,1) — випадковий класифікатор. На кожному порозі він має рівні істинно позитивні та хибно позитивні показатели.
AUC (Area Under the Curve) — це буквально вимірювання геометричної площі. AUC = 0,5 означає, що модель випадкова (площа під діагоналлю). AUC = 1,0 означає ідеальну класифікацію (весь одиничний квадрат). Хороша модель ROC крива вигинається до верхнього лівого кута, огортаючи більше площі.
AUC має красивої ймовірнісну інтерпретацію: вона дорівнює ймовірності, що модель оцінює випадковий позитивний приклад вище ніж випадковий негативний приклад. Але геометрично це просто площа — й ця геометрична простота — це те, що робить її інтуїтивною.
Простір точності-повноти
Інший геометричний компроміс
Криві точності-повноти живуть у іншому геометричному просторі ніж ROC-криві, й вони розповідають іншу історію.
Точність = з усього, що модель позначила як позитив, яка частка насправді була позитивом?
Повнота = з усіх справжніх позитивів, яку частку модель знайшла?
Коли ви знижуєте поріг класифікації (позначаєте більше речей як позитивні), повнота зростає (ви перехоплюєте більше справжніх позитивів), але точність зазвичай зменшується (ви також перехоплюєте більше хибних позитивів). Цей компроміс простежує криву у просторі точності-повноти.
F1-оцінка = 2 × (точність × повнота) / (точність + повнота) — середнє гармонійне. Геометрично F1-оцінка дорівнює точці на кривій точності-повноти, де точність дорівнює повноті. Це де крива перетинає діагональ квадрату точності-повноти.
Average Precision (AP) = площа під кривою точності-повноти. Як AUC-ROC, вона узагальнює всю криву в одне число, яке представляє геометричну площу.
ROC-криві та криві точності-повноти — взаємодоповняльні геометричні погляди на одну й ту саму модель. ROC-криві можуть бути оманливо оптимістичними на незбалансованих наборах даних (99% негативного класу). Криві точності-повноти залишаються інформативними тому що вони зосереджуються на позитивному класі.
Інтерпретація AUC-ROC
Розуміння того, що вимірює AUC-ROC геометрично, допомагає вам вибирати між моделями.
Трансформери — скалярні добутки як увага
Увага — це геометричний показник подібності
Архітектура трансформера — основа сучасних мовних моделей — побудована на геометричній операції: скалярному добутку.
Для кожного токена в послідовності трансформер обчислює три вектори: Query (Q), Key (K) та Value (V), кожен отриманий множенням вхідного вкладення на навчені матриці ваг.
Оцінка уваги між двома токенами: score = Q · K^T / √d
Це масштабований скалярний добуток — геометричний показник подібності. Коли Q і K вказують в одному напрямку (малий кут між ними), скалярний добуток великий: цей ключ дуже релевантний до цього запиту. Коли вони перпендикулярні, скалярний добуток нульовий: не релевантний.
Оцінки передаються через softmax щоб створити розподіл імовірності: ваги уваги, що складаються в 1. Результат — зважена сума векторів Value, де ваги визначаються геометричним вирівнюванням.
У реченні на кшталт «Кіт сидів на килимі, тому що він був втомлений», увага обчислює: для слова «він», які інші слова мають найбільше геометричне вирівнювання? Якщо вектор Q для «він» найбільше вирівнюється з вектором K для «кіт», модель звертає увагу на «кіт» — розв'язуючи посилання займенника через геометрію.
Багатоголова увага — кілька геометричних перспектив
Чому кілька голів?
Самоувага з одним набором матриць Q, K, V обчислює один тип геометричного вирівнювання. Але мова має багато типів взаємозв'язків — синтаксичні, семантичні, позиційні, референтні.
Багатоголова увага використовує кілька наборів матриць проекції Q, K, V, кожен проектуючи в інший підпростір вкладення. Кожна голова вимірює вирівнювання у своєму геометричному підпросторі.
Що дослідники спостерігають при огляді голів уваги:
- Голова 1 може звертати увагу на попереднє слово (позиційна близькість)
- Голова 2 може звертати увагу на дієслово від суб'єкта (синтаксична залежність)
- Голова 3 може звертати увагу на семантично пов'язані слова раніше в контексті
- Голова 4 може звертати увагу на найсвіжіший іменник (кореференція)
Кожна голова — це інший геометричний об'єктив на одних і тих же даних. Проекції обертають і масштабують простір вкладення по-різному, роблячи різні взаємозв'язки видимими через вирівнювання.
Це чому трансформери перевершують моделі з одним механізмом уваги. Один скалярний добуток у повному просторі вкладення захоплює одне поняття подібності. Кілька скалярних добутків у різних підпросторах захоплюють кілька, взаємодоповняльних понять одночасно.
Багатоголова увага
Багатоголова увага — одна з ключових архітектурних інновацій трансформера.
Машинне навчання — це прикладна геометрія
Об'єднуючий потік
Дивіться на те, що ми охопили. Кожна значна концепція в машинному навчанні має геометричне ядро:
Дані = точки в високовимірному просторі
Ознаки = розмірності цього простору
Подібність = відстань або кут між точками
Класифікація = знаходження геометричних меж між класами
Навчання = навігація ландшафту втрат шляхом дотримання градієнтів
Вкладення = навчені системи координат, де геометрія кодує значення
Оцінювання = площі під кривими у просторах метрик
Увага = скалярні добутки вимірюють кутове вирівнювання
Це не випадковість. Машинне навчання успадкувало свою математичну основу від лінійної алгебри та диференціальної геометрії — полів, які фундаментально стосуються простору, форми та трансформації.
Розуміння геометрії дає вам щось, що запам'ятовування алгоритмів не може: інтуїцію. Коли ваша модель гине, геометричний погляд говорить вам, де шукати. Класи не розділяються? Подивіться на межу. Навчання застрягло? Вивчіть ландшафт втрат. Вкладення погані? Перевірте, чи геометрично близькі подібні елементи. Увага розпорошена? Перевірте проекції підпростору.
Геометрія однакова, незалежно від того, працюєте ви з 3 розмірностями чи 3 мільярдами. Математика масштабується. Інтуїція переносить. Це те, що робить геометрію універсальною мовою машинного навчання.
Геометричне налаштування
Ми охопили вектори, відстані, межи, навчання/ландшафти втрат, вкладення, оцінювання/ROC та увагу — все через об'єктив геометрії.