Mở khóa sức mạnh của học chuyển giao để tiết kiệm thời gian, tăng hiệu suất AI và giải quyết các nhiệm vụ mới với dữ liệu hạn chế bằng cách sử dụng các mô hình được huấn luyện trước.
Học chuyển giao là một kỹ thuật học máy, trong đó một mô hình được phát triển cho một tác vụ được sử dụng lại làm điểm khởi đầu cho một mô hình khác trong tác vụ thứ hai có liên quan. Thay vì huấn luyện một mô hình từ đầu, vốn đòi hỏi một lượng lớn dữ liệu huấn luyện và tài nguyên tính toán, học chuyển giao tận dụng kiến thức - chẳng hạn như bản đồ đặc trưng, trọng số và mẫu - học được từ tác vụ nguồn. Phương pháp này là nền tảng của học sâu hiện đại, đặc biệt là trong thị giác máy tính (CV) , cho phép các nhà phát triển đạt được độ chính xác cao với lượng dữ liệu ít hơn đáng kể và thời gian huấn luyện ngắn hơn.
Quá trình này dựa trên khả năng học các biểu diễn đặc trưng phân cấp của mạng nơ-ron . Ở các lớp đầu tiên của mô hình, thường được gọi là xương sống , mạng nơ-ron học các đặc trưng thị giác phổ quát như cạnh, kết cấu và hình dạng. Các đặc trưng này có thể áp dụng cho hầu hết mọi tác vụ thị giác.
Học chuyển giao thường bao gồm hai giai đoạn chính:
Để tìm hiểu sâu hơn về lý thuyết, tài liệu Stanford CS231n về Chuyển giao học tập cung cấp một nguồn tài liệu tuyệt vời.
Học chuyển giao giải quyết thách thức chung về sự khan hiếm dữ liệu. Bằng cách bắt đầu với các đặc trưng đã được học trước, các mô hình tránh được hiện tượng quá khớp trên các tập dữ liệu nhỏ và hội tụ nhanh hơn nhiều so với các mô hình được khởi tạo với trọng số ngẫu nhiên.
Chuyển giao sức mạnh học tập cho các giải pháp AI được sử dụng rộng rãi trong nhiều ngành công nghiệp khác nhau:
Sẽ rất hữu ích khi phân biệt học chuyển giao với các thuật ngữ tương tự:
Sau đây là Python Ví dụ minh họa cách áp dụng học chuyển giao bằng cách sử dụng ultralytics thư viện. Chúng tôi tải một YOLO11 mô hình được đào tạo trước trên COCO và tinh chỉnh nó trên một tập dữ liệu mẫu.
from ultralytics import YOLO
# Load a pre-trained model (weights derived from the COCO dataset)
# This acts as our starting point for transfer learning
model = YOLO("yolo11n.pt")
# Fine-tune the model on a new dataset (e.g., COCO8)
# The model adapts its pre-learned features to the specific data
model.train(data="coco8.yaml", epochs=5)
# The updated model can now be used for inference on the new task
model.predict("path/to/image.jpg")
Để biết thêm chi tiết về cách triển khai, hãy tham khảo Hướng dẫn học chuyển giao PyTorch chính thức hoặc Hướng dẫn học chuyển giao TensorFlow .