1. Abstract

 이 논문은 여러가지 normalization 기법을 이용하여 해결합니다. batch normalization(BN)은 도메인 이동이 큰 곳에서는 한계가 있습니다. 그렇기 때문에 domain specific style을 제거할 필요가 있습니다. 이를 하기 위해서 Instance normalization(IN)을 이용합니다.

 

2. Method

F는 feature extractor입니다. 

normalization 파트를 제외한 나머지 parameter들은 domain끼리 서로 공유합니다.

 

D는 classifier입니다. 하나만 이용합니다.

모든 도메인의 loss를 더해서 최종으로 학습하게 됩니다.

 

2.1 Instance Normalization for Domain Generalization

 

 

table1을 보면, BN은 cross domain 시나리오에서는 적절하지 않습니다. ImageNet으로 학습된 resnet을 PACS 데이터에 맞게끔 BN layer를 학습한 것이 아래결과입니다. 오히려 성능이 떨어지는 것을 확인할 수 있습니다.

 

이러한 문제를 해결하기 위해서 IN을 도입합니다. 이는 domain-agnostic 한 feature를 얻을 수 있다고 합니다.

IN은 sytle normalization하는 능력이 있기 때문에, style trasnfer에 주로 이용됩니다. AdaIN, MixStyle 등 다양한 곳에서 이를 활용했습니다. IN은 각 도메인의 style information을 줄여줍니다.

 하지만 IN도 문제점이 있습니다. semantic한 정보가 많이 줄어들게 됩니다. 위 그림은 3가지 class에 대한 분포를 나타냅니다. a, b같은 경우에는 같은 class 끼리 잘 뭉쳐있습니다. 하지만 c는 그렇지 않습니다. inter-class varaince가 감소하게 되어서, 서로 잘 구분을 못합니다. 

 

이 논문에서는 BN, IN 두 가지를 결합합니다.

 

2.2 Optimization for Domain-Specific Normalization

x는 각 채널에 대해서, H x W x N입니다. h는 세로, w는 가로, N은 batch입니다. 감마와 베타는 affine parameter입니다. 각 도메인마다 하나 씩 있습니다.

 

우선 BN에 이용되는 변수를 구합니다.

 

IN에 사용되는 변수도 구합니다. 식을 보면, IN의 평균은 B x C x 1 이런 형태인데, BN은 1 x C x 1 이런 모양입니다.

 

위해서 구한 것을 w만큼 서로 섞어줍니다. mixstyle의 수식이랑 조금 비슷한 모양인 것을 확인할 수 있습니다.

 

이렇게 normalization을 해준 후에, 맨 위의 식을 이용하여 affine translation을 해줍니다.

 

2.3 Inference

unseen domain에서는 나온 결과를 전부 평균을 내주고, softmax를 적용합니다.

3. Experiment

 

이 논문은 접근방법이 되게 신기해서 인상깊네요.

반응형

semanticGAN에서 이 논문의 loss를 다루어서, 읽게 된 논문. 생각보다 인용이 많이 됐음.

 

1. Abstract

 이 논문의 주제는 사람의 관점에서 이미지가 얼마나 비슷한지 어떻게 측정을 할까 입니다. 이 문제가 왜 어렵냐면, 이미지는 차원이 높고 서로 픽셀들이 연관이 있어서 기존의 distance 개념들을 사용하기 어렵습니다. 그리고 비슷하다는 개념이 애매합니다. 예를 들면, 빨간 원이 빨간 사각형이랑 비슷한지, 파란 원이랑 비슷한지 정의하기 어렵습니다. 

 이러한 점을 해결하기 위해 새로운 데이터셋을 제안하고, pretrain 된 모델을 이용하여 distance를 계산합니다.

 

2. method

데이터셋에 대해서는 다루지 않겠습니다.

 

채널마다 feature들을 normalize 해주고, 뺍니다. 그 후에, activation 으로 scale 해주고, l2 distance를 구합니다. 코드를 보니, w는 1x1 convolution으로 구현했네요.

 

 

perceptual한지 판단하기 위해 세 가지 variant를 고려합니다.

 

lin : pretrain 네트워크 가중치를 F 로 고정하고, linear weight w를 학습한다고 합니다. 예시로 VGG가 1472 파라미터만 학습을 한다고 하니까, 위 수식에서 w부분만 학습을 한다고 보면 될 것 같습니다. 

 

tune: pretrain된 network를 들고와서 F를 fine tune을 한다고 합니다.

 

scratch : network를 random gaussian weight으로 초기화 후, 학습한다고 합니다.

 

이 세가지를 Learned Perceptual Image Patch Similarity(LPIPS)라고 한다고 하네요.

 

 

반응형

1. Abstract

 이 논문은 single domain generalization에 관한 논문입니다. 새로운 도메인의 데이터를 만드는 모델과 domain invariant한 부분을 학습하는 task model 두 가지로 이루어져 있습니다.

 unseen domain의 다양한 데이터를 progressive하게 만들어냅니다. domain invariant representation을 학습하기 위해서 contrastive learning을 이용합니다.

2. Method

 2.1 The Unseen Domain Generator G

 

G는 원래 이미지를 새로운 도메인의 데이터로 바꾸는 네트워크입니다. 이 논문에서 G는 Autoencoder와 spatial transform network(STN)에 관해서 설명합니다.

autoencoder는 AdaIN을 이용합니다.  n ~ N(0,1)이고, G_E는 encoder D는 decoder입니다. L_fc1은 과 2는 fully connected layer를 뜻합니다. AdaIN은 normal Instance를 이용하고, style transfer에 관한 논문입니다.

 

autoencoder대신에 STN을 이용할 수도 있다고 이야기합니다.

2.2 Progressive Domain Expansion

여기서 M은 task model, G는 generator, S^은 만들어진 데이터 입니다. Sall은 만들어진 데이터와 현재 데이터 모드 저장합니다. 

 

2.3 Domain Alignment and Classification

우선 L_ce는 cross entropy 입니다. F,C는 feature extractor, classifier head를 의미합니다. 즉, task model을 학습하는 loss입니다. z는 P(F(x))입니다. F는 feature extractor이고 P는 projection head입니다. L_NCE는 InfoNCE loss라고 해서 intra class끼리의 거리는 좁혀주고, 다른 class와의 거리는 늘려주는 역할을 합니다.

 

2.4 Unseen Domain Generation

Unseen domain을 만들 때, domain invariant 한 정보가 있어야 하고(Safety),  다양한 domin-specific 정보(Effectiveness)가 있어야 된다고 합니다. 

 

Safety

task model이 모든 unseen domain 데이터에 대해서 잘 예측을 한다면, safe하다고 이야기 합니다.

이는 cycle consistency loss라고합니다. 바뀐 이미지를 다시 원래대로 되돌리도록 합니다. cycleGAN이랑 유사한 것 같습니다.

 

Effectiveness

 

task model은 domain share representation을 학습해야하기 때문에,  L_nce를 최소화합니다. generator는 반대로 최대화해야지 효과적은 domain을 만들 수 있습니다.

이 식은 converge가 어렵다고 합니다. loss 값이 작아지면, gradient가 커진다고 합니다.

 

그렇기 때문에,

이 식을 이용합니다.

 

Generator가 다양한 샘플들을 만들기 위해서 이 식을 이용합니다. 앞에 -가 붙었기 때문에, noise에 따라 다른 domain이 생성될 것입니다.

최종 loss

반응형

https://github.com/facebookresearch/mae

 

GitHub - facebookresearch/mae: PyTorch implementation of MAE https//arxiv.org/abs/2111.06377

PyTorch implementation of MAE https//arxiv.org/abs/2111.06377 - GitHub - facebookresearch/mae: PyTorch implementation of MAE https//arxiv.org/abs/2111.06377

github.com

 

1. Abstract

이 논문은 masked autoencoder를 통해 성능을 끌어올립니다. 대부분의 autoencoder는 encoder, decoder가 대칭적인데 반해, 여기선 비대칭입니다. 인코더에 비해 디코더는 파라미터가 적습니다. 인코더는 전체 이미지에서 마스크되지 않은 패치만 이용합니다. 디코더는 인코더를 통과한 feature과 mask token을 가지고 원래 이미지로 복구합니다. 마스크하는 비율은 75퍼센트로 꽤 높습니다.

 이 논문에선 masked autoencoding이 NLP task와 computer vision에서는 무엇이 다른지 분석합니다. Information density가 다르다고 말합니다. 언어는 사람에 의해 만들어진 신호입니다. 반면에,이미지는 spatial redudancy를 갖는 자연적인 신호입니다. 하나의 패치를 빼버리면, 주변 패치들이 이 정보를 어느 정도 커버 칠 수 있습니다. 이러한 점을 해결하기 위해 마스킹하는 패치의 비율이 상당히 높습니다.

 vision에서는 디코더가 픽셀을 reconstruct를 합니다. 따라서 output은 lower semantic elvel을 가지고 있습니다. 반면에 언어는 많은 semantic information을 가지고 빠진 단어를 예측한다고 합니다. 

 

2. Method

 왼쪽은 input, 중간은 decoder의 output, 오른쪽은 input 원본입니다.

마스킹은 랜덤하게 합니다. 이때 마스킹 비율은 상당히 높아야 합니다. 왜냐하면 앞에서 이야기 했다시피, 주변 패치만 가지고 예측을 할 수 없게끔 해야 하기 때문입니다.

 

MAE encoder

ViT 구조를 따릅니다. 여기서도 패치 임베딩을 할 때에 positional embedding을 해줍니다. MAE에서는 input size가 매우 작기 때문에, 연산량이 많이 줄어듭니다. 마스킹을 한 패치 전체는 decoder에서 이용합니다.

 

MAE decoder

 여기선 encoded visible  패치들과 mak token전부 이용합니다. mask token들도 전부 positional embedding을 해주어야 합니다. 하지 않으면, 이미지에서 어디에 위치한 지 알 수 없습니다. 여기서 장점은 encoder의 디자인과 전혀 상관없이 독립적이라는 점이 좋다고 논문에서는 강조합니다.

 

loss로는 MSE를 이용합니다.

반응형

1. Abstract

Domain Generalization(DG)는 여러 개의 source domain으로 학습을 합니다. 하지만 이 source domain간의 diversity에는 제한이 있기 때문에, 모델의 성능을 떨어트립니다. 이를 해결하기 위하여 새로운 도메인 데이터를 만듭니다. 새로 만들어진 도메인과 기존 도메인의 distance를 최대화하도록 하는 것이 목표입니다.

 

2. Method

2.1 Generating Novel-Domain Data

 

 Conditional generator

물결 표시가 만들어진 도메인입니다. conditional generator인 G를 이용하여 새로운 도메인의 데이터를 만듭니다.

 

 Objective functions

source domain과 augmented domain의 distance는 커야 합니다. 여기서 d는 distance입니다.

augmented domain 간의 distance도 커야 합니다. k1, k2는 서로 다른 도메인입니다.

 

2.2 Maintating Semantic Consistency

위 과정들은 diverse한 데이터는 만들지만, semantic한 정보는 없습니다.

 

Cycle-consistency loss

만들어진 이미지를 다시 원래대로 잘 되돌리도록 합니다. cycle gan의 방법을 가져온 것 같습니다.

 

Cross-entropy loss

만들어진 이미지의 레이블을 예측한 것과 source domain의 레이블이 같아야 합니다. 

 

2.3 Training

 

Generator training

Task model training

논문에서 알파는 0.5로 설정했다고 합니다. 또한 source domain의 개수와 augmented domain의 개수는 같습니다.

 

2.4 Design of Dirstribution Divergence Measure

 

기존의 논문들과는 다르게  diversity를 최대화해야 합니다. 그렇기 때문에, KL divergence는 사용할 수 없습니다. 만약에 distribution이 겹치지 않는다면, 이는 무한대가 되기 때문입니다. 그렇기 때문에 이 논문에서 cosine distance를 이용합니다.

 

3. Experiment

 

 

이 논문에서는 novel domain의 중요성을 강조합니다. a의 L2A-OT와 기존의 GAN을 이용하여 만들었을 경우의 accuracy차이가 엄청난 것을 확인할 수 있습니다.

 

또한 semantic constraint도 중요하다고 합니다. sematic이 없을 경우에는 b의 가운데 그림처럼 아무 정보도 없는 이상한 그림이 나오기 때문에, 이를 이용하여 학습하면 성능이 많이 떨어질 것입니다.

 

기존의 방법보다 만들어진 domain이 거의 겹치지 않는 것을 확인할 수 있습니다.

반응형

1. Abstract

 Domain Generalization(DG)에서 worst case는 source domain 하나만 이용 가능할 경우 입니다. 이 문제를 해결하고자 adversarial domain augementation 방법을 이용합니다. meta-learning 기법과 Wassertein Auto-Encoder(WAE)를 이용합니다.

 

2. Method

T는 target doamin, S는 source domain입니다. D는 두 분포 간의 거리입니다. 차이가 제일 큰 도메인에서도 잘 분류하도록 하는 것이 목표입니다. Ltask는 cross entropy입니다.

2.1 Adversarial Domain Augmentation

 이 논문은 source domain으로부터 여러 개 도메인을 만드는 것 입니다.

세타는 task model의 파라미터이고, 프시는 WAE의 파라미터입니다.

x+는 만들어진 도메인의 데이터 입니다. 여기서 신기한 점은 이미지 자체에 gradient를 더함으로써 새로운 이미지를 만들어냅니다. 

 

const loss는 semantic한 정보를 유지하도록 합니다. 같은 클래스라면, feature간의 거리가 좁아지도록 합니다. 즉, 동일한 class는 서로 비슷한 feature를 만들어내도록 학습을 시킵니다. 여기서 문제는 out of distribution을 만들어낼 수 없습니다. 그래서  relax loss를 추가합니다.

2.2 Relaxation of Wassertein Distance Constraint

만들어진 domain과 source domain간의 거리가 멀어지게 하는 것이 목표입니다. WAE를 여기서 이용합니다. WAE는 encoder인 Q(.)와 decoder인 G(.)로 이루어져 있습니다. 

WAE는 이 수식을 이용하여 학습합니다. 복구한 이미지와 input으로 들어온 이미지가 같아지도록 합니다. 여기서 D는 GAN이나 MMD를 의미합니다. encoder로 만들어진 feature와 priror distribution이 비슷해지도록 만듭니다.

이 수식을 이용하여 새로운 데이터를 만듭니다. 이미지와 WAE를 통과한 이미지가 서로 비슷하도록 학습을 합니다. 여기서 의문점은 이렇게 학습을 하면 새로운 도메인의 데이터를 만들어내는 것이 불가능하지 않나라는 생각이 듭니다...

 

여기서 WAE는 one class discriminator 역할을 합니다. source domain과 먼지 아닌지 판단을 합니다.

2.3 Meta-Learning Single Domain Generalization

source domain으로 학습하는 meta-train과 만들어진 도메인으로 학습하는 meta-test로 나눕니다. 

우선 source domain으로 task model을 학습합니다. 그 후에는 

만들어진 domain의 데이터와 source domain의 데이터로 다시 학습합니다. 이 부분이 meta-test입니다.

Eq4 가 새로운 데이터를 만드는 식이빈다. Eq 8은 meta train 식, q는 meta test 수식 입니다.

3. Experiment

반응형

1. Abstract

 기존의 연구들은 domain 간의 semantic invariance를 중점으로 연구를 했습니다. 하지만 intra-domain style invariance도 중요합니다. 이 논문에서는 intra-domain style invraiance가 DG의 성능과 관련이 있다는 것을 보여준다고 합니다. 'jury'를 통해 도메인 사이의 공통된 semantic feature를 배울 수 있게끔 합니다.

2. Method

2.1 Intra-domain Invariance on Style Features

memory bank라는 것을 통해서 domain style invariance를 학습한다고 합니다. 도메인마다 style bank가 있고, 학습을 할 수록 semantic, 즉 class에 상관없이 동일한 형태를 띄고 있습니다. bank를 업데이트하는 방식은 큐입니다. 

<,>는 코사인 유사도입니다.   하나는 intra domain 간의 거리이고, 하나는 inter domain간의 거리입니다. loss가 작아지려면, 앞에 마이너스 기호가 붙어있으니 분자는 크게 분모는 작게 해야합니다. 그리거 위해서는 intra domain간의 유사도는 크게 나와야하고, 분모에서 두 번째 식은 작게 나와야합니다.

 

2.2 Inter-domain Invariacne on Semantic Features

 class가 같다면, 도메인에 상관없이 feature도 비슷해야 합니다. 이를 해결하기 위한 방법을 여기서 다룹니다. 

c_d,i와 전체 semantic feature의 similarity scroe를 구합니다.

 

두 모델이 invariant semantic feature를 공유한다면, 이 둘은 서로 비슷한 값을 가집니다.

그래서 cross entropy함수를 이용합니다.

이 식은 class를 잘 분류하도록 하게 해줍니다. 

 

2.3 Decoupling Semantics from Styles

 앞의 수식들을 살펴보면, semantic feature와 style feature가 서로 연관이 없습니다. 이 두가지를 orthogonality 시킴으로써 앞의 문제점을 해결할 수 있다고 합니다. 이유는 다른 논문을 살펴봐야 알 것 같습니다.

 

H는 row가 feature로 이루어진 matrix입니다. squared Frobenius norm을 이용하여 matirx크기를 구합니다.

 

2.4 Overall

앞에서 본 loss들을 전부 다 더하여 최종 loss를 구합니다.

 

memory encoder는 이렇게 업데이트 해줍니다.

3. Experiment

성능이 우수한 것을 확인할 수 있습니다.

 

실제로 앞의 loss들을 전부 사용했을 경우의 성능이 제일 좋은 것을 알 수 있습니다.

반응형

1. Abstract

기존의 DANN처럼 adversarial learning을 이용하여 feature를 학습하면, feature는 invariant marginal distribution을 가집니다. 새로운 도메인에서 예측할 때에는  conditional distribution의 invariance가 더 중요하다고 합니다. 

 

 기존의 방법들은 marginal distribution P(X)가 변한다고 합니다. 반면, P(Y|X)는 전체 도메인에 걸쳐서 안정적으로 유지된다고 합니다. 제가 이해한 바로는 기존의 방법들은 feature의 표현에만 중점을 뒀다면, 이 논문은 feature와 label의 관계에 중점을 둔 것 같습니다.

 

 

2. Method

 

기본 clssification에 관련된 loss입니다. cross entropy 함수를 이용하는 것을 알 수 있습니다. F(x)는 feature이고, T는 classifier 하나, K는 전체 도메인 입니다. Q는 predicted label dstribution이라고 합니다. 이 수식만 이용하면, domain-invariant한 feature는 학습을 못합니다.

그렇기 때문에, GAN처럼 adversarial learning방법을 도입합니다.  D는 domain discriminator입니다. minmax game에서 F와 D가 서로 반대되어야 할 것 같은데, 잘 이해가 안 가네요... 

이는 P1(F(x)) = P2(F(x)) = ... = PK(F(x)) 같은 invariant marginal distribution을 구한다고 합니다. 이는 model의 generalization 성능을저하시킬 수 있습니다.

T' 은 각 도메인의 classifier를 의미합니다. 이 수식이 왜 도입되는 지는 제가 잘 이해를 못했습니다...

 

위에 -의 의미는 파라미터를 고정시켜 둔 것 입니다. adv Loss를 보면, class에 관한 정보가 빠져있습니다. class에 관한 정보도 배우도록 해준다고 합니다. 또 domain 마다 classifier를 추가합니다.

 

최종 loss는 이와 같습니다.

 

Eq 10이 방금 loss입니다.

 

3. Experiment

다른 방법들이랑 비교해보면, 다른 domain이여도 서로 잘 뭉쳐있는 것을 확인할 수 있습니다.

 

 

반응형

1. Abstract

  이 논문은 Domain-specific Mask라는 것을 도입합니다. 논문 제목처럼 domain specificity와 invariant를 balance하게 해주는 역할을 합니다. 이러한 것을 Disentangled Representation 라고 한다고 합니다. domain sepecificity는 특정 domain에서 분류를 잘 하도록 하는 것이고, invariant는 어느 domain에서도 feature가 변하지 않는 것을 의미합니다.

이처럼 target domain이 source domain과 비슷한 면도 있기 때문에, 둘의 균형이 중요하다고 합니다. domain specific을 언급하는 논문은 처음봐서 인상깊네요.

2. Method

 

domain 마다 mask predictor라는 것을 가지고 있습니다. mask를 만들어서 이를 feature 와 곱해줍니다. dropout이랑 비슷하다고 생각하시면 될 것 같습니다. 학습을 하기 위해서 mask predictor는 parameter이고, 이 값에 sigmoid를 해줍니다. 문제는 mask는 binary값이라서 back-propagation을 통해 직접 학습을 하는 것은 불가능합니다. 그래서 근사화를 통해 학습을 한다는데, 잘 이해가 가지 않아 코드를 직접 찾아봤습니다.

 

super_mask_logits이라고 학습가능한 mask predictor를 만들어 줍니다.

그리고 보시면 soft_mask를 빼고 더하는 것을 볼 수 있습니다. 제 생각으로는 여기서 gradient를 구하는 것 같습니다.

 

mask는 뉴런들이 source domain의 specific을 유지하는 데에 도움이 됩니다. 그리고 다른 domain들과 mask 위치가 최대한 겹치지 않도록 함으로써 domain-specificity를 좀 더 인센티브를 준다고 합니다. 

이 수식을 이용하여 구합니다. 그냥 IoU는 미분이 불가능해서 못 씁니다.

 

loss 함수는 이렇게 됩니다. 

 

target domain에서 test를 할 때에는 maks predictor의 평균을 이용한다고 합니다. 

 

invaraint는 어디서 조절하는 지 몰랐는데, 논문을 다시 읽어보니까 하나의 feature extractor를 이용하기 때문에 invariant도 학습을 한다고 합니다 ㅎㅎ...

3. Experiment

 

 

반응형

1. Abstract

 이 논문은 meta-learning을 이용한 DG입니다.  Source domain을 meta-train meta-test로 나누고, 이를 이용하여 model-agnostic learning을 합니다. global 적으로 inter-class relationship에 대한 knowledge를 유지하기 위해서 soft confusion matrix를 이용합니다. local적으로는 domain independent class-specific cohesion과 샘플 feature의 separation을 metric-learning을 이용해 향상시킵니다.

 

2. Method

모델 구조

2.1 Model_agnostic Learning with Episodic Training

 이 논문의 key는 episodic training 입니다. 여러 개의 source domain을 meta-train D_tr와 meta-test D_te로 나눕니다. Dtr 도메인의 데이터를 학습한 후에, Dte를 이용하여 학습을 하게 됩니다.

task-specific supervised loss 인 L_task를 통해 feature extractor와 classifier를 업데이트 합니다. 여기선 D_tr만 이용합니다.

 

parameter를 업데이트 한 후에 meta-learning step을 적용할 수 있습니다. meta-learning을 하더라도 feature가 semantically relevant한 특성을 가지도록 해야합니다. 그리고 domain에 상관없이 같은 label이라면, 서로 밀집해 있도록 clustering이 되어야 합니다. 이를 위해 L_meta = b1*L_global + b2*L_local 를 이용합니다. b1,b2는 0보다 큰 수입니다.

 

2.2 Global Calss Alignment Objective

 

 여기서 목표는 feature가 unseen data에서도 학습했던 class 관계를 유지하는 것입니다. 그러기 위해서 soft label을 이용해 모델이 class ambiguities를 배우도록 합니다. D_tr과 D_te를 consistent하게 만들어 줍니다. 

이를 이용해 class-specific mean feature vector인 z를 구합니다. c는 class이고 k는 domain입니다. 

그리고 softmax를 통해 soft label을 만들어줍니다. 여기서 타우는 1보다 큰 값입니다. soft label 논문에서는 2로 설정한 것으로 알고 있습니다.

이 식을 이용해서 두 도메인 간의 거리를 줄여줍니다. D_KL은 kl divergence입니다. kl divergence는 symmetry하지 않기 때문에 이런 구조를 사용합니다. D_te, D_tr 모든 pair의 l_global을 통해서 L_global을 계산합니다. 그렇기 때문에, 연산량 에 대한 이슈도 있지만, 논문에서는 D_tr의 개수는 2, D_te의 개수는 1이라서 크게 상관없다고 합니다.

 

2.3 Local Sample Clustering

  이는 domain에 상관없이 class에 따라서 cluster 해주도록, robust semantic feature를 생성합니다. 이는 매우 중요하다고 합니다. 만약에 제대로 되지 않으면, ambiguous decision boundaries를 만들게 되어 unseen domain에서 제대로 작동하지 않게 됩니다.

 

 그래서 L_local loss를 이용하여 class-specific cluster의 밀집도를 높입니다. 이를 feature에 그대로 적용하게 되면, unseen domain에서의 성능에 지장을 준다고 합니다. 그래서 metric learning이라는 기법을 이용합니다. 위의 그림에서 보이는 M을 도입하여 학습가능한 distance function입니다.

모든 Source domain에서 (n,m) pair를 랜덤하게 뽑습니다. 이를 이용하여 loss 를 계산합니다.

이는 Contrastive loss 입니다. 같은 class 샘플은 서로 끌어당기고, 아닌 경우에는 떨어트리도록 합니다.

Triplet loss 입니다. 다른 class보다 같은 class간의 거리를 가깝게 해줍니다. 이 논문에선 semi-hard를 이용하고, 모든 triplet pair의 평균을 L_local로 합니다.

 

 

3. Experiment

여기서는 triplet loss를 이용합니다.

이 데이터셋에 대해서도 triplet loss를 이용합니다.

MASF, 즉 이 논문이 class를 좀 더 잘 구별하는 것을 확인할 수 있습니다.

반응형

+ Recent posts