"Deep domain adaptation"은 대량의 레이블이 지정된 데이터 부족을 해결하기 위한 새로운 학습 기술로 부상했다. 공유 기능 하위 공간을 학습하거나 얕은 표현으로 중요한 소스 인스턴스를 재사용하는 기존 방법에 비해 deep domain adaptation transferable representations 은 딥 러닝의 파이프라인에 도메인 적응을 내장하여 더 많은 shallow domain adaptation을 학습하기 위해 딥 네트워크를 활용한다. shallow domain adaptation을 위한 포괄적인 조사가 있었지만 새로운 딥러닝 기반 방법에 대한 시의적절한 검토는 거의 없었다.
본 논문에서는 컴퓨터 비전 응용을 위한 deep domain adaptation methods에 대한 종합적인 조사를 4가지 주요 기여로 제공한다.
두 도메인이 어떻게 다른지를 정의하는 데이터의 특성에 따라 다양한 딥DA 시나리오의 분류체계를 제시한다.
training loss을 기반으로 deep domain adaptation 접근 방식을 여러 범주로 요약하고, 이러한 범주 아래의 최신 방법을 간단히 분석하고 비교한다.
얼굴 인식, 의미론적 분할 및 객체 감지와 같은 이미지 분류를 넘어서는 컴퓨터 비전 응용 프로그램을 살펴본다.
현재 방법의 몇 가지 잠재적 결함과 향후 몇 가지 방향 강조
Introduction
데이터가 부족한 현재 작업에 보조 데이터를 능숙하게 사용하는 것은 실제 응용 프로그램에 도움이 될 것이다.
그러나 많은 요인(예: 조명, 포즈 및 이미지 품질)으로 인해 그림 1과 같이 성능을 저하시킬 수 있는 두 도메인 간의 분포 변화 또는 domain shift이 항상 존재한다.
그림 1 (a) Amazon, DSLR, Webcam 및 Caltech-256 데이터베이스의 "Bike" 및 "Laptop" 카테고리의 일부 객체 이미지. (b) MNIST, USPS 및 SVHN 데이터베이스의 일부 디지털 이미지. (c) LFW, BCS 및 CUFS 데이터베이스의 일부 얼굴 이미지.얼굴 인식과 같은 실제 컴퓨터 비전 애플리케이션은 각 도메인에 특정한 분포에 적응하는 법을 배워야 한다.
Shallow DA
instance-based DA; 인스턴스기반,
소스 샘플을 reweighting하여 불일치(discrepancy)를 줄이고 가중치가 부여된 소스 샘플에 대해 훈련
feature-based DA ;특징기반
일반적으로 두 데이터 세트의 분포가 일치하는 공통 공유 공간(common shared spaces)을 학습
일부 연구에서는 Deep networks가 invariant factors과의 관련성에 따라 데이터 샘플 및 group feature의 기반이 되는 variations 의 exploratory factors을 계층적으로 분리하는, 더 많은 transferable representations을 학습할 수 있음을 보여줬다.
하지만, 도나휴(Donahue) el al는 domain shift가 여전히 그들의 성능에 영향을 준다는 것을 보여줬다.
"data 표본에 기반하는 variants의 exploratory factors를 분리한다"는 표현은 데이터 내에 존재하는 여러 변화 요인(예: 색상, 크기, 각도 등) 중에서 데이터의 주요 특성이나 구조를 결정하는 요소를 식별하고, 이를 다른 요소로부터 분리하여 표현하는 과정을 의미합니다. 심층 네트워크가 이러한 과정을 통해 데이터의 복잡성을 해석하고, 더욱 본질적인 특징을 추출할 수 있게 된다는 것입니다
위 문장에서 말하고자 하는 바는, 심층 네트워크가 데이터 샘플 내의 변화 요인들 사이의 관계를 파악하고, 이러한 변화 요인들을 계층적으로 구조화함으로써 더욱 transferable한(다른 문제나 도메인으로 쉽게 적용될 수 있는) representation을 학습할 수 있다는 것입니다. 즉, 심층 네트워크는 데이터의 근본적인 특성을 이해하고, 이를 기반으로 더 일반화된 특징을 추출할 수 있습니다.
하지만, 도나휴의 연구는 이러한 심층 네트워크조차도 Domain shift(소스 도메인과 타겟 도메인 간의 차이)에 의해 성능이 영향을 받을 수 있음을 지적합니다. 이는 심층 네트워크가 효과적인 특징을 학습할 수 있음에도 불구하고, 새로운 도메인에 모델을 적용할 때는 추가적인 적응 과정이 필요할 수 있음을 의미합니다.
따라서 최근 연구는 deep learning과 DA을 결합한 deep DA에 의해 이 문제를 해결했다.
DA(Domain Adaptation)와 Deep DA(Deep Domain Adaptation)는 특정한 개인이나 단일 연구 팀에 의해 제시된 개념이라기보다는, 기계 학습 및 인공지능 분야에서 여러 연구자들에 의해 점진적으로 발전해온 개념입니다. 이러한 연구 분야는 다양한 학술 커뮤니티에서 폭넓게 탐구되고 있으며, 시간이 지남에 따라 여러 연구자들의 기여를 통해 발전해왔습니다.
발전 배경: DA는 처음에는 전통적인 통계학 및 패턴 인식 분야에서 다루어졌습니다. 초기에는 주로 통계학적 방법을 이용해 다른 분포를 가진 데이터 세트 간의 차이를 극복하는 방법에 초점을 맞추었습니다.
적용 분야: DA는 자연어 처리(NLP), 컴퓨터 비전, 음성 인식 등 여러 분야에서 데이터의 도메인 간 차이를 극복하고자 할 때 널리 사용됩니다.
Deep DA(Deep Domain Adaptation)
발전 배경: Deep DA는 딥러닝이 급속도로 발전하면서 주목받기 시작한 개념입니다. 초기 딥러닝 모델의 성공 이후, 연구자들은 심층 신경망을 이용하여 도메인 간의 차이를 보다 효과적으로 극복할 방법을 모색하게 되었습니다.
적용 분야: Deep DA는 특히 이미지 인식, 객체 검출, 세그멘테이션 등의 컴퓨터 비전 분야에서 활발히 연구되고 있으며, 자연어 처리와 같은 다른 분야에서도 중요한 연구 주제입니다.
따라서, DA와 Deep DA는 특정한 학문 분야에서 시작된 것이라기보다는 기계 학습 및 인공지능의 넓은 범위 내에서 다양한 연구자들의 노력으로 발전해온 개념이며, 특히 Deep DA는 딥러닝의 발전과 밀접하게 연관되어 있습니다.
DA(Domain Adaptation)
지난 몇년간 TL(Transfer Learning)과 DA에 대한 또다른 연구가 있었다.
Pan et al: TL을 inductive TL(귀납적), Transductive TL(전이적), unsupervised TL 을 세가지 하위집합으로 분류했으나 동질적인(homogeneous) 특징 공간만을 연구했다.
O. Day and T. M. Khoshgoftaar[20] : various settings, requirements, and domains에서 작동하는 heterogeneous(다양한,이질적인;혼성의) TL을 위한 38가지 방법에 대해 논의
Zhang et al : 최초로 concept level에서 여러 transferring criteria를 세부적으로 요약;
위에서 언급한 이 다섯 가지 조사는 얕은 TL 또는 DA에 대한 방법론만을 다루고 있다.
Csurka : 최첨단 shallow DA methods을 briefly 분석하고 Training loss을 기반으로 deep DA methods을 세 가지 하위 집합으로 분류했다. ;Classification loss, Discrepancy loss, Adversarial loss.
본 논문 목적 : Deep DA 분석과 논의
두 도메인이 어떻게 분기되는지를 정의하는 데이터가 있다. 이 데이터의 속성에 따라 다른 Deep DA scenarios의 분류법을 제시한다.
여기서 언급된 "scenario"란 도메인 적응(Domain Adaptation, DA) 과정에서 마주치게 되는 다양한 상황을 의미한다. 데이터의 특성이 어떻게 두 도메인을 서로 다르게 만드는지에 따라 분류된 DA 상황들;
Csurka의 작업을 확장해 3가지 하위집합(training with classification loss, discrepancy loss and adversarial loss)을 개선/세부화하여 다양한 DA 장면에서 사용되는 접근 방식들을 요약한다.
Src/Tgt Domain 간 거리를 고려해 multi-step DA 방법을 연구하고 handcrafted, 특징-기반 표현-기반 메커니즘들로 분류한다.
Img cls, 얼굴인식, Style translation, 객체 검출, semantic segmentation 및 사람 reidentification과 같은 많은 컴퓨터 비전 애플리케이션에 대한 Survey를 제공한다.
Overview
Notations and Definitions
Domain D : 특성 공간 X와 주변 확률 분포 P(X)로 구성되며, 여기서 X = {x1, ..., xn} ∈ X 이다.
특정 Domain D = {X, P(X)}가 주어졌을 때, 작업 T는 특성 공간 Y와 목표 예측 함수 f(·)로 구성되며, 이는 확률적 관점에서 조건부 확률 분포 P(Y|X)로도 볼 수 있다.
일반적으로, labeled 데이터 {xi, yi}에서 xi ∈ X 및 yi ∈ Y인 P(Y|X)를 지도 학습 방식으로 학습할 수 있다.
두 개의 Domain이 있다고 가정하자; 충분한 레이블이 지정된 데이터를 가진 훈련 데이터셋이 소스 도메인 Ds = {Xs, P(X)s}이며, 소량의 레이블이 지정된 데이터 또는 레이블이 없는 데이터를 가진 테스트 데이터셋이 타겟 도메인 Dt = {Xt, P(X)t}이다.
부분적으로 레이블이 지정된 부분 Dtl과 레이블이 없는 부분 Dtu가 전체 타겟 도메인, 즉 Dt = Dtl ∪ Dtu를 형성한다는 것을 알 수 있다.
각 도메인은 그와 관련된 작업과 함께 제공된다: 전자는 Ts = {Ys, P(Ys|Xs)}이며, 후자는 Tt = {Yt, P(Yt|Xt)}다.
Similarly P(Ys|Xs)는 소스 레이블이 지정된 데이터 {xsi, ysi}에서 학습할 수 있으며, P(Yt|Xt)는 레이블이 지정된 타겟 데이터 {xtli, ytli}와 레이블이 없는 데이터 {xtui}에서 학습할 수 있다.
Different Settings of Domain Adaptation
전통적인 기계 학습의 경우는 Ds = Dt이고 Ts = Tt이다.
TL의 경우, Pan et al. 은 서로 다른 데이터 세트 간의 차이가 도메인 발산 Ds ≠ Dt(즉, distribution shift 또는 특징 공간 차이) 또는 task divergence Ts ≠ Tt(즉, 조건부 분포 shift 또는 label space difference ) 또는 둘 다에 의해 발생할 수 있다고 요약했다.
이러한 요약을 바탕으로 Pan et al. 은 TL을 inductive, transductive and unsupervised TL의 세 가지 주요 그룹으로 분류했다.
이 분류에 따르면 DA methods는 작업이 동일하다는 가정, 즉 Ts = Tt이며 도메인 발산인 Ds ≠Dt에 의해서만 차이가 발생한다
따라서 DA는 서로 다른 도메인 발산(distribution shift or feature space difference)을 기반으로 homogeneous(동질적) DA 및 heterogeneous (이형적)DA.의 두 가지 주요 범주로 나눌 수 있다.
그런 다음 대상 도메인의 레이블이 지정된 데이터를 고려하여 DA를 지도, 반지도 및 비지도 DA로써 추가분류할 수 있다. 그 분류는 그림 2에 나와 있다.그림2. Domain Adaptation 다양한 설정 개요
homogeneous DA 설정에서, 소스 도메인과 타겟 도메인 사이의 특징 공간은 동일한 차원(ds = dt)으로 동일하다(Xs = Xt). 따라서, 소스 및 타겟 데이터 세트는 일반적으로 데이터 분포(P(X)s ≠ P(X)t) 측면에서 상이하다.
또한 homogeneous DA 설정을 다음과 같은 세 가지 경우로 더 분류할 수 있다:
supervised DA 내에는 소량의 표지된 표적 데이터인 Dtl이 존재한다. 그러나 labeled data는 일반적으로 작업에 충분하지 않다.
semi-supervised DA에서 Target 도메인의 제한된 레이블이 지정된 데이터인 Dtl과 redundant unlabeled 데이터인 Dtu를 모두 훈련 단계에서 사용할 수 있으며, 이를 통해 네트워크는 대상 도메인의 structure information를 학습할 수 있다.
unsupervised DA에서 네트워크를 훈련할 때 no labeledbut sufficient unlabeled target domain data Dtu를 관찰할 수 있다. (라벨링되지 않았지만 학습에 충분한 언라벨 데이터)
heterogeneous DA 설정에서 소스 도메인과 타겟 도메인 사이의 특징 공간은 nonequivalent(Xs ≠ Xt)이며, 차원 또한 일반적으로 다를 수 있다(ds ≠ dt).
homogeneous setting와 유사하게 heterogeneous DA 설정도 supervised, semi-supervised and unsupervised DA.로 나눌 수 있다
위의 DA 설정은 모두 소스 도메인과 타겟 도메인이 직접적으로 연관되어 있다고 가정한 것이므로 한 단계로 transferring knowledge을 수행할 수 있다. 우리는 이들을 onestep DA이라고 부른다. 그러나 실제로는 이 가정을 사용할 수 없는 경우가 있다.
두 도메인 사이에 겹치는 부분이 거의 없고, one-step DA을 수행하는 것도 효율적이지 않을 것이다. 다행히 소스 도메인과 타겟 도메인을 원래 거리보다 가깝게 그릴 수 있는 중간 도메인이 있다.
따라서 일련의 중간 브리지를 사용하여 관련이 없어 보이는 두 도메인을 연결한 다음 이 브리지를 통해 onestep DA을 수행하는 multi-step (or transitive) DA을 수행한다.
예를 들어, 얼굴 이미지와 차량 이미지는 서로 다른 모양이나 다른 측면으로 인해 서로 다르기 때문에 one-step DA에 실패하게 된다. 그러나, '럭비 헬멧'과 같은 일부 중간 이미지는 중간 영역이며 매끄러운 knowledge transfer을 갖도록 도입될 수 있다. 그림 3은 one-step and multi-step DA techniques.의 학습 과정 간의 차이를 보여준다 (a) 전통적인 기계 학습, (b) one-step 도메인 적응 (c) multi-step 도메인 adaptation 간의 상이한 학습 프로세스
APPROACHES OF DEEP DOMAIN ADAPTATION
넓은 의미에서 deep DA은 심층 네트워크를 활용하여 DA의 성능을 향상시키는 방법이다. 이 정의에 따르면 deep features을 갖는 shallow methods을 deep DA transferring knowledge로 고려할 수 있다.
DA는 shallow methods에 의해 채택되는 반면, deep networks은 벡터 특징만을 추출하고 transferring knowledge에 직접적으로 도움이 되지 않는다.
좁은 의미에서 deep DA은 DA을 위해 설계된 딥 러닝 아키텍처를 기반으로 하며 back-propagation을 통해 심층 네트워크에서 직접적인 효과를 얻을 수 있다
이 논문에서는 좁은 정의에 초점을 맞추고 extra training criteria(기준)으로 "좋은" feature representations 을 학습하기 위해 deep networks 를 활용하는 방법에 대해 논의한다.
Categorization of One-Step Domain Adaptation One-step DA를 위한 다양한 Deep 접근법
1단계 DA에서 심층 접근법은 세 가지 경우로 요약할 수 있으며, 이는 [19]를 참조한다. 표 1은 이 세 가지 경우와 간략한 설명을 보여준다.
discrepancybased deep DA approach : labeled or unlabeled 타겟 데이터로 deep network model을 fine -tuning하면 두 도메인 간의 이동을 줄일 수 있다고 가정한다. Class 기준, Statistic 통계 기준, Architecture 기준 및 Geometric 기준은 fine-tuning을 수행하기 위한 네 가지 주요 기술이다.
Class 기준 : class label 정보를 다른 도메인 간의 지식 전달을 위한 가이드로 사용한다. 대상 도메인의 레이블이 지정된 샘플을 Supervised DA에서 사용할 수 있는 경우 소프트 레이블 및 메트릭 학습은 항상 효과적이다. 이러한 샘플을 사용할 수 없는 경우 psudo labe 및 attribute representation [29], [118]과 같은 일부 다른 기술을 채택하여 클래스 레이블이 지정된 데이터를 대체할 수 있다.
Statistic 기준 : 일부 메커니즘을 사용하여 소스 도메인과 대상 도메인 간의 통계적 분포 shift을 Align한다. 분포 이동을 비교하고 줄이기 위해 가장 일반적으로 사용되는 방법은 최대 평균 불일치(MMD)상관 정렬(CORAL)[109], [87], 쿨백라이블러(KL) divergence [144] 및 H divergence 등이다.
Architecture 기준 : deep networks.의 아키텍처를 조정하여 더 많은 전송 가능한 기능을 학습하는 능력을 향상시키는 것을 목표로 한다. cost effective한 것으로 입증된 기술에는 adaptive batch normalization (BN), weak-related weight[95], domain-guided dropout[128] 등이 있다.
Geometric 기준 : 소스 도메인과 타겟 도메인을 기하학적 특성에 따라 브리지한다. 이 기준은 기하학적 구조의 관계가 도메인 shift을 감소시킬 수 있다고 가정한다.
Adversarial-based deep DA approach : 이 경우, 경험적 소스와 타겟 매핑 분포 사이의 거리를 최소화하기 위해 적대적 목표를 통해 domain confusion 을 조장하기 위해 소스에서 데이터 포인트가 도출되었는지 타겟 도메인에서 도출되었는지를 분류하는 도메인 판별기가 사용된다. 또한, adversarial-based deep DA 접근은 생성 모델의 존재 여부에 따라 두 가지 경우로 분류할 수 있다.
Generative 모델: 일반적으로 생성적 적대 네트워크(GAN)를 기반으로 한 생성 구성 요소와 판별 모델을 결합한다. 대표적인 경우 중 하나는 소스 이미지, 노이즈 벡터 또는 둘 다를 사용하여 대상 샘플과 유사한 시뮬레이션 샘플을 생성하고 소스 도메인의 annotation 정보를 보존하는 것이다.
Non-Generative 모델: 입력 이미지 분포로 모델을 생성하는 대신, 특징 추출기는 소스 도메인의 label을 사용하여 판별 표현을 학습하고 domain-confusion 손실을 통해 대상 데이터를 동일한 공간에 매핑하여 domain-invariant 표현을 생성한다.
Reconstruction-based DA approach : 소스 또는 타겟 샘플들의 데이터 재구성이 DA의 성능 향상에 도움이 될 수 있다고 가정한다. reconstructor는 도메인 내 표현(intra-domain representation )들의 specificity 및 도메인 간 표현(inter-domain representation)들의 indistinguishability 둘 모두를 보장할 수 있다.
여기서 "indistinguishability 둘 다 보장한다"는 표현은,재구성자는 각 도메인의 고유한 특징을 보존하면서도, Src 도메인과 Tgt 도메인 간의 차이를 최소화하는 표현을 학습하게 됩니다. 이로 인해, 모델은 도메인 간의 전이 학습을 보다 효과적으로 수행할 수 있으며, 이는 도메인 적응의 성능 향상에 기여할 수 있습니다.
Encoder-Decoder Reconstruction : stacked autoencoders (SAE)를 사용하여 인코더-디코더 재구성 방법은 표현 학습을 위한 인코더 네트워크와 데이터 재구성을 위한 디코더 네트워크를 결합한다
Adversarial Reconstruction : reconstruction error는 듀얼 GAN[131], 사이클 GAN[143] 및 디스코 GAN[59]과 같은 GAN 판별기를 통해 얻은 순환 매핑에 의해 각 이미지 도메인 내의 재구성된 이미지와 원본 이미지 간의 차이로 측정된다.
Categorization of Multi-Step Domain Adaptation :
multi-step DA에서는 도메인과 대상 도메인의 직접적인 연결보다 더 관련성이 높은 중간 도메인을 결정한다.
정보 손실이 적은 1단계 DA에 의해 소스 도메인, 중간 도메인 및 대상 도메인 간에 지식 전달 프로세스가 수행된다. 따라서 다단계 DA는 중간 도메인을 선택하고 활용하는 방법이 핵심이며, [83]을 참조하면 수공, feature기반 및 representation기반 선택 메커니즘의 세 가지로 나눌 수 있다.
Hand-Crafted : 사용자는 경험을 기반으로 중간intermediate 도메인을 결정
Instance-Based : auxiliary데이터 세트에서 데이터의 특정 부분을 선택하여 중간 도메인을 구성하여 심층 네트워크를 훈련합니다
여기서 말하는 'auxiliary dataset'은 보조 데이터셋을 의미합니다. 이는 메인 작업이나 도메인에 직접적으로 속하지 않지만, 추가적인 정보나 지식을 제공하여 학습 과정을 돕는 데이터셋을 말합니다. 예를 들어, 도메인 적응에서 소스 도메인과 타겟 도메인 사이의 중간 도메인을 형성하는 데 사용되는 데이터셋이 보조 데이터셋에 해당할 수 있습니다. 이러한 보조 데이터셋은 딥 네트워크를 훈련시키는 데 사용되며, 특정 데이터의 부분을 선택하여 중간 도메인을 구성하는 데 활용됩니다. 이 방법은 모델이 소스 도메인에서 타겟 도메인으로 지식을 보다 효과적으로 전달하도록 하여, 도메인 적응의 성능을 향상시키는 데 도움을 줄 수 있습니다.
Representation-Based :이전에 훈련된 네트워크를 동결하고 그들의 중간 표현을 새로운 네트워크에 대한 입력으로 사용하여 전송이 가능하다
이 뒤로는 이제 one-step Domain Adaptation 부터 세부 설명을 다시 시작하는데 다음글에서 재개한다.