PRDL
모임 기간
2021.02.20 - 2021.05.01
모임 일시
매주 토요일 10:30 ~ 12:30
장 소
강남
모집 기간
2021.02.05 - 2021.02.19
모집 인원
15명
선발 방식
사전 질문 기반 심사
랩 소개
운영 방식
참여 요건
랩장 소개
⭐️ 랩 소개
한 줄 소개
PRDL은 자연어처리에서 upstream task 중 하나인 Pre-trained Language Model을 연구하는 Lab입니다. 초기에는 기존에 널리 사용되고 있는 Pre-trained Langauge Model을 편리하게 학습할 수 있는 파이프라인을 구축하고, 해당 파이프라인을 이용해서 추후 PLM 자체를 연구할 예정입니다.
분야
ETC
목표 결과물
OPEN_SOURCE, ETC
PRDL은 초기에는 자연어처리의 upstream task인 Pre-trained Language Model (a.k.a PLM)을 학습하는 파이프라인를 구축하고, 이 후 해당 파이프라인을 토대로 PLM을 효율적으로 학습하는 방법을 연구할 예정입니다.
외부 자료공유: github blog
oss 공개
⭐️ 운영 방식
season 1에는 전체 Pretraining PipeLine (a.k.a PPL) framework의 개별 module들의 필요성을 논의한 뒤 이를 각자 공부하면서 개발 후, 토의를 통해서 완성시켜 나갑니다. 아래는 개발해야할 개별 아이템들입니다. (순서가 있습니다.) 아래는 예시입니다.
Item 1: Tokenizer 학습 모듈
개요
데이터를 기반으로 subword를 학습하는 algorithm (e.g. Character-level bpe, Byte-level bpe, Wordpiece) 등을 효율적으로 학습할 수 있는 framework을 만듭니다.
Item 2: Serializer 모듈
개요
학습된 tokenizer를 기반으로 학습하고자하는 plm 유형에 따라 데이터를 미리 학습가능한 형태로 저장해놓는 framework를 만듭니다.
학습시키고자하는 pre-trained language model (a.k.a plm)의 유형 (e.g. MLM, CLM, S2S)을 고려할 수 있어야합니다.
Item 3: Pre-training 모듈
개요
plm유형에 따라 serialize된 데이터를 기반으로 모델을 학습할 수 있는 framework의 전체 구조를 설계합니다. 아래와 같은 항목들을 고려해야합니다.
Item 4: Pre-training 모듈에 BERT 학습기능 추가
개요
Item 3에서 초벌로 설계한 Pre-training 모듈에 BERT를 학습할 수 있는 기능을 추가합니다.
해당 기능을 토대로 학습한 모델을 예시로서 공개합니다.
Item 5: Pre-training 모듈에 GPT 학습기능 추가
개요
Item 3에서 초벌로 설계한 Pre-training 모듈에 GPT를 학습할 수 있는 기능을 추가합니다.
해당 기능을 토대로 학습한 모델을 예시로서 공개합니다.
Item 6: Pre-training 모듈에 Roberta 학습기능 추가
개요
Item 3에서 초벌로 설계한 Pre-training 모듈에 RoBERTa를 학습할 수 있는 기능을 추가합니다.
해당 기능을 토대로 학습한 모델을 예시로서 공개합니다.
Item 7: Pre-training 모듈에 BART 학습기능 추가
개요
Item 3에서 초벌로 설계한 Pre-training 모듈에 BART를 학습할 수 있는 기능을 추가합니다.
해당 기능을 토대로 학습한 모델을 예시로서 공개합니다.
개별 아이템 별로 랩원들간의 토의를 통해서 필요한 요건을 문서로 정리합니다. 그리고 해당 문서를 기반으로 각자 개발 후, 추후 토론을 통해 모듈을 완성해가는 방식입니다. 모듈을 완성하면 이를 외부에 공유할 수 있는 형태로 작성하여 공유합니다. 아래는 생각하고있는 좋은 공유로서의 예시입니다.
Data Loader, Better, Faster, Stronger
⭐️ 커리큘럼
1 주차: 오리엔테이션 + 아이스브레이킹
2 주차: 파이프라인 개발 시 개발해야하는 아이템 선정 및 초기 학습해야될 모델 선정
3 주차: 각각의 아이템 및 논문에 대한 리뷰
⭐️ 참여 요건
- 자연어처리에 지식이 있으신분
- Pre-trained Language Model을 직접 학습해 보고 싶으신 분
⭐️ 사전 질문
자연어처리에서 skip-gram등 word vector를 사용하는 방식에서 BERT 등의 pre-trained language model을 사용하는 방향으로 넘어옴으로써 어떤 paradigm의 변화가 왔는 지 설명해주세요.
자연어처리에서 language model을 학습할 때, 학습이 잘 평가 되었는 지 확인하는 지표로 perplexity를 사용합니다. perplexity의 의미에 대해서 설명해주세요.
subword를 학습하는 방법 중 Byte-pair encoding에 대해서 설명해주세요.
prdl에 참여함으로써 얻어가고 싶은 것에 대해서 말씀해주세요.
⭐️ 랩장 소개
김보섭
카카오 · bsk0130@gmail.com
대규모의 언어모델을 학습하는 방식을 최적화하는 연구를 하고 있습니다.