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

Elevating YOLOv8 Đào tạo: Đơn giản hóa quy trình ghi nhật ký của bạn với Comet ML

Ghi nhật ký các chi tiết đào tạo chính như thông số, số liệu, dự đoán hình ảnh và điểm kiểm tra mô hình là điều cần thiết trong học máy — nó giữ cho dự án của bạn minh bạch, tiến độ của bạn có thể đo lường được và kết quả của bạn có thể lặp lại.

Ultralytics YOLOv8 Tích hợp liền mạch với Comet ML, nắm bắt và tối ưu hóa hiệu quả mọi khía cạnh của bạn YOLOv8 Quy trình đào tạo của mô hình phát hiện đối tượng. Trong hướng dẫn này, chúng tôi sẽ đề cập đến quá trình cài đặt, Comet Thiết lập ML, thông tin chi tiết theo thời gian thực, ghi nhật ký tùy chỉnh và sử dụng ngoại tuyến, đảm bảo rằng YOLOv8 Đào tạo được ghi chép kỹ lưỡng và tinh chỉnh để có kết quả vượt trội.

Comet ML

Comet Tổng quan về ML

Comet ML là một nền tảng để theo dõi, so sánh, giải thích và tối ưu hóa các mô hình và thí nghiệm học máy. Nó cho phép bạn ghi lại các số liệu, thông số, phương tiện và hơn thế nữa trong quá trình đào tạo mô hình và theo dõi các thử nghiệm của bạn thông qua giao diện web thẩm mỹ. Comet ML giúp các nhà khoa học dữ liệu lặp lại nhanh hơn, tăng cường tính minh bạch và khả năng tái tạo, đồng thời hỗ trợ phát triển các mô hình sản xuất.

Khai thác sức mạnh của YOLOv8 và Comet ML

Bằng cách kết hợp Ultralytics YOLOv8 với Comet ML, bạn mở khóa một loạt các lợi ích. Chúng bao gồm quản lý thử nghiệm được đơn giản hóa, thông tin chi tiết theo thời gian thực để điều chỉnh nhanh, tùy chọn ghi nhật ký linh hoạt và phù hợp cũng như khả năng ghi nhật ký thử nghiệm ngoại tuyến khi truy cập internet bị hạn chế. Sự tích hợp này cho phép bạn đưa ra quyết định dựa trên dữ liệu, phân tích các chỉ số hiệu suất và đạt được kết quả đặc biệt.

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 Comet ML
pip install ultralytics comet_ml torch torchvision

Cấu hình Comet ML

Sau khi cài đặt các gói cần thiết, bạn sẽ cần đăng ký, nhận Comet Khóa API và định cấu hình nó.

Cấu hình Comet ML

# Set your Comet Api Key
export COMET_API_KEY=<Your API Key>

Sau đó, bạn có thể khởi tạo Comet dự án. Comet sẽ tự động phát hiện khóa API và tiến hành thiết lập.

import comet_ml

comet_ml.init(project_name="comet-example-yolov8-coco128")

Nếu bạn đang sử dụng Google Colab notebook, đoạn code ở trên sẽ nhắc bạn nhập khóa API để khởi tạo.

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 ultralytics import YOLO

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

# train the model
results = model.train(
    data="coco8.yaml",
    project="comet-example-yolov8-coco128",
    batch=32,
    save_period=1,
    save_json=True,
    epochs=3,
)

Sau khi chạy mã đào tạo, Comet ML sẽ tạo một thử nghiệm trong Comet Không gian làm việc để theo dõi quá trình chạy tự động. Sau đó, bạn sẽ được cung cấp một liên kết để xem nhật ký chi tiết của bạn YOLOv8 Quy trình đào tạo của người mẫu .

Comet tự động ghi lại dữ liệu sau mà không cần cấu hình bổ sung: các chỉ số như mAP và mất mát, siêu tham số, điểm kiểm tra mô hình, ma trận nhầm lẫn tương tác và dự đoán hộp giới hạn hình ảnh.

Hiểu hiệu suất mô hình của bạn với Comet Trực quan hóa ML

Hãy đi sâu vào những gì bạn sẽ thấy trên Comet Bảng điều khiển ML một lần YOLOv8 Mô hình bắt đầu đào tạo. Bảng điều khiển là nơi tất cả các hành động xảy ra, trình bày một loạt thông tin được ghi tự động thông qua hình ảnh và thống kê. Dưới đây là một chuyến tham quan nhanh:

Bảng thử nghiệm

Phần bảng thử nghiệm của Comet Bảng điều khiển ML sắp xếp và trình bày các lần chạy khác nhau và các chỉ số của chúng, chẳng hạn như mất mặt nạ phân đoạn, mất lớp, độ chính xác và độ chính xác trung bình trung bình.

Comet Tổng quan về ML

Metrics

Trong phần số liệu, bạn cũng có tùy chọn kiểm tra các chỉ số ở định dạng bảng, được hiển thị trong ngăn chuyên dụng như minh họa ở đây.

Comet Tổng quan về ML

Ma trận nhầm lẫn tương tác

Ma trận nhầm lẫn, được tìm thấy trong tab Ma trận nhầm lẫn, cung cấp một cách tương tác để đánh giá độ chính xác phân loại của mô hình. Nó nêu chi tiết các dự đoán chính xác và không chính xác, cho phép bạn hiểu điểm mạnh và điểm yếu của mô hình.

Comet Tổng quan về ML

Số liệu hệ thống

Comet ML ghi lại các số liệu hệ thống để giúp xác định bất kỳ tắc nghẽn nào trong quá trình đào tạo. Nó bao gồm các số liệu như GPU Sử dụng GPU sử dụng bộ nhớ, CPU sử dụng và sử dụng RAM. Đây là những điều cần thiết để giám sát hiệu quả sử dụng tài nguyên trong quá trình đào tạo mô hình.

Comet Tổng quan về ML

Tùy biến Comet Ghi nhật ký ML

Comet ML cung cấp sự linh hoạt để tùy chỉnh hành vi ghi nhật ký của nó bằng cách thiết lập các biến môi trường. Các cấu hình này cho phép bạn điều chỉnh Comet ML theo nhu cầu và sở thích cụ thể của bạn. Dưới đây là một số tùy chọn tùy chỉnh hữu ích:

Dự đoán hình ảnh ghi nhật ký

Bạn có thể kiểm soát số lần dự đoán hình ảnh Comet Nhật ký ML trong quá trình thử nghiệm của bạn. Theo mặc định, Comet ML ghi lại 100 dự đoán hình ảnh từ bộ xác thực. Tuy nhiên, bạn có thể thay đổi con số này để phù hợp hơn với yêu cầu của mình. Ví dụ: để ghi lại 200 dự đoán hình ảnh, hãy sử dụng mã sau:

import os

os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"

Khoảng thời gian ghi nhật ký hàng loạt

Comet ML cho phép bạn chỉ định tần suất các lô dự đoán hình ảnh được ghi lại. Các COMET_EVAL_BATCH_LOGGING_INTERVAL Biến môi trường kiểm soát tần số này. Cài đặt mặc định là 1, ghi lại các dự đoán từ mỗi lô xác thực. Bạn có thể điều chỉnh giá trị này để ghi nhật ký dự đoán ở một khoảng thời gian khác. Ví dụ: đặt nó thành 4 sẽ ghi lại các dự đoán từ mỗi đợt thứ tư.

import os

os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"

Vô hiệu hóa ghi nhật ký ma trận nhầm lẫn

Trong một số trường hợp, bạn có thể không muốn ghi lại ma trận nhầm lẫn từ bộ xác thực của mình sau mỗi kỷ nguyên. Bạn có thể tắt tính năng này bằng cách đặt COMET_EVAL_LOG_CONFUSION_MATRIX biến môi trường thành "false". Ma trận nhầm lẫn sẽ chỉ được ghi lại một lần, sau khi đào tạo hoàn tất.

import os

os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"

Ghi nhật ký ngoại tuyến

Nếu bạn thấy mình trong tình huống truy cập internet bị hạn chế, Comet ML cung cấp tùy chọn ghi nhật ký ngoại tuyến. Bạn có thể đặt COMET_MODE biến môi trường thành "ngoại tuyến" để bật tính năng này. Dữ liệu thử nghiệm của bạn sẽ được lưu cục bộ trong thư mục mà sau này bạn có thể tải lên Comet ML khi có kết nối internet.

import os

os.environ["COMET_MODE"] = "offline"

Tóm tắt

Hướng dẫn này đã hướng dẫn bạn cách tích hợp Comet ML với Ultralytics' YOLOv8. Từ cài đặt đến tùy chỉnh, bạn đã học cách hợp lý hóa việc quản lý thử nghiệm, có được thông tin chuyên sâu theo thời gian thực và điều chỉnh ghi nhật ký theo nhu cầu của dự án.

Khám phá Comet Tài liệu chính thức của ML để biết thêm thông tin chi tiết về việc tích hợp với YOLOv8.

Hơn nữa, nếu bạn đang muốn đi sâu hơn vào các ứng dụng thực tế của YOLOv8, đặc biệt đối với các tác vụ phân đoạn hình ảnh, hướng dẫn chi tiết này về Tinh chỉnh YOLOv8 với Comet ML cung cấp thông tin chi tiết có giá trị và hướng dẫn từng bước để nâng cao hiệu suất mô hình của bạn.

Ngoài ra, để khám phá các tích hợp thú vị khác với Ultralytics, hãy xem trang hướng dẫn tích hợp, nơi cung cấp nhiều tài nguyên và thông tin.

FAQ

Làm cách nào để tích hợp Comet ML với Ultralytics YOLOv8 để đào tạo?

Để tích hợp Comet ML với Ultralytics YOLOv8, hãy làm theo các bước sau:

  1. Cài đặt các gói cần thiết:

    pip install ultralytics comet_ml torch torchvision
    
  2. Thiết lập Comet Khóa API:

    export COMET_API_KEY=<Your API Key>
    
  3. Khởi tạo Comet Dự án trong Python Mã số:

    import comet_ml
    
    comet_ml.init(project_name="comet-example-yolov8-coco128")
    
  4. Đào tạo của bạn YOLOv8 Chỉ số mô hình và nhật ký:

    from ultralytics import YOLO
    
    model = YOLO("yolov8n.pt")
    results = model.train(
        data="coco8.yaml", project="comet-example-yolov8-coco128", batch=32, save_period=1, save_json=True, epochs=3
    )
    

Để biết hướng dẫn chi tiết hơn, hãy tham khảo Comet Phần cấu hình ML.

Lợi ích của việc sử dụng là gì Comet ML với YOLOv8?

Bằng cách tích hợp Ultralytics YOLOv8 với Comet ML, bạn có thể:

  • Theo dõi thông tin chi tiết theo thời gian thực: Nhận phản hồi tức thì về kết quả đào tạo của bạn, cho phép điều chỉnh nhanh chóng.
  • Ghi nhật ký các chỉ số mở rộng: Tự động nắm bắt các chỉ số thiết yếu như mAP, tổn thất, siêu tham số và điểm kiểm tra mô hình.
  • Theo dõi thử nghiệm ngoại tuyến: Ghi nhật ký khóa đào tạo của bạn chạy cục bộ khi không có truy cập internet.
  • So sánh các lần chạy đào tạo khác nhau: Sử dụng tính năng tương tác Comet Bảng điều khiển ML để phân tích và so sánh nhiều thử nghiệm.

Bằng cách tận dụng các tính năng này, bạn có thể tối ưu hóa quy trình công việc máy học của mình để có hiệu suất và khả năng tái tạo tốt hơn. Để biết thêm thông tin, hãy truy cập Comet Hướng dẫn tích hợp ML.

Làm cách nào để tùy chỉnh hành vi ghi nhật ký của Comet ML trong YOLOv8 Đào tạo?

Comet ML cho phép tùy chỉnh rộng rãi hành vi ghi nhật ký của nó bằng cách sử dụng các biến môi trường:

  • Thay đổi số lần dự đoán hình ảnh được ghi lại:

    import os
    
    os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"
    
  • Điều chỉnh khoảng thời gian ghi nhật ký hàng loạt:

    import os
    
    os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
    
  • Vô hiệu hóa ghi nhật ký ma trận nhầm lẫn:

    import os
    
    os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"
    

Để biết thêm các tùy chọn tùy chỉnh, hãy tham khảo Tùy biến Comet Phần Ghi nhật ký ML .

Làm cách nào để xem số liệu chi tiết và hình ảnh trực quan hóa của tôi YOLOv8 Đào tạo về Comet ML?

Một khi của bạn YOLOv8 Mô hình bắt đầu đào tạo, bạn có thể truy cập một loạt các số liệu và trực quan hóa trên Comet Bảng điều khiển ML. Các tính năng chính bao gồm:

  • Bảng thử nghiệm: Xem các lần chạy khác nhau và chỉ số của chúng, bao gồm mất mặt nạ phân đoạn, mất lớp và độ chính xác trung bình trung bình.
  • Chỉ số: Kiểm tra số liệu ở định dạng bảng để phân tích chi tiết.
  • Ma trận nhầm lẫn tương tác: Đánh giá độ chính xác của phân loại bằng ma trận nhầm lẫn tương tác.
  • Số liệu hệ thống: Giám sát GPU và CPU sử dụng, sử dụng bộ nhớ và các số liệu hệ thống khác.

Để biết tổng quan chi tiết về các tính năng này, hãy truy cập Hiểu hiệu suất mô hình của bạn với Comet Phần Trực quan hóa ML .

Tôi có thể sử dụng không Comet ML để ghi nhật ký ngoại tuyến khi đào tạo YOLOv8 Mô hình?

Có, bạn có thể bật đăng nhập ngoại tuyến Comet ML bằng cách đặt COMET_MODE biến môi trường thành "ngoại tuyến":

import os

os.environ["COMET_MODE"] = "offline"

Tính năng này cho phép bạn ghi lại dữ liệu thử nghiệm cục bộ, sau này có thể được tải lên Comet ML khi có kết nối internet. Điều này đặc biệt hữu ích khi làm việc trong môi trường có truy cập internet hạn chế. Để biết thêm chi tiết, hãy tham khảo phần Ghi nhật ký ngoại tuyến .



Đã tạo 2023-11-16, Cập nhật 2024-07-05
Tác giả: glenn-jocher (10), AyushExel (1), abirami-vina (1)

Ý kiến