Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

DS Homeworks

Этот репозиторий содержит мои большие домашние работы, выполненные в рамках курсов по Deep Learning, Computer Vision (CV) и Natural Language Processing (NLP) в DS-потоке МФТИ.


🛰️🚗 CV: Картография и детектирование дорожных объектов

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

Часть 1–2: Сегментация дорог и построение графа сети

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

Решение:

  • Для обучения модели сегментации были объединены несколько публичных датасетов, включая DeepGlobe Road Extraction и Massachusetts Roads Dataset.
  • Были обучены DeepLabV3 и UNet для задачи плотной семантической сегментации.
  • На основе полученной маски дорог был разработан алгоритм построения графа:
    • Изображение обрабатывалось для выделения перекрёстков (узлов графа).
    • Между узлами проводились рёбра, представляющие собой соединительные участки дорог.
  • Итоговая система позволяет по спутниковому снимку получить машинно-интерпретируемую карту в виде графа, пригодную для навигации или анализа транспортной доступности.

Часть 3–4: Детекция и классификация объектов на дороге

Цель: Создать модель, способную обнаруживать и классифицировать ключевые объекты на дороге, и протестировать её на реальных видеоданных.

Решение:

  • Для обучения была собрана коллекция из нескольких датасетов, таких как N_O_2, Mapillary Vistas и др.
  • Был проведён анализ разметки и выполнен маппинг всех классов в пять целевых категорий:
    • автомобиль,
    • пешеход,
    • велосипедист/мотоциклист,
    • дорожный знак,
    • светофор.
  • Были протестированы различные архитектуры детекторов (включая YOLO-семейство), и выбрана наилучшая по метрикам mAP и скорости инференса.
  • В качестве финального этапа модель была применена к собственному видеоролику, снятом в Долгопрудном, для демонстрации её работы в реальных условиях.

💬 NLP: Анализ тональности и распознавание пользовательских запросов

Задания по NLP были направлены на решение двух практических задач в области понимания естественного языка.

Часть 1: Анализ тональности по отношению к сущности

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

Решение:

  • Использовались данные с соревнования RuSentNE.
  • Были протестированы различные стратегии подачи данных в модель: от классического [CLS] текст [SEP] до введения специальных токенов и постановки целевых вопросов в тексте.
  • В качестве архитектуры использовались предобученные русскоязычные модели (RuBERT, RuRoBERTa).
  • Лучший результат был достигнут с помощью модели RuRoBERTa-large, для которой была разработана специальная схема инпута и обучения.

Часть 2: Файн-тюнинг для распознавания интентов

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

Решение:

  • Был использован датасет от Новосибирского государственного университета, содержащий 142 интента.
  • Сначала была обучена базовая модель на 122 интентах.
  • Далее был реализован сценарий эффективного дообучения:
    • Базовая модель (RuBERT) была заморожена.
    • Классификатор был заменён на более мощную голову (MLP), и была добавлена поддержка новых 20 интентов.
    • Также были исследованы современные методы параметрической эффективной настройки (PEFT), в частности LoRA.
  • В результате был предложен гибкий и эффективный пайплайн, позволяющий быстро интегрировать новые сценарии взаимодействия без полного переобучения всей модели.

About

This repository contains projects from DS-stream, MIPT

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages