Tokenization
토큰화가 원시 텍스트와 이미지를 AI가 처리할 수 있는 데이터로 어떻게 변환하는지 살펴보세요. Ultralytics YOLO26과 같은 모델에서 사용되는 NLP 및 컴퓨터 비전 방식을 배우세요.
토큰화는 텍스트, 이미지, 오디오와 같은 원시 데이터 스트림을 토큰이라 불리는 더 작고 관리하기 쉬운 단위로 분해하는 알고리즘 프로세스입니다. 이러한 변환은 데이터 전처리 파이프라인에서 중요한 가교 역할을 하며, 비정형 입력을 인공지능(AI) 시스템이 해석할 수 있는 숫자 형식으로 변환합니다. 컴퓨터는 본질적으로 인간의 언어나 시각적 장면을 이해할 수 없으므로, 계산을 수행하려면 수치적 표현이 필요합니다. 데이터를 토큰으로 세분화함으로써 엔지니어는 신경망이 이러한 단위를 의미적 의미를 포착하는 벡터 표현인 임베딩에 매핑할 수 있도록 합니다. 이 기본적인 단계가 없으면 머신러닝(ML) 모델은 패턴을 식별하거나, 맥락을 학습하거나, 현대적인 학습에 필요한 방대한 데이터셋을 처리할 수 없게 됩니다.
Link to this section토큰화와 토큰#
딥러닝(DL) 논의에서 두 용어가 종종 함께 언급되지만, 워크플로를 이해하기 위해서는 방법과 결과를 구분하는 것이 도움이 됩니다.
- **토큰화(Tokenization)**는 프로세스(동사)입니다. 이는 데이터를 분할하는 데 사용되는 특정 규칙 또는 알고리즘 세트를 의미합니다. 텍스트의 경우, NLTK나 spaCy와 같은 라이브러리를 사용하여 한 단위가 끝나고 다른 단위가 시작되는 지점을 결정하는 과정이 포함될 수 있습니다.
- **토큰(Token)**은 출력(명사)입니다. 이는 단일 단어, 하위 단어, 문자 또는 픽셀 패치와 같이 프로세스에 의해 생성된 개별 단위입니다.
Link to this section분야별 방법론#
토큰화 전략은 데이터의 양식에 따라 크게 달라지며, 이는 파운데이션 모델이 세상을 인식하는 방식에 영향을 미칩니다.
Link to this sectionNLP에서의 텍스트 토큰화#
자연어 처리(NLP)의 목표는 의미를 보존하면서 텍스트를 세분화하는 것입니다. 초기 방법들은 공백으로 단어를 구분하거나 불용어(stop words)를 제거하는 것과 같은 간단한 기술에 의존했습니다. 그러나 현대의 거대언어모델(LLM)은 Byte Pair Encoding (BPE) 또는 WordPiece와 같은 더욱 정교한 하위 단어 알고리즘을 활용합니다. 이 알고리즘들은 가장 빈번하게 나타나는 문자 쌍을 반복적으로 병합하여, 모델이 드문 단어를 익숙한 하위 구성 요소로 분해함으로써 처리할 수 있게 합니다(예: "smartphones"는 "smart" + "phones"가 됨). 이러한 접근 방식은 어휘 크기와 복잡한 언어를 표현하는 능력 사이의 균형을 맞춥니다.
Link to this section컴퓨터 비전에서의 시각적 토큰화#
Traditionally, computer vision (CV) models like CNNs processed pixels using sliding windows. The introduction of the Vision Transformer (ViT) changed this paradigm by applying tokenization to images. The image is sliced into fixed-size patches (e.g., 16x16 pixels), which are then flattened and linearly projected. These "visual tokens" allow the model to utilize self-attention mechanisms to learn global relationships across the image, similar to how a Transformer processes a sentence.
Link to this section실제 애플리케이션 사례#
토큰화는 오늘날 프로덕션 환경에서 사용되는 많은 AI 애플리케이션의 이면에 있는 보이지 않는 엔진입니다.
-
오픈 어휘 객체 탐지: YOLO-World와 같은 고급 아키텍처는 멀티모달 모델 방식을 채택합니다. 사용자가 "빨간 모자를 쓴 사람"과 같은 프롬프트를 입력하면, 시스템은 이 텍스트를 토큰화하고 이를 시각적 데이터와 동일한 특징 공간에 매핑합니다. 이는 제로샷 학습(zero-shot learning)을 가능하게 하여, 텍스트 토큰을 시각적 특징과 일치시킴으로써 명시적으로 학습되지 않은 객체도 탐지할 수 있도록 합니다.
-
생성 예술 및 디자인: 텍스트-투-이미지(text-to-image) 생성에서 사용자 프롬프트는 확산 과정을 안내하기 위해 토큰화됩니다. 모델은 이러한 토큰을 사용하여 생성을 조건화하며, 결과 이미지가 토큰화 단계에서 추출된 의미론적 개념(예: "sunset", "beach")과 일치하도록 보장합니다.
Link to this sectionPython 예제: 토큰 기반 탐지#
다음 예제는 ultralytics 패키지가 YOLO-World 워크플로 내에서 텍스트 토큰화를 어떻게 내재적으로 활용하는지 보여줍니다. 사용자 정의 클래스를 정의함으로써, 모델은 이러한 문자열을 토큰화하여 특정 객체를 동적으로 검색합니다.
from ultralytics import YOLO
# Load a pre-trained YOLO-World model capable of text-based detection
model = YOLO("yolov8s-world.pt")
# Define custom classes; these are tokenized internally to guide the model
# The model will look for visual features matching these text tokens
model.set_classes(["backpack", "bus"])
# Run prediction on an image
results = model.predict("https://ultralytics.com/images/bus.jpg")
# Show results (only detects the tokenized classes defined above)
results[0].show()Link to this section모델 성능에 미치는 영향#
토큰화 전략의 선택은 정확도(accuracy)와 계산 효율성에 직접적인 영향을 미칩니다. 비효율적인 토큰화는 NLP에서 "어휘 외(out-of-vocabulary)" 오류를 발생시키거나 이미지 분석에서 세밀한 세부 정보의 손실을 초래할 수 있습니다. PyTorch 및 TensorFlow와 같은 프레임워크는 이 단계를 최적화할 수 있는 유연한 도구를 제공합니다. 최첨단 YOLO26과 같은 아키텍처가 진화함에 따라, 효율적인 데이터 처리는 모델이 강력한 클라우드 GPU에서 엣지 장치에 이르기까지 다양한 하드웨어에서 실시간 추론(real-time inference)을 수행할 수 있도록 보장합니다. 이러한 복잡한 데이터 워크플로를 관리하는 팀들은 종종 Ultralytics Platform을 활용하여 데이터셋 어노테이션, 모델 학습(model training) 및 배포를 간소화합니다.






