Softmax activation function

Giới thiệu sửa

 

Softmax là hàm kích hoạt ở lớp ra trong một mạng atificial neural network (mạng nơ-ron nhân tạo) được sử dụng với bài toán phân loại nhị phân với nhiều classes (multi-class classification problems) ở lớp ra.

Công thức của Softmax function sửa

Chúng ta cần một mô hình xác suất sao cho với mỗi input  ,   thể hiện xác suất để input đó rơi vào class  . Vậy điều kiện cần là các   phải dương và tổng của chúng bằng 1. Để có thể thỏa mãn điều kiện này, chúng ta cần nhìn vào mọi giá trị   và dựa trên quan hệ giữa các   này để tính toán giá trị của  . Ngoài các điều kiện   lớn hơn 0 và có tổng bằng 1, chúng ta sẽ thêm một điều kiện cũng rất tự nhiên nữa, đó là: giá trị   càng lớn thì xác suất dữ liệu rơi vào class i càng cao. Điều kiện cuối này chỉ ra rằng chúng ta cần một hàm đồng biến ở đây.

Chú ý rằng  có thể nhận giá trị cả âm và dương. Một hàm số mượt đơn giản có thể chắc chắn biến zithành một giá trị dương, và hơn nữa, đồng biến, là hàm exp(zi)=ezi. Điều kiện mượt để thuận lợi hơn trong việc tính đạo hàm sau này. Điều kiện cuối cùng, tổng các ai bằng 1 có thể được đảm bảo nếu:

 

Hàm số này, tính tất cả các ai dựa vào tất cả các zi, thỏa mãn tất cả các điều kiện đã xét: dương, tổng bằng 1, giữ được thứ tự của zi. Hàm số này được gọi là softmax function. Chú ý rằng với cách định nghĩa này, không có xác suất ai nào tuyệt đối bằng 0 hoặc tuyệt đối bằng 1, mặc dù chúng có thể rất gần 0 hoặc 1 khi zi rất nhỏ hoặc rất lớn khi so sánh với các zj,j≠i.

Lúc này, ta có thể giả sử rằng:

 

Trong đó  được hiểu là xác suất để một điểm dữ liệu   rơi vào class thứ   nếu biết tham số mô hình (ma trận trọng số) là  .

Tham khảo sửa