Чему вы научитесь
К концу курса у вас будет собственная символьная языковая модель на NumPy: она обучается предсказывать следующий символ, сохраняет параметры и продолжает текст. Вы сможете проследить путь от ID через эмбеддинги и причинное внимание к логитам, а затем — обратный путь градиента к весам.
Десять последовательных уроков развивают один проект. Сначала вы строите токенизатор и биграммную модель; её ранняя генерация использует заданные оценки. Затем разбираете устойчивые вероятности и функцию потерь, реализуете ручное обучение и собственный autograd. После этого добавляете эмбеддинги, контекстную MLP, причинное внимание и маленький трансформер с одной головой и одним блоком.
Каждый урок содержит подробную теорию с числовыми примерами и формами массивов, разбор кода и учебные PNG. Практика включает задачу с автопроверкой и контрольный вопрос. ZIP текущего состояния помогает сверить самостоятельную работу и восстановить проект. Теория размещена в одном шаге урока; существующие задания и их баллы сохранены.
Курс рассчитан на уверенный Python, NumPy и базовую линейную алгебру. «С нуля» означает реализацию механизмов из операций NumPy, без PyTorch и готового автоматического дифференцирования. Это не начальный курс программирования. Проект работает локально на CPU, без API-ключей и внешних сервисов; NumPy и pytest устанавливаются в окружение Python 3.11–3.13.
Ориентир нагрузки — около 30 часов, по 6–8 часов в неделю в течение 4–5 недель. Темп зависит от опыта отладки массивов. Маленький контекст и корпус позволяют изучить вычисления; качество промышленного чат-бота и связность каждого продолжения не обещаются. Падение обучающей ошибки само по себе не доказывает качество на новых данных.