Thuật ngữ

SiLU (Đơn vị tuyến tính Sigmoid)

Khám phá cách hàm kích hoạt SiLU (Swish) thúc đẩy hiệu suất học sâu trong các tác vụ AI như phát hiện đối tượng và NLP.

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

Tìm hiểu thêm

Đơn vị tuyến tính Sigmoid (SiLU), còn được gọi là hàm Swish, là một hàm kích hoạt được sử dụng trong mạng nơ-ron (NN) . Các hàm kích hoạt là các thành phần quan trọng đưa tính phi tuyến tính vào mạng, cho phép mạng học các mẫu phức tạp từ dữ liệu. SiLU được phát triển bởi các nhà nghiên cứu tại Google Brain và đã trở nên phổ biến do tính hiệu quả của nó trong nhiều tác vụ học sâu khác nhau, thường vượt trội hơn các hàm cũ hơn như ReLU trong các mô hình sâu hơn.

Sự liên quan và lợi thế

Tầm quan trọng của SiLU xuất phát từ các đặc tính độc đáo của nó có thể dẫn đến cải thiện hiệu suất mô hình và động lực đào tạo. Không giống như hàm ReLU được sử dụng rộng rãi, SiLU mượt mà và không đơn điệu. Điều này có nghĩa là đầu ra của nó không tăng nghiêm ngặt theo đầu vào, cho phép nó mô hình hóa các hàm phức tạp hơn. Độ mượt mà giúp tối ưu hóa dựa trên độ dốc , ngăn ngừa những thay đổi đột ngột trong quá trình đào tạo . Nghiên cứu, bao gồm cả bài báo Swish gốc , cho thấy rằng việc thay thế ReLU bằng SiLU có thể cải thiện độ chính xác phân loại trên các tập dữ liệu đầy thách thức như ImageNet , đặc biệt là trong các mạng rất sâu. Cơ chế tự đóng của nó giúp điều chỉnh luồng thông tin, có khả năng giảm thiểu các vấn đề như vấn đề độ dốc biến mất .

So sánh với các hàm kích hoạt khác

SiLU cung cấp một cấu hình khác so với các chức năng kích hoạt phổ biến khác:

  • ReLU (Đơn vị tuyến tính chỉnh lưu) : Đơn giản hơn và hiệu quả hơn về mặt tính toán, nhưng có thể gặp phải vấn đề "ReLU chết" khi các tế bào thần kinh trở nên không hoạt động. ReLU đơn điệu và không mượt ở mức không.
  • Leaky ReLU : Một cải tiến so với ReLU giải quyết vấn đề tế bào thần kinh chết bằng cách cho phép một gradient nhỏ, không bằng không cho các đầu vào âm. Giống như ReLU, Leaky ReLU là đơn điệu.
  • GELU (Gaussian Error Linear Unit) : Một hàm kích hoạt trơn tru khác, thường được sử dụng trong các mô hình máy biến áp . GELU tính trọng số đầu vào theo độ lớn của chúng thay vì chỉ gating theo dấu như ReLU. SiLU có thể được coi là một giải pháp thay thế trơn tru đôi khi hoạt động tốt hơn theo kinh nghiệm. Bạn có thể tìm tổng quan về hàm kích hoạt chung để biết thêm các so sánh.

Ứng dụng của SiLU

SiLU rất linh hoạt và đã được ứng dụng thành công trong nhiều lĩnh vực sử dụng mô hình học sâu:

  • Phát hiện đối tượng: Các mô hình phát hiện đối tượng hiện đại, bao gồm các kiến trúc liên quan đến Ultralytics YOLO , thường kết hợp SiLU hoặc các hàm kích hoạt nâng cao tương tự để cải thiện độ chính xác của việc xác định và định vị đối tượng trong hình ảnh hoặc video. Điều này giúp tăng cường hiệu suất trong các ứng dụng từ lái xe tự động đến phân tích bán lẻ, góp phần nâng cao hiểu biết về đánh giá mô hình .
  • Xử lý ngôn ngữ tự nhiên (NLP): SiLU có thể được sử dụng trong kiến trúc máy biến áp và các mô hình NLP khác cho các tác vụ như phân loại văn bản , dịch máy và phân tích tình cảm . Các thuộc tính của nó có thể giúp mô hình nắm bắt các mẫu ngôn ngữ phức tạp, cải thiện khả năng hiểu và tạo ra. Khám phá thêm các ứng dụng NLP .
  • Phân loại hình ảnh : Trong Mạng nơ-ron tích chập (CNN) sâu được thiết kế để phân loại hình ảnh, SiLU có thể thay thế các lớp ReLU, thường dẫn đến sự hội tụ tốt hơn và độ chính xác cuối cùng, đặc biệt là khi độ sâu của mạng tăng lên. Điều này có liên quan khi làm việc với các tập dữ liệu như COCO .

SiLU có sẵn trong các khuôn khổ học sâu lớn như PyTorch (BẰNG torch.nn.SiLU, được ghi chép lại đây) Và TensorFlow (BẰNG tf.keras.activations.swish, được ghi chép lại đây). Các nền tảng như Ultralytics HUB ủng hộ đào tạotriển khai của các mô hình sử dụng các thành phần tiên tiến như vậy.

Đọc tất cả