Tokenization
Khám phá cách tokenization chuyển đổi văn bản và hình ảnh thô thành dữ liệu sẵn sàng cho AI. Tìm hiểu các phương pháp NLP và computer vision được sử dụng bởi những model như Ultralytics YOLO26.
Tokenization là quy trình thuật toán phân tách một luồng dữ liệu thô—chẳng hạn như văn bản, hình ảnh hoặc âm thanh—thành các đơn vị nhỏ hơn, dễ quản lý được gọi là token. Phép chuyển đổi này đóng vai trò là cầu nối quan trọng trong quy trình tiền xử lý dữ liệu, chuyển đổi dữ liệu đầu vào phi cấu trúc sang định dạng số mà các hệ thống trí tuệ nhân tạo (AI) có thể diễn giải. Máy tính vốn không thể tự hiểu ngôn ngữ con người hoặc các cảnh trực quan; chúng cần các biểu diễn dạng số để thực hiện phép tính. Bằng cách phân đoạn dữ liệu thành các token, kỹ sư cho phép mạng nơ-ron ánh xạ các đơn vị này tới embedding—các biểu diễn vector nắm bắt ý nghĩa ngữ nghĩa. Nếu thiếu bước nền tảng này, các model machine learning sẽ không thể xác định mẫu, học ngữ cảnh hoặc xử lý các dataset lớn cần thiết cho quá trình training hiện đại.
Tokenization và Token#
Mặc dù các thuật ngữ này thường được nhắc đến cùng nhau trong các cuộc thảo luận về deep learning, việc phân biệt phương pháp với kết quả sẽ giúp hiểu rõ workflow.
- Tokenization là quy trình (động từ). Thuật ngữ này đề cập đến tập hợp quy tắc hoặc thuật toán cụ thể được sử dụng để phân tách dữ liệu. Đối với văn bản, quy trình này có thể sử dụng các thư viện như NLTK hoặc spaCy để xác định điểm kết thúc của một đơn vị và điểm bắt đầu của đơn vị tiếp theo.
- Token là đầu ra (danh từ). Đây là đơn vị riêng lẻ được tạo ra bởi quy trình, chẳng hạn như một từ đơn, một từ con, một ký tự hoặc một mảnh pixel.
Các phương pháp trong những lĩnh vực khác nhau#
Chiến lược tokenization thay đổi đáng kể tùy thuộc vào modality của dữ liệu, từ đó ảnh hưởng đến cách một foundation model nhận thức thế giới.
Tokenization văn bản trong NLP#
Trong Xử lý ngôn ngữ tự nhiên (NLP), mục tiêu là phân đoạn văn bản nhưng vẫn giữ nguyên ý nghĩa. Các phương pháp ban đầu dựa trên những kỹ thuật đơn giản như tách từ bằng dấu cách hoặc loại bỏ stop word. Tuy nhiên, các mô hình ngôn ngữ lớn (LLMs) hiện đại sử dụng các thuật toán từ con tinh vi hơn, chẳng hạn như Mã hóa cặp byte (BPE) hoặc WordPiece. Các thuật toán này lặp đi lặp lại việc gộp các cặp ký tự xuất hiện thường xuyên nhất, cho phép model xử lý các từ hiếm bằng cách tách chúng thành những thành phần con quen thuộc (ví dụ: "smartphones" trở thành "smart" + "phones"). Phương pháp này cân bằng kích thước vocabulary với khả năng biểu diễn ngôn ngữ phức tạp.
Tokenization hình ảnh trong thị giác máy tính#
Theo cách truyền thống, các model thị giác máy tính (CV) như CNN xử lý pixel bằng các cửa sổ trượt. Sự ra đời của Transformer thị giác (ViT) đã thay đổi paradigm này bằng cách áp dụng tokenization cho hình ảnh. Hình ảnh được chia thành các patch có kích thước cố định (ví dụ: 16x16 pixel), sau đó được làm phẳng và chiếu tuyến tính. Các "visual token" này cho phép model sử dụng cơ chế self-attention để học các mối quan hệ toàn cục trên toàn bộ hình ảnh, tương tự cách một Transformer xử lý một câu.
Các ứng dụng trong thực tế#
Tokenization là động cơ thầm lặng đứng sau nhiều ứng dụng AI được sử dụng trong môi trường production ngày nay.
-
Phát hiện đối tượng với vocabulary mở: Các kiến trúc nâng cao như YOLO-World áp dụng phương pháp model đa phương thức. Khi người dùng nhập prompt như "người đội mũ đỏ," hệ thống sẽ token hóa văn bản này và ánh xạ nó vào cùng không gian đặc trưng với dữ liệu hình ảnh. Điều này cho phép zero-shot learning, giúp model phát hiện những đối tượng mà model chưa được training rõ ràng bằng cách đối sánh các token văn bản với các đặc trưng hình ảnh.
-
Nghệ thuật và thiết kế generative: Trong quá trình tạo text-to-image, các prompt của người dùng được token hóa để định hướng quy trình diffusion. Model sử dụng các token này để điều kiện hóa quá trình tạo, đảm bảo hình ảnh kết quả phù hợp với các khái niệm ngữ nghĩa (ví dụ: "hoàng hôn," "bãi biển") được trích xuất trong giai đoạn tokenization.
Ví dụ Python: Phát hiện dựa trên token#
Ví dụ sau minh họa cách package ultralytics ngầm sử dụng tokenization văn bản trong workflow YOLO-World. Bằng cách định nghĩa các class tùy chỉnh, model token hóa những chuỗi này để tìm kiếm động các đối tượng cụ thể.
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()Tác động đến hiệu suất model#
Việc lựa chọn chiến lược tokenization tác động trực tiếp đến độ chính xác và hiệu quả tính toán. Tokenization không hiệu quả có thể dẫn đến lỗi "ngoài vocabulary" trong NLP hoặc làm mất các chi tiết tinh vi trong phân tích hình ảnh. Các framework như PyTorch và TensorFlow cung cấp các công cụ linh hoạt để tối ưu hóa bước này. Khi các kiến trúc phát triển—chẳng hạn như YOLO26 hiện đại nhất—việc xử lý dữ liệu hiệu quả đảm bảo model có thể chạy suy luận thời gian thực trên nhiều loại phần cứng, từ GPU cloud mạnh mẽ đến thiết bị edge. Các team quản lý những workflow dữ liệu phức tạp này thường dựa vào Ultralytics Platform để hợp lý hóa việc gán nhãn dataset, training model và triển khai.









