PADA: Example-based Prompt Learning for on-the-fly Adaptation to Unseen Domains

tobigs-nlp-article·2022년 9월 15일
0
  • 2020, TACL
  • OOD
  • Zero-shot classification

1. Introduction

대부분의 자연어처리 모델들은 다음과 같은 가정에 의존한다:

학습데이터와 테스트 데이터가 같은 분포를 가진다

하지만 텍스트라는 데이터 자체가 굉장히 많은 소스에서 올 수 있고 각 소스들은 별개의 분포를 가지기 때문에 학습데이터에서 얻어낸 것 이상의 일반화된 분포를 찾아내는 것 자체가 자연어처리에서는 굉장히 챌린징한 과제이다.

이 점이 중요한 이유는 NLP 알고리즘들이 out-of-distribution examples를 만났을 때, 크게 성능이 하락하기 때문이다.
out-of-distribution, 줄여서 OOD를 해결하기 위해 NLP에서는 크게 두 가지 접근을 한다.
1. OOD를 찾아내 따로 처리하게 하거나
2. 일반화 성능을 향상시키 위해 Domain Adaptation (DA)을 수행하거나.

오늘 소개할 논문은 2번 Domain Adaptation (DA)을 수행한다.
DA란 간단하게 이야기하면 타켓 도메인(OOD)에 잘/효율적으로 작동하게 하기 위한 목적을 가지고 소스 도메인으로 학습시키는 것이다.

2020년 이전에는 소스 도메인에 대해서는 레이블을 가지되, 타겟 도메인에 대해서는 레이블을 가지지 않는 데이터들로 학습을 시켰다. 하지만, 해당 논문은 아예 학습과정에서 타겟 도메인에 속하는 데이터를 보지 못하고, 추론과정에서 처음 보는 형태로 학습시켜야만 Any-domain Adaptation, 즉, 어떠한 도메인의 데이터도 처리할 수 있다고 주장한다.

저자들이 제안한 example-based autoregressive Prompt learning algorithm for on-the-fly Any-Domain Adaptation, 줄여서 PADA 알고리즘에 대해 알아보자.

2.1 Unsupervised Domain Adaptation (UDA)

기존에는 다음과 같은 방식들이 사용되었다.
1. DNN-based autoencoders
- to learn latent representations.
- trained on unlabeled source and target data with an input reconstruction loss

  1. pivot features
    • to bridge the gap between a source domain and a target domain

위와 같은 방법들은 모두 타켓 도메인에 있는 레이블링 되지 않은 데이터에 접근할 수 있다는 가정을 따른다.
즉, 완전한 일반화라기보다는 훈련 데이터 분포와 테스트 데이터의 분포에 대한 기존의 가정을 살짝 릴렉스 시킨 것이라고 할 수 있는 것. 하지만 이러면 새로운 도메인이 생겨날 때마다 새로운 모델이 필요하다는 단점이 존재하기에, 아예 학습 시간에 타겟 도메인/데이터에 접근하지 않는 방식이 필요하다

우선 이 논문애서는 pivot features를 활용한다. 기존의 pivot-based에서 좋은 pivot features란 레이블과 관련도가 높은 단어들이다. 즉 단어들과 레이블 사이에서 더 높은 연관성을 보이는 단어가 좋은 피쳐. (감성분석)

그런데, 이러한 관계는 한계가 있다. NLI를 생각해보자. (entailment, contradiction, neutral)
단어 하나하나와 레이블 사이에 관계가 있다고 하기가 어렵다.

이렇기 때문에 이 논문에서는 task-invariant feature를 정의한다. 즉, 레이블과의 관계가 아닌 단어와 도메인 사이의 관계로 피봇을 선정하는 것이다. 당연히 도메인과 단어는 연관성이 있을 수밖에 없기 때문에 상대적으로 안정적이다.

2.2 Multi-Source Domain Adaptation

  • prominent approach

    • fuse models from several sources
    • classifier (each domain) => voting
  • adversarial-based methods

    • used unlabeled data to align the source domains to the target domains
    • Mixture of Experts (MoE) model
      • relationship between a target example and each source domain.
      • naive weighting approach : effective

3가지 한계점
1. 해당 방식은 모든 도메인의 엑스퍼트 모델이 있어야함
- 이 도메인 수에 비례하게 파라미터의 수가 증가하고 이는 솔루션의 scalability를 저해
- 작은 모델로 할 수도 있겠지만 이는 수행능력의 저하로 이어짐
2. OOD 데이터에 대해서
- MoE ensemble: heuristic methods,(simple average, weighted average) --> sub-optimal!
3. domain partitioning: arbitrary
- dvd and movie domains
- more lenient approach towards domain boundaries

해당 논문에서는 단일 모델 사용.

2.3 Autoregressive LMs and Prompting

T5의 등장으로,task specific network를 추가할 필요가 없어졌고, Prompting의 중요성이 강조되고 있다.
해당 연구에서도 “Prompt+LM Tuning”의 방법을 사용한다.

  • prompt-relevant parameters are fine-tuned together with some or all of the parameters of the pre-trained model

T5’s prompting mechanism을 사용하여 모델이 모르는 도메인에서 온 문장과 관련된 domain-specific characteristics을 뽑아낼 수 있도록 할 것.

단지 조금 다른 점은:
일반적인 prompt tuning approach들은 representation level tuning을 목적으로 하지만, 해당 연구에서는 T5로 하여금 domain-specific 정보들을 담아내는 단어들을 생성하도록 학습시켰다는 것.

2.4 Any-Domain Adaptation

그래서 저자들이 주장하는 Any-Domain Adaptation이란 무엇인가. 이는 transductive transfer learning의 한 케이스라고 할 수 있다.

다시 말해, 소스 태스크와 타겟 태스크 (TST_S, TTT_T)는 동일하되, 도메인 DSTD_S^T, DTTD_T^T는 다른 것이다.
정리하면, DA의 목적은 소스 도메인 셋 {DSi}i=1K\{D_{S_i}\}_{i=1}^K을 통해 함수 ff를 배우고, 이를 이용해 타겟 도메인 {DTi}i=1M\{D_{T_i}\}_{i=1}^M에서 잘 작동하는 것이다.

이때 중요한 것은 domain robustness이다. 기존의 알고리즘들은, 알지 못하는 분포에 대한 일반화를 위해 다양한 optimization method들을 사용한다. 보통 모델로 하여금 domain-invariant한 피쳐들에게 집중하게 해서 태스크를 수행한다 (general across domains).

그러나, 이 논문에서는 domain-invariant feature들 뿐 아니라 domain-specific도 사용한다는 차별점이 있다.

3. Example-based Adaptation through Prompt Learning

3.1 Model

저자들의 아이디어는 단순하게: 처음보는 도메인에 대한 좋은 일반화를 위해서는 다양한 알고있는 도메인의 지식들을 이용해야 한다는 것.

어떠한 도메인에 대한 일반화도 가능하게 하기 위해, 저자들은 PADA 알고리즘을 제안한다.

PADA 알고리즘은 새로운 도메인의 데이터가 들어왔을 때, 다음의 두 가지 스텝을 거친다.
1. Generate Properties(Example-Specific Prompt)
- seq of tokens
- belongs to familiar domains
- related to given example
- used as a prompt for the example
2. Model - Downstream task

이때, 좋은 프롬프트를 만들기 위해서, Domain Related Features(DRF)를 정의한다. 이들은 소스 도메인 중 하나와 굉장히 밀접하게 연관되어 있는 토큰이며, domain-specific semantics를 encoding한다고 볼 수 있다. 즉, 소스 도메인들 사이의 공통,차이점을 드러내는 것.

해당 예시를 살펴보자.
이때, 해당 모델이 restaurants, home-furniture, electronic-devices, movies 도메인에 익숙하다고 가정한다.
새로운 도메인 airlines 등장하면, 모델은 문장의 토큰들을 열심히 순회하며, example-specific DRF 찾아낸다.

PADA가 만들어내는 Prompt는 예시와 같이 생겼다.
즉, 가장 유사하다고 여겨지는 domain name NiN_i를 만들고, 예시를 통해 얻어낸 단어들인 RiR_i를 붙인다.
SiS_i의 예시를 그림을 통해 보면, 파란색은 restaurants, 초록색은 home-furniture domains과 연관.
이렇게 만들어낸 프롬프트를 통해 해당 문장의 감성이 긍정인지 부정인지 classification할 수 있다.

이때, NiN_iRiR_i에 여러가지 단어들이 들어갈 수 있다는 것!

다음과 같이 2스텝을 거친다는 것을 확인할 수 있다. 이때 모델은 T5 사용!

DRF

이들은 각 도메인에 유의미한 semantinc signiture를 제공해야 한다. 만약 두 도메인이 의미적으로 비슷하다면 (restaurant, cooking) DRF도 겹치게 나와야 하는 것. 각 DRF는 해당 도메인 내에서 자주 등장해야하며, 다른 도메인에서보다 상대적으로 많이 나와야 힌다.

이들을 자동으로 뽑아내기 위해, Mutual Information(MI)을 채택. correlation, TR-IDF 등을 사용해보았으나 해당 방식이 가장 품질이 좋았다고 한다. 단순하게, 원하는 도메인의 레이블을 1 나머지를 0으로두고, 토큰과 레이블 간의 MI를 계산, 가장 점수가 높은 l개의 토큰을 선정하는 방식으로 후보군 셋을 마련한다.

이때, 다른 도메인에서도 자주 등장한 단어일 가능성을 고려해 N-gram의 count를 세서, threshold ρ\rho를 지정.

지정값에 따라 다른 양상을 확인할 수 있다.

Result

  • Transformer-based Mixture of Experts (TrMoE)
    • source domain, a separate transformer-based DistilBERT expert model
      is trained on the domain’s training set, and an additional model is trained on the union of training sets from all source domains. At test time, the average of the class probabilities of these models is calculated and the highest probability class is selected.
  • T5-MoE
    • T5-based MoE ensemble model.
  • T5-No-Domain-Adaptation (T5-NoDA)
    • 그냥 T5. fintuned
  • T5-Domain-Adversarial-Network (T5-DAN)
    • T5-NoDA + domain classifier
  • T5-Invariant-Risk-Minimization (T5-IRM)
    • established algorithms in the domain robustness literature
  • Prompt-DN
    - simplified version of our PADA
    model: assigns only a domain name
  • Prompt-RDW and Prompt-REW
    • form prompts from Random-Domain-Words and Random-ExampleWords
  • PADA-NP
    • (No Prompt)
  • PADA-NM
    • (No Multi-task)
    • 별개의 encoder
profile
투빅스 NLP 논문세미나입니다!

0개의 댓글