DeepSchool Digest⚡
По традиции собрали для вас материалы за июнь в одном посте:
✔️ How to: детектор лиц на Android — c Дмитрием Гординым показали, как запустить детектор лиц на Android, используя только C++, OpenCV и NCNN.
✔️ Данные важнее моделей? Подкаст «Под Капотом» c Дарьей Воронкиной — поговорили с Дарьей Воронкиной — тимлидом в медицинском стартапе OneCell.ai и спикером курса «Computer Vision Rocket».
✔️ Как LLM научились видеть? — рассказали, какие подходы научили LLM понимать изображения и 3D-сцены.
✔️ Кто за рулём?! Трансформер — разобрали одну из ключевых задач — планирование движения, где на первый план выходит архитектура-трансформер.
✔️ Как LLM научились слышать? — поговорили о добавлении в LLM новой модальности — аудио. От идеи представления звука мел-спектрограммой до генерации музыки по текстовому описанию.
🔥 Запустили канал, в котором каждую неделю меняется автор. Каждую неделю: новый человек, новая область и домен, новые истории, наблюдения и рекомендации. Заходите в @deepschool_underthehood
По традиции собрали для вас материалы за июнь в одном посте:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20❤17😍10👍2
RAG — от первой версии к рабочему решению
RAG кажется простой идеей: берём вопрос пользователя, находим нужную информацию в базе и просим LLM сгенерировать ответ. Однако на практике первая реализация часто разочаровывает. Почему так происходит?
В новой статье пошагово разбираем каждый компонент RAG-системы, объясняем типичные ошибки и даём план действий по улучшению ванильной версии:
— как разбивать данные на чанки
— что влияет на качество эмбеддингов и как выбрать модель
— зачем нужен реранкер и можно ли без него обойтись
— когда достаточно модели «из коробки» и как понять, нужно ли её дообучать
Статья будет особенно полезна новичкам, кто только начинает работать с RAG. Читайте по ссылке!
И подписывайтесь на DeepSchool
RAG кажется простой идеей: берём вопрос пользователя, находим нужную информацию в базе и просим LLM сгенерировать ответ. Однако на практике первая реализация часто разочаровывает. Почему так происходит?
В новой статье пошагово разбираем каждый компонент RAG-системы, объясняем типичные ошибки и даём план действий по улучшению ванильной версии:
— как разбивать данные на чанки
— что влияет на качество эмбеддингов и как выбрать модель
— зачем нужен реранкер и можно ли без него обойтись
— когда достаточно модели «из коробки» и как понять, нужно ли её дообучать
Статья будет особенно полезна новичкам, кто только начинает работать с RAG. Читайте по ссылке!
И подписывайтесь на DeepSchool
DeepSchool
RAG — от первой версии к рабочему решению - DeepSchool
Разбираем каждый компонент RAG-системы, объясняем типичные ошибки и даём план действий по улучшению ванильной версии
🔥27❤14👍14😁3
Соберите первый LLM-прототип за 30 минут
Для разработки приложений с LLM важно освоить три ключевых навыка: дообучение модели на своих данных, подключение внешней базы (RAG), подключение к LLM сторонних инструментов.
Мы подготовили мини-курс, в котором за 4 коротких лекции вы узнаете, как создать работающее LLM-based приложение с агентом и долговременной памятью.
На лекциях мы рассказали:
- что важно, чтобы собрать первое приложение с LLM
- как выгодно использовать open-source модели и чем они отличаются от коммерческих
- из каких частей состоит RAG и как его можно улучшить
- как собрать первого агента с памятью и базой данных за 30 минут
Это мини-курс для разработчиков и it-специалистов без опыта в DL. Но мы рекомендуем посмотреть его и ML/DL-инженерам, чтобы узнать, как быстро собрать проект с LLM.
Переходите в бот и смотрите лекции!
Для разработки приложений с LLM важно освоить три ключевых навыка: дообучение модели на своих данных, подключение внешней базы (RAG), подключение к LLM сторонних инструментов.
Мы подготовили мини-курс, в котором за 4 коротких лекции вы узнаете, как создать работающее LLM-based приложение с агентом и долговременной памятью.
На лекциях мы рассказали:
- что важно, чтобы собрать первое приложение с LLM
- как выгодно использовать open-source модели и чем они отличаются от коммерческих
- из каких частей состоит RAG и как его можно улучшить
- как собрать первого агента с памятью и базой данных за 30 минут
Это мини-курс для разработчиков и it-специалистов без опыта в DL. Но мы рекомендуем посмотреть его и ML/DL-инженерам, чтобы узнать, как быстро собрать проект с LLM.
Переходите в бот и смотрите лекции!
Telegram
Мини-курс по LLM
Бот онлайн-школы DeepSchool, в котором вы получите 4 лекции о том, как собрать первый проект с LLM и базой данных.
👍26🔥19❤10👏2😁2🐳2
4 подхода к созданию LLM-приложений
Если вы пытались собрать сервис на базе LLM: RAG для корпоративного репозитория, MVP для стартапа или бот для личных задач — наверняка столкнулись с тем, что всё работает не так, как задумывалось.
Модель галлюцинирует или отвечает в неподходящем стиле, промпты не помогают, RAG не находит релевантные данные, агенты игнорируют инструкции — и непонятно, надо ли дообучать LLM или стоит попробовать другую модель, но как выбрать?
В этот четверг мы проведём открытую лекцию, на которой расскажем об ошибках создания LLM-систем, как их решать и как собрать сервис, за который не стыдно.
На лекции вы узнаете про:
- 4 базовых блока LLM-проекта — из чего собираются 99% приложений
- когда достаточно open-source LLM, а когда не обойтись без коммерческой
- как навести порядок в RAG: чанки, поиск, антигаллюцинации
- как работают агенты и их реальные сценарии применения
- файнтюнинг: когда простого промпта недостаточно, как адаптировать модель под свою задачу и когда это нужно
А в конце представим наш новый курс — LLM Start, на котором инженеры без опыта в DL научатся создавать свои первые LLM-приложения под кураторством опытных инженеров.
Всем участникам лекции подарим скидки на обучение, поэтому не пропустите! 🎁
🙋♂️ Вести лекцию будет Илья Димов, Senior NLP-инженер, который занимается обучением Multimodal LLM.
🔔 Встречаемся в четверг, 24 июля, в 19:00 МСК.
Регистрируйтесь по ссылке и приходите в четверг вечером!
Если вы пытались собрать сервис на базе LLM: RAG для корпоративного репозитория, MVP для стартапа или бот для личных задач — наверняка столкнулись с тем, что всё работает не так, как задумывалось.
Модель галлюцинирует или отвечает в неподходящем стиле, промпты не помогают, RAG не находит релевантные данные, агенты игнорируют инструкции — и непонятно, надо ли дообучать LLM или стоит попробовать другую модель, но как выбрать?
В этот четверг мы проведём открытую лекцию, на которой расскажем об ошибках создания LLM-систем, как их решать и как собрать сервис, за который не стыдно.
На лекции вы узнаете про:
- 4 базовых блока LLM-проекта — из чего собираются 99% приложений
- когда достаточно open-source LLM, а когда не обойтись без коммерческой
- как навести порядок в RAG: чанки, поиск, антигаллюцинации
- как работают агенты и их реальные сценарии применения
- файнтюнинг: когда простого промпта недостаточно, как адаптировать модель под свою задачу и когда это нужно
А в конце представим наш новый курс — LLM Start, на котором инженеры без опыта в DL научатся создавать свои первые LLM-приложения под кураторством опытных инженеров.
Всем участникам лекции подарим скидки на обучение, поэтому не пропустите! 🎁
🙋♂️ Вести лекцию будет Илья Димов, Senior NLP-инженер, который занимается обучением Multimodal LLM.
🔔 Встречаемся в четверг, 24 июля, в 19:00 МСК.
Регистрируйтесь по ссылке и приходите в четверг вечером!
deepschool.ru
Как собрать LLM-приложение даже без опыта в deep learning
Открытая лекция для разработчиков и IT-специалистов без опыта в Deep Learning, кто хочет быстро собрать проект с LLM
👍14❤11🔥8⚡3😁2🥰1
3D CV, diffusion models и получение PhD | Подкаст «Под Капотом» c Олей Гребеньковой
Гость этого выпуска Оля Гребенькова. Оля получает PhD в LMU, где применяет генеративные модели к 3D-данным, а также спикер курса «3D-CV» в DeepSchool.
В этом выпуске мы обсуждаем:
- как попасть в лабораторию, где создали Stable Diffusion
- процесс исследований в лаборатории компьютерного зрения
- зачем заниматься нехайповыми темами в AI
- как не выгореть в академии
Смотрите выпуск по ссылке: https://youtu.be/YgLYSsQOE0E?si=lHQ2aKZDd-aiOAw_
Гость этого выпуска Оля Гребенькова. Оля получает PhD в LMU, где применяет генеративные модели к 3D-данным, а также спикер курса «3D-CV» в DeepSchool.
В этом выпуске мы обсуждаем:
- как попасть в лабораторию, где создали Stable Diffusion
- процесс исследований в лаборатории компьютерного зрения
- зачем заниматься нехайповыми темами в AI
- как не выгореть в академии
Смотрите выпуск по ссылке: https://youtu.be/YgLYSsQOE0E?si=lHQ2aKZDd-aiOAw_
YouTube
3D CV, diffusion models и получение PhD | Подкаст «Под Капотом» c Олей Гребеньковой
Гость этого выпуска Оля Гребенькова. Оля получает PhD в LMU, где применяет генеративные модели к 3D-данным, а также является спикером курса «3D-CV» в DeepSchool.
В этом выпуске мы обсуждаем:
- как попасть в лабораторию, где создали Stable Diffusion
- процесс…
В этом выпуске мы обсуждаем:
- как попасть в лабораторию, где создали Stable Diffusion
- процесс…
❤25🔥15❤🔥10👍2🥰1😁1🐳1🤝1
Что изучать, чтобы разобраться в LLM и сделать свой проект?
❌ Потратить много времени на изучение противоречащих гайдов и статей, в итоге собрать несколько баговых версий.
✅ Прийти учиться к нам на LLM Start, избежать ошибок и сделать свой первый работающий проект вместе с опытными DL-инженерами!
LLM Start — это программа для инженеров без опыта в Deep Learning, на которой вы за 8 недель:
- разберётесь в моделях и научитесь выбирать нужную под задачу
- сможете обучать модели на своих данных, чтобы модель отвечала в нужном стиле и разбиралась в вашей области
- научитесь создавать RAG-системы из готовых модулей
- построите рабочего LLM-агента для вашей задачи
Программу ведут практикующие DL-инженеры. Они отвечают на вопросы во время онлайн-лекций, QA-сессий и в чате, проверяют домашки и дают развёрнутый фидбек.
В конце курса вы напишете свой собственный LLM-сервис. Можно будет реализовать свою идею, выбрать проект из предложенных или принести его с работы. Спикеры курса сделают ревью, ответят на вопросы и помогут при его реализации.
🔔 Обучение начинается 30 июля. А до 29 июля вы можете присоединиться к обучению со скидкой 5%!
⚠️ Для старта вы должны быть знакомы с Linux и Python, уметь читать и писать функции и классы.
Переходите по ссылке, чтобы успеть записаться!
Если остались вопросы — напишите в нашу поддержку @deepschool_support
Присоединяйтесь к обучению и создавайте работающие LLM-продукты!
❌ Потратить много времени на изучение противоречащих гайдов и статей, в итоге собрать несколько баговых версий.
✅ Прийти учиться к нам на LLM Start, избежать ошибок и сделать свой первый работающий проект вместе с опытными DL-инженерами!
LLM Start — это программа для инженеров без опыта в Deep Learning, на которой вы за 8 недель:
- разберётесь в моделях и научитесь выбирать нужную под задачу
- сможете обучать модели на своих данных, чтобы модель отвечала в нужном стиле и разбиралась в вашей области
- научитесь создавать RAG-системы из готовых модулей
- построите рабочего LLM-агента для вашей задачи
Программу ведут практикующие DL-инженеры. Они отвечают на вопросы во время онлайн-лекций, QA-сессий и в чате, проверяют домашки и дают развёрнутый фидбек.
В конце курса вы напишете свой собственный LLM-сервис. Можно будет реализовать свою идею, выбрать проект из предложенных или принести его с работы. Спикеры курса сделают ревью, ответят на вопросы и помогут при его реализации.
🔔 Обучение начинается 30 июля. А до 29 июля вы можете присоединиться к обучению со скидкой 5%!
⚠️ Для старта вы должны быть знакомы с Linux и Python, уметь читать и писать функции и классы.
Переходите по ссылке, чтобы успеть записаться!
Если остались вопросы — напишите в нашу поддержку @deepschool_support
Присоединяйтесь к обучению и создавайте работающие LLM-продукты!
🔥13❤6😁4👍2
Ускоряем LLM на раз, два, три
Иметь личного ассистента на ноуте и запускать мощную модель локально — хорошо. Тратить огромные ресурсы на это — уже не очень.
В новой статье разбираем ключевые методы ускорения и обсуждаем, что действительно работает:
— фреймворки для инференса — какой выбрать, чтобы выжать максимум
— спекулятивное декодирование — почему это must-have для скорости
— квантование — как правильно применять и почему оно превратилось в «народный» метод ускорения
А ещё в статье мы вспоминаем базу — Flash-Attention, технологию, которая помогла развить популяризацию LLM в целом 🚀
Читайте по ссылке!
Иметь личного ассистента на ноуте и запускать мощную модель локально — хорошо. Тратить огромные ресурсы на это — уже не очень.
В новой статье разбираем ключевые методы ускорения и обсуждаем, что действительно работает:
— фреймворки для инференса — какой выбрать, чтобы выжать максимум
— спекулятивное декодирование — почему это must-have для скорости
— квантование — как правильно применять и почему оно превратилось в «народный» метод ускорения
А ещё в статье мы вспоминаем базу — Flash-Attention, технологию, которая помогла развить популяризацию LLM в целом 🚀
Читайте по ссылке!
DeepSchool
3 фишки для ускорения LLM - DeepSchool
Ускорение инференса LLM: фреймворки, квантование, оптимизация.
🔥16❤10🤝5😁1
model.onnx
1.1 KB
ONNX с секретом
Эта «модель» хранит в себе секрет: если в неё подать что-то очень определённое, то она ответит строчкой, которую ни с чем не перепутаешь.
Кто первый разгадает загадку модели и приложит секретную строчку в комментарии — получит пиццу 🍕
Ответы принимаются под этим постом до 3 августа 16:00 МСК. Потом мы выложим правильное решение.
Ждём ваши ответы в комментариях!👇
Эта «модель» хранит в себе секрет: если в неё подать что-то очень определённое, то она ответит строчкой, которую ни с чем не перепутаешь.
Кто первый разгадает загадку модели и приложит секретную строчку в комментарии — получит пиццу 🍕
Ответы принимаются под этим постом до 3 августа 16:00 МСК. Потом мы выложим правильное решение.
Ждём ваши ответы в комментариях!👇
🔥19👍8❤5🤔2
Решение загадки ONNX
Пришло время дать ответ на интерактив и наградить победителя!
Решение задачи мы уже опубликовали в нашем блоге. Читайте по ссылке!
Наш победитель, к которому отправится пицца:
🍕@zendeer
Спасибо всем, кто участвовал!
Пишите в комментариях, стоит ли проводить такие интерактивы чаще. 😄
Пришло время дать ответ на интерактив и наградить победителя!
Решение задачи мы уже опубликовали в нашем блоге. Читайте по ссылке!
Наш победитель, к которому отправится пицца:
🍕@zendeer
Спасибо всем, кто участвовал!
Пишите в комментариях, стоит ли проводить такие интерактивы чаще. 😄
DeepSchool
ONNX с секретом - DeepSchool
Решаем загадку модели ONNX
1🔥19❤8👏5😁1
Приходите на новый поток курса «Деплой DL-сервисов»
Многие DL-инженеры знают, как готовить модели: выбрать архитектуру, лосс, на какие гиперпараметры обращать внимание и т.д. Но малая часть использует инженерные практики при тренировке моделей или знает, как довести их до пользователей. Чтобы освоить эти инструменты, записывайтесь на «Деплой DL-сервисов»!
📆 Обучение начинается 28 августа!
А до 17 августа вы можете записаться в лист ожидания, чтобы раньше всех узнать подробности о курсе и получить скидку 17%
Изучайте подробности о программе и спикерах и записывайтесь на новый поток!
Многие DL-инженеры знают, как готовить модели: выбрать архитектуру, лосс, на какие гиперпараметры обращать внимание и т.д. Но малая часть использует инженерные практики при тренировке моделей или знает, как довести их до пользователей. Чтобы освоить эти инструменты, записывайтесь на «Деплой DL-сервисов»!
А до 17 августа вы можете записаться в лист ожидания, чтобы раньше всех узнать подробности о курсе и получить скидку 17%
Изучайте подробности о программе и спикерах и записывайтесь на новый поток!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9❤6👍4🤝2😁1
YOLO history. Part 8
В предыдущей статье мы рассказали о том, как использовать вспомогательные модели для улучшения качества основной.
В новой статье разберём устройство архитектур YOLOv8 и YOLOv11, а также отличия академического и индустриального подходов к созданию нового детектора.
Читайте новую статью по ссылке!
В предыдущей статье мы рассказали о том, как использовать вспомогательные модели для улучшения качества основной.
В новой статье разберём устройство архитектур YOLOv8 и YOLOv11, а также отличия академического и индустриального подходов к созданию нового детектора.
Читайте новую статью по ссылке!
DeepSchool
YOLO history. Part 8 - DeepSchool
Разбираем устройство архитектур YOLOv8 и YOLOv11, а также отличия академического и индустриального подходов к созданию нового детектора
1🔥33❤9👍9😁1
Диффузионные модели: пошаговый план изучения
Диффузионные модели, как и трансформеры, внесли весомый вклад в глубокое обучение и определили современное состояние ИИ. Они лежат в основе генерации изображений (Stable Diffusion, DALL·E), синтеза видео (Sora, Runway ML), дизайна молекул и даже управления роботами (Teslabot, 1X). Сегодня во многих областях от DL-инженеров всё чаще требуется глубинное понимание диффузионных моделей. Чтобы помочь детальнее разобраться в их устройстве, мы подготовили пошаговый план изучения, а также основные ресурсы.
План изучения
1. Основы теории вероятностей и статистики
Диффузионные модели, как и все генеративные модели, основаны на принципах теории вероятностей. Фундамент для их понимания — условные и маргинальные распределения, правила сложения и произведения, свойства нормального распределения, расстояние Кульбака-Лейблера, неравенство Йенсена.
Ресурсы: MML (главы 6.1-6.5); DLFC (глава 2); UDL (Appendix C), см. далее блок «Основные ресурсы».
2. Вариационные автоэнкодеры (VAE)
Диффузионные модели и VAE — вариационные подходы к генеративному моделированию. Оба используют evidence lower bound (ELBO) для получения обучаемой функции потерь. Поскольку VAE проще для понимания, рекомендуем изучить его перед переходом к диффузионным моделям.
Ресурсы: UDL (глава 17); DLFC (глава 19.2); ЯУМО (глава 8.2); Лекция Дмитрия Ветрова.
3. Denoising Diffusion Probabilistic Models (DDPM)
Переходим к изучению самих диффузионных моделей! Начните с основополагающей работы, которая впервые раскрыла потенциал диффузионных моделей, — DDPM.
Ресурсы: UDL (глава 18); DLFC (главы 20.1-20.3); ЯУМО (глава 8.5); Лекция Дмитрия Ветрова; Разбор статьи с кодом от Hugging Face.
4. Контролируемая генерация
Диффузионные модели выучивают полное распределение данных. Для направленной генерации используют classifier-free guidance и classifier guidance (они не меняют веса на этапе генерации, но требуют обучения модели с поддержкой таких режимов) или методы дообучения, как ControlNet и LoRA.
Ресурсы: DLFC (глава 20.4); ЯУМО (глава 8.5); CS492(D) (лекция 7).
5. Ускорение генерации
Основной недостаток DDPM — низкая скорость генерации. Для решения этой проблемы разработаны более эффективные методы: Denoising Diffusion Implicit Models (DDIM), стохастические диффузионные солверы и дистилляция.
Ресурсы: CS492(D) (лекции 5, 6, 14); Лекция Дмитрия Ветрова; Обзорная статья по быстрым диффузионным моделям.
6. Практическое программирование
Ничто не даёт такого понимания концепта в DL, как программирование. Поэтому для закрепления теории рекомендуем выполнить задания из курса CS492(D) и Diffusion Models Course от Hugging Face.
Основные ресурсы
- Mathematics for Machine Learning (MML)
- Understanding Deep Learning (UDL)
- Deep Learning Foundations and Concepts (DLFC)
- Учебник по машинному обучению от Яндекс (ЯУМО)
- Курс CS492(D): Diffusion Models and Their Applications
Автор: Шамиль Мамедов
Диффузионные модели, как и трансформеры, внесли весомый вклад в глубокое обучение и определили современное состояние ИИ. Они лежат в основе генерации изображений (Stable Diffusion, DALL·E), синтеза видео (Sora, Runway ML), дизайна молекул и даже управления роботами (Teslabot, 1X). Сегодня во многих областях от DL-инженеров всё чаще требуется глубинное понимание диффузионных моделей. Чтобы помочь детальнее разобраться в их устройстве, мы подготовили пошаговый план изучения, а также основные ресурсы.
План изучения
1. Основы теории вероятностей и статистики
Диффузионные модели, как и все генеративные модели, основаны на принципах теории вероятностей. Фундамент для их понимания — условные и маргинальные распределения, правила сложения и произведения, свойства нормального распределения, расстояние Кульбака-Лейблера, неравенство Йенсена.
Ресурсы: MML (главы 6.1-6.5); DLFC (глава 2); UDL (Appendix C), см. далее блок «Основные ресурсы».
2. Вариационные автоэнкодеры (VAE)
Диффузионные модели и VAE — вариационные подходы к генеративному моделированию. Оба используют evidence lower bound (ELBO) для получения обучаемой функции потерь. Поскольку VAE проще для понимания, рекомендуем изучить его перед переходом к диффузионным моделям.
Ресурсы: UDL (глава 17); DLFC (глава 19.2); ЯУМО (глава 8.2); Лекция Дмитрия Ветрова.
3. Denoising Diffusion Probabilistic Models (DDPM)
Переходим к изучению самих диффузионных моделей! Начните с основополагающей работы, которая впервые раскрыла потенциал диффузионных моделей, — DDPM.
Ресурсы: UDL (глава 18); DLFC (главы 20.1-20.3); ЯУМО (глава 8.5); Лекция Дмитрия Ветрова; Разбор статьи с кодом от Hugging Face.
4. Контролируемая генерация
Диффузионные модели выучивают полное распределение данных. Для направленной генерации используют classifier-free guidance и classifier guidance (они не меняют веса на этапе генерации, но требуют обучения модели с поддержкой таких режимов) или методы дообучения, как ControlNet и LoRA.
Ресурсы: DLFC (глава 20.4); ЯУМО (глава 8.5); CS492(D) (лекция 7).
5. Ускорение генерации
Основной недостаток DDPM — низкая скорость генерации. Для решения этой проблемы разработаны более эффективные методы: Denoising Diffusion Implicit Models (DDIM), стохастические диффузионные солверы и дистилляция.
Ресурсы: CS492(D) (лекции 5, 6, 14); Лекция Дмитрия Ветрова; Обзорная статья по быстрым диффузионным моделям.
6. Практическое программирование
Ничто не даёт такого понимания концепта в DL, как программирование. Поэтому для закрепления теории рекомендуем выполнить задания из курса CS492(D) и Diffusion Models Course от Hugging Face.
Основные ресурсы
- Mathematics for Machine Learning (MML)
- Understanding Deep Learning (UDL)
- Deep Learning Foundations and Concepts (DLFC)
- Учебник по машинному обучению от Яндекс (ЯУМО)
- Курс CS492(D): Diffusion Models and Their Applications
Автор: Шамиль Мамедов
🔥53❤17🤝5❤🔥3👍2😁1
VLM для детекции объектов на изображении
У традиционных детекторов есть серьёзное ограничение: набор классов определён обучающей выборкой (Closed-set Object Detection). В попытках обойти его, создали новый класс детекторов, Open Vocabulary Object Detection (OVOD), для детекции произвольных объектов. В новой статье мы привели обзор таких OVOD-моделей, основанных на Vision Language Model (VLM).
Из статьи вы узнаете:
- какие есть подходы для применения VLM к задаче Object Detection
- какие результаты сравнения моделей на бенчмарках для Closed-Set и Open Vocabulary детекций
- почему идеи CLIP всё ещё актуальны
Читайте новую статью по ссылке!
У традиционных детекторов есть серьёзное ограничение: набор классов определён обучающей выборкой (Closed-set Object Detection). В попытках обойти его, создали новый класс детекторов, Open Vocabulary Object Detection (OVOD), для детекции произвольных объектов. В новой статье мы привели обзор таких OVOD-моделей, основанных на Vision Language Model (VLM).
Из статьи вы узнаете:
- какие есть подходы для применения VLM к задаче Object Detection
- какие результаты сравнения моделей на бенчмарках для Closed-Set и Open Vocabulary детекций
- почему идеи CLIP всё ещё актуальны
Читайте новую статью по ссылке!
1🔥32❤12🤩10👍5😁3
DeepSchool Digest⚡
Все материалы за последний месяц — коротко!
✔️ RAG — от первой версии к рабочему решению — пошагово разобрали каждый компонент RAG-системы, объяснили типичные ошибки и дали план действий по улучшению ванильной версии.
✔️ 3D CV, diffusion models и получение PhD | Подкаст «Под Капотом» c Олей Гребеньковой — поговорили с Олей Гребеньковой, спикером курса «3D CV» в DeepSchool.
✔️ Ускоряем LLM на раз, два, три — разобрали ключевые методы ускорения и обсудили, что действительно работает.
✔️ YOLO history. Part 8 — рассмотрели устройство архитектур YOLOv8 и YOLOv11, а также отличия академического и индустриального подходов к созданию нового детектора.
✔️ Диффузионные модели: пошаговый план изучения — подготовили пошаговый план изучения диффузионных моделей и основные ресурсы.
✔️ VLM для детекции объектов на изображении — привели обзор OVOD-моделей, основанных на Vision Language Model (VLM).
Все материалы за последний месяц — коротко!
Please open Telegram to view this post
VIEW IN TELEGRAM
2❤24🔥11🤝5👍3😁1
Инструменты для деплоя DL-моделей
DL-инженеру уже недостаточно учить модели в Jupyter-тетрадках, чтобы соответствовать запросам индустрии. Важно уметь доводить их до пользователей. В этот четверг на открытой онлайн-лекции мы покажем, как выглядит путь модели после обучения!
На лекции вы узнаете:
- когда стоит использовать Jupyter-ноутбуки, а когда нет
- как подготовить репозиторий моделинга
- варианты конвертации модели
- как обернуть инференс в http-приложение
- чем помогает Model Serving
- как деплоят приложения и автоматизируют этот процесс
А в конце представим новый поток курса «Деплой DL-сервисов». Всем участникам лекции подарим скидки на обучение!🔥
🙋♂️Спикеры лекции:
— Дмитрий Раков — руководитель ML в НИИАС, делает perception-алгоритмы для беспилотных поездов
— Тимур Фатыхов — основатель DeepSchool, ex Lead CV Engineer KoronaPay
⏰Дата и время: 21 августа, чт, 18:00 МСК
Регистрируйтесь по ссылке и до встречи в четверг вечером!
DL-инженеру уже недостаточно учить модели в Jupyter-тетрадках, чтобы соответствовать запросам индустрии. Важно уметь доводить их до пользователей. В этот четверг на открытой онлайн-лекции мы покажем, как выглядит путь модели после обучения!
На лекции вы узнаете:
- когда стоит использовать Jupyter-ноутбуки, а когда нет
- как подготовить репозиторий моделинга
- варианты конвертации модели
- как обернуть инференс в http-приложение
- чем помогает Model Serving
- как деплоят приложения и автоматизируют этот процесс
А в конце представим новый поток курса «Деплой DL-сервисов». Всем участникам лекции подарим скидки на обучение!
🙋♂️Спикеры лекции:
— Дмитрий Раков — руководитель ML в НИИАС, делает perception-алгоритмы для беспилотных поездов
— Тимур Фатыхов — основатель DeepSchool, ex Lead CV Engineer KoronaPay
⏰Дата и время: 21 августа, чт, 18:00 МСК
Регистрируйтесь по ссылке и до встречи в четверг вечером!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11🔥11👍5😁3🤝1
Научитесь создавать и деплоить DL-сервисы
Вчера на лекции мы представили новый поток курса «Деплой DL-сервисов» и приглашаем на него вас!
На программе вы научитесь:
➖писать код для обучения моделей «по фэншую»
➖конвертировать модели в JIT и ONNX
➖версионировать данные, эксперименты и модели
➖автоматизировать рутину и быть уверенным в своём коде
➖писать веб-сервисы на FastAPI
➖собирать приложения с помощью Docker
➖сервить модели с NVIDIA Triton
➖тестировать веб-сервисы и подменять зависимости при помощи DI
➖настраивать CI/CD и деплоить веб-сервисы на удалённые машины «по кнопке»
➖мониторить веб-приложения при помощи Prometheus и Grafana
После каждой лекции вас ждет домашнее задание, а в конце курса — проект, где можно применить все полученные навыки.
На протяжении всего обучения вас будут поддерживать опытные инженеры: ревьюить ваш код, отвечать на вопросы во время лекций, на Q&A-сессиях и в чате.
🚀 Курс стартует 28 августа
⚡️До 27 августа для подписчиков DeepSchool действует скидка 5%!
Изучайте подробности о программе и спикерах и присоединяйтесь к обучению.
Если возникают вопросы, пишите нам в поддержку в Телеграм!
Вчера на лекции мы представили новый поток курса «Деплой DL-сервисов» и приглашаем на него вас!
На программе вы научитесь:
➖писать код для обучения моделей «по фэншую»
➖конвертировать модели в JIT и ONNX
➖версионировать данные, эксперименты и модели
➖автоматизировать рутину и быть уверенным в своём коде
➖писать веб-сервисы на FastAPI
➖собирать приложения с помощью Docker
➖сервить модели с NVIDIA Triton
➖тестировать веб-сервисы и подменять зависимости при помощи DI
➖настраивать CI/CD и деплоить веб-сервисы на удалённые машины «по кнопке»
➖мониторить веб-приложения при помощи Prometheus и Grafana
После каждой лекции вас ждет домашнее задание, а в конце курса — проект, где можно применить все полученные навыки.
На протяжении всего обучения вас будут поддерживать опытные инженеры: ревьюить ваш код, отвечать на вопросы во время лекций, на Q&A-сессиях и в чате.
🚀 Курс стартует 28 августа
⚡️До 27 августа для подписчиков DeepSchool действует скидка 5%!
Изучайте подробности о программе и спикерах и присоединяйтесь к обучению.
Если возникают вопросы, пишите нам в поддержку в Телеграм!
deepschool.ru
Научитесь создавать и деплоить DL-сервисы за 4 месяца — DeepSchool
🔥10👏7❤6😁3👍1
Как уменьшить время сборки и размер Docker-образов?
Docker — стандарт для контейнеризации при разработке и эксплуатации приложений. По мере роста проекта разработчики часто сталкиваются с проблемами увеличения времени сборки Docker-образов и их размера.
В новой статье рассматриваем методы, которые помогут уменьшить размеры образов и ускорить процесс их сборки🚀
Читайте статью по ссылке!
И приходите на курс «Деплой DL-сервисов», на котором вы наведёте порядок в репозиториях и внедрите лучшие практики в свои проекты!
Docker — стандарт для контейнеризации при разработке и эксплуатации приложений. По мере роста проекта разработчики часто сталкиваются с проблемами увеличения времени сборки Docker-образов и их размера.
В новой статье рассматриваем методы, которые помогут уменьшить размеры образов и ускорить процесс их сборки🚀
Читайте статью по ссылке!
И приходите на курс «Деплой DL-сервисов», на котором вы наведёте порядок в репозиториях и внедрите лучшие практики в свои проекты!
DeepSchool
Как уменьшить время сборки и размер Docker-образов? - DeepSchool
Рассматриваем методы, которые помогут уменьшить размеры и ускорить процесс сборки Docker-образов
🔥14❤10👏5❤🔥3⚡2👍1😁1
Краткая история механизма внимания в NLP
Механизм внимания — один из ключевых компонентов современных нейросетей, позволяющий моделям концентрироваться на важных фрагментах данных. Это повлияло на улучшения в разных областях: NLP, Robotics и GenAI. В новой статье рассказываем историю появления и развития механизма внимания👨🏼💻
Из этой статьи вы узнаете:
- какие были предпосылки появления механизма внимания
- какие основные принципы работы self-attention, cross-attention и multi-head self-attention
- и как работает позиционное кодирование и маскирование
Читайте статью по ссылке! 👈
Механизм внимания — один из ключевых компонентов современных нейросетей, позволяющий моделям концентрироваться на важных фрагментах данных. Это повлияло на улучшения в разных областях: NLP, Robotics и GenAI. В новой статье рассказываем историю появления и развития механизма внимания👨🏼💻
Из этой статьи вы узнаете:
- какие были предпосылки появления механизма внимания
- какие основные принципы работы self-attention, cross-attention и multi-head self-attention
- и как работает позиционное кодирование и маскирование
Читайте статью по ссылке! 👈
DeepSchool
Краткая история механизма внимания в NLP - DeepSchool
Рассказываем краткую историю появления и развития механизма внимания.
❤18🔥14👍6😁2👏1
Мы уже готовим новые материалы на эту тему, а пока давайте вспомним базу по ускорению. Для этого мы собрали подборку наших публикаций, из которых вы узнаете про основные принципы, познакомитесь с методами ускорения свёрточных нейросетей и LLM.
1. Введение в методы ускорения свёрточных нейронных сетей — рассказали, какие существуют методы ускорения и как они связаны, познакомились с NAS, прунингом, дистилляцией и квантизации ей.
2. В чём же считать: fp8, fp32 или fp16 — в каких типах данных крутить нейронку, чтобы сэкономить память и не потерять точность? В этой статье разобрали, как они работают, где их лучше применять, как учить, инференсить и с какими подводными камнями здесь можно столкнуться.
3. 3 фишки для ускорения LLM — рассмотрели 3 популярных метода ускорения LLM — инференс-фреймворки, спекулятивное декодирование и квантование.
4. Практическое применение ускорения — рассмотрели задачи ускорения, связанные с автопилотом, обработкой видео с дронов и беспилотными поездами.
5. 11 вопросов CTO про ускорение нейросетей — в этом видео Саша Гончаренко, СТО стартапа enot.ai и хэдлайнер нашего курса «Ускорение нейросетей», ответил на разные вопросы, связанные с ускорением нейросетей. Почему нельзя просто взять маленькую модель? Не скучно ли ускорять модели? А можно сделать NAS NMS на NPU?
Изучайте материалы и записывайтесь на новый поток, который стартует 30 сентября!
До 19 сентября вы можете записаться в лист ожидания. Для его участников действуют скидки до 20%!🔥
Please open Telegram to view this post
VIEW IN TELEGRAM
deepschool.ru
DeepSchool — Ускорение нейросетей
Поймёте теорию, узнаете про основные сложности и отточите знания на практике
❤17🔥12🤝5👍1😁1
Сервинг модели Grounding DINO с BentoML
Доставка ML-модели до конечного пользователя так же важна, как и её разработка. В одной из предыдущих статей мы уже рассказывали про model-serving при помощи фреймворков Trition и Torchserve.
В новой статье показали пример, как обернуть модель Grounding DINO при помощи другого популярного фреймворка — BentoML. 🍱
Читайте новую статью по ссылке!
Доставка ML-модели до конечного пользователя так же важна, как и её разработка. В одной из предыдущих статей мы уже рассказывали про model-serving при помощи фреймворков Trition и Torchserve.
В новой статье показали пример, как обернуть модель Grounding DINO при помощи другого популярного фреймворка — BentoML. 🍱
Читайте новую статью по ссылке!
DeepSchool
Сервинг модели Grounding DINO с BentoML - DeepSchool
Показываем, как обернуть модель Grounding DINO при помощи фреймворка — BentoML
❤14🔥12👍7😁2❤🔥1🤝1
Как OpenVINO оптимизирует memory-bound сценарии
OpenVINO — open-source фреймворк от Intel для оптимизации и эффективного инференса нейронных сетей. Он позволяет запускать модели на x86/ARM(!)/RISC-V(!) CPU, GPU и NPU, используя C++, Python и другие языки программирования. 🚀
Инференс модели — это выполнение графа операций, таких как add, mul, relu, softmax и т.д. Выполнение каждой операции сводится к запуску низкоуровневых программных блоков — kernels. Каждый kernel загружает данные из ОЗУ в регистры процессора, считает результат и пишет его обратно. Одна из проблем при выполнении графа операций — простой процессора в связи с тем, что данные не успевают «доехать» до регистров. Этот сценарий называется memory-bound. Его появление зависит от скорости процессора, пропускной способности памяти и типа выполняемой операции.
Естественное желание — минимизировать простой процессора. Для этого необходимо уменьшить количество обращений в память и выполнить больше операций с уже загруженными данными. Один из используемых подходов — fusing: объединение нескольких операций в один kernel. Для таких операций данные один раз загружаются в регистры, проходят цепочку вычислений и только потом выгружаются обратно в память. Это позволяет лучше загружать вычислительные блоки CPU за счёт уменьшения количества операций с памятью.
Поддерживать десятки (а то и сотни) вариантов fusing’а вручную очень сложно, поэтому был разработан Snippets — JIT-компилятор внутри OpenVINO. Он находит подграфы модели, которые можно исполнить эффективнее, и компилирует для них оптимизированные kernels. И это не ограничено заранее зашитыми паттернами: Snippets может собрать подграфы с произвольными комбинациями поддерживаемых операций. Выделенные подграфы Snippets переводит в более удобное для оптимизации представление, оптимизирует работу с памятью и циклами, распределяет данные по регистрам процессора, чтобы лишний раз не гонять их в память. 🦾
Одна из новых фишек Snippets — поддержка dynamic shapes. Часть оптимизаций зависит от размера входных данных. Можно перекомпилировать kernel под новые входы, но на практике это получается медленно. Решение следующее: shape-зависимые части (например, шаги указателей или размеры буферов) выносятся в отдельный
Итак, на практике мы имеем следующие результаты: ускорение трансформерных моделей, а именно — текстовые (BERT и не только) до 25%, Stable Diffusion до 40%, Whisper до 30%; а также экономию памяти в attention-блоках Stable Diffusion на 15-50%. 🏆
Полезные ссылки:
- Подробный разбор принципов работы Snippets
- Статья про поддержку динамических шейпов
Автор: Артур Панюков
OpenVINO — open-source фреймворк от Intel для оптимизации и эффективного инференса нейронных сетей. Он позволяет запускать модели на x86/ARM(!)/RISC-V(!) CPU, GPU и NPU, используя C++, Python и другие языки программирования. 🚀
Инференс модели — это выполнение графа операций, таких как add, mul, relu, softmax и т.д. Выполнение каждой операции сводится к запуску низкоуровневых программных блоков — kernels. Каждый kernel загружает данные из ОЗУ в регистры процессора, считает результат и пишет его обратно. Одна из проблем при выполнении графа операций — простой процессора в связи с тем, что данные не успевают «доехать» до регистров. Этот сценарий называется memory-bound. Его появление зависит от скорости процессора, пропускной способности памяти и типа выполняемой операции.
Естественное желание — минимизировать простой процессора. Для этого необходимо уменьшить количество обращений в память и выполнить больше операций с уже загруженными данными. Один из используемых подходов — fusing: объединение нескольких операций в один kernel. Для таких операций данные один раз загружаются в регистры, проходят цепочку вычислений и только потом выгружаются обратно в память. Это позволяет лучше загружать вычислительные блоки CPU за счёт уменьшения количества операций с памятью.
Поддерживать десятки (а то и сотни) вариантов fusing’а вручную очень сложно, поэтому был разработан Snippets — JIT-компилятор внутри OpenVINO. Он находит подграфы модели, которые можно исполнить эффективнее, и компилирует для них оптимизированные kernels. И это не ограничено заранее зашитыми паттернами: Snippets может собрать подграфы с произвольными комбинациями поддерживаемых операций. Выделенные подграфы Snippets переводит в более удобное для оптимизации представление, оптимизирует работу с памятью и циклами, распределяет данные по регистрам процессора, чтобы лишний раз не гонять их в память. 🦾
Одна из новых фишек Snippets — поддержка dynamic shapes. Часть оптимизаций зависит от размера входных данных. Можно перекомпилировать kernel под новые входы, но на практике это получается медленно. Решение следующее: shape-зависимые части (например, шаги указателей или размеры буферов) выносятся в отдельный
RuntimeConfig
. Он получает параметры и подставляет их в уже скомпилированный kernel. Добавляется небольшой оверхед, но зато теперь можно работать с текстами разной длины или изображениями различных размеров без потери производительности.Итак, на практике мы имеем следующие результаты: ускорение трансформерных моделей, а именно — текстовые (BERT и не только) до 25%, Stable Diffusion до 40%, Whisper до 30%; а также экономию памяти в attention-блоках Stable Diffusion на 15-50%. 🏆
На курсе «Ускорение нейросетей» мы подробно разбираем OpenVINO и другие инструменты для оптимизации инференса. Записывайтесь на новый поток, который стартует 30 сентября! Вы можете присоединиться со скидкой до 20%, если запишитесь в лист ожидания до 19 сентября.
Полезные ссылки:
- Подробный разбор принципов работы Snippets
- Статья про поддержку динамических шейпов
Автор: Артур Панюков
🔥23❤8🤝6👍2😁2