Tìm hiểu cách thức chắt lọc kiến thức chuyển giao trí tuệ từ những người thầy giàu kinh nghiệm đến những học trò nhỏ gọn. Tối ưu hóa Ultralytics YOLO26 giúp triển khai nhanh chóng và hiệu quả tại biên mạng.
Chắt lọc tri thức là một kỹ thuật tinh vi trong học máy , trong đó một mạng nơ-ron nhỏ gọn, được gọi là "học sinh", được huấn luyện để tái tạo hành vi và hiệu suất của một mạng lớn hơn, phức tạp hơn, được gọi là "giáo viên". Mục tiêu chính của quá trình này là tối ưu hóa mô hình , cho phép các nhà phát triển chuyển khả năng dự đoán của các kiến trúc nặng nề thành các mô hình nhẹ phù hợp để triển khai trên phần cứng có tài nguyên hạn chế. Bằng cách nắm bắt thông tin phong phú được mã hóa trong các dự đoán của giáo viên, mô hình học sinh thường đạt được độ chính xác cao hơn đáng kể so với khi nó chỉ được huấn luyện trên dữ liệu thô, giúp thu hẹp khoảng cách giữa hiệu suất cao và hiệu quả.
Trong học có giám sát truyền thống, các mô hình được huấn luyện bằng cách sử dụng "nhãn cứng" từ dữ liệu huấn luyện , trong đó một hình ảnh được phân loại rõ ràng (ví dụ: 100% "chó" và 0% "mèo"). Tuy nhiên, một mô hình giáo viên được huấn luyện trước sẽ tạo ra đầu ra thông qua hàm softmax , gán xác suất cho tất cả các lớp. Các phân bố xác suất này được gọi là "nhãn mềm" hoặc "kiến thức ẩn".
Ví dụ, nếu một mô hình giáo viên phân tích hình ảnh một con sói, nó có thể dự đoán 90% là sói, 9% là chó và 1% là mèo. Phân bố này cho thấy sói có những đặc điểm hình ảnh chung với chó, một ngữ cảnh mà nhãn cứng bỏ qua. Trong quá trình chưng cất, học sinh giảm thiểu một hàm mất mát , chẳng hạn như độ phân kỳ Kullback-Leibler , để điều chỉnh các dự đoán của nó sao cho phù hợp với nhãn mềm của giáo viên. Phương pháp này, được phổ biến bởi nghiên cứu của Geoffrey Hinton , giúp học sinh khái quát hóa tốt hơn và giảm hiện tượng quá khớp trên các tập dữ liệu nhỏ hơn.
Chắt lọc tri thức đóng vai trò then chốt trong các ngành công nghiệp nơi nguồn lực tính toán khan hiếm nhưng hiệu năng cao là điều không thể thiếu.
Điều quan trọng là phải phân biệt phương pháp chưng cất tri thức với các chiến lược nén dữ liệu khác, vì chúng sửa đổi mô hình theo những cách hoàn toàn khác nhau.
Trong quy trình làm việc thực tế, trước tiên bạn chọn một kiến trúc nhẹ để đóng vai trò là "sinh viên". Nền tảng Ultralytics có thể được sử dụng để quản lý các tập dữ liệu và track các thí nghiệm huấn luyện của những mô hình hiệu quả này. Dưới đây là một ví dụ về việc khởi tạo mô hình YOLO26 nhỏ gọn, lý tưởng cho việc triển khai ở biên và đóng vai trò như một mạng lưới học tập:
from ultralytics import YOLO
# Load a lightweight YOLO26 nano model (acts as the student)
# The 'n' suffix denotes the nano version, optimized for speed
student_model = YOLO("yolo26n.pt")
# Train the model on a dataset
# In a custom distillation loop, the loss would be influenced by a teacher model
results = student_model.train(data="coco8.yaml", epochs=5, imgsz=640)