Conformal Prediction
Khám phá cách conformal prediction cung cấp độ bất định không phụ thuộc phân phối cho AI. Triển khai các prediction set với Ultralytics YOLO26 để bảo đảm kết quả model đáng tin cậy.
Dự đoán conformal là một framework thống kê trong học máy (ML), cung cấp các thước đo độ bất định không phụ thuộc phân phối cho các dự đoán của model. Thay vì xuất ra một dự đoán điểm duy nhất—chẳng hạn như một nhãn lớp cụ thể—bộ dự đoán conformal 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%). Framework này có thể bao quanh bất kỳ model trí tuệ nhân tạo (AI) nào để cung cấp các bảo đảm thống kê chính thức mà không yêu cầu thay đổi kiến trúc của model. Để xem danh sách đầy đủ các công cụ và nghiên cứu cập nhật, bạn có thể khám phá repository Awesome Conformal Prediction.
Cách hoạt động của Dự đoán Conformal#
Cơ chế nền tảng 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 không phù hợp.
- Huấn luyện Model: Trước tiên, huấn luyện một model cơ sở bằng dataset huấn luyện tiêu chuẩn.
- Giai đoạn Hiệu chỉnh: Đưa một dataset hiệu chỉnh riêng biệt, được giữ lại, qua model đã huấn luyện. Tính điểm không phù hợp cho mỗi dự đoán, chẳng hạn như xác suất nghịch đảo trong phân loại hình ảnh.
- Tính Toán Phân Vị: 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 hiệu chỉnh này để xây dựng các tập dự đoán.
- Áp dụng Suy luận: Trong quá trình suy luận trực tiếp, đánh giá các đầu vào mới và đưa vào tất cả các nhãn khả dĩ có điểm thấp hơn phân vị hiệu chỉnh.
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 tutorial 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.
Phân biệt Dự đoán Conformal với các Thuật ngữ Liên quan#
Điều quan trọng là phải phân biệt framework này với các metric tiêu chuẩn được sử dụng trong quá trình kiểm thử model:
- Dự đoán Conformal và Điểm Tin cậy: Điểm tin cậy tiêu chuẩn phản ánh mức độ chắc chắn nội tại của model nhưng thường được hiệu chỉnh kém và thiếu các bảo đảm toán học. Dự đoán conformal chuyển đổi các điểm thô này thành các tập hợp được bảo đảm. Để thực hiện các điều chỉnh truyền thống, hãy xem hiệu chỉnh xác suất của scikit-learn.
- Dự đoán Conformal và Độ chính xác: Độ chính xác là một metric lịch sử toàn cục mô tả tần suất model dự đoán đúng trên toàn bộ dataset, trong khi suy luận conformal cung cấp một khoảng cục bộ, dành riêng cho từng instance, cho mỗi dự đoán mới.
Các ứng dụng trong thực tế#
Dự đoán conformal là yếu tố không thể thiếu trong các lĩnh vực có rủi ro cao, nơi việc biết các điểm mù của model có ý nghĩa then chốt.
- Chẩn đoán Y khoa: Khi tận dụng AI trong lĩnh vực chăm sóc sức khỏe để phân tích ảnh quét, model có thể xuất ra một tập hợp các chẩn đoán có khả năng xảy ra thay vì một lớp duy nhất có thể không chính xác. Điều này bảo đảm các bác sĩ lâm sàng xem xét mọi khả năng khả thi, hỗ trợ các nghiên cứu gần đây về y học hệ gene và chẩn đoán hình ảnh đáng tin cậy.
- Lái xe Tự hành: Trong các hệ thống ô tô ứng dụng AI, việc áp dụng các khoảng dự đoán cho phát hiện đối tượng sẽ tạo ra một vùng tin cậy theo không gian xung quanh người đi bộ, cho phép hệ thống phanh của phương tiện tính đến các chuyển động trong kịch bản xấu nhất một cách an toàn.
Triển khai các Tập Dự đoán#
Các thư viện như MAPIE (Bộ ước lượng khoảng dự đoán không phụ thuộc model) 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 hồi quy phân vị conformal. Bạn cũng có thể triển khai logic dự đoán conformal 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 dự đoán bằng xác suất phân loại của YOLO26, mô phỏng logic đưa các lớp đứng đầu vào cho đến khi đạt 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 thực hành dữ liệu mạnh mẽ để ngăn độ lệch dữ liệu làm hỏng quá trình hiệu chỉnh. Các công cụ như Ultralytics Platform đơn giản hóa quy trình thu thập dataset phân loại mới, huấn luyện lại model và quản lý an toàn việc triển khai model. Bạn có thể đọc thêm về việc tuyển chọn dữ liệu cân bằng trong hướng dẫn tìm hiểu về độ lệch dataset của chúng tôi 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.









