Mô hình và nền tảng AI
EfficientViT: Bộ chuyển đổi tầm nhìn hiệu quả về bộ nhớ cho tầm nhìn máy tính có độ phân giải cao

Do khả năng mô hình cao, các mô hình Bộ chuyển đổi tầm nhìn đã đạt được nhiều thành công trong thời gian gần đây. Mặc dù hiệu suất của chúng, các mô hình bộ chuyển đổi tầm nhìn có một khiếm khuyết lớn: khả năng tính toán đáng kể của chúng đi kèm với chi phí tính toán cao, và đó là lý do tại sao các bộ chuyển đổi tầm nhìn không phải là lựa chọn đầu tiên cho các ứng dụng thời gian thực. Để giải quyết vấn đề này, một nhóm các nhà phát triển đã ra mắt EfficientViT, một họ các bộ chuyển đổi tầm nhìn tốc độ cao.
Khi làm việc trên EfficientViT, các nhà phát triển đã quan sát thấy rằng tốc độ của các mô hình bộ chuyển đổi hiện tại thường bị giới hạn bởi các hoạt động truy cập bộ nhớ không hiệu quả, đặc biệt là các hàm phần tử và biến đổi tensor trong mạng Tự chú ý đa đầu. Để giải quyết các hoạt động truy cập bộ nhớ không hiệu quả này, các nhà phát triển EfficientViT đã làm việc trên một khối xây dựng mới sử dụng bố cục sandwich, tức là mô hình EfficientViT sử dụng một mạng Tự chú ý đa đầu bị ràng buộc bởi bộ nhớ giữa các lớp mạng tiến hành phía trước hiệu quả, giúp cải thiện hiệu quả bộ nhớ và cũng tăng cường giao tiếp kênh tổng thể.
Các thí nghiệm toàn diện được thực hiện trên mô hình EfficientViT trên các kịch bản khác nhau cho thấy rằng EfficientViT vượt trội so với các mô hình hiệu quả hiện có cho tầm nhìn máy tính trong khi đạt được sự cân bằng tốt giữa độ chính xác và tốc độ. Vì vậy, hãy cùng tìm hiểu sâu hơn về mô hình EfficientViT.
Giới thiệu về Bộ chuyển đổi tầm nhìn và EfficientViT
Bộ chuyển đổi tầm nhìn vẫn là một trong những khuôn khổ phổ biến nhất trong ngành tầm nhìn máy tính vì chúng cung cấp hiệu suất vượt trội và khả năng tính toán cao. Tuy nhiên, với độ chính xác và hiệu suất ngày càng cải thiện của các mô hình bộ chuyển đổi tầm nhìn, chi phí hoạt động và chi phí tính toán cũng tăng lên. Ví dụ, các mô hình hiện tại được biết đến với hiệu suất tốt nhất trên các tập dữ liệu ImageNet như SwinV2 và V-MoE sử dụng 3B và 14,7B tham số tương ứng.
Mô hình EfficientNet nhằm khám phá cách cải thiện hiệu suất của các mô hình bộ chuyển đổi tầm nhìn và tìm ra các nguyên tắc đằng sau việc thiết kế các kiến trúc khuôn khổ bộ chuyển đổi dựa trên hiệu quả. Mô hình EfficientViT dựa trên các khuôn khổ bộ chuyển đổi tầm nhìn hiện có như Swim và DeiT, và nó phân tích ba yếu tố thiết yếu ảnh hưởng đến tốc độ can thiệp của mô hình, bao gồm tính toán thừa, truy cập bộ nhớ và sử dụng tham số.
Mô hình là một kết quả cuối cùng của các phát hiện trong quá trình nghiên cứu cho EfficientViT. Mô hình này có một khối xây dựng mới với bố cục sandwich áp dụng một lớp tự chú ý đa đầu bị ràng buộc bởi bộ nhớ giữa các lớp mạng tiến hành phía trước, giúp giảm thời gian thực hiện các hoạt động truy cập bộ nhớ và cho phép giao tiếp hiệu quả giữa các kênh khác nhau trong mạng.

Như có thể thấy trong hình ảnh trên, khuôn khổ EfficientViT thực hiện tốt hơn so với các mô hình CNN và ViT hiện tại về cả độ chính xác và tốc độ. Nhưng làm thế nào mà khuôn khổ EfficientViT quản lý để vượt trội so với một số khuôn khổ hiện tại?
EfficientViT: Cải thiện hiệu quả của Bộ chuyển đổi tầm nhìn
Mô hình EfficientViT nhằm cải thiện hiệu quả của các mô hình bộ chuyển đổi tầm nhìn hiện có từ ba góc độ:
- Tính toán thừa.
- Truy cập bộ nhớ.
- Sử dụng tham số.
Mô hình này nhằm tìm ra cách các tham số trên ảnh hưởng đến hiệu quả của các mô hình bộ chuyển đổi tầm nhìn và cách giải quyết chúng để đạt được kết quả tốt hơn với hiệu quả tốt hơn.
Truy cập bộ nhớ và hiệu quả
Một trong những yếu tố quan trọng ảnh hưởng đến tốc độ của mô hình là chi phí truy cập bộ nhớ hoặc MAO.

Mặc dù có một số phương pháp hiện có có thể đơn giản hóa các tính toán tự chú ý softmax tiêu chuẩn như xấp xỉ thấp, và chú ý thưa thớt, chúng thường cung cấp gia tốc hạn chế và làm giảm độ chính xác.
Mặt khác, khuôn khổ EfficientViT nhằm giảm chi phí truy cập bộ nhớ bằng cách giảm số lượng lớp không hiệu quả trong khuôn khổ.

Hiệu quả tính toán
Các lớp MHSA có xu hướng nhúng chuỗi đầu vào vào nhiều không gian con hoặc đầu, và tính toán các bản đồ chú ý riêng lẻ, một cách tiếp cận được biết đến với việc tăng cường hiệu suất.

Để khuyến khích các đầu học các mẫu khác nhau, mô hình áp dụng một giải pháp trực quan trong đó mỗi đầu chỉ được cung cấp một phần của tính năng đầy đủ, một kỹ thuật tương tự như ý tưởng của nhóm convolution.
Hiệu quả tham số
Các mô hình ViT trung bình kế thừa các chiến lược thiết kế như sử dụng chiều rộng tương đương cho các phép chiếu, đặt tỷ lệ mở rộng lên 4 trong FFN, và tăng số đầu qua các giai đoạn từ NLP transformers.

Hình ảnh trên cho thấy rằng hai giai đoạn đầu tiên của khuôn khổ bảo tồn nhiều chiều hơn, trong khi hai giai đoạn cuối cùng bảo tồn ít chiều hơn.
Bộ chuyển đổi tầm nhìn hiệu quả: Kiến trúc
Dựa trên các phát hiện trong phân tích trên, các nhà phát triển đã làm việc trên một mô hình phân cấp mới cung cấp tốc độ can thiệp nhanh, mô hình EfficientViT.
Các khối xây dựng của khuôn khổ EfficientViT
Khối xây dựng cho mạng bộ chuyển đổi tầm nhìn hiệu quả hơn được minh họa trong hình dưới.

Khuôn khổ này bao gồm một mô-đun chú ý nhóm tầng, bố cục sandwich hiệu quả về bộ nhớ, và một chiến lược phân bổ lại tham số tập trung vào việc cải thiện hiệu quả của mô hình về tính toán, bộ nhớ và tham số.
Bố cục sandwich
Mô hình sử dụng một bố cục sandwich mới để xây dựng một khối bộ nhớ hiệu quả hơn cho khuôn khổ.

Chú ý nhóm tầng
Một trong những vấn đề chính với các lớp MHSA là sự thừa trong các đầu chú ý, điều này làm cho tính toán không hiệu quả.

Tổng quan về khuôn khổ EfficientViT có thể được giải thích trong hình ảnh trên, nơi các phần:
- Kiến trúc của EfficientViT,
- Khối bố cục sandwich,
- Chú ý nhóm tầng.
EfficientViT: Kiến trúc mạng

Hình ảnh trên tóm tắt kiến trúc mạng của khuôn khổ EfficientViT.
Gia đình mô hình EfficientViT
Gia đình mô hình EfficientViT bao gồm 6 mô hình với các quy mô độ sâu và chiều rộng khác nhau, và một số đầu được chỉ định cho mỗi giai đoạn.

EfficientViT: Triển khai mô hình và kết quả
Mô hình EfficientViT có kích thước lô tổng thể là 2.048, được xây dựng với Timm và PyTorch, được đào tạo từ đầu cho 300 kỷ sử dụng 8 GPU Nvidia V100, sử dụng lịch trình học cosine, bộ tối ưu hóa AdamW, và thực hiện thí nghiệm phân loại hình ảnh trên ImageNet-1K.
Kết quả trên ImageNet
Để phân tích hiệu suất của EfficientViT, nó được so sánh với các mô hình ViT và CNN hiện tại trên tập dữ liệu ImageNet.

So sánh với CNN hiệu quả và ViT hiệu quả
Mô hình đầu tiên so sánh hiệu suất của nó với các CNN hiệu quả như EfficientNet và các khuôn khổ CNN thông thường như MobileNets.

Hình ảnh trên so sánh hiệu suất của mô hình EfficientViT với các mô hình ViT lớn hiện tại trên tập dữ liệu ImageNet-1K.
Phân loại hình ảnh hạ lưu
Mô hình EfficientViT được áp dụng cho các nhiệm vụ hạ lưu khác nhau để nghiên cứu khả năng học chuyển của mô hình, và hình ảnh dưới đây tóm tắt kết quả của thí nghiệm.

Phát hiện đối tượng
Để phân tích khả năng phát hiện đối tượng của EfficientViT, nó được so sánh với các mô hình hiệu quả trên nhiệm vụ phát hiện đối tượng trên COCO.

Suy nghĩ cuối cùng
Trong bài viết này, chúng ta đã thảo luận về EfficientViT, một họ các mô hình bộ chuyển đổi tầm nhìn tốc độ cao sử dụng chú ý nhóm tầng và cung cấp các hoạt động bộ nhớ hiệu quả.












