English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

гость
1 / ?
назад к урокам

Данные живут в геометрическом пространстве

Всё является вектором

Векторы встраивания слов — сходство как направление

В машинном обучении данные живут в геометрическом пространстве. Каждая точка данных с N признаками — это точка в N-мерном пространстве. Это не метафора — это буквальный математический фундамент каждого алгоритма.


Изображение рукописной цифры (28×28 пикселей) — это точка в 784-мерном пространстве. Каждый пиксель — одна координата. Две похожие цифры — это близлежащие точки в этом пространстве. Две разные цифры — это далёкие точки.


Встраивание слова преобразует слово в точку в 300-мерном пространстве. Слова с похожими значениями оказываются в одной окрестности. 'Собака' и 'щенок' находятся рядом. 'Собака' и 'парламент' находятся далеко.


Профиль пользователя с 50 признаками (возраст, история покупок, паттерны кликов) — это точка в 50-мерном пространстве. Системы рекомендации находят пользователей, которые находятся 'рядом' в этом пространстве, и рекомендуют то, что нравилось их геометрическим соседям.


Геометрия — это как мы рассуждаем об этих пространствах. Расстояние, направление, угол, проекция — это фундаментальные операции машинного обучения.

Векторные операции — строительные блоки

Скалярное произведение питает всё

Три векторные операции имеют наибольшее значение в машинном обучении:


Векторное сложение — объединение признаков или сигналов. Если добавить два вектора слов, вы получите вектор, представляющий оба понятия в смеси.


Скалярное умножение — масштабирование вектора изменяет его величину, не меняя направление. Темпы обучения при градиентном спуске — это скалярные множители.


Скалярное произведение — это рабочая лошадка. Скалярное произведение двух векторов a и b равно |a||b|cos(θ), где θ — угол между ними. Когда векторы нормированы (единичная длина), скалярное произведение — это косинус угла.


Косинусное сходство = cos(θ) = (a·b) / (|a||b|)


Эта единственная формула питает:

- Поисковые системы — поиск документов, похожих на запрос

- Механизмы внимания — определение того, какие токены важны друг для друга

- Системы рекомендации — сопоставление профилей пользователей с профилями элементов

- Поиск с дополнением в контексте — поиск релевантного контекста для языковых моделей


cos(θ) = 1 означает, что векторы указывают в точно одном направлении (идентичное значение). cos(θ) = 0 означает, что они перпендикулярны (не связаны). cos(θ) = -1 означает, что они указывают в противоположных направлениях (противоположное значение).

Косинусное сходство

Косинусное сходство — один из наиболее используемых метрик в современных системах машинного обучения.

Два вектора встраивания слов имеют косинусное сходство 0,95. Другая пара имеет косинусное сходство 0,12. Что каждое число говорит вам об отношении между словами в каждой паре?

Три способа измерения расстояния

Выбор метрики расстояния изменяет, что означает 'похожий'

Три метрики расстояния — одни и те же точки, разные значения

Учитывая две точки в пространстве, есть много способов измерить 'расстояние' между ними. Каждая метрика определяет разную геометрию, и эта геометрия определяет, что ваша модель считает 'похожим'.


Евклидово расстояние (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 максимизируют геометрический зазор — расстояние от гиперплоскости до ближайших точек данных

- Персептроны просто находят любую гиперплоскость, которая разделяет данные, без гарантии оптимальности


Вектор весов линейного классификатора — это вектор нормали к гиперплоскости. Член смещения сдвигает гиперплоскость от начала координат. Это геометрические объекты с геометрическими интерпретациями.

За пределами плоских границ

Когда данные не разделяются линейно

Многие реальные проблемы не могут быть решены с помощью плоской границы. Рассмотрим классификацию изображений кошек vs собак — ни одна отдельная гиперплоскость в пространстве пикселей не разделяет их чисто.


Существуют две геометрические стратегии:


Стратегия 1: Трюк ядра — преобразуйте данные в более высокомерное пространство, где они РАЗДЕЛЯЮТСЯ линейно. Классический пример: точки внутри круга (класс A) и точки снаружи (класс B) в 2D. Никакая линия их не разделяет. Но добавьте третье измерение z = x² + y², и внутренние точки (малые x² + y²) сидят низко, в то время как внешние точки (большие x² + y²) сидят высоко. Теперь плоскость разделяет их идеально.


SVM с функциями ядра делают это неявно — они вычисляют скалярные произведения в высокомерном пространстве без фактического построения высокомерных векторов. Это называется 'трюком ядра' и это чисто геометрический вывод.


Стратегия 2: Нейронные сети — складывают линейные трансформации с нелинейными функциями активации. Каждый слой применяет линейное преобразование (матричное умножение = вращение + масштабирование + сдвиг) с последующим нелинейным 'изгибом' (ReLU, sigmoid, tanh). Композиция многих линейно-затем-изгиб операций может приблизить любую непрерывную граничную форму.


Глубокая нейронная сеть — это последовательность геометрических трансформаций, которые деформируют входное пространство, пока классы не станут линейно разделимы в финальном слое.

Разделение круговых данных

Это одна из самых важных геометрических проблем в машинном обучении.

В 2D у вас есть красные точки внутри круга и синие точки снаружи. Прямая линия не может их разделить. Описите две геометрические стратегии для решения этого.

Поверхность потерь

Обучение = ходьба вниз по поверхности

Ландшафт потерь — навигация по поверхности

Каждая модель машинного обучения имеет параметры — веса и смещения. Функция потерь измеряет, насколько ошибочны прогнозы модели. Вместе они определяют поверхность потерь: ландшафт, где каждая точка соответствует определённому набору значений параметров, и высота — это потеря.


Для модели с 2 параметрами поверхность потерь — это трёхмерный ландшафт, который вы можете визуализировать — холмы, долины и равнины. Для модели с 175 миллиардами параметров (как GPT-3) поверхность потерь существует в 175-миллиардном мерном пространстве. Математика одинакова.


Градиентный спуск — это алгоритм, который навигирует по этой поверхности. Градиент — это геометрический объект — вектор, который указывает в направлении самого крутого подъёма. Чтобы уменьшить потери, движитесь в противоположном направлении: отрицательный градиент. Это буквально ходьба вниз.


Темп обучения контролирует размер шага. Слишком большой и вы пропускаете долины. Слишком маленький и вы ползёте. Градиент говорит вам направление; темп обучения говорит вам, как далеко идти.

Седловые точки, минимумы и геометрия высоких измерений

Поверхность потерь — не простая чаша

Наивная картина обучения представляет плавную чашу с одной самой низкой точкой. Реальность намного сложнее:


Локальные минимумы — долины, которые не являются самыми глубокими. Градиентный спуск может застрять здесь, удовлетворённый тем, что каждое направление идёт вверх, даже если существует более глубокая долина где-то ещё.


Седловые точки — имеют форму лошадиного седла. Потери изгибаются вниз в некоторых измерениях и вверх в других. В 2D это редко. В высоких измерениях седловые точки экспоненциально более распространены, чем локальные минимумы. Критическая точка в 1000-мерном пространстве должна изгибаться вверх ВО ВСЕХ 1000 измерениях, чтобы быть локальным минимумом. Если даже одно измерение изгибается вниз, это седловая точка.


Плоские плато — области, где градиент близок к нулю. Обучение останавливается, потому что нет склона для следования.


Острые vs плоские минимумы — острый минимум — это узкая долина. Плоский минимум — это широкая долина. Исследования предполагают, что плоские минимумы обобщают лучше на невидимые данные, потому что малые возмущения параметров (из-за шума в новых данных) не резко изменяют потери.


SGD с импульсом помогает выбраться из седловых точек и острых минимумов. Случайность стохастического градиентного спуска действует как встряхивание шара на поверхности — он отскакивает от узких ловушек и находит более широкие, плоские долины.

SGD vs полный пакетный градиентный спуск

Это один из самых важных практических вывод в обучении машинного обучения.

Почему стохастический градиентный спуск (SGD) часто находит лучшие решения, чем полный пакетный градиентный спуск, с геометрической точки зрения?

Слова как векторы — семантическая арифметика

Смысл имеет направление

Пространство встраивания слов — геометрия семантики

Word2Vec, GloVe и современные встраивания трансформеров преобразуют дискретные токены (слова, подслова) в непрерывные векторные пространства. Результат — это геометрический мир, где смысл имеет координаты.


Знаменитый пример: король - мужчина + женщина ≈ королева


Это векторная арифметика. Вектор от 'мужчина' к 'король' представляет понятие 'королевская власть применяется к мужчине'. Вектор от 'женщина' к 'королева' представляет 'королевская власть применяется к женщине'. Эти векторы приблизительно параллельны — одно направление, одно отношение, разные начальные точки.


Другие геометрические отношения, которые возникают из обучения на тексте:

- Париж - Франция + Италия ≈ Рим (отношение столицы)

- шёл - идти + плыть ≈ плыл (преобразование прошедшего времени)

- больший - большой + маленький ≈ меньший (сравнительная форма)


Никто не программировал эти отношения. Модель обнаружила, что смысл имеет геометрическую структуру, читая миллиарды слов. Направления в пространстве встраивания соответствуют семантическим отношениям. Это одно из самых глубоких геометрических открытий в машинном обучении.

Гипотеза многообразия

Высокомерные данные живут на низкомерных поверхностях

Изображение в оттенках серого лица 64×64 имеет 4096 значений пикселей — это точка в 4096-мерном пространстве. Но не каждая точка в этом пространстве является действительным лицом. Большинство случайных 4096-мерных векторов выглядят как статический шум, а не лица.


Гипотеза многообразия утверждает, что реальные высокомерные данные на самом деле лежат на или рядом с низкомерными изогнутыми поверхностями (многообразиями), встроенными в высокомерное пространство. Многообразие лиц может быть только 50-мерным — параметризованным факторами, такими как угол освещения, положение головы, выражение, тон кожи, возраст.


Это геометрическое утверждение с практическими последствиями:


- Снижение размерности (PCA, t-SNE, UMAP) работает, потому что данные приблизительно низкомерны. Эти алгоритмы находят многообразие и проецируют на него.

- Автокодировщики учатся сжимать данные в низкомерное скрытое пространство (многообразие) и восстанавливать из него.

- Генеративные модели (VAE, модели диффузии) учатся многообразию и выбирают новые точки на нём — генерируют новые лица, новую музыку, новый текст, которые выглядят реально, потому что лежат на изученном многообразии.


Когда ваша модель не обобщается, одно геометрическое объяснение: она выучила неправильное многообразие. Тренировочные данные прошли по поверхности, которая не соответствует истинному распределению данных.

Векторные аналогии

Геометрическая структура пространств встраивания — это один из самых удивительных результатов в современном машинном обучении.

Если встраивания слов геометрически отображают смысл, что это означает, когда мы говорим, что вектор от 'мужчина' к 'король' приблизительно параллелен вектору от 'женщина' к 'королева'? Какой геометрический концепт работает?

ROC кривые — качество классификации как площадь

Метрики оценки живут в геометрических пространствах

ROC пространство — качество классификации как геометрия

ROC кривая (Receiver Operating Characteristic) строит Истинный положительный коэффициент (ось y) против Ложного положительного коэффициента (ось x) по мере изменения порога классификации от 0 до 1.


Это геометрическое пространство со значимыми ориентирами:

- (0, 1) — верхний левый угол — идеальная классификация. Каждый положительный обнаружен, нулевых ложных срабатываний.

- (0, 0) — нижний левый — модель классифицирует всё как отрицательное.

- (1, 1) — верхний правый — модель классифицирует всё как положительное.

- Диагональ от (0,0) до (1,1) — случайный классификатор. На каждом пороге он имеет равные истинные положительные и ложные положительные коэффициенты.


AUC (Площадь под кривой) буквально является измерением геометрической площади. AUC = 0,5 означает, что модель случайна (площадь под диагональю). AUC = 1,0 означает идеальную классификацию (весь единичный квадрат). Хорошая модель ROC кривая изгибается к верхнему левому углу, охватывая большую площадь.


AUC имеет красивую вероятностную интерпретацию: она равна вероятности того, что модель оценит случайный положительный пример выше, чем случайный отрицательный пример. Но геометрически это просто площадь — и эта геометрическая простота делает её интуитивной.

Пространство точность-полнота

Другой геометрический компромисс

Кривые точность-полнота живут в другом геометрическом пространстве, чем ROC кривые, и рассказывают другую историю.


Точность = из всего, что модель отметила как положительное, какая доля была действительно положительной?

Полнота = из всех реальных положительных, какую долю нашла модель?


По мере того, как вы понижаете порог классификации (отмечаете больше вещей как положительные), полнота увеличивается (вы ловите больше реальных положительных), но точность обычно уменьшается (вы также ловите больше ложных положительных). Этот компромисс прослеживает кривую в пространстве точность-полнота.


F1 оценка = 2 × (точность × полнота) / (точность + полнота) — среднее гармоническое. Геометрически F1 оценка равна точке на кривой точность-полнота, где точность равна полноте. Это где кривая пересекает диагональ квадрата точность-полнота.


Средняя точность (AP) = площадь под кривой точность-полнота. Как AUC-ROC, она обобщает всю кривую в одно число, которое представляет геометрическую площадь.


ROC кривые и кривые точность-полнота — это дополняющие друг друга геометрические виды одной и той же модели. ROC кривые могут быть обманчиво оптимистичны на несбалансированных наборах данных (99% отрицательный класс). Кривые точность-полнота остаются информативными, потому что сосредоточены на положительном классе.

Интерпретация AUC-ROC

Понимание того, что измеряет AUC-ROC геометрически, помогает вам выбирать между моделями.

Две модели имеют одинаковую точность (85%). Модель A имеет AUC-ROC 0,92. Модель B имеет AUC-ROC 0,78. Почему вы можете предпочесть модель A? Что геометрическое различие в их ROC кривых говорит вам?

Трансформеры — скалярные произведения как внимание

Внимание — это геометрическая мера сходства

Внимание = геометрическое выравнивание между запросом и ключами

Архитектура трансформера — основа современных языковых моделей — построена на геометрической операции: скалярном произведении.


Для каждого токена в последовательности трансформер вычисляет три вектора: Запрос (Q), Ключ (K) и Значение (V), каждый полученный путём умножения встраивания входа на матрицы изученных весов.


Оценка внимания между двумя токенами: score = Q · K^T / √d


Это масштабированное скалярное произведение — геометрическая мера сходства. Когда Q и K указывают в одном направлении (малый угол между ними), скалярное произведение большое: этот ключ весьма релевантен этому запросу. Когда они перпендикулярны, скалярное произведение нулевое: не релевантно.


Оценки проходят через softmax для создания вероятностного распределения: веса внимания, которые суммируются до 1. Выход — это взвешенная сумма векторов значений, где веса определяются геометрическим выравниванием.


В предложении вроде 'Кошка сидела на коврике, потому что устала', внимание вычисляет: для слова 'она', какие другие слова имеют наиболее геометрическое выравнивание? Если вектор Q для 'она' больше всего выравнивается с вектором K для 'кошка', модель обращает внимание на 'кошка' — разрешая местоимение через геометрию.

Многоголовое внимание — множественные геометрические перспективы

Почему множественные головы?

Самовнимание с одним набором матриц Q, K, V вычисляет один тип геометрического выравнивания. Но язык имеет множество типов отношений — синтаксических, семантических, позиционных, референциальных.


Многоголовое внимание использует множество наборов матриц проекции Q, K, V, каждый проецирующий в другое подпространство встраивания. Каждая голова измеряет выравнивание в своём собственном геометрическом подпространстве.


Что исследователи наблюдают при проверке голов внимания:

- Голова 1 может обращать внимание на предыдущее слово (позиционная близость)

- Голова 2 может обращать внимание на глагол из субъекта (синтаксическая зависимость)

- Голова 3 может обращать внимание на семантически связанные слова ранее в контексте

- Голова 4 может обращать внимание на самое недавнее существительное (кореферентность)


Каждая голова — это разный геометрический объектив на одних и тех же данных. Проекции поворачивают и масштабируют пространство встраивания по-разному, делая разные отношения видимыми через выравнивание.


Вот почему трансформеры превосходят модели с механизмом единственного внимания. Одно скалярное произведение в полном пространстве встраивания отображает одно понятие сходства. Множественные скалярные произведения в разных подпространствах отображают множественные, дополняющие друг друга понятия одновременно.

Многоголовое внимание

Многоголовое внимание — это одна из ключевых архитектурных инноваций трансформера.

В трансформере, почему использование множественных голов внимания помогает по сравнению с одной головой? Ответьте в терминах геометрических подпространств.

Машинное обучение — это прикладная геометрия

Объединяющая нить

Посмотрите на то, что мы охватили. Каждая основная концепция в машинном обучении имеет геометрическое ядро:


Данные = точки в высокомерном пространстве

Признаки = измерения этого пространства

Сходство = расстояние или угол между точками

Классификация = поиск геометрических границ между классами

Обучение = навигация по поверхности потерь, следуя градиентам

Встраивания = выученные координатные системы, где геометрия кодирует смысл

Оценка = площади под кривыми в метрических пространствах

Внимание = скалярные произведения, измеряющие угловое выравнивание


Это не совпадение. Машинное обучение унаследовало свою математическую структуру из линейной алгебры и дифференциальной геометрии — полей, которые фундаментально посвящены пространству, форме и трансформации.


Понимание геометрии даёт вам что-то, что запоминание алгоритмов не может: интуицию. Когда ваша модель не работает, геометрический взгляд предлагает, где искать. Классы не разделяются? Посмотрите на границу. Обучение застряло? Осмотрите ландшафт потерь. Встраивания плохи? Проверьте, близко ли находятся геометрически похожие элементы. Внимание рассеяно? Проверьте проекции подпространства.


Геометрия одинакова, работаете ли вы с 3 или 3 миллиардами измерений. Математика масштабируется. Интуиция переносится. Это то, что делает геометрию универсальным языком машинного обучения.

Геометрическая отладка

Мы охватили векторы, расстояния, границы, обучение, встраивания, оценку и внимание — всё через объектив геометрии.

Выберите одну концепцию из этого урока и объясните, как понимание её геометрической природы изменяет, КАК вы отлаживали бы или улучшали модель, которая её использует. Будьте конкретны.