Yolo Tầm nhìn Thâm Quyến
Thâm Quyến
Tham gia ngay
Bảng chú giải thuật ngữ

Tìm kiếm ngữ nghĩa (Semantic Search)

Khám phá cách tìm kiếm ngữ nghĩa sử dụng trí tuệ nhân tạo và các công nghệ nhúng để hiểu ý định của người dùng. Học cách xây dựng hệ thống tìm kiếm trực quan với... Ultralytics YOLO26 và nền tảng của chúng tôi.

Tìm kiếm ngữ nghĩa là một kỹ thuật truy xuất thông tin tinh vi nhằm mục đích hiểu ý định và ý nghĩa ngữ cảnh của truy vấn người dùng thay vì chỉ đơn thuần khớp các từ cụ thể. Bằng cách tận dụng những tiến bộ trong Xử lý ngôn ngữ tự nhiên (NLP)Học máy (ML) , công nghệ này cho phép các hệ thống diễn giải ngôn ngữ con người với độ tinh tế cao hơn. Đây là nền tảng của các ứng dụng Trí tuệ nhân tạo (AI) hiện đại, cho phép tương tác trực quan hơn giữa con người và máy móc bằng cách thu hẹp khoảng cách giữa các truy vấn mơ hồ của người dùng và dữ liệu liên quan.

Tìm kiếm ngữ nghĩa hoạt động như thế nào

Về bản chất, tìm kiếm ngữ nghĩa vượt ra ngoài việc chỉ so khớp ký tự theo nghĩa đen để phân tích mối quan hệ giữa các khái niệm. Các công cụ tìm kiếm truyền thống có thể thất bại nếu người dùng tìm kiếm từ "mèo" nhưng tài liệu chỉ chứa từ "cat". Tìm kiếm ngữ nghĩa giải quyết vấn đề này bằng cách chuyển đổi dữ liệu phi cấu trúc —như văn bản, hình ảnh hoặc âm thanh—thành các biểu diễn toán học được gọi là embedding .

Các vectơ nhúng này là các vectơ đa chiều được đặt trong một "không gian ngữ nghĩa". Trong không gian này, các mục có ý nghĩa tương tự được đặt gần nhau. Ví dụ, vectơ cho "xe hơi" sẽ gần hơn về mặt toán học với "ô tô" và "đường" hơn là với "chuối". Khi người dùng gửi một truy vấn, hệ thống sẽ chuyển đổi truy vấn đó thành một vectơ và tìm các điểm dữ liệu gần nhất trong cơ sở dữ liệu vectơ . Quá trình này dựa trên các mô hình học sâu để thực hiện trích xuất đặc trưng , ​​xác định các đặc điểm thiết yếu của dữ liệu.

Sau đây Python Đoạn mã này minh họa cách tạo ra các embedding này bằng cách sử dụng mô hình Ultralytics YOLO26 , đây là bước cơ bản để cho phép tìm kiếm ngữ nghĩa trực quan.

from ultralytics import YOLO

# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")

# Generate feature embeddings for an image
# This converts the visual content into a numerical vector
results = model.embed("https://ultralytics.com/images/bus.jpg")

# Output the shape of the embedding vector (e.g., length 1280)
print(f"Embedding vector shape: {results[0].shape}")

Các Ứng dụng Thực tế

Tìm kiếm ngữ nghĩa đã cách mạng hóa cách người dùng khám phá thông tin trong nhiều lĩnh vực khác nhau, giúp các hệ thống trở nên thông minh và hiệu quả hơn.

  • Thương mại điện tử và khám phá hình ảnh: Trong thế giới trí tuệ nhân tạo (AI) trong bán lẻ , tìm kiếm ngữ nghĩa hỗ trợ các tính năng "mua sắm theo phong cách". Khách hàng có thể tải lên ảnh một đôi giày thể thao hoặc tìm kiếm "phong cách mùa hè cổ điển". Hệ thống sử dụng thị giác máy tính để hiểu phong cách hình ảnh và truy xuất các sản phẩm phù hợp với thẩm mỹ đó, ngay cả khi mô tả sản phẩm không chứa chính xác các từ khóa đó. Điều này thường liên quan đến các mô hình đa phương thức có thể hiểu cả đầu vào văn bản và hình ảnh.
  • Quản lý tri thức và RAG: Các tổ chức lớn sử dụng tìm kiếm ngữ nghĩa để giúp nhân viên tìm kiếm tài liệu nội bộ. Thay vì phải nhớ chính xác tên tệp, nhân viên có thể đặt câu hỏi như "Làm thế nào để khởi động lại máy chủ?". Hệ thống sử dụng phương pháp tạo kết hợp truy xuất (RAG) để tìm các tài liệu chính sách liên quan nhất dựa trên ý nghĩa và đưa chúng vào Mô hình ngôn ngữ lớn (LLM) để tạo ra câu trả lời chính xác.
  • Đề xuất nội dung: Các nền tảng phát trực tuyến sử dụng hiểu biết ngữ nghĩa để cải thiện hệ thống đề xuất của họ. Bằng cách phân tích tóm tắt cốt truyện và bản đồ đặc điểm hình ảnh của các bộ phim mà người dùng yêu thích, nền tảng có thể đề xuất các tựa phim khác có chủ đề hoặc tâm trạng tương tự, giúp người dùng tương tác lâu hơn.

Tìm kiếm ngữ nghĩa (Semantic Search) so với các khái niệm liên quan

Để hiểu đầy đủ tiện ích của tìm kiếm ngữ nghĩa, cần phân biệt nó với các thuật ngữ liên quan trong lĩnh vực khoa học dữ liệu .

  • Tìm kiếm vectơ : Mặc dù thường được sử dụng thay thế cho nhau, nhưng về mặt kỹ thuật vẫn có sự khác biệt. Tìm kiếm vectơ là phương pháp toán học tính toán khoảng cách giữa các vectơ (thường sử dụng độ tương đồng cosin ). Tìm kiếm ngữ nghĩa là ứng dụng rộng hơn sử dụng tìm kiếm vectơ để đạt được mục tiêu hiểu ý định của người dùng.
  • Tìm kiếm từ khóa: Đây là phương pháp truyền thống dựa trên việc so khớp chuỗi chính xác. Phương pháp này tiết kiệm chi phí tính toán hơn nhưng dễ bị lỗi; nó gặp khó khăn với các từ đồng nghĩa và từ đa nghĩa (từ có nhiều nghĩa). Tìm kiếm ngữ nghĩa đòi hỏi nhiều sức mạnh tính toán hơn nhưng mang lại độ chính xác cao hơn đáng kể.
  • Học không cần dữ liệu huấn luyện (Zero-Shot Learning ): Điều này đề cập đến khả năng của mô hình trong việc... classify dữ liệu mà nó chưa từng thấy trong quá trình huấn luyện. Các công cụ tìm kiếm ngữ nghĩa thường thể hiện khả năng không cần huấn luyện lại (zero-shot) vì chúng có thể ánh xạ một truy vấn mới, chưa từng thấy đến các cụm khái niệm đã biết hiện có trong không gian nhúng mà không cần huấn luyện lại.

Việc triển khai tìm kiếm ngữ nghĩa thường đòi hỏi một quy trình mạnh mẽ để quản lý tập dữ liệu và huấn luyện mô hình. Nền tảng Ultralytics đơn giản hóa điều này bằng cách cung cấp các công cụ để chú thích dữ liệu, huấn luyện mô hình và triển khai chúng một cách hiệu quả. Đối với các nhà phát triển muốn xây dựng các hệ thống này, việc tìm hiểu hướng dẫn tìm kiếm tương đồng Ultralytics cung cấp các bước thực tiễn để tích hợp các khả năng mạnh mẽ này vào ứng dụng của họ.

Tham gia Ultralytics cộng đồng

Tham gia vào tương lai của AI. Kết nối, hợp tác và phát triển cùng với những nhà đổi mới toàn cầu

Tham gia ngay