CVPR 2025에 accept된 논문이고, Yann Lecun과 Kaiming He가 저자에 포함되어 있는 논문입니다.
Introduction
최근 Normalization 레이어는 필수적으로 사용되고 있지만,
본 논문에서는 제안한 방법을 통해 이러한 Normalization 없는 trasnformer가 이와 비슷한 성능 혹은 더 나은 성능을 입증한 논문입니다.
본 논문에서는 Normalization을 대체하기 위해, Dynamic Tanh (DyT)를 제안합니다.
DyT
위 방식은 굉장히 심플한 방식만으로 기존에 사용되어왔던 Normalization을 대체함으로써 효과성을 입증합니다.
LN의 인풋과 아웃풋에 대한 시각화Tanh 함수의 shape
위 그림에서 저자들은 초기 레이어에서는 LN의 인풋과 아웃풋의 시각화를 통해 초기 레이어에서는 선형적인 모습을 띄지만, 레이어가 깊어질 수록 Tanh와 같은 S-shaped curve를 나타내는 것을 관찰합니다.
저자들은 이러한 현상의 원인을 파악하기 위해 coloring을 통해 시각화하였습니다.
1. 토큰별로 시각화 : LN의 특성상 각 토큰들별로 Normalization을 수행하기 때문에, 토큰마다 각기 다른 mean과 variance를 가지게 됩니다. 이로 인해, variance가 작은 x들에 대해서는 강한 기울기를 가지고, variance가 큰 x들에 대해서는 작은 기울기를 가지게 되면서 Figure 4의 왼쪽처럼 점점 S자 모양의 형태를 가지게 되는 것을 확인할 수 있습니다.
2. 채널별로 시각화 : 채널별로 시각화를 해본 결과, 몇몇 채널들이 매우 큰 값을 가지는 현상을 발견하였고, 그러한 값들은 Normalization 레이어에 의해 값이 압축되고 있는 현상을 관찰합니다.
DyT 수식
본 논문에서 제안한 DyT는 위와 같습니다.
감마와 베타의 경우에는 LN의 scaling & shift를 그대로 적용하였고, tanh의 인풋에도 scaling을 할 수 있는 알파값에도 learnable한 파라미터를 추가하였습니다.
본 논문에서 제안한 방식은 transformer에서 사용되는 GELU or ReLU와 같은 activation function을 대체하는 것이 아니라, attention block, FFN block, final normailzation layer에 사용되는 normailzation을 대체하는 것임을 유의하시길 바랍니다.
Experiments
본 논문에서는 굉장히 다양한 task와 도메인에서의 실험을 진행함으로써 DyT의 효과성을 입증합니다.
위 실험 결과와 같이 Vision & NLP task에서 사용되는 다양한 Transformer 기반 architecture에서 DyT를 사용함으로써 기존의 LN 혹은 RMSNorm에 비해 우수하거나 동일한 성능을 보임임을 증명합니다.
Analysis
위 테이블은 기존 LN을 더욱 효율적으로 개선하여 LLM에 많이 사용되는 RMSNorm보다 DyT가 훨씬 더 효율적임을 나타내는 결과입니다. 한 layer의 lateny의 경우 40~50% 개선을 이루었으며, 전체 모델에 대해서는 7~8%정도 효율적인 latency를 보여줍니다.
위 실험은 tanh가 아닌 hardtanh, sigmoid와 같은 다른 함수로 변경한 실험입니다. 위 테이블에서 identity는 항등함수로 인풋 값 그대로 아웃풋을 내보내는 항등 함수를 의미합니다. 실험 결과 tanh가 가장 우수한 성능을 보이며, 저자들은 tanh의 smoothness와 zero-centered한 특성 때문에 가능한 현상이라고 설명합니다.
위 실험의 경우 tanh에 스케일링 목적으로 사용되는 알파 값이 훈련 중과 훈련 후에 어떻게 변경되는지에 대한 시각화 그림입니다. 실험 결과, 1/std 값을 따라가는 현상을 관찰할 수 있고, 이는 곧 알파 값이 normalization의 역할을 일부 수행하는 것으로 해석할 수 있습니다.
Conclusion
결론적으로, Deep Neural Networks에서 필수적으로 사용되었던 normalization에 대한 새로운 시각을 열어주는 논문이라고 생각됩니다.
본 글에서 담지 못한 실험과 다양한 ablation study들은 논문을 참고하시면 확인하실 수 있습니다.
이번에 소개해드릴 논문은 2025년도 ICLR에 게재된 "Resolution Attack: Exploiting Image Compression to Deceive Deep Neural Networks"에 대해 소개해드리겠습니다.
기존에 딥뉴럴넷 모델을 공격하는 기법들은 주로 adversarial perturbation이나 noisy label에 대한 robustness 연구가 진행되어 왔습니다. 반면 resolution에 대한 robustness 연구는 거의 이루어지고 있지 않습니다. 하지만, 저희는 일상생활에서 생각보다 자주 low-resolution image를 접하고 있습니다. 예를 들어, 네트워크 비용 감소를 위해 SNS에 사진을 업로드 시 이 사진은 압축되어 전송될 것이며, 자율주행 시스템이나 찍히는 멀리 떨어져 있는 피사체의 경우에도 low-resolution image의 성격을 띠게 됩니다. 이러한 경우 high-resolution과 low-resolution에 대한 robustness는 분명 다루어져야 할 문제라고 생각합니다.
본 논문에서는 high-resolution과 low-resolution class의 semantic 정보를 모두 가지고 있으면서 high-resolution에서는 높은 fidelity를 갖고 low-resolution에서는 다른 클래스로 오분류되는 이미지를 생성하는 Resolution Attack (RA) 방법을 제안합니다. 또한 source image가 주어졌을 때 해당 이미지와 유사한 이미지를 생성하도록 하는 Resolution Attack with Source image (RAS) 방법을 추가로 제안합니다.
RA 공격을 통해 생성된 이미지는 아래 Figure 1. 처럼 high-resolution image의 클래스는 guitar이지만 이를 low-resolution으로 downsampling하면 dog 클래스로 분류됩니다.
먼저 RA와 RAS에 대한 problem formulation을 해보겠습니다.
Resolution Attack 두 클래스 쌍 ($C_L$, $C_H$)가 주어졌을 때, RA 알고리즘은 두 semantic 정보를 갖는 high-resolution image $x$를 생성합니다.: $x$는 클래스 $C_H$에 속하며 downsampling된 $x_\downarrow$는 클래스 $C_L$에 속한다. 이를 공식화하면 아래와 같습니다:
$$M(C_L, C_H) = x$$
$$f(x) = C_H \quad f(x_\downarrow) = C_L$$
Resolution Attack with Source image
RA의 성질을 만족하면서, 사전에 정의된 source image $I_s$와 유사한 이미지를 생성합니다. 이를 공식화하면 아래와 같습니다:
$$M(C_L, C_H, I_s) = x$$
$$f(x) = C_H \quad f(x_\downarrow) = C_L$$
$$min D(x_\downarrow, I_s)$$
이때 $D$는 $I_s$와 $x_\downarrow$의 유사도를 측정하는 distance metric입니다.
DS 모듈은 Figure 2.처럼 매 step마다 noise가 주어졌을 때 low-resolution에 대한 prompt $P_L$과 high-resolution에 대한 prompt $P_H$에 대응되는 $\epsilon_L$과 $\epsilon_H$를 각각 생성합니다 (prompt 예시: "a photo of dog"). 그림에서 언급된 U-Net은 Stable Diffusion v1.5입니다. 생성된 $\epsilon_L$과 $\epsilon_H$는 가우시안 필터를 통해 다시 한번 해상도를 조절한 뒤 합쳐져 다음 step의 입력값으로 사용됩니다. 이를 공식화하면 다음과 같습니다:
총 step 수는 300이며 처음/마지막 20 step은 low/high-resolution만을 적용하고 나머지 260 step은 두 해상도를 모두 고려하여 이미지를 생성하게 됩니다. 이는 diffusion model이 초반에는 low-resolution에 해당하는 구조들을 먼저 생성하고 이후에 더 세부적인 특징들을 만들어낸다고 알려져 있는 것을 응용한 것입니다.
Structural Guidance Module (SG Module)
SG 모듈은 Figure 2.에서 볼 수 있듯이 source image $I_s$와 유사한 이미지를 생성하기 위해 DDIM inversion과 ControlNet을 활용합니다. Diffusion 모델은 주어진 이미지를 가우시안 노이즈로 보내는 동안 실질적으로 low-resolution에 해당하는 구조들은 꽤 많은 step이 지났음에도 불구하고 제대로 사라지지 않는 모습을 보입니다. 본 논문에서는 이러한 부분을 이용하여 DDIM inversion을 통해 얻은 $I_s$의 noise $\epsilon$을 DS 모듈의 입력으로 제공합니다.
한편, ControlNet을 통해 이미지에 제약조건을 주어 해당 조건을 만족하는 이미지를 생성할 수 있도록 합니다. 이때 low-resolution에는 depth map이 사용되고 high-resolution에는 softedge image가 사용됩니다.
본 논문에서는 학습 데이터셋이 가지고 있는 클래스에서만 $C_H$를 선정할 때는 labeled attack이라 부르고, 반대로 학습 데이터셋에 존재하지 않는 추상적인 클래스에 대한 공격은 unlabled attack이라고 정의하였습니다.
Figure 3.과 Figure 4.에서 알 수 있듯이 label에 해당하는 high-resolution image가 생성되고 이를 dowmsampling 했을 때 $C_L$ (e.g. dog)에 대응되는 이미지가 나오는 것을 확인할 수 있습니다. 사실 high-resolution image를 봤을 때 이것이 이상하다는 것을 충분히 알아차릴 수 있어서 본 연구의 한계가 드러나는 것 같습니다.
본 연구에서 정의한 $Corrective Attack Success Rate (ASR_C)$는 low/high resolution image들이 해당 클래스에 알맞게 분류되는 비율을 의미합니다.
Table 1.과 2.에서 알 수 있듯이 $Acc_L$에 대해 전반적으로 labeled attack이 unlabeled attack보다 높은 것을 알 수 있습니다. 또한 CLIP 점수 또한 0.298 이하로 준수한 점수를 보여주고 있습니다. $I_s$와 $x_\downarrow$의 유사도를 측정하는 SSIM 점수도 0.727로 상당 부분 유사하다는 것을 알 수 있습니다.
Table 4.와 Table 5.는 ViT계열의 모델에대한 RA와 RAS 실험입니다. CNN 모델 뿐만 아니라 ViT 계열에서도 본 논문이 제안하는 공격 기법이 잘 통한다는 것을 보여주고 있습니다.
앞서 살펴보았듯이, SG 모듈에서는 depth map과 softedge image를 통해 source image의 semantic 정보를 유지하려고 합니다. Figure 5.는 이에 대한 실험으로 $C_L$과 $C_H$의 semantic gap이 작을 때 (e.g. dog and lion) depth map만 적용하는 것이 오히려 좋았다고 하며 반대로 semantic gap이 클 때 (e.g. dog and guitar)는 아무것도 적용하지 않는 것이 더 좋았다고 합니다.
Figure 7.에서는 ControlNet의 파라미터를 조절하여 depth map과 softedge image가 적용되는 강도를 조절한 실험 결과입니다. 강도를 약하게 하면 source image와의 유사도가 감소하는 것을 확인할 수 있습니다. 하지만 반대로 강도가 너무 강하면 생성된 이미지의 품질을 저하시키는 경향을 보이고 있습니다.
Figure 6.에서는 RAS가 source image와 유사한 이미지를 생성하는 것이니 face swapper로서의 역할도 할 수 있음을 보여주고 있습니다.
본 논문에서는 Diffusion 모델을 활용하여 low-resolution과 high-resolution semantic 정보를 모두 유지함과 동시에 low-resolution image가 오분류될 수 있도록 하는 기존에 없었던 새로운 공격 기법을 소개하고 있습니다.
글을 읽으시면서 제가 잘못 해석한 부분/수정이 필요한 부분이 있거나 토의가 필요하신 경우에 댓글 달아주시면 감사하겠습니다.
감사합니다:)
이상 논문 소개를 끝마치도록 하겠습니다.
---
이번에 소개해드린 논문을 읽어보시면서 어떤 점들이 떠오르셨나요? 금주 저희 연구실에서 진행한 논문 세미나에서 나온 이야기들을 간략하게 공유해보고자 합니다.
1. 공격 시나리오가 조금 더 현실성 있었으면 좋았을 것 같다. low-resolution image가 64x64 픽셀 크기로 변환되는데, 사실 이것보다 더 커도 되는 경우도 많고, 실제로 이렇게 사용하는지 의문이다.
실제로 논문 리뷰에서도 공격 시나리오의 현실성에 대해서 활발하게 논의가 되었으며, rebuttal 이후에도 본 논문의 한계로 지적되었습니다.
2. Figure 3., 4.에 대해서 일반적으로 low-resolution image가 조금 이상하면 압축이 되어서 그런가 보다 하면서 넘어가는 경우는 많은데, high-resolution image는 조금이라도 이상한 부분이 보이면 image가 이상하다는 것을 바로 알아차릴 수 있지 않은가? 생각보다 생성된 image가 artifact인 느낌이 들어서 본 연구의 한계 중 하나인 것 같다.
컴퓨터 비전 분야에서는 데이터 분포의 불균형, 즉 long-tailed 문제로 인해 소수 클래스에 대한 인식 성능이 떨어지는 문제가 꾸준히 제기되고 있습니다. 이런 문제를 해결하기 위해 여러 연구들이 진행되고 있는데, 이번 포스팅에서는 “Disentangling Label Distribution for Long-tailed Visual Recognition” CVPR 2021의 논문을 통해 제안된 혁신적인 방법을 살펴보도록 하겠습니다.
현실 세계의 데이터는 종종 몇몇 클래스에 데이터가 몰려있고, 일부 클래스는 상대적으로 적은 데이터만을 보유하는 long-tailed 분포를 보입니다. 이런 불균형은 모델이 주로 다수 클래스에 집중하게 만들고, 소수 클래스에 대한 인식 성능은 떨어지게 됩니다. 기존 방법들은 주로 클래스 리샘플링, 비용 민감 학습, 혹은 데이터 증강 기법 등을 활용했지만, 여전히 근본적인 문제 해결에는 한계가 있었습니다.
본 논문은 이러한 한계를 극복하기 위해 라벨 분포 자체를 disentangle하는 접근법을 제안합니다. 즉, 모델이 각 클래스의 특징을 보다 명확하게 분리하여 학습할 수 있도록 함으로써, 소수 클래스에 대한 인식력을 향상시키는 데 초점을 맞춥니다.
논문을 이해하기 앞서 필요한 지식을 살펴봅시다. Softmax regression 즉, 우리가 알고 있는 multinomial logistic regression을 바탕으로 학습한 모델의 conditional probability는 아래와 같이 cross-entropy를 목적 함수를 이용하여 얻어질 수 있습니다.
일반적인 Softmax regression는 이 때, source와 target 라벨 분포가 같을 때 conditional probability의 추정이 유의미하다는 가정을 합니다. 하지만, 실제로 이러한 상황은 Long-tailed 분포에서 위배되는 상황이며, source 라벨분포를 통해 학습된 모델의 conditional probability를 label distribution shift가 존재할 때 강력한 믿음을 갖고 활용하기 어렵습니다.
따라서, 본 논문은 conditional probability를 조정하기 위해 일반적인 방법으로 Post-Compendation 전략을 소개합니다.
이 방법은 최근 Balanced Softmax의 확장된 버전으로 고려할 수 있는데, 위의 Eq. 4를 Softmax에 자연스럽게 흡수시키면, 다음과 같은 source 라벨 분포를 알고 있을 때 target 라벨 분포에 대한 합리적으로 추정 가능한 보상된 Softmax를 얻을 수 있습니다.
본 연구는 PC-Softmax를 베이스라인으로 비교군으로 정의하고, 베이스라인보다 우수한 보상 체계를 구축하기 위해 LADER라는 기술을 제안합니다. 이는 아래의 그림처럼 학습 시 label 분포에 대한 정보를 의도적으로 배제시키는 기술을 핵심으로 합니다.
구체적으로, source 라벨 분포를 학습 시점에 의도적으로 떼어내는 목적함수를 도입하여 아래의 수식처럼, source 라벨 분포 정보가 posterior로부터 detaching되도록 의도합니다.
이는, 모델의 class별 logit 값에 대해 Donsker-Varadhan (DV) representation을 만족하도록 아래와 같은 boundness를 표현하여 최적화 문제를 해결합니다.
3가지 항에 대한 expectation을 구하기 위해 mini-batch로부터 아래와 같은 목적 함수를 정의합니다.
LADER를 regularization으로 하는 cross-entropy를 minimization하는 문제로 학습 데이터를 훈련하는 목적 함수는 다음과 같이 정의되며, 이를 통해 최적화된 모델은 inference 시 target 라벨 분포 (target 라벨 분포는 known이라는 가정)를 직접 대입하여 활용함으로써 posterior를 얻게 됩니다.
Experiment results
해당 방법의 검증 프로토콜은 다음과 같습니다. Imbalance ratio는 N_max/N_min으로 얻어졌습니다.
평가 지표: Top-1 정확도를 사용하여 모델의 성능을 측정합니다.
데이터셋: CIFAR-100-LT, ImageNet-LT와 Places-LT를 대상으로 합니다.
클래스 그룹화: 각 클래스에 속한 이미지 샘플 수에 따라 클래스를 세 그룹으로 나누고, 그룹별 평가 결과를 보고합니다.
Many: 클래스당 이미지 수가 100장 이상
Medium: 클래스당 이미지 수가 20장 이상 100장 이하
Few: 클래스당 이미지 수가 20장 미만
이렇게 그룹화된 각 범주에 대해 별도의 정확도를 보고하여, 클래스별 데이터 수의 편차가 성능에 미치는 영향을 구체적으로 분석합니다.
마지막으로, large-scale long-tailed distribution 데이터셋에 대한 검증입니다.
다음은, LADE의 효과에 의하여, class별 Logit (positive samples)이 optimum인 logC를 따르는 지 ablation study를 한 결과 입니다.
추가적으로, LADE의 효과로부터 취할 수 있는 calibration 이익에 대한 결과입니다.
본 연구는 long-tailed 문제에 대해 새로운 관점을 제시하며, 라벨 분포 자체를 분리하는 접근법으로 소수 클래스 인식 성능을 크게 향상시킬 수 있음을 보여줍니다. 이 연구는 데이터 불균형 문제를 해결하기 위한 다양한 방법론 중 하나로, 향후 다른 분야의 불균형 데이터 문제 해결에도 응용될 수 있을 것으로 기대됩니다.
추가적으로 궁금한 부분은 논문을 참조 부탁드리며, 질문을 댓글로 남겨주시면 함께 고민할 좋은 기회가 될 것으로 생각합니다.