---
tags: 'peer-session'
---
# 210916 피어세션
## 질문 꾸러미 (개인당 2개 필수)
- BERT에서 classsification 문제를 풀 때 CLS토큰의 마지막 레이어를 이용해 그 위에 linear layer을 붙여 푼다고 했는데 SEP토큰만 써서 풀 수 있지 아닐지? 마지막이 아닌 CLS를 따로 두는 걸까요? / BERT의 CLS token: 왜 여기로 정보가 집중(?)될까? (Classification을 왜 얘 가지고 만 하지?)
- [참고자료](https://junklee.tistory.com/117)
- GPT2에서 Few shot을 통해 성능향상을 이뤘다고 하는데 모든 training 이 few shot이 아닌지??
- few shot으로 성능향상이 이룬게 아닌, zero-shor, one-shot, few-shot중 few-shot이 가장 성능이 좋다는 설명
- GPT 2: layer가 위쪽으로 가면 갈수록, 해당하는 선형변환들이 0에 가까워 지도록 residual layer의 수로 normalization을 해준다. 즉, 위쪽으로 갈수록 layer의 영향력이 줄어들도록 구성 한다는데, -> 어떤 효과, 왜? 영향력이 줄어들어야 하나?
- Sentence Order Prediction: 학습에 도움이 되는 것은 맞지만, 정말 그 판단이 쉬워지는 걸까?
- 사람이 언어를 학습하는 과정
- Multi head Attention 에서 각 head에 같은 input이 들어가게 되는데 어떻게 다양성을 보장할 수 있을까?
- CNN의 필터와 같은 역할로 볼 수 있다
- SEP 토큰은 무슨 정보를 내보낼까?
- 하나의 단어의 역할과 같은 정보를 내보낸다.
- from transformers import * 는 왜 오류가 나는걸까
- module transformers.models.cpm has no attribute CpmTokenizer
- 아마 개발자가 파일 지워놓고 import한 코드 수정 안한 듯 하다
- [여기 정의되있긴 하네요](https://github.com/huggingface/transformers/blob/master/src/transformers/models/cpm/tokenization_cpm.py)
## 멘토링 질문
- Classification task에서 모든 word를 다 임베딩 해놓고, 왜 굳이 CLS token의 임베딩 벡터만 사용해서 분류를 할까? SEP는 사용하지 못할까? -> 이해한게 맞는지 확인
- CLS는 항상 같은 위치에 있기 때문에, 동일한 Segment, Position 임베딩 벡터가 더해진다. 그리고, word로서 의미가 없기 때문에 다른 토큰들과 attention 계산을 하는 과정을 전체 Sentence에 대한 정보를 넘긴다는 의미라고 볼 수 있다.
- SEP는 input에 따라 위치가 바낄 수 있기 때문, fine-tunning시에 sequnce에 길이가 변할 수 있음(왜 CLS를 1번째 인덱스에만 넣어야할까?)
- GPT 2: 층이 깊어질수록, residual layer의 영향력이 줄어들도록 구성 하기 위해서, 1/sqrt(n) 으로 초기화를 해주는데 -> 어떤 효과, 왜? 영향력이 줄어들어야 하나?
- 깊어 질 수록 high dimentional한 특징을 학습, 그런 부분에 덜 영향을 받도록 설계?
- Multi head Attention 에서 각 head에 같은 input이 들어가게 되는데 어떻게 다양성을 보장할 수 있을까?
- CNN의 필터와 같은 역할로 볼 수 있다(맞는지 여쭤보기)