방법 및 개괄 구조
- Domain Generalization via Shuffled Style Assembly (이하 SSAN모델)은 two stream으로 style information과 content information을 추출한다.
- content정보는 live/spoof에 관련없이 사람의 얼굴사진에서 공통적인 feature에 관련한 부분이기 때문에 성능 향상을 위하여 좀 더 local한 feature인 style을 도입한다.
- style 중 도메인 관련한 style은 최대한 억제시키고, live를 가릴 수 있는 style을 더 끌어올려 content 정보에 합산하려는 목적을 가진 논문이다.
- 여기서 content와 style은 AdaIN을 통해 어떻게 assemble될지 결정되는데 AdaIN은 아래 수식과 같이 z-score (평균에서 떨어진 거리가 분산에 비해 얼마나 떨어졌는지 환산)에 scale(\gamma)과 bias(\beta)를 곱한 것과 같다. (이 방식은 batch normalization에서 정규화하는 것과 비슷)
- 여기서 scale(\gamma)과 bias(\beta)가 바로 아래와 같이 style features인 f_s 에서 계산되기 때문에 pixel wise별 connection의 value가 weight,bias값으로 매핑된다고 이해하였다.
- 어쨌든 이렇게 scale(\gamma)과 bias(\beta) 값을 정하여 아래의 수식과 같이 layer를 거치는데 이를 통해 style features 인 f_s 와 content features인 f_c 가 적절하게 섞여 Assemble feature space가 형성된다.
- SSAN-R, SSAN-M의 두 모델이 제시되어 있으나 큰 구조는 같고 feature generator초입에 Resnet(R)이 사용된 것, DepthNet(M)이 사용되었나 정도만 다른듯 함.
- CVPR에 나온 paper가 실험 결과 등은 생략되어 짧으나 구조는 더 자세히 나와 해당 paper의 아래 그림도 함께 참조하면 이해하기 쉬움
- content feature와 style feature는 위의 그림과 같이 feature generator를 통해 산출되는데 어떻게 content정보 위주의 feature와 style feature로 나뉘어 산출될 수 있는지 여러 Loss를 통하여 알아본다.
- 아래의 그림에서 주황색으로 표시한 GRL(gradient reversal layer)를 통해 L_{adv}에 반대 방향으로 (-부호방향) 최적화가 되게 함으로서, Domain을 구분하는 Discriminator가 Content feature를 통과해 나온 f_c가 도메인 구분을 잘 하지 못하게끔 generator가 학습된다.
- 이 과정에서 content feature는 도메인 관련 정보가 최대한 억제된 general한 정보 위주로 남게 된다.
- SSAN에서 L_{contra} 를 통해 liveness style을 enchance시키고 domain-related style을 억제시키는데, 이때에 사용되는 공식은 아래와 같다.
- 위의 negative 코사인 유사도를 이용하여 L_{contra}를 다음과 같이 구한다.
- 위의 stopgrad와 Siamese network 에 관해서는 따로 논문 리뷰를 하겠음
- Siamese network의 컨셉을 이해한 후 아래의 L_{contra}식을 보면 다른 도메인과 랜덤으로 섞인 shuffle_assembly features(S(x_i,x_{i*}))라도 x_i,x_{i*} 두 입력의 label이 live로(or spoof) 두개가 같다면 self-assembly features(S(x_i,x_i))와 similarity가 높아지는 방향으로 L_{contra}가 작동한다는 것을 알 수 있다.
- 위의 L_{contra}를 통해 아래처럼 style의 도메인 (겉껍질의 모양)이 달라도 style의 liveness(겉껍질의 색깔)끼리 같다면 더 비슷해지게 유도되고 style의 liveness가 다르면 더 유사도가 멀어지게 유도된다.
- 위의 Loss들과 마지막으로 classifier의 Loss인 L_{cls}를 합쳐서 전체 Loss를 결정하고 이를 통해 학습을 진행한다.
- 참고로 람다1,람다2는 trainable parameter아닌 hyper-parameter.
실험 결과 (CVPR paper와 합함)
위와 같이 intra protocol, inter protocol (protocol은 dataset의미) 모두에서 SSAN-M이 가장 뛰어난 성능 (AUC%기준) 을 보였다.
각각의 Loss term이 성능에 영향이 있는지 실험. 본 논문에서 서술한 Loss term이 모두 있는 상태가 가장 성능이 좋았다.
위와 같이 타 모델에 비해 성능이 더 좋았으며 위의 실험 셋팅에서 비교했을때는 SSAN-M보다 SSAM-R이 성능이 더 좋았음
'논문읽기' 카테고리의 다른 글
논문_REACT (Reasoning and Acting) (0) | 2023.11.27 |
---|---|
논문 초록읽기 (딥러닝,LLM관련) (0) | 2023.11.26 |
Rotary Position Embedding리뷰 (0) | 2023.11.25 |
LoRA(LORA: LOW-RANK ADAPTATION OF LARGE LANGUAGEMODELS ) 논문읽기 (4) | 2023.11.25 |