[CVPR 2023]Multispectral Contrastive Learning with Viewmaker Networks

안녕하세요 이번에 제가 소개할 논문은 ‘Multispectral Contrastive Learning with Viewmaker Networks’이란 논문입니다. 이 논문은 항공 위성으로 얻은 다양한 Multispectral 이미지를 Contrastive Learning에 적용시킬 수 있는 방법에 대해 연구한 논문입니다. 현재 Kaist PD dataset을 사용해서 self-supervised learning을 적용시켜봤지만 원하는 결과를 얻지 못해서 Multispectral 이미지를 활용해서 pretext task를 어떻게 설계할 수 있을지 insight를 얻기 위해 읽어보게 되었습니다. 그럼 바로 리뷰 시작하겠습니다.

1. Introduction

대조 학습 방법은 라벨을 사용하지 않고 high-quality representations을 학습하는 데 유용하다는 것을 입증했으며, 종종 대규모 비라벨 이미지 데이터셋에서 사전 훈련한 후 지도 학습 접근 방식보다 높은 분류 정확도를 달성합니다. 이러한 진보는 natural images를 넘어 과학, 공학, 의학 등 다양한 응용 분야에서도 대조 학습의 유용성을 시사합니다. 그러나 대조 학습 다양한 영역에 적용시키기 어렵게 만드는 주요 장애물로는 적절한 “뷰”를 선택하는데 있습니다. 이는 대조 학습 과정을 결정하는 데이터 변형을 의미하며, 새로운 응용 분야에 대해 효과적인 뷰를 개발하는 것은 각 설정마다 도메인 지식과 시행착오를 필요로 하기 때문에 매우 어렵습니다.

매일 항공 위성은 다양한 형태로 수 테라바이트에 달하는 다중 스펙트럼 이미지 데이터를 측정합니다. 이 위성들은 원격 센서를 사용하여 다양한 파장의 빛을 측정하고, 이를 n채널 이미지로 쌓아 올립니다. 이러한 이미지는 인간이 볼 수 있는 스펙트럼을 넘어서는 빛을 분석하는 데 사용됩니다. 이러한 이미지는 온도 변화와 같은 자연 현상에 대한 통찰력을 제공할 수 있으며, 이는 RGB 데이터로는 분석할 수 없는 것입니다. 위성 이미지에 대한 정확한 자가 지도 학습 기법은 농업 성장 효율성 증대, 기후 변화 이해, 도시 개발 추적 및 환경 모니터링과 같은 분야에서 발전에 기여할 수 있습니다. 본 논문에서는 다중 스펙트럼 위성 이미지를 활용한 대조 학습을 조사합니다.

자연 이미지에 대한 대조 학습의 주요 변형은 RGB 이미지에 색상 변조 및 horizontal flipping와 같은 증강을 적용하는 것을 포함합니다. 그러나 이러한 RGB 변형은 다중 스펙트럼 이미지에 잘 적용되지 않습니다. 각 채널은 다른 숫자 범위와 의미를 가지므로 이러한 변환을 직접 적용하는 것은 불가능합니다. 도메인에 구애받지 않는 generative Viewmaker 네트워크는 인코더와 적대적으로 훈련된 생성 모델을 사용하여 이러한 데이터 변환을 학습하는 것을 제안합니다. 그러나 뷰메이커 네트워크는 아직 다양한 scientific data에 적용되지 않았습니다.

이 격차를 해결하기 위해, 저자는 다중 스펙트럼 위성 이미지 데이터셋에 뷰메이커 네트워크를 평가합니다. 또한 다양성을 최적화하고 adversarial optimization를 필요로 하지 않는 뷰를 생성하는 Divmaker라는 생성적 네트워크를 소개합니다. Divmaker는 뷰메이커보다 약간 성능이 떨어지지만 두 가지 도메인에 구애받지 않는 뷰 생성 방법이 hand- designed augmentations보다 더 높은 품질의 대조 학습을 가능하게 함을 확인합니다. 저자는 이를 세 가지 다른 대규모 다중 스펙트럼 위성 데이터셋에서 입증하고, 추가적으로 RGB 위성 데이터셋과 비교합니다.

2. Method

2.1. Viewmaker

뷰메이커(Viewmaker)는 대조 학습에 유용한 증강 이미지 또는 뷰를 생성하도록 훈련된 generative network입니다. 뷰메이커 V는 입력 이미지 X를 받아서 X + V(X)라는 뷰를 얻기 위해 입력에 추가되는 V(X)라는 perturbation를 제공합니다. 변화(perturbation)는 원래의 특징을 유지하기 위해 입력 주변의 l1 sphere의 크기로 제한됩니다. 마지막으로 네트워크는 랜덤 노이즈를 주입하여 변화가 서로 다르게 합니다. 뷰메이커가 학습한 뷰는 음성 녹음 및 웨어러블 센서 데이터에서 기본 증강보다 뛰어난 성능을 보였으며, 자연 이미지에서도 유사한 성능을 달성했습니다.

2.2. Diversity Viewmaker(Divmaker)

이 섹션에서는 적대적 훈련을 필요로 하지 않고 다양한 뷰를 최적화하는 도메인에 구애받지 않는 뷰 생성 접근 방식인 Divmaker를 소개합니다. 뷰메이커와 마찬가지로 Divmaker는 새로운 뷰를 생성하고 동일한 대조 손실을 사용합니다. Divmaker 뷰 생성 손실을 설명드리기 전에 사용되는 표기법은 다음과 같습니다.

  • temperature parameter τ
  • an anchor input x ∈ D with embedding z
  • associated views xi with embeddings zi for 1 ≤ i ≤ K

이후 임베딩에 대한 코사인 유사도 측정합니다.

그 다음에 Divmaker 손실은 다음과 같습니다.

직관적으로 보면, 이는 원래 입력과 생성된 뷰 간의 코사인 유사도를 최대화하면서 동일한 입력에 대한 두 뷰 간의 유사도를 최소화하여 다양성을 최적화하려는 것입니다. 이는 뷰메이커와는 대조적으로, 뷰의 다양성을 명시적으로 최적화하지 않고 적대적 손실을 통해 뷰를 생성하려 합니다. 뷰메이커와 마찬가지로, Divmaker 네트워크는 입력에 추가되어 대조 학습에 사용할 수 있는 뷰를 생성하는 perturbation를 출력합니다. Divmaker가 생성한 뷰의 강도는 뷰메이커에서와 같이 distortion budget에 의해 제어됩니다. 다양한 뷰로 훈련하면 더 넓은 범위의 증강을 캡처하고 인코더가 훈련 초기에 유용한 표현을 학습할 수 있도록 도울 수 있습니다.

2.3. Datasets

저자는 네 가지 대규모 위성 데이터셋에 뷰메이커와 Divmaker를 적용합니다. 각 데이터셋의 예는 아래 그림 3과 같고 다중 스펙트럼 이미지는 각 밴드가 별도로 표시됩니다.

  • EuroSAT: 34개 유럽 국가의 low cloud-cover 커버 위성 Sentinel-2 이미지로 구성된 27,000개의 이미지 데이터셋입니다. 이미지는 바다와 호수, 산업, 목초지 등 10개의 토지 이용 클래스로 라벨링되어 있으며 클래스당 2,000~3,000개의 이미지를 포함합니다. 각 이미지는 가시광선, 근적외선, 단파 적외선 부분의 13개의 스펙트럼 밴드를 포함합니다.
  • So2Sat LCZ42 Sentinel-1 및 Sentinel-2: 6개 대륙에 걸쳐 42개 대도시와 10개 작은 지역에서 수집된 400,673개의 low cloud 커버 이미지를 포함하는 벤치마크 데이터셋입니다. 이미지는 구조, 표면 덮개 및 인위적 매개 변수와 같은 기후 관련 표면 속성을 기반으로 한 지역 기후 구역 (LCZ) 분류 체계의 17개 클래스 중 하나로 라벨링됩니다. Sentinel-1 데이터는 8개의 실수형 밴드를, Sentinel-2 데이터는 10개의 실수형 밴드를 포함합니다.
  • BigEarthNet: 10개 유럽 국가에서 수집된 590,326개의 Sentinel-2 이미지 패치로 구성된 다중 라벨 데이터셋입니다. 각 이미지는 목초지, 수역, 농업-산림 지역 및 녹지 도시 지역과 같은 43개의 land- cover 클래스의 하위 집합으로 라벨링됩니다. BigEarthNet 데이터셋에서는 두 밴드는 20 × 20 이미지, 여섯 밴드는 60 × 60 이미지, 네 밴드는 120 × 120 이미지를 측정합니다. 전체 크기를 표준화하기 위해 모든 밴드를 120 × 120 해상도로 리사이즈한 후 밴드를 쌓습니다.
  • NWPU-RESISC45: Google Earth에서 출처한 31,500개의 RGB 위성 이미지 데이터셋입니다. 이미지는 테니스 코트, 열 발전소, 비행기, 경기장, 원형 농지, 초원, 궁전, 눈 덮인 산, 교차로, 철도 등 45개의 클래스 중 하나로 라벨링됩니다. 데이터셋은 각 장면 클래스에 대해 700개의 샘플을 포함하며, translation, spatial resolution, viewpoint, object pose, illumination, background, occlusion 등이 있습니다. 이 데이터셋은 클래스 내 큰 variance과 높은 클래스 간 유사성 때문에 challenging한 데이터셋입니다.. NWPU-RESISC45 데이터셋은 RGB 위성 이미지로 구성되어 있으므로, 더 많은 도메인 지식과 더 나은 expert 뷰가 있는 경우 뷰메이커 성능을 비교하는데 사용합니다.

3. Experiments

이 섹션에서는 Viewmaker와 Divmaker가 적절한 뷰를 생성하도록 학습함으로써 네 개의 위성 데이터셋에서 domain-specific methods보다 우수한 성능을 발휘할 수 있는지 탐구합니다.

3.1. Experimental Details

우선 사전 학습을 통해 인코더와 뷰 생성 네트워크를 동시에 훈련합니다. 그런 다음 linear transfer protocol을 사용하여 학습된 표현의 품질을 평가합니다. 저자는 RGB NWPU-RESISC45 데이터셋에서 평가를 수행하여 RGB 이미지 도메인에서 expert views가 더 큰 성능 향상을 제공할 수 있음을 확인합니다. 기본 expert transformation으로 랜덤 크로핑을 사용하고, 다른 데이터셋의 expert views를 위해 horizontal flipping과 결합합니다. 더 복잡한 증강 방법도 존재하지만, 저자는 이를 대규모 위성 데이터셋에 일반화할 수 있고 도메인에 구애받지 않는 설정에서 유용한 벤치마크로 사용하기 때문에 선택했다고합니다.

사전 학습 및 다운스트림 작업 훈련을 위해 학습률으로는 0.005를 사용하고 이전에 선행되었던 Viewmaker network연구 논문에서와(Alex Tamkin, Mike Wu, and Noah Goodman. Viewmaker networks: Learning views for unsupervised representation learning. In ICLR, 2021.) 동일한 인코더와 뷰메이커 아키텍처, 온도 파라미터, 배치 크기 및 기타 파라미터를 사용했다고 합니다. NWPU-RESISC45를 제외한 모든 데이터셋에서 Viewmaker와 Divmaker 네트워크를 통과하기 전에 다중 스펙트럼 이미지를 정규화하는 것이 유용함을 발견했는데 이는 NWPU-RESISC45는 정규화 이전에 채널 간 표준 편차가 낮기 때문입니다. 또한 생성된 뷰의 모든 픽셀을 -1과 1 사이로 대칭적으로 clamp합니다. Divmaker 손실의 경우, K=2와 K=3을 실험해 보았으며, K=3이 더 큰 계산 비용에 비해 최소한의 성능 향상을 제공한다는 것을 발견했습니다. 따라서 논문 전체의 모든 실험에서 K=2를 사용했습니다.

3.2. Results and Interpretation

실험 결과는 위 그림 Table 1에 나와있습니다. NWPU-RESISC45 데이터셋의 경우, expert RGB transformations 뷰에서 학습한 결과가 학습된 Viewmaker보다 높은 선형 분류 정확도를 나타냅니다. 이는 RGB 변환에 대한 연구가 잘되었다는 것을 의미합니다. 다중 스펙트럼 데이터셋의 경우, horizontal flipping과 크로핑 같은 증강에 비해 Viewmaker 및 Divmaker 방법에서 훨씬 더 좋은 이점이 있다는 것을 발견했습니다. 이는 덜 popular헌 데이터 형식을 사용할 때 도메인에 구애받지 않는 방법인 Viewmaker와 Divmaker의 유용성을 보여줍니다.

Divmaker는 RGB 데이터셋에서 Viewmaker보다 더 나은 성능을 발휘했으며, 다중 스펙트럼 데이터셋에서도 거의 동일한 성능을 보였습니다. 저자는 NWPU-RESISC45에서 뷰와 변화를 시각화한 그림은 아래 Fig1에 나와있습니다.

그리고 Viewmaker 및 Divmaker가 생성한 변화의 비교는 아래 그림에 나와있습니다.

비록 이 그림을 통해 변화의 정확한 해석을 pinpoint하기 어렵지만, 저자의 연구는 변화가 채널 간 및 간단한 이미지 특징과 상관되어 나타남을 확인합니다.

또한 Fig 4에서 다양한 distortion budgets에 대한 Viewmaker와 Divmaker의 다운스트림 분류 성능을 비교합니다. 이는 budgets을 최적의 성능을 위해 조정해야 하지만, 넓은 범위의 budgets이 좋은 성능을 허용함을 보여줍니다. 이 결과는 Divmaker가 약간 높은 budgets으로 Viewmaker와 유사한 성능을 달성할 수 있음을 확인시켜줍니다. 이는 Divmaker가 adversarial training을 사용하지 않기 때문에 나온 결과일 것이라고 합니다.

4. Conclusion

이 논문에서 저자는 대조 학습에 대한 도메인에 구애받지 않는 접근 방식이 다중 스펙트럼 위성 이미지로 확장될 수 있는지를 조사했습니다. 저자의 실험은 도메인에 구애받지 않는 방법이 기본 뷰를 사용하여 기존 도메인 특화 대조 학습 방법을 능가할 수 있음을 보여줍니다. 이는 다중 스펙트럼 위성 이미지의 유용성을 고려할 때 중요하며, 도메인에 구애받지 않는 자가 지도 학습 방법이 더 넓은 범위에서 작동할 수 있음을 시사합니다.

Author: 정 의철

4 thoughts on “[CVPR 2023]Multispectral Contrastive Learning with Viewmaker Networks

  1. 정의철 연구원님 리뷰 잘 읽었습니다.

    몇 가지 질문 남겨두겠습니다.

    1. Introduction 중
    “자연 이미지에 대한 대조 학습의 주요 변형은 RGB 이미지에 색상 변조 및 horizontal flipping와 같은 증강을 적용하는 것을 포함합니다. 그러나 이러한 RGB 변형은 다중 스펙트럼 이미지에 잘 적용되지 않습니다. 각 채널은 다른 숫자 범위와 의미를 가지므로 이러한 변환을 직접 적용하는 것은 불가능합니다. ”
    라고 하셨는데, horizontal flipping 같은 augmentation도 다중 스펙트럼 이미지에 잘 적용되지 않나요? 각 채널이 다른 범위를 가져 이러한 변환을 직접 적용하는 것이 어렵다고 하셨느데, 이건 색상 변환에 만 해당하는 것인건지.. 아님 horizontal flip이 멀티스펙트럴 데이터에서 잘 워킹하지 않는다는 결과를 기반으로 말씀하신 건지 궁금합니다.

    2.2. Diversity Viewmaker(Divmaker) 내용 중
    “Divmaker 네트워크는 입력에 추가되어 대조 학습에 사용할 수 있는 뷰를 생성하는 perturbation를 출력합니다. Divmaker가 생성한 뷰의 강도는 뷰메이커에서와 같이 distortion budget에 의해 제어됩니다.” 라고 작성하는데, perturbation은 노이즈를 의미하는건가요? 그리고 distortion budget은 어떤건가요? 용어 정의가 없어 내용을 이해하는 데에 조금 어려움이 있어서 질문 드립니다

    + 중간에 원문이 좀 있는거 같은데…. 수정 부탁합니다

    1. 안녕하세요 주영님 좋은 질문 감사합니다.
      1. 먼저 본 논문은 항공 위성을 통해 얻은 이미지이기 때문에 다양한 크기의 해상도를 가지고 있습니다. 그렇기 때문에 ImageNet이나 CIFAR10과 같이 standard한 rgb이미지에서 적용되던 augmentation 기법이 적용되기는 힘들다는 설명이였습니다.
      2.perturbation은 노이즈 및 왜곡,변화 등으로 이해하시면 될 것 같습니다. 그리고 Divmaker network를 통해 원본 이미지에 노이즈가 포함된 형태로 이미지를 생성하게 되는데 이때 노이즈를 얼만큼의 크기로 줄 것인지를 결정하는게 distortion budget입니다.
      감사합니다.

  2. 관심 있던 분야인데 관련 방법으로 논문이 있었네요?
    리뷰 감사합니다.

    몇 가지 질문 남기고 가겠습니다.

    1. 추측으로는 저자가 기성 SSL을 가져다가 쓴 것 같은데, 어떤 모델을 사용했나요?

    2. Table 1의 평가 방식이 Accuracy, F1 Score인 것으로 보아 영상 분류 문제에 대한 평가 같습니다. 데이터 셋을 보니 도메인이 굉장히 넓은 것 같아요.
    2-1. 저자가 제안한 기법에서 입력으로 사용한 데이터가 무엇일까요? RGB 외의 정보를 사용한 것일까요?
    2-2. 분류를 수행 할 때, SSL에서는 classfier를 fine-tunning 하는데… 해당 태스크에서도 수행하는 것 일까요?
    2-3. 특정 상황에서는 특정 도메인에서 더 좋은 결과를 보이는 경우가 있습니다. 예를 들어 URP에서 다루신 KAIST Ped datsets에서도 VISIBLE-SSD보다 LWIR-SSD가 더 좋은 결과를 보이는 것 처럼요. 이러한 특성상 데이터 셋 별로 입력 데이터를 무엇으로 사용했는지, 각 데이터 셋에서 도메인 별 성능은 몇 인지를 파악해야 객관적인 평가가 가능할 것으로 보입니다.

    3. SSL에서는 RGB를 기반으로 변형을 준 데이터 셋으로 학습을 진행하기 때문에 어찌 되었든 RGB의 정보가 명확하게 남아있다고 말할 수 있습니다. 명확한 유사성을 토대로 대조 학습으로부터 RGB 도메인에서의 일반화를 향상시켜 성능 향상을 보인다고 볼 수 있습니다. 허나, 다른 센서로 취득된 도메인들은 RGB에서 변형된 데이터가 아니기에 명확한 RGB와 연관되었다고 볼 수는 없죠. 연결고리가 끊어진 상태인데 해당 태스크의 대조 학습은 RGB와 다른 도메인 간의 어떤 대조 관계를 배우는 것일까요? 그렇게 배운 정보가 대조 학습의 장점을 가져 갈 수 있을까요?

    1. 안녕하세요 태주님 좋은 질문 감사합니다.
      1. SSL 모델로는 SimCLR 모델을 사용합니다.
      2.1 저자는 dataset으로 EuroSAT,So2Sat LCZ42 Sentinel-1 and Sentinel-2, BigEarthNet, NWPU-RESISC45을 사용했습니다.
      2.2 네 맞습니다. 추가로 논문을 읽을 당시 Viewmaker를 단순히 입력 이미지 X를 받아서 X + V(X) 이미지를 생성하는 생성 모델로 이해를 했습니다.
      그런데 참조된 [35][Viewmaker networks: Learning views for unsupervised representation learning. In ICLR, 2021]를 찾아보니 Viewmaker network는 Viewmaker를 통해 새로운 view를 생성해내고 이 새로운 이미지를 통해 encoder network를 같이 학습시키는 구조였습니다. 그리고 이때 Viewmaker가 생성하는 이미지는 encoder network의 contrastive loss를 최대화 하도록 하는 view 생성하도록 학습이 되고 encoder network 이 새로운 view를 입력으로 받아 contrastive loss를 최소화 하도록 학습이 진행됩니다. 그래서 최종적으로 학습된 encoder를 통해 다른 SSL 방법 처럼 평가를 진행하게 됩니다.
      2.3 아 이 부분에 대해서는 생각을 못해봤던 것 같습니다. 감사합니다!

      3. 다른 도메인에서 얻은 정보을 original 이미지에 perturbation 형태로 추가해 새로운 view를 만들어 낼 때 distortion를 얼마만큼 줄 것인지에 대한 distortion budget을 확인해 보았을때 [0.1, 0.05 ,0.02]로 실험을 하였고 0.05로 주었을때 가장 잘 동작한다고 하였습니다. 그리고 생성된 이미지를 확인해 보았을때도 변형이 그렇게 심한편이 아니였기에 Contrastive learning의 목적인 다양한 view에서 invarient한 표현을 학습하기 위해서 적절할 것 같다고 생각했습니다.
      그런데 이 부분이 Multispectral 이미지를 최대한 활용하고 있는지 생각해보면 그렇지는 않은 것 같습니다. 그래서 이 부분에 대해서도 조금 더 고민해보겠습니다….

      감사합니다!

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다