Tích hợp MLflow cho Ultralytics YOLO
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:
Đả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:
Cách sử dụng
Lệnh
-
Đặt tên dự án : Bạn có thể đặt tên dự án thông qua biến môi trường:
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
. -
Đặ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:
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
. -
Khởi động Máy chủ MLflow cục bộ : Để bắt đầu theo dõi, hãy sử dụng:
Đ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. -
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:
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ụ
-
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ướcon_fit_epoch_end
được gọi là. -
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.
-
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.
Vô hiệu hóa MLflow
Để tắt ghi nhật ký MLflow:
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:
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
Cuối cùng, hãy khởi động máy chủ MLflow cục bộ để theo dõi:
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 :
Để 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:
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:
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 .