일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 열심히
- JavaScript
- SQL
- 성실히
- 노마드코더
- Codestates
- 재미져
- 기초통계
- 코딩테스트
- yolo
- pandas
- 파이썬
- 자료구조
- Ai
- 주간보고
- 코드스테이츠
- 리뷰
- 꾸준히
- 부트캠프
- MYSQL
- 2021
- 독서
- 매일매일
- python
- 선형회귀
- selenium
- leetcode
- bootcamp
- 빅데이터
- 딥러닝
- Today
- Total
코딩일기
What is n_ctx in config.json(feat. gpt2, gpt3, Huggingface, models) 본문
안녕하십니까 다제입니다.
오늘은 huggingface에서 모델을 사용할 때 config.json 파일을 자주 살펴보게 되는데요
최근 text generation을 요즘 유심히 살펴보고 있고,
그중에서도 gpt2의 config.json을 살펴보다가 모르는 표기가 있어서 간단하게 정리를 하고자 하는데요
일단, 우리가 config.json을 살펴보아야 하는 이유는 모델이 어느 정도의 언어 표현 능력이 있는지를 config파일을 보면서 대략적으로 알 수 있기 때문입니다.
특히, vocab_size, n_embeddings(n_embd), n_head, n_layer를 살펴보면 대략적으로 감을 잡을 수 있습니다.
아! 이 녀석을 차용하여 사용하면 어느 정도의 표현까지는 말을 할 수 있겠구나
vocab_size : 해당 모델이 가지고 있는 vocab 수를 의미합니다.
n_embeddings(n_embd) : 각 단어가 몇 차원으로 펼쳐지는지 알려주는 값 입니다.
n_head : generator는 transformer 계열을 주로 사용하기 때문에 headers수를 말합니다.
n_layer : header와 마찬가지로 transformer에서 몇 개의 layer를 가지고 있는지를 알려주는 값 입니다.
n_ctx : input sequence에 몇 개의 token이 들어갈 수 있는지를 표기하는 수치 입니다.
n_speical : 입력으로 몇개의 sepecial token을 사용할 수 있는지 알려주는 것 입니다.
모델을 하나를 보더라도 꼭 꼼꼼히 다음에는 모르는게 없도록 잘 정리하고 넘어가야 나중에 다시 볼때 시간을 절약할 수 있습니다.
다들 도움이 되시길 바라며, 오늘의 글으 마치겠습니다.
감사합니다.