Обучи нейросеть, играя

← Назад к материалам
Старшая школа 7 Залы ИИ Нейронные сети Старшая школа

Дидактические цели

Как автономный космический корабль «видит» окружающий мир и как он учится уклоняться от опасности без явно запрограммированных правил? Этот лаб для старших классов рассматривает обучение с учителем с противоположной стороны по сравнению с лабом «Нейронные сети»: вместо того чтобы вручную задавать веса, ученик проектирует восприятие агента, а затем обучает его игрой. За 7 коротких залов путь проходит от вопроса «какая информация нужна агенту?» до наблюдения за нейронной сетью, которая самостоятельно управляет кораблём благодаря примерам, которые собрал сам ученик.

Чему учит лаб

  • Ставится проблема восприятия: кораблю, который собирает звёзды и уклоняется от бомб, нужно превратить окружение в числа.
  • Ученик проектирует направленные датчики: пространство вокруг корабля делится на угловые секторы, каждый из которых несёт значение близости к ближайшему объекту.
  • Обнаруживается необходимость сжатия информации: сырое расстояние (до ~672 возможных значений) квантуется до небольшой шкалы (например, уровни 0–5) с помощью функции сжатия (логарифмической или линейной).
  • Исследуются компромиссы проектирования: больше датчиков и уровней дают больше точности, но также резко увеличивают число примеров, нужных для обучения — ученик настраивает оба параметра и наблюдает за изменением расчётного времени обучения.
  • Понимается цикл обучения с учителем через подражание: каждое действие (ученика или эвристики) порождает пару (входы датчиков → выбранное направление), которая накапливается как обучающий пример.
  • Наблюдается периодическое переобучение: через определённое число накопленных примеров сеть заново подстраивает веса, используя все доступные данные.
  • Сравнивается обучение игрой с обучением через автоматического учителя: простая эвристика (искать звёзды, избегать бомб) может заменить ученика как источник примеров, показывая, что важно не то, кто учит, а качество и количество примеров.

Ключевые математические идеи

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

Содержание по залам

Зал 1 · Как корабль видит мир?

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

Задания для ученика

  • Рассмотреть сцену и подумать, какая информация нужна кораблю.
  • Выбрать способ восприятия, наиболее подходящий для нейронной сети.

Зал 2 · Направленные датчики

Ученик перетаскивает корабль по интерактивному полю и в реальном времени видит, как цветные секторы (жёлтые для звёзд, красные для бомб) меняют интенсивность в зависимости от близости объекта в этом угловом секторе. Вопрос с выбором ответа закрепляет понятие.

Задания для ученика

  • Перетащить корабль и понаблюдать, как меняются секторы при приближении к звёздам и бомбам.
  • Ответить, что представляет интенсивность каждого сектора датчика.

Зал 3 · Шкала расстояний

График с двумя кривыми (логарифмической и линейной) и ползунок расстояния позволяют сравнить, как каждая функция переводит пиксели в уровень 0–5. Ученик выбирает, какая функция лучше подходит для датчиков корабля.

Задания для ученика

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

Зал 4 · Настрой свои датчики

Ползунок уровней (2–640) и селектор числа датчиков (4, 6, 8, 12) в реальном времени показывают возможные комбинации и оценочное минимальное время игры. Выбор сохраняется и переносится в игру зала 6.

Задания для ученика

  • Исследовать, как уровни и число датчиков влияют на время обучения.
  • Выбрать окончательное число датчиков и подтвердить выбор.

Зал 5 · Как учится сеть

Анимированная схема нейронной сети (входы → скрытый слой → выход) и четыре текстовых шага объясняют цикл: датчики → вычисление → движение игрока → обучающий пример → переобучение каждые 100 примеров.

Задания для ученика

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

Зал 6 · Обучи свою сеть!

Полная игра с тремя фазами: Обучение (ученик играет и учит сеть), Наблюдение (мышь управляет позицией, а корабль показывает, куда пошла бы сеть), Игра (сеть управляет самостоятельно). Число датчиков берётся из зала 4.

Задания для ученика

  • Играть в режиме Обучения, пока не накопится достаточно примеров, собирая звёзды.
  • Переключиться в режим Наблюдения и проверить, что сеть указывает на звёзды.
  • Включить режим Игры и посмотреть, правильно ли сеть управляет кораблём.

Зал 7 · Эвристика как учитель

В предыдущем зале примеры генерировал ученик, играя; здесь его заменяет простая эвристика (искать ближайшую звезду, избегать бомб), которая играет сама, собирает данные и обучает сеть без участия человека. Ученик нажимает «Начать» и наблюдает, как качество «учителя» — а не то, кто он, — определяет качество обучения.

Задания для ученика

  • Нажать «Начать» и понаблюдать, как эвристика играет и обучает сеть самостоятельно.
  • Сравнить результат с ручным обучением из зала 6 и обсудить, что определяет качество обученной сети.

Залы для показа

Самые наглядные для показа и обсуждения в классе.

★
Зал 3 · Шкала расстояний — Визуальное сравнение логарифмической и линейной кривой создаёт ключевой момент "ага!" лаборатории. Идеально для проекции и обсуждения всем классом.
★
Зал 4 · Настрой свои датчики — Передвижение ползунка уровней с 640 до 5 и наблюдение за падением времени с "невозможно" до "7 минут" производит сильное впечатление. Попросить разных учеников попробовать крайние комбинации.
★
Зал 6 · Обучи свою сеть! — Момент, когда сеть навигирует самостоятельно после того, как ученики её обучили, — кульминация лаборатории. Проецировать в режиме Игры после совместного обучения всем классом.