# AI Learning — полный цикл машинного обучения Практическая программа на **43 недели по 8–10 часов в неделю**: от математики и классических алгоритмов до нейросетей, компьютерного зрения, обработки звука, fine-tuning LLM, API, Docker и мониторинга. Программа построена не вокруг запоминания библиотек. Для каждого важного метода нужно ответить на четыре вопроса: 1. Какую задачу и допущения он имеет? 2. Как устроены loss, обучение и регуляризация? 3. По каким метрикам и схеме валидации его сравнивать? 4. Как довести результат до воспроизводимого сервиса? ## Ожидаемый результат После курса вы сможете: - исследовать, очищать и визуализировать данные; - выбирать между линейными моделями, деревьями, бустингом и нейросетями; - реализовать GD/SGD, логистическую регрессию, дерево, MLP и attention с нуля; - понимать backpropagation, функции активации, L1/L2 и оптимизаторы; - обучать CNN, применять transfer learning и fine-tuning; - транскрибировать речь и извлекать ритмическую структуру музыки; - создавать по аудио проверяемый черновик карты для osu!; - собрать генератор изображения рукописного текста; - обучить маленькую LM и адаптировать open-weight LLM через LoRA; - упаковать модель в API/Docker и организовать мониторинг. ## Roadmap | Недели | Модуль | Результат | |---:|---|---| | 1 | 00. Среда и Git | Воспроизводимый проект | | 2–3 | 01. Python и NumPy | Векторные вычисления и тестируемый код | | 4–5 | 02. Линейная алгебра | Геометрия моделей, SVD и PCA | | 6–7 | 03. Вероятность и статистика | Неопределённость и эксперименты | | 8–9 | 04. Оптимизация | GD/SGD, градиенты, L1/L2 | | 10–11 | 05. Данные и визуализация | EDA и preprocessing без leakage | | 12–14 | 06. Классический ML | Выбор моделей, метрик и validation | | 15–16 | 07. Деревья и бустинг | Ансамбли и интерпретация | | 17 | 08. Unsupervised learning | Кластеры, размерность, аномалии | | 18–20 | 09. Нейросети | MLP, backprop и PyTorch | | 21–23 | 10. Computer Vision | CNN и transfer learning | | 24–26 | 11. Звук, речь и музыка | Транскрибация и черновик карты osu! | | 27–29 | 12. Рукописный текст | Условная генерация изображений | | 30–32 | 13. NLP и Transformers | Attention и маленькая LM | | 33–35 | 14. Fine-tuning LLM | LoRA, evaluation и RAG | | 36–38 | 15. ML Engineering | Пакет, API и Docker | | 39–40 | 16. MLOps | Tracking, drift и retraining | | 41–43 | 17. Capstone | Full-cycle проект в портфолио | ## Как заниматься 1. Откройте [`THEORY_INDEX.md`](THEORY_INDEX.md) и прочитайте офлайн конспекты выбранного модуля по порядку. Незнакомые термины ищите в [`GLOSSARY.md`](GLOSSARY.md). 2. Затем откройте `modules/<модуль>/README.md` и переходите к практике. 3. Выполняйте задания из `assignments/` в собственной папке `solution/`. 4. Не смотрите готовую реализацию до первой самостоятельной попытки. 5. Отдельно отметьте чтение теории и сдачу задания в [`PROGRESS.md`](PROGRESS.md). 6. Напишите в чат: **«Проверь модуль XX, задание YY»**. Я проверю код, корректность эксперимента, выводы и критерии приёмки. Данные не нужно искать вслепую: рекомендуемые наборы, способы загрузки и случаи, когда данные генерируются самостоятельно, перечислены в `DATASETS.md`. ## Режим недели - 2–3 часа: теория и самостоятельные выводы формул; - 4–5 часов: код и эксперимент; - 1 час: тесты, графики и анализ ошибок; - 1 час: отчёт и исправления после review. ## Важное уточнение о L1/L2/L3 L1 и L2 — нормы и типичные штрафы регуляризации. «L3» математически существует, но не является стандартным третьим обязательным методом регуляризации в ML. В курсе рассматриваются L1, L2, Elastic Net, dropout, early stopping и data augmentation — с объяснением, когда каждый подход уместен. ## Структура - [`THEORY_INDEX.md`](THEORY_INDEX.md) — маршрут по всем конспектам и их предпосылкам; - [`GLOSSARY.md`](GLOSSARY.md) — сквозные определения и ссылки на глоссарии модулей; - `modules/` — конспекты, цели и практические задания; - `common/` — фундаментальные главы, обозначения, шаблоны и чек-листы; - `requirements/` — группы зависимостей; - `DATASETS.md` — откуда брать данные для каждого этапа; - [`PROGRESS.md`](PROGRESS.md) — раздельный учёт теории и практики; - `SETUP.md` — первый запуск на Windows. Начните с `SETUP.md`, затем читайте теорию модуля 00 через [`THEORY_INDEX.md`](THEORY_INDEX.md) и выполняйте его практику.