Skip to content

Репозиторий с обучением моделей для задачи присвоения тэгов земной поверхности

Notifications You must be signed in to change notification settings

matweykai/earth_plane_classification_modeling

Repository files navigation

Цель проекта

Создать модель, которая будет выставлять метки к фотографиям Земли со спутника

Данные

Датасет фотографий, который был взят с Kaggle соревнования

Возможные метки:

Характеристики неба:

  • clear - чистое небо
  • partly_cloudy - небольшая облачность
  • cloudy - облачно
  • haze - дымка

Поля на карте

  • agriculture - поля без леса, которые используются в сельском хозяйстве
  • cultivation - поля, которые обрабатываются небольшим числом людей без спец техники
  • bare_ground - поля, появившиеся естественным образом (поляны в лесу)

Раскопки

  • conventional_mine - официальные большие места раскопок
  • artisinal_mine - нелегальные раскопки около рек, полей (небольшие по размеру)

Характеристики леса

  • primary - первичный лес
  • blooming - обильное цветение (леса, полей и тд)
  • selective_logging - выборочные вырубки определённых видов деревьев
  • blow_down - придавленные ураганом деревья
  • slash_burn - места, где производилось выжигание леса

Оставшиеся классы

  • habitation - места проживания людей
  • water - реки, озёра и любые водные ресурсы
  • road - дороги, необязательно асфальтированные (некоторые деревянные дороги могут путаться с грязными реками)

Структура репозитория

.
├── configs             - файлы конфигурации (гиперпараметры модели и тд)
├── data                - данные проекта 
│   ├── datasets        - сформированные датасеты для задачи
│   ├── preprocessed    - данные после препроцессинга
│   └── raw             - сырые данные
├── notebooks           - Jupyter файлы с EDA задачи
└── src                 - .py файлы с кодом проекта

Запуск проекта

Для запуска проекта нужно выполнить несколько шагов:

  1. Обновить информацию о ssh ключе для доступа к данным в .dvc/config файле:

    [core]
        autostage = true
        remote = staging_server
    [cache]
        type = "hardlink,symlink"
    ['remote "staging_server"']
        url = ssh://91.206.15.25/home/m.ivanov/dvc_files
        user = m.ivanov
        keyfile =___SSH_KEY_FILE__ <- сюда нужно вписать свой ключ к staging серверу
    
  2. Запустить Makefile из корня приложения

    # Заходим в консоль и выполняем
    make setup
    

    Во время запуска данного скрипта произойдёт установка всех зависимостей, DVC скачает данные со staging сервера и нужно будет войти в свой аккаунт clearml

После всех проделанных шагов можно будет запустить обучение с помощью команды make train

# Находимся в корне проекта и выполняем команду в консоли
make train

Отслеживание экспериментов

Отслеживание экспериментов происходит с помощью ClearML и всю информацию можно найти в нём в проекте ForestClassifier. Результаты экспериментов в произвольной форме описываются в EXPERIMENTS.md

About

Репозиторий с обучением моделей для задачи присвоения тэгов земной поверхности

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages