Компьютерное зрение 24/25 (МОВС23) — различия между версиями
Gazuev (обсуждение | вклад) |
(→Дополнительное ДЗ) |
||
| (не показано 18 промежуточных версии этого же участника) | |||
| Строка 18: | Строка 18: | ||
|- | |- | ||
| style="background:#eaecf0;" | Кирилл Козлов || @dedpe | | style="background:#eaecf0;" | Кирилл Козлов || @dedpe | ||
| + | |} | ||
| + | |||
| + | Курс вели: | ||
| + | {| class="wikitable" | ||
| + | |- | ||
| + | ! Тема !! Лекция !! Семинар | ||
| + | |- | ||
| + | | style="background:#eaecf0;" | Работа с изображениями. Классические методы обработки || Илья Башаров || Илья Башаров | ||
| + | |- | ||
| + | | style="background:#eaecf0;" | Классификация: лучшие практики || Снежана Дудкина || Снежана Дудкина | ||
| + | |- | ||
| + | | style="background:#eaecf0;" | Детекция (одностадийная) || Александр Неварко || Кирилл Козлов | ||
| + | |- | ||
| + | | style="background:#eaecf0;" | Сегментация || Александр Неварко || Кирилл Козлов | ||
| + | |- | ||
| + | | style="background:#eaecf0;" | RelD + Tracking || Илья Башаров и Снежана Дудкина || Илья Башаров | ||
| + | |- | ||
| + | | style="background:#eaecf0;" | Генеративные модели || Андрей Филатов || Кирилл Козлов | ||
| + | |- | ||
| + | | style="background:#eaecf0;" | SSL & Foundation Models || Андрей Филатов || | ||
| + | |- | ||
| + | | style="background:#eaecf0;" | Методы ускорения нейросетевых моделей || Павел Колганов || Арина Гертель | ||
|} | |} | ||
| Строка 30: | Строка 52: | ||
| style="background:#eaecf0;" | '''2''' [https://vkvideo.ru/playlist/-227011779_27 Записи ВК] [https://www.youtube.com/playlist?list=PLmA-1xX7IuzDETLN1VWSLoJfXAfhaxoR6 Записи YT] || Классификация: лучшие практики || 21.01.2025 || [https://docs.google.com/presentation/d/1s50Pu534qXbAl-LjxhGMDI4Ea6Hh6uTFHDOKovV-WVs/edit#slide=id.g327588c1df0_0_30 Лекция] [https://colab.research.google.com/drive/1tAYiLvtd62NekSkrbAqOdDorHJEfjznI Семинар] || [https://cs231n.github.io/convolutional-networks/ CS231n], [https://karpathy.github.io/2019/04/25/recipe/ Training recipe] | | style="background:#eaecf0;" | '''2''' [https://vkvideo.ru/playlist/-227011779_27 Записи ВК] [https://www.youtube.com/playlist?list=PLmA-1xX7IuzDETLN1VWSLoJfXAfhaxoR6 Записи YT] || Классификация: лучшие практики || 21.01.2025 || [https://docs.google.com/presentation/d/1s50Pu534qXbAl-LjxhGMDI4Ea6Hh6uTFHDOKovV-WVs/edit#slide=id.g327588c1df0_0_30 Лекция] [https://colab.research.google.com/drive/1tAYiLvtd62NekSkrbAqOdDorHJEfjznI Семинар] || [https://cs231n.github.io/convolutional-networks/ CS231n], [https://karpathy.github.io/2019/04/25/recipe/ Training recipe] | ||
|- | |- | ||
| − | | style="background:#eaecf0;" | '''3''' [https://vkvideo.ru/playlist/-227011779_27 Записи ВК] [https://www.youtube.com/playlist?list=PLmA-1xX7IuzDETLN1VWSLoJfXAfhaxoR6 Записи YT] || Детекция (одностадийная) || 28.01.2025 || [https://docs.google.com/presentation/d/12ohwSH_BVT2vTzS6W1knnY6CTIDFAk6t/edit?usp=sharing&ouid=115553813799780088084&rtpof=true&sd=true Лекция] [https://colab.research.google.com/drive/1y2hoZSKjKVJWBDtJjeKPQLDpSafj_M1C?usp=share_link Семинар] || | + | | style="background:#eaecf0;" | '''3''' [https://vkvideo.ru/playlist/-227011779_27 Записи ВК] [https://www.youtube.com/playlist?list=PLmA-1xX7IuzDETLN1VWSLoJfXAfhaxoR6 Записи YT] || Детекция (одностадийная) || 28.01.2025 || [https://docs.google.com/presentation/d/12ohwSH_BVT2vTzS6W1knnY6CTIDFAk6t/edit?usp=sharing&ouid=115553813799780088084&rtpof=true&sd=true Лекция] [https://colab.research.google.com/drive/1y2hoZSKjKVJWBDtJjeKPQLDpSafj_M1C?usp=share_link Семинар] || [https://arxiv.org/html/2304.00501v6 YOLO history] |
| + | |- | ||
| + | | style="background:#eaecf0;" | '''4''' [https://vkvideo.ru/playlist/-227011779_27 Записи ВК] [https://www.youtube.com/playlist?list=PLmA-1xX7IuzDETLN1VWSLoJfXAfhaxoR6 Записи YT] || Сегментация || 04.02.2025 || [https://docs.google.com/presentation/d/1rzaklcrotKl0ZP54XBq0TBrwGc9k-MJkxNu80P-ZGH4/edit#slide=id.g32ccd9b25c1_0_100 Лекция] [https://colab.research.google.com/drive/1h3YBR5lsIS9eYjfqLIexeLBJGukHWFI1?usp=sharing Семинар] || [https://arxiv.org/html/2312.05391v1 Функции потерь] | ||
| + | |- | ||
| + | | style="background:#eaecf0;" | '''5''' [https://vkvideo.ru/playlist/-227011779_27 Записи ВК] [https://www.youtube.com/playlist?list=PLmA-1xX7IuzDETLN1VWSLoJfXAfhaxoR6 Записи YT] || ReID + Tracking || 11.02.2025 || [https://docs.google.com/presentation/d/1Uf7L1hEdKnjb_MLwR4nSEKaPKeYWlQWBq4xV7iTFiDI/edit?usp=sharing Лекция] [https://colab.research.google.com/drive/1rm0muzVRFPAuGvf2vCufnjBl0cwi8tjm Семинар] || [https://github.com/luanshiyinyang/awesome-multiple-object-tracking Awesome tracking] | ||
| + | |- | ||
| + | | style="background:#eaecf0;" | '''6''' [https://vkvideo.ru/playlist/-227011779_27 Записи ВК] [https://www.youtube.com/playlist?list=PLmA-1xX7IuzDETLN1VWSLoJfXAfhaxoR6 Записи YT] || Генеративные модели || 18.02.2025 || [https://docs.google.com/presentation/d/1920Y3exa5FRMJvHZvRVO13D6Jz1WABB5oEwv1IYm1FY/edit?usp=sharing Лекция] [https://colab.research.google.com/drive/19yZi8ew7dHTe4CZXDI9BMYS60BPaY7l4?usp=sharing Семинар] || [https://arxiv.org/abs/2404.07771 Diffusion: overview] | ||
| + | |- | ||
| + | | style="background:#eaecf0;" | '''7''' [https://vkvideo.ru/playlist/-227011779_27 Записи ВК] [https://www.youtube.com/playlist?list=PLmA-1xX7IuzDETLN1VWSLoJfXAfhaxoR6 Записи YT] || SSL & Foundation Models || 25.02.2025 || [https://docs.google.com/presentation/d/1TbJ7-36hQCxNpNW7AW6nFIqVJ5Mw7I88xKwH0k9PgYo/edit#slide=id.p1 Лекция] || | ||
| + | |- | ||
| + | | style="background:#eaecf0;" | '''8''' [https://vkvideo.ru/playlist/-227011779_27 Записи ВК] [https://www.youtube.com/playlist?list=PLmA-1xX7IuzDETLN1VWSLoJfXAfhaxoR6 Записи YT] || Методы ускорения нейросетевых моделей | ||
| + | || 04.03.2025 || [https://docs.google.com/presentation/u/0/d/1wiamPZVcbucysCwWRpjT1iwhd5-qk3ydShZ0RwG60pc/edit Лекция] [https://colab.research.google.com/drive/1cuTXf4vfKfd_Nqh9yo-T3tsEcPDJNBoq?usp=sharing Семинар] || [https://github.com/VainF/Torch-Pruning TorchPruning] | ||
|} | |} | ||
| Строка 44: | Строка 77: | ||
'''[https://colab.research.google.com/drive/1PCJFD4YEwXmQnSb0YxrmTnR6bIv8ZDuC?usp=sharing Домашнее задание 2]''' - '''Дедлайн 11.02 23:59 мягкий, 18.02 23:59 жесткий.''' | '''[https://colab.research.google.com/drive/1PCJFD4YEwXmQnSb0YxrmTnR6bIv8ZDuC?usp=sharing Домашнее задание 2]''' - '''Дедлайн 11.02 23:59 мягкий, 18.02 23:59 жесткий.''' | ||
| + | '''[https://colab.research.google.com/drive/1Kni36PCFxxNru6DZ2vwFA8Qk85W-XhL1?usp=sharing Домашнее задание 3]''' - '''Дедлайн 19.02 23:59 мягкий, 26.02 23:59 жесткий.''' | ||
| + | |||
| + | '''[https://drive.google.com/file/d/1e4O8NGqqZ6Ra3vP2HGNWcPYolpaljwcW/view?usp=sharing Опциональное домашнее задание]''' - '''Дедлайн 26.02 23:59 мягкий, 05.03 23:59 жесткий.''' | ||
| + | |||
| + | '''[https://colab.research.google.com/drive/1_PUs3JPFFWNa7c_xDxxdaSDSz90SZ0gZ?usp=sharing Домашнее задание 4]''' - '''Дедлайн 11.03 23:59 мягкий, 18.03 23:59 жесткий.''' | ||
'''Инвайт в AnyTask: OsoaRj4''' | '''Инвайт в AnyTask: OsoaRj4''' | ||
| + | |||
| + | == Дополнительное ДЗ == | ||
| + | Может дать дополнительно до 2х баллов (включительно) за решение для тех, кто не добирает баллы (после проверок всех дз 3 балла и ниже, либо не уверен, сколько у него баллов будет.) Также это задание для тех, кто не хочет идти на экзамен. Напомню, идти на экзамен - опционально, дает до 1 балла. Ранжирование баллов будет следущим: | ||
| + | 1) Выбитый скор [0.51; 0.7) - +1 балл (для тех, у кого 3 балла и ниже) | ||
| + | 2) Выбитый скор выше [0.70; 1) - +2 балла (для тех, у кого 3 балла и ниже) или засчитывается вместо экзамена - +1 балл (для тех, у кого 4 балла и выше) | ||
| + | |||
| + | Бейзлайн по [https://colab.research.google.com/drive/10HbBjXe4hzMTbu9ZqSw4zj2cyoMLC57Y?usp=sharing ссылке], kaggle соревнование по [https://www.kaggle.com/competitions/how-machine-sees-ai-edu/overview ссылке]. Дедлайн до 26.03.25 23:59. Username следует указывать в формате <ФИО>_МОВС_25 на русском языке. | ||
| + | |||
| + | Рекомендации к решению: | ||
| + | 1) стоит поработать в первую очередь данными, а не гнаться за тяжелыми моделями. В данных может быть неверная разметка, картинки плохого качества, маленькие объекты и тд. Смотрите на распределения. | ||
| + | |||
| + | 2) Батч имеет значение - следите за стабильностью обучения. Если есть сильные колебания в качестве, скорее всего, поможет увеличение батча. В зависимости от динамики обучения можете подобрать необходимое кол-во эпох. Помните, одностадийные методы тренируются чуть дольше. | ||
| + | |||
| + | 3) Аугментации дают основной буст в качестве. Пользуйтесь библиотекой albumentations и добавляйте их в пайплайн обучения (сразу в код). | ||
| + | |||
| + | 4) Визуализируйте ошибки модели - можно добавить эти семплы повторно в трейн. | ||
| + | |||
| + | 5) Если качество модели на вашей валидации сильно отличается от kaggle - вы неверно формируете валидацию. Подумайте, как можно было бы сформировать валидационную выборку. | ||
| + | |||
| + | 6) Тюнингом lr, optimizer и проч занимайтесь только в самый последний момент. Также у ultralytics есть tuner. | ||
| + | |||
| + | 7) Можно найти похожие данные в интернете и дополнить выборку. | ||
| + | |||
| + | 8) Следите за дисбалансом классов в выборке. Вспомните про стратегии борьбы, которые мы обсуждали в семинарах - семлинг, взвешивание. | ||
| + | |||
| + | |||
| + | '''Сдавать в AnyTask по инвайту выше.''' | ||
== Литература == | == Литература == | ||
# Richard Szeliski, [http://szeliski.org/Book/ "Computer Vision: Algorithms and Applications, 2nd ed."], The University of Washington | # Richard Szeliski, [http://szeliski.org/Book/ "Computer Vision: Algorithms and Applications, 2nd ed."], The University of Washington | ||
Текущая версия на 17:37, 23 марта 2025
Содержание
О курсе
Занятия проводятся в Zoom по вторникам в 18:10
Контакты
Преподаватель: Башаров И.В. @ilbash и Козлов К. @dedpe
| Ассистент | Контакты |
|---|---|
| Марк Блуменау (ПМИ) | @markblumenau |
| Илья Никитин | @is_nikitin |
| Кирилл Козлов | @dedpe |
Курс вели:
| Тема | Лекция | Семинар |
|---|---|---|
| Работа с изображениями. Классические методы обработки | Илья Башаров | Илья Башаров |
| Классификация: лучшие практики | Снежана Дудкина | Снежана Дудкина |
| Детекция (одностадийная) | Александр Неварко | Кирилл Козлов |
| Сегментация | Александр Неварко | Кирилл Козлов |
| RelD + Tracking | Илья Башаров и Снежана Дудкина | Илья Башаров |
| Генеративные модели | Андрей Филатов | Кирилл Козлов |
| SSL & Foundation Models | Андрей Филатов | |
| Методы ускорения нейросетевых моделей | Павел Колганов | Арина Гертель |
Материалы курса
| Занятие | Тема | Дата | Презентации/ноутбуки | Материалы |
|---|---|---|---|---|
| 1 Записи ВК Записи YT | Работа с изображениями. Классические методы обработки | 14.01.2025 | Лекция Семинар | OpenCV Docs |
| 2 Записи ВК Записи YT | Классификация: лучшие практики | 21.01.2025 | Лекция Семинар | CS231n, Training recipe |
| 3 Записи ВК Записи YT | Детекция (одностадийная) | 28.01.2025 | Лекция Семинар | YOLO history |
| 4 Записи ВК Записи YT | Сегментация | 04.02.2025 | Лекция Семинар | Функции потерь |
| 5 Записи ВК Записи YT | ReID + Tracking | 11.02.2025 | Лекция Семинар | Awesome tracking |
| 6 Записи ВК Записи YT | Генеративные модели | 18.02.2025 | Лекция Семинар | Diffusion: overview |
| 7 Записи ВК Записи YT | SSL & Foundation Models | 25.02.2025 | Лекция | |
| 8 Записи ВК Записи YT | Методы ускорения нейросетевых моделей | 04.03.2025 | Лекция Семинар | TorchPruning |
Формула оценивания
Оценка = 0.9*MAX(SUM / N, 10) + 0.1*EXAM, где N - количество домашних заданий (без учета бонусных), SUM - сумма баллов за все задания (с учетом бонусных), EXAM - оценка на экзамене.
Домашние задания
Домашнее задание 1 - Дедлайн 04.02 мягкий, 11.02 жесткий.
Домашнее задание 2 - Дедлайн 11.02 23:59 мягкий, 18.02 23:59 жесткий.
Домашнее задание 3 - Дедлайн 19.02 23:59 мягкий, 26.02 23:59 жесткий.
Опциональное домашнее задание - Дедлайн 26.02 23:59 мягкий, 05.03 23:59 жесткий.
Домашнее задание 4 - Дедлайн 11.03 23:59 мягкий, 18.03 23:59 жесткий.
Инвайт в AnyTask: OsoaRj4
Дополнительное ДЗ
Может дать дополнительно до 2х баллов (включительно) за решение для тех, кто не добирает баллы (после проверок всех дз 3 балла и ниже, либо не уверен, сколько у него баллов будет.) Также это задание для тех, кто не хочет идти на экзамен. Напомню, идти на экзамен - опционально, дает до 1 балла. Ранжирование баллов будет следущим: 1) Выбитый скор [0.51; 0.7) - +1 балл (для тех, у кого 3 балла и ниже) 2) Выбитый скор выше [0.70; 1) - +2 балла (для тех, у кого 3 балла и ниже) или засчитывается вместо экзамена - +1 балл (для тех, у кого 4 балла и выше)
Бейзлайн по ссылке, kaggle соревнование по ссылке. Дедлайн до 26.03.25 23:59. Username следует указывать в формате <ФИО>_МОВС_25 на русском языке.
Рекомендации к решению: 1) стоит поработать в первую очередь данными, а не гнаться за тяжелыми моделями. В данных может быть неверная разметка, картинки плохого качества, маленькие объекты и тд. Смотрите на распределения.
2) Батч имеет значение - следите за стабильностью обучения. Если есть сильные колебания в качестве, скорее всего, поможет увеличение батча. В зависимости от динамики обучения можете подобрать необходимое кол-во эпох. Помните, одностадийные методы тренируются чуть дольше.
3) Аугментации дают основной буст в качестве. Пользуйтесь библиотекой albumentations и добавляйте их в пайплайн обучения (сразу в код).
4) Визуализируйте ошибки модели - можно добавить эти семплы повторно в трейн.
5) Если качество модели на вашей валидации сильно отличается от kaggle - вы неверно формируете валидацию. Подумайте, как можно было бы сформировать валидационную выборку.
6) Тюнингом lr, optimizer и проч занимайтесь только в самый последний момент. Также у ultralytics есть tuner.
7) Можно найти похожие данные в интернете и дополнить выборку.
8) Следите за дисбалансом классов в выборке. Вспомните про стратегии борьбы, которые мы обсуждали в семинарах - семлинг, взвешивание.
Сдавать в AnyTask по инвайту выше.
Литература
- Richard Szeliski, "Computer Vision: Algorithms and Applications, 2nd ed.", The University of Washington