Khám phá cách thức tính toán tác vụ sử dụng cập nhật trọng số để chỉnh sửa hành vi của mô hình. Tìm hiểu cách hợp nhất các tác vụ hoặc loại bỏ các tính năng trong Ultralytics YOLO26 mà không cần huấn luyện lại hoàn toàn.
Phép toán tác vụ (Task arithmetic) là một kỹ thuật học máy tiên tiến liên quan đến việc điều chỉnh hành vi của các mạng nơ-ron đã được huấn luyện trước bằng cách cộng hoặc trừ các cập nhật trọng số cụ thể. Thay vì huấn luyện lại hoàn toàn một mô hình từ đầu, người thực hành có thể phân lập sự khác biệt đã học được giữa một mô hình cơ bản và một mô hình được tinh chỉnh. Những khác biệt này về cơ bản là các cập nhật theo hướng cụ thể, gói gọn một khả năng hoặc hành vi nhất định. Bằng cách áp dụng các phép toán cơ bản như cộng và trừ cho các cập nhật này, các nhà phát triển có thể chỉnh sửa động các hệ thống học sâu . Mô hình này đã thu hút được sự chú ý đáng kể trong các nghiên cứu gần đây trên arXiv về phép toán tác vụ , cung cấp một phương pháp nhẹ nhàng và tiết kiệm tính toán để điều chỉnh các mô hình quy mô lớn cho các yêu cầu mới.
Nền tảng của kỹ thuật này dựa trên việc tính toán sự khác biệt về trọng số mô hình giữa một mô hình cơ bản được huấn luyện trước và một phiên bản đã được tinh chỉnh trên một tập dữ liệu cụ thể. Sự khác biệt riêng biệt này trở thành một biểu diễn cục bộ của kỹ năng mới. Bằng cách thao tác trực tiếp với các từ điển trạng thái PyTorch hoặc sử dụng các phương pháp huấn luyện TensorFlow , các kỹ sư có thể mở rộng và kết hợp các sự khác biệt về trọng số này. Ví dụ, việc trừ đi một bản cập nhật trọng số cụ thể có thể buộc mô hình "quên" một hành vi đã học, một khái niệm được nghiên cứu sâu rộng trong nghiên cứu Anthropic về tính an toàn của mô hình .
Tính toán tác vụ mở khóa một số quy trình làm việc hiệu quả cao trong các hệ thống xử lý ngôn ngữ tự nhiên và thị giác máy tính hiện đại:
Khi duyệt qua kho lưu trữ IEEE Xplore hoặc thư viện số ACM , người ta dễ nhầm lẫn phép toán tính toán tác vụ với các phương pháp luận liên quan:
Việc áp dụng các chiến lược tối ưu hóa mô hình này trong thực tế đòi hỏi phải quản lý cẩn thận trạng thái nội bộ của mô hình. Dưới đây là một ví dụ về việc tính toán và áp dụng bản cập nhật bằng cách sử dụng PyTorch một kỹ thuật thường được thảo luận trong các bài báo về thị giác máy tính gần đây .
import torch
# Load the state dictionaries of the pre-trained base and fine-tuned models
base_weights = torch.load("yolo26_base.pt")
tuned_weights = torch.load("yolo26_tuned.pt")
# Calculate the task vector and add it back to the base model with a scaling factor
scaling_factor = 0.5
for key in base_weights.keys():
task_vector = tuned_weights[key] - base_weights[key]
base_weights[key] += scaling_factor * task_vector
Đối với các nhóm quản lý quy trình chú thích dữ liệu phức tạp và nhiều phiên bản mô hình được tinh chỉnh, Nền tảng Ultralytics cung cấp một môi trường hợp lý để giám sát quá trình huấn luyện trên đám mây và triển khai liền mạch, giúp quản lý việc cải tiến mô hình lặp đi lặp lại hiệu quả hơn nhiều.
Bắt đầu hành trình của bạn với tương lai của học máy