Yolo Tầm nhìn Thâm Quyến
Thâm Quyến
Tham gia ngay
Bảng chú giải thuật ngữ

LoRA (Điều chỉnh Hạng thấp)

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ách LoRA Hoạt động

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)

Các Ứng dụng Thực tế

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) .

  • Mô hình Ngôn ngữ Lớn (LLM) Tùy chỉnh : Các tổ chức sử dụng LoRA để điều chỉnh Mô hình Ngôn ngữ Lớn (LLM) đa năng cho các ngành công nghiệp ngách. Ví dụ, một công ty luật có thể đào tạo chatbot về các hồ sơ vụ án độc quyền. Bài báo LoRA ban đầu Microsoft đã chứng minh rằng phương pháp này duy trì hiệu suất tương đương với tinh chỉnh hoàn toàn, đồng thời giảm nhu cầu lưu trữ tới 10.000 lần.
  • Nghệ thuật AI Tạo sinh : Trong lĩnh vực AI tạo sinh , các nghệ sĩ sử dụng LoRA để dạy các mô hình tạo hình ảnh như Stable Diffusion các phong cách, nhân vật hoặc khái niệm mới. Bằng cách đào tạo trên một tập hợp hình ảnh nhỏ, họ tạo ra các "tệp LoRA" nhẹ (thường chỉ vài megabyte) có thể được đưa vào mô hình cơ sở để thay đổi đáng kể phong cách đầu ra của nó.
  • Tầm nhìn máy tính hiệu quả : Đối với các nhiệm vụ như phát hiện đối tượng , các kỹ sư có thể áp dụng các mô hình tầm nhìn mạnh mẽ để detect Các vật thể hiếm hoặc lỗi cụ thể trong kiểm soát chất lượng sản xuất . Điều này rất quan trọng đối với việc triển khai biên, nơi các thiết bị có bộ nhớ hạn chế. Các kiến trúc tương lai, chẳng hạn như YOLO26 sắp ra mắt, hướng đến việc tích hợp hiệu quả hơn nữa cho các ứng dụng thời gian thực.

LoRA so với các khái niệm liên quan

Để 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:

  • Tinh chỉnh Toàn diện : Phương pháp truyền thống này cập nhật tất cả các tham số của mô hình. Mặc dù cho phép đạt được độ dẻo tối đa, nhưng nó lại tiêu tốn nhiều tài nguyên và dễ bị "quên lãng thảm khốc", khi mô hình mất đi những kiến thức đã học trước đó. Bạn có thể khám phá các mẹo đào tạo mô hình để quản lý những thách thức này.
  • Kỹ thuật Prompt : Không giống như LoRA, vốn điều chỉnh trọng số mô hình (thông qua bộ điều hợp), kỹ thuật Prompt tập trung vào việc tạo ra các đầu vào văn bản hiệu quả để hướng dẫn hành vi của mô hình đóng băng. Kỹ thuật này không yêu cầu đào tạo nhưng có thể bị hạn chế trong việc xử lý các tác vụ phức tạp, cụ thể theo từng miền so với kỹ thuật điều chỉnh trọng số.
  • Học chuyển giao : Đây là khái niệm rộng hơn về việc lấy kiến thức từ một nhiệm vụ và áp dụng nó vào một nhiệm vụ khác. LoRA là một triển khai học chuyển giao cụ thể và hiệu quả cao.
  • Điều chỉnh nhắc nhở : Kỹ thuật này học "nhắc nhở mềm" (vectơ) được thêm vào chuỗi đầu vào. Mặc dù cũng hiệu quả về mặt tham số, nhưng nó hoạt động trên các nhúng đầu vào thay vì các lớp mô hình bên trong, điều này đôi khi có thể hạn chế khả năng biểu đạt của nó so với tích hợp sâu của LoRA.

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ã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.

Tham gia Ultralytics cộng đồng

Tham gia vào tương lai của AI. Kết nối, hợp tác và phát triển cùng với những nhà đổi mới toàn cầu

Tham gia ngay