Paper review/Deep Learning

[Research review] Drop an Octave: Reducing Spatial Redundacy in Convolutional Neural Networks with Octave Convolution

ignuy 2026. 2. 12.

This article is a compilation of research reviews for study purposes. It was not written for commercial purposes. If there are any issues, it will be deleted.

It's written in Korean, so if you need other language, click the translate button and read it.

논문 소개

본 논문은 CNN의 공간적(spatial) 중복성에 주목하여, feature map을 공간 주파수 관점에서 분해하는 새로운 합성곱 연산(Octave Convolution; OctConv)을 제안하고 있습니다. 자연 영상이 저주파(전역 구조)와 고주파(세부 경계) 성분으로 구성된다는 점을 착안하여, 합성곱 출력 특징맵 역시 고주파 성분은 원 해상도에서, 저주파 성분은 절반 해상도에서 처리하도록 설계하였습니다. 이를 통해 계산량과 메모리 사용을 동시에 줄이면서도 성능 저하 없이 오히려 분류 정확도를 향상시킬 수 있음을 보이고 있습니다.
OctConv는 기존 convoultion을 plug-and-play 방식으로 대체 가능하며, 네트워크 구조 변경 없이 다양한 백본(ResNet, DenseNet, MobileNet, 3D CNN 등)에 적용가능하다는 점이 특징입니다. 또한, ImageNet 및 Kinetics 실험을 통해 FLOPs 절감과 정확도 향상을 동시에 달성함으로써, OctConv가 효율적 CNN 설계를 위한 일반적인 연산자로 활용될 수 있음을 입증합니다.

배경

합성곱 신경망(CNN)의 효율성을 높이기 위한 연구는 주로 파라미터 수 감소나 채널 차원의 중복 제거에 집중되어 왔다. 대표적으로 그룹 컨볼루션, depth-wise convolution, 네트워크 프루닝 등이 그 예시에 속한다. 그러나 이러한 접근들은 대부분 공간 차원의 중복성을 명시적으로 고려하지 않았다는 한계를 가진다. 실제로 CNN의 feature map은 인접한 위치 간에 매우 유사한 정보를 반복적으로 저장하며, 특히 깊은 층으로 갈수록 특징 맵은 부드럽게 변화하는 경향을 보인다.

한편, 전통적인 영상 처리 및 시각 인지 이론에서는 자연 영상이 저주파 성분(전역 구조)과 고주파 성분(국소적 디테일)으로 구성된다는 점이 잘 알려져 있다. Figure 1 (a)는 이러한 공간 주파수 모델을 직관적으로 보여주고 있다. 저주파는 객체의 전체 형태와 배치를, 고주파는 경계나 세부 질감을 주로 담고 있음을 설명한다. 저자들은 이 관점을 CNN의 feature map으로 확장하여, Figure 1 (b)와 같이 하나의 convolution 출력 역시 서로 다른 공간 주파수 성분이 혼재된 상태라고 해석한다. 앞서 언급했듯이, 저주파 성분은 공간적으로 천천히 변한다는 특성이 있으므로 인접한 위치 간에 공간 해상도를 공유하고 있을 것이다. 이를 바탕으로 Figure 1 (c)에서는 해당 feature map을 원래보다 낮은 해상도의 텐서로 저장하여 공간적 중복성을 줄이는 multi-frequency feature representation을 제안한다.

중요한 점은 정보 손실을 최소화하면서도 메모리 및 연산량을 크게 절감할 수 있다는 것이다. 마지막으로 Figure 1 (d)는 이러한 표현을 직접 처리할 수 있도록 설계된 Octave Convolution의 개념을 직관적으로 보여주며, 고/저주파 그룹 내 정보 업데이트 뿐 아니라 그룹 간 정보 교환까지 하나의 연산 유닛 안에서 수행함을 강조한다. 이러한 문제의식에서 출발해, 네트워크 구조 변경 없이 공간 중복성을 줄이려는 OctConv가 제안되었다.

아이디어

논문의 핵심 아이디어는 CNN의 feature map을 단일 해상도에서 균일하게 처리해야 할 대상이 아니라 공간 주파수 특성이 서로 다른 정보의 혼합체로 재해석하여 다르게 처리함에 있다. 저자들은 고주파 성분이 세부 경계와 국소 패턴을 담는 반면, 저주파 성분은 전역 구조와 문맥 정보를 주로 표현하며 공간적으로 천천히 변화한다는 점에 주목한다. 이에 따라 모든 feature를 동일한 공간 해상도로 유지하는 기존 convolution 방식은 불필요한 공간 중복을 야기한다고 주장하고 있다. 이러한 문제 인식에서 출발해, feature map을 Figure 1 (c)와 (d)처럼 고주파와 저주파 그룹으로 분리하고, 저주파 성분은 더 낮은 해상도에서 처리하는 multi-frequency feature representation을 제안한다. 핵심은 단순한 다운샘플링이나 멀티스케일 병렬 구조가 아니라, 서로 다른 주파수 그룹이 동시에 존재하면서 상호 정보를 교환할 수 있도록 설계하는 것이다. 이를 위해 저자들은 기존 convolution을 일반화한 Octave Convolution을 도입하여 주파수 별 특징 추출과 그룹 간 정보 전달을 하나의 연산 단위로 통합한다. 이 아이디어를 통해 연산 효율성과 표현력을 동시에 확보하는 것을 목표로 하게 된다. 저자들은 이에 그치지 않고 다른 CNN 아키텍처를 조정할 필요 없이 일반적인 컨볼루션 연산을 대체하도록 설계하였다.

시스템 구조

(1) Octave Feature Representation

일반적인 convolution은 입력과 출력 feature map을 모두 동일한 공간 해상도 (h x w)로 유지한다. 논문은 이 가정이 항상 필요하지 않다고 보고 있다. 특히 CNN의 중간 특징 맵에는 인접 위치 간에 공간적 중복으로 인해 반복되는 정보가 많고 그중 일부 채널은 전역 구조나 완만한 변화처럼 천천히 변하는 정보(저주파 정보)를 담아 굳이 높은 해상도로 저장하거나 연산할 필요가 없다는 관점이다. 이에 따라 저자들은 feature map을 주파수별로 분리해 octave feature representation을 제안한다.

 

먼저 형식적으로 입력 텐서 X를 채널 방향으로 두 그룹으로 나눈다.

고주파는 원 해상도 (h x w)에서 유지되며, 저주파는 한 옥타브 낮은 해상도(공간 크기를 2로 나눔)인 (h/2 x w/2)에서 유지된다. 이때 α∈[0,1] 를 저주파에 할당하는 채널 비율로 정의하여 고주파, 저주파 그룹을 아래처럼 구성한다.

즉, 전체 채널 c 중 αc는 저해상도 텐서에 저장되고, 나머지 (1-α)c는 원 해상도 텐서에 저장된다.

 

이 표현의 핵심은 [멀티스케일 네트워크를 새로 설계]하는 것이 아니라 하나의 layer 출력 자체를 주파수 성분으로 분해해 저장한다는 점이다. 저주파 그룹은 이웃 픽셀 간 공유 가능한 완만한 정보를 압축해 담기 때문에, 동일한 정보량을 더 적은 공간 샘플로 표현할 수 있고(공간 redundacy 감소), 결과적으로 메모리 및 연산량이 줄어든다. 또한 저주파 텐서에서의 (k x k) 합성곱은 원 좌표계 기준으로 더 넓은 receptive field를 갖는 효과(해상도 1/2이므로 실질적으로 2배 범위)를 제공해 전역 문맥을 더 쉽게 반영할 수 있다는 점을 활용한다.

(2) Octave Convolution

Octave feature representation은 입력이 { XH, XL }처럼 서로 다른 해상도의 텐서 쌍으로 들어오므로, 기존의 convolution을 그대로 적용하기는 어렵다. 이 한계를 가장 단순하게 우회하는 방법은 저주파 부분(XL)을 업샘플링하여 고주파 부분(XH)과 concat 한 뒤 합성곱을 수행하는 것이지만, 이는 업샘플된 텐서를 계산하고 저장해야 하므로 (1)에서 언급한 절감 효과를 누리지 못한다. 이를 해결하기 위해 저자들은 Octave Convolution(OctConv)을 정의하여, 서로 다른 해상도의 두 텐서에서 직접 연산하면서도 고주파/저주파 간 정보 교환이 가능하도록 노력했다.

OctConv의 출력 역시 { YH, YL }로 분해되며, 각 출력은 intra-frequeny update(동일 주파수 내 갱신)와 inter-frequency communication(주파수 간 교환)의 합으로 구성된다. 따라서 OctConv의 출력은 아래와 같이 표현할 수 있다.

여기서 H → H, L → L은 각각 고주파와 저주파 내부에서의 합성곱이고, H → L, L → H는 서로 다른 주파수 사이의 정보 전달 경로이다.

커널 W 역시 입력이 (XH, XL)로 분리되는 구조에 맞게 4개의 파트의 파라미터로 대응한다. 이와 관련하여 아래와 같이 표현할 수 있다. 이 과정은 아래 Figure 2 (a)에 자세히 서술되어 있다.

OctConv의 커널 W를 볼 때 중요한 점은 Figure 2 (b)에서 볼 수 있듯이 파라미터 수가 기존 convolution과 동일하도록 설계되어 표현력 증가를 파라미터 증가로 얻는 단순한 방식이 아니라는 점이다. 천천히 전개해보자.

계산 관점에서 H → H는 원 해상도에서 (k x k) conv를 수행하고 L → L은 저행상도에서 (k x k) conv를 수행한다. 상호 교환 경로는 해상도 정합이 필요하므로 H → L은 고해상도 특징에서 저해상도로 다운샘플링을 포함하고 L → H는 저해상도 특징에서 고해상도로의 업샘플링을 포함한다.

여기서 OctConv의 설계 포인트는 업/다운샘플을 별도 텐서로 크게 만들었다가 다시 합치는 방식이 아니라 다운샘플은 conv 입력에 포함시키고 업샘플은 conv 출력 이후에 수행하는 형태로 계산을 재배치해 메모리와 연산 낭비를 줄이는 것이다.

고주파 부분 출력을 수식과 함께 살펴보자.

저주파 feature map의 경우 주파수 내 업데이트를 위해 일반적인 컨볼루션을 사용한다. 이 때, 해당 맵이 한 옥타브 낮기 때문에 컨볼루션 역시 고주파 좌표 공간에 대해 저주파 특성을 갖는다는 것이 주목할 점이다. 주파수 간 정보 교환을 위해 특징텐서 XH의 다운샘플링을 다시 컨볼루션에 삽입하여 저주파 부분 출력을 구하는 연산을 수행한다. 아래 수식과 함께 살펴보자.

위 수식에서 고주파 특징맵에서 위치 (p, q)에 2를 곱함은 다운샘플링을 의미하며 위치를 0.5만큼 이동시키는 것은 다운샘플링된 맵이 입력과 잘 정렬되도록 보장하는 작업이다. 하지만 XH의 인덱스는 정수만 가능하므로 (2p + 0.5 + i, 2q + 0.5 + j)에서 값을 4개의 인접한 위치의 평균으로 근사하는 average pooling을 사용한다.

이때, 저주파 부분 XL을 (k x k) kernel로 convolution 하는 것은 일반적이 convolution에 비해 수용 영역이 2배 확대되는 결과를 가져온다. 이는 각 OctConv Layer가 더 먼 위치의 문맥 정보를 업데이트하는 데 도움이 되어 인식 성능을 향상시킬 수 있다.

 

결과적으로 OctConv는 (1) 고주파는 디테일을 유지하고 (2) 저주파는 압축된 형태로 문맥을 넓게 보고 (3) 두 그룹이 양방향으로 정보를 주고받아 분리로 인한 정보 단절을 막는 구조를 지닌다. 특히 저주파 경로의 합성곱은 원 좌표계에서 더 큰 receptive field를 갖는 효과를 제공해 성능 향상 가능성을 이론적으로 뒷받침한다.

(3) Implementation Details

구현 단계에서 핵심 이슈는 주파수 간 교환 경로에서의 정렬 문제이다. 특히 H → L은 고해상도 특징을 저해상도로 내려야 하는데 이를 stride 2의 strided convolution으로 처리하면 홀수 크기 커널(예를 들어 3 x 3 kernel)을 사용할 때 업샘플링 후 원래 고주파 특징과 더해지는 과정에서 표현 위치가 미세하게 어긋나는 misalignment가 발생할 수 있다. 아래 Figure 5가 이를 직관적으로 보여준다.

따라서 저자들은 H → L 다운 샘플링을 단순 stride conv로 하지 않고, average pooling 기반의 down-sampling을 사용하여 더 안정적인 정렬을 확보한다.

이를 반영해 OctConv는 다음과 같이 구현된다.

여기서 f(⋅)는 conv 연산, pool(⋅, 2)는 (2 x 2) average pooling(stride 2), upsample(⋅, 2)는 nearest neighbor upsampling이다. 즉, 고주파 출력은 (고주파 내부 conv) + (저주파에서 conv 후 업샘플)로 만들고, 저주파 출력은 (저주파 내부 conv) + (고주파에서 평균 풀링으로 해상도를 내린 뒤 conv)로 만든다. 이런 형태는 업샘플된 큰 텐서를 먼저 만들고 conv 하는 방식보다 효율적이며, pooling의 추가 비용은 conv FLOPs에 비해 무시 가능하다고 여긴다.

또한 논문은 OctConv가 group convolution이나 depth-wise convolution에도 자연스럽게 확장 가능하다고 설명한다. 그룹 컨볼루션의 경우 OctConv 내부의 네 개 conv 경로 모두를 동일한 그룹 설정으로 수행하면 되고 depth-wise의 경우 채널 간 mixing이 없으므로 주파수 교환 경로가 구조적으로 약화 또는 제거되어 더 단순한 형태가 만들어진다. Figure 6.에서는 효율성 측면에서 저주파 채널 비율 α에 따라 메모리와 FLOPs 절감이 이론적으로 계산되며 저주파 텐서를 절반 해상도로 저장함으로써 메모리 비용이 1 - 3/4α로 감소하는 형태의 분석을 제시한다.

뿐만 아니라, Computational cost 측면의 분석도 4개의 경로(H → H, H → L, L → H, and L → L)에서 수행되는 계산을 기존의 Convolution과 비교했을 때 (1 - 3/4α(2 - α)) 비율로 더 효율적인 것을 알 수 있다.

마지막으로 네트워크에 삽입할 때는 첫 OctConv에서 α_in = 0, α_out = α로 설정해 단일 입력(고주파 only)을 두 주파수로 분해해 진입시키고, 마지막 OctConv에서 α_out = 0으로 다시 단일 고해상도 출력으로 복원하는 방식으로 backwards compatibility를 보장한다.

전체적으로 OctConv는 표현을 분해해 압축하여 저장하고 4가지 경로 conv로 갱신 및 교환하면서 이 때 발생하는 정렬 문제를 average pooling으로 완화하는 정교한 설계 철학을 가지고 있다.

학습 및 추론, 실험

(1) Experimental Setups

이미지 분류 실험은 ImageNet-1K 데이터셋을 기반으로 수행되었으며, ResNet, ResNeXt, DenseNet, MobileNet, SE-Net 등 다양한 백본의 기존 convolution을 OctConv로 대체하여 성능을 비교하였다. 대부분의 네트워크는 Scratch에서 SGD + cosine learning rate으로 학습되었으며 MobilenetV2는 label smoothing을 적용하였다. 일부 대형 모델에서는 mixup도 사용되었다. 추론 시 single center crop 정확도를 기록하였다. 비디오 인식 실험은 Kinetics-400 및 Kinetics-600에서 진행되었으며, I3D 및 C2D 기반 3D CNN에 OctConv를 적용하였다. 프레임 길이 8 기준으로 300k iteration 학습 후, 30-crop 평균으로 평가하였다. 모든 비교는 동일 학습 조건에서 수행되어 공정성을 유지하였다.

(2) Ablation Study on ImageNet

Ablation의 핵심 목표는 두 가지이다.

(1) OctConv가 실제로 FLOPs-Accuracy trade-off를 개선하는가?

(2) 어떤 α 값에서 가장 효과적인가?

 

ResNet-50을 기준으로 α ∈ {0.125, 0.25, 0.5, 0.75}를 변화시키며 분석한 결과(Firgure 3의 분홍색 라인), FLOPs와 정확도 사이에 concave trade-off 곡선이 나타났다. 즉, α를 증가시키면 FLOPs는 지속적으로 감소하지만, 정확도는 처음 상승 후 서서히 감소한다. 또한 두 개의 최적점(sweet spot)을 볼 수 있다. 첫째로 α = 0.5일 때 FLOPs가 약 절반으로 줄어들었음에도 불구하고 네트워크가 비슷하거나 더 나은 결과를 얻었다. 둘째로 α = 0.125일 때 네트워크가 베이스라인(검은색 원)보다 1.2% 높은 최고 정확도를 달성한다.

흥미로운 점은 저주파 채널 비율을 75%까지 높여(α = 0.75) 해상도를 절반으로 압축해도 정확도 하락이 매우 제한적이라는 점이다. 이는 CNN 내부 feature 중 상당 부분이 공간적으로 완만한 정보를 담고 있음을 간접적으로 시사한다.

또한 Table 2에서 OctConv의 이론적인 FLOPs 절감이 실제 CPU 추론 시간에도 반영됨을 보여주고 있다. 이는 OctConv가 단순 계산량 감소 뿐 아니라 실제 효율성 개선으로 이어진다는 점을 보여준다.

다양한 백본(ResNet-101, ResNeXt, DenseNet, SE-Net 등)에서도 유사한 경향이 반복적으로 나타났으며, shallow network(예: ResNet-26)일수록 receptive field 확장 효과로 인해 성능 향상이 더 두드러졌다.

Figure 4에서 볼 수 있듯이 Fourier 분석 결과에서도 저주파 그룹이 실제로 저주파 성분을 주로 담고 있음이 확인되었다. 즉, 설계 가정이 feature 수준에서도 타당함을 보였다.

(3) Comparing with SOTAs on ImageNet

가장 널리 사용되는 경량 네트워크를 기본 모델로 채택하고 OctConv가 이런 컴팩트한 네트워크에서 depth-wise 컨볼루션과 함께 잘 작동하는지 검토한 결과가 Table 3에 있다. Small 모델(MobileNet 계열)에서 OctConv는 특히 효율 개선 효과가 컸다. MobileNetV1의 경우 FLOPs를 약 34% 감소시키면서도 정확도를 유지하거나 소폭 향상시켰고, 동일 FLOPs 조건에서는 오히려 더 높은 정확도를 달성하였다. MobileNetV2에서도 계산량을 줄이면서 동일하거나 더 높은 성능을 보였다.

Medium 모델에 대한 실험 결과를 Table 4로 정리하였다. MG-Conv, GloRe, Elastic-Net, bL-Net과 비교되었고 이 때 OctConv는 대체로 더 적은 FLOPs와 더 높은 정확도를 동시에 기록하였다. 특히 MG-Conv 대비 약 1/3 수준의 FLOPs로 더 높은 정확도를 달성한 점은 공간 중복성 제거 전략의 효율성을 강조한다.

Large 모델에 대한 실험 결과는 Table 5에 정리되어 있다. 여기서는 ResNet-152를 백본 CNN으로 선택했으며 OctConv는 경쟁력 있는 성능을 보여주었다. Oct-ResNet-152는 10.9 GFLOPs에서 81% 이상의 Top-1 정확도를 기록했으며, SE 블록을 추가하면 82.9%까지 도달하였다. 이는 NAS 기반 대형 모델(AmoebaNet 등)과 유사한 성능을 더 낮은 계산 비용으로 달성한 결과다.

중요한 점은 OctConv가 파라미터 수 증가 없이 성능을 개선했다는 점이다. 이는 단순 모델 확장이 아닌 구조적 효율 개선이라는 점에서 의미가 있다. 또한 group/depth-wise convolution과도 상호보완적으로 작용하여 기존 효율 네트워크 설계와 충돌하지 않는다.

(4) Experiments of Video Recongintion on Kientics

3D CNN(I3D, C2D) 기반 Kinetics 실험에서도 OctConv는 일관된 성능 향상을 보였다. Kinetics-400 기준으로 I3D에 α=0.1을 적용하면 FLOPs 감소와 함께 Top-1 정확도가 약 +1% 향상되었다. Non-local module이나 SlowFast 구조와도 병행 적용이 가능했으며 이 경우에도 추가적인 성능 향상이 관찰되었다. 이는 OctConv가 공간 차원에서의 일반적 연산자로 2D뿐 아니라 3D CNN에도 자연스럽게 확장 가능함을 보여준다.

결과 해석

본 연구는 CNN의 성능 향상이 반드시 연산량 증가를 수반해야 한다는 기존 인식을 재검토하며, 공간적 중복성 제거라는 새로운 관점에서 효율성과 정확도를 동시에 개선할 수 있음을 보였다. OctConv는 feature map 을 주파수 기반으로 분해하여 저주파 성분을 저해상도에서 처리함으로써 연산량과 메모리를 절감하면서도, 오히려 receptive field 확장 효과를 통해 성능을 향상시켰다. ImageNet과 Kinetics 실험 결과는 이러한 설계가 2D 및 3D CNN 모두에게 일관되게 적용 가능함을 입증한다. 특히 OctConv는 기존 네트워크 구조를 변경하지 않고도 plug-and-play 방식으로 적용 가능하다는 점에서 실용성이 높다. 종합하면, 본 논문은 CNN 효율화 연구를 채널 및 파라미터 차원에서 공간 차원으로 확장한 의미 있는 시도로 해석할 수 있다.

댓글