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

Tìm hiểu sâu về chỉ số hiệu suất

Giới thiệu

Chỉ số hiệu suất là công cụ chính để đánh giá độ chính xác và hiệu quả của các mô hình phát hiện đối tượng. Họ làm sáng tỏ mức độ hiệu quả của một mô hình có thể xác định và bản địa hóa các đối tượng trong hình ảnh. Ngoài ra, chúng giúp hiểu cách xử lý của mô hình đối với dương tính giả và âm tính giả. Những hiểu biết này rất quan trọng để đánh giá và nâng cao hiệu suất của mô hình. Trong hướng dẫn này, chúng tôi sẽ khám phá các số liệu hiệu suất khác nhau liên quan đến YOLOv8, tầm quan trọng của chúng và cách diễn giải chúng.



Xem: Ultralytics YOLOv8 Chỉ số hiệu suất | MAP, Điểm F1, Độ chính xác, IoU & Độ chính xác

Số liệu phát hiện đối tượng

Let's start by discussing some metrics that are not only important to YOLOv8 but are broadly applicable across different object detection models.

  • Giao lộ qua Union (IoU): IoU là thước đo định lượng sự chồng chéo giữa hộp giới hạn dự đoán và hộp giới hạn sự thật mặt đất. Nó đóng một vai trò cơ bản trong việc đánh giá độ chính xác của nội địa hóa đối tượng.

  • Độ chính xác trung bình (AP): AP tính toán diện tích dưới đường cong thu hồi chính xác, cung cấp một giá trị duy nhất gói gọn độ chính xác và hiệu suất thu hồi của mô hình.

  • Độ chính xác trung bình trung bình (mAP): mAP mở rộng khái niệm AP bằng cách tính toán các giá trị AP trung bình trên nhiều lớp đối tượng. Điều này rất hữu ích trong các tình huống phát hiện đối tượng nhiều lớp để cung cấp đánh giá toàn diện về hiệu suất của mô hình.

  • Độ chính xác và thu hồi: Độ chính xác định lượng tỷ lệ dương tính thực trong số tất cả các dự đoán tích cực, đánh giá khả năng của mô hình để tránh dương tính giả. Mặt khác, Recall tính toán tỷ lệ dương tính thực trong số tất cả các dương tính thực tế, đo lường khả năng của mô hình để phát hiện tất cả các trường hợp của một lớp.

  • Điểm F1: Điểm F1 là trung bình hài hòa của độ chính xác và khả năng nhớ lại, cung cấp đánh giá cân bằng về hiệu suất của mô hình trong khi xem xét cả dương tính giả và âm tính giả.

Cách tính toán số liệu cho YOLOv8 Mẫu

Bây giờ, chúng ta có thể khám phá YOLOv8'Chế độ Xác thực có thể được sử dụng để tính toán các chỉ số đánh giá đã thảo luận ở trên.

Sử dụng chế độ xác thực rất đơn giản. Khi bạn đã có một mô hình được đào tạo, bạn có thể gọi hàm model.val(). Sau đó, hàm này sẽ xử lý tập dữ liệu xác thực và trả về nhiều chỉ số hiệu suất khác nhau. Nhưng những số liệu này có ý nghĩa gì? Và bạn nên giải thích chúng như thế nào?

Diễn giải đầu ra

Hãy chia nhỏ đầu ra của hàm model.val() và hiểu từng phân đoạn của đầu ra.

Số liệu theo lớp

Một trong những phần của đầu ra là phân tích theo lớp của các chỉ số hiệu suất. Thông tin chi tiết này rất hữu ích khi bạn đang cố gắng hiểu mô hình đang hoạt động tốt như thế nào đối với từng lớp cụ thể, đặc biệt là trong các bộ dữ liệu với một loạt các danh mục đối tượng đa dạng. Đối với mỗi lớp trong tập dữ liệu, những điều sau đây được cung cấp:

  • Class: Điều này biểu thị tên của lớp đối tượng, chẳng hạn như "person", "car" hoặc "dog".

  • Hình ảnh: Chỉ số này cho bạn biết số lượng hình ảnh trong nhóm xác thực có chứa lớp đối tượng.

  • Phiên bản: Điều này cung cấp số lần lớp xuất hiện trên tất cả các hình ảnh trong tập hợp xác thực.

  • Box (P, R, mAP50, mAP50-95): Số liệu này cung cấp thông tin chi tiết về hiệu suất của mô hình trong việc phát hiện đối tượng:

    • P (Độ chính xác): Độ chính xác của các đối tượng được phát hiện, cho biết có bao nhiêu phát hiện là chính xác.

    • R (Recall): Khả năng của mô hình để xác định tất cả các trường hợp của các đối tượng trong hình ảnh.

    • mAP50: Độ chính xác trung bình trung bình được tính ở ngưỡng giao nhau trên giao nhau (IoU) là 0,50. Đó là thước đo độ chính xác của mô hình chỉ xem xét các phát hiện "dễ dàng".

    • mAP50-95: Trung bình của độ chính xác trung bình được tính ở các ngưỡng IoU khác nhau, dao động từ 0,50 đến 0,95. Nó cung cấp một cái nhìn toàn diện về hiệu suất của mô hình qua các mức độ khó phát hiện khác nhau.

Chỉ số tốc độ

Tốc độ suy luận có thể quan trọng như độ chính xác, đặc biệt là trong các tình huống phát hiện đối tượng thời gian thực. Phần này chia nhỏ thời gian thực hiện cho các giai đoạn khác nhau của quy trình xác nhận, từ tiền xử lý đến hậu xử lý.

Đánh giá số liệu COCO

Đối với người dùng xác thực trên tập dữ liệu COCO, các chỉ số bổ sung được tính bằng cách sử dụng tập lệnh đánh giá COCO. Các số liệu này cung cấp thông tin chi tiết về độ chính xác và khả năng nhớ lại ở các ngưỡng IoU khác nhau và cho các đối tượng có kích thước khác nhau.

Đầu ra trực quan

Hàm model.val(), ngoài việc tạo ra các số liệu, còn mang lại kết quả đầu ra trực quan có thể cung cấp sự hiểu biết trực quan hơn về hiệu suất của mô hình. Dưới đây là bảng phân tích các kết quả trực quan mà bạn có thể mong đợi:

  • Đường cong điểm F1 (F1_curve.png): Đường cong này thể hiện điểm số F1 qua các ngưỡng khác nhau. Giải thích đường cong này có thể cung cấp thông tin chi tiết về sự cân bằng của mô hình giữa dương tính giả và âm tính giả trên các ngưỡng khác nhau.

  • Đường cong thu hồi chính xác (PR_curve.png): Một hình ảnh không thể thiếu cho bất kỳ vấn đề phân loại nào, đường cong này cho thấy sự đánh đổi giữa độ chính xác và thu hồi ở các ngưỡng khác nhau. Nó trở nên đặc biệt quan trọng khi đối phó với các lớp học mất cân bằng.

  • Đường cong chính xác (P_curve.png): Biểu diễn đồ họa các giá trị chính xác ở các ngưỡng khác nhau. Đường cong này giúp hiểu được độ chính xác thay đổi như thế nào khi ngưỡng thay đổi.

  • Đường cong thu hồi (R_curve.png): Tương ứng, biểu đồ này minh họa cách các giá trị thu hồi thay đổi qua các ngưỡng khác nhau.

  • Ma trận nhầm lẫn (confusion_matrix.png): Ma trận nhầm lẫn cung cấp một cái nhìn chi tiết về kết quả, hiển thị số lượng dương tính thật, âm tính thật, dương tính giả và âm tính giả cho mỗi lớp.

  • Ma trận nhầm lẫn chuẩn hóa (confusion_matrix_normalized.png): Hình dung này là một phiên bản chuẩn hóa của ma trận nhầm lẫn. Nó đại diện cho dữ liệu theo tỷ lệ thay vì số lượng thô. Định dạng này giúp việc so sánh hiệu suất giữa các lớp trở nên đơn giản hơn.

  • Xác thực nhãn hàng loạt (val_batchX_labels.jpg): Những hình ảnh này mô tả nhãn sự thật cơ bản cho các lô riêng biệt từ tập dữ liệu xác thực. Chúng cung cấp một bức tranh rõ ràng về các đối tượng là gì và vị trí tương ứng của chúng theo tập dữ liệu.

  • Xác thực Dự đoán hàng loạt (val_batchX_pred.jpg): Tương phản với hình ảnh nhãn, những hình ảnh này hiển thị các dự đoán được thực hiện bởi YOLOv8 mô hình cho các lô tương ứng. Bằng cách so sánh chúng với hình ảnh nhãn, bạn có thể dễ dàng đánh giá mô hình phát hiện và phân loại các đối tượng một cách trực quan như thế nào.

Lưu trữ kết quả

Để tham khảo trong tương lai, kết quả được lưu vào một thư mục, thường được đặt tên là runs/detect/val.

Chọn số liệu phù hợp

Việc lựa chọn các số liệu phù hợp để đánh giá thường phụ thuộc vào ứng dụng cụ thể.

  • bản đồ: Thích hợp để đánh giá rộng rãi hiệu suất mô hình.

  • Iou: Cần thiết khi vị trí đối tượng chính xác là rất quan trọng.

  • Chính xác: Quan trọng khi giảm thiểu phát hiện sai là ưu tiên hàng đầu.

  • Nhớ: Quan trọng khi điều quan trọng là phát hiện mọi trường hợp của một đối tượng.

  • Điểm F1: Hữu ích khi cần cân bằng giữa độ chính xác và thu hồi.

Đối với các ứng dụng thời gian thực, các chỉ số tốc độ như FPS (Khung hình trên giây) và độ trễ là rất quan trọng để đảm bảo kết quả kịp thời.

Giải thích kết quả

It's important to understand the metrics. Here's what some of the commonly observed lower scores might suggest:

  • mAP thấp: Cho biết mô hình có thể cần tinh chỉnh chung.

  • IOU thấp: Mô hình có thể đang vật lộn để xác định chính xác các đối tượng. Các phương pháp hộp giới hạn khác nhau có thể hữu ích.

  • Độ chính xác thấp: Mô hình có thể phát hiện quá nhiều đối tượng không tồn tại. Điều chỉnh ngưỡng tin cậy có thể làm giảm điều này.

  • Nhớ lại thấp: Mô hình có thể thiếu các đối tượng thực. Cải thiện việc trích xuất tính năng hoặc sử dụng nhiều dữ liệu hơn có thể hữu ích.

  • Điểm F1 mất cân bằng: Có sự chênh lệch giữa độ chính xác và thu hồi.

  • AP dành riêng cho lớp: Điểm thấp ở đây có thể làm nổi bật các lớp học mà người mẫu gặp khó khăn.

Nghiên cứu điển hình

Các ví dụ thực tế có thể giúp làm rõ cách các số liệu này hoạt động trong thực tế.

Trường hợp 1

  • Tình huống: Điểm mAP và F1 là dưới mức tối ưu, nhưng trong khi Nhớ lại là tốt, Độ chính xác thì không.

  • Giải thích & Hành động: Có thể có quá nhiều phát hiện không chính xác. Việc thắt chặt ngưỡng tin cậy có thể làm giảm những điều này, mặc dù nó cũng có thể làm giảm nhẹ việc thu hồi.

Trường hợp 2

  • Tình huống: mAP và Thu hồi có thể chấp nhận được, nhưng IoU còn thiếu.

  • Giải thích & Hành động: Mô hình phát hiện tốt các đối tượng nhưng có thể không định vị chúng một cách chính xác. Tinh chỉnh dự đoán hộp giới hạn có thể hữu ích.

Trường hợp 3

  • Tình thế: Một số lớp có AP thấp hơn nhiều so với các lớp khác, ngay cả với mAP tổng thể khá.

  • Giải thích & Hành động: Những lớp học này có thể khó khăn hơn đối với mô hình. Sử dụng nhiều dữ liệu hơn cho các lớp học này hoặc điều chỉnh trọng số lớp trong quá trình đào tạo có thể có lợi.

Kết nối và cộng tác

Khai thác cộng đồng những người đam mê và chuyên gia có thể khuếch đại hành trình của bạn với YOLOv8. Dưới đây là một số con đường có thể tạo điều kiện thuận lợi cho việc học tập, khắc phục sự cố và kết nối mạng.

Tham gia với cộng đồng rộng lớn hơn

  • GitHub Issues: The YOLOv8 repository on GitHub has an Issues tab where you can ask questions, report bugs, and suggest new features. The community and maintainers are active here, and it's a great place to get help with specific problems.

  • Ultralytics Máy chủ Discord: Ultralytics có một máy chủ Discord , nơi bạn có thể tương tác với những người dùng khác và các nhà phát triển.

Tài liệu và tài nguyên chính thức:

  • Ultralytics YOLOv8 Tài liệu: Tài liệu chính thức cung cấp tổng quan toàn diện về YOLOv8, cùng với hướng dẫn cài đặt, sử dụng và khắc phục sự cố.

Sử dụng các tài nguyên này sẽ không chỉ hướng dẫn bạn vượt qua mọi thách thức mà còn giúp bạn cập nhật các xu hướng mới nhất và các phương pháp hay nhất trong YOLOv8 cộng đồng.

Kết thúc

Trong hướng dẫn này, chúng tôi đã xem xét kỹ các chỉ số hiệu suất thiết yếu cho YOLOv8. Những số liệu này là chìa khóa để hiểu mô hình đang hoạt động tốt như thế nào và rất quan trọng đối với bất kỳ ai muốn tinh chỉnh mô hình của họ. Họ cung cấp những hiểu biết cần thiết để cải tiến và đảm bảo mô hình hoạt động hiệu quả trong các tình huống thực tế.

Hãy nhớ rằng, các YOLOv8 và Ultralytics Cộng đồng là một tài sản vô giá. Tham gia với các nhà phát triển và chuyên gia đồng nghiệp có thể mở ra cánh cửa cho những hiểu biết và giải pháp không có trong tài liệu tiêu chuẩn. Khi bạn hành trình thông qua việc phát hiện đối tượng, hãy giữ cho tinh thần học tập tồn tại, thử nghiệm các chiến lược mới và chia sẻ những phát hiện của bạn. Bằng cách đó, bạn đóng góp vào trí tuệ tập thể của cộng đồng và đảm bảo sự phát triển của nó.

Phát hiện đối tượng hạnh phúc!



Created 2023-11-12, Updated 2024-06-02
Authors: glenn-jocher (6), RizwanMunawar (1), abirami-vina (1)

Ý kiến