Khám phá cách LoRA tinh chỉnh các mô hình AI lớn như YOLO hiệu quả, giảm chi phí và cho phép triển khai biên với nguồn lực tối thiểu.
LoRA, hay Thích ứng Hạng Thấp, là một kỹ thuật mang tính cách mạng trong lĩnh vực học máy (ML) được thiết kế để tinh chỉnh các mô hình lớn đã được đào tạo trước với hiệu quả vượt trội. Khi kích thước của các mô hình nền tảng hiện đại bùng nổ - thường chứa hàng tỷ tham số - việc đào tạo lại chúng cho các tác vụ cụ thể đã trở nên quá sức về mặt tính toán đối với nhiều nhà nghiên cứu và nhà phát triển. LoRA giải quyết vấn đề này bằng cách đóng băng các trọng số mô hình ban đầu và đưa các ma trận hạng thấp nhỏ hơn, có thể đào tạo được vào kiến trúc. Phương pháp này giảm đáng kể số lượng tham số có thể đào tạo được, giảm yêu cầu bộ nhớ và cho phép thích ứng mô hình hiệu quả trên phần cứng tiêu dùng như GPU (Bộ xử lý đồ họa) tiêu chuẩn.
Cải tiến cốt lõi của LoRA nằm ở khả năng bỏ qua nhu cầu đào tạo lại toàn bộ mô hình. Trong phương pháp tinh chỉnh truyền thống, mọi trọng số trong mạng nơ-ron đều được cập nhật trong quá trình lan truyền ngược, đòi hỏi phải lưu trữ các trạng thái tối ưu hóa khổng lồ. Tuy nhiên, LoRA giữ cho mô hình được đào tạo trước ở trạng thái cố định. Nó đưa các cặp ma trận phân rã hạng vào các lớp cụ thể, thường nằm trong cơ chế chú ý của kiến trúc Transformer .
Trong quá trình huấn luyện , chỉ những ma trận bộ điều hợp nhỏ này được cập nhật. Vì các ma trận này là "hạng thấp" - nghĩa là chúng có số chiều ít hơn đáng kể so với các lớp mô hình đầy đủ - nên chi phí tính toán là tối thiểu. Khái niệm này vay mượn từ các nguyên tắc giảm số chiều , giả định rằng việc thích ứng với một tác vụ mới dựa trên một không gian con số chiều thấp của các tham số mô hình. Điều này biến LoRA thành nền tảng của Tinh chỉnh Hiệu quả Tham số (PEFT) , cho phép tạo ra các mô hình dành riêng cho tác vụ với kích thước chỉ bằng một phần nhỏ kích thước của điểm kiểm tra ban đầu.
Sau đây là Python đoạn trích minh họa cách bắt đầu một đợt huấn luyện tiêu chuẩn bằng cách sử dụng
ultralytics gói. Mặc dù lệnh này thực hiện đào tạo đầy đủ theo mặc định, các cấu hình nâng cao có thể tận dụng các kỹ thuật PEFT như LoRA để tối ưu hóa quy trình cho các
bộ dữ liệu tùy chỉnh.
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Train the model on a specific dataset
# LoRA strategies can be applied to freeze the backbone and train adapters
results = model.train(data="coco8.yaml", epochs=5, imgsz=640)
Hiệu quả của LoRA đã mở ra những khả năng mới trên nhiều lĩnh vực khác nhau của Trí tuệ nhân tạo (AI) .
Để hiểu đầy đủ về LoRA, cần phân biệt nó với các chiến lược thích ứng khác:
Bằng cách dân chủ hóa khả năng tùy chỉnh mô hình, LoRA trao quyền cho các nhà phát triển xây dựng các công cụ chuyên biệt để phân tích hình ảnh y tế , bảo tồn động vật hoang dã và xe tự hành mà không cần cơ sở hạ tầng của một công ty công nghệ lớn. Khi ngành công nghiệp chuyển sang các nền tảng đa năng - như Ultralytics Nền tảng—các kỹ thuật tách biệt kích thước mô hình khỏi chi phí đào tạo sẽ vẫn cần thiết cho sự đổi mới AI có khả năng mở rộng.