Цель данного проекта - исследовать возможности использования нейронных сетей для решения задачи классификации фотографий архитектурных сооружений. В процессе исследования предполагается использовать подход, основанный на переносе обучения известных классификационных моделей. Данный репозиторий содержит инфраструктуру, необходимую для быстрого выбора исходной модели и подстановки интересующего классификатора.
Задачи:
- Обеспечить поддержку переноса обучения классификационных моделей в составе пакета torchvision, а также моделей MobileCLIP-S1, MobileCLIP-B.
- Провести эксперименты для анализа качества работы моделей с различными классификаторами, адаптированными для задачи классификации архитектурных сооружений.
- Обеспечиить визуализацию данных, полученных в результате экспериментов, для упрощения последующего анализа.
- Определить нейросетевую модель, обеспечивающую лучшее качество решения задачи.
classifiers— директория, содержащая файлы классификаторов в json-формате.samples— директория, включающая скрипты для обучения сетей, проведения массовых экспериментов и визуализации результатов качества.training_config.toml— пример файла конфигурации для проведения обучения или эксперимента.src— директория с модулями, обеспечивающими конфигурацию эксперимента по переносу обучения.tests— директория с тестами для модулей из папкиsrc.
- python>=3.12
- scikit-learn>=1.8.0
- torch>=2.10.0
- torchinfo>=1.8.0
- torchvision>=0.25.0
- open-clip-torch>=3.3.0
- opencv-python>=4.13.0.92
- matplotlib>=3.10.8
$ git clone https://github.com/itlab-vision/nn-location-checker-mini.git
$ cd nn-location-checker-mini
$ python -m venv .venv
$ source ./.venv/bin/activate
(.venv) $ pip install .Примеры использования расположены в директории samples/. Более полная информация
о запуске этих скриптов доступна в samples/README.md.
(.venv) $ pip install --group dev
(.venv) $ python -m pytest