Thuật ngữ

Máy biến đổi tầm nhìn (ViT)

Khám phá sức mạnh của Vision Transformers (ViTs) trong thị giác máy tính. Tìm hiểu cách chúng vượt trội hơn CNN bằng cách nắm bắt bối cảnh hình ảnh toàn cầu.

Xe lửa YOLO mô hình đơn giản
với Ultralytics TRUNG TÂM

Tìm hiểu thêm

Vision Transformer (ViT) là một loại kiến trúc mạng nơ-ron được chuyển thể từ các mô hình Transformer ban đầu được thiết kế cho Xử lý ngôn ngữ tự nhiên (NLP) . Được giới thiệu bởi Google các nhà nghiên cứu trong bài báo "Một hình ảnh có giá trị bằng 16x16 từ" , ViTs áp dụng cơ chế tự chú ý của Transformer trực tiếp vào các chuỗi bản vá hình ảnh, coi xử lý hình ảnh như một nhiệm vụ mô hình hóa chuỗi. Cách tiếp cận này đánh dấu sự thay đổi đáng kể từ sự thống trị của Mạng nơ-ron tích chập (CNN) trong thị giác máy tính (CV) .

Cách thức hoạt động của Vision Transformers

Thay vì xử lý hình ảnh từng pixel bằng bộ lọc tích chập , đầu tiên ViT chia hình ảnh đầu vào thành các mảng có kích thước cố định, không chồng lấn. Sau đó, các mảng này được làm phẳng thành các vectơ, nhúng tuyến tính và được tăng cường bằng các nhúng vị trí để giữ lại thông tin không gian (tương tự như cách mã hóa vị trí từ trong NLP). Chuỗi vectơ này sau đó được đưa vào bộ mã hóa Transformer chuẩn, sử dụng các lớp tự chú ý nhiều đầu để cân nhắc tầm quan trọng của các mảng khác nhau so với nhau. Đầu ra cuối cùng từ bộ mã hóa Transformer thường được chuyển đến một đầu phân loại đơn giản (như Perceptron nhiều lớp) cho các tác vụ như phân loại hình ảnh . Kiến trúc này cho phép ViT mô hình hóa các phụ thuộc tầm xa và ngữ cảnh toàn cục trong một hình ảnh một cách hiệu quả.

Sự liên quan và ứng dụng

Vision Transformers đã trở nên cực kỳ quan trọng trong học sâu hiện đại do khả năng mở rộng và hiệu suất ấn tượng của chúng, đặc biệt là với quá trình đào tạo trước quy mô lớn trên các tập dữ liệu như ImageNet hoặc thậm chí là các tập dữ liệu độc quyền lớn hơn. Khả năng mô hình hóa bối cảnh toàn cầu của chúng khiến chúng phù hợp với nhiều tác vụ CV ngoài phân loại cơ bản, bao gồm:

ViTs ngày càng được tích hợp vào các nền tảng như Ultralytics HUB và các thư viện như Hugging Face Transformers , giúp chúng có thể truy cập được để nghiên cứu và triển khai bằng các khuôn khổ như PyTorchTensorFlow . Chúng cũng có thể được tối ưu hóa để triển khai Edge AI trên các thiết bị như NVIDIA Jetson hoặc Google ' Edge TPU sử dụng các công cụ như TensorRT .

ViT so với CNN

Mặc dù cả ViT và CNN đều là những kiến trúc nền tảng trong thị giác máy tính (xem Lịch sử các mô hình thị giác ), nhưng chúng có cách tiếp cận khác nhau đáng kể:

  • Độ lệch quy nạp: CNN có độ lệch quy nạp mạnh đối với tính cục bộ và độ tương đương dịch chuyển thông qua các lớp tích chập và nhóm của chúng. ViT có độ lệch quy nạp yếu hơn, phụ thuộc nhiều hơn vào các mẫu học từ dữ liệu, đặc biệt là mối quan hệ giữa các phần xa của hình ảnh thông qua sự tự chú ý.
  • Phụ thuộc dữ liệu: ViT thường yêu cầu lượng lớn dữ liệu đào tạo (hoặc đào tạo trước mở rộng) để vượt trội hơn CNN hiện đại. Với các tập dữ liệu nhỏ hơn, CNN thường tổng quát hóa tốt hơn do các sai lệch tích hợp của chúng.
  • Chi phí tính toán: Đào tạo ViT có thể tốn nhiều công sức tính toán, thường đòi hỏi GPU tài nguyên. Tuy nhiên, tốc độ suy luận có thể cạnh tranh, đặc biệt là đối với các mô hình lớn hơn. Ví dụ, các mô hình RT-DETR cung cấp hiệu suất thời gian thực nhưng có thể có nhu cầu tài nguyên cao hơn so với các mô hình dựa trên CNN tương đương YOLO mô hình.
  • Bối cảnh toàn cầu so với cục bộ: CNN xây dựng các tính năng phân cấp từ các mẫu cục bộ. ViT có thể mô hình hóa các tương tác toàn cầu giữa các bản vá từ các lớp sớm nhất, có khả năng nắm bắt bối cảnh rộng hơn hiệu quả hơn cho một số tác vụ nhất định.

Sự lựa chọn giữa ViT và CNN thường phụ thuộc vào nhiệm vụ cụ thể, các tập dữ liệu có sẵn và các tài nguyên tính toán. ViT thường vượt trội khi có sẵn lượng lớn dữ liệu đào tạo và bối cảnh toàn cầu là tối quan trọng. CNN, giống như những CNN được sử dụng làm xương sống trong họ YOLO Ultralytics (ví dụ: YOLOv8 , YOLOv10 , YOLO11 ), vẫn có hiệu quả cao và hiệu suất cao, đặc biệt là đối với việc phát hiện đối tượng theo thời gian thực trên các thiết bị bị hạn chế. Kiến trúc lai kết hợp các tính năng tích chập với các lớp biến áp (như trong RT-DETR ) cũng là một hướng đi đầy hứa hẹn, cố gắng tận dụng thế mạnh của cả hai phương pháp. Tinh chỉnh các mô hình được đào tạo trước, dù dựa trên ViT hay CNN, là một phương pháp phổ biến sử dụng các kỹ thuật như học chuyển giao .

Đọc tất cả