더하기와 이어 붙이기
잔차 연결은 모양이 같은 두 특징을 원소별로 더하는 대표 구조다. DenseNet의 밀집 연결은 특징을 이어 붙여 각각을 채널로 남긴다. 같은 위치에서 (1,2)와 새 특징 (3)을 연결하면 (1,2,3)이 된다. 입력의 값을 덮어쓰거나 같은 길이의 벡터로 합산하는 계산이 아니다.
성장률에 따른 채널 수
블록 입력이 24채널이고 각 층이 8채널씩 새로 만들면 첫 층은 24채널을 입력받아 8개를 추가한다. 다음 층의 입력은 32채널이고 그다음은 40채널이다. 세 층을 지난 누적 특징은 48채널이다. 일반적으로 성장률 k와 층 수 L에 대해 누적 채널은 C₀+Lk가 된다.
블록과 전이층
공간 크기가 같은 특징들을 블록 안에서 연결하고, 블록 사이 전이층에서 합성곱과 풀링 등으로 채널 수나 공간 해상도를 바꾼다. 일부 구성은 병목 연산으로 새 특징을 만들 때의 비용을 줄이고 전이층에서 채널도 압축한다. 모든 버전이 같은 성장률이나 압축 비율을 쓰는 것은 아니다.
밀집 연결과 자원 사용
여기서 밀집이라는 말은 모든 뉴런을 전결합한다는 뜻이 아니라 층 사이 특징 연결이 촘촘하다는 뜻이다. 특징 재사용과 짧은 정보 경로가 학습에 도움을 줄 수 있지만 연결된 활성값의 저장과 이동 비용도 고려해야 한다. 매개변수가 적다는 이유만으로 학습 메모리나 실행 지연까지 항상 작다고 단정하지 않는다.
관련 문서
잔차 연결 / 합성곱 신경망 / 배치 정규화 / 전역 평균 풀링 / MobileNet / ShuffleNet