Data Portal | DS & ML
10.5K subscribers
695 photos
160 videos
9 files
890 links
Всё самое интересное из мира Data Science и машинного обучения

Cотрудничество: @devmangx

Автор: @ScienceLLM

№ 8204670314
Download Telegram
«Тригонометрия» — бесплатный открытый учебник по тригонометрии объёмом более 1000 страниц, который охватывает тему от основ до продвинутых разделов.

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

В более поздних главах также разбираются векторы, скалярное произведение, полярные координаты и комплексные числа в полярной форме.

Каждый раздел содержит множество упражнений, поэтому учебник особенно полезен для закрепления теории на практике по мере прохождения материала.

https://louis.pressbooks.pub/trigonometry/
Нельзя просто выбрать модель и видеокарту и считать, что на этом всё.

Нужно выбрать формат файлов и путь выполнения ядер. Уже от них зависит, как именно будет работать GPU.

Начнём с самого цикла.

Текст превращается в токены. Токены проходят через Transformer. Механизм внимания определяет, какие предыдущие токены важны. Среда выполнения хранит KV-кэш, чтобы модель не пересчитывала весь разговор заново при каждом новом токене. Затем выбирается следующий токен, и цикл повторяется.

Модель не пишет весь ответ целиком за один проход. Она генерирует его по одному токену.

У этого цикла есть две фазы, и это разные задачи.

Prefill читает промпт и создаёт первый KV-кэш. Эта стадия сильно упирается в вычисления. Именно она во многом отвечает за паузу перед первым словом.

Decode генерирует ответ по одному токену. На этой стадии постоянно перечитываются веса и кэш, поэтому она сильнее зависит от пропускной способности памяти. Поэтому RTX PRO 6000 с 1,8 ТБ/с может заметно обгонять DGX Spark с 273 ГБ/с. Именно это ощущается как скорость «печатания».

Длинные промпты сильнее бьют по prefill. Длинные ответы — по decode. Длинные диалоги нагружают обе стадии, потому что растёт рабочая память.

Движок инференса — это не сама модель.

Это диспетчер трафика, менеджер памяти, планировщик, диспетчер ядер, система учёта кэша и API.

Он загружает веса, токенизирует вход, запускает прямой проход, выбирает следующий токен, хранит KV-кэш и отдаёт результат потоком.

Серьёзные движки ещё и выбирают ядра.

Ядро — это не «модель». Это конкретная тензорная программа: формы, раскладки, типы данных и то, какие именно операции разрешено выполнять железу.

На бумаге математика может быть одинаковой. Ядро — разное.

Формат файла тоже критически важен. Он определяет, что вообще можно загрузить, как это можно квантовать и насколько быстро всё будет работать.

Квантование — это не один переключатель.

Хранить веса в 4 битах — не то же самое, что выполнять вычисления в 4 битах. Квантование весов уменьшает размер модели. Активный контекст — отдельная история. Метка Q4 сама по себе ничего универсального не гарантирует.

Правильный формат — тот, под который в вашем движке есть оптимизированные ядра.

Именно из-за непонимания этого люди покупают RTX 5090, скачивают что-то с пометкой NVFP4 и всё равно не получают ожидаемую производительность.

Вот конкретный пример.

Я запустил Qwen 3.8 27B на RTX 5090. Два файла. Одна и та же модель. Та же видеокарта. В обеих папках написано NVFP4.

Но одна версия действительно выполняет 4-битную математику. Веса в 4 битах. Активации тоже в 4 битах. Матричные блоки могут умножать 4-битные значения на 4-битные.

Другая версия лишь хранит веса в 4 битах. Затем ядро распаковывает их и выполняет вычисления уже в 16 битах.

Это другой путь выполнения ядер.

RTX 5090 сама это не выбирала. Это определил чекпойнт. В особенности то, были ли активации тоже 4-битными.

Если нет, то корректного умножения 4 бит × 4 бита просто не существует. Движок тихо откатывается на другой вариант. Файл при этом всё равно нормально загружается.

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

Это не одно и то же.

Поэтому prefill и decode тоже не получают одинаковый выигрыш.

Во время prefill токенов достаточно много, чтобы хорошо загрузить матричные блоки. Нативная 4-битная математика здесь действительно может дать заметный прирост.

Decode всё ещё идёт по весам и кэшу токен за токеном. Если рабочее состояние не было переведено в 4 бита, то и полноценного выигрыша от 4-битных вычислений на этой стадии не будет. Просто меняется узкое место.

Не тестируйте просто «модель».

Тестируйте весь стек, который реально собираетесь использовать. И отдельно измеряйте prefill и decode.
Если хочешь стать дата-инженером, изучи эти концепции: https://de-concepts.ssp.sh

Дальше можно пройтись по практическим навыкам — от команд Linux, контейнеризации и языков программирования до оркестрации в Kubernetes.

Здесь собран набор основных инструментов, с которыми работает дата-инженер в 2026 году: https://toolkit.ssp.sh

А если хочется сразу перейти к практике, есть подборка из более чем 80 проектов с открытым исходным кодом, выходивших с 2022 года по сегодняшний день: https://oss-de-projects.ssp.sh

И если этого мало, есть Data Engineering Vault — больше 1000 связанных заметок по дата-инженерии, полностью бесплатно:: https://vault.ssp.sh
DeepSeek выложила в открытый доступ библиотеку, которая ускоряет вычисления на GPU, лежащие в основе ИИ-моделей.

Она называется DeepGEMM.

Библиотека оптимизирует матричные операции, на которых работают большие языковые модели, и позволяет эффективнее использовать NVIDIA Hopper и Blackwell.

Поддерживаются FP8, FP4 и BF16. Есть оптимизации для моделей с архитектурой Mixture-of-Experts, совмещение обмена данными между GPU с вычислениями и компиляция ядер прямо во время выполнения, без отдельной сборки CUDA при установке.

По данным DeepSeek, DeepGEMM на ряде размеров матриц показывает производительность на уровне или выше специализированных библиотек, вручную оптимизированных экспертами.

https://github.com/deepseek-ai/DeepGEMM#interfaces
Гайд по RL от Unsloth.

В нём разбирается обучение с подкреплением и то, как обучить собственную reasoning-модель в стиле DeepSeek-R1 с помощью Unsloth и GRPO.

Полный материал — от базового уровня до продвинутого.

Ссылка: https://unsloth.ai/docs/get-started/reinforcement-learning-rl-guide
Лекция 8 курса по машинному обучению на графах посвящена графовым свёрточным сетям.

В лекции разбираются свёртки на сетках и графах, сопоставление с общим шаблоном, спектральная свёртка, преобразование Фурье, полиномы Чебышёва, изотропная и анизотропная агрегация, а также архитектуры ChebNet, GCN, GAT и GatedGCN.

https://storage.googleapis.com/xavierbresson/lectures/GML/lecture08_graph_convolutional_networks.pdf
«Как обучить нейросеть» — краткий конспект лекций курса MIT по глубокому обучению за 2024 год. Он посвящён одному из фундаментальных вопросов нейросетей — как модель обучает свои веса.

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

Думаю, это интересный материал для тех, кто хочет выйти за рамки общего интуитивного представления о нейросетях и начать разбираться в математике, на которой основано их обучение.

https://ocw.mit.edu/courses/6-7960-deep-learning-fall-2024/mit6_7960_f24_lec2.pdf
«Изучение математики. Почему память, практика и техника важнее таланта»

Чтобы освоить математику, необходимо запомнить большой объём информации, правил, способов упрощения и приёмов решения задач. Другого пути нет. Теория полезна, но в меру.

Это как изучение языка. Если слишком сосредоточиться на грамматике, никогда не научишься свободно на нём говорить.

https://algebrica.org/learning-mathematics/
Modern Robotics: Mechanics, Planning, and Control.

Сохраните на потом.

Это полноценный учебник по робототехнике уровня магистратуры от Кевина Линча и Фрэнка Парка, изданный Cambridge University Press.

Внутри:

- конфигурационные пространства
- кинематика
- динамика
- генерация траекторий
- планирование движения
- управление роботами

По сути, это современная математическая база того, как роботы двигаются и взаимодействуют с окружающим миром.

https://hades.mech.northwestern.edu/images/7/7f/MR.pdf
This media is not supported in your browser
VIEW IN TELEGRAM
Нашёл хороший ресурс для интерактивного изучения машинного обучения и ИИ — VizLearn.

Можно поэкспериментировать с градиентным спуском, SVM, PCA, методом Байеса, токенизацией BPE, Q/K/V, KV-кэшем, квантизацией и многим другим. Меняешь входные данные и видишь, как меняются сами вычисления.

Бесплатно, без регистрации.

https://vizlearn.in
Reasoning from Scratch, шестой выпуск. Себастьян Рашка

Введение и практическая реализация обучения с подкреплением с проверяемыми наградами RLVR и Group Relative Policy Optimization GRPO.

00:00 — Введение
01:54 — Чем reasoning-модель отличается от обычной
04:25 — Цепочки рассуждений и возможности модели
08:29 — Награды за точность и формат ответа
11:34 — «Aha-моменты» и обучение DeepSeek-R1
14:41 — Глубина рассуждений и длина ответа
18:38 — RLHF и RLVR
23:04 — GRPO против PPO
26:40 — Объяснение GRPO на аналогии с готовкой
31:43 — KL-компонент и упрощённый GRPO
35:04 — Загрузка предобученной модели
36:07 — Загрузка обучающих данных MATH
39:26 — Генерация ответов модели
46:30 — Расчёт проверяемых наград
49:55 — Расчёт преимуществ
51:54 — Логарифмические вероятности токенов и последовательностей
55:29 — Реализация логарифмических вероятностей последовательностей
57:37 — Исправление ошибки режима инференса
1:02:24 — Расчёт функции потерь GRPO
1:04:37 — Собираем один шаг GRPO целиком
1:09:19 — Цикл обучения GRPO
1:12:57 — Настройки обучения, логирование и чекпоинты
1:17:24 — Запуск обучения и разбор результатов
1:19:28 — Загрузка и оценка чекпоинтов
1:22:33 — Результаты MATH-500 и стабильность обучения
1:24:05 — Требования к памяти и следующие шаги

https://www.youtube.com/watch?v=237Hf7Q3lgg