Khám phá học chủ động, một phương pháp học máy hiệu quả về chi phí, giúp tăng độ chính xác với ít nhãn hơn. Tìm hiểu cách nó thay đổi quá trình huấn luyện AI!
Học chủ động là một phương pháp tiếp cận động trong học máy (ML) được thiết kế để tối ưu hóa quá trình đào tạo bằng cách chọn lọc các điểm dữ liệu giàu thông tin nhất để chú thích. Trong học có giám sát tiêu chuẩn, mô hình được cung cấp thụ động một tập dữ liệu lớn, được gắn nhãn sẵn, điều này có thể không hiệu quả và tốn kém nếu dữ liệu bao gồm các ví dụ dư thừa hoặc không mang lại thông tin. Học chủ động thay đổi mô hình này bằng cách cho phép mô hình tương tác truy vấn nguồn thông tin—thường là một chuyên gia hoặc "nhà tiên tri"—để yêu cầu gắn nhãn cho các trường hợp cụ thể, mơ hồ. Chiến lược nhắm mục tiêu này giảm đáng kể lượng dữ liệu đào tạo cần thiết để đạt được độ chính xác cao, khiến nó trở nên lý tưởng cho các dự án có ngân sách hạn chế hoặc bị ràng buộc chặt chẽ về thời gian.
Quá trình học tập chủ động hoạt động như một chu trình lặp, thường được mô tả là quy trình làm việc có sự tham gia của con người . Chu trình này đảm bảo rằng nỗ lực của con người chỉ tập trung vào dữ liệu đóng góp nhiều nhất vào việc cải thiện mô hình. Quy trình làm việc điển hình bao gồm:
Hiệu quả của phương pháp này phụ thuộc rất nhiều vào chiến lược lấy mẫu. Lấy mẫu bất định là kỹ thuật phổ biến nhất, trong đó thuật toán chọn các trường hợp gần nhất với ranh giới quyết định của nó. Thông tin chi tiết về các chiến lược này có sẵn trong nhiều khảo sát tài liệu về học tập chủ động .
Đoạn mã sau đây minh họa cách triển khai vòng lặp lấy mẫu bất định cơ bản. Vòng lặp này tải một mô hình, dự đoán trên hình ảnh và xác định những hình ảnh có độ tin cậy thấp, sau đó đánh dấu chúng để xem xét thủ công.
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Run inference on a list or directory of unlabeled images
results = model.predict(["image1.jpg", "image2.jpg"])
# Identify images where the model is uncertain
uncertain_samples = []
for result in results:
# Check if detections exist and if the maximum confidence is below a threshold
if result.boxes.conf.numel() > 0 and result.boxes.conf.max() < 0.6:
uncertain_samples.append(result.path)
print(f"Flagging {result.path} for manual labeling.")
print(f"Total uncertain images found: {len(uncertain_samples)}")
Học tập chủ động đặc biệt có giá trị trong các lĩnh vực mà việc dán nhãn dữ liệu tốn kém hoặc đòi hỏi chuyên môn đặc biệt.
Mặc dù học tập chủ động liên quan đến việc sử dụng dữ liệu chưa được gắn nhãn, nhưng nó khác biệt so với các mô hình học máy khác:
Việc triển khai học tập chủ động đòi hỏi một quy trình Vận hành Máy học (MLOps) mạnh mẽ để quản lý luồng dữ liệu giữa mô hình, tập dữ liệu và giao diện chú thích. Các công cụ hỗ trợ quản lý và kiểm soát phiên bản dữ liệu là rất cần thiết để theo dõi những mẫu nào đã được truy vấn. Mặc dù các thư viện đa năng như scikit-learn mang lại một số tiện ích, quy trình làm việc thị giác máy tính thường yêu cầu tích hợp tùy chỉnh với tập dữ liệu hình ảnh để trực quan hóa và chú thích các hình ảnh đã chọn một cách hiệu quả. Người dùng nâng cao có thể khám phá kho lưu trữ GitHub của Ultralytics để xem cách cấu trúc kết quả dự đoán để đưa vào các vòng lặp quản lý dữ liệu này.