- 2021년 1월 29일 오후 4:18
- 조회수: 4528
REFERENCES
INFORMATION
- 2021년 2월 5일
- 오후 1시 ~
- 온라인 비디오 시청 (YouTube)
TOPIC
On-Line Video
OVERVIEW
발표자 후기
BERT의 등장 이후 NLP 분야에는 정말 많은 연구들이 단기간에 쏟아져나왔다. 처음 보는 이름의 모델이 sota를 달성한 이후 한 달도 채 안되서 새로운 모델이 등장해 sota를 갈아치우고는 했다. 열심히 follow up을 하다가도 잠시 그 흐름을 놓치면 이전과는 아예 달라져있는 glue 리더보드를 보면서 연구의 흐름을 따라잡기가 쉽지 않다고 생각했다. 하지만 이번 세미나를 준비하며 여러 연구들을 자세히 들여다 보니 이들을 관통하는 몇 가지 큰 방향들이 있었음을 알게 되었다. 또한 그것을 기준으로 연구들을 정리하니 새로운 연구를 더 쉽게 이해할 수 있게 되었다. 처음 녹화로 발표를 진행하다보니 부족한점이 많았지만 세미나를 준비한 의도가 우리 연구원분들께 전달되었으면 좋겠다.
청취자 후기
이번 세미나는 "Beyond BERT"를 주제로 진행되었다.
BERT는 구글에서 개발한 NLP Pre-training 모델로 특정 분야에 국한된 기술이 아니라 모든 자연어 처리 분야에서 좋은 성능을 내는 범용 모델인데, Self-attention을 이용한 Transformer이 12층 또는 24층으로 구성되고, 데이터를 Pre-training 해준 후 Fine-Tuning을 진행한 모델이다. Pre-training은 연속 또는 불연속적인 2개의 segment를 input으로 준 후 Masked Language Modeling과 Next Sentence Prediction을 활용하여 진행된다. Fine-Tuning은 Pre-training 된 데이터를 기반으로 class label, start/end span, 각 토큰을 맞추는 방법 등으로 output을 도출한다.
Beyond BERT를 위해 네 가지 방법으로 세미나를 청취할 수 있었다. 첫째, Pre-Training method를 개선하여 성능을 향상하는 방법(SpanBERT, XLNet, RoBERTa, ALBERT, BART, ELECTRA, GPT3, T5, DeBERTa 등). 둘째, Autoencoding(전체 단어를 모두 보고 예측)과 Autoregressive(이전 단어들만 보고 예측)를 함께 활용하는 방법(XLNet, BART, T5, DeBERTa-MT 등). 셋째, Model efficiency를 통해 성능을 향상하는 방법(ALBERT, ELECTRA 등). 넷째, Meta learning을 활용하여 성능을 향상하는 방법(GPT-3, T5).에 대해 알 수 있었다.
단순히 LSTM, CNN 등과 같은 딥러닝 모델을 이용하는 것과 많은 차이가 있는 BERT에 대해 알 수 있었으며, 그 역사와 관계 등을 큰 그림으로 이해할 수 있었다. 향후 NLP가 아닌 다른 분야의 알고리즘을 개선 시킬 상황이 있을 때 이번 세미나를 통해 얻은 지식을 활용해보면 좋을 것이라는 생각을 하게 되었다.
끝으로 BERT를 발전시키기 위한 다양한 모델들에 대해 알 수 있게 도움을 주신 민다빈 연구원님께 감사의 말씀을 전합니다.
금일 세미나는 “Beyond BERT”라는 주제로 진행되었다. NLP 분야에서 좋은 성능을 보여주었던 Transformer와 BERT 이후에 어떠한 방식으로 모델들이 발전하였는지 알아볼 수 있는 시간이었다. 이번 세미나에서는 발전 방향을 Pre-training, Autoencoding + AutoRegressive, Model Efficiency, Meta Learning의 크게 네 가지로 정리하여 알아보았다.
- XLNet : Transformer의 디코더 구조를 쌓아올려 구성된 모델로, BERT의 한계점을 개선시키고자 Autoencoding + AutoRegressive 구조를 제안한 모델이다.
- SpanBERT : BERT의 pre-training 방식을 개선시키기 위하여 연속된 시퀀스 내의 모든 토큰을 masking하는 방법을 제안하였다.
- RoBERTa : BERT를 최적화시키기 위하여 더 많은 양의 데이터와 배치 사이즈를 활용하여 pre-train 시킨 모델이다.
- ALBERT : BERT 모델의 효율화를 진행한 방법으로, 임베딩의 추가나 Transformer encoder에서의 파라미터를 공유하는 등의 방식을 적용하였다.
- BART : Transformer의 구조를 거의 그대로 활용하여 새로운 Autoencoding + AutoRegressive 구조를 제안하였다.
- ELECTRA : GAN과 유사한 구조를 제안하여 mask된 토큰을 맞추는 부분과, 새롭게 생성된 토큰이 원본 문장과 동일한지 비교하는 부분으로 구성된 모델이다.
- DeBERTa : 한 토큰을 두 개의 임베딩 값으로 표현하여 계산하는 Disentangled attention mechanism을 활용하여 단어의 상대적인 위치도 잘 고려한 모델로, 현재 SOTA 모델로 알려져있다.
그동안 이름은 가끔 들어보았지만, 정확히 어떠한 방식으로 발전되었는지 알지 못하던 부분을 이번 세미나를 통하여 채울 수 있어 의미있었다. 또한, 새로운 모델이 빠르게 제안되고 있는 만큼 자주 관심을 갖고 살펴보는 것이 중요함을 느끼게 되었다.
이번 세미나는 Beyond BERT라는 주제로 BERT 모델 이후 발전된 모델들에 대해 알아보는 세미나였다. 언어 모델은 아직 제대로 접해보질 못해서 어려운 내용으로 다가왔지만, 기초가 되는 Transformer와 BERT에 대해 간략히 설명을 해주고 또 모델이 발전되는 4가지 방향에 대해 짚어주어 대략적인 흐름을 파악할 수 있었다. Introduction에서 BERT 모델이 나온 이후 그로부터 개선된 모델들을 그림으로 보여주었는데, 실제 BERT 논문을 찾아보니 2018년 발표이후 15천회가 넘는 인용이 되어 있어 엄청난 영향을 준 모델이라는 걸 알 수 있었다. BERT는 Transformer 구조로부터 만들어진 모델로 Transformer의 encoder를 가져와 pre-training 시킨 후 이를 특정 task에 fine-tuning 시키는 방법의 모델이다. 이 때 pre-training은 두 가지 방법으로 학습하는데, 첫번째는 문장의 단어 일부를 mask 하고 이 단어를 예측하도록 하는 Masked Language Modeling(MLM), 두번째는 두 문장 사이의 관계를 학습하기 위해 다음 문장을 예측하는 Next Sentence Prediction(NSP)이다. 이러한 BERT의 특징을 기반으로 이후 발전되는 모델들은 크게 4가지 방향에서 개선이 되는데, 1) 사전훈련 방식을 개선, 2) MLM의 mask 토큰간 dependency를 학습하기 위한 Autoregressive(AR) 추가, 3) 더 적은 parameter와 computation, 4) 일반화된 모델을 위한 Meta learning 이다. BERT 이후 발전된 모델로 총 9개의 모델이 소개되었다. 전체적으로 9개의 모델 모두 BERT의 pre-training method를 개선하였는데, 이 중 pre-training method 개선에 집중한 모델은 SpanBERT, DeBERTa, RoBERTa이다. Autoregressive를 도입한 모델은 XLNet, BART, T5, DeBERTa-MT이고, 모델 효율화를 위해 더 적은 parameter로 개선한 모델은 ALBERT, ELECTRA 모델, Meta learning 방식을 채택한 모델은 T5와 GPT-3로 구분할 수 있다. BERT 이후의 발전된 모델을 다양하게 핵심 위주로 요약해주어서 큰 흐름을 파악하는데 도움이 된 것 같다. 모델의 세부적인 내용을 이해하기 위해 더 많은 공부를 해야겠다는 생각이 들었고, 다양한 모델을 소개해주느라 정말 많은 준비를 했을 것 같다. 민다빈 연구원에게 감사의 말을 전한다.
이번 세미나를 통해 Transformer와 BERT의 전반적인 개념과 역할을 훑어보고, BERT의 성능을 개선하는 방법들을 알 수 있었다. BERT 성능 개선 방향은 크게 4가지로 구분할 수 있고 각 방법은 Pre-training method 개선, Autoencoding과 Autoregressive를 함께 사용, 모델의 parameter와 computation cost를 줄여 Model efficiency를 개선, Meta Learning 이용이다. 각 방법에 대한 자세한 내용을 예시와 함께 설명해 주셨고, 각 방법에 따라 구축된 모델들도 설명해 주셔서 성능이 개선된 다양한 모델이 존재한다는 것을 알 수 있었다. BERT 이후 개선된 모델로 XLNet, SpanBERT, RoBERTa, ALBERT 등이 있으며 각 모델이 개선하고자 하는 부분과 적용된 아이디어를 알 수 있었다. 새로운 모델이 기존의 다른 모델과 어떤 차이점을 두고 성능이 개선되었는지 차근차근 볼 수 있어서 좋았던 것 같다. 다양한 관점으로 접근하여 BERT를 개선한 모델들이 굉장히 다양하다는 점이 흥미로웠다. 많은 모델 중에서 특히 BART가 인상 깊었는데 원문 뉴스에서 중요한 정보만을 추출해서 요약된 뉴스를 출력할 수 있다는 점이 신기했다. 자연어 처리 분야에서 한글을 대상으로 좋은 성능을 보이는 모델이 부족하다고만 생각해왔는데 이렇게 훌륭한 성능의 모델이 있다니 놀랍기도 했다. 특정 방법론을 그대로 사용하기 보다 개선할 수 있는 부분을 찾고 다양한 아이디어를 적용, 더 좋은 성능의 모델을 창출해내는 과정이 정말 멋지다고 느껴지는 세미나였다.
이번 세미나는 "Beyond BERT" 라는 주제로 진행이 되었다. "BERT"는 구글에서 개발한 모델로 Transformer Encoder만을 사용하여 12 or 24층으로 쌓아올린 구조의 모델이다. 이러한 구조로 대량의 데이터를 Pre-training 과정을 진행한 뒤 원하는 Task에 적합한 Fine-tuning의 학습과정의 형태이다. 이러한 학습모델인 "BERT"의 등장 이후 NLP 분야에서는 다양한 연구들이 쏟아져 나오기 시작했는데, 금일 세미나에서는 크게 4가지 1) Pre-training method 개선 2) Autoencoding(AE) + Autoregressive(AR) 를 동시에 사용하여 개선 3) parameter를 줄이고, computation cost를 줄여서 개선하고자 하는 Model efficiency 방면 4) Meta learning을 사용하여 개선 하는 방향성에 대해서 알아볼 수 있었다. 이러한 방향성을 두고 새롭게 진행된 XLNet,SpanBERT,RoBERTa,ALBERT,BART,ELECTRA,T5 & GPT-3,DeBERTa 의 8가지 모델들에 대해서 소개되며 각각의 특징들을 알아보며 각각의 차이점들을 알아보고, 현재 연구방향의 흐름을 알아 볼 수 있었던 세미나였다. 다양한 모델들을 자신만의 방법으로 소개하여 주고, 긴 시간을 할애해준 연구원에게 감사하다는 말을 전하고 싶다.
이번 세미나는 민다빈 연구원님이 "Beyond BERT" 에 대해 알려주었다.
이름만 알고 있었던, BERT는 구글에서 발표하였으며 자연어 처리에 좋은 성능을 내는 모델이라고 한다.
BERT는 Transformer의 encoder를 12층 혹은 24층으로 쌓아 올린 구조로 되어 있으며,
Sequence data가 Transformer encoder를 거치면서 Contextualized Representation이 생성되고,
이것을 풀고자 하는 Task에 맞춰서 Output을 활용하는 구조라는 것을 알게 되었다.
또, BERT는 Pre-training 이후에 take에 대해서 한 번 더 Fine-tuning을 하는 학습 과정을 가지고 있고,
Pre-training을 위해 Masked language modeling(MLM)과 Next sentence prediction (NSP)를 동시에 잘하도록 BERT는 학습함을 알 수 있었다.
BERT의 성능을 개선 시키기 위해 , Pre-training method 개선을 통한 성능 향상, Autoencoding(AE) + Autoregressive(AR),
모델의 효율성 향상을 통한 성능 개선, Meta learning 활용 방법에 대해서 알 수 있었고,
이 방법을 활용해 BERT를 발전시킨 9개 모델에 대해 알 수 있었다.
세미나를 잘 준비해 주신 민다빈 연구원님께 감사의 말을 전합니다.
이번 세미나는 "Beyond Bert"라는 주제로 진행되었다. 자연어 처리 분야에서 Transformer가 등장하면서 Transformer 계열의 모델들이 중점적으로 연구되기 시작했다. 그중에서도 BERT는 Transformer의 encoder 부분을 활용하여 대규모의 사전학습 모델을 구축하였으며 여러 task에서 좋은 성능을 보였다. 이번 세미나는 Bert의 한계점을 극복하기 위한 4가지 연구 방향에 대해서 소개되었다. 첫 번째는 사전학습 방식의 변경이다. BERT의 사전학습 방식은 가려진 단어를 예측과 다음 문장을 예측하는 task로 구성되어 있다. SpanBERT에서는 다음 문장을 예측하는 task의 불필요함을 주장하며 가려져 있는 단어를 예측하는 task만으로도 좋은 성능을 낼 수 있음을 보였다. 두 번째 개선 방법은 autoregressive방식의 학습이다. BERT는 전체 단어를 보고 예측하는 autoendoing 방식으로 학습이 진행되었다. 하지만 해당 학습 방식으로 인해 단어의 순서가 중요한 새로운 문장을 생성해내는 task에서 낮은 성능을 보이게 된다. 따라서 XLNet에서는 autoencoding 방식과 autoregressive 방식을 결합하여 학습을 진행하게 된다. 세 번째 개선 방법은 모델의 효율을 높이는 방식이다. ALBERT에서는 모델의 크기를 키우기 위해 모델을 효율화하는 작업을 진행한다. BERT에서는 단어의 embedding vector를 생성하기 위해서 단어 수*벡터 크기만큼의 파라미터가 필요했다. ALBERT에서는 단어 수를 벡터 크기보다 작은 차원으로 축소한 다음 벡터 크기로 확장하는 방법을 통해 BERT의 파라미터 수를 감소시켰다. 이때 파라미터의 수가 감소하지만, 성능은 BERT보다 우수하게 유지된다. 마지막 개선 방법은 Meta learning이다. Meta learning이란 학습 방식에 대한 학습으로 흔히 적은 데이터로도 좋은 성능을 유지할 수 있는 few-shot learning이 많이 연구되고 있다. T5와 GPT-3에서는 downstream task를 풀기 위한 fine-tuning은 특정 task 외의 문제에 대한 일반화 능력을 상실한다고 지적했다. T5는 여러 개의 task를 동시에 수행하는 multitask learning을 GPT-3은 few-shot learning을 적용하여 모든 task에 대한 일반화 성능을 높이고자 했다. 자연어 처리는 인공지능 분야에서 한 축을 담당하고 있는 만큼 연구가 활발히 진행되고 있지만, 다수의 최신연구를 혼자서 따라가기 어려웠다. 이번 세미나를 통해 자연어 처리 분야의 최신 연구를 한눈에 정리할 수 있어서 의미 있는 시간이었다. 세미나를 위해 고생해준 다빈이형에게 감사의 말을 전한다.
금일 세미나는 pretrained 언어 모델에 대해 다루었다. pretrained된 언어 모델 중 SOTA였던 Bert 모델보다 develop된 언어 모델들을 버트와 비교하며 소개해주었고, 현시국 SOTA 언어 모델들이 트랜스포머 모델을 기반하여 작동되는 관계로 트랜스포머 리마인드도 함께 해주었다. 친절하였다! Bert 모델이 알고 있는 언어 모델 중 가장 SOTA였는데 다빈이형 덕분에 더 성장하였다. 감사합니다!
- XLNET은 permutation된 여러 문장들 인코딩(+다음 단어 예측)하는 과정에서
언어에 대한 이해도를 높였다.
- SpanBERT는 masking 방식 개선, 손실함수 개선, NSP(next sentence prediction) task를 제거함으로써 언어에 대한 이해도를 높였다.
- RoBERTa는 BERT 학습 방식의 테크니컬 요소를 개선함으로써 언어에 대한 이해도를 높였다.
- ALBERT는 파라미터 효율을 높여 모델 구조 개선과 SOP task를 추가함으로써 언어에 대한 이해도를 높였다.
- BART는 트랜스포머 디코더를 추가하고, denoising 방식을 개선함으로써 언어에 대한 이해도를 높이고, fine-tuning 과정의 효율성을 높이기 위해 모델 구조를 개선했다.
- ELECTRA는 예측된 masked 단어가 예측이 되었는지 아닌지를 분별하는 학습을 추가하여 언어에 대한 이해도를 높였다.
- DeBERTa는 순서(상대적) 정보를 고려한 워드 임베딩에 attention을 수행하는 Disentangled attention mechanism을 이용해 단어 고유의 의미뿐만 아니라 상대적인 위치도 고려함으로써 언어에 대한 이해도를 높여 현시국 SOTA 모델로 알려져있다.
이번 세미나는 'Beyond BERT'를 주제로 BERT의 성능을 개선시킨 4가지 갈래의 방법과 각각에 속하는 모델들에 대해 진행되었다. NLP 분야에서 BERT 이후 이를 기반으로 빠르게 발전해온 여러 양상들을 살펴볼 수 있었다. 1) 사전훈련 방식 개선을 통한 성능향상 분야에 해당되는 Pre-training method, 2) Autoencoding(AE) 방식의 BERT 한계점을 지적하며 Autoregressive(AR)를 이와 동시에 사용하는 성능향상 분야에 해당되는 AE+AR, 3) 모델의 parameter와 computation cost를 줄이고자 하는 방향의 성능향상 분야에 해당되는 Model efficiency, 4) 언어모델 특성상 가지고 있는 fine tuning의 역할을 최소화하여 일반화된 모델을 만들고자 하는 방향의 성능향상 분야에 해당되는 Meta learning과 이에 해당되는 각각의 모델들이 어떠한 문제점으로 비롯하여 어떻게 해결되었는지를 찬찬히 짚어보았다. SpanBERT, XLNet, RoBERTa, ALBERT, BART, ELECTRA, GPT-3, T5, DeBERTa 모델 하나하나 BERT의 문제점으로부터 이를 어떻게 개선하는지 해결되는 방식을 다룸으로서 기존 NLP 모델의 연구흐름을 좀 더 쉽게 팔로우할 수 있을 뿐만 아니라, 연구하는 방식에 대해서도 다시 한 번 생각해볼 수 있었던 시간이었다. 다른 분야보다 NLP 분야 자체가 아직 많이 낯설고 기반 지식도 많이 부족하지만 이번 세미나를 통해 더 깊이 있게 공부해보고 싶어졌다. 마지막으로 긴 시간동안 빠르게 변화한 연구흐름을 일목요연하게 정리해서 훌륭한 세미나를 준비해주신 민다빈 연구원께 감사의 말씀을 전하고 싶다.
금일 세미나는 BERT에 대하여 진행되었다. NLP 분야에서는 transformer의 self-attention 기법과 ELMo의 pre-training 방식이 연구된 이후, BERT를 비롯한 여러 연구가 이루어지고 있다. BERT는 transformer의 인코더를 12층 또는 24층으로 쌓아 올린 구조이고, pre-training과 fine-tuning을 사용하는 것이 특징이다. Pre-training task를 위해 BERT가 풀어야할 문제는 masked language modeling(MLM)과 next sentence prediction(NSP)가 있다. BERT는 2개의 segment를 하나의 Input으로 받는다. Input을 받았을 때 masked 된 것을 잘 복원하고자 하는 것이 MLM이고, 2개의 segment가 연속인지 아닌지를 판단하고자 하는 것이 NSP이다. BERT로 얻은 output을 fine-tuning에 이용하는데, 이용하는 방식은 task에 따라 달라진다. Task 종류는 Sentence classification task (segment의 연속성을 판단하는 것), Question Answering task (Input 중 답에 해당하는 문단의 start/end point를 찾는 것), Single sentence tagging task (토큰 별로 종류를 맞추는 것) 등이 있다.
BERT의 성능을 개선하기 위한 방향으로 크게 4가지가 있으며 대표적인 알고리즘은 다음과 같다:
1. Pre-training method를 개선: SpanBERT, XLNet, RoBERTa, ALBERT, BART, ELECTRA, GPT-3, T5, DeBERTa
2. Autoencoding 방식에 Autoregressive 성질을 추가: XLNet, BART, T5, DeBERTa-MT
3. Parameter 수를 줄여서 computation 양을 줄이는 것: ALBERT, ELECTRA
4. Meta learning 방식을 사용하여 언어모델을 일반화: GPT-3, T5
이해하기 쉽게 정리해 주셔서 BERT와 관련한 내용을 폭넓게 접할 수 있었다. 유익한 세미나를 진행해 주셔서 감사하다는 말씀을 전한다.
이번 seminar는 Transformer에 대한 주제로 진행되었다. 그중에서도 BERT모델의 특징적인 점을 배우고, 여기서 부족한 점을 각각의 개선된 모델들이 어떻게 발전시켜온건지 전반적으로 알아보았다.
BERT는 각각의 토큰을 transformer encoder로부터 가져와 pre-training시켜 fine-tuning시키는 방식의 모델이었다. 특히 pre-training에서 두가지 주요한 방식은 문장 내 일부 단어를 masking하고 그 단어에 들어갈 것을 예측하여 복원하는 MLM과, 두 segment가 연속적인지 불연속적인지 판단하여 Isnext라는 토큰을 추가해주는 NSP가 있었다.
이러한 BERT의 특징을 가지고, 이 transformer 모델의 성능을 향상시키기 위한 4가지 방향을 짚어보고, 각각 특징적으로 개선시킨 총 9개 모델에 소개해주셨는데, 각각이 가진 장점들을 적절히 섞어가면서, 새로운 개념을 조금씩만 바꾸어줘도 성능향상에 의미가 있는것이 흥미로웠다. 가령 NSP생략같은 경우는 최근의 모델에서는 거의 대부분 사용됐는데, 2개의 문장과 문장사이는 관계는 굳이 계산에 넣지않아도 성능하향에는 큰영향이 없다는 점이 흥미로웠다.
각각의 모델마다 다양한 방향으로 접근했지만, DeBERTa의 경우 단어의 의미와 그 단어사이의 거리를 score로 매긴다는 점이 인문학적으로 굉장히 잘 접근한 case같아서 감명 깊었다.
최종적으로 Super Glue Benchmark에서 human baseline을 넘을 정도의 성능을 가진다는건 결국 사람과 거의 구분 못할정도의 수준에 와있다는 걸 보며, 이런 logic이 의미이해를 계속해서 누적시키면 사람과 정말 유사해지지 않을까 상상해본다.
언어 모델에 대해서는 이해가 전혀 없는데, 결여점을 어떻게 착안해서 idea로 발전시키는 지에 대해서 다양한 사례를 들을 수 있어서 굉장히 좋았다. 발표해주신 민다빈 연구원님께 감사의 인사를 전한다.
이번 세미나는 다빈이가 ‘Beyond Bert’라는 주제를 가지고 진행하였다. NLP분야는 크게 transformer가 나오기 전과 후로 나눌 수 있다. 그만큼 transformer의 등장이후 transformer와 관련된 연구가 쏟아져 나왔다. Transformer의 발전과 함께 BERT, GPT등 NLP task에서 좋은 성능을 보여주는 연구가 진행 되었다. 해당 세미나에서는 이러한 BERT에서 보다 개선된 알고리즘을 소개해주었다. 먼저 BERT 한계점으로 사전 훈련방식의 변화, Autoencoding +Autoregressive, Model efficiency, Meta learning으로 4가지가 존재한다. XLNet은 AE 방식의 한계점과 이를 해결하기 위해 two-stream self attention을 사용하였다. SpanBERT는 BERT의 pre-training 방식을 single sequence training으로 변화시켜 개선하였다. ALBERT는 BERT를 더 크게 만들기 위해 모델 효율화를 시켰으며 BART는 새로운 Autoencoding +Autoregressive 구조를 제안하였다. 해당 세미나에서는 BERT의 등장 이후 해당하는 한계점을 해결하기 위한 4가지의 개선 방향에 대한 연구들에 자세히 설명해준 다빈이에게 감사하다는 말을 전하고 싶다.