범블로그
article thumbnail
 

Text Style Transfer for Bias Mitigation using Masked Language Modeling

Ewoenam Kwaku Tokpo, Toon Calders. Proceedings of the 2022 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies: Student Research Workshop. 2022.

aclanthology.org

 

 

GitHub - EwoeT/MLM-style-transfer

Contribute to EwoeT/MLM-style-transfer development by creating an account on GitHub.

github.com

 

Abstract

  • Text data의 편향을 자동으로 완화할 수 있는 non-parallel data로 학습한 Text Style Transfer(이하 TST) 모델
  • Latent encoding과 explicit keyword 교체를 통해 문제를 해결했다.

 

1. Introduction

  • Style transfer: Text나 image를 한 도메인에서 다른 모데인으로 변환하는 task로서, 의미론적인 내용은 보존하지만 Style만 변경해야 한다.
  • TST의 문제점: 병렬 데이터의 부족
    • TST 학습 방법: Keyword replacement, Auto-encoder Seq-to-Seq 사용
  • 본 논문의 main contribution
    • 문장의 Semantic을 유지하며 bias가 없는 텍스트의 생성을 할 수 있는 모델 개발, 비병렬 데이터로 학습
    • Keyword 교체와 latent information의 결합으로 fluency 성능이 상승하였고, latent content의 생성과 attribute token의 식별 방법의 새로운 접근 방법을 제공했다.

2. Style Transfer

  • Text에 image의 style transfer 기법을 그대로 사용하는 것은 어렵다. (Text data의 style과 content가 image보다 훨씬 긴밀하게 연결되어 있기 때문에)

2.1 Auto-encoder sequence-to-sequence models

  • Adversarial 방법을 선택하여 representation과 style을 분리한다.
  • 다양한 텍스트를 구사해야 하는 분야에서 효과적일 수 있다.

2.2 Explicit Style Keyword Replacement

  • 일반적으로 Attribute mark를 식별하고, mark를 제거한 후 적절히 교체할 만한 단어를 예측하는 방식
  • 입력 텍스트의 일부만 삭제하기 때문에 훨씬 많은 정보를 보존할 수 있다.

 

3. Methodology

  • 모델의 목표는 어떠한 편향된 텍스트든 중립적인 버전으로 변환하는 것
  • 중립적인 단어인 $s_a$와 편향된 스타일을 나타내는 $s_b$의 두 속성을 가정하고, $s_b$에 속하는 text sample $x_b$가 주어졌을 때, 목표는 $x_b$를 $x_a$로 변환하는 것이다.
  • 이 때, $x_a$는 스타일 $s_a$에 속하지만 $x_b$와 동일한 의미를 가진다.

  • 모델은 Figure 1의 네 가지 구성 요소로 이루어져 있고, Figure 2는 mechanism의 예시이다.

 

3.1 Attribute Masker

  • 편향적인 단어를 [MASK] 심볼로 마스킹하고, 결과는 Token embedder의 input이 된다.
  • LIME을 사용하여 attribute를 식별한다.
    • LIME의 main contribution: Input을 조금 바꿨을 때, 모델의 예측값이 크게 바뀌게 된다면 변수의 중요도가 높다.
  • Attribute를 식별하기 위해 LIME을 사용하려면 편향을 식별하는 Classifier $f$를 먼저 학습해야 한다. (편향과 중립이 label된 data를 사용하여 학습)
  • 이후, LIME은 classifier $f$의 decision boundary를 근사하고, 분류 결과에 미치는 영향을 기반으로 가중치를 할당한다.
  • 가중치를 사용하여 Masking된 단어를 선택하기 위한 threshold $\mu $를 설정하고 [MASK] 토큰으로 대체한다.

3.2 Token Embedder

  • Masking된 token들에 대한 token embedding을 생성한다.

$$W = \{w_1, ..., w_n\} \in R^{n\times d}$$

  • $n$개의 token에 대한 $d$의 dimension을 가진 token embedding matrix
  • $d=768$

3.3 Latent-content Encoder

  1. Masking되지 않은 text를 input으로 받아 latent vector로 encoding
  2. Bias style로부터 latent contect representation 분리
  3. 편향이 있는 원본 입력 $x_b$를 input으로 받아 target $\hat{z}$를 생성
  4. $x_b$가 입력으로 주어지면 각 토큰 $t_i \in x_b$에 대해 token embedding $v_i \in R^d$를 생성
  5. Token embedding의 집합 $V = \{v_1, ..., v_n\} \in R^{n\times d}$는 mean pooling되어 $\hat{z} \in R^d$를 생성
  6. $x_b$와 동일한 의미를 가지지만 편향은 가지지 않는 $\hat{z}$를 원하기 때문에 dual objective training을 통해 $\hat{z}$의 편향 제거
  7. Latent encoder와 source content encoder의 input은 $x_b$로 동일하고, output은 각각 $\hat{z}$와 $z$의 유사도를 측정하기 위해 cosine similarity를 사용 ($\mathcal{L}_{sim}=\frac{1}{N}\sum_{j=1}^{N}(cosine\_similarity(\hat{z}_j,z_j)-1)^2$)
  8. Bias detector는 $\hat{z}$를 input으로 받아 $\hat{z}$의 확률 반환
  9. Latent content encoder는 항상 중립으로 분류되는 $\hat{z}$를 생성할 수 있도록 학습해야 함
  10. 이를 위해 cross-entropy loss를 최소화함 $\mathcal{L}_{acc_{\hat{z}_j}}=-\frac{1}{N}\sum_{j=1}^{N}logP(s_a|\hat{z}_j)$
    • $P(s_a|\hat{z}_j)$: $\hat{z}$가 중립일 확률
  11. $\hat{z}$와 $z$의 semantic 유사도, bias classifier의 loss를 결합하여 최종 $LCE\_loss=(1-\lambda )\mathcal{L}_{sim}+\lambda \mathcal{L}_{acc_{\hat{z}_j}}$ 계산

3.4 Token Decoder

  • 각 token embedding과 latent content representation의 평균을 계산하여 새로운 token 생성
  1. Token decoder는 embedder의 W와 latent content encoder의 $\hat{z}$을 input으로 받음
  2. $w_i$와 $\hat{z}$의 가중 평균을 통해 $\hat{w_i}$를 구함
  3. $\hat{w_i}$를 만든 후 token decoder는 vocab의 모든 token에 대한 확률 분포를 계산하여 올바른 token 예측 $\mathcal{L}_{acc_{\hat{z}_j}}=-\sum_{i=1;t_{\pi _i}\in T_\Pi }^{n}logP(t_{\pi _i}|\hat{w}_{i \Pi})$
  4. 이 과정에서 output $x_a$가 중립을 보장하기 위해 pre-trained classifier 사용
  5. 동일하게 Dual objective를 사용하여 $TD\_loss=(1-\gamma )\mathcal{L}_{dec}+\gamma \mathcal{L}_{acc_{x_a}}$ 계산
  6. $x_a$는 one-hot encoding으로 구성된 discrete token이기 때문에 미분이 불가능하고, 따라서 soft sampling 접근 방식을 사용 $t_{\pi _i}\sim softmax(o_t/\tau )$
    • soft sampling: 각 단어에 대한 가중치를 계산해 다음 단어 선택

 

4. Experiments

  • 본 모델은 성별 편향에 한정한다.
  • 다른 도메인에서도 적용 가능성을 보이기 위해 성별 label을 가린 실험 진행
  • 편향을 완화하는 대신 여성 저자의 텍스트를 남성 저자의 텍스트로 보이도록 만듦
  • 영어 Corpus로 실험 진행

4.1 Dataset

  • Jigsaw, Yelp 두 데이터셋을 이용해 실험 진행

4.1.1 Jigsaw dataset

  • Demographic group에 대한 편향 label dataset
  • Gender bias label이 0.5 이상이면 bias, 0.5 미만이면 중립으로 labeling

4.1.2 Yelp dataset

  • 레스토랑 리뷰 데이터셋
  • 작성자 성별 가리기 실험에 사용되는 짧은 문장으로 구성\

4.2 Evaluation models and metrics

  • 모델 평가는 총 6개, Delete-only, Delete-and-retrieve, B-GST, G-GST, CAE, BST 에서 진행되었고, 이들은 모두 Mitigating method가 적용되지 않는 TST 모델
  • 총 3가지 지표에서 평가 진행
    1. Style transfer accuracy
      • 편향 스타일에서 중립 스타일로 성공적으로 전환되었는지 알아보는 지표
      • 텍스트가 성공적으로 전환되었는지 예측하기 위해 모델 훈련시와는 다른 데이터셋으로 학습된 BERT Classifier 사용
    2. Content preservation
      • 원본 텍스트 임베딩과 전환된 텍스트 임베딩 사이의 cosine 유사도 사용
      • BERT의 개선 모델인 SBERT를 사용해서 semantic적으로 의미있는 문장을 생성하도록 함
    3. Fluency
      • Perplexity를 사용해 fluency 측정

4.3 Results and discussion

  • 표 1에서 볼 수 있듯이, 모든 지표에서 최상의 결과를 보이는 모델은 없었다.
  • 본 논문에서 제시한 모델은 다른 모델보다 CP, PPL 부분에서 앞섰다.
  • 표 2에서 성별 가리기 실험을 진행한 결과, 한 가지 지표에서 뛰어나면 다른 지표에서는 점수가 떨어지는 결과를 확인할 수 있었다.
  • Accuracy와 preservation의 trade-off가 있었다.
  • 본 논문에서 제시한 모델은 모든 지표에서 균형을 보였다.

 

6. Conclusion

  • Style transfer 모델이 bias를 줄이는 데 도움이 된다.
  • Explicit keyword의 교체가 latent content representation과 결합하여 TST 모델의 content preservation을 향상할 수 있음을 보였다.
  • 이러한 연구를 다른 언어나 Adversarial learning과 같은 방법에서도 적용할 수 있을 것이다.
profile

범블로그

@이범석

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!