Task Vectors
Tìm hiểu cách task vectors cho phép hợp nhất mô hình và điều hướng hành vi hiệu quả. Khám phá cách thao tác trọng số của Ultralytics YOLO26 cho các tác vụ đa nhiệm zero-shot.
Task vectors đại diện cho các thay đổi cụ thể được thực hiện đối với trọng số của neural network trong quá trình fine-tuning nhằm đạt được một khả năng mới. Bằng cách trừ đi các tham số của foundational base model khỏi các tham số của model đã fine-tuning, các nhà nghiên cứu có thể cô lập một vector định hướng trong không gian trọng số bao hàm hành vi đã học cho tác vụ cụ thể đó. Cách tiếp cận này cho phép các lập trình viên áp dụng các arithmetic operations on model parameters đơn giản để điều hướng, chỉnh sửa hoặc hợp nhất các hành vi của model mà không cần thêm chi phí tính toán huấn luyện.
Cách Task Vectors khác biệt với Transfer Learning#
Trong khi khái niệm transfer learning liên quan đến việc huấn luyện tuần tự một model trên một dataset mới để thích ứng với kiến thức hiện có của nó, task vectors hoạt động trực tiếp trên trọng số cấu trúc của model sau khi huấn luyện. Thay vì huấn luyện lại các gradient để học một domain mới, weight space interpolation sử dụng task vectors cho phép các kỹ sư kết hợp tuyến tính sự khác biệt về trọng số từ nhiều model được huấn luyện độc lập. Điều này cho phép model merging theo dạng zero-shot, giúp một model đơn lẻ kế thừa đồng thời nhiều khả năng mà không gặp phải computational overhead during training thông thường.
Các ứng dụng trong thực tế#
Khả năng thao tác đại số với các model deep learning đã dẫn đến một số ứng dụng có tác động mạnh mẽ trong các pipeline AI hiện đại:
- Multi-Task Model Merging: Các kỹ sư có thể kết hợp một task vector được tối ưu hóa cho object detection với một task vector khác được huấn luyện cho image segmentation. Khi được áp dụng cho model cơ sở Ultralytics YOLO26, điều này tạo ra một kiến trúc đa mục đích xuất sắc trong cả hai tác vụ cùng lúc, đồng thời bảo tồn thế mạnh của từng quá trình fine-tune ban đầu.
- Machine Unlearning and AI Safety: Nếu một model thể hiện các đầu ra thiên vị hoặc nguy hiểm, các nhà nghiên cứu có thể tính toán một task vector đại diện cho hành vi không mong muốn cụ thể đó. Bằng cách trừ vector này khỏi trọng số của model, họ có thể "xóa bỏ" hiệu quả hành vi đó, đóng góp lớn vào việc cải thiện các tiêu chuẩn về AI safety và AI ethics mạnh mẽ.
- Domain Adaptation in Computer Vision: Khi thích ứng các model cho các môi trường cụ thể—chẳng hạn như chuyển đổi từ ban ngày sang ban đêm trong real-time inference—task vectors cho phép người dùng điều chỉnh độ lớn của quá trình thích ứng. Việc áp dụng một phần của vector (ví dụ: hệ số tỷ lệ 0.5) có thể mang lại một model cân bằng hoạt động tốt ở cả hai domain.
Làm việc với Task Vectors trong PyTorch#
Việc tạo và áp dụng một task vector đòi hỏi phải truy cập và thao tác với PyTorch state dictionary. Ví dụ sau đây minh họa cách trích xuất task vector từ một model Ultralytics YOLO26 đã fine-tune và áp dụng lại vào base model với một scaling factor cụ thể.
from ultralytics import YOLO
# Load the state dictionaries for the base and fine-tuned models
base_weights = YOLO("yolo26n.pt").model.state_dict()
tuned_weights = YOLO("yolo26n-custom.pt").model.state_dict()
# Calculate the task vector (tuned weights minus base weights)
task_vector = {k: tuned_weights[k] - base_weights[k] for k in base_weights.keys()}
# Apply the task vector to the base model using a 0.5 scaling factor
for k in base_weights.keys():
base_weights[k] += 0.5 * task_vector[k]Tương lai của việc thao tác trọng số#
Khi các kiến trúc như large language models và các vision transformers khổng lồ tăng lên về số lượng tham số, việc huấn luyện lại chúng cho mọi điều chỉnh nhỏ trở nên bất khả thi về mặt kinh tế. Task vectors cung cấp một giải pháp thay thế tinh tế về mặt toán học cho việc model optimization sau huấn luyện. Bằng cách chia sẻ các task vector nhẹ thay vì toàn bộ các model có dung lượng hàng gigabyte, cộng đồng AI có thể thúc đẩy open-source collaboration in AI. Một khi các task vector tùy chỉnh của bạn đã được tinh chỉnh, việc sử dụng Ultralytics Platform sẽ đơn giản hóa các quá trình model deployment và giám sát tiếp theo, đảm bảo các trọng số được tối ưu hóa của bạn chuyển đổi trực tiếp thành các endpoint sẵn sàng cho môi trường production.






