레플리
글 수 284


https://ai.googleblog.com/2020/01/reformer-efficient-transformer.html

 

 

 

어제 구글이 Reformer라는 혁신적인 모델을 공개했습니다. 최근 자연어처리 벤치마크의 상위권은 BERT, ALBERT, XLNet 등 트랜스포머를 기반으로 하고 있습니다. 일반적으로 입력의 단어가 많을수록 보다 넓은 문맥을 고려합니다. 하지만 현재는 수천단어 정도가 한계입니다. 반면에 Reformer는 무려 100만 단어를 입력으로 받는다고 합니다.

 

트랜스포머에서 셀프 어텐션을 위해서는 입력의 각 단어들을 Q, K, V로 변환하여 서로 곱합니다. 예를 들어, 입력이 10개면 10x10=100번의 계산이 필요합니다. 그래서 단어가 증가하면 전체 모델의 크기도 기하급수적으로 커집니다. 동시에 계산시간과 메모리가 늘어나는 문제점이 생기는데, Reformer는 다음과 같이 해결을 했습니다.

 

 

 

image3.png

 

첫째, 어텐션 계산 시간을 LSH(Locality-sensitive-hashing)를 통해 획기적으로 줄였습니다. 비슷한 벡터를 갖는 단어들을 하나의 chunk로 묶습니다. 그리고 chunk 내부와 바로 옆의 chunk하고만 어텐션을 수행합니다.

 

 

 

image4.png

 

둘째, reversible layers를 사용하여 메모리를 감소하였습니다. 신경망 모델은 역전파를 위해서 각 레이어의 계산 결과를 저장해야 합니다. Reformer는 대신 역전파 시에 필요한 activation값을 그때마다 복원합니다. 그래서 GPU 16GB만으로 충분히 구현이 가능합니다.

 

 

 

언젠가 책 한권을 통째로 읽는 모델이 나올거라고 생각하긴 했습니다. 하지만 이렇게 빨리 개발될 줄은 예상하지 못했습니다. 딥러닝의 발전 속도를 따라잡기가 벅차기만 하네요.

엮인글 :
List of Articles
제목 글쓴이 날짜 조회 수sort
KoGPT2 v2.0 공개 깊은바다 2021-05-03 1589
GPT2로 글을 작성하는 사이트 - StoryAI file 깊은바다 2019-10-11 1582
KoNLPy를 이용하여 Huggingface Transformers 학습하기 깊은바다 2020-09-20 1573
Java에서 Word2vec 사용하기 깊은바다 2018-05-05 1569
글쓰는 법을 배우는 신경망 깊은바다 2016-03-25 1539
딥러닝 자연어처리 라이브러리 - Pororo file 깊은바다 2021-02-03 1529
일상대화 챗봇 레플리카(Replika)의 구현 방식 file 깊은바다 2020-12-22 1510
딥러닝으로 미소녀 챗봇 만들기 깊은바다 2018-06-01 1499
챗봇의 슬롯 채우기(Slot Filling)와 DST(Dialogue State Tracking) file 깊은바다 2021-08-19 1476
GPT-3로 NPC와 대화를 할 수 있는 게임 시뮬레이터 깊은바다 2021-02-22 1464
문장의 유사성을 예측하고 평가하는 AI - 카카오 심슨 깊은바다 2019-03-20 1462
GPT가 스스로 계획을 세워서 실행한다면 - AutoGPT와 LangChain file 깊은바다 2023-04-18 1453
한국어 형태소 분석기 성능 비교 - khaiii 깊은바다 2018-12-10 1447
문장을 사진으로 변환하는 StackGAN [1] 깊은바다 2018-09-17 1435
글자, 사진, 영상을 동시에 처리하는 딥마인드의 딥러닝 모델 - Flamingo file 깊은바다 2022-05-10 1434