트랜스포머·PEFT 2일 과정2장 · Transformer 입력 표현2 / 15← 이전목차다음 →MetaContents

2장. Transformer 입력 표현

용어 짚고 가기

  • 토큰(token): 모델이 읽는 텍스트의 기본 조각입니다. 단어 하나일 수도, 단어의 일부나 글자 하나의 일부(바이트)일 수도 있습니다. 문장을 쪼갠 레고 블록입니다.
  • 토큰화(tokenization): 문장을 토큰으로 나누는 일입니다.
  • 토크나이저(tokenizer): 토큰화를 하고, 토큰을 번호로 바꾸고, 번호를 다시 글자로 되돌리는 도구입니다. 모델마다 짝이 정해져 있습니다.
  • 사전(vocabulary, vocab): 토크나이저가 아는 토큰을 모두 모아 번호를 매긴 목록입니다. Qwen 은 151,665개, BERT 는 30,522개입니다.
  • 토큰 ID(token ID): 사전에서 토큰에 매긴 정수 번호입니다. 레고 블록마다 붙은 상품 번호입니다.
  • input_ids: 토크나이저가 돌려주는 토큰 ID 리스트의 이름입니다. 모델에 들어가는 "상품 번호 열"입니다.
  • 서브워드(subword): 단어보다 작은 조각입니다. 자주 쓰는 단어는 통째로, 드문 단어는 조각으로 나눕니다.
  • OOV(Out-Of-Vocabulary): 사전에 없는 낱말입니다. 단어 단위로 자르면 처음 보는 낱말을 읽지 못합니다.
  • BPE(Byte Pair Encoding): 자주 붙어 나오는 두 조각을 하나로 합치는 일을 되풀이해 사전을 만드는 방법입니다. GPT, Llama 3, Qwen 이 씁니다.
  • Byte-level BPE: 글자 대신 바이트(byte)부터 합치는 BPE 입니다. 어떤 언어든 바이트로는 쪼갤 수 있으므로 사전에 없는 글자가 생기지 않습니다.
  • WordPiece: 합쳤을 때 말뭉치의 가능도가 가장 커지는 쌍을 합치는 방법입니다. BERT 가 쓰며, 앞 조각에 이어 붙는 조각에 ## 을 붙입니다.
  • SentencePiece: 띄어쓰기까지 하나의 문자로 보고 원문에서 바로 사전을 만드는 도구입니다. T5, Llama 2 가 씁니다.
  • 특수 토큰(special token): 문장의 시작과 끝 같은 표시용 토큰입니다. BERT 의 [CLS](101), [SEP](102)가 그 예입니다.
  • UTF-8: 글자를 바이트로 저장하는 방식입니다. 영어 글자는 1바이트, 한글 한 글자는 3바이트입니다.
  • 디코딩(decoding): 토큰 ID 를 다시 사람이 읽는 글자로 되돌리는 일입니다. decode 라는 이름으로 부릅니다.
  • 컨텍스트 길이(context length): 모델이 한 번에 볼 수 있는 최대 토큰 수입니다. Qwen2.5-0.5B-Instruct 는 32,768(32K)입니다.
  • 임베딩(embedding): 토큰 ID 를 뜻을 담을 수 있는 실수 벡터로 바꾸는 일, 또는 그 벡터입니다. 상품 번호를 성격표로 바꾸는 일입니다.
  • 임베딩 층(embedding layer): (사전 크기, d_model) 모양의 큰 표입니다. 토큰 ID 번째 행을 꺼내 줍니다.
  • d_model: 토큰 하나를 나타내는 벡터의 길이(숫자 개수)입니다. 원 논문은 512, Qwen2.5-0.5B 는 896, BERT-base 는 768입니다.
  • 조회(lookup): 계산하지 않고 번호로 표의 행을 바로 꺼내는 일입니다. pandas 의 df.iloc[번호] 와 같습니다.
  • 위치 정보(positional information): 토큰이 문장에서 몇 번째에 있는지 알려 주는 값입니다.
  • 위치 인코딩(positional encoding): 위치 정보를 벡터로 만들어 임베딩에 더하는 방법입니다. 블록에 붙이는 번호표입니다.
  • 사인·코사인 위치 인코딩(sinusoidal positional encoding): 원 논문이 쓴, 학습하지 않는 고정 위치 인코딩입니다. 빠르고 느린 물결을 섞어 위치마다 다른 무늬를 만듭니다.
← 이전 절2장 · 먼저 큰 그림부터다음 절 →2장 · 글자가 숫자 행렬이 되기까지