Conformal Prediction
Khám phá cách conformal prediction cung cấp ước tính độ bất định không phụ thuộc phân phối cho AI. Triển khai các tập dự đoán với Ultralytics YOLO26 để đảm bảo kết quả model đáng tin cậy.
Conformal prediction là một khung thống kê trong machine learning (ML) cung cấp các phương pháp đo lường độ bất định không phụ thuộc vào phân phối cho các dự đoán của model. Thay vì đưa ra một dự đoán điểm duy nhất—ví dụ như một nhãn lớp cụ thể—một conformal predictor xuất ra một tập hợp hoặc khoảng dự đoán chứa giá trị thực với xác suất do người dùng chỉ định (ví dụ: 90% hoặc 95%). Khung này bao bọc xung quanh bất kỳ model artificial intelligence (AI) nào để cung cấp các đảm bảo thống kê chính thức mà không cần thay đổi kiến trúc của model. Để có danh sách đầy đủ các công cụ và nghiên cứu mới nhất, bạn có thể khám phá kho lưu trữ Awesome Conformal Prediction.
Link to this sectionCách thức hoạt động của Conformal Prediction#
Cơ chế cơ bản dựa trên việc đánh giá mức độ bất thường của một dự đoán mới so với các ví dụ trước đó bằng cách sử dụng điểm số không tuân thủ (nonconformity score).
- Model Training: Đầu tiên, huấn luyện một baseline model bằng cách sử dụng tập dữ liệu huấn luyện tiêu chuẩn.
- Calibration Phase: Chuyển một tập dữ liệu hiệu chuẩn (calibration dataset) riêng biệt, tách biệt qua model đã được huấn luyện. Tính điểm số không tuân thủ cho mỗi dự đoán, chẳng hạn như xác suất nghịch đảo trong image classification.
- Quantile Calculation: Xác định mức độ tin cậy mục tiêu (ví dụ: 95%) và tìm phân vị tương ứng của các điểm số hiệu chuẩn này để xây dựng các tập hợp dự đoán.
- Inference Application: Trong quá trình suy luận trực tiếp (inference), đánh giá các input mới và bao gồm tất cả các nhãn có thể có mà điểm số của chúng thấp hơn phân vị hiệu chuẩn.
Bạn có thể khám phá các chứng minh toán học của phương pháp này trong bài hướng dẫn A Gentle Introduction to Conformal Prediction hoặc tìm hiểu về các phương pháp dự báo chuỗi thời gian để xử lý các bất định theo thời gian.
Link to this sectionPhân biệt Conformal Prediction với các thuật ngữ liên quan#
Việc phân biệt khung này với các chỉ số tiêu chuẩn được sử dụng trong quá trình model testing là vô cùng quan trọng:
- Conformal Prediction vs. Confidence Scores: Điểm số tin cậy tiêu chuẩn phản ánh sự chắc chắn nội tại của model nhưng thường được hiệu chuẩn kém và thiếu các đảm bảo toán học. Conformal prediction chuyển đổi các điểm số thô này thành các tập hợp có đảm bảo. Đối với các điều chỉnh truyền thống, hãy xem scikit-learn's probability calibration.
- Conformal Prediction vs. Accuracy: Accuracy là một chỉ số lịch sử toàn cục mô tả mức độ chính xác của model trên toàn bộ tập dữ liệu, trong khi conformal inference cung cấp một khoảng cục bộ, dành riêng cho từng trường hợp đối với mỗi dự đoán mới.
Link to this sectionCác ứng dụng trong thực tế#
Conformal prediction là không thể thiếu trong các lĩnh vực rủi ro cao, nơi việc biết được các điểm mù của model là rất quan trọng.
- Medical Diagnostics: Khi tận dụng AI trong chăm sóc sức khỏe để phân tích hình ảnh, một model có thể xuất ra một tập hợp các chẩn đoán hợp lý thay vì chỉ một lớp duy nhất, vốn có khả năng không chính xác. Điều này đảm bảo các bác sĩ lâm sàng điều tra tất cả các khả năng khả thi, hỗ trợ các nghiên cứu gần đây về y học bộ gen và chẩn đoán hình ảnh đáng tin cậy.
- Autonomous Driving: Trong các hệ thống AI cho ô tô, việc áp dụng các khoảng dự đoán cho object detection tạo ra một vùng tin cậy không gian xung quanh người đi bộ, cho phép hệ thống phanh của phương tiện tính toán các chuyển động xấu nhất một cách an toàn.
Link to this sectionTriển khai Prediction Sets#
Các thư viện như MAPIE (Model Agnostic Prediction Interval Estimator) cung cấp các công cụ tích hợp sẵn cho Python, và các tác vụ hồi quy thường sử dụng conformal quantile regression. Bạn cũng có thể triển khai logic conformal prediction cơ bản bằng cách sử dụng xác suất từ các model tiên tiến như Ultralytics YOLO26. Ví dụ sau đây xây dựng một tập hợp dự đoán bằng cách sử dụng xác suất phân loại của YOLO26, mô phỏng logic bao gồm các lớp hàng đầu cho đến khi đạt được ngưỡng tích lũy.
from ultralytics import YOLO
# Load an Ultralytics YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Perform inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Simple conformal-style prediction set logic based on cumulative probability
target_coverage = 0.95
prediction_set = []
cumulative_prob = 0.0
# Sort probabilities in descending order using the results object
probs = results[0].probs
sorted_indices = probs.top5
for idx in sorted_indices:
class_name = results[0].names[idx]
class_prob = probs.data[idx].item()
prediction_set.append((class_name, round(class_prob, 3)))
cumulative_prob += class_prob
# Stop adding to the set once we reach the 95% coverage threshold
if cumulative_prob >= target_coverage:
break
print(f"95% Prediction Set: {prediction_set}")Việc phát triển các hệ thống đáng tin cậy đòi hỏi các phương pháp dữ liệu vững chắc để ngăn chặn data drift làm hỏng quá trình hiệu chuẩn. Các công cụ như Ultralytics Platform đơn giản hóa quy trình thu thập các classification datasets mới, huấn luyện lại model và quản lý bảo mật model deployment. Bạn có thể đọc thêm về cách quản lý dữ liệu cân bằng trong hướng dẫn của chúng tôi về understanding dataset bias, hoặc theo dõi những tiến bộ mới nhất được trình bày tại hội nghị COPA thường niên.






