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

Когда входных чисел очень много

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

Статья рассматривает три способа упростить некоторые задачи: многими пикселями могут управлять всего несколько чисел; среднее небольших правил может приближать большое; известное научное уравнение может направлять расчёт.

4.1 Один регулятор — много чисел

Гипотеза многообразия · стр. статьи 34–35

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

Пусть каждая координата имеет десять возможных значений. Перемножьте десять вариантов для каждой координаты.

Три входных числа с десятью вариантами каждое дают 10 × 10 × 10 = 1 000 сочетаний.

Пример расчёта

N=10dN=10^d
d=3:N=10⋅10⋅10=1000d=3:\quad N=10\cdot10\cdot10=1000
function gridPoints(choices, dimensions) {
  return { points: choices ** dimensions };
}
const result = gridPoints(10, 3);

Выберите изменение. Предскажите результат и запустите код.

Результат:
Включите JavaScript, чтобы запустить пример.

Подробнее в разделе понятий стр. статьи 34

Движущаяся вывеска

Условный пример

Исследуйте

Повторите образец: горит только четвёртая клетка.

Нажмите на рисунок или используйте кнопки

Ваша вывескаПозиция 3 из 5Образец
Положение клетки

Светящаяся клетка: 3; Цель: 4

У табло пять чисел, но только пять возможных рисунков: по одному для каждого положения огонька. Пять отдельных вариантов не образуют гладкую линию. Теперь изменим пример: пусть одна ручка меняет все пять чисел вместе и принимает любое значение в некотором диапазоне. Эти картинки образуют непрерывную линию.

Один регулятор яркости задаёт одинаковое значение всем пяти пикселям. Для описания картинки нужны пять чисел, но свободно выбрать можно только одно. При непрерывном изменении t картинки образуют линию. Её внутренняя размерность равна 1: одного свободного числа достаточно, чтобы указать картинку на линии.

Один регулятор яркости задаёт все пять чисел вместе.

Упрощённая модель

x(t)=(t,t,t,t,t)x(t)=(t,t,t,t,t)
t=2:x=(2,2,2,2,2)t=2:\quad x=(2,2,2,2,2)
function sharedBrightness(brightness, count) {
  return { pixels: Array(count).fill(brightness), controls: 1 };
}
const result = sharedBrightness(2, 5);

Выберите изменение. Предскажите результат и запустите код.

Результат:
Включите JavaScript, чтобы запустить пример.

Подробнее в разделе понятий стр. статьи 35

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

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

4.2 Приближение случайными частями

Случайная выборка · стр. статьи 35–36

Другой подход строит приближение из множества простых правил. Правила и их веса выбирают для конкретной целевой функции.

Для конкретной цели статья строит небольшие вклады g_j, в которые уже включены веса. Пусть при одном входе три вклада дают 1, 2 и 3. Выберем первые два и найдём среднее.

Среднее объединяет выбранные компоненты из набора, построенного для заданной целевой функции.

Определение / правило статьи

fn(x)=1n∑j=1ngj(x)f_n(x)=\frac1n\sum_{j=1}^{n}g_j(x)
f2(x)=(1+2)/2=1.5f_2(x)=(1+2)/2=1.5
function sampleAverage(values, count) {
  if (!Number.isInteger(count) || count <= 0 || count > values.length) {
    throw new Error('Количество должно быть целым от 1 до длины массива.');
  }
  let total = 0;
  for (let index = 0; index < count; index++) total += values[index];
  return { average: total / count };
}
const result = sampleAverage([1, 2, 3], 2);

Выберите изменение. Предскажите результат и запустите код.

Результат:
Включите JavaScript, чтобы запустить пример.

Подробнее в разделе понятий стр. статьи 36

Посчитайте цветы

Условный пример

Исследуйте

Выберите хотя бы два горшка и предскажите среднее. При необходимости округлите до двух знаков после запятой.

Нажмите на рисунок или используйте кнопки

Все пять горшковСреднее 3Выбранные горшкиСреднее ?
Горшки

Выбрано: нет

В расчёте выше выбор 1 и 2 даёт (1 + 2)/2 = 1,5. В примере с цветами тоже усредняются выбранные значения. Горшки показывают, почему среднее выборки может отличаться от среднего всей группы; ещё один горшок не обязан улучшать оценку каждый раз. Это пример усреднения, а не гарантия из статьи.

Статья даёт верхнюю границу ожидаемой квадратичной ошибки. Число C_g описывает выбранное правило-цель; это не регулятор, делающий любую задачу лёгкой. Для расчёта возьмём C_g = 4 и n = 4 небольших правила. Символ π — постоянная из геометрии круга, примерно 3,1416.

При условиях статьи большее число слагаемых снижает эту верхнюю границу ожидаемой квадратичной ошибки.

Оценка (при условиях)

E[∥g−g(0)−fn∥2]≤(2πCg)2/n\mathbb E[\|g-g(0)-f_n\|^2]\leq(2\pi C_g)^2/n
Cg=4,n=4:(2π⋅4)2/4=16π2C_g=4,\quad n=4:\quad (2\pi\cdot4)^2/4=16\pi^2
function errorBound(targetComplexity, numberOfTerms) {
  const squaredErrorBound = (2 * Math.PI * targetComplexity) ** 2
    / numberOfTerms;
  return { squaredErrorBound };
}
const result = errorBound(4, 4);

Выберите изменение. Предскажите результат и запустите код.

Результат:
Включите JavaScript, чтобы запустить пример.

Подробнее в разделе понятий стр. статьи 36

Граница выше относится к ожидаемому квадрату ошибки и уменьшается как 1/n. Если извлечь из неё квадратный корень, получится граница среднеквадратичной ошибки: усредняем квадраты ошибок и извлекаем корень. Эта граница уменьшается как 1/√n. Статья требует условия на представление цели Фурье — способ записать правило как смесь волн. Константа зависит от цели.

При C_g = 4 и n = 4 граница (2πC_g)²/n равна примерно 157,91. Если взять 16 слагаемых, граница уменьшится вчетверо, примерно до 39,48. При условиях теоремы ожидаемая квадратичная ошибка не превышает границу. Ошибка одной конкретной выборки не обязана уменьшаться при каждом добавлении слагаемого.

4.3 Когда помогает научное правило

Гипотеза об уравнениях в частных производных · стр. статьи 36–39

Иногда задача сложна, потому что содержит много меняющихся значений, но её правило задано научным уравнением. Например, уравнение теплопроводности описывает распространение температуры.

Представим стержень с известной начальной температурой в каждой точке. Для оценки более поздней температуры в одной точке формула начинает там случайные траектории и считывает начальную температуру в конце каждой. Это математические выборки, а не утверждение, что тепло физически движется назад.

Два пути

Условный пример

Исследуйте

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

Нажмите на рисунок или используйте кнопки

Путь AКонец 0 · начальная 2°C←→Путь BКонец 0 · начальная 2°C
Шаги пути
0

Шаги: 0; Положение: 0 · 0

В формуле статьи g(x,t) — значение в более позднее время, φ — начальная температура, S — конечная точка случайной траектории, n — число выбранных траекторий. В примере начальные температуры в конечных точках равны 2 и 4 градусам.

Среднее выборки оценивает более позднюю температуру в начальной точке.Два исхода случайных путей иллюстрируют оценку, а не точное математическое ожидание.

Формула из статьи

g(x,t)=E[φ(Sx,t)]≈1n∑i=1nφ(Sx,t(i))g(x,t)=\mathbb{E}[\varphi(\mathcal{S}_{x,t})]\approx\frac{1}{n}\sum_{i=1}^{n}\varphi(\mathcal{S}_{x,t}^{(i)})
g(x,t)≈(2+4)/2=3g(x,t)\approx(2+4)/2=3
function averageTemperature(first, second) {
  return { sampleAverage: (first + second) / 2 };
}
const result = averageTemperature(2, 4);

Выберите изменение. Предскажите результат и запустите код.

Результат:
Включите JavaScript, чтобы запустить пример.

Подробнее в разделе понятий стр. статьи 37 (4.8)

Пусть две выбранные траектории заканчиваются в точках с начальными температурами 2°C и 4°C. Их среднее равно (2 + 4)/2 = 3°C. Оно оценивает более позднюю температуру в начале траекторий по начальным температурам в их концах. Сами положения не являются температурами.

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

Каждый подход использует особенность данных, правила или научного уравнения. Это помогает в некоторых задачах с множеством входных чисел. Теперь вернёмся к вопросу из первой главы: как обучение находит полезные веса?

Проверьте себя по главе

1. Многие пиксели показывают движение одного объекта. Что похоже на гипотезу многообразия?

2. Что обобщает среднее выборки?

3. Что усредняют после случайных блужданий в простой модели тепла?

Независимое учебное объяснение статьи Современная математика глубокого обучения — Юлиус Бернер, Филипп Грос, Гитта Кутиниок, Филипп Петерсен. В примерах используются вымышленные числа, если не указан источник измеренных данных.