DeepSchool @deep_school Channel on Telegram

DeepSchool

@deep_school


Это канал школы deepschool.ru. Здесь мы будем:
- напоминать вам теорию ML/DL в виде коротких постов,
- задавать вопросы с собеседований,
- рассказывать про полезные фреймворки
- и делиться советами, которые помогут вам в работе.

@deepschool_support

DeepSchool (Russian)

DeepSchool - это канал школы deepschool.ru, предназначенный для всех, кто интересуется машинным обучением и глубоким обучением. Здесь вы найдете напоминания о теории ML/DL в виде коротких постов, вопросы с собеседований, информацию о полезных фреймворках, а также советы, которые помогут вам в работе. Присоединяйтесь к нам, чтобы расширить свои знания и навыки в области искусственного интеллекта и стать успешным специалистом в этой области! @deepschool_support

DeepSchool

18 Jan, 13:35


🎞 Как ускоряют нейросети?

Ускорение нейросетей — важный навык в DL-индустрии: растёт потребность инференса нейросетей на смартфонах и edge-устройствах, а DL-сервисов становится всё больше и нагрузка на эти сервисы растёт. А запустить LLM «как есть», никак не оптимизировав — слишком дорогое удовольствие. Ну и «зачем платить за то, что в 5 раз медленнее, если можно платить за то, что в 10 раз быстрее» 😉

В новом видео Саша Гончаренко, СТО стартапа enot.ai и хэдлайнер нашего курса «Ускорение нейросетей», расскажет «на пальцах» про основные подходы в ускорении нейросетей, их плюсы и минусы, а также немного затронет особенности ускорения LLM.

Смотрите видео на Youtube!

DeepSchool

15 Jan, 14:30


Детекторы текста на основе трансформеров. Часть 2

Сегодня мы продолжим знакомство с детекторами текста на базе трансформеров.

Такие детекторы совмещают возможности сегментационных и регрессионных моделей, что позволяет повысить точность детектирования при сохранении высокой скорости работы. Однако каждый подход имеет свои недостатки: сегментационные сети обеспечивают высокую точность при сложных формах текста, но их скорости недостаточно, тогда как регрессионные модели быстры, но менее точны для сложных случаев. SRFormer — пример современной архитектуры, которая стремится объединить сильные стороны двух методов.

Также в статье мы рассмотрим MixNet, лидирующий на ключевых бенчмарках за счёт своей уникальной архитектуры. Его бэкбон FSNet перемешивает признаки высокого и низкого разрешения. Это помогает надёжнее детектировать мелкие объекты. Кроме того, трансформерный блок (CTBlock) улучшает выделение текстов, расположенных близко друг к другу, с помощью прогнозирования центральной линии текста.

Читайте новую статью по ссылке, чтобы познакомиться ближе с данными детекторами текста на базе трансформеров: https://deepschool-pro.notion.site/2-e3a3419463b94ae0a81545109799ecde?pvs=4

DeepSchool

13 Jan, 10:40


В чём же считать: fp8, fp32 или fp16

В каких типах данных крутить нейронку, чтобы и память сэкономить, и точность не потерять? Float16, bfloat16, TF32, FP8 — за этими названиями скрываются разные способы оптимизации работы с числами меньшей разрядности.

В новой статье мы разберёмся, как они работают, где их лучше применять, как учить и как инференсить. А ещё — с какими подводными камнями здесь можно столкнуться. Читайте новую статью по ссылке, чтобы ответить на эти вопросы: https://deepschool-pro.notion.site/int-8-fp32-fp16-f8041ec0b26f4627acae49f0ccf1975f?pvs=4

DeepSchool

09 Jan, 11:05


Подкаст «Под Капотом». CV в медицине

Мы приглашаем в подкаст экспертов из различных областей, чтобы понять, как работают сложные системы изнутри. В этом выпуске мы поговорили с Александром Лекомцевым, Team Lead CV Engineer из oxytech.io, и обсудили:

- особенности работы в стартапе, занимающемся медицинским CV
- чем отличается медицинский CV от «обычного»
- сложности разметки данных
- сложно ли найти общий язык с врачами
- настольно-ролевые игры как способ перезагрузиться

Смотрите новый выпуск по ссылке! https://youtu.be/gX8scA7qtfI

DeepSchool

30 Dec, 15:50


Поздравляем вас с наступающим новым годом!🎄

И напоминаем про подарки от DeepSchool 🎁
Успейте забронировать самые выгодные условия на следующий год со скидкой до -25%.

Зафиксируйте скидку -20% предоплатой на один из курсов: Деплой DL-сервисов, LLM или Ускорение нейросетей.

Или оплатите полностью одну из программ выше и получите -25% на любой курс школы в следующем году!

Выберите подходящий вариант и программу до 31 декабря, переходите на сайт и записывайтесь!

DeepSchool

27 Dec, 12:45


CRAFT

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

CRAFT — U-net подобная модель 2019 года, с VGG-16 внутри, которая призвана была решить проблему распознавания «in the wild» текста. В реальной жизни текст может состоять из символов разного шрифта, цвета, ориентации, с разными фонами и искажениями. Поэтому логично пробовать детектировать не целое слово за раз, а отдельные символы и промежутки между ними. Именно эту задачу и решает CRAFT.

Но как получить разметку для таких данных в большом количестве? Какие недостатки у такой модели и почему она не работает в одиночку? На эти и другие вопросы мы ответили в новой статье: https://deepschool-pro.notion.site/CRAFT-afe83ca8925041cea46c287fd3611e7d?pvs=4

DeepSchool

24 Dec, 14:15


🎄 Новогодние скидки 20-25% на наши курсы в преддверии 2025 года!

Мы решили сделать вам подарок, которого хватит на весь будущий год! Выбирайте любой из 3 курсов ниже со скидкой -20%, и любой следующий курс от нашей школы будет выгоднее на 25%!

Деплой DL-сервисов — освойте создание и деплой DL-сервисов
LLM — научитесь обучать, деплоить и ускорять LLM
Ускорение нейросетей — ускорьте нейросети на любых устройствах

Вы можете выбрать:
1️⃣ Зафиксировать скидку 20% на один из 3 курсов выше предоплатой за обучение
2️⃣ Оплатить одну из программ выше полностью и получить скидку 25% на любой другой курс, который стартует в 2025

Более подробная информация об акции на сайте.

🗓 Новогодняя акция длится до 31 декабря
Добавьте в планы на год повышение квалификации и сделайте это с выгодой!

Переходите на сайт, выбирайте программу и присоединяйтесь к обучению в новом году со скидкой!

DeepSchool

19 Dec, 14:10


Продолжаем знакомиться с авторами DeepSchool

Недавно мы рассказали, как пишем статьи и сколько людей работает над материалами. Ранее мы познакомились с частью команды: Ксюша, Саша, Марк, Илья, Саша.
А сегодня о себе расскажет Дима Раков, CV-инженер и Head of ML в NIIAS:

«Мы делаем проекты для РЖД, где часто применяем нейросетевые подходы. Наш главный проект — разработка беспилотного электропоезда с уровнем автоматизации GoA4 (работает без машиниста в кабине).
Я занимаюсь Autonomous Driving 5 лет. За это время вместе с командой мы смогли от начального прототипа разработать уже три системы для двух электропоездов и одного маневрового локомотива. А ещё мы первыми в мире запустили поезд с системой помощи машинисту (Goa3, аналогична системам ADAS в автомобилях) в постоянную эксплуатацию на МЦК (Московское центральное кольцо). Помимо беспилотников мы делаем много других проектов, направленных на повышение безопасности на ЖД.

Впервые с ML я познакомился в 2018 году на втором курсе университета. Один из преподавателей предложил выступить на конференции, где в списке тем были BigData и нейронные сети. Я заинтересовался и начал изучать всевозможные книжки, лекции и туториалы. Так и погрузился в ML.

В CV попал тоже случайно, когда в ВУЗе предложили поучаствовать в хакатоне от IBM. Случилось это примерно через полгода. Мне хватило навыков, чтобы зафайнтюнить Faster RCNN и занять призовое место. Так я решил, что CV — то, чем хочется заниматься. Тогда же начал ходить на ML-тренировки в СПБ (пишите, кто тоже ходил!) и продолжать активно участвовать в хакатонах.
После продолжительной стажировки и летней школы HSE несколько месяцев проработал в качестве CV-инженера. Разрабатывал систему для задачи SceneTextOCR для русского языка. В начале 2020 присоединился к NIIAS, где работаю до сих пор.

На работе мы решаем perception-задачи для разных сенсоров: камер, лидаров, тепловизоров. Встречаются такие классические задачи, как классификация, детекция, сегментация и трекинг, но со своими особенностями. Например, для обнаружения на 600 метрах детектор должен хорошо обнаруживать объекты 3x5 пикселей.
Также мы решаем и специализированные задачи под автономный транспорт. Например, находим глубину по кадру и отделяем точки земли в лидарном облаке.
Ещё есть открытые задачи, которые находятся в стадии исследования как у нас, так и у научного сообщества. Одна из них — нахождение неизвестных объектов на ЖД-полотне и в габарите электропоезда.

Отдельное направление — ML Safety. В реальной эксплуатации нейронные сети внутри поезда должны быть безопасны и объяснимы. Чтобы достичь таких свойств, мы исследуем и разрабатываем алгоритмы нахождения аномалий и неопределённостей в данных и предсказаниях моделей.

В DeepSchool я пишу статьи на темы, которые связаны с моими исследованиями или, на мой взгляд, недостаточно освещены в РУ сегменте. Также я лектор на курсах «3DCV» и «Деплой DL-сервисов».

Помимо основных активностей люблю:
- Смотреть турниры по смешанным единоборствам
- Играть в CS
- Проводить "диванную аналитику"»

В комментариях можно пообщаться с Димой и задать интересующие вопросы :)

Посты Димы:
- Виды представления лидарных данных (часть 1, часть 2, часть 3)
- Сегментация поверхности земли
- Few-shot learning
- Эффективные ансамбли
- ModelSoups: варим суп из моделей
- CV-задачи над 3D-данными

DeepSchool

11 Dec, 13:25


Segment Anything Model 2

Segment Anything Model (SAM) сильно упростила процесс разметки картинок в задачах Computer Vision. Как правило, если домен похож на обучение — SAM хорошо уточняет границы объектов за несколько кликов. Такой процесс называется Interactive Object Segmentation.

Как это работает? Модель принимает на вход не только изображение, но и промпт (точку, бокс, маску), который указывает на нужный объект. Разные энкодеры обрабатывают изображение и промпт, отдельный лёгкий mask decoder переводит эмбеддинги изображения и промпта в предсказание маски объекта.

Segment Anything Model 2 (SAM 2) продолжает упрощать процесс разметки, в этот раз работая с видео. Для этого меняют архитектуру, чтобы добавить передачу информации между кадрами, а также собирают самый большой датасет для задачи Video Object Segmentation.

Сегодня мы обсудим, чем архитектура второй версии отличается от первой, а также рассмотрим проблемы текущих датасетов для Video Object Segmentation и их решение в SAM 2. Читайте новую статью по ссылке: https://deepschool-pro.notion.site/Segment-Anything-Model-2-c70a218c4484424d8d3749e383c428be?pvs=4

DeepSchool

04 Dec, 15:22


Consistency models

Диффузионные модели сейчас — популярные генераторы в различных областях, включая генерацию изображений, видео, музыки и многого другого. Однако в отличие от тех же GANs-моделей, диффузионные обычно требуют запуска большого количества forward-ов, что существенно замедляет генерацию. Мы с вами уже рассмотрели несколько способов ускорения диффузионных моделей за счёт уменьшения количества шагов (InstaFlow, Дистилляция диффузии: часть 1, часть 2). А сегодня мы познакомимся с ещё одним популярным методом для ускорения — Consistency models.

Основная идея метода — обучение модели, обладающей свойством self-consistency. Это модель, которая переводит различные точки траектории диффузионного процесса в одну: f(x, t) = f(x1, t1).

Обучив такую модель, мы получаем генератор, который сможет теперь работать как за один, так и за несколько шагов. Аналогичную модель можно построить уже для латентного пространства — так мы получим Latent consistency models. Об основных моментах, связанных с данными моделями (особенностях их обучения, результатах в картинках и метриках), мы и поговорили в новой статье: https://deepschool-pro.notion.site/Consistency-models-93c3794b38034d558208660b732e5377?pvs=4

DeepSchool

26 Nov, 11:40


Подкаст «Под капотом». Агенты и инструменты

Мы приглашаем в подкаст экспертов, чтобы понять, как работают сложные системы изнутри. В этом выпуске мы поговорили с Ильей Димовым, Senior NLP-инженером, о том, как сделать идеальную LLM под свои нужды и как они устроены внутри.

В этом выпуске мы узнаем:
- почему не так просто сделать из LLM друга, который будет более «живым», чем ChatGPT
- как научить LLM видеть и слышать
- кто такие агенты и в чём их главная проблема
- зачем LLM нужны инструменты
- и какие проблемы возникнут, если неправильно выбрать модель под задачу

Смотрите выпуск по ссылке! https://youtu.be/4uP7hbCbUjA

DeepSchool

25 Nov, 15:00


Осталось 5 мест и 6 часов до конца скидки на курс LLM

Успевайте записаться, чтобы перенять опыт практикующих инженеров, задать все интересующие вопросы и закрыть пробелы в LLM!

Обучение начинается уже послезавтра, 27 ноября 🎓

Изучайте подробности на сайте и записывайтесь на программу!

DeepSchool

23 Nov, 14:30


Почему RL — это сложно? И как Decision Transformer меняет правила игры

Обучение с подкреплением (RL) часто звучит как магия: агент учится решать задачи через взаимодействие с окружающей средой. Тыкнул сюда, получил минус балл, постараюсь больше так не делать. Тыкнул сюда, получил плюс балл — о, повторю!

Но в реальности всё сложнее. Представьте робота, которому нужно научиться управлять автомобилем. Для обучения требуется симулятор, который моделирует дорожные условия. Создать его — задача не из лёгких: это дорого, долго, а иногда просто невозможно. Более того, ошибки агента в симуляторе могут не просто «остаться в игре», но привести к серьёзным последствиям, если перенести их в реальный мир.

Допустим, вы хотите обучить робота доставлять посылки. Если он учится в реальном мире, то каждое «неудачное» действие — это разбитый аппарат. А симуляторы часто слишком далеки от реальности, и агент начинает пользоваться их несовершенствами, что делает результаты обучения неприменимыми.

Альтернативный способ для создания умных агентов: агент учится воспроизводить траектории, созданные человеком. Проблема в том, что он может лишь копировать, но не создавать новые стратегии для достижения лучших результатов. RL, наоборот, строит стратегии сам, но упирается в проблему сложности и дороговизны.

Decision Transformer (DT) как раз призван решить эту проблему, генерируя на основе имеющихся данных новые стратегии. Он использует идеи RL и переформулирует проблему RL как задачу генерации последовательности.

Проще говоря, вместо «учимся через ошибки», DT говорит: «Вот данные о прошлом опыте, вот цель в виде суммы будущих наград — давайте сгенерируем траекторию, которая достигнет цель».

И это совершенно новый способ решения задач по управлению роботами. Подробнее о нём мы рассказали в новой статье: https://deepschool-pro.notion.site/Decision-Transformer-92feae6bd93d42da997cd44653f92a74?pvs=4

DeepSchool

22 Nov, 15:30


«LLM LLM LLM»

Все про них говорят, но мало кто умеет их готовить.

Если вы хотите научиться использовать LLM правильно, переняв знания из первых уст от инженеров с опытом тюнинга, элаймента, ускорения, деплоя, создания RAG, агентов, тулов и вообще проектов с LLM под капотом, то приходите на наш курс Large Language Models!

Наши спикеры работали и в бигтехах, и в стартапах, и в научных лабораториях. Создавали нагруженные сервисы и популярные библиотеки, которыми вы, вероятно, пользовались. На курсе они расскажут, а вы узнаете:
— как выбрать модель для проекта и чем они отличаются
— как уменьшить галюцинации и отхождения от инструкций
— как сделать RAG, который наконец начнёт работать
— как дообучать и сервить LLM, чтобы не разориться
— как деплоить большие модели
— и как эти модели устроены, как эволюционировали

Приходите, чтобы наконец разобраться, задать все вопросы и получить ответы!
Успевайте присоединиться по скидке -4% до 25 ноября!

📆 Обучение начнётся 27 ноября и продлится 4 месяца.

⚠️ Осталось 14 мест из 60. В прошлый раз они закончились за 3 дня. Успевайте занять место, они могут кончиться раньше, чем скидка!

Переходите на сайт, изучайте подробности и присоединяйтесь!

DeepSchool

21 Nov, 12:00


Встречаемся через 3 часа

Сегодня на открытой лекции разберём бизнес-кейс и обсудим:
- промптинг и его ограничения
- как подавать данные в модель с помощью RAG
- когда необходимо дообучить свою модель

А также представим программу курса LLM, расскажем про обновления и подарим скидки на обучение!

Вы ещё успеваете зарегистрироваться и получить список инструментов и библиотек для работы с LLM.

Приходите сегодня в 18:00 МСК!

DeepSchool

18 Nov, 15:50


Что не так с LLM?

— API не так дёшевы, как кажется
— Даже большие LLM галлюцинируют
— RAG сходу не работает
— Инференс без оптимизации стоит дорого
— Модели игнорируют инструкции

И это лишь часть проблем. Ещё больше мы упомянем на Zoom-лекции в четверг, а также расскажем, как эти проблемы решать.
Приходите, чтобы познакомиться с LLM и их болячками поближе!

А также представим программу курса LLM, расскажем про обновления и подарим скидки на обучение!

👨‍💻Спикеры лекции:
- Илья Димов — Senior NLP-инженер
- Тимур Фатыхов — ex Lead CV Engineer, основатель DeepSchool

📆 Четверг, 21 ноября, 18:00 МСК.

Регистрируйтесь на лекцию по ссылке!

🎁 После регистрации вы получите список полезных инструментов и библиотек для работы с LLM.

Встречаемся в четверг!

DeepSchool

15 Nov, 13:04


Знакомимся с авторами DeepSchool

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

Ранее мы познакомились с Ильей, Сашей, Ксюшей и Марком, а сегодня о себе расскажет Саша Лекомцев, Team Lead Computer Vision Engineer из медтех стартапа oxytech.io. Саша разрабатывает системы, помогающие врачам определять диагноз по 2D и 3D-данным.

«Становление датасаентистом у меня вышло почти случайно. При поступлении в Новосибирский Государственный Университет я выбирал между биологией и математикой. В итоге выбрал математику и не прогадал) Когда пришло время лабораторных по вычислительным методам, впервые попробовал Python вместо C/C++ и сразу оценил, насколько проще и интуитивнее писать код на этом языке. Чуть позже наткнулся на курс Open Data Science, подумал: «А почему бы и не попробовать». Потом стажировка, первая работа в DS, и вот как-то так всё закрутилось.

Моим предыдущим местом работы была Золотая Корона, где я занимался задачами, связанными с верификацией пользователя по лицу (face verification / recognition, anti-spoofing, image quality assessment), и автоматизировал отбор данных и создание задач на разметку, потому что верю в data-centric подход. Там же познакомился с Тимуром, одним из основателей DeepSchool, и начал писать посты в этот канал. Сейчас я, можно сказать, один из самых ранних авторов.

Сейчас я работаю тимлидом небольшой команды компьютерного зрения в стартапе oxytech.io. Мы разрабатываем сервисы, которые помогают врачам ставить диагнозы по 2D и 3D-снимкам, например, когда они ищут артроз коленного сустава на рентгенах или рак на КТ. В нашей работе ключевую роль играют качественные данные, поэтому у меня всегда есть интересные задачи и проблемы, которые можно решить.

Ещё пара фактов обо мне:
- увлекаюсь настольно-ролевыми играми (типа «Dungeons & Dragons»). Часто играю в роли ведущего, что, как ни странно, помогает в работе — учит держать фокус на протяжении нескольких часов и модерировать беседу
- первая моя работа была не в DS, а продавцом-консультантом в секс-шопе, помогает ли это в работе — догадывайтесь сами :)
- жил год в Кыргызстане, год в Таиланде, а теперь поселился в Грузии»

В комментариях можно пообщаться с Сашей и задать интересующие вопросы :)

Посты, над которыми работал Саша в нашем канале:
- Интерпретация моделей компьютерного зрения
- Интерактивная сегментация
- SAM
- NeRV
- SIGGRAPH
- Face Image Quality Assessment
- Face Image Quality Assessment. Part 2
- MobileNet v1-v3
- Особенности 3D медицинских данных
- Адаптация SAM под 3D медицинские данные
- Адаптация Visual-Language модели для детекции аномалий

DeepSchool

12 Nov, 14:00


PhysGen

Диффузионные модели сейчас активно используются для генерации видео. В последнее время появляется много работ, посвящённых тому, как сделать качественный видеогенератор. Но соблюдаются ли законы физики в таких моделях? Можно ли по исходной картинке предположить движение объектов при воздействии на них определённых сил?

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

Читайте новую статью по ссылке: https://deepschool-pro.notion.site/PhysGen-e836c0895433459c82b6e36e013229a8?pvs=4

DeepSchool

08 Nov, 15:57


Как сделать предсказание моделью?

Жмёшь model.predict(sample) и радуешься жизни :)

Но это если самому локально поиграться. А если хочется предсказать не «для себя», а встроить модель в приложение и сделать её частью бизнес-логики? Пусть для простоты наше приложение — API.
Первый вариант, который приходит в голову, — написать что-то такое:

@router.post('/predict/')
async def predict(user_request):
# some business logic before predict (p1)
predict = model.predict(sample)
# some business logic after predict (p2)
return result


Но будет плохо, если придёт много пользователей одновременно. Мы начнём предсказывать для одного, а все остальные встанут в очередь, которая будет расти. Причём если в (p1) делается io-операция «авторизоваться» или «скачать картинку», то она не будет выполняться для нового пользователя, пока мы не предскажем для старого (если это однопоточный event-loop). Хотя могли бы и не ждать :) Поэтому плохо мешать асинхронную логику для «типичных» io-операций и тяжёлое предсказание моделью.

А ещё наша модель сейчас может предсказывать семплы по одному, но ведь батчами было бы эффективнее! Их можно копить, например, через очередь. Мы кладём в неё семплы, и если накопился батч нужного размера / подождали батч дольше определённого времени — вызываем модель.

Сказать про эту концепцию — легко, а вот написать это всё эффективно — задача со звёздочкой 😉 Хорошо, что существуют инференс-сервера (например, Nvidia Triton или TorchServe), в которых толпа умных инженеров всё сделала за нас:)
Мы можем поднять такой инференс-сервер с моделью и обращаться к ней по HTTP/gRPC примерно таким образом:

@router.post('/predict/')
async def predict(user_request):
# some business logic before predict (p1)
predict = await inference_server_client.predict(sample)
# some business logic after predict (p2)
return result


Сейчас в нашем приложении операция предсказания стала типичной «лёгкой» io-операцией, которая ещё и не блокирует основной поток! Теперь пока первый пользователь ждёт предикт, второй может его не ждать и авторизоваться 😏 Плюс у нас появился батчинг! И возможность независимо масштабировать само приложение и сервинг.

Итак, мы рассмотрели одну проблему и вариант её решения, если вы хотите сделать продукт с DL-составляющей. Но на деле их тысяча и одна :)

Чтобы показать, как их решать, мы создали курс Деплой DL-сервисов, на котором вы научитесь быстро и поддерживаемо учить модели, создавать веб-сервисы и мониторить ваши решения.

Уже завтра, 9 ноября, в 12:00 МСК пройдёт вводная лекция. Вы ещё успеваете присоединиться! Переходите по ссылке и записывайтесь на курс🎓

DeepSchool

07 Nov, 15:20


Закрываем лист ожидания на LLM

Уже в этом месяце начинается 2-й поток нашего курса Large Language Models.
На нём вы узнаете, как обучать, деплоить и ускорять большие языковые модели.

Мы обновили лекции и уже на этой неделе проведём закрытую презентацию программы для участников листа ожидания!
Если планировали попасть на программу — записывайтесь в лист ожидания. Мы закроем к нему доступ 9 ноября в 12:00 МСК.

Места на курс ограничены, поэтому запишитесь, чтобы успеть первыми и получить самые выгодные условия 🔥

DeepSchool

04 Nov, 13:44


Мок-собеседование в группах 🔥

Самый эффективный вариант подготовки к собеседованиям — ходить на собеседования.
Но вдвойне круто, когда и собеседование прошёл, и «попытка» не сгорела.

Поэтому мы решили провести открытое мок-собеседование в групповом формате!🔥 Чтобы вы могли поучаствовать в интервью, получить фидбек и набраться опыта от ведущего и участников.

Коротко о формате:
🔹 Ведущий рассказывает условие задачи
🔹 Участники бьются на группы и расходятся в разные комнаты на полчаса
🔹 Решают задачу в группах, обмениваются опытом
🔹 Группы собираются вместе и питчат решения

Начнём с задачи по CV, а ведущим будет Андрей Шадриков, RnD lead в verigram.ai 🔥

Собеседование пройдёт завтра, во вторник, 5 ноября в 18:00 МСК!

Если вы хотите поучаствовать в собеседовании, заполните форму: https://forms.gle/ePdf3fT9FX7beXiy7

Если вы пока не готовы участвовать, приходите на собеседование как зритель! Ссылку на встречу отправим завтра в канале.

Записи не будет, ждём вас онлайн!

DeepSchool

03 Nov, 11:00


Детекторы текста на основе трансформеров

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

Сегодня мы узнаем:
- какие актуальные бенчмарки существуют для задачи детекции текста
- почему первый трансформерный детектор DETR не подходит для детекции текста
- какие изменения в архитектуре детектора помогли получить SOTA-результаты на актуальных Scene Text Detection датасетах

Читайте новую статью по ссылке: https://deepschool-pro.notion.site/a1f2b9a395844218977e1c95bac85d5e?pvs=4

DeepSchool

01 Nov, 15:45


Запускаем новый курс — Деплой DL-сервисов🎉

Вчера на лекции мы впервые представили нашу новую программу по разработке для DL-инженеров!

В рамках курса вы научитесь:
🔹быстро и поддерживаемо учить модели
🔹создавать веб-сервисы
🔹готовить модели к инференсу
🔹сервить модели
🔹проверять качество кода при помощи тестов и линтеров
🔹автоматизировать рутину в CI
🔹мониторить ваши решения

Обучение подойдёт для инженеров из CV и NLP, а также ML-инженерам, кто хочет перейти в DL.

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

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

Обучение начинается 9 ноября и длится 4 месяца🚀

Присоединяйтесь к обучению со скидкой до 7 ноября!
Подробнее о программе и спикерах читайте на сайте.

Если возникают вопросы или трудности, то пишите нам в поддержку в Телеграм!

DeepSchool

31 Oct, 14:00


🔥Начинаем через 2 часа

Успевайте зарегистрироваться!

Обсудим:
1️⃣ когда стоит использовать Jupyter-ноутбуки, а когда нет
2️⃣ как подготовить репозиторий моделинга
3️⃣ варианты конвертации модели
4️⃣ как обернуть инференс в http-приложение
5️⃣ как деплоят приложения и автоматизируют этот процесс

А также мы анонсируем новый курс Деплой DL-сервисов и подарим скидки на обучение!🎉

Присоединяйтесь к лекции!

DeepSchool

29 Oct, 13:50


Что происходит с моделью после обучения

В прошлом посте мы говорили, что DL-инженеру недостаточно учить модели в Jupyter-тетрадках, чтобы соответствовать запросам индустрии. Важно перенимать инженерные практики. Даже в репозитории с моделингом должна быть понятная структура, соблюдён codestyle, присутствовать тесты и различные проверки перед коммитом.

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

На лекции вы узнаете:
- когда стоит использовать Jupyter-ноутбуки, а когда нет
- как подготовить репозиторий моделинга
- варианты конвертации модели
- как обернуть инференс в http-приложение
- как деплоят приложения и автоматизируют этот процесс

А также мы анонсируем новый курс, на котором вы научитесь создавать и деплоить DL-сервисы!
Всем участникам лекции подарим скидки на обучение! 🔥

🙋‍♂️Спикеры лекции:
— Дмитрий Раков — руководитель ML в НИИАС, делает percpetion-алгоритмы для беспилотных поездов
— Тимур Фатыхов — основатель DeepSchool, ex Lead CV Engineer KoronaPay

Дата и время: 31 октября, чт, 19:00 мск

Регистрируйтесь по ссылке!

DeepSchool

24 Oct, 14:55


Всё ещё учите модели в Jupyter-тетрадках? Тогда вы рискуете отстать от индустрии!

Лет 7-8 назад при онбординге в новый проект могла возникнуть такая ситуация: новичка отводили к «хранителю» юпитер-ноутбука. Они вместе смотрели на ячейки и передавали сакральные знания о том, в каком порядке их нужно нажимать. Хороших разработческих практик от ML-специалистов тогда не требовали. Им было бы не помереть от дебага первого tensorflow:)

Но сейчас фреймворки стали очень высокоуровневыми и простыми в использовании, а запустить обучение сети на своих данных может быть задачей нескольких минут-часа. Для многих задач есть стандартные подходы/модели, и обучение — это самая простая часть при построении ML-решения. Помимо этого нужно ещё собирать чистые данные, доводить решение с ML-моделью до клиентов и следить за тем, как она чувствует себя на бою.
ML-специалисты всё больше становятся похожи на разработчиков: они версионируют код (и данные), следят за его поддерживаемостью, пишут тесты, автоматизируют процессы через CI/CD, следят за воспроизводимостью экспериментов и т.д.

От «магии» в ноутбуках мы приходим к инженерным практикам, которые делают решения более надёжными и поддерживаемыми, а релизы — более частыми. Работодателям это нравится, а людей, делающих простой fit-predict, они уже не хотят:)

Чтобы помогать инженерам не отставать от индустрии, мы когда-то и создали нашу школу. В первую очередь мы подтягивали именно инженерные навыки, в курсе CVRocket. А сейчас мы сделали новый курс по разработке DL-сервисов и скоро его анонсируем!

Также на следующей неделе мы проведём открытую лекцию про путь модели после обучения.
Ставьте 🔥, если актуально!

DeepSchool

22 Oct, 13:12


🎞 Pytest и внешние ресурсы

Написать тест на простую функцию, которая ни от чего не зависит — одно удовольствие. Говорим, какие входы, какие выходы ... profit.

Но как быть, если вы хотите протестировать функционал, который зависит от внешних сервисов? Ходить в production-базу во время тестов — так себе затея 😉

Для этого нам нужно либо в нужных местах мо́кать/манкипатчить, либо подменять внешние зависимости на что-то, что мы развернули локально для тестов. В этом видео мы начнём с «лёгких и быстрых», но далёких от реального поведения методов тестирования. А закончим «тяжёлыми, но близкими»:

- mock/monkeypatch
- pytest-httpserver
- pytest-docker-compose

Смотрите видео по ссылке: https://youtu.be/zCyQHZNOVCU?si=py7bNxI18ugU74_5

DeepSchool

14 Oct, 15:33


Подкаст «Под капотом». Тимлидство и хакатоны

Мы приглашаем в подкаст экспертов, чтобы понять, как работают сложные системы изнутри. В этом выпуске к нам пришёл Валя Мамедов, LLM-инженер из SberDevices. В первой части мы поговорили про LLM, а во второй обсудили:

- что могут дать хакатоны опытным инженерам
- сложности перехода из бэкенда в машинное обучение
- внедрение практик разработки в мл (когда нужно, а когда нет)
- возвращение из тимлидов в инженеры и сложности карьерного роста

Смотрите выпуск по ссылке!
https://youtu.be/IM76-DPrh1s?si=md9H0sd3TCMG_xHU

DeepSchool

11 Oct, 14:09


🎞 Гессиан. Видео

Методы второго порядка используют вторые производные функции потерь. Важный элемент этих методов — гессиан. Он и является второй производной по параметрам модели.

Главная проблема гессиана — его долго считать. Учёные придумали различные методы для его аппроксимации, чтобы экономить вычисления. А недавно появились и алгоритмы оптимизации, которые используют эти аппроксимации.

О методах второго порядка мы и записали наше новое видео!

В нём Шамиль Мамедов, исследователь из Amazon Robotics, напоминает теорию численной оптимизации и рассказывает про методы приближения гессиана. А также проходится по Sophia — свежему оптимизатору, который использует методы второго порядка.

Смотрите новое видео на Youtube!

DeepSchool

10 Oct, 13:12


Введение в OCR. Часть 1

Ранее мы писали про CLIP4STR — SOTА-модель в OCR на основе трансформера. А сейчас решили сделать цикл публикаций об OCR, потому что задача обширная и популярная 🙂

OCR состоит из нескольких задач: найти текст ➡️ распознать текст ➡️ извлечь информацию. Последний пункт помогает, например, найти отправителя и получателя платежа или общую сумму в чеке.

Для каждого из этапов есть свои модели. Но с появлением мультимодальных трансформеров можно решать все этапы End-to-End!

В новой статье мы рассмотрим:
- основные этапы решения OCR
- ключевые SOTA-модели для каждого этапа
- развитие подходов в OCR
- и, конечно, современные бенчмарки / модели / фреймворки

Читайте нашу статью по ссылке: https://deepschool-pro.notion.site/OCR-1-25c5e5c9f928486a80cb67020de270af?pvs=4

DeepSchool

30 Sep, 15:50


Научитесь решать задачи компьютерного зрения в 3D

В субботу прошла открытая лекция «Погружение в 3D CV», на которой мы рассказали о терминах, инструментах и задачах в этой области, обсудили, почему она становится популярнее и почему CV-инженеру важно с ней знакомиться.

А также представили курс 3D Computer Vision!

На курсе вы на практике научитесь:
— сегментировать лидарные облака
— писать SLAM-алгоритмы
— строить 3D-модели объектов
— создавать аватаров
— синтезировать данные в Blender
— обучать NeRF, 3D Gaussian Splatting
и другое

🔥 Это будет последний поток в формате онлайн-лекций в Zoom, где вы можете задавать вопросы спикерам по ходу лекции и общаться в конце в кулуарах.

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

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

🎁 До 4 октября вы можете записаться со скидкой 5%.

🗓 Начинаем 8 октября!

Переходите на сайт, изучайте подробности, выбирайте подходящий тариф и присоединяйтесь к обучению.
До встречи на курсе!

DeepSchool

28 Sep, 08:30


Начинаем через 1,5 часа

Успевайте зарегистрироваться!

На лекции обсудим:
1️⃣какие задачи решают в 3D
2️⃣почему таких задач становится больше
3️⃣с чего начать погружение в эту область
4️⃣почему CV-инженеру важно знакомиться с 3D
5️⃣что такое SLAM, SfM, SMPL, NeRF, 3D Gaussian Splatting и другие баззворды🐝

Расскажем, как присоединиться к последнему онлайн-потоку курса 3D Computer Vision и подарим скидки на обучение!🔥

Регистрируйтесь на лекцию!

DeepSchool

27 Sep, 13:16


Blender для генерации данных

Не всегда получается найти достаточно данных, чтобы решить задачу. На помощь приходят синтетические данные, которые можно замешать с реальными, а то и вовсе попытаться обучиться только на них. Даже если у нас есть достаточное количество реальных данных, синтетика может упростить отладку решения на искусственных примерах с изолированной проблемой. Но как получить синтетику для 2D или 3D-данных? Один из вариантов — нарисовать в Blender.

В этой статье мы обсудим:
- как программировать в Blender и работать с библиотекой BPY
- где найти подходящие 3D-модели для генерации синтетики
- как сгенерировать 2D-датасет из 3D-сцены
- каким образом можно получить разметку для двумерной сегментации и детекции из Blender
- и как аугментировать получаемый датасет в Blender

Читайте новую статью по ссылке: https://deepschool-pro.notion.site/Blender-8311ac63114d4d1f82cebda4d5e0733f?pvs=4

DeepSchool

26 Sep, 11:59


Лекция-погружение в 3D CV

На прошлой неделе мы проводили мастер-класс, на котором учили беспилотную машину видеть. Если вы его пропустили или хотите подробнее познакомиться с областью 3D CV, то приходите на открытую лекцию в эту субботу, на которой познакомим вас с основными терминами, задачами и инструментами.

На лекции вы узнаете:
- какие задачи решают в 3D
- почему таких задач становится больше
- с чего начать погружение в эту область
- почему CV-инженеру важно знакомиться с 3D
- что такое SLAM, SfM, SMPL, NeRF, 3D Gaussian Splatting и другие баззворды🐝

Также мы расскажем, как присоединиться к последнему онлайн-потоку курса 3D Computer Vision🔥
А всем участникам лекции подарим скидки на обучение!

🗓 28 сентября, суббота, 13:00 МСК.

🎁 После регистрации вы получите miro-схему с описанием направлений и инструментов в 3D.

Регистрируйтесь по ссылке — увидимся в субботу!

DeepSchool

25 Sep, 16:04


«Релиз на салфетке». Спасаемся от самокатов при помощи CV 🛴

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

Как будто решаем продуктовую задачу, но без сроков, рамок и коммитментов. А от того веселее 😉

В этом выпуске мы спасались от самокатчиков, которые врезаются в прохожих. Начали с советов «да приклей зеркала и ходи-посматривай», а закончили ключевыми точками, трекерами и foundation-моделями.

Смотрите выпуск на YouTube!

DeepSchool

23 Sep, 14:02


Tensorboard для Pytorch

Иногда в небольших проектах нам не очень хочется использовать слишком сложные инструменты для логирования метрик и артефактов. Здесь на помощь приходит Tensorboard — несложный инструмент для визуализации и мониторинга машинного обучения.

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

Читайте нашу статью по ссылке: https://deepschool-pro.notion.site/Tensorboard-Pytorch-5a3a54c7844048d9b2bc53b39b6f5460?pvs=4

DeepSchool

19 Sep, 15:26


CV-задачи над 3D-данными

Помимо 2D-изображений с камер всё чаще используются сенсоры, позволяющие получить трёхмерные данные. У таких сенсоров больше степеней свободы и они требуют других подходов к обработке.

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

Читайте нашу статью по ссылке: https://deepschool-pro.notion.site/CV-3D-0cfd8c893bc645dbbb324bf208a27af2?pvs=4

DeepSchool

17 Sep, 13:55


Дистилляция диффузии. Часть 2

Сейчас диффузионные модели — лидеры по качеству и разнообразию генерации. Однако чаще всего они требуют большого количества шагов, что делает генерацию довольно медленной, например, в сравнении с GANs. Именно поэтому ускорение диффузионных моделей является важной задачей. Существует множество различных подходов для превращения 1000-шаговой диффузии в генератор, состоящий из нескольких шагов.

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

Сегодня мы рассмотрим несколько SOTA-работ, которые, в частности, использовались для ускорения известной SDXL Turbo. Познакомимся с основными методами и узнаем:
- что представляет собой Adversarial дистилляция с использованием GANs
- чем отличается Latent Adversarial Diffusion Distillation (LADD) от Adversarial Diffusion Distillation (ADD)
- и что такое Distribution Matching Distillation (DMD)

Читайте новую статью по ссылке: https://deepschool-pro.notion.site/2-fa4241bac68749beafffa7ddffda41a0?pvs=4

DeepSchool

15 Sep, 12:29


Учим беспилотную машину видеть

В мире 3D Computer Vision одна из основных задач — это ориентация роботов в пространстве. Это позволяет автоматизировать множество повседневных процессов от беспилотных такси до доставки еды. Для решения этой задачи требуется работа с различными сенсорами, понимание алгоритмов 3D-реконструкции и SLAM.

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

Мастер-класс будет состоять из трёх лекций, они пройдут 17, 18 и 20 сентября (вт, ср и пт).

На лекциях вы:
— научитесь восстанавливать 3D-сцену по данным с камеры и лидара 
— узнаете, как ориентировать робота в пространстве
— освоите симулятор Carla для синтеза данных
— поймёте теорию, стоящую за SLAM-алгоритмами

А также мы представим программу курса 3DCV и подарим скидки!🔥

🔔 Первая лекция пройдёт 17 сентября в 19:00 МСК.

Изучайте подробнее программу мастер-класса и регистрируйтесь по ссылке!

DeepSchool

12 Sep, 16:18


Сопоставляем изображения с помощью ключевых точек

Поиск ключевых точек и сопоставление изображений — это начальный этап перехода от 2D задач к 3D. Сопоставив между собой множество изображений сцены, мы сможем восстановить трёхмерную структуру объектов в ней. Но для этого важно иметь «хорошие» ключевые точки.

В новой статье мы расскажем:
- что значит «хорошие» ключевые точки
- как работают классические алгоритмы на примере SiFT
- и какие есть нейросетевые подходы разной степени мощности и сложности

Читайте нашу статью по ссылке: https://deepschool-pro.notion.site/96ea7f72daa64c948baeec3b4ccc72f1?pvs=4

DeepSchool

06 Sep, 11:04


Дистилляция диффузии. Часть 1

Диффузионные модели очень круто генерируют изображения, но в «ванильном» исполнении они очень медленные. Поэтому нужны методы их ускорения. Недавно мы разобрали один из них — InstaFlow.
Сегодня мы рассмотрим ещё один вид ускорения — дистилляцию. Это процесс, при котором мы передаём знания от нашей большой модели-учителя к более быстрой модели-ученику.

В этой статье мы узнаем:
- что представляет собой дистилляция диффузионной модели
- каким образом проходит процесс progressive-дистилляции
- и как можно дистиллировать conditional модели

Читайте новую статью по ссылке: https://deepschool-pro.notion.site/1-917a8a82ad2e450980a1ddb630b62956?pvs=4

DeepSchool

03 Sep, 16:18


Последний онлайн-поток курса 3D CV

В начале октября стартует 4 поток курса по 3D CV. Это программа, на которой вы на практике научитесь решать 3D задачи:
— сегментировать лидарные облака
— писать SLAM алгоритмы
— строить 3D-модели объектов
— создавать аватаров
— синтезировать данные в Blender
— обучать NeRF, 3D Gaussian Splatting
и другое

🔥 Это будет последний поток в формате онлайн-лекций в Zoom, где вы можете задавать вопросы спикерам по ходу лекции и общаться в конце в кулуарах.

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

Записаться в лист ожидания

DeepSchool

02 Sep, 12:05


Сделай сам

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

Читайте новый пост по ссылке: https://deepschool-pro.notion.site/b1f197579cf648baa81c34a6005ad379?pvs=4

DeepSchool

27 Aug, 14:12


LLMSold Out!

Места на первый поток курса Large Language Models закончились!

Поздравляем всех, кто успел присоединиться! 3 сентября встретимся на лекции «Введение в задачи NLP»🎓

Если вы не успели попасть в этот раз, не переживайте! Запишитесь в лист ожидания, чтобы первыми узнать о старте нового потока и получить самую большую скидку!

Записаться в лист ожидания

DeepSchool

26 Aug, 16:42


Адаптируем Visual-Language модель для детекции аномалий

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

А также узнаем:
- что такое «‎аномалия» и какие они бывают
- как обучить универсальный детектор аномалий для работы с различными модальностями и анатомическими областями
- и можно ли обобщить подход на немедицинские изображения

Читайте нашу статью по ссылке: https://deepschool-pro.notion.site/Visual-Language-d3c607cc974942a78f60ed418147a1dd?pvs=4

DeepSchool

23 Aug, 15:40


Как обучать, деплоить и ускорять LLM

Вчера провели открытую лекцию, на которой рассказали про LLM в реальных задачах.
А также представили курс «Large Language Models»🍾

На программе вы освоите полный цикл внедрения LLM: от выбора модели и промптинга до RAG, Fine-tuning и деплоя.

В рамках обучения вы освоите теорию и научитесь:
🔹 дообучать LLM на собственных данных
🔹 строить LLM-системы и приложения
🔹 выводить проекты в продакшен
🔹 ускорять инференс и обучение
🔹 использовать трюки для повышения метрик

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

Программа состоит из 14 лекций, продолжительность — 16 недель.

📆 Старт — 3 сентября.

⚠️ Предупреждаем, что осталось 4 из 50 мест. Поэтому успевайте присоединиться!
UPD: места на этот поток закончились, но вы можете записаться в лист ожидания на следующий! Мы сообщим о старте.

🎁 До 29 августа вы можете записаться со скидкой 5%.

Читайте подробнее о программе, спикерах, тарифах на сайте и присоединяйтесь со скидкой!

До встречи на курсе!👍

DeepSchool

22 Aug, 15:56


Через 5 минут стартуем!🔥

Присоединяйтесь!