잔차 연결 (Residual Connection)

컴퓨터과학·AI
한 줄 정의: 신경망의 한 층을 건너뛰어 입력을 출력에 그대로 더해주는 지름길 연결로, 아주 깊은 신경망도 안정적으로 학습되게 해줍니다.

쉽게 풀면

여러 층으로 된 건물에서 계단을 하나씩 밟고 올라가야 한다면, 중간에 한 층이 무너지면 꼭대기까지 아무도 갈 수 없습니다. 잔차 연결은 이런 건물에 비상 엘리베이터를 하나 더 놓는 것과 비슷합니다. 각 층을 반드시 거치게 하는 대신, "지금까지 온 것 + 이번 층에서 배운 추가 변화분"을 더해서 다음 층으로 넘겨줍니다. 그래서 특정 층이 별로 쓸모없는 변화를 학습하더라도 최소한 입력 정보 자체는 그대로 다음 층까지 전달됩니다. 이 덕분에 수십, 수백 층짜리 신경망을 쌓아도 학습 신호가 끊기지 않고 잘 전달됩니다.

왜 중요한가

잔차 연결은 이미지 인식용 합성곱 신경망뿐 아니라 트랜스포머 기반 언어모델, 확산모델(diffusion model) 등 오늘날 대부분의 깊은 신경망 구조의 기본 구성 요소로 자리 잡았습니다. 층 수를 늘릴수록 오히려 성능이 나빠지는 문제를 해결한 계기가 되었기 때문에, 대규모 모델을 안정적으로 학습시키는 구조 설계 논의에서 빠지지 않고 언급됩니다.

논문에서는 이렇게 쓰입니다

"각 블록에 잔차 연결(residual connection)을 도입하여 152개 층으로 구성된 네트워크에서도 학습이 안정적으로 수렴함을 확인했다."

이 문장은 "층이 매우 많은 신경망인데도 입력을 건너뛰어 더해주는 구조 덕분에 학습이 잘 이루어졌다"는 뜻입니다. 이 아이디어를 처음 널리 알린 구조가 ResNet입니다.

"트랜스포머의 각 서브층 이후 잔차 연결과 층정규화를 적용함으로써, 어텐션과 피드포워드 연산을 거치더라도 원래 입력 표현이 소실되지 않도록 설계하였다."

자연어처리 분야의 트랜스포머 구조에서도 잔차 연결이 어텐션 층과 피드포워드 층 각각에 적용되어, 깊은 층을 쌓아도 정보가 안정적으로 전달되게 한다는 점을 보여줍니다.

"의료영상 분할을 위한 U자형 네트워크에서 인코더의 저수준 특징을 디코더로 직접 전달하는 잔차성 스킵 연결을 도입하여, 미세한 경계 정보의 손실을 줄였다."

영상 분할 모델처럼 세밀한 공간 정보 보존이 중요한 과제에서, 잔차 연결과 유사한 스킵 연결 개념이 인코더-디코더 구조 사이의 정보 전달에 활용되는 예시입니다.

조금 더 깊게 보면

잔차 연결의 핵심은 층이 입력 자체를 새로 만들어내는 대신, 입력과 목표 출력의 차이(잔차)만을 학습하도록 문제를 재구성한다는 데 있습니다. 이 덕분에 역전파 과정에서 기울기가 덧셈 경로를 통해 앞쪽 층까지 비교적 그대로 전달될 수 있어 기울기 소실 문제가 완화됩니다. 실제 설계에서는 잔차를 더하기 전후에 배치 정규화나 층정규화를 어느 위치에 배치하는지(pre-norm과 post-norm)에 따라서도 학습 안정성이 달라진다는 점이 후속 연구들에서 다뤄집니다.

주의할 점

잔차 연결은 층 수를 무한정 늘려도 항상 성능이 좋아진다는 뜻이 아닙니다. 여전히 기울기 소실 문제를 줄여주는 보조 장치일 뿐이며, 실제로는 배치 정규화 등 다른 기법과 함께 사용될 때 효과가 극대화됩니다.

관련 용어