스터디노트 (GPT 3)

zoe·2023년 7월 6일
0

Few, Zero shot learning & Transfer learning

  • 특정 자연어 Task 를 해결하기 위해서는 다양한 Label이 요구됨. 특히, format도 매우 복잡함

  • 수많은 텍스트 데이터들이 레이블이 없이 존재함

  • (가정) 주어진 문장에 대한 함축적인 문맥을 이해할 수 있다면 다양한 Task에 적용 가능

  • Fine tunning (cv)

  • Transfer learning

  • Few shot, zero shot
    - Query image : 추론할 입력 데이터
    - Training set : 모델이 학습하는 데이터셋
    - Support set : 추론해야 하는 셋



GPT-1

Gpt-1 bert gpt-2 gpt3 순으로 연구
GPT = “ Generative Pre-Training “

  • 비지도학습 기반의 pre-training 과 지도학습 기반의 fine-tunning 을 결합한 semi-supervised learning

  • 그래서 다양한 자연어 task에서 fine-tunning 만으로도 좋은 성능을 보이는 범용적인 자연어 representation 을 학습하는 것

  • 2 stage 로 구성되어 있으며 transformer의 decoder 구조를 사용함

  • 기존 RNN 대비 좋은 성능을 보였으며 일반화 성능 확인

  • Task-specific input transformations
    - 기존: Task specific 구조에 기반한 학습, 구조에 종속되기 때문에 task 가 변할 때 마다 많은 커스터마이즈 요구

  • GPT-1
    - Pre-training model이 적용될 수 있도록 input 구조를 convert
    - Layer 가 증가함에 따라 정확도가 높아지는 것을 확인
    - LSTM과 비교하여 다양한 task에서 일반화 성능 확인



BERT

  • BERT = “Bidirectional Encoder Representations from Transformer”

  • Wiki & book data 와 같은 대용량 unlabeled data로 pre-training 시킨 후, 특정 task 에 transfer learning 을 함

  • GPT와의 차이? -> unidirectional vs bidirectional

  • GPT와는 달리 새로운 네트워크를 붙이지 않고 fine-tunning 만을 진행함

  • GPT-1 : Unsupervised pre-training -> BERT : Masked Language Model(MLM) & Next sentence prediction

  • Next sentence prediction
    - 문장간 관계를 알아내기 위한 task, 두 문장이 실제 corpus 에서 이어져 있는지 아닌지 확인
    - 50% 는 실제 이어져 있는 문장

  • Pre-training 프로세스는 GPT-1과 같음

  • MLM
    - [MASK] 비율 : 15%
    - Tokenization : Wordpiece
    - LM 의 left-to-right 와는 달리, [MASK] 를 추론하는 task 수행
    - Fine tunning 에는 사용되지 않음

MLM
- [MASK] 생성 과정
- 80% : token 을 [MASK]로 변환
- 10% : token 을 임의의 단어로 변경
- 10% : 원래의 단어 token 으로 둠
- Pre-trained 되는 transformer encode의 입장에서는 contextual representation 학습

  • Fine-tunning
    - Sequence-level classification
    - [CLS] token 의 output 사용
    - CLS output 에 W matrix 를 곱해주고 softmax를 취해 준다.
    - Span-level, token-level prediction

  • GLUE
    - 다양한 task를 모아놓아 종합적인 자연어 이해 능력 테스트가 가능한 벤치마크
    - 대부분의 task에 SOTA
    - 특히, 데이터 크기가 작아도 fine-tunning 후에는 좋은 성능

  • SQuAD
    - GLUE는 sequence classification
    - SQuAD 는 질문 과 지문이 주어지고, substring 인 정답 찾기
    - 질문 A, 지문 B 지문에서 substring 찾기 문제
    - Start vector와 end vector의 dot product를 하여 찾기

  • SWAG
    - Grounded common-sense inference
    - 문장이 주어지고, 가장 잘 이어지는 문장 찾기
    - 주어진 문장 A, 가능한 문장들 B

  • CoNLL-2003
    - 각각의 단어가 어떤 형식인지
    - Person, Organization, Location …
    - 토큰마다 classifier 붙이기

  • Ablation studies
    - Pre-train 을 하나라도 제거하면 성능 감소가 일어남
    - No NSP -> 자연어 추론 계열(NLI)에서 성능 감소 폭 큼
    - MLM 대신 LTR -> 성능이 매우 감소함
    - 모델 사이즈가 커질수록 성능 향상
    - MLM이 많은 training이 필요하지만 성능향상 확인




GPT-2

  • Fine-tunning 없이도 우리는 가능하게 하고 싶다.
  • 모델 자체는 GPT-1과 크게 차이 없음
  • Zero shot learning
    - Model이 바로 downstream task에 적용함 (few shot: 몇 번 보고 적용함 )
  • WebText 데이터을 구축
    - 이 대용량 데이터셋에 LM 모델을 학습했을 때 supervision 없이도 다양한 task 처리
  • Byte pair Encoding을 활용 하여 Out of Vocabulary 문제 해결
  • Zero shot?
    - 문장의 긍/부정 -> what do you think about this sentence ? 같은 질문 추가
    - 문장 요약 -> What is the summary of … ? 추가
    - 번역 -> what is translated sentence in Korean? 추가

  • Byte pair Encoding
    - Word Piece model (BERT)
    - 모든 단어 시작에는 _

    	1. 모두 캐릭터 단위로 분리
    	2. 각각의 캐릭터에서 빈도수 측정
    
    	1. 빈도수가 가장 높은 유니그램의 쌍을 통합함
    • Zero shot 임에도 불구하고 8개중 7개에서 SOTA
      - 특히, PTB,Wikitext-2 와 같은 적은 데이터셋에서 좋은 성능




GPT-3

  • GPT-2 대비 Self-attention layer를 굉장히 많이 쌓아 parameter 수를 대폭 늘림
  • GPT-2에서 사용하는 Zero shot learning framework의 확장

너무너무너무너무너무 어렵다 ㅠㅠ...
💻 출처 : 제로베이스 데이터 취업 스쿨

profile
#데이터분석 #퍼포먼스마케팅 #데이터 #디지털마케팅

0개의 댓글