Softmax (Hàm Softmax)
Định nghĩa
Hàm Softmax là một hàm kích hoạt đặc biệt, thường được sử dụng ở lớp đầu ra (output layer) của mạng nơ-ron cho bài toán phân loại đa lớp (multi-class classification).
Chức năng
Softmax nhận đầu vào là một vector (vector ) chứa các giá trị số thực bất kỳ (scores) từ lớp trước đó, và biến đổi nó thành một vector xác suất (probability distribution).
- Mỗi phần tử trong vector đầu ra nằm trong khoảng [0, 1].
- Tổng của tất cả các phần tử trong vector đầu ra bằng 1.
Công thức (Cho nơ-ron thứ )
Trong đó:
- : Giá trị đầu vào (score) của nơ-ron thứ .
- : Tổng số nơ-ron (tổng số lớp) ở lớp đầu ra.
Ý nghĩa
Kết quả đầu ra của Softmax có thể được diễn giải là xác suất để mẫu đầu vào thuộc về từng lớp. Lớp có xác suất cao nhất sẽ là lớp được mô hình dự đoán.
Ví dụ: Dự đoán ảnh là “Mèo”, “Chó”, hay “Chim”.
- Đầu vào Softmax (scores):
[2.0, 1.0, 0.1] - Đầu ra Softmax (xác suất):
[0.7, 0.2, 0.1](Tổng = 1.0) - Dự đoán: “Mèo” (vì có xác suất cao nhất là 0.7).
Softmax là phiên bản tổng quát hóa của hàm Sigmoid (Logistic) cho trường hợp nhiều hơn 2 lớp.