2-1 토큰화란?

토큰화란?

수행 대상에 따른 토큰화(단어, 문자, 서브워드)

단어 단위 토큰화 문자 단위 토큰화 서브워드 단위 토큰화
공백 기준 분리 문자 단위 단어와 문자 단위 토큰화 중간(둘의 장점)
장점 별도로 토크나이저를 쓰지 않아도 됨 - 어휘 집합 크기 단순 - 미등록 토큰 문제에서 자유로움 - 어휘 집합 크기가 지나치게 크지 않음 - 미등록 토큰 문제를 피할 수 있음 - 분석된 토큰 시퀀스가 너무 길어지지 않음
단점 어휘 집합의 크기가 매우 커질 수 있음(→ 학습된 토크나이저로 완화 가능하지만 한계) → 모델 학습 어려움 - 각 문자 토큰이 의미 있는 단위가 되기 어려움 - 토큰 시퀀스의 길이가 길어짐→ 문장 학습 어려움, 성능 감소

2-2 바이트 페어 인코딩이란?

BPE란?

토큰화 절차

1) BPE 어휘 집합 구축하기

어휘 집합을 만들기 전: 공백으로 말뭉치 준비(프리토크나이저)

고빈도 바이그램 쌍을 병합하는 방식(→ 어휘 집합에 추가됨)으로 구축

→ BPE 토큰화 과정에서 서브워드 병합 우선순위를 정하는 데 쓰임

→ 어휘 집합: vocab.json, 병합 우선순위: merges.txt에 저장됨

2) BPE 토큰화

Untitled

pug, bug, mug → p, ug, b, ug, <unk>, ug

(<unk>: 미등록 토큰)