От уклона к обратному распространению ошибки: создаем крошечный автоградный двигатель
Векторная декомпозиция и подпространства: что читает и стирает матрица
Как нейроны стали линейной алгеброй
Что делает матрица весов и зачем нужна нелинейность
Как с нуля построить регрессионное дерево
Как построить классификатор на дереве решений с нуля
Негативное сэмплирование и контрастное обучение — от word2vec до CLIP
Эмбеддинги слов — word2vec и векторы, которые что-то значат
Float, bfloat и как биты определяют память модели
Подробный разбор: как собирать контекст для LLM-агента
Создаём Model Armor: многослойная фильтрация безопасности для LLM
Как защитить веб-приложение, которое вы не до конца понимаете
Разбираемся в CNN — свёртки, карты признаков и пулинг
Накладные расходы GPU: почему наша модель MNIST обучается быстрее на CPU
Как гиперпараметры влияют на обучение
Async/await для контейнеров: как Trigger.dev приостанавливает и возобновляет выполняющиеся задачи
Обучаем настоящую сеть на MNIST
Анатомия атаки на цепочку поставок, нацеленной на разработчика
Как учатся нейросети: обратное распространение и градиентный спуск
Как работает двоичная арифметика: целые в дополнительном коде и числа IEEE-754
Смещённый и дополнительный код: два способа представлять знаковые числа
Дейкстра был прав — рекурсия не должна быть сложной
Прокачайте навыки обратной разработки
Станьте профи в GIT, разобравшись в его архитектуре за 15 минут
Как Number в JavaScript и float в Python хранят числа
Несложное введение в компиляторы. Часть 1: лексический анализ и сканер
Сигналы в Angular: глубокое погружение для занятых разработчиков
Соединяя точки: куда могут привести тяжёлый труд и мечты
Как округлять двоичные числа
Простая математика в основе алгоритмов перевода между десятичной и двоичной системами