Tìm hiểu về nhúng (embeddings) và cách chúng hỗ trợ AI bằng cách nắm bắt các mối quan hệ ngữ nghĩa trong dữ liệu cho NLP, hệ thống đề xuất và thị giác máy tính.
Nhúng là các biểu diễn vectơ liên tục, ít chiều và dày đặc của các biến rời rạc, đóng vai trò là định dạng dữ liệu cơ bản trong trí tuệ nhân tạo (AI) hiện đại. Không giống như các biểu diễn thưa thớt như mã hóa one-hot, vốn có thể tạo ra các vectơ khổng lồ và kém hiệu quả, nhúng nắm bắt các mối quan hệ ngữ nghĩa và ý nghĩa cơ bản của dữ liệu bằng cách ánh xạ các đầu vào nhiều chiều—như từ ngữ, hình ảnh hoặc âm thanh—vào một không gian số nhỏ gọn. Trong không gian vectơ đã học này, các mục có cùng đặc điểm hoặc ngữ cảnh sẽ nằm gần nhau, cho phép các mô hình học máy (ML) hiểu và xử lý các mẫu phức tạp một cách trực quan.
Khái niệm cốt lõi đằng sau nhúng dữ liệu là việc chuyển đổi dữ liệu thô sang dạng toán học mà máy tính có thể xử lý hiệu quả. Quá trình này thường liên quan đến một mạng nơ-ron (NN) học cách ánh xạ dữ liệu đầu vào thành các vectơ số thực. Trong giai đoạn huấn luyện mô hình , mạng sẽ điều chỉnh các vectơ này sao cho khoảng cách giữa chúng tương ứng với độ tương đồng của các mục mà chúng đại diện.
Ví dụ, trong xử lý ngôn ngữ tự nhiên (NLP) , các nhúng cho từ "vua" và "nữ hoàng" sẽ gần nhau hơn về mặt toán học so với "quả táo", phản ánh mối quan hệ ngữ nghĩa của chúng. Phép biến đổi này là một hình thức giảm chiều , giúp bảo toàn thông tin thiết yếu đồng thời loại bỏ nhiễu, giúp các tác vụ tiếp theo như phân loại hoặc phân cụm hiệu quả hơn đáng kể.
Các nhúng dữ liệu thường được tạo ra như một sản phẩm phụ của quá trình đào tạo các mô hình học sâu (DL) trên các tập dữ liệu lớn. Các nền tảng như PyTorch và TensorFlow cung cấp các lớp được thiết kế riêng để học các biểu diễn này.
Bạn có thể tạo nhúng cho hình ảnh bằng quy trình làm việc thị giác máy tính (CV) tiêu chuẩn. Sau đây là Python đoạn trích minh họa cách trích xuất nhúng từ hình ảnh bằng mô hình phân loại YOLO11 Ultralytics đã được đào tạo trước.
from ultralytics import YOLO
# Load a YOLO11 classification model
model = YOLO("yolo11n-cls.pt")
# Generate embeddings for an image from a URL
# The embed() method specifically returns the feature vector
embedding_vector = model.embed("https://ultralytics.com/images/bus.jpg")
# Output the shape of the embedding (e.g., a vector of length 1280)
print(f"Embedding shape: {embedding_vector[0].shape}")
Công nghệ nhúng đã cách mạng hóa cách hệ thống xử lý dữ liệu phi cấu trúc, cung cấp những khả năng trước đây không thể thực hiện được.
Việc hiểu được sự khác biệt giữa nhúng và các thuật ngữ liên quan là rất quan trọng để điều hướng bối cảnh AI.
Bằng cách chuyển đổi các khái niệm trừu tượng thành các vectơ toán học, nhúng sẽ thu hẹp khoảng cách giữa trực giác của con người và logic máy móc, cho phép đạt được khả năng nhận dạng mẫu tinh vi như trong các ứng dụng AI tiên tiến nhất hiện nay.