Recall
Khám phá tầm quan trọng của recall trong học máy. Tìm hiểu cách đo lường và cải thiện độ nhạy cho các mô hình Ultralytics YOLO26 để đảm bảo tỷ lệ phát hiện cao.
Recall, hay còn gọi là độ nhạy (sensitivity) hoặc tỷ lệ dương tính thật (true positive rate), là một chỉ số hiệu năng cơ bản trong machine learning, dùng để đo lường khả năng của một model trong việc nhận diện tất cả các đối tượng liên quan trong một dataset. Trong bối cảnh object detection hoặc phân loại, nó trả lời cụ thể câu hỏi: "Trong tất cả các trường hợp dương tính thực tế, model đã tìm đúng được bao nhiêu?" Việc đạt được recall cao là rất quan trọng trong các kịch bản mà việc bỏ sót một đối tượng dương tính—thường được gọi là âm tính giả (false negative)—mang lại những hậu quả đáng kể. Không giống như accuracy, vốn có thể gây hiểu lầm khi xử lý dữ liệu mất cân bằng, recall cung cấp một cái nhìn tập trung vào hiệu quả của model trong việc "nắm bắt" lớp mục tiêu.
Link to this sectionTầm quan trọng của Recall cao#
Trong nhiều ứng dụng artificial intelligence, cái giá của việc không phát hiện được đối tượng cao hơn nhiều so với cái giá của một cảnh báo giả. Một model được tối ưu hóa cho recall sẽ giảm thiểu các âm tính giả, đảm bảo rằng hệ thống quét đủ rộng để bắt được các mối đe dọa, bất thường hoặc các điều kiện quan trọng tiềm ẩn. Điều này thường bao gồm một sự đánh đổi, vì việc tăng recall đôi khi có thể dẫn đến điểm số precision thấp hơn, nghĩa là model có thể gắn nhãn nhiều mục không liên quan thành dương tính. Hiểu được sự cân bằng này là chìa khóa để phát triển các giải pháp machine learning mạnh mẽ.
Link to this sectionCác ứng dụng trong thực tế#
Recall là chỉ số dẫn dắt đằng sau nhiều AI solutions quan trọng về an toàn. Dưới đây là hai ví dụ nổi bật mà độ nhạy được ưu tiên hàng đầu:
- Chẩn đoán y khoa: Trong medical image analysis, chẳng hạn như sàng lọc X-quang để phát hiện sớm các dấu hiệu bệnh tật, recall cao là điều không thể thương lượng. Nếu một hệ thống AI in healthcare được sử dụng để phát hiện khối u, việc hệ thống gắn nhãn một cái bóng đáng ngờ mà sau đó hóa ra là lành tính (một dương tính giả) vẫn tốt hơn nhiều so với việc bỏ sót hoàn toàn một khối u ác tính. Các bác sĩ dựa vào những công cụ này để làm mạng lưới an toàn, đảm bảo không có rủi ro sức khỏe tiềm ẩn nào bị bỏ lỡ.
- An ninh và Giám sát: Đối với một security alarm system, mục tiêu chính là phát hiện mọi hành vi xâm nhập. Một hệ thống được tối ưu hóa cho recall cao đảm bảo rằng nếu một người đi vào khu vực hạn chế, báo động sẽ kích hoạt. Mặc dù điều này có thể dẫn đến các cảnh báo giả thỉnh thoảng gây ra bởi động vật hoang dã, nhưng điều này vẫn tốt hơn việc hệ thống không phát hiện được kẻ xâm nhập thực sự. Các model object detection trong các kịch bản này được điều chỉnh để đảm bảo độ nhạy tối đa đối với các mối đe dọa tiềm ẩn.
Link to this sectionRecall so với Precision#
Việc phân biệt recall với đối trọng của nó, precision, là rất cần thiết. Trong khi recall đo lường số lượng các trường hợp liên quan được tìm thấy (tính đầy đủ), thì precision đo lường chất lượng của các dự đoán dương tính (tính chính xác).
- Recall: Tập trung vào việc tránh bỏ lỡ các phát hiện. "Chúng ta đã tìm thấy tất cả những quả táo chưa?"
- Precision: Tập trung vào việc giảm thiểu cảnh báo giả. "Tất cả những thứ chúng ta gọi là táo có thực sự là táo không?"
Hai chỉ số này thường chia sẻ một mối quan hệ nghịch đảo, được hình dung thông qua một Precision-Recall curve. Để đánh giá sự cân bằng tổng thể giữa chúng, các nhà phát triển thường xem xét F1-score, đây là trung bình điều hòa của cả hai. Trong các imbalanced datasets, việc xem xét recall cùng với confusion matrix mang lại bức tranh hiệu năng rõ ràng hơn nhiều so với chỉ dùng accuracy.
Link to this sectionĐo lường Recall với Ultralytics YOLO#
Khi huấn luyện các model như YOLO26 tiên tiến, recall được tính toán tự động trong giai đoạn validation. Framework này tính toán recall cho từng lớp và mean Average Precision (mAP), giúp các nhà phát triển đánh giá mức độ hiệu quả của model trong việc tìm kiếm đối tượng.
Bạn có thể dễ dàng validate một model đã được huấn luyện và xem các chỉ số recall của nó bằng Python. Đoạn mã này minh họa cách tải model và kiểm tra hiệu năng của nó trên một tập dữ liệu tiêu chuẩn:
from ultralytics import YOLO
# Load a pretrained YOLO26 model
model = YOLO("yolo26n.pt")
# Validate the model on the COCO8 dataset
# The results object contains metrics like Precision, Recall, and mAP
metrics = model.val(data="coco8.yaml")
# Access and print the mean recall score for box detection
print(f"Mean Recall: {metrics.results_dict['metrics/recall(B)']:.4f}")Đoạn mã này sử dụng Ultralytics API để chạy validation. Nếu recall thấp hơn mức cần thiết cho dự án của bạn, bạn có thể cân nhắc các kỹ thuật như data augmentation để tạo ra các ví dụ huấn luyện đa dạng hơn hoặc hyperparameter tuning để điều chỉnh độ nhạy của model. Sử dụng Ultralytics Platform cũng có thể giúp hợp lý hóa quy trình quản lý tập dữ liệu và theo dõi các chỉ số này qua nhiều lần huấn luyện.
Link to this sectionCải thiện Recall của Model#
Để tăng recall của model, các chuyên gia dữ liệu thường điều chỉnh confidence threshold được sử dụng trong quá trình inference. Việc giảm ngưỡng này làm cho model trở nên "lạc quan" hơn, chấp nhận nhiều dự đoán là dương tính hơn, điều này làm tăng recall nhưng có thể làm giảm precision. Ngoài ra, việc thu thập training data đa dạng hơn giúp model học cách nhận diện hard negatives và các trường hợp khó thấy. Đối với các tác vụ phức tạp, việc sử dụng các kiến trúc tiên tiến như các khối Transformer hoặc khám phá các ensemble methods cũng có thể cải thiện khả năng phát hiện các đặc trưng tinh tế mà các model đơn giản có thể bỏ lỡ.






