Thuật ngữ

Điều chỉnh siêu tham số

Điều chỉnh siêu tham số chính để tối ưu hóa các mô hình ML như Ultralytics YOLO . Tăng cường độ chính xác, tốc độ và hiệu suất bằng các kỹ thuật chuyên môn.

Xe lửa YOLO mô hình đơn giản
với Ultralytics TRUNG TÂM

Tìm hiểu thêm

Điều chỉnh siêu tham số, còn được gọi là tối ưu hóa siêu tham số, là một quy trình cơ bản trong học máy (ML) nhằm tìm ra sự kết hợp tốt nhất của các siêu tham số để tối đa hóa hiệu suất của mô hình. Siêu tham số là các thiết lập cấu hình được thiết lập trước khi quá trình đào tạo bắt đầu, không giống như các tham số mô hình (như weights and biases trong mạng nơ-ron ) được học trong quá trình đào tạo thông qua các kỹ thuật như truyền ngược . Việc điều chỉnh các thiết lập bên ngoài này rất quan trọng vì chúng kiểm soát chính quá trình học, ảnh hưởng đến hiệu quả của mô hình học từ dữ liệu và khái quát hóa thành các ví dụ mới, chưa từng thấy.

Hiểu về siêu tham số

Siêu tham số xác định các thuộc tính cấp cao hơn của mô hình, chẳng hạn như độ phức tạp của nó hoặc tốc độ học của nó. Các ví dụ phổ biến bao gồm tốc độ học được sử dụng trong các thuật toán tối ưu hóa , kích thước lô xác định số lượng mẫu được xử lý trước khi cập nhật các tham số mô hình, số lớp trong mạng nơ-ron hoặc cường độ của các kỹ thuật chính quy hóa như sử dụng các lớp bỏ qua . Việc lựa chọn siêu tham số ảnh hưởng đáng kể đến kết quả của mô hình. Các lựa chọn kém có thể dẫn đến thiếu phù hợp , khi mô hình quá đơn giản để nắm bắt các mẫu dữ liệu hoặc quá phù hợp , khi mô hình học dữ liệu đào tạo quá tốt, bao gồm cả nhiễu và không khái quát hóa để kiểm tra dữ liệu .

Tại sao điều chỉnh siêu tham số lại quan trọng

Việc điều chỉnh siêu tham số hiệu quả là điều cần thiết để xây dựng các mô hình ML hiệu suất cao. Một mô hình được điều chỉnh tốt sẽ đạt được độ chính xác cao hơn, hội tụ nhanh hơn trong quá trình đào tạo và cải thiện khả năng khái quát hóa trên dữ liệu chưa biết. Đối với các tác vụ phức tạp như phát hiện đối tượng bằng các mô hình như Ultralytics YOLO , việc tìm ra các siêu tham số tối ưu có thể cải thiện đáng kể các số liệu hiệu suất như Độ chính xác trung bình (mAP) và tốc độ suy luận, vốn rất quan trọng đối với các ứng dụng đòi hỏi suy luận theo thời gian thực . Mục tiêu là điều hướng các sự đánh đổi, như sự đánh đổi giữa độ lệch và phương sai , để tìm ra điểm phù hợp cho một vấn đề và tập dữ liệu nhất định, thường được đánh giá bằng dữ liệu xác thực .

Kỹ thuật điều chỉnh siêu tham số

Có một số chiến lược để tìm kiếm các giá trị siêu tham số tốt nhất:

  • Tìm kiếm dạng lưới : Thử nghiệm tất cả các kết hợp có thể có của các giá trị siêu tham số được chỉ định. Đơn giản nhưng tốn kém về mặt tính toán.
  • Tìm kiếm ngẫu nhiên : Lấy mẫu các tổ hợp siêu tham số ngẫu nhiên từ các phân phối được chỉ định. Thường hiệu quả hơn Tìm kiếm dạng lưới.
  • Tối ưu hóa Bayesian : Xây dựng mô hình xác suất của hàm mục tiêu (ví dụ: độ chính xác của mô hình) và sử dụng nó để chọn các siêu tham số hứa hẹn để đánh giá tiếp theo. Các công cụ như Optuna triển khai điều này.
  • Thuật toán tiến hóa : Sử dụng các khái niệm lấy cảm hứng từ quá trình tiến hóa sinh học, như đột biến và lai tạo, để tinh chỉnh liên tục các quần thể của bộ siêu tham số. Ultralytics YOLO các mô hình tận dụng điều này để phát triển siêu tham số .

Các công cụ như Weights & Biases Sweeps , ClearML , CometKerasTuner giúp tự động hóa và quản lý các quy trình điều chỉnh này, thường tích hợp với các khung như PyTorchTensorFlow .

Điều chỉnh siêu tham số so với các khái niệm liên quan

Điều quan trọng là phải phân biệt điều chỉnh siêu tham số với các khái niệm ML liên quan:

  • Đào tạo mô hình : Điều chỉnh siêu tham số thiết lập các điều kiện để đào tạo (ví dụ: tốc độ học, kích thước lô). Đào tạo mô hình là quá trình học các tham số mô hình ( weights and biases ) dựa trên dữ liệu, sử dụng các siêu tham số đã chọn và thuật toán tối ưu hóa .
  • Thuật toán tối ưu hóa ( Adam , SGD ): Các thuật toán này cập nhật các tham số mô hình trong quá trình đào tạo dựa trên hàm mất mát . Siêu tham số kiểm soát các thuật toán này (ví dụ: tốc độ học), nhưng bản thân quá trình điều chỉnh tách biệt với hoạt động của thuật toán.
  • Chuẩn hóa : Các kỹ thuật như chuẩn hóa L1/L2 hoặc dropout giúp ngăn ngừa tình trạng quá khớp. Sức mạnh hoặc tốc độ của các kỹ thuật này tự chúng là các siêu tham số cần điều chỉnh.
  • Học máy tự động (AutoML) : Một lĩnh vực rộng hơn nhằm mục đích tự động hóa toàn bộ quy trình ML, bao gồm kỹ thuật tính năng, lựa chọn mô hình và điều chỉnh siêu tham số. HPT thường là thành phần chính của hệ thống AutoML .

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

Điều chỉnh siêu tham số được áp dụng trên nhiều miền khác nhau:

Điều chỉnh siêu tham số với Ultralytics

Ultralytics cung cấp các công cụ để đơn giản hóa việc điều chỉnh siêu tham số cho YOLO các mô hình. Các Ultralytics Tuner lớp học, được ghi chép trong Hướng dẫn điều chỉnh siêu tham số, tự động hóa quy trình bằng các thuật toán tiến hóa. Tích hợp với các nền tảng như Ray Điều Chỉnh cung cấp thêm khả năng cho các chiến lược tìm kiếm phân tán và nâng cao, giúp người dùng tối ưu hóa các mô hình của họ một cách hiệu quả cho các tập dữ liệu cụ thể (như COCO) và các nhiệm vụ sử dụng các nguồn lực như Ultralytics HUB để theo dõi và quản lý thí nghiệm. Sau đây mẹo đào tạo người mẫu thường liên quan đến việc điều chỉnh siêu tham số hiệu quả.

Đọc tất cả