# bigbird

논문분석: Big Bird: Transformers for Longer Sequences
최근 구름IDE에서 딥러닝으로 MRC를 제작하는 프로젝트를 진행했고 Long-sequence 처리가 핵심 문제임을 파악했다. 이를 해결하기 위해 팀에서는 BigBird 모델을 활용했고 문제를 해결했다. Huggingface에서 제공해주는 라이브러리를 사용하면 BigBird 사용은 크게 문제는 아니지만 논문 분석을 통해 BigBird의 메커니즘이 왜 긴문장 처리에 적합한지 정확히 알아보고자 한다. Abstract: 필자는 BERT의 약점으로 full attention mechanism을 뽑고있다. 메모리 문제가 발생한다고 한다. BigBird의 sparse attention mechanism을 필자는 제안했으며 이 논문의 가장 핵심 기술인 것 같다. 8배 길이의 sequence 처리가 가능하다고한다. Introduction: 저번에 Attention is all you need에서 배웠던 파트가 재등장해서 반갑다. BERT는 Transforemer을 사용하며 이는 self-atte

[Basic NLP] Google Cloud-TPU와 KoBigBird모델을 활용한 KorQuAD2.0 Fine-tuning
NLP 업계를 보고 있자면 우리가 모두 알만한 내놓라 하는 기업들은 서로 앞다투어 거대언어모델(LLM)을 발표하기 바쁜 것 같습니다. 얼마 전 구글에서 공개된 PaLM(Pathways Language Model)은 GPT-3(1,750억개)보다 약 3배나 큰 파라미터(5,400억개)를 가지고 있다고 합니다. 무튼 몇년새 자연어 처리 분야는 이제 이러한 사전훈련언어모델(Pretrained Language Model)이 기본이 되었고 필수가 되어버렸습니다. 대부분 gpu 연산이 요구되는 모델링을 할 때 Colab을 많이 사용하고 있을 것 입니다. (그나마 저는 회사 계정으로 GCP의 gpu 인스턴스를 멋대로 사용하고 있지만 아무래도 양심상 눈치를 보고 있습니다. 👀 ) 하지만 무료계정일 경우 낮은 성능의 gpu 및 적은 vram, session 시간 제한으로 아무래도 불편합니다. (Colab Pro로 올리면 조금 낫습니다만, 이것도 on-demand는 아니고 session 제한

BigBird, Block Sparse Attention
보다 큰 모델을 학습하기위해 full self-attention이 아닌 sparse self-attention에 대해 학습해보고자 한다. huggingface blog bigbird 글을 읽으면서 정리. 보다 자세하고 정확한 내용은 앞의 블로그를 참고. fairseq/sparsemultiheadattention huggingface blog big bird Introduction NLP분야에서 트랜스포머 모델의 사용은 갈수록 증가하지만 트랜스포머 모델은 $O(n^2)$의 시간, 공간 복잡도를 가진다. 그렇기 때문에 모델의 크기나 입력으로 사용하는 토큰의