매우 간단하면서도 쉽게 적용가능한 Ralative position embedding의 한 종류인 ALiBi
100만 A100 GPU 시간을 사용할수 있을때 100B+의 모델을 학습하기 위한 가장 좋은 구조와 학습 세팅은 무엇인가?
현재까지의 언어모델들은 특정한 유형에 맞춰져 있다. 하지만 어떤 구조가 가장 적합한지, 어떤 세팅이 되어야 하는지 아직 정해진 것들이나 업계 전반에 합의된 것은 없다. 이 논문에서 pretraining을 위한 통합된 프레임워크를 보이고자 한다.
Trillion단위의 토큰 데이터 베이스로 구성된 retrieval system을 이용한 언어 모델.Retrieval-Enhanced Transformer(RETRO)를 사용.25배 적은 파라미터(7B)로 GPT-3와 Jurassic-1과 비슷한 성능을 얻었다.Ret
최근에 DPR, RAG, RETRO, FiD 등을 보면서 Retrieval에 대한 내용들이 많이 나온다. faiss에 대해 살펴보고자 한다.faiss getting started 참고faiss는 facebook research에서 개발한, dense vector들의 클
OpenAI 에서 최근에 발표한 새로운 버전의 GPT. 텍스트 베이스의 웹 브라우징 환경을 통해서 GPT3를 파인튜닝 하고, 긴 맥락을 가진 질문에 대해서 답을 할수 있는 모델을 제안했다. 이러한 과정에서 이미테이션 러닝이나 강화학습의 개념을 사용였다. 모델의 평가는
딥스피드에서 사용하는 Pipeline Parallelism에 대해 정리https://www.deepspeed.ai/tutorials/pipeline/ 문서 참조딥스피드 v0.3에서부터 pipeline paraelleism을 지원한다. Pipeline Paral
Pytorch Wandb (Weight & Biases) 적용 딥러닝 모델을 학습하다가 보면 Loss나 필요한 Metric, 평가지표들을 그래프로 시각화해서 보는 방법이 필요하다. 많이 사용하는 방법으로는 텐서보드나 파이썬에서 제공하는 모듈들을 사용해 표현 하는 방법들
최근 언어모델에서는 큰 트랜스포머 모델을 학습하는게 중요하다. 그러나 매우 큰 모델을 학습하는데는 많은 제약사항들이 따른다.Megatron-LM 논문에서는 매우 큰 트랜스포머 모델을 학습하기 위한 테크닉들을 보인다. intra-layer model 병렬화를 이용해 쉽
Decision Transformer는 시퀀스 모델링 문제를 해결하기 위해 강화학습을 사용한 프레임워크. 트랜스포머 구조에서 단순하고, 확장성 있게 적용할 수 있다. 그리고 GPT계열의 모델과 BERT 모델들 관련해서 발전된 것을 적용할 수 있다. Decision Tr
PyTorch Lightning DeepSpeed 토치 라이트닝에서 딥스피드를 사용하기 위한 방법 학습 및 정리. DeepSpeed 딥스피드는 딥러닝 학습 optimization 라이브러리이다. 딥스피드를 통해 트랜스포머 모델의 메모리 를 효율적으로 학습할 수 있게
최근 DeepMind에서 소개된 모델인 Perceiver는 여러 도메인에서 좋은 성능을 얻었다. 그와 동시에 컴퓨팅과 메모리 부분에서는 input size에 따라 선형적으로 확장할 수 있다. Perceiver는 다양한 종류의 input들을 지원하며, 쉽게 output을
딥 뉴럴 네트워크는 여러 분야에 걸쳐서 많은 성능 향상을 가져왔지만 종종 기울기가 사라지거나 과도하게 커지거나 하는 문제가 발생한다. 특히 12 레이어를 초과하고 많은 데이터셋과 컴퓨팅 자원이 필요한 트랜스포머 모델들도 이런한 문제에서 예외는 아니며, 저자들은 비효율적
Batch matrix multiplication 으로 두 operand가 모두 batch일때 사용하며, 브로드캐스트 기능을 지원하지 않는다. 두 입력은 3-D 텐서가 되어야한다.B, N, M x B, M, P = B, N, P$$out_i = input_i @ mat
BlenderFackbookAI BlenderBot2.0 글에 대한 정리코드: blenderbot2Facebook에서 만든 장기 기억 메모리와 인터넷 검색을 사용하는 오픈소스 챗봇으로 blender의 두번째 버전이다. 소스와 데이터를 공개했다. 소스: facebookr
subicura님의 쿠버네티스 안내서를 따라해보며 쿠버네티스 기본 사용법에 대해 익히고 정리.쿠버네티스는 설치부터 운영, 여러 고급 기능들을 알아야한다. 하지만 그 전반적인 과정이 어렵고 처음 접하는 사람에게 쉽지 않다. subicura님의 안내서는 가이드를 통해 최소
쿠버네티스 살펴보기 | ① 쿠버네티스 개요 > 쿠버네티스 학습을 위한 제타위키 쿠버네티스 용어를 정리 쿠버네티스 기초 용어 쿠버네티스에 사용하는 기본 용어들에 대해 알아본다 필수 용어 Cluster, 클러스터: 노드라고 불리는 머신들의 집합으로 쿠버네티스가 관리하는
쿠버네티스 학습을 위한 쿠버네티스 공식문서를 정리쿠버네티스를 배포하면 클러스터가 생성된다. 이때 클러스터는 컨테이너를 실행하는 노드라 불리는 워커 머신의 집합이다. 모든 클러스터는 최소한 한개의 워커 노드를 가진다.워커 노드는 애플리케이션의 구성요소인 파드를 호스트 한
쿠버네티스 학습을 위한 쿠버네티스 공식문서를 정리쿠버네티스는 컨테이너화된 서비스를 관리하기 위한 이식성있고, 확장가능한 오픈소스 플랫폼이다. 즉 컨테이너들을 관리하기 위한 플랫폼이다. 선언적 구성과 자동화를 용이하게 해준다.쿠버네티스는 흔히 k8s라 불린다. K8s는