Bỏ để qua phần nội dung

Đào tạo YOLOv8 với ClearML: Hợp lý hóa quy trình làm việc MLOps của bạn

MLOps thu hẹp khoảng cách giữa việc tạo và triển khai các mô hình học máy trong các cài đặt trong thế giới thực. Nó tập trung vào việc triển khai hiệu quả, khả năng mở rộng và quản lý liên tục để đảm bảo các mô hình hoạt động tốt trong các ứng dụng thực tế.

Ultralytics YOLOv8 Dễ dàng tích hợp với ClearML, hợp lý hóa và tăng cường đào tạo và quản lý mô hình phát hiện đối tượng của bạn. Hướng dẫn này sẽ hướng dẫn bạn qua quá trình tích hợp, chi tiết cách thiết lập ClearML, quản lý thử nghiệm, tự động hóa quản lý mô hình và cộng tác hiệu quả.

ClearML

ClearML Tổng quan

ClearML là một nền tảng MLOps mã nguồn mở sáng tạo được thiết kế khéo léo để tự động hóa, giám sát và điều phối quy trình học máy. Các tính năng chính của nó bao gồm tự động ghi nhật ký tất cả dữ liệu đào tạo và suy luận để có khả năng tái tạo thử nghiệm đầy đủ, giao diện người dùng web trực quan để dễ dàng trực quan hóa và phân tích dữ liệu, thuật toán tối ưu hóa siêu tham số nâng cao và quản lý mô hình mạnh mẽ để triển khai hiệu quả trên các nền tảng khác nhau.

YOLOv8 Đào tạo với ClearML

Bạn có thể mang lại tự động hóa và hiệu quả cho quy trình học máy của mình bằng cách cải thiện quy trình đào tạo của bạn bằng cách tích hợp YOLOv8 với ClearML.

Cài đặt

Để cài đặt các gói cần thiết, hãy chạy:

Cài đặt

# Install the required packages for YOLOv8 and ClearML
pip install ultralytics clearml

Để biết hướng dẫn chi tiết và các phương pháp hay nhất liên quan đến quá trình cài đặt, hãy nhớ kiểm tra YOLOv8 Hướng dẫn cài đặt. Trong khi cài đặt các gói cần thiết cho YOLOv8, nếu bạn gặp bất kỳ khó khăn nào, hãy tham khảo hướng dẫn Các vấn đề thường gặp của chúng tôi để biết các giải pháp và mẹo.

Cấu hình ClearML

Khi bạn đã cài đặt các gói cần thiết, bước tiếp theo là khởi tạo và cấu hình ClearML SDK. Điều này liên quan đến việc thiết lập ClearML tài khoản và có được thông tin đăng nhập cần thiết để kết nối liền mạch giữa môi trường phát triển của bạn và ClearML máy chủ.

Bắt đầu bằng cách khởi tạo ClearML SDK trong môi trường của bạn. Các 'clearmlLệnh -init 'bắt đầu quá trình thiết lập và nhắc bạn nhập các thông tin đăng nhập cần thiết.

Thiết lập SDK ban đầu

# Initialize your ClearML SDK setup process
clearml-init

Sau khi thực hiện lệnh này, hãy truy cập ClearML Trang Cài đặt. Điều hướng đến góc trên cùng bên phải và chọn "Cài đặt". Chuyển đến phần "Không gian làm việc" và nhấp vào "Tạo thông tin đăng nhập mới". Sử dụng thông tin đăng nhập được cung cấp trong cửa sổ bật lên "Tạo thông tin xác thực" để hoàn tất thiết lập theo hướng dẫn, tùy thuộc vào việc bạn có đang định cấu hình hay không ClearML trong Jupyter Notebook hoặc địa phương Python môi trường.

Sử dụng

Trước khi đi sâu vào hướng dẫn sử dụng, hãy chắc chắn kiểm tra phạm vi của YOLOv8 Mô hình được cung cấp bởi Ultralytics. Điều này sẽ giúp bạn chọn mô hình phù hợp nhất cho yêu cầu dự án của bạn.

Sử dụng

from clearml import Task
from ultralytics import YOLO

# Step 1: Creating a ClearML Task
task = Task.init(project_name="my_project", task_name="my_yolov8_task")

# Step 2: Selecting the YOLOv8 Model
model_variant = "yolov8n"
task.set_parameter("model_variant", model_variant)

# Step 3: Loading the YOLOv8 Model
model = YOLO(f"{model_variant}.pt")

# Step 4: Setting Up Training Arguments
args = dict(data="coco8.yaml", epochs=16)
task.connect(args)

# Step 5: Initiating Model Training
results = model.train(**args)

Hiểu mã

Hãy hiểu các bước được trình bày trong đoạn mã sử dụng ở trên.

Bước 1: Tạo một ClearML Tác vụ: Một nhiệm vụ mới được khởi tạo trong ClearML, chỉ định tên dự án và nhiệm vụ của bạn. Nhiệm vụ này sẽ theo dõi và quản lý quá trình đào tạo mô hình của bạn.

Bước 2: Chọn nút YOLOv8 Mẫu: Các model_variant biến được đặt thành 'yolov8n', một trong những YOLOv8 Mô hình. Biến thể này sau đó được đăng nhập ClearML để theo dõi.

Bước 3: Đang tải YOLOv8 Mô hình: Đã chọn YOLOv8 Mô hình được tải bằng cách sử dụng Ultralytics' YOLO lớp, chuẩn bị cho đào tạo.

Bước 4: Thiết lập đối số đào tạo: Các đối số đào tạo chính như tập dữ liệu (coco8.yaml) và số kỷ nguyên (16) được sắp xếp trong một từ điển và được kết nối với ClearML nhiệm vụ. Điều này cho phép theo dõi và sửa đổi tiềm năng thông qua ClearML UI. Để hiểu chi tiết về quy trình đào tạo mô hình và các phương pháp hay nhất, hãy tham khảo YOLOv8 Hướng dẫn đào tạo mô hình.

Bước 5: Bắt đầu đào tạo mô hình: Việc đào tạo mô hình được bắt đầu với các đối số được chỉ định. Kết quả của quá trình đào tạo được ghi lại trong results biến số.

Hiểu đầu ra

Khi chạy đoạn mã sử dụng ở trên, bạn có thể mong đợi kết quả sau:

  • Thông báo xác nhận cho biết việc tạo mới ClearML nhiệm vụ, cùng với ID duy nhất của nó.
  • Một thông báo thông tin về mã tập lệnh đang được lưu trữ, cho biết rằng việc thực thi mã đang được theo dõi bởi ClearML.
  • Liên kết URL đến ClearML Trang kết quả nơi bạn có thể theo dõi tiến trình đào tạo và xem nhật ký chi tiết.
  • Tiến trình tải xuống cho YOLOv8 mô hình và tập dữ liệu được chỉ định, tiếp theo là bản tóm tắt về kiến trúc mô hình và cấu hình đào tạo.
  • Thông báo khởi tạo cho các thành phần đào tạo khác nhau như TensorBoard, Độ chính xác hỗn hợp tự động (AMP) và chuẩn bị tập dữ liệu.
  • Cuối cùng, quá trình đào tạo bắt đầu, với các cập nhật tiến độ khi mô hình đào tạo trên tập dữ liệu được chỉ định. Để hiểu sâu hơn về các chỉ số hiệu suất được sử dụng trong quá trình đào tạo, hãy đọc hướng dẫn của chúng tôi về số liệu hiệu suất.

Xem ClearML Trang kết quả

Bằng cách nhấp vào liên kết URL đến ClearML Trang kết quả Trong đầu ra của đoạn mã sử dụng, bạn có thể truy cập chế độ xem toàn diện về quy trình đào tạo mô hình của mình.

Các tính năng chính của ClearML Trang kết quả

  • Theo dõi số liệu thời gian thực

    • Theo dõi các số liệu quan trọng như mất mát, độ chính xác và điểm xác thực khi chúng xảy ra.
    • Cung cấp phản hồi ngay lập tức để điều chỉnh hiệu suất mô hình kịp thời.
  • So sánh thử nghiệm

    • So sánh các hoạt động đào tạo khác nhau song song.
    • Cần thiết cho việc điều chỉnh siêu tham số và xác định các mô hình hiệu quả nhất.
  • Nhật ký và kết quả đầu ra chi tiết

    • Truy cập nhật ký toàn diện, biểu diễn đồ họa của số liệu và kết quả đầu ra của bảng điều khiển.
    • Có được sự hiểu biết sâu sắc hơn về hành vi mô hình và giải quyết vấn đề.
  • Giám sát sử dụng tài nguyên

    • Giám sát việc sử dụng tài nguyên tính toán, bao gồm CPU, GPU và bộ nhớ.
    • Chìa khóa để tối ưu hóa hiệu quả và chi phí đào tạo.
  • Mô hình quản lý hiện vật

    • Xem, tải xuống và chia sẻ cấu phần lạ mô hình như mô hình và điểm kiểm tra đã được đào tạo.
    • Tăng cường cộng tác và hợp lý hóa việc triển khai và chia sẻ mô hình.

Để có hướng dẫn trực quan về những gì ClearML Trang kết quả trông như thế nào, xem video dưới đây:



Xem: YOLOv8 Tích hợp MLOps bằng cách sử dụng ClearML

Các tính năng nâng cao trong ClearML

ClearML cung cấp một số tính năng nâng cao để nâng cao trải nghiệm MLOps của bạn.

Thực hiện từ xa

ClearMLTính năng thực thi từ xa của tạo điều kiện thuận lợi cho việc tái tạo và thao tác các thí nghiệm trên các máy khác nhau. Nó ghi lại các chi tiết cần thiết như các gói đã cài đặt và các thay đổi không cam kết. Khi một nhiệm vụ được xếp hàng đợi, ClearML Tổng đài viên kéo nó, tái tạo môi trường và chạy thử nghiệm, báo cáo lại với kết quả chi tiết.

Triển khai một ClearML Agent rất đơn giản và có thể được thực hiện trên các máy khác nhau bằng lệnh sau:

clearml-agent daemon --queue <queues_to_listen_to> [--docker]

Thiết lập này có thể áp dụng cho máy ảo đám mây, GPU cục bộ hoặc máy tính xách tay. ClearML Autoscaler giúp quản lý khối lượng công việc đám mây trên các nền tảng như AWS, GCP và Azure, tự động hóa việc triển khai các tổng đài viên và điều chỉnh tài nguyên dựa trên ngân sách tài nguyên của bạn.

Nhân bản, chỉnh sửa và xếp hàng

ClearMLGiao diện thân thiện với người dùng của nó cho phép dễ dàng nhân bản, chỉnh sửa và xếp hàng đợi các tác vụ. Người dùng có thể sao chép thử nghiệm hiện có, điều chỉnh thông số hoặc các chi tiết khác thông qua giao diện người dùng và xếp hàng đợi tác vụ để thực thi. Quá trình sắp xếp hợp lý này đảm bảo rằng ClearML Tác nhân thực hiện tác vụ sử dụng các cấu hình được cập nhật, làm cho nó trở nên lý tưởng cho thử nghiệm lặp lại và tinh chỉnh mô hình.


Nhân bản, chỉnh sửa và xếp hàng với ClearML

Tóm tắt

Hướng dẫn này đã hướng dẫn bạn qua quá trình tích hợp ClearML với Ultralytics' YOLOv8. Bao gồm mọi thứ từ thiết lập ban đầu đến quản lý mô hình nâng cao, bạn đã khám phá ra cách tận dụng ClearML để đào tạo hiệu quả, theo dõi thử nghiệm và tối ưu hóa quy trình làm việc trong các dự án máy học của bạn.

Để biết thêm chi tiết về cách sử dụng, hãy truy cập ClearMLtài liệu chính thức của họ.

Ngoài ra, hãy khám phá thêm các tích hợp và khả năng của Ultralytics bằng cách truy cập Ultralytics Trang hướng dẫn tích hợp, là một kho tàng tài nguyên và thông tin chi tiết.



Đã tạo 2023-11-29, Cập nhật 2024-05-18
Tác giả: Glenn-Jocher (7), Abirami-Vina (1)

Ý kiến