Tại sao phải sử dụng 1 lớp ReLU sau lớp Convolution trong CNN?


#1

Em có tìm hiểu thì đại ý là để giữ lại sự phi tuyến tính của ảnh ? Ai có thể giải thích rõ hơn được không?


#2

Nếu k có activation layer (ReLU, Sigmoid…) thì mạng đơn giản chỉ là kết hợp của các hàm tuyến tính. Khi đó, hàm hợp của nhiều hàm tuyến tính vẫn là hàm tuyến tính. Điều này khiến cho mạng chẳng khác gì một phép biến đổi tuyến tính cả. Trong khi đó, ánh xạ giữa đầu vào tới đầu ra luôn là phi tuyến. Tóm lại, cần dùng activation layer để có được một ánh xạ phi tuyến.


#3

Anh ơi, cho em hỏi vì sao ánh xạ giữa đầu vào tới đầu ra luôn là phi tuyến ạ ?


#4

Giả sử bạn đang làm bài toán phân loại 2 lớp. Đầu vào là x, nhãn là y, mô hình sẽ cố gắng xấp xỉ một hàm f(x). Khi dự đoán, ta sẽ xác định lớp cho các điểm đầu vào bằng cách: nếu f(x) > C thì phân vào lớp 1 và ngược lại. Từ đó, ta có thể thấy f(x) - C chính là đường phân chia giữa hai lớp, nói cách khác là đường chia tập dữ liệu thành hai phần. Mỗi bên sẽ thuộc về một lớp. Hiển nhiên, nếu các điểm dữ liệu của hai lớp này là linear separable (có thể phân chia bằng một đường thẳng) thì mô hình sẽ vẫn ổn. Nhưng nhiều bài toán trong thực tế, các điểm dữ liệu hiếm khi có thể phân biệt tuyến tính. Tóm lại, f(x) cần phải là một hàm phi tuyến.


#5

Vâng, em hiểu rồi ạ, em cảm ơn ạ!


#6

Another perspective: Convolutional late simply convolves over image input and generates metrics to represent image features. Convolutional layers l knows nothing about which features are most needed. Activation comes into play and act like gate or threshold to pick the best features. It does not pick a single threshold but it turns Convolutional layer’s output into numbers within a fixed or semi-fixed range. Think of Sigmoid from 0 to 1. The output of Sigmoid activation is not True or False, but is percentage from 0 to 1. Now, if Sigmoid is the output layer, we May manually set a threshold like 0.7 to pick all outputs above 0.7 as True otherwise False. Another role of Activation Is to help the model converging well. Think of data normalization, scientists love normalization to prevent divergence. Hope this help.