728x90
토크나이징(Tokenizing)
1️⃣ 토큰(Token) 이란
- 자연어 처리(NLP) 분야에서 "토큰(Token)"은 핵심적인 개념 중 하나이다.
- 정의: 토큰은 텍스트를 구성하는 개별 단위를 의미한다. 예를 들면, 문장 "나는 학교에 간다."를 단어 단위로 토큰화하면 "나는", "학교에", "간다" 등의 토큰으로 나눌 수 있다.
- 토큰화(Tokenization): 토큰화는 주어진 텍스트를 개별 토큰들로 분리하는 과정을 의미한다. 토큰화의 기준은 주로 공백, 구두점, 특수 문자 등을 기준으로 하지만, 언어나 문맥에 따라 다를 수 있다. 예를 들어, 한국어에서는 형태소 분석을 통해 토큰화를 수행하기도 한다.
- 토큰의 종류:
- 토큰화의 기준에 따라 여러 종류의 토큰이 생성될 수 있다.
- 단어 토큰: "I love apple" 에서 "I", "love", "apple" 등
- 문장 토큰: 단락 내의 개별 문장들
- 문단 토큰: 긴 텍스트 내의 개별 문단들
- 형태소 토큰: 언어의 의미를 가진 가장 작은 단위. 한국어의 경우 "가다"를 "가"와 "다"로 분리할 수 있다.
- 토큰화의 기준에 따라 여러 종류의 토큰이 생성될 수 있다.
- 토큰화의 중요성:
- 대부분의 NLP 작업에서 원시 텍스트를 직접 다루기보다는 텍스트를 토큰화하여 각 토큰을 기반으로 처리한다. 이는 문장이나 텍스트의 구조와 의미를 파악하는데 도움을 준다.
- 또한, 토큰화 후 각 토큰에 대한 통계 정보나 특성을 추출하여 정보 검색, 텍스트 분류, 감정 분석 등의 작업을 수행할 수 있다.
- 도구와 라이브러리:
- 여러 NLP 라이브러리와 도구가 토큰화 기능을 제공한다. 예를 들어, Python의 NLTK, spaCy, KoNLPy(한국어 처리르 위한 라이브러리) 등이 있다.
- 토큰과 토큰화는 NLP의 기본적인 전처리 단계로, 텍스트의 구조와 의미를 이해하고 다양한 분석을 수행하는 데 필수적이다.
2️⃣ 토크나이징(Tokenizing)
- 자주 사용되는 토큰화는 크게 3종류로 나눌 수 있다.
- 단어 단위 토큰화
- 장점: 토큰 시퀀스가 상대적으로 짧음
- 단점: Vocabulary 집합 크기가 너무 커짐(e.g. cat, cats), Unknown 토큰(<unk>) 발생할 가능성이 큼
- 문자(Character) 단위 토큰화
- 장점: Vocabulary 집합 크기가 작음. Unknown 토큰(<unk>) 발생할 가능성이 작음
- 단점: 토큰 시퀀스가 길어져서 학습이 어려울 수 있음.
- 단어 단위 토큰화와 문자 단위 토큰화의 중간단위(Subword)로 토큰화 (e.g. BPE(Byte-pair Encoding) 알고리즘)
- 단어 단위 토큰화
728x90
'AI & 딥러닝' 카테고리의 다른 글
LLM 용어 정리 - 창발 능력(Emergent Abilites) (0) | 2025.02.26 |
---|---|
LLM 용어 정리 - In-context learning (0) | 2025.02.26 |
기업별 대표 LLM 사용 및 비교해보기 ChatGPT, Bard, CLOVA X (0) | 2025.02.25 |
LLM(Large Language Model)이란 (1) | 2025.02.21 |
[23강] 인공지능관련 개발자 / 전문가로서의 전망 (1) | 2024.12.02 |