Перейти к содержанию

Neptune и отказ от SaaS

Neptune соглашение о поглощении OpenAI и прекратит предоставление своих услуг (SaaS) после переходного периода, который закончится 4 марта 2026 года. Ознакомьтесь с официальным объявлением и соответствующим образом спланируйте миграцию или экспорт данных.

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

Neptune — это хранилище метаданных для MLOps, созданное для команд, которые проводят много экспериментов. Оно предоставляет вам единое место для регистрации, хранения, отображения, организации, сравнения и запроса всех ваших метаданных по построению моделей.

Ultralytics YOLO11 с Neptune оптимизации отслеживания экспериментов. Эта интеграция позволяет автоматически регистрировать метрики обучения, визуализировать прогнозы модели и хранить артефакты модели без написания пользовательского кода регистрации.

Обзор панели управления Neptune.ai

Основные характеристики

  • Автоматическая регистрация: автоматическая регистрация ключевых показателей обучения, таких как потеря ячейки, потеря классификации и mAP.
  • Визуализация изображений: просматривайте мозаики обучения и прогнозы валидации прямо в Neptune .
  • Модель контрольной точки: Загрузите и контролируйте версии весов вашей обученной модели (best.pt) автоматически по окончании обучения.
  • Отслеживание гиперпараметров: регистрируйте все параметры конфигурации, чтобы обеспечить полную воспроизводимость ваших экспериментов.
  • Интерактивные графики: визуализируйте матрицы путаницы и кривые точности-восстановления для анализа производительности модели.

Установка

Чтобы использовать Neptune Ultralytics, вам необходимо установить neptune клиентский пакет вместе с ultralytics.

Установка

# Install the required packages
pip install ultralytics neptune

# Enable Neptune integration in Ultralytics settings
yolo settings neptune=True

Конфигурация

Перед началом обучения необходимо подключить локальную среду к Neptune . Для этого понадобятся API-токен и название проекта из Neptune .

1. Получите свои учетные данные

  1. Войдите в Neptune.ai.
  2. Создайте новый проект (или выберите существующий).
  3. Перейдите в меню пользователя и получите свой API-токен.

2. Установите переменные среды

Самый безопасный способ обработки учетных данных — через переменные среды. Обратите внимание, чтоNeptune Ultralytics Neptune считывает YOLO project аргумент и не использует NEPTUNE_PROJECT. Передайте полный Neptune (например, workspace/name) через project= в вашей команде обучения; в противном случае Neptune пытаться использовать буквальное значение по умолчанию "Ultralytics" и запуск завершится с ошибкой.

export NEPTUNE_API_TOKEN="your_long_api_token_here" # required
$Env:NEPTUNE_API_TOKEN = "your_long_api_token_here"  # required
import os

os.environ["NEPTUNE_API_TOKEN"] = "your_long_api_token_here"
os.environ["NEPTUNE_PROJECT"] = "your_workspace/your_project"

Использование

После настройки вы можете приступить к обучению YOLO11 . Neptune работает автоматически, когда neptune пакет установлен и интеграция включена в настройках.

Пример обучения

Обучение YOLO11 Neptune

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")

# Train the model
# Pass the Neptune project slug as the 'project' argument (workspace/name)
results = model.train(data="coco8.yaml", epochs=10, project="my-workspace/my-project", name="experiment-1")
# Train via CLI
# project must be the Neptune slug (workspace/name); otherwise run creation will fail
yolo train data=coco8.yaml epochs=10 project=my-workspace/my-project name=experiment-1

Понимание интеграции

На следующей схеме показано, как конвейер Ultralytics взаимодействует с Neptune регистрации различных артефактов и метрик.

graph LR
    A[YOLO Training Loop] --> B{Neptune Callback}
    B -->|Log Scalars| C[Loss, mAP, LR]
    B -->|Log Images| D[Mosaics, Preds]
    B -->|Log Artifacts| E[Model Weights]
    B -->|Log Metadata| F[Hyperparameters]

    C --> G[Neptune Server]
    D --> G
    E --> G
    F --> G

    G --> H[Neptune Web Dashboard]

Что регистрируется?

При запуске команды обучения Neptune автоматически фиксирует следующую структуру данных в вашем запуске:

  1. Конфигурация/гиперпараметры: все аргументы обучения (эпохи, lr0, оптимизатор и т. д.) регистрируются в разделе «Конфигурация».
  2. Конфигурация/модель: архитектура и определение модели.
  3. Метрики:
    • Обучение: box_loss, cls_loss, dfl_loss, lr (скорость обучения).
    • Метрики: precision, recall, mAP50, mAP50-95.
  4. Изображения:
    • Mosaic: Партии обучения, демонстрирующие увеличение объема данных.
    • Validation: Метки истинных значений и прогнозы модели на валидационных данных.
    • Plots: Матрицы путаницы, кривые точности-восстановления.
  5. Веса: Окончательная обученная модель (best.pt) загружается в weights папка в Neptune .

Расширенное использование

Организация забегов

Вы можете использовать стандартный Ultralytics project и name аргументы для организации ваших запусков в Neptune.

  • project: Должно быть слэг Neptune workspace/name; это то, что обратный вызов передает в neptune.init_run.
  • name: Служит идентификатором для конкретного запуска.

Пользовательская регистрация

Если вам необходимо регистрировать дополнительные пользовательские метрики наряду с автоматической регистрацией, вы можете получить доступ к Neptune . Обратите внимание, что вам потребуется изменить логику тренера или создать пользовательский обратный вызов для доступа к конкретному объекту запуска, поскольку Ultralytics обрабатывает жизненный цикл запуска внутренне.

Часто задаваемые вопросы

Как отключить Neptune ?

Если вы установили neptune но хотите отключить ведение журнала для определенной сессии или глобально, вы можете изменить YOLO .

# Disable Neptune integration
yolo settings neptune=False

Мои изображения не загружаются. В чем проблема?

Убедитесь, что ваша сеть разрешает подключения к серверам Neptune. Кроме того, регистрация изображений обычно происходит через определенные промежутки времени (например, в конце эпох или в конце обучения). Если вы прерываете обучение досрочно с помощью Ctrl+C, некоторые конечные артефакты, такие как матрицы путаницы или веса лучшей модели, могут не быть загружены.

Могу ли я войти в систему с определенным идентификатором Neptune ?

Текущая интеграция автоматически создает новый запуск для каждой сессии обучения. Чтобы возобновить регистрацию в существующем запуске, обычно необходимо вручную обработать Neptune в Python , что выходит за рамки автоматической интеграции. Однако Ultralytics возобновление обучения локально, что приведет к созданию нового запуска в Neptune track возобновленных track .

Где я могу найти веса моделей в Neptune?

В Neptune перейдите в раздел Артефакты или Все метаданные разделе. Вы найдете weights папка, содержащая ваши best.pt файл, который можно загрузить для развертывания.



📅 Создано 0 дней назад ✏️ Обновлено 0 дней назад
glenn-jocher

Комментарии