Skip to content

Latest commit

 

History

History
206 lines (179 loc) · 21.9 KB

2021.md

File metadata and controls

206 lines (179 loc) · 21.9 KB

2021년에 읽은 논문들 (28 papers)

2021-12-31 DeiT

Training data-efficient image transformers & distillation through attention, 2021(arxiv)
problem : ViT는 대규모 이미지 데이터셋으로 학습해야 일반화 가능한 모델을 학습할 수 있음
solution : ViT구조에 distillation token을 추가하여 CNN 등의 teacher model을 사용하여 distillation 학습을 진행함
result : imageNet만으로 학습한 모델이 좋은 정확도를 냄, ViT, ResNet와 비교해봤을 때 더 작은 파라미터로 나은 성능
details : notion

2021-12-30 LeViT

LeViT: a Vision Transformer in ConvNet's Clothing for Faster Inference, 2021(arxiv)
problem : 더 나은 속도/성능 trade-off를 가지는 ViT를 개발해보자
solution : 처음에 CNN으로 resolution을 줄인 뒤, 트랜스포머를 위에 붙임. 이때, 우리는 CNN처럼 pyramid 구조를 갖기 위해 중간에 Query를 average-pooling으로 sub-sampling을 하여 resolution을 중간중간에 줄여감. 외에 MLP 대신 1 x 1 convolution을 하고, positional embedding 대신 attention bias를 추가하는 등 효율적인 연산을 위한 디테일을 수정함.
result : DeiT나 EfficientNet과 유사한 성능으로 더 빠른 인퍼런스 속도.
details : notion

2021-12-28 Frozen

Multimodal Few-Shot Learning with Frozen Language Models, 2021(arxiv)
problem : 대형 언어모델에게 visual 정보를 few-shot으로 학습할 수 있게 해보자
solution : visual encoder를 prefix처럼 input 시퀀스 앞에 두고 기존 언어모델의 파라미터는 frozen 시키고 학습시킴.
result : few-shot으로도 상당한 성능, 멀티모달 few shot 러닝 밴치마크를 제안
details : notion

2021-12-27 DETR

End-to-End Object Detection with Transformers, 2020(arxiv)
problem : object detection 문제를 풀기 위해선 수작업 구조/설계가 필요함
solution : object detection이 중복이 없는 순서 상관 없는 set을 예측하는 것이기 때문에, CNN + transformer encoder-decoder + FFN으로 한번에 bbox를 예측할 수 있도록 함. 이 때, loss는 우선 예측된 box와 gt box를 bipartite로 최적 matching을 구한 뒤, 최적 매칭에서 box loss와 클래스 레이블을 합친 loss를 사용함.
result : FASTER RCNN과 유사한 성능, panoptic segmentation에서 SOTA
details : notion

2021-12-23 Pix2seq

Pix2seq: A Language Modeling Framework for Object Detection, 2021(arxiv)
problem : Object Detection 문제를 풀기 위해선 특수한 구조/설계가 필요함
solution : object detection 문제를 이미지를 넣었을 때 바운딩 박스와 레이블을 표현한 토큰 sequence를 뽑는 인코더-디코더 구조로 바꿈. 이때 모든 object를 찾지 않고 끝나버리는 것을 막기 위해 noise를 섞은 augmentation을 추가하여 모델이 noise인지 아닌지를 구분하도록 하면서 고정된 길이로 예측하도록 함. 이를 통해 recall을 끌어올림.
result : Faster RCNN, DETR과 같은 디텍션만을 위해 설계되었고 최적화된 모델들과 성능이 유사하게 남
details : notion

2021-12-21 Swin

Swin Transformer: Hiearchical Vision Transformer using Shifted Window, 2021(arxiv)
problem : ViT와 같이 비전에 트랜스포머를 적용하고자 하는 시도가 있으나, 한개의 토큰 단위를 16 by 16로 고정하는 것은 pixel 단위인 semantic segmentation을 하기엔 적합하지 않으며 고화질 데이터의 경우 이미지 크기에 제곱으로 연산의 양이 많아져서 사용에 한계가 있음
solution : ViT처럼 m by m 패치로 자른 뒤에 그 내부의 픽셀 단위로 self-attention을 함. 그 뒤에 패치를 M // 2만큼 shift 해서 패치를 나눈 뒤 self-attention을 함. 이 구조를 반복하여 프리트레이닝/파인튜닝을 진행함
result : ViT와 달리 연산량이 이미지 크기의 선형적으로 증가하면서도 classification, detection, segmentation에서 SOTA
details : notion

2021-12-20 SimpleDLM

Value Retrieval with Arbitrary Queries for Form-like Documents, 2021(arxiv)
problem : 문서에서 원하는 정보를 뽑는 태스크에서 이전 방법론들은 미리 정의해놓은 field를 예측하는 문제를 풀었는데, 이는 다른 form 혹은 도메인에 적용하기 어렵다
solution : 쿼리가 주어졌을 때 문서에서 원하는 value를 찾는 문제로 바꿈. 쿼리와 OCR 텍스트를 같은 임베딩을 거친 뒤 같이 self-attention을 하도록 하고 각각의 마지막 셀프어텐션 레이어에 average-pooling, FCN을 거친 뒤 내적을 하여 각 토큰이 원하는 value인지 아닌지 이진 분류하는 문제로 바꿈. 해당 아키텍쳐로 MLM을 하는 프리트레이닝 모델(simpleDLM)을 만듦.
result : BERT, LayoutLM 프리트레이닝을 가져온 것보다 simpleDLM으로 프리트레이닝한 것이 F1 성능이 우위.
details : notion

2021-12-17 METER

An Empirical Study of Training End-to-End Vision-and-Language Transformers, 2021(arxiv)
problem : Vison-and-Language(VL) 태스크에 대해서 end-to-end 방식으로 트랜스포머만 사용한 모델 중 region-based model보다 나은 성능을 보인 것이 없었고, 각 모듈들에 대한 실험이 부족함
solution : VL의 주요 모듈들에 대해 알아보고 Ablation study함
result : VQA 태스크에서 SOTA, 실험을 통해 몇가지 모듈들에 대한 성능 우위를 알아냄
details : notion

2021-12-16 Gated MoE

Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer, 2017(arxiv)
problem : 큰 모델을 만들면 성능이 늘어나지만 메모리의 이슈로 한계가 있음
solution : 각 독립적인 NN인 expert들을 만들고, 인풋에 따라 어떤 expert를 선택할지 gating 네트워크를 구성. 이때 top k개만 선택하도록 하여 sparse한 gating을 각 expert의 outputr과 weighted sum하여
result : 더 낮은 비용으로 더 큰 모델 학습. MT에서 SOTA
details : notion

2021-12-15 GLaM

GLaM: Efficient Scaling of Language Models with Mixture-of-Experts(arxiv)
problem : NLP에서 큰 프리트레이닝 모델은 좋은 성능을 보이지만, 학습/추론 비용이 너무 크다
solution : Mixture-of-Experts 모델에서 따와 트랜스포머 구조 내에 주어진 토큰을 처리하기에 어떤 expert가 가장 적합한지를 학습하는 gating을 만들고 선정된 expert의 output의 합으로 모델의 output을 내뱉음
result : GPT-3보다 크기가 7배 크지만, 에너지는 1/3배 쓰이며 zero-shot, one-shot에서 GPT-3보다 성능 우위
details : notion

2021-12-14 PVT

Pyramid Vision Transformer: A Versatile Backbone for Dense Prediction without Convolutions(arxiv)
problem : 비전 트랜스포머 분야에서 이전에 제시된 ViT는 연산량이 많고 아웃풋이 저차원이어서 픽셀 레벨의 태스크를 하기에 적절하지 않음
solution : 1) Feature Pyramid : CNN처럼 4단계의 레이어를 쌓아서 각 크기의 피쳐를 모두 사용할 수 있게 함. 2) Spatial Reduction Attention(SRA) : Self-Attention 연산에서 Key와 Value를 reshape + FC를 거쳐 차원을 줄인 뒤에 진행함
result : 이미지 분류 뿐 아니라 디텍션/세그멘테이션 같은 dense prediction 태스크에도 바로 적용 가능하며, SRA를 통해 계싼 비용도 줄임. 다양한 다운스트림 태스크에서 SOTA
details : notion

2021-12-13 MixText

MixText: Linguistically-Informed Interpolation of Hidden Space for Semi-Supervised Text Classification(arxiv)
problem : 기존의 semi-supervised 방법론들은 label 데이터와 unlabeled 데이터가 따로 사용되어, unlabeled 데이터에서 파인튜닝 시 여전히 과적합될 가능성이 많음
solution : 비전에서 사용되는 mixup 기법과 유사하게, BERT 등의 프리트레인 모델에 임의의 두 개의 x의 hidden vector를 보간하고 y역시 보간하여 학습데이터로 레이블 데이터와 함께 사용. KL divergence loss에 unlabeled data에 대해 더 자신있게 예측할 수 있도록 분류 엔트로피 로스를 합하여 loss로 사용
result : 텍스트 분류 문제에서 제한된 레이블 데이터를 가지고 있을 때 SOTA
details : notion

2021-12-09 Linformer

Linformer: Self-Attention with Linear Complexity(arxiv)
problem : Transformer의 self-attention 연산이 시퀀스 길이 n에 대하여 O(n^2)로 시간, 공간복잡도가 늘어남.
solution : self-attention layer의 결과 matrix가 low-rank라는 것을 밝혀냄. 즉, 저차원으로 표현할 수 있으므로 linear projection 레이어를 추가하여 key, value의 차원을 줄인 뒤 연산을 진행함.
result : RoBERTa와 성능은 유사하거나 더 낫지만, 시간/공간복잡도를 O(n)으로 줄임.
details : notion

2021-12-07 T5

Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer(arxiv)
problem : 다양한 NLP 프리트레이닝 기법은 데이터/목표함수/구조 등이 달라 서로의 성능 혹은 효과성을 비교하기 어려움
solution : encoder-decoder 구조로 프리트레이닝 시에는 임의로 선택된 연속된 토큰 감춰놓고 이를 맞추는 문제를 품. 파인튜닝 시에는 인풋 앞에 finetuning 태스크를 나타내는 prefix를 붙이고 decoder는 각 태스크별 output을 생성하도록 함
result : 다양한 태스크에서 SOTA, 하나의 text-to-text 프레임워크로 프리트레이닝/파인튜닝을 진행하여 모델 및 데이터의 변동에 따른 성능 차이를 분석할 수 있게 함
details : notion

2021-12-06 StructuralLM

StructuralLM: Structural Pre-training for Form Understanding(arxiv)
problem : 문서를 이해하는 pretraining 모델의 경우 문서의 셀(OCR의 바운딩박스)의 semantic한 정보를 충분히 사용하지 않음. (셀 내의 토큰들이 같은
solution : 2D poisitonal embdding을 하고 셀 내의 토큰은 순서에 따른 1D positional embedding을 함. pre-training task에 숨겨진 셀이 문서의 어느 영역에 위치하는지 분류하는 Cell Poisition Classification을 추가함.
result : 이미지 정보를 사용하지 않았음에도 SOTA
details : notion

2021-12-03 BROS

BROS: A Pre-trained Language Model Focusing on Text and Layout for Better Key Information Extraction from Documentsr(arxiv)
problem : 문서에서 Key Information를 뽑는 태스크에서 최근 텍스트 + 레이아웃에 이미지 정보까지 사용하는데 이는 연산적으로 비용이 많이 든다
solution : LayoutLM + 2D encoding을 절대좌표가 아닌 텍스트 박스 간의 4 꼭지점의 거리를 sin함수로 임베딩 + spanBERT와 유사하게 2D에서 근처 텍스트 박스를 mask하고 맞추도록 하는 Area-MLM 프리트레이닝 태스크를 추가함. decoding은 SPADE를 통해 함
result : entity linking, entity extraction 태스크에서 SOTA. 데이터셋이 적을 경우에도 성능 저하가 다른 모델 보다 적어 효율적인 layout + text 관계를 인코딩한 것으로
details : notion

2021-12-02 Donut

Donut : Document Understanding Transformer without OCR(arxiv)
problem : 기존 사진 기반의 문서를 이해하는 태스크들의 접근 방식들은 OCR을 한번 거침으로서 계산 비용이 크고 OCR 에러로 인해 생겨나는 성능 저하문제가 있음.
solution : Swin Transformer 인코더 + BART 디코더로 이미지를 읽고 바로 json으로 포매팅 가능한 토큰을 내뱉도록 함. 이때 프리트레이닝은 가상의 문서 데이터를 만들고 문서 내 글자를 모두 읽는 것을 통해 진행함.
result : 문서분류 : OCR 없는 모델 중에서 SOTA, OCR 기반의 프리트레이닝 모델인 LayoutLM의 성능에 근접하지만 모델 크기와 속도 면에서 우위. 파싱에서 SOTA.
details : notion

2021-11-30 Copying Network

Incorporating Copying Mechanism in Sequence-to-Sequence Learning(arxiv)
problem : Seq2Seq에서 source에 있는 토큰임에도 사전에 존재하지 않는 단어라면 OOV 문제로 예측할 수가 없음
solution : 일반적으로 Seq2Seq에서 decoder가 다음 토큰을 generate하는 mode외에 source에서 토큰을 가져오는 copy mode를 정의하고, 각 mode에서 나온 확률값을 합하여 NLL으로 구함
result : 요약 태스크에서 기존 RNN Seq2Seq보다 성능 우위
details : notion

2021-11-29 WYVERN

Cost-effective End-to-end Information Extraction for Semi-structured Document Images(arxiv)
problem : Information Extraction을 하기 위한 기존 서브태스크를 연결한 pipeline의 방법론의 경우 유지보수가 많이 들고, 모델 학습시에도 각 서브 태스크들에 대한 토큰별 annotation이 필요하여 비용이 많이 듦
solution : 2D Transformer 구조 + decoder에 copying mechanism을 붙여서 tree 구조(abstract syntax trees)를 generate하는 end2end 모델
result : 기존 pipeline 방법론보다 더 적은 비용, 동일한 양의 데이터로 더 좋은 결과
details : notion

2021-11-26 SQLova

SQLova: A Comprehensive Exploration on WikiSQL with Table-Aware Word Contextualization(arxiv)
problem : 자연어를 SQL로 변환하는 task(NL2SQL)에서의 BERT 적용. 이때, 통상적 seq2seq를 통한 언어생성은 syntax가 없어 NL2SQL 문제에 적합하지 않음.
solution : 자연어 질문과 테이블의 컬럼들을 [SEP]토큰으로 concat하여 BERT에 넣음. 마지막 BERT의 두개 layer에 biLSTM 적용하여 쿼리에 들어가는 요소들(select문에 들어가는 컬럼 등)을 예측하는 6가지의 모듈들에 대한 연산 진행.
result : SOTA, 크라우드 소싱 분석 결과 human performacne보다 우위.
details : notion

2021-11-25 SPADE

SPADE: Spatial Dependency Parsing for Semi-Structured Document Information Extraction(arxiv)
problem : Information Extraction 문제를 풀 때에 한 문장으로 펼친 뒤(serialize), 여기서 NER 문제를 풀어왔으나 해당 방법론으로는 복잡한 공간적 관계, 문서의 구조적 정보를 다룰 수 없다는 문제가 있음
solution : serialize 단계 없이 각 토큰들과 field를 노드로 두고 그 관계를 엣지로 하는 그래프(=관계가 있으면 1, 없으면 0인 binary matrix로 표현됨)인 를 만드는 것을 목표로 함. 각 노드들은 attention 연산을 통해서 encoding 되고 엣지들은 인코딩된 벡터들의 내적을 통해 확률 값을 가짐.
result : BERT base NER과 비슷하거나 나은 성능
details : notion

2021-09-05 TSDAE

TSDAE: Using Transformer-based Sequential Denoising Auto-Encoder for Unsupevised Sentence Embedding Learning(arxiv)
problem : STS 데이터셋을 얻는 것은 어려우며, finetuning 시에 텍스트 도메인의 차이 때문에 STS의 성능이 finetuning의 성능에 반드시 비례하는 것은 아님
solution : auto-encoder처럼 encoder가 노이즈가 있는 텍스트를 받아 저차원의 벡터로 표현하면 이를 decoder가 noise가 없는 텍스트로 변화하는 구조를 가짐
k 층의 self-attention을 하고 Query와 Value는 문장임베딩, Key는 이전 (k-1)층의 t시점 디코더 히든스텝을 사용함 (BART와 다르게 인코더의 모든 time-step의 히든벡터가 참조 되지 않음)
result : unsupervised sentence embedding 방법론인 MLM, GloVe, Sent2Vec과 비교했을 때 성능상 우위

2021-09-04 Faster R-CNN

Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Network(arxiv)
problem : Objective Detection에서 사물의 위치를 찾는 Region Proposal단계에서 selective search가 너무 오래걸림
solution : CNN + anchor으로 Region Porposal를 한 뒤 이후 ROI pooling과 classifier을 순차적으로 학습시킴. 이때 feature map은 공유하며 둘의 loss는 합하여 multi-task learning 됨
result : fast RCNN보다 성능이 개선됬으며 추론속도도 2배 이상 빨라짐

2021-09-03 ViT

An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale (arxiv)
problem : Transformer 구조를 image 도메인에 적용
solution : 이미지를 16 by 16 block으로 나눈 뒤 쭉 핀 임베딩에 positional embedding을 더한 뒤 트랜스포머 인코더 + FCN으로 구성. 이후 [CLS]토큰으로 이미지 분류 태스크
result : 분류 문제에서 SOTA. 가장 아래 레이어에서도 글로벌한 정보를 사용하고 있음을 알 수 있었음. CNN보다 locality라는 inductive bias가 적음
further work : NLP처럼 semi-supervised pretraining은 하지 못함

2021-09-01 LayoutLM

LayoutLM: Pre-training of Text and Layout for Document Image Understanding(arxiv)
problem : 이전까지 문서 구조를 학습하기 위해 텍스트/이미지 정보만을 활용하였음
solution : BERT 아키텍쳐를 활용하여, 좌표, 텍스트를 임베딩하여 MLM, MDC(문서분류)로 프리트레이닝하고 바운딩박스내 이미지 정보를 Faster RCNN에서 feature를 뽑아 결합하여 finetuning
result : information extraction, document classification 등의 태스크에서 SOTA

2021-08-30 BART

BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension(arxiv)
problem : BERT는 트랜스포머의 인코더만 사용, GPT는 디코더만 사용. 두 모델의 일반화된 모델을 만들고 싶음
solution : 트랜스포머의 encoder-decoder 구조를 모두 사용하여 noise가 들어간 텍스트를 원래 텍스트로 원복하면서 pre-training됨. fine-tuning시에는 input과 ouput에 sdame input을 넣은 뒤 decoder에 마지막 ouput에 fcn을 넣어서 사용함
result : MNLI를 제외하고 모든 GLUE task에서 BERT보다 우위