이번에는 하이퍼볼릭 임베딩을 활용한 이미지-텍스트 데이터 필터링에 대한 논문을 리뷰해보겠습니다. 보다 구체적으로 말하자면, 단순히 이미지-텍스트 사이의 정렬만 집중하는 것이 아닌 CLIP에 Hyperbolic Embedding을 추가하여 데이터의 구체성을 동시에 고려하는 방법입니다.
해당 논문을 이해가 위해 쌍곡 신경망 (Hyperbolic Neural Network) (Part.1)@임근택 리뷰를 먼저 읽어보시는 것을 강력하게 권장합니다.
- Conference: ECCV 2024
- Authors: Wonjae Kim, Sanghyuk Chun, Taekyung Kim, Dongyoon Han, Sangdoo Yun
- Affiliation: Naver AI Lab
- Title: HYPE: Hyperbolic Entailment Filtering for Underspecified Images and Texts
- Supple: link
- Code: Github
1. Background
하이퍼볼릭 임베딩이라는 말이 생소하실 거라 생각됩니다. 하이퍼볼릭 임베딩은 데이터 간 관계를 효과적으로 표현하기 위해, 복잡한 계층 구조나 데이터 간의 불확실성을 저차원 공간에서 고차원 하이퍼볼릭(비유클리드) 공간으로 매핑하는 기법입니다.
상단 이미지 중 첫번째에 해당하는 유클리드 공간은 익숙하실겁니다. 이 유클리드 공간에서 삼각형의 내각의 합이 180°이고, 평행한 두 직선은 만나지 않으며, 두 점 사이의 최단 거리는 직선이라고 배웠습니다. 그러나 현실 세계에서는 이런 규칙이 항상 적용되지 않습니다. 예를 들어, 비행기를 타고 해외여행을 할 때의 경로를 보면, 두 지점 간의 최단 거리가 직선이 아닌 곡선으로 나타나는 경우가 많습니다. 이는 유클리드 공간의 특성이 현실 세계의 복잡한 관계(두 점 사이 최단 거리가 직선)를 충분히 반영하지 못할 때 발생하는 한계 중 하나입니다. (물론 비행기의 경로가 직선이 아닌 이유가 단순 길이 때문이 아닌 여러 요인이 있긴 하지만요)
앞서 설명드린 것처럼 하이퍼볼릭 임베딩은 유클리드에 존재하는 데이터를 비유클리드 공간 중 하나인 하이퍼볼릭 공간으로 변환하는 것입니다. 이런 하이퍼볼릭 임베딩을 사용해야는 이유가 뭘까요? 그 이유는 데이터 간의 계층적 구조나 복잡한 관계를 더 잘 표현하기 위해서입니다. 유클리드 공간에서는 표현하기 어려운 포괄적인 정보와 구체적인 정보를 동시에 담아낼 수 있어 많은 데이터 포인트를 효율적으로 표현할 수 있습니다. 예를 들어, 많은 수의 관련 데이터가 서로 가깝게 모여 있는 상황에서, 중심에 가까운 데이터는 일반적이고 포괄적인 정보를, 외곽에 위치한 데이터는 더 구체적인 정보를 나타내는 방식으로 구조화할 수 있기도 합니다.
따라서 본 논문에서는 데이터의 구조를 보다 잘 표현할 수 있도록 하이퍼볼릭 임베딩을 추가로 사용하는 연구를 제안하였습니다.
2. Introduction
다들 아시겠지만, 학습 데이터의 양과 질이 모델의 성능에 크게 영향을 미칠 수 밖에 없습니다. 사람이 직접 검증한 고품질의 데이터는 모델의 성능을 더 잘 끌어올릴 수 있지만, 이러한 데이터셋 구축은 엄청난 비용 문제를 수반하죠. 이에 대응하기 위해, 품질이 낮고(사실상 Raw) 노이즈가 많은 데이터를 대규모로 수집하여 사용하였습니다. 하지만 이 방법 역시 수십억 개에 이르는 데이터가 필요하며, 그로 인해 막대한 계산 비용과 저장 공간이라는 또 다른 문제를 야기시킬 수도 있습니다.
이에 따라, 최근에는 “자동 데이터 필터링 방법”이 활발히 연구되고 있습니다. 필터링을 통해 품질이 낮은 데이터나 불필요한 노이즈 데이터를 제거함으로써, 학습 모델이 더 정제된 데이터로 학습하여 더 높은 성능을 내는 것을 목표로 합니다. 특히 대규모 데이터셋은 웹 크롤링을 통해 생성되며, 각 데이터셋은 크기 축소를 위해 다양한 휴리스틱 기법(텍스트 길이, 언어(영어 or 한국어), 이미지 해상도 등) 이 적용되고 있습니다.
이런 휴리스틱 필터링 방식은 데이터의 속성을 간단하게 필터링하는 기본적인 도구로만 사용될 뿐, 본격적인 도구로 사용될 순 없습니다. 왜냐하면, 데이터의 복잡한 의미 관계나 구체성을 충분히 표현하지 못하는 한계가 있기 때문입니다. 이에 대응하여 CLIP 기반 필터링이 등장하였는데, 이는 이미지와 텍스트의 유사도(alignment)는 반영하지만, 데이터의 구체성(specificity)을 충분히 반영하지 못하는 한계가 있습니다. 예를 들어, 단순한 설명과 구체적인 설명을 동일하게 처리해, 학습에 덜 유용한 데이터가 남겨지기도 하죠.
이를 해결하기 위해, 본 논문에서는 단순 정렬뿐만 아니라 데이터의 고유성과 구체성을 평가하는 specificity 개념을 도입하여 고품질 데이터셋을 선별하고자 하였습니다. 구체성 ϵ_i, ϵ_t은 각 데이터가 얼마나 명확하고 특정한 정보를 담고 있는지를 나타냅니다. 높은 구체성은 학습에 유익한 정보가 담긴 데이터를 의미합니다.
상단 그림 1에서는 저자가 제안하는 필터링 기법에 대한 결과를 확인할 수 있습니다. 가장 오른쪽 결과인 (a)에서 (c)까지는 유사도는 높지만 구체성이 부족해 제외된 예시로, (b)는 이미지 구체성이 낮고, (c)는 텍스트 구체성이 부족하며, (a)는 이미지, 텍스트 구체성 모두 낮습니다. 반면 (d)는 이미지/텍스트 모두 구체성이 높지만, 이미지-텍스트 사이의 유사도가 낮아 필터링되는 경우입니다. 아래 이미지에 제가 첨부했는데, teal elephant는 파란색 운동화가 아닌 오른쪽 회색 무늬라고 합니다.
정리하자면, 이미지-텍스트 간의 유사성만을 고려하면, 위 그림의 경우처럼 텍스트와 이미지가 명확히 일치하지 않는 사례는 잘 필터링할 수 있습니다. 하지만 텍스트나 이미지 중 하나라도 설명이 부족하거나 구체적인 대상을 명확히 정의하지 못한 경우, 즉 구체성이 낮은 데이터는 필터링되지 않는 문제가 발생할 수 있습니다. 이 경우, 학습에 불필요한 데이터가 남게 되어 모델 성능에 도움이 되지 않을 수 있습니다.
이를 위해 저자는 HYPE(HYPerbolic Entailment filtering) 이라는 새로운 기법을 제안하였습니다. 지금까지 설명한 구체성은 hyperbolic embedding을 사용하여 정의됩니다. 따라서 HYPE은 유사성뿐 아니라 구체성까지 함께 평가하여, 더 명확하고 유익한 정보를 담은 데이터만을 선별할 수 있습니다.
3. Method
3.1 Overview of HYPE
Introduction에서 설명드린대로, 기존의 CLIP 기반 필터링은 이미지와 텍스트 간의 유사도(similarity)만을 평가하기 때문에, 데이터의 구체성(specificity)을 제대로 측정하지 못하는 한계가 있었습니다. CLIP은 각 임베딩이 서로 구별되는 하위 공간에 위치하게되긴 하나, 이미지와 텍스트가 보다 복잡한 의미적 관계를 가지는 경우 이를 반영하기 어렵습니다.
예를 들어, 그림 2(a)에서 “A dog”, “A cat”, “A dog and a cat”과 같은 설명을 가진 개와 고양이 사진이 있다면, 유클리드 공간에서는 이 사진이 두 임베딩의 중간 지점에 위치하는 것을 볼 수 있습니다. 그러나 실제 의미는 단순 평균보다 복잡한데, CLIP은 모든 지점에서 동일한 거리 기준을 사용해 이러한 복잡성을 반영하지 못합니다.
HYPE는 하이퍼볼릭 임베딩을 활용하여 이러한 문제를 해결했다고 합니다. 예를 들어, “A cat”과 “A dog”이라는 텍스트 임베딩이 “Animals”와 같은 일반적인 개념에 가깝게 위치하는 반면, “A dog and a cat” 또는 “Cats and rats”처럼 좀 더 구체적인 개념은 중심에서 더 멀리 떨어져 배치된다고 합니다. 이는 하이퍼볼릭 임베딩이 포괄적인 정보와 구체적인 정보를 각각 중심과 외곽으로 배치하여 표현할 수 있음을 보인다고 합니다.
또한, 하이퍼볼릭 임베딩을 활용하면 각 데이터가 다른 데이터와 일치(entailment)할 수 있는지를 정의할 수 있습니다. 예를 들어, 그림 2(b)에서는 “A dog and a cat”이라는 캡션 임베딩이 “A cat”과 “A dog” 캡션 임베딩의 entailment cone이 겹치는 지점에 위치해 있습니다. 이는 하이퍼볼릭 공간에서 특정 개념이 다른 개념과 의미적으로 연결될 수 있는지를 시각적으로 보인 것이라고 합니다. 따라서 이런 entailment cone 개념을 사용하면, 데이터 간 의미적 포괄 관계를 효과적으로 정의하고, 각 입력 데이터가 다른 데이터와 어떤 식으로 연결될 수 있는지를 판단할 수 있게 됩니다.
Entailment Loss \mathcal{L}_e(x, y)
CLIP에 구체성을 정의하기 위해, 하이퍼볼릭 임베딩을 사용한 Loss는 다음과 같습니다.
- Entailment Loss: 이미지-텍스트 쌍에 대해 이미지 y가 해당 텍스트 x의 엔테일링 콘에 올바르게 배치되었는지 여부를 측정
- Specificity (구체성): 이미지와 텍스트의 구체성 수준을 측정(즉, 학습된 쌍곡선 임베딩 공간이 주어진 입력을 잘 설명하는지 여부를 측정).
- image specificity ϵ_i:
- text specificity ϵ_t:
그림 3은 HYPE의 구체성 ϵ_i 와 ϵ_t를 통해 이미지와 텍스트의 구체성 차이를 확인할 수 있습니다. 구체성이 낮은 샘플은 좀 모호한 결과를 보이는 반면, 구체성이 높은 샘플은 특정 대상에 대한 명확한 정보를 포함하고 있습니다. 예를 들어, 휴대폰이나 타워 이미지처럼 설명이 다양한 경우 구체성이 낮은 반면, ‘Dalmore 위스키’와 같이 특정 대상을 암시하는 경우 구체성이 높게 평가된다고 합니다. (여기서 휴대폰이나 타워 이미지가 모호하다고 말하는 이유는, 특정하지 않고 다양한 상황에서 흔히 나타나는 대상이기 때문인데요, 스마트폰/전자기기/통화중인사람 등 다양한 설명이 붙을 수 있기 때문이라고 합니다.) 또한, “사진”이나 “그림”과 같은 캡션은 구체성이 낮아, 데이터의 모호성을 나타냅니다.
따라서 저자가 제안하는 HYPE에서는 CLIP에서 사용하는 유사도 점수인 cos(\theta) 뿐만 아니라, 구체성 점수인 ϵ_i 와 ϵ_t도 사용하였습니다.
따라서, 본 논문에서는 단순히 CLIP의 유사도 cos(\theta)만이 아닌 구체성 지표 ϵ_i 와 ϵ_t 을 함께 사용하여 복잡한 이미지-텍스트 관계를 더욱 정확하게 표현하고자 하였습니다. 또한, CLIP 임베딩 공간이 복잡한 의미적 관계를 표현하는 데 한계가 있음을 고려해, 하이퍼볼릭 임베딩을 사용한 hyperbolic CLIP의 -dL 값을 유사도 지표로 활용합니다. 이때, -dL은 하이퍼볼릭 공간에서 측정된 이미지와 텍스트 간의 거리로, 더 복잡한 의미 관계를 효과적으로 반영할 수 있습니다. 추가로, ImageNet 클래스와의 일치 여부를 반영하는 ImageNet 클러스터링 필터(cIN)를 적용하여, HYPE 점수를 최종적으로 정의하였다고 합니다.
3.2 Hyperbolic CLIP
HYPE은 하이퍼볼릭 임베딩 모델인 *MERU를 기반으로 한 Hyperbolic CLIP을 사용합니다. Hyperbolic CLIP에선 Lorentzian 거리(-dL)를 사용하여 이미지와 텍스트 간의 거리를 측정합니다. -dL은 하이퍼볼릭 공간에서 이미지와 텍스트 간의 비유클리드 거리로, 단순한 유사도 점수 cos(θ)보다 더 복잡한 관계를 반영할 수 있다고 합니다. 예를 들어, 두 데이터가 구체적이거나 고유한 의미를 가지는 경우, 이들 간의 관계를 유클리드 공간의 단순한 거리로 표현하기 어려울 수 있지만, -dL을 사용하면 하이퍼볼릭 공간에서 더 자연스럽게 표현된다고 하네요. 쉽게 말하자면, CLIP에서 alignment loss를 연산하는 부분을 하이퍼볼릭 임베딩으로 변환 후 업데이트 하는 과정으로 생각하고 넘어가면 될 것 같습니다.
*MERU, Hyperbolic Image-Text Representations, ICML, 2023
Entailment loss 역시 MERU에서 제안한 방법이기에, 쉽게 말해 MERU의 세팅을 사용했다고 이해한 뒤 넘어가도 좋을 것 같습니다. 이렇게 HYPE는 단순 유사도(cos(θ)) 외에도 하이퍼볼릭 임베딩을 통한 -dL을 추가하여 이미지-텍스트 간의 의미적 차이를 더욱 세밀하게 반영하고자 하였습니다. 이를 통해 데이터셋 내 데이터의 구체성과 의미적 계층 관계를 함께 고려할 수 있는 필터링 방식이 가능해졌습니다.
3.3 Entailment Cone and Specificity
entailment는 논리와 언어학에서 사용되는 개념으로, 하나의 명제가 참일 때 다른 명제도 참이 되는 관계를 의미합니다. HYPE에서는 entailment cone을 정의하여, 텍스트 임베딩 주변에 특정한 각도 내의 영역을 형성하고, 이 콘 영역 안에 해당 텍스트가 내포하는 의미의 이미지 임베딩이 위치하도록 합니다. 예를 들어, 텍스트 “A cat”는 “Animals”라는 일반적인 개념을 포함하므로, 이 텍스트 임베딩의 entailment cone 안에는 “Animals”와 관련된 모든 이미지가 포함됩니다 .
Entailment Loss는 주어진 이미지-텍스트 쌍에서 이미지가 텍스트의 엔테일먼트 콘 안에 올바르게 위치하는지 여부를 평가하는 값입니다.
- Entailment cone 각도(aperture): 텍스트 임베딩 x 의 콘 크기는 아래 수식과 같이 정의됩니다: 이 때, K는 콘의 각도를 조절하는 상수라고 합니다.
- 편차 각도(extent): 이미지 임베딩 y 가 텍스트 임베딩 x 의 엔테일먼트 콘에서 벗어나는 정도를 나타내는 각도를 나타내며 아래와 같이 정의됩니다. 여기서 {<x, y>}_L는 하이퍼볼릭 공간에서의 로렌츠 내적을 의미합니다.
- Entailment loss: 이미지가 텍스트의 콘을 벗어나면 loss가 발생하고, 이는 아래와 같이 정의됩니다.
- Specificity: 이미지, 텍스트에 대한 구체성은 entailment loss를 전체 데이터셋에 대해 평균하여 정의됩니다.
- 이 값들이 높을수록 이미지와 텍스트가 구체적으로 표현된 것입니다. 예를 들어, 구체성이 높은 텍스트나 이미지는 특정한 대상을 명확히 나타내며, 구체성이 낮은 경우는 일반적이고 모호한 정보를 포함한다고 할 수 있습니다.
3.4 Hyperbolic Entailment Filtering (HYPE)
지금까지 설명한 HYPE을 정리하며 Method를 마무리해보겠습니다. HYPE는 데이터셋 내에서 의미가 충분히 전달되지 않는 데이터와 잘못 정렬된 쌍을 동시에 필터링하기 위해 네 가지 지표를 사용합니다.
- 텍스트 구체성(ϵt)와 이미지 구체성(ϵi): 각 텍스트 및 이미지가 얼마나 특정하고 구체적인 정보를 담고 있는지를 측정하는 지표, 하이퍼볼릭 엔테일먼트 콘을 사용해 정의된 이 구체성 지표는 HYPE가 일반적이거나 모호한 데이터 포인트를 걸러낼 수 있음
- 하이퍼볼릭 유사도 (−dL): CLIP 임베딩의 유클리드 거리 기반 유사도 대신, 하이퍼볼릭 공간에서 로렌츠 내적을 사용해 측정한 유사도 지표로, 복잡한 의미적 관계를 반영하는 데 더 효과적
- CLIP 유사도 (cos(θ)): 기존 CLIP 모델에서 사용되는 두 데이터 포인트 간의 코사인 유사도로, 이미지-텍스트 쌍의 나이브한 유사도를 평가
- ImageNet 클러스터링 필터 (cIN): 데이터가 ImageNet 클래스에 속하는지 여부를 평가하여 고품질 이미지에 대한 기준을 추가
이 네 가지 지표를 결합한 HYPE 필터링은 단순히 데이터 간의 일치도를 평가하는 기존 방식보다 구체성과 의미적 일관성을 강화하였다고 합니다.
4. Experiments
4.1 Comparison Methods
이런 필터링 연구는 처음 접해보는지라, HYPE 성능 비교를 위해 사용된 방법론들을 간단하게 다뤄보겠습니다.
- 단순 필터링 기법: 언어, 텍스트 길이, 이미지 크기 등 기본적인 기준에 따라 데이터를 필터링.
- 이미지 기반 클러스터링: CLIP 임베딩을 10만 개의 중심점으로 그룹화한 후, 각 클러스터 내에서 ImageNet에 가장 가까운 중심점과 일치하는 샘플만을 선택하는 방식. ImageNet 클래스와의 유사성을 기준으로 클러스터를 구성하여, 고품질 이미지를 필터링이 목적
- CLIP 점수 필터링: CLIP의 코사인 유사도 점수를 활용하여 이미지와 텍스트 쌍이 충분히 일치하는지 평가하고, 낮은 유사도를 보이는 샘플은 제외하는 방식
- 최신 방법들 (DFN, CIDS, T-MARS):
- Data Filtering Networks (DFN): 여러 단계의 필터링 없이 단일 모델로 데이터의 품질을 평가하는 모델 중심 접근 방식으로, 필터링 네트워크를 통해 고품질 이미지-텍스트 쌍을 구별
- Cluster-Importance-based Data Selection (CIDS): 목표 평가 데이터셋과 유사한 분포를 가진 샘플을 선택하고, 중요도에 따라 중복 샘플링을 적용하여 대규모 학습을 수행.
- Text-Masking and Re-Scoring (T-MARS): OCR 샘플을 분석하여, 단순히 이미지 내 텍스트를 그대로 사용하는 샘플을 제외하고 시각적 의미에 집중할 수 있도록 필터링
4.2 Image-Text Contrastive Pre-training
이제 본격적인 비교 결과를 확인해보겠습니다. HYPE는 다른 필터링 방식과 비교했을 때, 특히 retrieval 성능에서 우수한 결과를 보였습니다. 예를 들어, HYPE 20% Medium 설정에서 0.286의 검색 점수를 기록하며, 이는 다른 방법들을 능가하였는데, 이는 HYPE이 하이퍼볼릭 임베딩을 사용하여, 기존의 CLIP 임베딩보다 검색 작업에 더 적합한 데이터를 선별할 수 있음을 나타낸다고 합니다.
또한, HYPE는 다른 필터링 방법과 결합(CIDS, DFN) 하여 성능을 더욱 향상시킬 수 있었습니다. 구체성 지표는 단일 모달 필터링으로 CLIP 기반 크로스 모달 필터링과 상호 보완적인 역할을 하며, 서로 결합될 때 부족한 구체성을 가진 샘플을 효과적으로 제거할 수 있었습니다. 이는 HYPE가 DataComp Small 및 Medium 데이터셋에서 최고 성능을 기록하게 하는 데 중요한 요소로 적용되었다고 할 수 있습니다.
4.3 Image-Only Contrastive Pre-training
HYPE의 이미지 구체성 점수인 ϵ_i를 사용하여, 이미지-텍스트가 아닌 이미지 전용 데이터셋에서 self-supervised learning 결과도 보였습니다. 다시말해, HYPE는 CLIP 유사도 대신 이미지의 구체성 점수를 사용해, 구체성이 높은 대표적인 이미지를 선별하여, 이미지 SSL 성능을 개선시켰다고 합니다.
실험 결과, ϵ_i기반 필터링을 통해 생성된 데이터셋은 기존의 cos(θ)기반 필터링보다 ImageNet-1K 에서 더 높은 성능을 보였습니다. 특히, SimCLR 및 MoCo-v3 같은 SSL 방법으로 다양한 데이터셋 크기에서도 일관되게 우수한 성능을 보이며, HYPE의 이미지 구체성 지표가 고품질 이미지 필터링에 효과적임을 확인했다고 합니다.
4.4 Ablation Study
마지막으로 Ablation study 입니다.
ImageNet 클러스터링 필터(cIN)를 제외했을 때는 특정 데이터셋에서의 성능이 향상되었으나, 평균 성능에서는 HYPE 전체 모델보다 다소 낮아졌습니다. 또한, CLIP의 코사인 유사도(cos(θ))를 제거한 경우에도 여전히 CLIP 기반 필터링보다 높은 성능을 유지하여, HYPE의 하이퍼볼릭 임베딩이 의미 있는 필터링을 가능하게 함을 확인했다고 합니다.
CLIP에 하이퍼볼릭 임베딩 개념을 적용하여, 데이터의 구체성을 정의한 방법론에 대해 알아보았습니다. 사실 해당 논문은 CLIP + MERU로 요약할 수 있을 것 같다는 생각이 듭니다
홍주영 연구원님. 좋은 리뷰 감사합니다.
웹상에서 크롤링한 데이터를 어떻게 정제해서 사용하는지 평소에 막연히 궁금했었는데, 이에 대한 의문이 해소되는 흥미로운 논문이었습니다. 쌍곡기하에 대한 이해가 얕아 이해하기는 쉽지 않네요. 결국 데이터 포인터를 쌍곡 공간에 임베딩하여 이미지-텍스트 간 유사도가 높으며, 구체성이 높은 데이터를 남기고 필터링하도록 학습하는 것으로 이해했습니다.
간단한 질문이 있습니다. 필터링 기준을 보면 데이터가 ImageNet 클래스에 속하는지 여부를 평가하여 고품질 이미지에 대한 기준을 추가하는 부분이 있는데, 이미지넷 클래스 정보가 어떻게 고품질 이미지를 판별하는 기준이 되는건지 설명해주실 수 있을까요?
감사합니다.
” ImageNet 클래스에 속하는지 여부를 평가하여 고품질 이미지에 대한 기준을 추가하는 부분이 있는데, 이미지넷 클래스 정보가 어떻게 고품질 이미지를 판별하는 기준이 되는건지 설명”
-> ImageNet 클래스 정보가 고품질 이미지 판별의 기준이 되는 이유는, ImageNet 데이터셋 자체가 고품질 이미지로 구축된 대표적인 대규모 데이터셋이기 때문입니다. ImageNet은 일반적인 물체 인식 및 분류 작업에 적합하도록 다양한 클래스의 이미지를 사람이 직접 엄격하게 수집되었고, 각 클래스는 명확한 주제를 나타내도록 잘 분류되어 있습니다. 특히, ImageNet 클래스에 속하는 이미지는 보통 명확한 객체 표현, 고해상도, 그리고 일관된 주제를 가지고 있어, 학습 모델이 시각적 패턴을 효과적으로 학습할 수 있죠.