3D 랩 로드 중…
레슨 로드 중…
← AI의 작동 원리월드 1 · 4개 중 2번째 레슨모든 레슨 ↓

모델은 왜 문자나 단어를 읽지 않을까
이 내용을 가르치고 있나요? 프로젝터 모드 열기
모델은 원시 문자나 단어 전체를 그대로 받아들일 수 없어. 먼저 텍스트를 토큰이라는 조각으로 나누는데, 토큰은 학습 전에 만들어 둔 어휘 목록에서 가져와. 각 항목에는 정수 ID가 있어. 모델이 받는 것은 정수 목록이야.
토큰은 자주 쓰이는 단어 전체일 수도 있고, 긴 단어의 일부나 문장 부호, 숫자 묶음일 수도 있어. 단어 앞의 공백은 보통 단어에 붙어 있어서 “cat”과 “ cat”(앞에 공백이 있는 경우)는 보통 서로 다른 ID를 가진 서로 다른 토큰이야. 대문자도 중요해. “Cat”도 또 다른 토큰이야.
다음은 토큰 사이에 |를 넣은 예시입니다. 개념을 보여 주기 위해 만든 것이며, 실제 토크나이저는 다르게 나눕니다.
cat은 매우 자주 쓰이므로 토큰 하나입니다.un|believ|ably는 토큰 세 개입니다. 단어 전체가 어휘에 없지만, 조각들은 어휘에 있기 때문입니다.어휘는 어떻게 만들어질까요? 널리 쓰이는 방법은 바이트 페어 인코딩(BPE)입니다. 이 아이디어는 데이터 압축에서 나왔으며, Sennrich와 동료들(2016)이 이를 신경망 번역에 맞게 적용했습니다. 방법은 다음과 같습니다.
Try it on a tiny corpus: low ×3, slow ×2, newer ×4, wider ×2.
er.lo.low.After three merges the words are low, s|low, n|e|w|er and w|i|d|er. Frequent chunks became single tokens, and rarer words stay in pieces.
일반적인 영어 텍스트에 적용하는 대략적인 기준: 토큰 하나는 약 네 글자, 또는 단어의 약 4분의 3 정도이므로 토큰 100개는 약 75단어입니다. 이는 어디까지나 대략적인 기준입니다. 토크나이저, 주제, 언어에 따라 달라집니다.
토크나이저의 학습 텍스트에서 드물게 등장한 언어로 된 텍스트와 코드, 특이한 이름, 긴 숫자는 같은 내용을 표현하는 데 더 많은 토큰이 필요한 경우가 많습니다. 토큰이 많을수록 계산량이 늘어나고 컨텍스트 창도 더 많이 사용됩니다. 컨텍스트 창은 모델이 한 번에 입력받을 수 있는 토큰 수의 최댓값이며, 단어 수가 아니라 토큰 수로 계산됩니다.
희귀하고 긴 단어가 모델에 입력됩니다. 보통 어떤 일이 일어날까요?
“Cat”과 앞에 띄어쓰기가 있는 “ cat”은 보통 같은 토큰일까요?
컨텍스트 창은 어떤 단위로 측정할까요?
In the toy corpus (low ×3, slow ×2, newer ×4, wider ×2), which pair is merged first?