Ultralytics YOLO27: Đăng ký vào danh sách chờ.
Cấp phép YOLO
Quay lại Bảng thuật ngữ Ultralytics

Zero-Shot Learning

Học zero-shot nhận diện các lớp mà không cần ví dụ được gán nhãn bằng cách đối chiếu đầu vào với mô tả văn bản. Bài viết trình bày CLIP, phát hiện open-vocabulary và các giới hạn.

Zero-shot learning (ZSL) là khả năng của model nhận biết các lớp mà model chưa từng thấy ví dụ huấn luyện được gán nhãn. Thay vì ví dụ, model nhận mô tả của từng lớp mới, chẳng hạn danh sách thuộc tính hoặc, trong các hệ thống hiện đại, tên lớp dưới dạng văn bản; sau đó model đối chiếu đầu vào với những mô tả này trong một không gian embedding dùng chung. Học có giám sát tiêu chuẩn chỉ có thể dự đoán các lớp trong nhãn huấn luyện, nên muốn thêm một danh mục cần thu thập và gán nhãn dữ liệu mới rồi huấn luyện lại. Model zero-shot thêm danh mục chỉ bằng cách bổ sung tên danh mục đó. CLIP của OpenAI, được huấn luyện trên 400 triệu cặp ảnh-chú thích, đạt độ chính xác trên ImageNet ngang với ResNet-50 có giám sát ban đầu mà không dùng bất kỳ ảnh huấn luyện nào trong số 1,28 triệu ảnh ImageNet được gán nhãn.

Cách hoạt động của học zero-shot#

Zero-shot learning chuyển giao kiến thức thông qua không gian ngữ nghĩa liên kết các lớp đã thấy với các lớp chưa thấy. Các phương pháp ban đầu mô tả từng lớp bằng thuộc tính do con người định nghĩa, chẳng hạn "có vằn", "có móng guốc" và "sống ở đồng cỏ", rồi huấn luyện model dự đoán các thuộc tính đó; nhờ vậy, một loài vật chưa từng xuất hiện trong dữ liệu huấn luyện có thể được nhận diện là lớp có thuộc tính phù hợp. Model ngôn ngữ-thị giác thay thế các thuộc tính được xây dựng thủ công bằng ngôn ngữ tự nhiên. CLIP huấn luyện bộ mã hóa hình ảnh và bộ mã hóa văn bản bằng học tương phản, để ảnh và chú thích khớp nhau có embedding tương tự. Để phân loại, model tạo embedding cho prompt của từng lớp ứng viên, chẳng hạn "một bức ảnh chụp ngựa vằn", tạo embedding cho hình ảnh rồi chọn lớp có độ tương tự cosine cao nhất:

Vì bộ phân loại được tạo từ văn bản tại thời điểm suy luận, danh sách lớp có thể thay đổi theo từng request. Cách làm tương tự cũng được áp dụng cho large language model (LLM), trong đó zero-shot prompting nghĩa là chỉ cung cấp cho model một chỉ dẫn, không kèm ví dụ mẫu, như định nghĩa trong bài báo GPT-3.

Phát hiện đối tượng zero-shot#

Bộ phát hiện open-vocabulary mở rộng zero-shot learning từ toàn bộ hình ảnh sang từng đối tượng riêng lẻ. Chúng chấm điểm mọi vùng ứng viên dựa trên embedding văn bản của các lớp được yêu cầu, nhờ vậy có thể tìm đối tượng nằm ngoài mọi tập nhãn cố định, chẳng hạn một sản phẩm cụ thể trong kho lưu trữ video. YOLO-World áp dụng phương pháp này cho các model YOLO thời gian thực. YOLOE-26 của Ultralytics, phiên bản open-vocabulary của YOLO26, mã hóa từng tên lớp truyền vào set_classes() bằng bộ mã hóa văn bản MobileCLIP2 và trả về box cùng mask phân đoạn instance cho các lớp đó mà không cần huấn luyện lại:

from ultralytics import YOLOE

# Checkpoint YOLOE-26 nhận prompt văn bản
model = YOLOE("yoloe-26s-seg.pt")

# Đặt tên lớp tại thời điểm suy luận; ở đây dùng các từ không phải nhãn COCO
model.set_classes(["city bus", "sneakers", "glasses"])

# Phát hiện và phân đoạn các lớp đã đặt tên
results = model.predict("https://ultralytics.com/images/bus.jpg")
result = results[0]
result.save(filename="zero_shot_result.jpg")

Lần gọi set_classes() đầu tiên sẽ tải encoder văn bản xuống. Với tác vụ phát hiện đối tượng, "zero-shot" nghĩa là model chưa nhận bounding box có nhãn cho một class, mặc dù tên class đó có thể xuất hiện trong dữ liệu ảnh-văn bản dùng để pretrain encoder. Ultralytics Platform tự động gán nhãn dataset detection bằng các bộ phát hiện zero-shot và mô hình thị giác-ngôn ngữ; Bảng xếp hạng VLM so sánh độ chính xác khi từng model tìm đối tượng trong ảnh thực tế.

Ứng dụng#

  • Tìm kiếm hình ảnh và kiểm duyệt nội dung: Thư viện media và nền tảng nội dung tìm hình ảnh khớp với truy vấn văn bản hoặc gắn cờ danh mục nội dung mới mà không cần huấn luyện bộ phân loại cho từng truy vấn.
  • Robot: Robot được yêu cầu lấy "chiếc cốc màu xanh" có thể định vị một lớp đối tượng mà robot chưa từng được huấn luyện để phát hiện.
  • Động vật hoang dã và đa dạng sinh học: BioCLIP, được huấn luyện trên hơn 10 triệu hình ảnh trải rộng khắp cây sự sống, phân loại zero-shot các loài dựa trên tên của chúng và giành giải bài báo sinh viên xuất sắc nhất tại CVPR 2024.
  • Chẩn đoán hình ảnh y khoa: Model được huấn luyện trên các cặp ảnh X-quang và báo cáo chẩn đoán hình ảnh bằng văn bản có thể gắn cờ những phát hiện chưa từng được chú giải làm nhãn huấn luyện tường minh.

Thách thức#

Độ chính xác zero-shot thường thấp hơn model được huấn luyện trên các ví dụ có gán nhãn thuộc cùng lớp, đặc biệt với các danh mục chuyên biệt hoặc phân loại chi tiết có tên ít xuất hiện trong văn bản trên web. Trong zero-shot learning tổng quát, nơi ảnh kiểm thử có thể thuộc cả lớp đã thấy lẫn chưa thấy, model thiên về các lớp đã được huấn luyện; các nghiên cứu benchmark cho thấy độ chính xác trên lớp chưa thấy giảm mạnh trong trường hợp này. Kết quả cũng phụ thuộc vào cách diễn đạt, khiến prompt engineering trở thành một phần của phân loại zero-shot: độ chính xác trên ImageNet của CLIP tăng 1,3% khi thay tên lớp đơn thuần bằng prompt "một bức ảnh chụp {label}."

  • Few-shot learning: Học lớp mới từ một vài ví dụ được gán nhãn cho mỗi lớp, thường từ 1 đến 10 ví dụ. Zero-shot learning là trường hợp không có ví dụ nào mà thay vào đó có một mô tả.
  • One-shot learning: Trường hợp few-shot learning chỉ có chính xác một ví dụ được gán nhãn cho mỗi lớp, thường được đối chiếu bằng độ tương tự embedding.
  • Transfer learning: Tái sử dụng model được tiền huấn luyện cho tác vụ mới, thường bằng cách fine-tune trên dữ liệu có gán nhãn. Zero-shot learning chuyển giao thông qua không gian ảnh-văn bản dùng chung mà không cần huấn luyện thêm.
  • Visual prompting: Chỉ định mục tiêu bằng ảnh mẫu hoặc box thay vì từ ngữ; cách này hữu ích với những đối tượng khó gọi tên, chẳng hạn một bộ phận hoặc logo cụ thể.

Khám phá các giải pháp

Thị giác máy tính trong thể thao

Thị giác máy tính trong thể thao

Khám phá cách Ultralytics YOLO thúc đẩy thị giác máy tính trong thể thao với khả năng theo dõi cầu thủ và bóng, phân tích hiệu suất, cung cấp thông tin chuyên sâu cho huấn luyện và hỗ trợ phục hồi cho vận động viên.
Tìm hiểu thêm
Thị giác máy tính cho ảnh hàng không

Thị giác máy tính cho ảnh hàng không

Chuyển hình ảnh từ drone và ảnh hàng không thành thông tin chuyên sâu theo thời gian thực cho nông nghiệp, nuôi trồng thủy sản, bảo tồn và phân tích không gian địa lý với Ultralytics YOLO.
Tìm hiểu thêm
Thị giác máy tính trong hàng không vũ trụ

Thị giác máy tính trong hàng không vũ trụ

Ứng dụng computer vision trong ngành hàng không vũ trụ với Ultralytics YOLO cho kiểm tra máy bay, phát hiện dị vật trên đường băng (FOD), vận hành mặt đất tại sân bay và phát hiện lỗi vật liệu composite.
Tìm hiểu thêm
Computer vision trong lĩnh vực an ninh

Computer vision trong lĩnh vực an ninh

Bảo vệ mọi địa điểm bằng model Ultralytics YOLO. Vision AI hỗ trợ giám sát vành đai, phát hiện mối đe dọa, nhận dạng biển số và an toàn nơi làm việc.
Tìm hiểu thêm
Computer vision trong robotics

Computer vision trong robotics

Tăng cường năng lực cho máy móc thông minh bằng model Ultralytics YOLO. Vision AI trong lĩnh vực robotics hỗ trợ điều hướng tự động, nhận thức, theo dõi đối tượng và điều khiển theo thời gian thực.
Tìm hiểu thêm
Thị giác máy tính trong logistics

Thị giác máy tính trong logistics

Tinh giản hoạt động logistics với các model Ultralytics YOLO. Vision AI hỗ trợ kiểm tra kiện hàng, phân loại, theo dõi phương tiện và giám sát an toàn kho hàng theo thời gian thực.
Tìm hiểu thêm
Thị giác máy tính trong bán lẻ

Thị giác máy tính trong bán lẻ

Định hình lại hoạt động bán lẻ với các model Ultralytics YOLO. Vision AI hỗ trợ theo dõi hàng tồn kho, giám sát kệ hàng, quản lý hàng chờ và phân tích khách hàng thông minh hơn.
Tìm hiểu thêm
Thị giác máy tính trong chăm sóc sức khỏe

Thị giác máy tính trong chăm sóc sức khỏe

Xây dựng các giải pháp chăm sóc sức khỏe với model Ultralytics YOLO. Vision AI trong chăm sóc sức khỏe hỗ trợ xử lý hình ảnh y tế nhanh hơn, chẩn đoán thông minh hơn và theo dõi bệnh nhân.
Tìm hiểu thêm
Thị giác máy tính trong sản xuất

Thị giác máy tính trong sản xuất

Tối ưu hóa sản xuất bằng các model Ultralytics YOLO. Vision AI thúc đẩy kiểm soát chất lượng, phát hiện lỗi, tuân thủ PPE và tự động hóa dây chuyền lắp ráp.
Tìm hiểu thêm
Thị giác máy tính trong ngành ô tô

Thị giác máy tính trong ngành ô tô

Ứng dụng thị giác máy tính trong ngành ô tô với các model Ultralytics YOLO. Vision AI nâng cao an toàn giao thông, hỗ trợ người lái và tự động hóa phương tiện để tạo nên những tuyến đường thông minh hơn.
Tìm hiểu thêm
Thị giác máy tính trong nông nghiệp

Thị giác máy tính trong nông nghiệp

Ứng dụng AI thị giác vào nông nghiệp thông minh với các model Ultralytics YOLO. Hỗ trợ giám sát cây trồng, theo dõi vật nuôi và canh tác chính xác để nâng cao năng suất một cách thông minh hơn.
Tìm hiểu thêm

Hãy cùng nhau kiến tạo tương lai của AI!

Bắt đầu hành trình hướng đến tương lai của machine learning