Мини-GPT на NumPy: нейросеть своими руками

Постройте символьную языковую модель на NumPy: токенизатор, биграммы, ручные градиенты, свой autograd, эмбеддинги, причинное внимание и мини-трансформер. Обучение и генерация на CPU без PyTorch.
Продвинутый уровень
Около 30 часов: 6–8 ч/неделю, 4–5 недель; зависит от опыта.

О курсе

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

Десять последовательных уроков развивают один проект. Сначала вы строите токенизатор и биграммную модель; её ранняя генерация использует заданные оценки. Затем разбираете устойчивые вероятности и функцию потерь, реализуете ручное обучение и собственный autograd. После этого добавляете эмбеддинги, контекстную MLP, причинное внимание и маленький трансформер с одной головой и одним блоком.

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

Курс рассчитан на уверенный Python, NumPy и базовую линейную алгебру. «С нуля» означает реализацию механизмов из операций NumPy, без PyTorch и готового автоматического дифференцирования. Это не начальный курс программирования. Проект работает локально на CPU, без API-ключей и внешних сервисов; NumPy и pytest устанавливаются в окружение Python 3.11–3.13.

Ориентир нагрузки — около 30 часов, по 6–8 часов в неделю в течение 4–5 недель. Темп зависит от опыта отладки массивов. Маленький контекст и корпус позволяют изучить вычисления; качество промышленного чат-бота и связность каждого продолжения не обещаются. Падение обучающей ошибки само по себе не доказывает качество на новых данных.

Для кого этот курс

Python-разработчики, которые хотят понять языковую модель на уровне массивов и градиентов; студенты с базовой линейной алгеброй; практикующие ML-разработчики, желающие написать небольшой обратный проход самостоятельно.

Начальные требования

Уверенный Python 3.11–3.13: функции, классы и pytest. NumPy: массивы, индексация, reshape, broadcasting и матричное умножение @. Базовая линейная алгебра; смысл производной и правила цепочки разбирается на числовых примерах.

Программа курса

В курс входят

  • 10 уроков
  • 10 тестов
загружаем...

Наши преподаватели

Сколько стоит обучение

Бесплатно

Расскажите о курсе друзьям

Бесплатно