본문 바로가기

Deep Learning/NLP8

GPT-2 (2019 - Language Models are Unsupervised Multitask Learners) 논문 링크 - https://d4mucfpksywv.cloudfront.net/better-language-models/language_models_are_unsupervised_multitask_learners.pdf 0. Abstract QA, 기계 번역, 독해, 요약과 같은 NLP의 task는 task에 적합한 데이터셋에 의한 Supervised Learning방식으로 접근해왔습니다. 그러나 본 논문에서는 수백만개의 웹페이지로 구성된 새로운 데이터셋인 WebText를 사용하여 LM이 Supervised Learning 없이도 NLP task를 학습하기 시작함을 증명합니다 LM에서 생성된 답변은 4개중 3개의 성능과 일치하거나 능가하였습니다 LM의 용량은 zero-shot task transfer의 .. 2024. 3. 25.
GPT-1 (Improving Language Understanding by Generative Pre-Training) 논문 링크 - https://openai.com/research/language-unsupervised Improving language understanding with unsupervised learning We’ve obtained state-of-the-art results on a suite of diverse language tasks with a scalable, task-agnostic system, which we’re also releasing. Our approach is a combination of two existing ideas: transformers and unsupervised pre-training. These re openai.com 0. Abstract Natural.. 2024. 3. 16.
BERT (Pre-training of Deep Bidirectional Transformers for Language Understanding) 논문 링크 - https://arxiv.org/abs/1810.04805 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding We introduce a new language representation model called BERT, which stands for Bidirectional Encoder Representations from Transformers. Unlike recent language representation models, BERT is designed to pre-train deep bidirectional representations from unla arxiv.org 0. Abstra.. 2024. 3. 15.
Transformer (Attention is All you need) 기존에 사용되는 성능이 좋은 Sequence 변환 모델들은 복잡한 RNN, CNN을 기반으로 두고 있습니다. 이는 Sequence가 길어수록 메모리 문제로 인해 병렬적 처리를 어렵게 만듭니다. 입력과 출력 sequence 거리에 상관없이 dependencies를 모델링할 수 있게 해주는 Attention mechanism가 있으나, 이는 RNN과 함께 사용되어 효율적인 병렬화가 불가능합니다. Seq2Seq 모델을 예를 들자면, encoder의 최종 output을 embedded vector로써 사용하여 Decoder에 넣어줄 때, emebedded vector의 크기를 제한해야 합니다. 이는 길이가 긴 Sequence 데이터를 처리할 때, 제한된 크기의 embedded vector에 모든 정보를 담아야 .. 2023. 10. 31.
Attention 지난 포스팅 주제였던 seq2seq는 인코더, 디코더 구조를 사용하여 입력과 출력의 크기가 같아야 하는 문제를 해결하였습니다. 그러나 인코더에 들어가는 문장이 매우 길어진다면 긴 입력 시퀀스를 하나의 고정된 크기 벡터로 변환하는 과정에서 정보 손실이 발생합니다. 이를 해결하기 위한 아이디어가 인코더의 모든 time step으로부터 벡터 표현을 추출해서, 정보 손실 없이 모든 벡터 표현을 참고하여 예측을 해보자는 것입니다. 인코더의 입력시퀀스 전부를 참고하되, 가중치를 여겨 예측할 단어와 연관이 큰 단어에 집중하는 것이 포인트입니다. Attention Attention이란 인코더의 모든 hidden state중에서 어떤것을 중요하게 생각할지 결정하는 방식을 말합니다. 여기서 등장하는 개념이 Query, k.. 2023. 10. 27.
Seq2Seq(Sequence to Sequence) 기존 RNN 모델들은 아주 큰 단점이 존재합니다. 입력값을 넣으면 반드시 하나의 출력값이 나온다는 것 즉, 입력과 출력의 크기가 같아야 한다는 제약이 있습니다. 이는 일반적인 번역을 생각하였을 때 엄청난 단점으로 여겨집니다. 한국어를 영어로 번역하는데, 단어의 수가 같아야 하는 말도 안되는 제약이 생기는 것이죠. 이러한 문제를 해결하기 위해 Seq2Seq 모델이 나오게 되었습니다. Seq2Seq 모델은 어떻게 이 문제를 해결했을까요? Seq2Seq 모델의 기본구조는 인코더, 디코더로 이루어져 있습니다. 앞단의 Encoder는 input값들의 정보를 압축하는 역할을 하고, 뒷단의 Decoder는 압축된 정보를 바탕으로 새로운 정보를 생성하는 역할을 합니다. Seq2Seq 모델은 Encoder를 통해 문장 .. 2023. 10. 27.
LSTM(Long short Term Memory Network) 지난번에 포스팅된 RNN은 이전 정보를 이용할 수 있다는 장점이 있었지만, 이로 인해 따라오는 long term dependency 문제가 있었습니다. 이를 해결한 모델이 LSTM 입니다 LSTM은 RNN처럼 네트워크의 반복으로 이루어져 있지만, 내부 구조가 다르게 구성 되어있습니다. RNN에서는 h_t-1만을 다음 단계로 전달하지만, LSTM은 cell state라는 것도 함께 전달해줍니다. 내부구조에서는 forget gate, input gate, output gate를 새롭게 구성하여 이용할 정보의 양을 조절해줍니다. LSTM의 계산 과정 1) Forget gate cell state에서 어떤 것을 버릴 것인지 결정하는 단계입니다. Forget gate에서 이전 cell state C_t-1에 있는.. 2023. 10. 26.
RNN(Recurrent Neural Network) NLP에 대해 공부하고 싶어져서 이에 대해 정리를 하려고 합니다. RNN 이전의 Neural Network들은 모든 입력값들을 서로 독립적이라고 가정하였기에 이전 정보를 반영하여 계산을 처리해야하는 문제들을 처리하지 못하고 있었습니다. 이를위해 네트워크 안에 Loop를 만들어 이전 정보가 지속되도록 하는 RNN모델이 탄생하였습니다. Recurrent에서 알 수 있듯, 한 쪽 방향으로 정보가 흘러가는 것이 아닌 layer에서 순환하는 구조를 가집니다. 위처럼 Loop를 만들어 이전 정보가 지속되도록 하고, 이를 펼쳐보면 아래와 같은 구조를 가집니다. 현재의 input 값 x_t를 받아서 h_t라는 output 값을 출력하고, output값인 h_t를 다음 Cell에게 넘겨줍니다. 다음 Cell은 현재의 i.. 2023. 10. 26.