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

Несмещённое стохастическое обновление

Проект с пингвинами

Проект использует 342 записи Palmer с нужными измерениями: 240 для обучения, 102 для проверки. Выбранные примеры для обучения определяют масштабирование и параметры модели. Исходный CSV

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

Обучение и обновление параметров · Выбирают правило или обновляют параметры с помощью правила обучения.

Текущая целевая функция даёт градиент для обновления параметров.

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

Вход: 12 × 2; Проверка на новых данных: 102 · #58 · 40.6 мм, 193 мм. Известный ответ: Адели; Прогноз: Адели · [≈0,7383; ≈0,2444; ≈0,01737].

Используется в разделах источника: 1.2 Обучение на примерах

Стохастический градиент может меняться между обновлениями. Он несмещён, когда его условное среднее равно полному градиенту.

В примере D равно 0 или 2 с одинаковой вероятностью, поэтому его среднее равно 1.

Обновление объединяет стохастический градиент с размером шага.

Пример формулы источника

E[D(k)∣Θ(k−1)]=∇r(Θ(k−1)),Θ(k)=Θ(k−1)−ηkD(k)\mathbb E[D^{(k)}\mid\Theta^{(k-1)}]=\nabla r(\Theta^{(k-1)}),\quad\Theta^{(k)}=\Theta^{(k-1)}-\eta_kD^{(k)}

Иллюстрация · Здесь точно перечислено учебное условное распределение с двумя исходами; это не устанавливает несмещённость или сходимость произвольного алгоритма.

Обозначения

D(k)D^{(k)}
Стохастический градиент на шаге k.
ηkη_k
Размер шага.
Θ(k−1)Θ^{(k-1)}
Параметр до шага.

Пример формулы источника

Этот пример использует свои входные данные и предположения. Его изменение не меняет проект.

Измените значение или код и запустите пример. Это конечная иллюстрация, а не доказательство теоремы.

Поток данных в этом примере

Вы выбираете

  • input.theta = 2
  • input.rate = 0,5

Начальные значения в коде

  • gradients = [0, 2]

Вычисляется здесь

Выражение результата: { gradients, meanGradient, fullGradient: 1, nextParameters }

  • meanGradient = (gradients[0] + gradients[1]) / 2 Использует: gradients
  • nextParameters = gradients.map((value) => input.theta - input.rate * value) Использует: gradients, input.theta, input.rate

Возвращает

Пример результата
gradients
массив (2 элементов): [0, 2]
meanGradient
1
fullGradient
1
nextParameters
массив (2 элементов): [2, 1]

Прочитайте числа из input и верните результат. Основы JavaScript.

Результат

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

Техническая формулировка

Алгоритм источника требует, чтобы условное ожидание D при заданной предыдущей итерации равнялось полному градиенту. Пример выбирает полный градиент 1 и распределение с двумя исходами и средним 1.

Источник: Алгоритм 1