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

Tốc độ học (Learning Rate)

Tìm hiểu cách tốc độ học ảnh hưởng đến quá trình huấn luyện mô hình. Khám phá cách tối ưu hóa kích thước bước cho Ultralytics YOLO26 hướng đến đạt hiệu năng vượt trội trong phát hiện đối tượng và hơn thế nữa.

Tốc độ học là một cấu hình điều chỉnh siêu tham số quan trọng, quyết định kích thước bước mà mô hình thực hiện trong quá trình tối ưu hóa. Trong bối cảnh huấn luyện mạng nơ-ron, nó kiểm soát mức độ cập nhật trọng số nội bộ của mô hình để đáp ứng với sai số ước tính mỗi khi mô hình xử lý một lô dữ liệu. Hãy tưởng tượng như một người đang đi xuống núi về phía thung lũng (điểm sai số thấp nhất); tốc độ học quyết định độ dài bước chân của họ. Nếu bước chân quá lớn, họ có thể bước hoàn toàn qua thung lũng và bỏ lỡ đáy. Nếu bước chân quá nhỏ, việc đến đích có thể mất một khoảng thời gian không thực tế.

Vấn đề "Cô bé Goldilocks" trong tối ưu hóa

Việc tìm ra tốc độ học tối ưu thường được mô tả như một sự cân bằng trong quy trình làm việc của máy học . Mục tiêu là giảm thiểu hàm mất mát , đo lường sự khác biệt giữa dự đoán của mô hình và dữ liệu thực tế. Quá trình này phụ thuộc rất nhiều vào thuật toán tối ưu hóa như thuật toán giảm độ dốc ngẫu nhiên ( SGD ) hoặc thuật toán tối ưu hóa Adam để điều hướng trong phạm vi hàm mất mát.

  • Tốc độ học quá cao: Nếu giá trị được đặt quá cao, việc cập nhật trọng số của mô hình sẽ diễn ra quá đột ngột. Điều này có thể dẫn đến hiện tượng "vượt quá giới hạn", trong đó mô hình không hội tụ về một giải pháp mà thay vào đó dao động mạnh hoặc phân kỳ. Sự bất ổn này đôi khi có thể gây ra vấn đề bùng nổ gradient , khiến quá trình huấn luyện trở nên vô ích.
  • Tốc độ học quá thấp: Ngược lại, bước nhảy cực nhỏ đảm bảo mô hình di chuyển cẩn thận về phía điểm cực tiểu, nhưng có thể dẫn đến hiện tượng thiếu khớp (underfitting) vì quá trình huấn luyện trở nên cực kỳ chậm. Mô hình có thể bị mắc kẹt ở điểm cực tiểu cục bộ hoặc cần thêm hàng nghìn epoch để học các mẫu đơn giản, gây lãng phí tài nguyên tính toán. Các nhà nghiên cứu thường tham khảo tài liệu PyTorch về tối ưu hóa để hiểu cách các thuật toán khác nhau tương tác với các giá trị này.

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

Tác động của việc điều chỉnh tốc độ học tập thể hiện rõ ràng trong nhiều ngành công nghiệp quan trọng, nơi các tác vụ thị giác máy tính được triển khai.

  1. Hệ thống lái tự động: Trong quá trình phát triển xe tự lái , các kỹ sư sử dụng các tập dữ liệu khổng lồ để huấn luyện các mô hình phát hiện đối tượng nhằm nhận diện người đi bộ và biển báo giao thông. Khi áp dụng học chuyển giao cho một mô hình đã được huấn luyện trước như YOLO26 , các nhà phát triển thường sử dụng tốc độ học nhỏ hơn nhiều so với tốc độ học ban đầu. Việc "tinh chỉnh" này đảm bảo rằng mô hình học được những sắc thái khác biệt của các môi trường lái xe cụ thể (ví dụ: đường tuyết so với đường cao tốc sa mạc) mà không làm mất đi khả năng trích xuất đặc điểm tổng quát mà nó đã có.
  2. Chẩn đoán hình ảnh y tế: Trong phân tích hình ảnh y tế , chẳng hạn như phát hiện khối u trong ảnh chụp MRI, độ chính xác là tối quan trọng. Tốc độ học cao ở đây tạo ra nguy cơ mô hình bỏ sót những khác biệt nhỏ về cấu trúc giúp phân biệt mô ác tính với mô lành tính. Các chuyên gia thường sử dụng kỹ thuật gọi là "khởi động tốc độ học", tăng dần tốc độ từ 0 đến một giá trị mục tiêu để ổn định giai đoạn đầu của quá trình huấn luyện, đảm bảo trọng số của mạng nơ-ron ổn định trước khi bắt đầu học tích cực. Bạn có thể tìm hiểu thêm về các chiến lược này trong Khóa học cấp tốc về Học máy Google .

Phân biệt các thuật ngữ liên quan

Điều quan trọng là phải phân biệt tốc độ học với các tham số huấn luyện khác, vì chúng thường được cấu hình trong cùng một tệp cấu hình nhưng phục vụ các mục đích khác nhau:

  • Tốc độ học so với kích thước lô: Trong khi tốc độ học kiểm soát độ lớn của quá trình cập nhật, kích thước lô xác định số lượng mẫu huấn luyện được xử lý trước khi quá trình cập nhật diễn ra. Có mối quan hệ chặt chẽ giữa hai yếu tố này; thông thường, khi tăng kích thước lô, người ta cũng phải tăng tốc độ học để duy trì hiệu quả huấn luyện, một khái niệm đã được nghiên cứu trong các bài báo về huấn luyện theo lô lớn .
  • Tốc độ học so với giảm dần: Giảm dần đề cập đến chiến lược giảm tốc độ học một cách có hệ thống theo thời gian. Bộ lập lịch có thể giảm tốc độ xuống 10 lần sau mỗi 30 epoch. Điều này giúp mô hình thực hiện những bước nhảy vọt lớn về mặt khái niệm ngay từ đầu và sau đó tinh chỉnh độ chính xác của nó bằng những bước nhỏ hơn về cuối quá trình huấn luyện. Đây là một tính năng tiêu chuẩn trong gói Python Ultralytics .

Thiết lập tốc độ học trong Ultralytics YOLO

Khi sử dụng các framework hiện đại, bạn có thể dễ dàng điều chỉnh tốc độ học ban đầu (lr0) và tỷ lệ học tập cuối cùng (lrfDưới đây là một ví dụ về cách cấu hình điều này bằng cách sử dụng... Ultralytics Nền tảng Ứng dụng khách tương thích cho một bài tập huấn luyện tùy chỉnh.

from ultralytics import YOLO

# Load the YOLO26 model (latest state-of-the-art architecture)
model = YOLO("yolo26n.pt")

# Train the model with a custom initial learning rate
# lr0=0.01 sets the initial rate
# lrf=0.01 sets the final learning rate to (lr0 * lrf)
results = model.train(data="coco8.yaml", epochs=10, lr0=0.01, lrf=0.01)

Đối với người dùng nâng cao, các kỹ thuật như LR Finder (được fast.ai phổ biến) về cơ bản có thể tự động tìm ra giá trị khởi đầu tốt nhất bằng cách chạy một chu kỳ thử nghiệm ngắn, trong đó tỷ lệ được tăng theo cấp số nhân cho đến khi tổn thất phân kỳ. Nắm vững siêu tham số này thường là chìa khóa mở ra hiệu suất tiên tiến nhất (SOTA) trong các dự án AI của bạn.

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