Оформить в виде разделов, каждый раздел должен иметь оглавление ### Название раздела
.
Overview
: Краткое описание проекта. Если сделали какой-то уникальный подход
при тренировки или работе с данными, стоит кратко описать его.
Model
: название архитектуры модели, краткое описание модели и ссылка на её
описание.
Library
: если использовалась предобученная модель, то указать ссылку на
репозиторий из которого эта модель (mmdetection, detectron2, huggingface и др.).
Row data
: краткое описание данных, формат данных, где хранятся сырые данные. Сырые данные - данные из которых собирается датасет для тренировки модели.
Data
: датасет на котором тренировалась модель. Указать формат данных (например, COCO
).
Датасет необходимо положить в облачное хранилище на Яндекс диске. На Яндекс диске структура проекта такая же как в проекте на гитхаб, данные необходимо размещать в папке соответствующей разрабатываемому проекту на гитхаб.
Yandex disk
|
└───project name
│
└───cv
│
└───task (e.g. classification)
│
└───subtask (e.g. binary)
│
└───name_model (e.g. bath)
|
└───version_model_1 (e.g. baseline)
|
└───data
└───weights
Metrics
: указываем датасет на котором происходил замер, какую метрику
использовали и почему именно её. Создаем таблицу с проведенными экспериментами
и результатами.
Эсперимент | Изменения | Метрика |
---|---|---|
init | Текущая модель в проде. | 0.532 |
basic | Стандартные тренировочные конфиги, относительно которых будем сравнивать. | 0.897 |
lr3e-3 | Изменить learning rate к 3e-3. | 0.903 |
Weights
: итоговые веса размещаем по аналогии с размещением датасета в Яндекс диске.
Structure
: Схема структуры проекта и краткое описание ключевых разделов. Пример
ниже.
project
│
└───README.md
│
└───data
│ │
│ └───train
│ └───val
│ └───test
│ └───augmentation
│
└───logs
│ │
│ └───experiment1
│ │ │
│ │ └───tf_logs
│ │ └───best_weights_with_train.pth
│ │ └───log.json
│ │
│ └───...
│ │
│ └───experimentk
│
└───notebooks
│ │
│ └───fine_tuning
│ │ └───experiment1.ipynb
│ │ └───...
│ │ └───experimentk.ipynb
│ │
│ └───notebook1.ipynb
│ └───...
│ └───notebookn.ipynb
│ └───README.md
│
└───reports
│ │
│ └───experiment1
│ │ │
│ │ └───report1
│ │ └───...
│ │ └───reportk
│ │
│ └───...
│ └───experimentk
│
└───weights
│
└───dev_weights.pth
`data`: данные для обучения.
`logs`: в папке сохраняются логи обучения и веса отдельно по каждому эксперименту. Название папки соответствует изменениям гиперпараметров, которые были внесены в базовый конфигурационный файл.
`notebooks`: папка хранит все ноутбуки по разработке проекта.
`notebooks/fine_tuning`: папка хранит ноутбуки с различными экспериментами, название соответствует изменениям гиперпараметров, которые были внесены в базовый конфигурационный файл.
`weights`: веса модели, которую дообучаем.
Env
: Указана версия Python используемая в окружении и инструкция как развернуть
окружение для модели, чтобы можно было запустить код в jupyter notebook.