Дидактические цели
Нейронные сети — движущая сила распознавания речи, машинного перевода и языковых моделей. Эта лаборатория ведёт ученика старшей школы и университета от одного искусственного нейрона до многослойной сети, способной обучаться самостоятельно, строя каждый элемент карандашом и калькулятором, прежде чем увидеть его в действии на экране. В 29 залах, разбитых на восемь разделов, путь идёт от вопроса «что такое нейрон?» до обучения настоящей сети с обратным распространением ошибки.
Чему учимся
- Изучается задача классификации в наглядном виде: разделить одну область от другой на квадрате.
- Моделируется искусственный нейрон (взвешенная сумма + порог) и вычисляется его выход вручную для конкретных входов.
- Подбираются веса и смещение для реализации логических функций AND и OR; ученик обнаруживает, что XOR неразделим одним нейроном (одной прямой недостаточно).
- Изучается сигмоидная функция σ(z) = 1/(1+e⁻ᶻ): форма, приближённое вычисление и её элегантная производная σ′ = σ(1−σ).
- Вводится квадратичная ошибка E = ½(y−ŷ)² и вычисляется численно для разных весов.
- Осваивается градиентный спуск: метафора «спуска с горы», влияние скорости обучения η и проблема нейронного насыщения.
- Анализируется сеть 2-2-1 (скрытый слой): полный прямой проход и то, почему стек слоёв решает XOR.
- Понимается обратное распространение: ошибка течёт назад, каждый вес корректируется пропорционально его вкладу в ошибку.
- Завершается линейной регрессией как предельным случаем: нейрон без активации, обученный на точках, воспроизводит метод наименьших квадратов.
- В дополнительных залах есть Playground — свободная площадка для исследования архитектур и датасетов в реальном времени.
Ключевые математические идеи
- Выход нейрона: y = f(w₁x₁ + w₂x₂ + b), где f — функция активации.
- Сигмоида σ(z) = 1/(1+e⁻ᶻ) сжимает любое вещественное значение в интервал (0, 1); её производная σ′(z) = σ(z)·(1−σ(z)).
- Среднеквадратичная ошибка E = ½(y−ŷ)² измеряет расстояние между предсказанием и целью; её минимизация направляет обучение.
- Градиентный спуск обновляет каждый вес: w ← w − η·∂E/∂w; η (скорость обучения) управляет размером шага.
- Обратное распространение применяет правило цепочки послойно для вычисления ∂E/∂w по всей сети.
- Линейный нейрон, обученный градиентным спуском, сходится к решению метода наименьших квадратов.
- Линейная разделимость разграничивает то, чему может научиться один слой, от того, что требует нескольких: XOR требует как минимум одного скрытого слоя.
Содержание по залам
Зал 1 · Что такое нейронная сеть?
Введение в лабораторию: что такое нейронные сети, для чего они нужны и что будет исследоваться зал за залом.
Задания для ученика
- Прочитать введение и составить общее представление о маршруте.
Зал 2 · Что такое нейрон?
Показан интерактивный искусственный нейрон: входы, веса, смещение и ступенчатая функция активации. Ученик двигает ползунки и наблюдает, когда выход переключается с 0 на 1.
Задания для ученика
- Двигать ползунки весов и смещения.
- Выявить комбинации входов, при которых нейрон срабатывает (выход = 1).
Зал 3 · Вычисли выход
Нейрон с весами w=(0,3; 0,4; −0,6) и смещением b=0,2, ступенчатая функция. Ученик вычисляет выход для всех комбинаций бинарных входов и отмечает те, при которых нейрон срабатывает.
Задания для ученика
- Вычислить взвешенную сумму для каждой комбинации входов (0/1).
- Отметить все входы, при которых выход равен 1.
Зал 4 · Функция большинства
При весах (1, 1, 1) и смещении −1,5 нейрон реализует функцию большинства. Задаётся вопрос: какую логическую функцию получим, если вес x₁ станет равным 2.
Задания для ученика
- Изучить таблицу истинности с новым весом x₁ = 2.
- Выбрать, какую логическую функцию описывает полученное поведение.
Зал 5 · Граница решения
Нейрон с 2 входами рисует разделяющую прямую на плоскости. Ученик двигает веса и смещение, наблюдая, как эта граница поворачивается и смещается.
Задания для ученика
- Двигать веса и смещение, исследуя разные границы решения.
- Определить, какую логическую функцию реализует текущая конфигурация.
Зал 6 · Реализуй AND
Ученик должен найти веса и смещение так, чтобы нейрон реализовывал функцию AND: срабатывает только тогда, когда оба входа равны 1. Таблица истинности становится зелёной при успехе.
Задания для ученика
- Настраивать веса и смещение до тех пор, пока таблица AND не позеленеет.
Зал 7 · Реализуй OR (и открой XOR)
Ученик реализует OR (срабатывает, если хотя бы один вход равен 1), а затем пытается реализовать XOR (срабатывает только при ровно одном входе 1), обнаруживая, что один нейрон не может разделить XOR прямой.
Задания для ученика
- Найти веса и смещение для OR.
- Попробовать реализовать XOR и убедиться, почему это невозможно с одним нейроном.
Зал 8 · Сигмоида
Представляется функция сигмоиды σ(z) = 1/(1+e⁻ᶻ) как гладкая версия ступенчатой функции: равна 0,5 при z=0 и стремится к 0 или 1 на краях. Ученик перемещает точку по кривой и наблюдает поведение функции.
Задания для ученика
- Перемещать точку вдоль кривой и наблюдать значения σ(z).
Зал 9 · Чему равно σ(1)?
Устный расчёт σ(1) с использованием приближения e ≈ 2,7, дающего σ(1) ≈ 0,73. Ученик применяет ту же идею для вычисления σ(−1).
Задания для ученика
- Проследовать рассуждению e⁻¹ ≈ 0,37 → σ(1) ≈ 0,73.
- Вычислить σ(−1) по симметрии или тем же методом.
Зал 10 · Элегантная производная
Представляется замечательное свойство σ'(z) = σ(z)·(1−σ(z)). Ученик проверяет, что формула верна для трёх различных значений z.
Задания для ученика
- Вычислить σ(z) и σ'(z) для трёх значений z и проверить тождество.
Зал 11 · Другие функции активации
Интерактивная галерея: сигмоида, tanh, ReLU, Leaky ReLU, ступенчатая и линейная функции. Ученик выбирает каждую из выпадающего списка и наблюдает график функции и её производную.
Задания для ученика
- Выбрать каждую функцию активации из выпадающего списка.
- Наблюдать форму кривой и производной для каждой функции.
Зал 12 · Нейронная сеть — не точная математика
Концептуальный мост: нейронная сеть не ищет идеального ответа, а принимает небольшие ошибки и постепенно их уменьшает. Идея вводится до формального измерения ошибки.
Задания для ученика
- Прочитать и рассмотреть простой пример, иллюстрирующий итеративное уменьшение ошибки.
Зал 13 · Среднеквадратичная ошибка
Представляется функция потерь E = ½(y − ŷ)². Ученик двигает ползунки фактического и целевого выхода и наблюдает, как меняется E, в том числе когда она равна нулю.
Задания для ученика
- Двигать ползунки y и ŷ и наблюдать E.
- Выявить условие, при котором ошибка равна нулю, и условие максимума.
Зал 14 · Вычисли ошибку
Сигмоидный нейрон с w=(2, −1), b=0,5, входом (1,1) и целевым значением ŷ=0. Ученик вычисляет выход y и определяет, в каком диапазоне находится ошибка E.
Задания для ученика
- Вычислить z = w·x + b, затем y = σ(z).
- Определить E = ½(y − 0)² и указать правильный диапазон.
Зал 15 · Ошибка для сигмоидного AND
Для сигмоидного AND (w=(1,1), b=−1,5) и целевого ŷ=0 ученик сравнивает ошибку для входов (1,0) и (0,0), чтобы понять, какой пример даёт большие потери.
Задания для ученика
- Вычислить выход и ошибку для каждого входа.
- Ответить, какой из двух случаев даёт большую ошибку E.
Зал 16 · Спускаемся с горы
Визуальная аналогия: стоять на вершине горы и делать шаги вниз по склону. Вводится скорость обучения η, и ученик пробует разные значения, наблюдая, как они влияют на сходимость.
Задания для ученика
- Попробовать разные значения η (маленькое, среднее, большое).
- Наблюдать, как изменяется скорость и устойчивость спуска.
Зал 17 · Два минимума: скорость обучения
Функция потерь может иметь два локальных минимума. При малой η алгоритм застревает в первом; при большой η может перескакивать между ними. Выигрышная стратегия — начать с большой η и уменьшать.
Задания для ученика
- Исследовать траектории при малой, большой и переменной η.
- Определить, когда достигается глобальный минимум и почему.
Зал 18 · Обратное распространение в реальном времени
Анимированная демонстрация обучения сигмоидного нейрона: каждый шаг корректирует веса, распределяя ошибку по входам — чем активнее вход, тем больше изменение. Ученик двигает целевое значение и наблюдает веса в реальном времени.
Задания для ученика
- Двигать целевое значение и наблюдать, как пошагово изменяются веса.
Зал 19 · Насыщение нейронов
Различаются переменные x (вход), z (взвешенная сумма) и y (сигмоидный выход). Ученик изучает 4 типичных случая насыщения и тренирует нейрон 3 поколения в каждом, наблюдая, как производная сигмоиды замедляет обучение.
Задания для ученика
- Выбрать каждый из 4 случаев и обучить нейрон 3 поколения.
- Наблюдать за размером шага обновления в каждом случае.
Зал 20 · Один шаг градиентного спуска
Численный расчёт одного шага градиентного спуска при η = 1. Ученик вычисляет новое значение w₁ после применения правила обновления.
Задания для ученика
- Применить формулу w₁ ← w₁ − η·∂E/∂w₁ и вычислить новое w₁.
Зал 21 · Второй шаг и насыщение
Применяется второй шаг спуска, и ученик сравнивает его размер с первым. Объясняется, почему каждый шаг становится меньше по мере приближения нейрона к насыщенной зоне сигмоиды.
Задания для ученика
- Вычислить второй шаг градиентного спуска.
- Объяснить, почему шаг уменьшается по сравнению с первым.
Зал 22 · Расширяем скрытый слой
XOR не является линейно разделимым, как было установлено в зале 7. Решение — стек нейронов: архитектура 2 → 2 → 1 (2 входа, 2 скрытых нейрона, 1 выход). Каждый слой преобразует пространство до тех пор, пока оно не станет разделимым.
Задания для ученика
- Прочитать объяснение, почему XOR требует более одного слоя.
- Рассмотреть архитектуру 2-2-1 и её связи.
Зал 23 · Прямое распространение — вход (1, 0)
Сеть 2-2-1 обрабатывает вход в два этапа: скрытые нейроны вычисляют h₁ и h₂, а выходной нейрон их объединяет. Показана анимация прямого распространения для (1, 0), и ученик предсказывает результат для (0, 1).
Задания для ученика
- Проследить анимацию прямого распространения для входа (1, 0).
- Предсказать результат той же сети для входа (0, 1).
Зал 24 · Как учится сеть?
Концептуальный мост перед обратным распространением: до сих пор веса задавались вручную; на практике сеть настраивает их самостоятельно. Вводится идея автоматического обучения параметров.
Задания для ученика
- Прочитать переход от «ручных весов» к «обученным весам».
Зал 25 · Идея обратного распространения
Для обучения многослойной сети ошибка, вычисленная на выходе, распространяется назад через веса, распределяясь между скрытыми нейронами и доходя до входов. Ученик наблюдает анимацию потока ошибки.
Задания для ученика
- Посмотреть анимацию ошибки, распространяющейся назад слой за слоем.
Зал 26 · Регрессия и метод наименьших квадратов
Линейный нейрон (без функции активации), обученный на облаке точек, выполняет линейную регрессию. Ученик перетаскивает точки и нажимает «Обучить», наблюдая, как прямая постепенно смещается к оптимуму.
Задания для ученика
- Перетащить одну или несколько точек на графике.
- Нажать «Обучить» и наблюдать пошаговую сходимость прямой.
Зал 27 · Функции активации: какую и для чего?
Углублённое сравнение пяти функций активации (сигмоида, tanh, ReLU, Leaky ReLU, линейная) с общим ползунком. Под каждой панелью показано типичное применение в реальных сетях.
Задания для ученика
- Двигать общий ползунок и сравнивать кривые пяти функций.
- Прочитать типичное применение каждой функции и соотнести с её формой.
Зал 28 · Площадка для экспериментов
Зона свободного исследования: ученик выбирает набор данных, настраивает архитектуру сети (количество слоёв и нейронов) и обучает её, наблюдая карту предсказаний в реальном времени.
Задания для ученика
- Выбрать набор данных и архитектуру.
- Обучить сеть и наблюдать, как меняется карта предсказаний.
Зал 29 · Площадка 2.0: два скрытых слоя
Расширенная версия площадки с двумя скрытыми слоями: первый выявляет признаки, второй их объединяет. Ученик настраивает сеть, выбирает функцию активации и решает более сложные задачи.
Задания для ученика
- Настроить сеть с двумя скрытыми слоями.
- Выбрать функцию активации и обучить сеть на нелинейных наборах данных.
- Сравнить результаты с результатами одного скрытого слоя.
Залы для показа
Самые наглядные для показа и обсуждения в классе.