Bỏ qua nội dung

Tích hợp MLflow cho Ultralytics YOLO

Hệ sinh thái MLflow

Giới thiệu

Ghi nhật ký thử nghiệm là một khía cạnh quan trọng của quy trình làm việc học máy cho phép theo dõi nhiều số liệu, tham số và hiện vật khác nhau. Nó giúp tăng cường khả năng tái tạo mô hình, gỡ lỗi sự cố và cải thiện hiệu suất mô hình. Ultralytics YOLO , được biết đến với khả năng phát hiện đối tượng theo thời gian thực, hiện cung cấp khả năng tích hợp với MLflow , một nền tảng nguồn mở để quản lý toàn bộ vòng đời học máy.

Trang tài liệu này là hướng dẫn toàn diện về cách thiết lập và sử dụng các khả năng ghi nhật ký MLflow cho bạn Ultralytics YOLO dự án.

MLflow là gì?

MLflow là một nền tảng mã nguồn mở do Databricks phát triển để quản lý vòng đời học máy từ đầu đến cuối. Nó bao gồm các công cụ để theo dõi các thí nghiệm, đóng gói mã thành các lần chạy có thể tái tạo và chia sẻ và triển khai các mô hình. MLflow được thiết kế để hoạt động với bất kỳ thư viện học máy và ngôn ngữ lập trình nào.

Đặc trưng

  • Ghi nhật ký số liệu : Ghi nhật ký số liệu vào cuối mỗi kỷ nguyên và vào cuối quá trình đào tạo.
  • Ghi nhật ký tham số : Ghi nhật ký tất cả các tham số được sử dụng trong quá trình đào tạo.
  • Ghi nhật ký hiện vật : Ghi nhật ký hiện vật mô hình, bao gồm trọng số và tệp cấu hình, vào cuối quá trình đào tạo.

Thiết lập và điều kiện tiên quyết

Đảm bảo MLflow đã được cài đặt. Nếu chưa, hãy cài đặt bằng pip:

pip install mlflow

Đảm bảo rằng ghi nhật ký MLflow được bật trong Ultralytics cài đặt. Thông thường, điều này được kiểm soát bởi các cài đặt mflow chìa khóa. Xem cài đặt trang để biết thêm thông tin.

Cập nhật Ultralytics Cài đặt MLflow

Trong vòng Python môi trường, gọi là update phương pháp trên settings phản đối việc thay đổi cài đặt của bạn:

from ultralytics import settings

# Update a setting
settings.update({"mlflow": True})

# Reset settings to default values
settings.reset()

Nếu bạn thích sử dụng giao diện dòng lệnh, các lệnh sau đây sẽ cho phép bạn sửa đổi cài đặt của mình:

# Update a setting
yolo settings runs_dir='/path/to/runs'

# Reset settings to default values
yolo settings reset

Cách sử dụng

Lệnh

  1. Đặt tên dự án : Bạn có thể đặt tên dự án thông qua biến môi trường:

    export MLFLOW_EXPERIMENT_NAME=<your_experiment_name>
    

    Hoặc sử dụng project=<project> tranh luận khi đào tạo một YOLO mô hình, tức là yolo train project=my_project.

  2. Đặt tên cho lần chạy : Tương tự như đặt tên cho dự án, bạn có thể đặt tên cho lần chạy thông qua biến môi trường:

    export MLFLOW_RUN=<your_run_name>
    

    Hoặc sử dụng name=<name> tranh luận khi đào tạo một YOLO mô hình, tức là yolo train project=my_project name=my_name.

  3. Khởi động Máy chủ MLflow cục bộ : Để bắt đầu theo dõi, hãy sử dụng:

    mlflow server --backend-store-uri runs/mlflow'
    

    Điều này sẽ khởi động một máy chủ cục bộ tại http://127.0.0.1:5000 theo mặc định và lưu tất cả nhật ký mlflow vào thư mục 'runs/mlflow'. Để chỉ định một URI khác, hãy đặt MLFLOW_TRACKING_URI biến môi trường.

  4. Tắt các phiên bản MLflow Server : Để dừng tất cả các phiên bản MLflow đang chạy, hãy chạy:

    ps aux | grep 'mlflow' | grep -v 'grep' | awk '{print $2}' | xargs kill -9
    

Ghi nhật ký

Việc khai thác gỗ được thực hiện bởi on_pretrain_routine_end, on_fit_epoch_end, Và on_train_end hàm gọi lại. Các hàm này được gọi tự động trong các giai đoạn tương ứng của quá trình đào tạo và chúng xử lý việc ghi nhật ký các tham số, số liệu và hiện vật.

Ví dụ

  1. Ghi nhật ký số liệu tùy chỉnh: Bạn có thể thêm số liệu tùy chỉnh để ghi lại bằng cách sửa đổi trainer.metrics từ điển trước on_fit_epoch_end được gọi là.

  2. Xem Thí nghiệm: Để xem nhật ký của bạn, hãy điều hướng đến máy chủ MLflow của bạn (thường là http://127.0.0.1:5000) và chọn thử nghiệm của bạn và chạy. YOLO Thí nghiệm MLflow

  3. Xem Chạy: Chạy là các mô hình riêng lẻ bên trong một thử nghiệm. Nhấp vào Chạy và xem chi tiết Chạy, bao gồm các hiện vật đã tải lên và trọng số mô hình. YOLO Chạy MLflow

Vô hiệu hóa MLflow

Để tắt ghi nhật ký MLflow:

yolo settings mlflow=False

Phần kết luận

Tích hợp ghi nhật ký MLflow với Ultralytics YOLO cung cấp một cách hợp lý để theo dõi các thử nghiệm học máy của bạn. Nó cho phép bạn theo dõi số liệu hiệu suất và quản lý các hiện vật một cách hiệu quả, do đó hỗ trợ phát triển và triển khai mô hình mạnh mẽ. Để biết thêm chi tiết, vui lòng truy cập tài liệu chính thức của MLflow.

CÂU HỎI THƯỜNG GẶP

Làm thế nào để tôi thiết lập ghi nhật ký MLflow với Ultralytics YOLO ?

Để thiết lập ghi nhật ký MLflow với Ultralytics YOLO , trước tiên bạn cần đảm bảo MLflow đã được cài đặt. Bạn có thể cài đặt bằng pip:

pip install mlflow

Tiếp theo, bật chức năng ghi nhật ký MLflow Ultralytics cài đặt. Điều này có thể được kiểm soát bằng cách sử dụng mlflow chìa khóa. Để biết thêm thông tin, hãy xem hướng dẫn cài đặt.

Cập nhật Ultralytics Cài đặt MLflow

from ultralytics import settings

# Update a setting
settings.update({"mlflow": True})

# Reset settings to default values
settings.reset()
# Update a setting
yolo settings runs_dir='/path/to/runs'

# Reset settings to default values
yolo settings reset

Cuối cùng, hãy khởi động máy chủ MLflow cục bộ để theo dõi:

mlflow server --backend-store-uri runs/mlflow

Tôi có thể ghi lại những số liệu và thông số nào bằng MLflow? Ultralytics YOLO ?

Ultralytics YOLO với MLflow hỗ trợ ghi lại nhiều số liệu, thông số và hiện vật khác nhau trong suốt quá trình đào tạo:

  • Ghi nhật ký số liệu : Theo dõi số liệu vào cuối mỗi kỷ nguyên và khi hoàn tất quá trình đào tạo.
  • Ghi nhật ký tham số : Ghi nhật ký tất cả các tham số được sử dụng trong quá trình đào tạo.
  • Ghi nhật ký hiện vật : Lưu các hiện vật của mô hình như trọng số và tệp cấu hình sau khi đào tạo.

Để biết thông tin chi tiết hơn, hãy truy cập tài liệu theo dõi YOLO Ultralytics .

Tôi có thể tắt tính năng ghi nhật ký MLflow sau khi đã bật không?

Có, bạn có thể tắt ghi nhật ký MLflow cho Ultralytics YOLO bằng cách cập nhật cài đặt. Sau đây là cách bạn có thể thực hiện bằng cách sử dụng CLI :

yolo settings mlflow=False

Để tùy chỉnh và thiết lập lại cài đặt thêm, hãy tham khảo hướng dẫn cài đặt .

Làm thế nào tôi có thể bắt đầu và dừng máy chủ MLflow cho Ultralytics YOLO theo dõi?

Để bắt đầu một máy chủ MLflow để theo dõi các thí nghiệm của bạn trong Ultralytics YOLO , sử dụng lệnh sau:

mlflow server --backend-store-uri runs/mlflow

Lệnh này khởi động máy chủ cục bộ tại http://127.0.0.1:5000 theo mặc định. Nếu bạn cần dừng chạy các phiên bản máy chủ MLflow, hãy sử dụng lệnh sau bash yêu cầu:

ps aux | grep 'mlflow' | grep -v 'grep' | awk '{print $2}' | xargs kill -9

Tham khảo phần lệnh để biết thêm các tùy chọn lệnh.

Lợi ích của việc tích hợp MLflow với Ultralytics YOLO để theo dõi thí nghiệm?

Tích hợp MLflow với Ultralytics YOLO cung cấp một số lợi ích cho việc quản lý các thí nghiệm học máy của bạn:

  • Theo dõi thử nghiệm nâng cao : Dễ dàng theo dõi và so sánh các lần chạy khác nhau và kết quả của chúng.
  • Cải thiện khả năng tái tạo mô hình : Đảm bảo rằng các thí nghiệm của bạn có thể tái tạo được bằng cách ghi lại tất cả các thông số và hiện vật.
  • Giám sát hiệu suất : Trực quan hóa số liệu hiệu suất theo thời gian để đưa ra quyết định dựa trên dữ liệu nhằm cải thiện mô hình.

Để có cái nhìn sâu sắc hơn về việc thiết lập và tận dụng MLflow với Ultralytics YOLO , khám phá tài liệu Tích hợp MLflow cho Ultralytics YOLO .

📅 Được tạo ra cách đây 1 năm ✏️ Đã cập nhật cách đây 2 tháng

Bình luận