Yolov8 - обучаем нейросеть на своих данных

Yolov8 - обучаем нейросеть на своих данных
Спонсоры статьи:



Наши преимущества:​​

Анонимность. Простая регистрация в нашей панели без необходимости заполнять личные данные.
  • Все домены регистрируются на разные виртуальные подтвержденные данные и не связаны между собой.
  • Покупка с баланса, который можно пополнить любым способом, в том числе криптой, и нет минимальных сумм.
  • Полное управление DNS записями.
  • Бесплатное автоматическое подключение CloudFlare с SSL сертификатом.
  • Передача управления возможна путем смены name-серверов (NS).
  • Автоматическая активация домена. В течении 1 часа.
​

НИКАКИХ ДОПОЛНИТЕЛЬНЫХ ПЛАТЕЖЕЙ И ПОДПИСОК!

Никаких БОТов! Удобный Личный Кабинет без риска потери доступа!

Список доменных зон (самая актуальная информация на сайте):

xyz: 140 ₽ | top: 140 ₽ | cfd: 180 ₽ | sbs: 180 ₽| icu: 195₽ | cyou: 195 ₽ | shop: 220 ₽
com: 1120 ₽ | net: 1375 ₽
​​

Сайт: https://kehr.domains​​

Срок регистрации: Домен регистрируется на 1 год без возможности продления
Ответственность: В случае блокировок домена за вашу деятельность или попадания доменов в черные списки, ответственность лежит на вас и возврат средств не производится.
Обязательства: Автоматическое продление регистраций не предусмотрено. Никаких ограничений на частоту и смену NS. Не бывает блокировок и потерь средств в процессе регистрации. Мы не несем ответственность за судьбу домена после его активации.

Любые вопросы, связанные с регистрацией, работоспособностью и продлением, вы можете решить в Поддержке.

В данной статье будет мини гайд по обучению Yolov8 на своем ПК
c6499a58-f579-4d2a-851e-980a921c9b06.svg
Люди со слабыми видеокартами или картами от AMD гайд к сожалению, не для вас. Так же я предоставлю в конце результат как я смог обучить нейросеть для определения отзывов оформленных не по 3.15
f1c3f633-da80-496f-91b7-6d5dfe9c4be9.webp


С чего начнем? С установки Anaconda.​​

Anaconda-это дистрибутив языков программирования Python и R для научных вычислений (data science, приложения машинного обучения, крупномасштабная обработка данных, предиктивная аналитика и т.д.), направленный на упрощение управления пакетами и их развертывания. Дистрибутив включает в себя пакеты data-science, подходящие для Windows, Linux и macOS.

Переходим по ссылке https://www.anaconda.com/ и нажимаем Free Download


Затем выбираем версию под Windows и устанавливаем ее
​

Следуйте скриншотам при установке


После установки Anaconda, нам необходимо установить Microsoft C++ Build tools, CUDA, cuDNN​​

Установить Microsoft C++ Build Tools можно здесь - https://visualstudio.microsoft.com/ru/visual-cpp-build-tools/ ​


Перейдем на сайт https://developer.nvidia.com/cuda-toolkit ​

жмем зеленую кнопку Download Now
Выбираем Windows, архитектуру, версию Windows и тип установщика.
нажимаем Download и скачиваем

Ставим все как на скриншоте

​


Теперь установим cuDNN​​
Переходим по ссылке https://developer.nvidia.com/rdp/cudnn-archive


Жмем зеленую кнопку, нас должно переадресовать.
Если просит войти - проходим авторизацию в Nvidia

Затем ставим галочку и скачиваем Local installer for Windows

Открываем архив и из него bin, include, lib>x64 перетаскиваем в папку с CUDA.



Настраиваем системные среды​​

1. Ищем в пуске Изменение системных переменных среды​


2. Открываем их​


3. Нажимаем на кнопку "Переменные среды..."​


Нажимаем на Path несколько раз

Нажимаем New и добавляем путь до CUDA/bin, CUDA/libnvvp

Сохраняем



Открываем консоль cmd.exe и пишем в ней nvcc --version​

​

Все необходимое мы поставили, теперь плавно переходим к обучению нейросети. Начнем с создания пространства для Anaconda​​

Открываем консоль Anaconda и пишем там conda create -n lzt python=3.10.6 anaconda. Таким образом мы создадим окружающую среду для всего этого​


жмем "y" на данном этапе.
ожидаем когда все пакеты установятся.
Пишем conda activate lzt и теперь мы сидим под данным окружением

Устанавливаем PyTorch с поддержкой GPU для нашей анаконды​​

Переходим на сайт https://pytorch.org/ ​

​

Нам выдали подобную команду которую нам необходимо вставить в Anaconda: pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

Если после установки у вас torch cuda is available = True значит все сделали правильно

После всех проделанных действий устанавливаем Ultralytics для работы yolov8​​

​

Все необходимое для работы мы установили, сейчас наша главная цель создать датасет, а затем скормить его для обучения.​​
Переходим на сайт https://app.roboflow.com/ и регистрируемся, если ранее это не было сделано. Я пользуюсь данным сайтом длительное время, с помощью него можно будет максимально удобно создавать датасеты
fcac6a5d-06e9-4a3e-988c-459a157d4f3f.webp


После регестрации, нам необходимо создать проект​​


Нажимаем на фиолетовую кнопочку Create New Project

Создаем проект, в данном примере определение объектов на фотографии.

После того как проект был создан - необходимо загрузить изображения, а затем для каждого с помощью специального инструмента выделить объект для которого мы будем обучать нашу нейросеть.​​


После загрузки нажимаем Save and Continue
И жмем Assign Images

Жмем здесь на кнопку и начинаем выделять объекты на фотографии


После завершения процесса с каждым изображением нажимаем Add Images и добавляем их в датасет

Скачиваем датасет с сайта и на его основе будем переходить к обучению нейросети​​

Переходим во вкладку Generate

жмем Create new version

и настраиваем под себя

После завершения процесса жмем и скачиваем его на наш компьютер в формате yolov8 zip архивом


Подготавливаем файл train.py с помощью которого будем запускать тренировку​​



from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n.yaml") # build a new model from scratch

# Use the model
if __name__ == '__main__':
results = model.train(data="./data.yaml", epochs=2500, patience=0) # train the model

Python

Код:
from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n.yaml")  # build a new model from scratch

# Use the model
if __name__ == '__main__':
    results = model.train(data="./data.yaml", epochs=2500, patience=0)  # train the model

Не забудьте подправить пути если это необходимо



Запускаем тренировку нейросети​​


Пишем python train.py в консоль

Процесс обучения должен был запуститься


По окончанию тренировки мы получим сообщение с путем к нашей обученной модели.

Далее данную модель можно будет дообучать когда захотите необходимо добавить resume=True в файле train.py и указать нашу модель

На этом гайд закончен. Мы обучили модель на собственных данных которую можно будет использовать для распознавания объектов. Так же как и обещал покажу свой обученный датасет который я использую для определения отзывов оформленных не по 3.15
b45aa3c5-a339-48c6-9e77-fa4f6899746a.webp


Комментарии 0

Пока нет комментариев. Начните обсуждение.
Войдите, чтобы оставить комментарий.
Назад
Верх