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

Vision Transformer (ViT)

Khám phá sức mạnh của Vision Transformer (ViT) 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 ngữ cảnh hình ảnh toàn cục.

Vision Transformer (ViT) là một kiến trúc học sâu áp dụng các nguyên lý của mô hình Transformer gốc trực tiếp vào các chuỗi hình ảnh. Ban đầu được giới thiệu cho Xử lý Ngôn ngữ Tự nhiên (NLP) , Transformer đã cách mạng hóa lĩnh vực này bằng cách sử dụng các cơ chế cho phép mô hình đánh giá tầm quan trọng của các phần khác nhau của dữ liệu đầu vào. ViT được đề xuất bởi Google Nghiên cứu trong bài báo "Một hình ảnh có giá trị bằng 16x16 từ" như một giải pháp thay thế cho Mạng Nơ-ron Tích chập (CNN) tiêu chuẩn cho các tác vụ thị giác. Không giống như CNN, vốn xử lý các điểm ảnh bằng bộ lọc cục bộ, ViT xử lý hình ảnh như một chuỗi các mảng có kích thước cố định, cho phép chúng nắm bắt bối cảnh toàn cục và các mối quan hệ phụ thuộc tầm xa ngay từ lớp đầu tiên bằng cách sử dụng kỹ thuật tự chú ý .

Cách Vision Transformer hoạt động

Kiến trúc của ViT thể hiện một sự thay đổi đáng kể trong cách máy móc xử lý thông tin hình ảnh. Quy trình làm việc bao gồm việc chia nhỏ hình ảnh thành các thành phần nhỏ hơn có thể được xử lý tương tự như các từ trong câu.

  1. Phân vùng bản vá: Hình ảnh đầu vào được chia thành một lưới các bản vá không chồng lấn (ví dụ: 16x16 pixel). Bước này biến đổi hình ảnh 2D thành một chuỗi các vectơ 1D, thực chất là mã hóa dữ liệu hình ảnh.
  2. Phép chiếu tuyến tính các mảng phẳng: Mỗi mảng được làm phẳng và chiếu vào không gian có chiều thấp hơn, tạo ra các phần nhúng thể hiện các đặc điểm trực quan của khu vực cụ thể đó.
  3. Nhúng vị trí: Vì kiến trúc Transformer không hiểu được thứ tự của chuỗi nên các nhúng vị trí có thể học được sẽ được thêm vào nhúng bản vá để giữ lại thông tin không gian về vị trí của từng bản vá trong hình ảnh gốc.
  4. Bộ mã hóa Transformer: Chuỗi nhúng được đưa vào bộ mã hóa Transformer tiêu chuẩn. Tại đây, cơ chế chú ý cho phép mô hình tìm hiểu mối quan hệ giữa từng mảng và từng mảng khác, bất kể khoảng cách giữa chúng trong ảnh.
  5. Đầu phân loại: Đối với các tác vụ như phân loại hình ảnh , một mã thông báo đặc biệt được thêm vào chuỗi và trạng thái cuối cùng của nó được đưa vào đầu Multi-Layer Perceptron (MLP) để dự đoán nhãn lớp.

Kiến trúc ViT so với CNN

Mặc dù cả hai kiến trúc đều là nền tảng cho thị giác máy tính (CV) hiện đại, chúng dựa trên các độ lệch quy nạp khác nhau. CNN sử dụng các phép toán tích chập ưu tiên các tương tác cục bộ và tính bất biến tịnh tiến (nhận dạng một đối tượng bất kể vị trí của nó). Điều này làm cho CNN cực kỳ hiệu quả với các tập dữ liệu nhỏ. Ngược lại, ViT có cấu trúc ít đặc thù với hình ảnh hơn và dựa vào các mẫu học trực tiếp từ các tập dữ liệu lớn như ImageNet -21k .

ViT thường hoạt động hiệu quả hơn khi được đào tạo trên lượng dữ liệu rất lớn, vì chúng có thể mô hình hóa các mối quan hệ toàn cục phức tạp mà CNN có thể bỏ sót. Tuy nhiên, phạm vi toàn cục này thường đi kèm với yêu cầu tính toán cao hơn khi đào tạo và tốc độ suy luận chậm hơn trên các thiết bị biên hạn chế về tài nguyên. Các mô hình lai như RT-DETR cố gắng thu hẹp khoảng cách này bằng cách kết hợp xương sống CNN để trích xuất đặc điểm hiệu quả với bộ mã hóa Transformer cho ngữ cảnh toàn cục.

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

Vision Transformers đã thành công trong các lĩnh vực mà việc hiểu bối cảnh toàn diện của một cảnh quan trọng hơn là các chi tiết kết cấu cấp thấp.

  • Phân tích hình ảnh y tế: Trong các lĩnh vực như phân tích hình ảnh y tế , ViT được sử dụng để detect Các bất thường trong chụp MRI hoặc chụp X-quang. Ví dụ, trong phát hiện khối u , ViT có thể so sánh các đặc điểm từ các phần xa của một cơ quan để xác định các mô ác tính trông có vẻ bình thường khi xét riêng lẻ, giúp cải thiện độ chính xác của chẩn đoán.
  • Viễn thám và Hình ảnh Vệ tinh: ViT được sử dụng hiệu quả để phân tích hình ảnh vệ tinh phục vụ giám sát môi trường. Khả năng xử lý bối cảnh toàn cầu của chúng giúp phân biệt các loại địa hình tương tự, chẳng hạn như phân biệt các cánh đồng trồng trọt đa dạng hoặc theo dõi sự mở rộng đô thị trên các khu vực địa lý rộng lớn.

Sử dụng Transformers với Ultralytics

Các ultralytics gói hỗ trợ các kiến trúc dựa trên Transformer như RT-DETR (Bộ chuyển đổi phát hiện thời gian thực), tận dụng sức mạnh của ViTs cho phát hiện đối tượng. Trong khi các mô hình dựa trên CNN như được đề xuất YOLO11 thường nhanh hơn đối với các ứng dụng thời gian thực, RT-DETR cung cấp một giải pháp thay thế mạnh mẽ khi độ chính xác cao và bối cảnh toàn cầu được ưu tiên.

from ultralytics import RTDETR

# Load a pretrained RT-DETR model (Transformer-based architecture)
model = RTDETR("rtdetr-l.pt")

# Perform inference on an image to detect objects
results = model("https://ultralytics.com/images/bus.jpg")

# Display the results with bounding boxes
results[0].show()

Nhìn về phía trước, những đổi mới về hiệu quả là rất quan trọng. Ultralytics Hiện đang phát triển YOLO26 , nhằm mục đích mang lại độ chính xác cao tương đương với Transformers trong khi vẫn duy trì tốc độ của CNN. Ngoài ra, Nền tảng Ultralytics sắp ra mắt sẽ hợp lý hóa quy trình làm việc để đào tạo và triển khai các mô hình tiên tiến này trên nhiều môi trường khác nhau, từ máy chủ đám mây đến phần cứng biên. Các nền tảng lớn như PyTorchTensorFlow tiếp tục mở rộng hỗ trợ cho các biến thể ViT, thúc đẩy nghiên cứu sâu hơn trong lĩnh vực này.

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