Hình chữ S
Khám phá sức mạnh của hàm Sigmoid trong AI. Tìm hiểu cách nó cho phép phi tuyến tính, hỗ trợ phân loại nhị phân và thúc đẩy sự tiến bộ của ML!
Hàm Sigmoid là một hàm kích hoạt phổ biến được sử dụng trong học máy (ML) và học sâu (DL) . Đây là một hàm toán học tạo ra một đường cong hình chữ "S" đặc trưng, hay đường cong sigmoid. Mục đích chính của nó là lấy bất kỳ số thực nào và "ép" nó vào một khoảng từ 0 đến 1. Đầu ra này thường được hiểu là một xác suất, khiến Sigmoid đặc biệt hữu ích trong các mô hình mà mục tiêu là dự đoán khả năng xảy ra của một kết quả. Bằng cách đưa tính phi tuyến tính vào mạng nơ-ron (NN) , nó cho phép mô hình học các mẫu phức tạp từ dữ liệu mà nếu không thì không thể thực hiện được bằng các phép biến đổi tuyến tính đơn giản.
Vai trò và ứng dụng
Khả năng ánh xạ đầu vào thành đầu ra tương tự xác suất của hàm Sigmoid khiến nó trở thành nền tảng cho một số loại tác vụ nhất định. Mặc dù nó đã trở nên ít phổ biến hơn trong các lớp ẩn của mạng nơ-ron sâu hiện đại, nhưng nó vẫn là lựa chọn tiêu chuẩn cho lớp đầu ra trong một số tình huống cụ thể.
Ứng dụng chính
- Phân loại nhị phân : Trong các bài toán phân loại nhị phân, mục tiêu là phân loại dữ liệu đầu vào thành một trong hai lớp (ví dụ: thư rác hay không thư rác, có bệnh hay không). Hàm Sigmoid ở lớp đầu ra cung cấp một giá trị duy nhất từ 0 đến 1, biểu thị xác suất đầu vào thuộc lớp dương. Ví dụ, một mô hình phân tích hình ảnh y tế có thể sử dụng hàm Sigmoid để đưa ra xác suất 0,9, cho biết khả năng khối u ác tính là 90%.
- Phân loại Đa Nhãn : Không giống như phân loại đa lớp, trong đó đầu vào chỉ thuộc một lớp, tác vụ đa nhãn cho phép một đầu vào được liên kết với nhiều nhãn cùng lúc. Ví dụ: một mô hình phát hiện đối tượng như Ultralytics YOLO có thể phân tích một hình ảnh và xác định "ô tô", "người đi bộ" và "đèn giao thông" cùng một lúc. Trong trường hợp này, một hàm Sigmoid được áp dụng độc lập cho từng nơ-ron đầu ra, cho biết xác suất của mỗi nhãn khả dĩ. Bạn có thể tìm hiểu thêm về sự phát triển của phát hiện đối tượng .
- Cơ chế Gating trong RNN : Hàm Sigmoid là thành phần cốt lõi trong cơ chế gating của Mạng Nơ-ron Hồi quy (RNN) , chẳng hạn như Bộ nhớ Dài Ngắn Hạn (LSTM) và Đơn vị Hồi quy Có Gating (GRU) . Các cổng này sử dụng Sigmoid để kiểm soát luồng thông tin, quyết định dữ liệu nào sẽ được giữ lại hoặc loại bỏ ở mỗi bước. Cơ chế này rất quan trọng để học các phụ thuộc dài hạn trong dữ liệu tuần tự, như được giải thích trong bài đăng trên blog chi tiết này về việc tìm hiểu LSTM .
So sánh với các hàm kích hoạt khác
Điều quan trọng là phải phân biệt hàm Sigmoid với các hàm kích hoạt khác để hiểu khi nào nên sử dụng nó.
- Softmax : Hàm Softmax thường được sử dụng cho các bài toán phân loại đa lớp, trong đó mỗi đầu vào thuộc chính xác một trong số nhiều lớp có thể. Không giống như Sigmoid, vốn tính toán xác suất độc lập cho mỗi đầu ra, Softmax tính toán phân phối xác suất trên tất cả các lớp có tổng bằng 1. Ví dụ: một mô hình phân loại chữ số viết tay từ tập dữ liệu MNIST sẽ sử dụng Softmax để gán một xác suất duy nhất cho mỗi chữ số từ 0 đến 9.
- ReLU (Đơn vị Tuyến tính Chỉnh lưu) : ReLU đã trở thành tiêu chuẩn thực tế cho các lớp ẩn trong mạng sâu. Nó hiệu quả hơn về mặt tính toán và giúp giảm thiểu vấn đề gradient biến mất - một vấn đề đáng kể với Sigmoid khi gradient trở nên cực kỳ nhỏ trong quá trình lan truyền ngược , làm chậm hoặc dừng quá trình học. Bạn có thể đọc thêm về những thách thức của gradient trong bài viết DeepLearning.AI này.
- SiLU (Đơn vị Tuyến tính Sigmoid) : Còn được gọi là Swish, SiLU là một hàm kích hoạt hiện đại hơn được phát triển từ Sigmoid. Nó thường hoạt động tốt hơn ReLU trong các mô hình sâu hơn, bao gồm cả các kiến trúc thị giác máy tính tiên tiến. Các mô hình Ultralytics thường tận dụng các hàm kích hoạt tiên tiến để đạt được sự cân bằng tốt hơn giữa tốc độ và độ chính xác.
Sử dụng và khả dụng hiện đại
Mặc dù ít phổ biến hơn trong các lớp ẩn hiện nay, Sigmoid vẫn là lựa chọn tiêu chuẩn cho các lớp đầu ra trong các tác vụ phân loại nhị phân và đa nhãn. Nó cũng là một thành phần cốt lõi trong các cơ chế gating trong các kiến trúc phức tạp xử lý dữ liệu tuần tự.
Sigmoid có sẵn ở tất cả các nơi chính khuôn khổ học tập sâu, bao gồm PyTorch (BẰNG torch.sigmoid
) Và TensorFlow (BẰNG tf.keras.activations.sigmoid
). Các nền tảng như Trung tâm phân tích siêu dữ liệu hỗ trợ các mô hình sử dụng nhiều chức năng kích hoạt khác nhau, cho phép người dùng xe lửa Và triển khai giải pháp thị giác máy tính tiên tiến.