Thuật ngữ

Adam Tối ưu hóa

Tìm hiểu cách trình tối ưu hóa Adam hỗ trợ đào tạo mạng nơ-ron hiệu quả với tốc độ học thích ứng, động lượng và ứng dụng thực tế trong AI.

Adam (Ước lượng Mô men Thích ứng) là một thuật toán tối ưu hóa phổ biến và mạnh mẽ được sử dụng trong học máy (ML)học sâu (DL) . Nó được thiết kế để tìm kiếm hiệu quả các giá trị tối ưu cho các tham số của mô hình (trọng số và độ lệch) bằng cách cập nhật chúng theo chu kỳ dựa trên dữ liệu huấn luyện. Adam được đánh giá cao nhờ tốc độ hội tụ nhanh và hiệu quả trên nhiều loại bài toán, khiến nó trở thành lựa chọn mặc định phổ biến cho nhiều chuyên gia khi huấn luyện các mô hình tùy chỉnh . Sự phát triển của Adam là một bước tiến quan trọng trong việc giúp việc huấn luyện các mô hình lớn và phức tạp trở nên thiết thực hơn.

Adam hoạt động như thế nào

Cải tiến quan trọng của Adam là khả năng điều chỉnh tốc độ học cho từng tham số riêng lẻ. Thay vì sử dụng một tốc độ học cố định duy nhất cho tất cả các trọng số trong mạng, Adam tính toán một tốc độ học riêng lẻ, tốc độ này sẽ điều chỉnh khi quá trình huấn luyện diễn ra. Phương pháp này đạt được điều này bằng cách kết hợp các ưu điểm của hai phương pháp tối ưu hóa khác: RMSProp và Momentum. Adam theo dõi hai thành phần chính: mô men thứ nhất (giá trị trung bình của các gradient, tương tự như momentum) và mô men thứ hai (phương sai không tâm của các gradient). Sự kết hợp này cho phép Adam thực hiện các cập nhật có thông tin đầy đủ hơn, thực hiện các bước lớn hơn cho các tham số có gradient nhất quán và các bước nhỏ hơn cho các tham số có gradient nhiễu hoặc thưa thớt. Phương pháp này được trình bày chi tiết trong bài báo nghiên cứu Adam gốc của Kingma và Ba .

Adam so với các trình tối ưu hóa khác

Sẽ rất hữu ích khi so sánh Adam với các trình tối ưu hóa phổ biến khác để hiểu được điểm mạnh của nó.

  • Adam so với Stochastic Gradient Descent (SGD) : Mặc dù SGD là một thuật toán tối ưu hóa cơ bản, nó sử dụng tốc độ học không đổi áp dụng cho tất cả các lần cập nhật tham số. Điều này có thể khiến nó chậm hội tụ hoặc bị kẹt trong các "thung lũng" không tối ưu của hàm mất mát . Adam, với tốc độ học thích ứng, thường điều hướng trong bối cảnh mất mát hiệu quả hơn và hội tụ nhanh hơn nhiều. Tuy nhiên, một số nghiên cứu cho thấy các mô hình được huấn luyện bằng SGD có thể tổng quát hóa tốt hơn một chút và tránh hiện tượng quá khớp hiệu quả hơn trong một số trường hợp nhất định. Việc lựa chọn này thường đòi hỏi phải kiểm tra thực nghiệm, như được giải thích trong hướng dẫn về các mẹo huấn luyện mô hình .
  • AdamW: Một biến thể phổ biến và hiệu quả là AdamW (Adam với Phân rã Trọng số Tách biệt). Nó điều chỉnh cách áp dụng phân rã trọng số—một kỹ thuật điều chỉnh —và tách nó ra khỏi bước cập nhật gradient. Điều này thường dẫn đến hiệu suất mô hình được cải thiện và khả năng khái quát hóa tốt hơn. Các triển khai có sẵn trong các nền tảng chính như PyTorchTensorFlow .

Ứng dụng trong thế giới thực

Hiệu quả và độ bền của Adam khiến nó phù hợp với nhiều ứng dụng khác nhau.

  1. Đào tạo Mô hình Ngôn ngữ Lớn (LLM): Adam và các biến thể của nó rất quan trọng trong việc đào tạo các mô hình lớn trong Xử lý Ngôn ngữ Tự nhiên (NLP) . Đối với các mô hình như GPT-4 hoặc các mô hình từ Hugging Face , hiệu quả của Adam giúp xử lý các tập dữ liệu văn bản khổng lồ từ các nguồn như Wikipedia và học các mẫu ngôn ngữ phức tạp. Khả năng điều hướng các bối cảnh mất mát phức tạp của nó là yếu tố thiết yếu cho sự thành công.
  2. Phân loại hình ảnh và phát hiện đối tượng: Trong thị giác máy tính (CV) , Adam được sử dụng rộng rãi để huấn luyện mạng nơ-ron tích chập sâu (CNN) trên các tập dữ liệu hình ảnh lớn như ImageNet hoặc COCO . Nó giúp các mô hình phân loại hình ảnhphát hiện đối tượng hội tụ nhanh chóng, giúp đẩy nhanh quá trình phát triển và điều chỉnh siêu tham số .

Sử dụng trong Ultralytics YOLO

Trong hệ sinh thái Ultralytics, Adam và biến thể AdamW của nó là các trình tối ưu hóa có sẵn để đào tạo các mô hình Ultralytics YOLO . Tận dụng tốc độ học thích ứng của Adam có thể tăng tốc độ hội tụ trong quá trình đào tạo phát hiện đối tượng, phân đoạn thể hiện hoặc các mô hình ước tính tư thế như YOLO11 hoặc YOLOv10 . Trong khi SGD thường là trình tối ưu hóa mặc định và được khuyến nghị cho một số mô hình YOLO do khả năng khái quát hóa cuối cùng tốt hơn, Adam cung cấp một giải pháp thay thế mạnh mẽ, đặc biệt hữu ích trong quá trình thử nghiệm ban đầu. Bạn có thể dễ dàng định cấu hình trình tối ưu hóa và các cài đặt đào tạo khác. Các công cụ như Ultralytics HUB hợp lý hóa quy trình, cho phép người dùng đào tạo các mô hình bằng nhiều trình tối ưu hóa khác nhau, bao gồm Adam, cục bộ hoặc thông qua đào tạo đám mây . Các khuôn khổ như PyTorchTensorFlow cung cấp các triển khai tiêu chuẩn của Adam, được sử dụng trong khuôn khổ Ultralytics.

Tham gia cộng đồng Ultralytics

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

Tham gia ngay
Liên kết đã được sao chép vào clipboard