NL-130, Sampling Matters! An Empirical Study of Negative Sampling Strategies for Learning of Matching Models in Retrieval-based Dialogue Systems, EMNLP-2019

◼ Comment

  • 논문의 이 아이디어는 비교적 심플하고 적용해보기 괜찮아보인다.
    • 또한 이 테스크가 아닌 다른 테스크들에도 적용해볼 수 있는 아이디어라고 생각한다.
    • 이보다 먼저 읽은 NL-129보다 더 설득력이 있다고 생각한다.
  • 심플 아이디어는 다음과 같다.
    • 학습할 네거티브 샘플을 기존에는 랜덤 샘플링을 한다.
    • 랜덤 샘플링 중에서도, negative sample을 한 번 뽑고 고정하는 형식이다.
    • 하지만 이는 단점들이 있으니, 동적으로 하겠다.
    • 1. 동적 랜덤 샘플링 > 정적 랜덤 샘플링 (마치 BERT -> RoBERTa 할 때 mask token을 바꾸는 느낌)
    • 2. 정적 랜덤 샘플링 > minimum / maximum 샘플링
      • 이는, 학습 시점에서, 후보들중 가장 난이도가 쉬운/어려운 샘플링으로 negative sample을 선택한다는 것이다.
      • 이때 negative sample pool은 각 epoch마다 context에 해당하는 10개씩 pool을 뽑는다고 한다. (동적)
      • 하지만, 오히려 정적인것보다 안좋다.
    • 3. semi-hard / decay-hard 샘플링 
      • 이 논문의 핵심 방법으로 학습 시점 어려운 난이도를 가진 negative sample을 선택하겠다는 것인데 
      • maximum처럼 난이도 제한이 없는게 아니라, 난이도 제한을 시간에따라 주는 개념이다.
      • 먼저 읽은 NL-129의 커리큘럼 러닝이 이와 비슷한거 아닐까 싶은 생각이다.
  • 추가적으로, negative sample은 여기서 하나만 선택하는데, 여러 개 선택하는 거에 따른 성능차이도 궁금하긴하다.

0 Abstract

  • 우리는 어떻게 negative examples들을 학습 세트로 자동으로 구축해서 모델을 retrieval-based 대화 시스템에서 효과적인지를 연구한다.
  • 학습에서 매칭 모델들에게 동적으로 negative examples을 적용하는 아이디어를 따라서, 우리는 4가지 전략을 고려한다.
    • minimum sampling, 
    • maximum sampling, 
    • semi-hard sampling, 
    • decay-hard sampling. 
  • 두 가지 벤치마크들에서 3가지 매칭모델들로 실험한 연구들은 널리 사용되는 random sampling 전략과 비교해서, 앞의 2개 전략들은 성능이 하락하고, 뒤의 2개들은 두 개의 벤치마크들에서 모든 모델들에 대해 성능 향상을 가져온다.

1 Introduction

  • 이 연구에서, 우리는 대화 시스템을 기반으로한 검색을 실행하는 접근법으로써 response selection의 문제를 연구한다.
  • response selection의 key step은 conversation context와 response candidate 사이의 매칭 정도를 측정하는 것이다.
  • 기존의 연구들은 정교한 뉴럴 구조로 매칭 모델을 구성하는데 초점을 맞추나, 데이터에서는 그러한 구조를 효과적으로 학습하는데는 집중하지 않는다.
  • 반면에, 복잡한 뉴럴 구조를 학습하는 것은 많은 양의 고품질 학습 데이터가 필요하다는 것은 잘 알려져 있다.
    • 반면에, 사람이 레이블링하는 것은 비싸고 힘들기 때문에, 대부분의 기존의 연구는 간단히 heuristic하게 학습 세트를 구축한다.
    • 여기서 사람 응답은 positive examples로 갖누되고 negative response candidates들은 랜덤샘플링된다.
  • 이러한 학습 세트는 아마도 많은 false negatives와 true posivies들과 구별하기 쉬운 사소한 true negatives가 포함될 수 있다.
    • 즉 positive인데 negative 세트에 있는 것들이 있고
    • negative로 활용될 수는 있으나 positive와 구별하기 쉬운 세트들이 있다는 것
  • 이러한 결과로, 향상된 구조의 모델들은 오직 학습 이후에 sub-optimal performance에 도달할 수 밖에 없다.
  • 이 논문에서, 새로운 구조를 구성하는 대신에, 우리는 어떻게 기존의 매칭 모델을 더 나은 학습 방법으로 성능을 향상할 수 있는지 조사한다.
  • 학습 방법은 loss functions의 선택과 학습 데이터의 구성으로 구성되고, 데이터가 종종 모델의 성능에 종종 중요하기 때문에 우리는 특별히 automatic training data 구성에 관심을 갖는다.
  • 학습 데이터 구성의 key 문제는 어떻게 적절한 negative examples을 선택하냐이고, 우리의 idea는 negative samples가 다른 학습 stages에서 매칭 모델에 적용되야한다는 것이다.
  • 이 아이디어를 따라서, 우리는 4가지 negative sampling 전략들을 고려하고, minimum sampling, maximum sampling, semi-hard sampling, and decay-hard sampling로 부른다.
  • 앞의 두 전략에서는 (minimum, maximum), response ancdidate는 현재 step에서 minimal 혹은 maximal matching score로 매칭되는 response candidate가 다음 step에서 negative examples로써 pool에서 선택된다.
    • 나중 두 개의 전략에서는 (semi-hard, decay-hard), 우리는 현재 매칭모델에 대해 얼마나 어려운지를 고려하여 negative examples을 선택한다.
  • semi-hard 샘플링은 적절한 난이도를 가진 candidates가 false negatives와 trival true negatives을 피하는 것을 선호한다.
  • deacy-hard 샘플링은 점진적으로 negative samples의 어려움을 학습되면서 증가시킨다.
  • 우리는 샘플링 전략들을 두 가지 벤치마크들에서 다른 복잡한 레벨을 가진 3가지 매칭 모델들에 대해서 비교한다.
  • 실험 결과들은 minimum sampling과 maximum sampling들이 random sampling보다 떨어지고, semi-hard sampling과 decay-hard sampling은 데이터세트들 모두에서 모든 모델들에 대해 일정한 성능 향상을 보여준다. 
  • 우리의 컨트리뷰션은  (1) 두 가지 벤치마크를 사용하여 서로 다른 샘플링 전략을 체계적으로 비교합니다.  (2) 일반적으로 벤치마크에서 기존 매칭 모델의 성능을 향상시킬 수 있는 semi-hard 및 decay-hard negative 샘플링 전략의 제안입니다.

2 Learning a Matching Model for Response Selection

  • 은 학습 데이터세트고, 여기서 ci는 conversation context이다. 모든 $j \in \{1,...,n^{+}_{i}\}$에 대해서, $r^{+}_{i,j}$는 postivie response candidate로 $c_i$에 적절한 응답을 한다.
  • 그리고 모든 $k \in \{1,...,n^{-}_{i}\}$에 대해서, $r^{-}_{i,k}$는 negative response candidate로 모델에 해당하는 errors을 가리키는데 사용된다.
  • 그리고나서, response selection의 학습 문제는 D로부터 매칭 모델 g(·, ·)을 추정하고, 이는 다음과 같이 형식화 된다.
    • 여기서 $\Theta$는 g(·, ·)의 파라미터들이고 L(·, ·)은 loss function이다.
    • 식보면, positive response와 +1이 매칭되도록 하고, -1과 negative samples이 매칭되도록 하는 loss식임.
  • 실제로 L(·, ·)은 보통 cross entropy로 세팅되고, 남아있는 문제는 (1) 어떻게 g(·, ·)을 정의하냐 (2) 대규모 인간 라벨링이 불가능하다는 점을 감안할 때 어떻게 D을 구축하냐이다.
  • 기존의 연구는 문제(1)를 해결하려고 노력을 해왔다. 
    • 하지만 오직 간단한 휴리스틱하게 문제(2)를 적용한다.
    • human responses을 오직 $r^{+}_{i,j}$으로 간주하고 랜덤하게 샘플링된 responses가 $r^{-}_{i,k}$가 된다.
  • 이러한 휴리스틱한 문제는 어떠한 responses가 $r^{-}_{i,k}$로 샘플링될지 보장할 수 없다는 것이다.
    • 그들 중 일부는 false negatives일수도 있고, 어떤 것은 인식하기에 너무 사소한 것일수 있다.
    • 랜덤샘플링의 명백한 단점은 우리가 다음 섹션에서 자세히 설명할 것처럼 훈련 데이터 구성에서 더 나은 negative sampling 전략을 추구하도록 동기를 부여합니다.

3 Model Adaptive Negative Sampling

  • 우리의 아이디어는 동적으로 학습에서 negatvie examples을 매칭모델들에 적용한다.
  • 아이디어는 사람이 어떻게 knowledge을 학습하는지에서부터 영감받는다.
    • 사람은 사람의 학습 재료들을 그들의 학습 프로세스에 따라 조정한다.
  • 이러한 아이디어에서 우리는 4가지 sample negative examples을 고려한다.
  • Minimum sampling:
    • (Rao et al., 2016) answer selection에 사용된 전략이고, 여기에서 우리는 오픈 도메인 대화 시스템에서 response selection에 적용한다.
    • $\hat{g}(\cdot, \cdot)$은 t번째 미니배치로부터 얻은 매칭모델이라하고나면, (t+1)번째 미니매치에서, 우리는 $\hat{g}(\cdot, \cdot)$에따른 context c에대해 쉬운 negative example을 시도한다.
      • 여기서 $R^{-}$은 c에대한 negatve examples의 풀이다.
      • 즉, 바로 직전 step까지 학습된 모델로 negative sample의 풀에서 매칭점수가 가장 적은 거를 negative example로 선택한다는 것이다.
      • 의미를 생각해보면 쉬운 negative sample을 고르는 개념이다.
  • Maximum sampling: 
    • minimum sampling과 유사하게, 전략은 answer selection (Rao 2016)에서 가져왔고, 가장 어려운 예제를 다음과 같이 고른다.
      • 즉 매칭점수가 가장 높은 샘플로, 가장 어려운 negatve example을 고르는 개념
  • Semi-hard sampling:
    • 앞의 두 전략은 아마 너무 공격적이다.
    • 가장 쉬운 negative example은 새로운 정보를 $\hat{g}(\cdot, \cdot)$에 주기 어려울 것이고, 
    • 가장 어려운 negative example은 아마 false negative일 수 있다.
    • 위의 두 케이스를 피하기 위해, 우리는 semi-hard sampling 전략을 제안하고, 이는 적절한 난이도를 가진 negative sample을 선택하는 것이다.
    • 수학적으로, 전략은 다음과 같이 정의된다.
      • c에대한 r+은 postive response candidate이고, α는 상수이다.
      • 식 4에서, 우리는 α을 margin으로써 활용해서 선택된 r-와 r+ 사이의 매칭 정도의 distance을 컨트롤한다.
      • $\hat{g}(\cdot, \cdot) - \alpha$에 가까운 매칭 정도를 가진 것이 negative example로 선택된다.
    • 가정: $\alpha$=0.2, r+매칭점수=0.8
      • |0.8-negative-0.2|가 가장 작은 negative가 선태됙야한다.
      • 즉 negative 매칭점수가 0.6에 가까운 것이 선택될 것이다.
      • 그러면 0.5와 0.7은 같은 순위인가?
      • 개념적으로는 0.5가 선택되어야할 거 같다. (postivie가 0.8이므로) 
      • 즉, r+보다는 매칭점수가 낮으나, r+ 점수와는 margin만큼 떨어져있는 negative sample을 고르겠다는 의미
  • Decay-hard sampling:
    • 다른 스테이지에서, 사람의 학습 재료의 난이도는 점점 증가시키는 사람의 행동을 모방해서, 
    • 우리는 decay-hard sampling 전략을 제안하고, 이는 식 4의 margin을 학습이 진행되면서 점차 감소시킨다.
    • 구체적으로, 우리는 2가지 방법을 고려한다. (exponential decay, linear decay)
    • 즉 margin이 커질수록, 더욱 어려운 샘플을 고려하게 된다.
    • 첫 번째 방법에서, margin은 exponential 속도로 줄어든다.
      • t번째 미니매치에서 margin $\alpha_t$는 다음과 같이 정의된다.
      • 여기서 $0 < \varphi < 1$이고 $-1 < \omega < 0$인 파라미터들이다.
    • 두 번째 방법에서, margin은 학습 steps에 따라 선형적으로 작아지고, 다음과 같다.
      • 여기서 $0 < \theta < 1$이고 $-1 < \lambda< 0$인 파라미터들이다.
      • 우리는 주의깊게 $\theta$와 $\lambda$을 선택해서 $\alpha_t>0$이 되도록 한다. (모든 t에 대해서)
      • T는 iteration의 최대 수를 의미한다.
  • 위의 설명들은 각 context에대해 오직 하나의 negative example을 pool에서 고르는 것이다.
  • 이것은 벤치마크들에서 랜덤 샘플링과 공정한 비교를 위한 것이다.
  • 기존의 대부분 연구에서는 학습중에 context당 오직 한 개의 negative example을 활용한다.
  • 이것은 여러 negative examples을 샘플링하도록 전략을 확장하기 쉽다. (예시로 semi-hard sampling에서 $\hat{g}(c, r^{+})-\alpha$에 가까운 매칭 스코어를 가지는 top l examples을 고르는 것이 있다.)

4 Experiments

  • We compare different sampling strategies on two benchmarks. 

4.1 Experimental Setup

  • 우리가 사용하는 첫 번째 데이터 세트는 Ubuntu Forum의 채팅 로그에서 수집한 Ubuntu Dialogue Corpus(Lowe et al., 2015)입니다.
  • 우리는 Xu et al.에서 제공한 버전을 사용합니다. (2017).
  • 데이터에는 훈련을 위한 100만 쌍의 컨텍스트-응답 쌍과 검증 및 테스트를 위한 050만 쌍이 포함되어 있습니다.
  • 다음(Lowe et al., 2015)에 따라 n명의 후보(Rn@k)에서 위치 k에서의 회상을 평가 메트릭으로 사용합니다.
  • Ubuntu 데이터 외에도 Douban Conversation Corpus(Wu et al., 2017)를 실험 데이터 세트로 선택합니다.
  • 데이터는 Douban 그룹에서 수집한 멀티턴 중국어 대화로 구성됩니다.
  • 훈련을 위한 100만 쌍의 컨텍스트 응답 쌍, 검증을 위한 5만 쌍, 테스트를 위한 6,670 쌍이 있습니다.
  • 다음(Wu et al., 2017)에 따라 평가 메트릭으로 Rn@ks, 평균 평균 정밀도(MAP), 평균 상호 순위(MRR)(Voorhees et al., 1999) 및 위치 1에서의 정밀도(P@1)를 사용합니다. 

4.2 Matching Models

  • 다음의 매칭 모델들이 선택되었다.
  • Dual-LSTM:
    • 모델은 LSTM으로 컨텍스트와 응답 후보를 개별적으로 인코딩한 다음 두 LSTM의 최종 상태를 기반으로 일치 점수를 계산합니다.
  • SMN(Wu et al., 2017): 
    • 모델은 컨텍스트의 각 발언이 응답과 상호 작용하도록 하고 상호 작용 행렬을 CNN과 일치하는 벡터로 형성합니다.
    • 매칭 벡터는 최종적으로 매칭 점수로 RNN과 함께 누적됩니다.
  • DAM(Zhou et al., 2018): 
    • 모델은 SMN과 유사한 방식으로 매칭을 수행하지만 stacked self-attention 및 cross-attention이 있는 컨텍스트 및 응답 후보를 나타냅니다.
  • 랜덤샘플링의 복잡성과, 성능 측면에서 DualLSTM<SMN<DAM이다.
  • 베이스라인에 관하여, 우리는 두 가지 랜덤 샘플링 전략을 고려한다.
    • 첫 번째는 전체 학습 과정에서 고정된 negative examples을 사용하는 전략이다.
      • 이것은 section 4.1에서 설명된 데이터로 매칭모델이 학습된 기존 모델들이 어떻게 작동하는 지와 우리는 model-base라고 표기한다.
    • 두 번째는 각 미니배치에서 동적 전략으로, negative example이 R-에서 랜덤샘플링된다.
      • 이것은 적절한 샘플링 전략을 모델링하는 단순화로, 우리는 이 전략으로 학습된 모델을 Model-Rand라고 한다.
  • 우리는 minimum sampling, maximum sampling, semi-hard sampling, exponential decay-hard sampling, and linear decay-hard sampling으로 학습된 모델링을 각각 Model-Min, Model-Max, Model-Semi, Model-EDecay, and Model-LDecay으로 부른다.
  • 모든 모델들은 validation set에서 Tensorflow로 실행되었다.
  • 우리는 Model-Base가 (Zhou et al., 2018) 보고된 대로 두 데이터 세트 모두에서 성능을 달성하는지 확인합니다.

4.3 Implementation Details

  • static 랜덤 샘플링에서, 우리는 두 데이터에대해 퍼블리싱된 학습 세트를 사용한다.
  • 남아있는 샘플링 전략에서는, 우리는 각 context에 대해 10개의 responses을 학습 세트를 negative examples의 pool로해서 각 epoch마다 샘플링한다.
    • 매 번, one response는 context에서부터 negative example로 샘플링된다.
  • 다른 샘플링 전략으로 학습된 모델들은 같은 validation set으로부터 튜닝되고 같은 test sets로부터 평가된다. (즉, original released sets)
  • 우리는 semi-hard sampling에서 α을 {0.01, 0.03, 0.05, 0.07, 0.09, 0.1, 0.3, 0.5}에서 변경하고 0.07을 선택한다.
  • decay-haed sampling에서는 우리는  ω, ϕ, λ, and θ을 -1.5e-5, 0.1, -8.75e-7, and 0.1으로 세팅한다.

4.4 Evaluation Results

  • 테이블 1은 두 데이터세트에 대한 평과 결과들을 리포트한다.
  • 우리는 semi-hard 샘플링과 decay-hard sampling가 3가지 매칭모델들이 두 데이터세트에서 향상시킴을 확인한다.
  • minimum sampling과 maximum sampling은 랜덤 샘플링보다 일관적으로 나쁘고, 이는 우리가 section 3에서 설명한 것처럼 두 전략들은 너무 공격적임을 입증한다.
  • decay-hard 샘플링은 semi-hard 샘플링보다 살짝 나쁘다.
    • 그 이유는 아마도, false negatives가 학습 후반부에 섞여서일 수 있을 것으로 생각된다. 
    • decay-hard 샘플링은 alpha가 시간지날수록 작아지고, 난이도가 어려운 것으로 점점 학습한다는 개념 = false negative가 섞일 확률 증가
  • 동적 랜덤 샘플링은 static random 샘플링보다 더 나은데, 왜냐하면 모델들이 pool에서 negative examples을 좀 더 활용할 수 있기 때문이다.
  • 제안된 샘플링 전략들은 훈련시간이 더 있음에도 불구하고, 예측 경과 시간이 바뀌지 않는다. 
    • 반면에, 우리는 두 가지 세트에서 향상이 일어남을 확인한다.
    • 따라서, 우리는 향상을 시키기 위해, 학습 시간을 좀 더 쓰는 것이 가치있음을 믿는다.
    • 학습시간은 좀 늘어나나, 인퍼런스 타임은 그대로란말
  • 게다가, 다른 샘플링 전략들과 비교하여, 우리는 하이퍼파라미터 α가 semi-hard sampling의 성능에 어떻게 영향이 있는지 관심이 있었다.
  • 그림 1은 SMN, DAM의 성능이 다른 maring α에 따른 변화이다.
  • 우리는 무 도멜들에 대해 비슷한 트렌드를 관측한다.
    • 먼저 margin이 0.07에 도달할 때까지 단조롭게 증가하고 margin이 증가하면 감소합니다.
    • 특별히, 두 모델들의 semi-hard 샘플링 전략의 성능은 margin이 0.5에 도달하면 랜덤 샘플링보다 나쁘다.
    • 이 현상에 대한 이유는 
      • margin이 작으면, semi-hard 샘플링은 maximum sampling과 비슷하고 학습중에 false negative을 도입할 수 있고
      • margin이 크면, semi-hard 샘플링은 maximum samplinㅎ가 비슷하고, 사소한 샘플들을 학습에 제공하는 경향이 있기 때문이다.

5 Related works

  • 네거티브 샘플링 전략은 많은 기계 학습 작업에서 연구되었습니다. 
  • 컴퓨터 비전 분야에서 Faghri(2017)는 하드 네거티브를 연구하고 이미지 캡션 검색 작업에서 일반적인 손실 함수에 대한 간단한 변경을 소개합니다.
  • Guo(2018)는 이미지의 잠재 요소에 따라 위반 요구 사항을 충족할 가능성이 가장 높은 네거티브 예제를 선택하는 빠른 네거티브 샘플러를 제안합니다.
  • 자연어 처리 분야에서 Kotnis와 Nastase(2017)는 네거티브 샘플링 전략이 지식 그래프의 링크 예측 성능에 미치는 영향을 분석합니다.
  • Saeidi(2017)는 맞춤형 표본 전략이 문서 검색 작업의 성능에 미치는 영향을 연구했습니다. 
  • Rao(2016)은 답변 선택을 위한 쌍별 순위 모델에서 가장 유익한 부정적인 샘플을 선택하기 위해 세 가지 부정적인 전략을 사용합니다.
  • Xu(2015)는 컨볼루션 신경망에서 주체와 객체 할당을 개선하기 위해 간단한 네거티브 샘플링 전략을 도입했습니다.
  • 우리가 아는 한, 이것은 다중 회전 검색 기반 대화 시스템에서 매칭 모델 학습을 위한 네거티브 샘플링 전략에 대한 실증 연구의 첫 번째 작업으로, 검색 기반 대화 시스템 학습에서 향후 작업을 계발할 수 있습니다.

6 Conclusions 

  • 우리는 minimum 샘플링, maximum 샘플링, semi-hard 샘플링, deacy-hard 샘플링을 4가지 adaptive negative sampling 전략을 모델링으로 검색기반 대화시스템에서 매칭모델을 학습한다.
  • 두 가지 벤치마크들에 대한 세가지 모델들의 평과 결과들은 minimum 샘플링과 maximum 샘플링은 랜덤 샘플링보다 나쁘고, semi-hard 샘플링과 deacy-hard 샘플링은 두 가지 데이터세트에대해 모델의 성능을 향상시킨다.
  • 미래에, 우리는 우리의 negative sampling 전략들을 다른 테스크들에 확장시킬 것이다.
Reference

댓글