간혹 ResNet의 skip-connection이 Vanishing gradient 문제를 해결하기 위해 나온 방법이라고 알고 있는 분들이 있다. 이는 사실이 아니다.
왜냐하면 Vanishing gradient 문제는 ReLU 라는 활성화 함수를 통해 해결되었기 때문이다.
ReLU가 세상에 나오기 이전, 활성화 함수로 sigmoid를 대부분 사용해왔다.
그러나 sigmoid는 큰 문제점이 있다.
Sigmoid는 backpropagation을 통해 gradient descent를 하여 가중치를 업데이트할 때, 입력에 가까운 노드에서는 gradient 값이 매우 작아진다.
왜냐하면, sigmoid 함수에서 기울기가 가장 큰 부분이 약 1/4 정도밖에 되지 않기 때문이다.
이렇게 몇 번의 기울기들이 곱해지기만 해도 0에 가까운 gradient를 갖게 될 것이다.
그렇기 때문에 제대로 된 학습이 불가능하다는 문제점이 있다.
그렇게 해서 나온 활성화 함수가 ReLU(Rectified Linear Unit)이다.