ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Day81] 슬로우 페이퍼 Improving Language Understanding by Generative Pre-Training
    AIFFEL Life 2020. 12. 26. 21:03

    월요일 아침은 항상 슬로우 페이퍼로 시작합니다. 오늘은 Improving Language Understanding by Generative Pre-Training라는 제목의 논문 (www.cs.ubc.ca/~amuham01/LING530/papers/radford2018improving.pdf)인데요. 이 논문을 읽으면서 적은 메모를 아래에 공유합니다.

    Improving Language Understanding by Generative Pre-Training

    Natural language understanding comprises a wide range of diverse tasks such as textual entailment, question answering, semantic similarity assessment, and document classification. Although large unlabeled text corpora are abundant, labeled data for learning these specific tasks is scarce, making it challenging for discriminatively trained models to perform adequately. We demonstrate that large gains on these tasks can be realized by generative pre-training of a language model on a diverse corpus of unlabeled text, followed by discriminative fine-tuning on each specific task. In contrast to previous approaches, we make use of task-aware input transformations during fine-tuning to achieve effective transfer while requiring minimal changes to the model architecture. We demonstrate the effectiveness of our approach on a wide range of benchmarks for natural language understanding. Our general task-agnostic model outperforms discriminatively trained models that use architectures specifically crafted for each task, significantly improving upon the state of the art in 9 out of the 12 tasks studied. For instance, we achieve absolute improvements of 8.9% on commonsense reasoning (Stories Cloze Test), 5.7% on question answering (RACE), and 1.5% on textual entailment (MultiNLI).

    자연어 이해는 넓은 범위의 다양한 작업이다, 텍스튜얼 인테일먼트, 질의응답, 의미적유사성 평가, 문서 분류 등.

    라벨 붙지 않는 텍스트 코퍼스들은 풍부하고, 라벨된 데이타

    1 Introduction The ability to learn effectively from raw text is crucial to alleviating the dependence on supervised learning in natural language processing (NLP). Most deep learning methods require substantial amounts of manually labeled data, which restricts their applicability in many domains that suffer from a dearth of annotated resources [61]. In these situations, models that can leverage linguistic information from unlabeled data provide a valuable alternative to gathering more annotation, which can be time-consuming and expensive. Further, even in cases where considerable supervision is available, learning good representations in an unsupervised fashion can provide a significant performance boost. The most compelling evidence for this so far has been the extensive use of pretrained word embeddings [10, 39, 42] to improve performance on a range of NLP tasks [8, 11, 26, 45].

    효과적으로 날 텍스트로부터 학습하는 능력은 지도학습의 의존을 줄이는데 중요하다, 자연어처리에 있어서. 대부분의 딥러닝 방법은 상당한 양의 수작업 라벨 데이타가 필요하고, 이는 많은 도메인으로의 적용성을 제한하고 노테이션된 자원의 부족으로 고생한다. 이 상황에서, 모델들은 라벨 붙지 않는 데이타로 부터 언어적 정보를 활용할 수 있고 이 모델들은 가치있는 대안을 제공하여 더 많은 어노테이션을 수집할 수 있는데 이는 시간 소비가 많고 비싸다. 게다가, 상당한 지도학습?이 가능한 경우에도, 비지도 방식으로 좋은 표현을 학습하는 것은 상당한 성능 향상을 제공한다. 이에 대한 가장 강력한 증거는 지금까지 볼때, 광범위한 사전학습된 단어 임베딩을 사용하여 일정 범위의 자연어 처리에 대해 성능 향상시켰다.

    Leveraging more than word-level information from unlabeled text, however, is challenging for two main reasons. First, it is unclear what type of optimization objectives are most effective at learning text representations that are useful for transfer. Recent research has looked at various objectives such as language modeling [44], machine translation [38], and discourse coherence [22], with each method outperforming the others on different tasks.1 Second, there is no consensus on the most effective way to transfer these learned representations to the target task. Existing techniques involve a combination of making task-specific changes to the model architecture [43, 44], using intricate learning schemes [21] and adding auxiliary learning objectives [50]. These uncertainties have made it difficult to develop effective semi-supervised learning approaches for language processing.

    라벨붙지 않는 텍스트로부터 단어수준 정보이상으로 활용하는 것은 그러나, 2개의 이유로 어렵다. 첫번째, 어떤 종류의 최적화 ㅁ고표가 가장 효과적인지 (트랜스퍼 위해 유요한 텍스트 표현을 학습하는데 있어서). 최근 연구는 다양한 목표 (언어 모델, 기계번역, 디스코스 코히어런스,)를 봤고, 각각의 방법은 여러작업에서 성능상 앞질렀다. 두번째, 가장 효과적인 방법에 대한 합의가 없다. (이 학습된 표현을 대상 작업으로 이전하기 위한) 기존 방법은 모델 아키텍처에 대한 작업 특정한 변화의 조합을 포함하며, 복잡한 학습 스킴을 사용하고 보조적인 학습 목표를 추가한다. 이런 불확실성은 언어 처리를 위한 효과적인 준-지도 학습 방법을 개발하는것을 어렵게 해왔다.

    In this paper, we explore a semi-supervised approach for language understanding tasks using a combination of unsupervised pre-training and supervised fine-tuning. Our goal is to learn a universal representation that transfers with little adaptation to a wide range of tasks. We assume access to a large corpus of unlabeled text and several datasets with manually annotated training examples (target tasks). Our setup does not require these target tasks to be in the same domain as the unlabeled corpus. We employ a two-stage training procedure. First, we use a language modeling objective on the unlabeled data to learn the initial parameters of a neural network model. Subsequently, we adapt these parameters to a target task using the corresponding supervised objective

    이 논문에서, 우리는 언어 이해 작업을 위한 (비지도 사전학습과 지도 미세튜닝의 조합으로) 준-지도 방법을 탐색한다. 우리 목표는 전체적인 표현을 학습하고 적은 적응으로 광범위한 작업에 이전하는 것이다. 우리는 라벨붙지 않는 텍스트의 큰 코퍼스와 여러 데이타셋에 접근하는 것을 가정한다. (수작업으로 노테인션된 학습 예제로 (타겟 작업)). 우리의 셋업은 이런 대상 작업들이 라벨되지 않은 코퍼스와 같은 도메인에 있길 요구하지 않는다. 우리는 2단계 학습 절차를 사용한다. 먼저, 우리는

    2 Related Work Semi-supervised learning for NLP Our work broadly falls under the category of semi-supervised learning for natural language. This paradigm has attracted significant interest, with applications to tasks like sequence labeling [24, 33, 57] or text classification [41, 70]. The earliest approaches used unlabeled data to compute word-level or phrase-level statistics, which were then used as features in a supervised model [33]. Over the last few years, researchers have demonstrated the benefits of using word embeddings [11, 39, 42], which are trained on unlabeled corpora, to improve performance on a variety of tasks [8, 11, 26, 45]. These approaches, however, mainly transfer word-level information, whereas we aim to capture higher-level semantics. Recent approaches have investigated learning and utilizing more than word-level semantics from unlabeled data. Phrase-level or sentence-level embeddings, which can be trained using an unlabeled corpus, have been used to encode text into suitable vector representations for various target tasks [28, 32, 1, 36, 22, 12, 56, 31].

    자연어 처리를 위한 준-지도 학습

    우리의 작업은 광범위하게 봤을때, 자연어를 위한 준-지도 학습 범위에 해당한다. 이 패러다임은 중요한 이점을 도출하는데, 시퀀스 라벨링 이나 텍스트 분류와 같은 작업에 대해 적용함으로써... 초기 접근방법은 라벨붙지 않는 데이타를 사용하고 단어수준이나 문장수준 통계를 계산하였고, 이는 지도 모델에서는 피처로 사용되었다. 지난 몇년간, 연구자들은 워드 임베딩을 사용한 장점을 보여주었고, 이는 라벨 되지 않은 코퍼스에서 학습되어, 다양한 작업에서 성능향상을 보여줬다. 이런 접근방법들은, 그러나, 주고 단어수준 정보를 트랜스퍼하고, 반면에 우리는 더 높은 수준의 의미를 얻어내려고 목표했다.

    최근 접근 방법은 학습과 라벨되지 않은 데이타로부터의 단어수준 의미이상을 사용하는 것을 조사하여왔다. 구문 수준 혹은 문장 수준 임베딩은 라벨되지 않은 코퍼스를 사용하여 학습될 수 있고, 다양한 대상 작업을 위해 텍스트를 적절한 벡터 표현으로 인코딩하는데 사용되었다.

    Unsupervised pre-training

    Unsupervised pre-training is a special case of semi-supervised learning where the goal is to find a good initialization point instead of modifying the supervised learning objective. Early works explored the use of the technique in image classification [20, 49, 63] and regression tasks [3]. Subsequent research [15] demonstrated that pre-training acts as a regularization scheme, enabling better generalization in deep neural networks. In recent work, the method has been used to help train deep neural networks on various tasks like image classification [69], speech recognition [68], entity disambiguation [17] and machine translation [48].

    비지도 사전학습

    비지도 사전학습은 준-지도 학습의 특별한 사례인데, 그 목표는 지도학습의 목표를 수정하는 대신에 좋은 초기화 포인트를 찾는 것이다. 초기 작업은 이미지 분류와 회귀분석 작업에서의 기법 사용을 탐색하였다. 이후 연구는 정규화 스킴으로서의 사전 학습이 동작하고, 딥 뉴럴 네트워크에서 더 나은 일반화를 가능하게 한다는 것을 보여준다. 최근 연구에서, 그 방법은 딥 뉴럴 네트워크의 학습하여 다양한 작업 (이미지 분류, 스피치 인식, 객체 모호성제거, 기계 번역)을 하는데 도움을 줬다.

    The closest line of work to ours involves pre-training a neural network using a language modeling objective and then fine-tuning it on a target task with supervision. Dai et al. [13] and Howard and Ruder [21] follow this method to improve text classification. However, although the pre-training phase helps capture some linguistic information, their usage of LSTM models restricts their prediction ability to a short range. In contrast, our choice of transformer networks allows us to capture longerrange linguistic structure, as demonstrated in our experiments. Further, we also demonstrate the effectiveness of our model on a wider range of tasks including natural language inference, paraphrase detection and story completion. Other approaches [43, 44, 38] use hidden representations from a

    pre-trained language or machine translation model as auxiliary features while training a supervised model on the target task. This involves a substantial amount of new parameters for each separate target task, whereas we require minimal changes to our model architecture during transfer.

    우리의 작업과 가장 가까운 작업 라인?은 언어 모델링 목표를 사용한 신경망 사전 학습과 이후 그것을 지도하에 대상 작업에 대해 미세튜닝하는 것을 포함한다. 다이 와 친구들과 하워드와 루더는 이 방법을 따라 텍스트 분석을 개선하였다. 그러나, 사전 학습 국면이 어떤 언어 정보를 획득하는 것을 도와주었지만, 그들의 LSTM 모델 사용은 그들의 예측능력을 짧은 범위로 제한한다. 대조적으로, 우리의 트랜스포머 네트웍스의 선택은 더 긴 범위의 언어 구조를 얻도록 해주며, 우리의 실험에서 보여주었듯이... 게다가,

    3 Framework Our training procedure consists of two stages. The first stage is learning a high-capacity language model on a large corpus of text. This is followed by a fine-tuning stage, where we adapt the model to a discriminative task with labeled data.

    우리의 절차는 두 단계로 이뤄진다. 첫번째 단계는 큰 텍스트 코퍼스에 대한 높은 용량의 언어모델을 학습하는 것이다. 이것은 파인튜닝 단계로 이어지고, 모델을 라벨된 데이터로 분류하는 작업에 적응시킨다.

    3.1 Unsupervised pre-training Given an unsupervised corpus of tokens U = {u1, . . . , un}, we use a standard language modeling objective to maximize the following likelihood: L1(U) = X i log P(ui |ui−k, . . . , ui−1; Θ) (1) where k is the size of the context window, and the conditional probability P is modeled using a neural network with parameters Θ. These parameters are trained using stochastic gradient descent [51]. In our experiments, we use a multi-layer Transformer decoder [34] for the language model, which is a variant of the transformer [62]. This model applies a multi-headed self-attention operation over the input context tokens followed by position-wise feedforward layers to produce an output distribution over target tokens: h0 = UWe + Wp hl = transformer_block(hl−1)∀i ∈ [1, n] P(u) = softmax(hnWT e ) (2) where U = (u−k, . . . , u−1) is the context vector of tokens, n is the number of layers, We is the token embedding matrix, and Wp is the position embedding matrix.

    3.1. 비지도 사전 학습

    비지도 토큰 코퍼스가 주어질때, 우리는 다음의 라이클리후드를 최적화하는 표준 언어 모델링 목표를 사용한다:

    k는 문맥 윈도우 사이즈이고, 조건 확률 P는 신경망과 파라미터 Θ를 사용하여 모델된다. 이 파라미터들은 확률적 경사하강을 사용하여 훈련된다. 우리 실험에서는, 언어 모델을 위해서는 여러 레이어의 트랜스포머 디코더를 사용하고, 이는 트랜스포머의 변형이다. 이 모델은 인풋 문맥 토큰과 이후의 포지션 와이즈 피드포워드 레이어에 대한 멀티헤드 셀프-어텐션 작업을 적용하여 대상 토큰에 대한 출력 분포를 생산한다.

    U는 문맥 토큰 벡터이고, n 은 레이어 수, We는 토큰 임베딩 매트릭스이고 Wp는 포지션 임베딩 매트릭스이다.

    3.2 Supervised fine-tuning After training the model with the objective in Eq. 1, we adapt the parameters to the supervised target task. We assume a labeled dataset C, where each instance consists of a sequence of input tokens, x 1 , . . . , xm, along with a label y. The inputs are passed through our pre-trained model to obtain the final transformer block’s activation h m l , which is then fed into an added linear output layer with parameters Wy to predict y: P(y|x 1 , . . . , xm) = softmax(h m l Wy). (3) This gives us the following objective to maximize: L2(C) = X (x,y)

    3.2 지도 파인튜닝

    모델을 방정식1의 목표로 학습을 한 후에, 우리는 파라미터를 지도 대상 작업으로 적응시킵니다. 우리는 라벨된 데이타셋 C를 가정하고, 각각의 인스턴스가 일련의 입력 토큰으로 구성되어 있습니다. 라벨 y와 함께. 그 입력은 우리의 사전 학습된 모델을 통과하며 최종 트랜스포머 블럭의 활성을 얻는데, y를 예측하기 위해 Wy파라미터와 함께 추가된 선형 출력 레이어로 들어간다. 이것은 우리에게 최대화할 다음 목표를 준다.

    We additionally found that including language modeling as an auxiliary objective to the fine-tuning helped learning by (a) improving generalization of the supervised model, and (b) accelerating convergence. This is in line with prior work [50, 43], who also observed improved performance with such an auxiliary objective. Specifically, we optimize the following objective (with weight λ): L3(C) = L2(C) + λ ∗ L1(C) (5) Overall, the only extra parameters we require during fine-tuning are Wy, and embeddings for delimiter tokens (described below in Section 3.3).

    우리는 추가적으로 언어 모델을 파인튜닝에 대한 보조 목표로 포함시키는 것은 다음에 도움을 준다. a) 지도모델 일반화 개선 b) 컨버전스 가속화. 이것은 이전 작업과 같은 선상에 있고, 또한 (그런 보조 목표로) 개선된 성능을 확인했다. 구체적으로는, 우리는 다음 목표를 최적화한다. (람다 웨이트와함께). 전체적으로 파인튜닝동안 단지 우리가 요구하는 추가 파라미터는 Wy와 구분자 토큰을 위한 임베딩이다.

    3.3 Task-specific input transformations For some tasks, like text classification, we can directly fine-tune our model as described above. Certain other tasks, like question answering or textual entailment, have structured inputs such as ordered sentence pairs, or triplets of document, question, and answers. Since our pre-trained model was trained on contiguous sequences of text, we require some modifications to apply it to these tasks. Previous work proposed learning task specific architectures on top of transferred representations [44]. Such an approach re-introduces a significant amount of task-specific customization and does not use transfer learning for these additional architectural components. Instead, we use a traversal-style approach [52], where we convert structured inputs into an ordered sequence that our pre-trained model can process. These input transformations allow us to avoid making extensive changes to the architecture across tasks. We provide a brief description of these input transformations below and Figure 1 provides a visual illustration. All transformations include adding randomly initialized start and end tokens (hsi, hei).

    3.3. 작업 특정 입력 변형

    어떤 작업에 대해서, 텍스트 분석과 같이, 우리는 직접적으로 우리의 모델을 위에 묘사한대로 파인튜닝할수 있다. 어떤 다른 작업들, 질의 응답, 텍스튜얼 인테일먼트같은, 입력을 순서된 문장 쌍 혹은 문서, 질문, 그리고 답의 3쌍으로 구조화한다. 우리의 사전 학습된 모델은 연속된 순서의 문서에 훈련되므로, 우리는 어떤 변형이 이 작업들에 적용되기를 요구한다. 이전 작업은 트랜스퍼된 표현위에 특정 아키텍처를 학습하는 것을 제안했다. 그런 접근방법은 상당한 양의 작업 특정 커스터마이제이션을 다시 도입한다. 그리고 이 추가적인 아키텍처 부품을 학습을 전이하지 않는다. 대신, 우리는 트라벌살 스타일 접근법을 사용하는데, 우리는 구조화된 인풋을 우리의 사전학습된 모델이 처리할 수 있는정렬된 시퀀스로 변형한다. 이 인풋 변형으로 우리는 여러 작업에 걸친 아키텍처에 대한 광범위한 변경을 피할 수 있다. 우리는 이 인풋 변형에 대해 아래에 간단한 설명을 제공하고 그림 1은 시각적 설명을 제공한다. 모든 변형은 임의로 초기화된 시작과 끝 토큰 추가를 포함한다.

    Textual entailment

    For entailment tasks, we concatenate the premise p and hypothesis h token sequences, with a delimiter token ($) in between.

    인테일먼트 작업에 대해서는, 우리는 전제 p와 가정 h 시퀀스를 연결하고, 구분자 토큰을 그 사이에 쓴다.

    Similarity

    For similarity tasks, there is no inherent ordering of the two sentences being compared. To reflect this, we modify the input sequence to contain both possible sentence orderings (with a delimiter in between) and process each independently to produce two sequence representations h m l which are added element-wise before being fed into the linear output layer.

    유사도

    유사도 작업을 위해서는, 비교되는 두 문장의 내제된 순서가 없다. 이를 반영하기 위해, 우리는 둘의 가능한 문장 순서를 포함하는 입력 시퀀스를 (사이에 구분자 포함) 수정한다. 그리고 각각 독립적으로 두 시퀀스의 표현을 생성하도록 처리하는데, 이는 선형 출력 레이어에 넣기 전의 추가된 엘레먼트와이즈이다.

    Question Answering and Commonsense Reasoning

    For these tasks, we are given a context document z, a question q, and a set of possible answers {ak}. We concatenate the document context and question with each possible answer, adding a delimiter token in between to get [z; q; $; ak]. Each of these sequences are processed independently with our model and then normalized via a softmax layer to produce an output distribution over possible answers.

    질의 응답과 상식 추론

    이 작업들을 위해, 우리는 문맥 문서z, 질문 q, 그리고 가능한 답변 세트를 받았다. 우리는 문서 문맥과 질문을 각각의 가능한 답변으로 연결하고, 구분자 토큰을 사이에 추가하여 리스트를 얻었다. 이 시쿼스의 각각은 독립적으로 우리 모델과 처리되고 소프트맥스 레이어를 거쳐 정규화 되며 가능한 답변에 대한 출력 분포를 생성한다.

    4 Experiments 4.1 Setup Unsupervised pre-training

    We use the BooksCorpus dataset [71] for training the language model. It contains over 7,000 unique unpublished books from a variety of genres including Adventure, Fantasy, and Romance. Crucially, it contains long stretches of contiguous text, which allows the generative model to learn to condition on long-range information. An alternative dataset, the 1B Word Benchmark, which is used by a similar approach, ELMo [44], is approximately the same size

    1. 실험

    4.1 셋업

    비지도 사전 훈련

    우리는 북코퍼스 데이타셋을 사용하여 언어 모델을 훈련한다.

    그것은 어드벤처, 판타지, 와 로맨스 등 다양한 장르를 포함한 7천개의 출판되지 않은 책을 포함합니다. 중요한점은, 그것은 긴 인접한 텍스트 늘이기를 포함하는데, 그것은 생성 모델이 긴범위 정보의 조건을 학습하도록 해줍니다. 대체 데이타셋은 십억개의 단어 벤치마크인데, 유사한 접근 방법 엘모에의해 사용되었는데, 비슷한 크기이다.

    댓글

Designed by Tistory.