Mục đích của chức năng kích hoạt là giới thiệu phi tuyến tính vào mạng
lần lượt, điều này cho phép bạn mô hình hóa một biến trả lời (còn gọi là biến mục tiêu, nhãn lớp hoặc điểm số) thay đổi phi tuyến tính với các biến giải thích của nó
phi tuyến tính có nghĩa là đầu ra không thể được sao chép từ tổ hợp tuyến tính của các đầu vào (không giống với đầu ra làm cho một đường thẳng - từ này là affine ).
Một cách khác để nghĩ về nó: không có chức năng kích hoạt phi tuyến tính trong mạng, NN, cho dù nó có bao nhiêu lớp, sẽ hoạt động giống như một tri giác một lớp, bởi vì việc tổng hợp các lớp này sẽ cung cấp cho bạn một chức năng tuyến tính khác (xem định nghĩa ở trên).
>>> in_vec = NP.random.rand(10)
>>> in_vec
array([ 0.94, 0.61, 0.65, 0. , 0.77, 0.99, 0.35, 0.81, 0.46, 0.59])
>>> # common activation function, hyperbolic tangent
>>> out_vec = NP.tanh(in_vec)
>>> out_vec
array([ 0.74, 0.54, 0.57, 0. , 0.65, 0.76, 0.34, 0.67, 0.43, 0.53])
Một chức năng kích hoạt phổ biến được sử dụng trong backprop ( tiếp tuyến hyperbol ) được đánh giá từ -2 đến 2: