이번에 소개할 모델은 Transformer로, 이 논문을 처음 제안한 "Attention Is All You Need"의 논문과 여러 자료를 참고하여 알게 된 내용들을 포스팅하겠습니다. Sequence Modeling Sequence Modeling이란, 시계열 데이터, 텍스트, 음성, 비디오 등의 연속적이고, 순차적인 데이터에서 패턴과 관계를 학습하여 해당 시점(Time point) 이후에 다음으로 나올 값을 예측하는 것을 의미합니다. Transformer가 등장하기 전에는 RNN, LSTM이 Sequence Modeling에서 가장 좋은 성능을 보이고 있었습니다. 하지만, 이런 모델들은 본인들이 예측한 결과가 다음 Time Step에서 입력으로 들어가야 하는 학습 구조에서 오는 문제가 발생하였습니다...
딥러닝/자연어처리 검색 결과
GPT-2 : Language Models are Unsupervised Multitask Learners - GPT와 구조는 똑같으나 훨씬 더 대용량 데이터를 학습(40GB, WebText) - GPT Medium(345M Parameters = BERT Larget) -> Large -> Extra Large model 확장 GPT-2 vs BERT - BERT는 Bidirectional 학습, GPT-2는 auto-regressive * auto-regressive : 각 token이 생성이 되면, 생성된 token이 그 다음 token을 생성하기 위한 input으로 사용. - GPT2는 1024개의 token을 처리할 수 있음. trained GPT-2 - unconditional samples를..
GPT: Generative Pre-Training of a Language Model - unlabeled dataset이 labeled dataset보다 훨씬 많기에 이를 잘 활용하면 지도학습 task에 좋은 성능을 낼 수 있다. - unlabeled text를 사전에 미리 활용하고, 그 뒤에 labeled text를 활용하자. - unlabel 단어로부터 word-level 이상의 정보를 활용하는 것은 매우 chellenge(1- 목적 함수가 효과적인지 모르기에, 2-transfer learning을 하기 위한 효과적인 방법의 수렴이 없다.) ELMo vs GPT - ELMo는 forward와 backward의 양방향 학습을 거치고 output을 선형결합하여 사용 - GPT는 Backward를 쓰지..
BERT : Bidirectional Encoder Representations from Transformer - transformer에서 encoder 정보만 사용하는데, bidrectional한 정보만 사용하겠다. 1) Masked language model : 순차적으로 model을 사용하는 것이 아닌, 특정 위치에 mask를 씌워서 그 부분을 예측. 2) Next sentence prediction : 다음 sentence가 corpus에서의 contextual하게 다음 등장하는 sentence인지 학습. Input/Output representations - down-stram tasks에 따라, single-sentence를 받을수도 pair로 된 sentences를 받을 수도 있다.(Q-A ..
Transformer : Attention is all you need - attention 메커니즘을 극대화시킨 모델(sequential -> atterntion) - input embedding -> encoder -> decoder -> output의 구조를 가지고 있음. encoding block vs docoding block - unmasked(encoder) : 따로 masking 하지는 않음. - masked(decoder) : 문장을 생성할 때 앞 -> 뒤로 순차적으로 만들어야하기 때문에 masking이 되어있음. encoder 구조 - encoder block의 구조는 동일하나, 구조 안 가중치들은 학습을 통해 달라질 수 있음. - 두 개의 sub layer로 이루어짐 (self-att..
sequence to sequnce seq2seq의 input, output의 길이는 같을 필요는 없다. encoder : 입력된 정보를 어떻게 처리해서 저장할 것이냐? - context vector를 생성 - context vector를 decoder로 넘겨줌 decoder : 압축된 정보를 어떻게 풀어서 반환해줄것인가? - output sequence를 item by item으로 넘겨줌 Encoder-Decoder with RNN - RNN : input 값을 hidden state와 output값으로 처리해줌. 이 값들을 계속 전달해나가는 구조 - 가장 마지막의 hidden state인 context vector가 decoder로 전달 됨. - docoder를 통해 다시 sequence가 추출됨(i..
NLP VS 텍스트 분석 : 기본적으로 둘을 구분하는 것이 유의미하지는 않다. 굳이 구분하자면, NLP : 머신이 인간의 언어를 이해하고 해석하는 데 더 중점. 텍스트 분석을 향상하게 하는 기반 기술이라고 볼 수도 있다. ex> 언어를 해석하기 위한 기계번역, 자동으로 질문을 해석하고 답을 하는 질의응답 시스템 텍스트 분석( = 텍스트 마이닝) : 비정형 텍스트에서 의미 있는 정보를 추출하는 것에 중점. 모델을 수립하고, 정보를 추출해 비즈니스 인델리전스, 예측 분석 등의 분석 작업을 주로 수행. 텍스트 분류 감성 분석 텍스트 요약 텍스트 군집화, 유사도 측정 텍스트는 비정형 데이터이지만, 머신러닝 알고리즘에 넣는 데이터는 숫자형 데이터가 들어가야 한다. 텍스트를 머신러닝에 적용하기 위해서는 '비정형 텍..
논문 제목 : Distilling the Knowledge in a Neural Network 논문 링크 : arxiv.org/abs/1503.02531 Background NN의 오버피팅을 피하기 위해 앙상블 기법이 사용되었다. 하지만 앙상블은 여러 모델을 사용하여 계산시간이 많이 걸린다는 단점이 있어, 앙상블만큼의 성능과 '적은 파라미터 수'를 가진 nn모델이 필요하여 이 Knowledge Distillation모델이 나오게 되었다. Knowledge Distillation이란? Knowledge는 지식, Distillation은 증류이다. 화학에서 액체를 가열하여 생긴 기체를 냉각하여 다시 액체로 만드는 것을 증류라고 부르는데, 이러한 개념을 NN에서 사용한 것이다. 즉 위 그림과 같이 NN에서 지..
1. Introduction 기존으 NLP모델은 labeled된 데이터를 바탕으로 지도학습을 했다. 하지만 존재하는 데이터는 unlabeled data가 훨씬 많기 때문에, unlabeled data의 정보를 활용한다면 훈련에 필요한 시간과 비용을 절약할 수 있다. 하지만 unlabeled data의 정보를 활용하는 것이 힘든 이유는 크게 두가지가 있다. 1) 어떤 목적함수(Optimization objective)가 효과적인지 알 수 없다. 2) 모델에서 학습된 표현(reprentation)을 다양한 NLP task로 전환하는데 가장 효율적인 방법이 정해지지 않았다. GPT-1은 이 두 가지 단점을 보완하고자 하였는데, 먼저 unsupervised로 pre-training하고 supervised로 fi..
Attention을 소개하기 앞서 NLP의 발전과정에 대해 설명하겠습니다. 먼저 첫 번째로 RNN은 Neural network에서 recurrent 순환형 구조를 추가한 것, LSTM은 기존 RNN이 역전파가 길어질 시 단점이 생겨 hidden state에 cell-state를 추가하여 발전시킨 것입니다. Seq2Seq2는 RNN을 구조를 사용해서 인코더, 디코더 구조로 변환해서 번역 수행하였습니다. Attention은 모든 입력 시퀀스를 참고. Transformer는 RNN, CNN사용 안하고 Attention만 사용. 그리고 Transformer의 인코더를 활용한게 GPT, Transformer의 디코더를 활용한게 BERT모델입니다. 그만큼 Transformer는 매우 중요합니다. 그리고 여기서 점선..
최근댓글